commit
e91f5f9144
1 changed files with 80 additions and 20 deletions
|
@ -1,5 +1,36 @@
|
|||
{stdenv, fetchurl, intltool, pkgconfig, qt4, gtk2, gtk3, kdelibs4, ncurses,
|
||||
cmake, anthy, automoc4, m17n_lib, m17n_db}:
|
||||
{ stdenv, fetchurl, intltool, pkgconfig, cmake
|
||||
, ncurses, m17n_lib, m17n_db, expat
|
||||
, withAnthy ? true, anthy ? null
|
||||
, withGtk ? true
|
||||
, withGtk2 ? withGtk, gtk2 ? null
|
||||
, withGtk3 ? withGtk, gtk3 ? null
|
||||
, withQt ? true
|
||||
, withQt4 ? withQt, qt4 ? null
|
||||
, withKde ? withQt
|
||||
, withKde4 ? withKde && withQt4, kdelibs4 ? null, automoc4 ? null
|
||||
, withKNotify4 ? false
|
||||
, withLibnotify ? !withKNotify4, libnotify ? null
|
||||
, withSqlite ? true, sqlite ? null
|
||||
, withNetworking ? true, curl ? null, openssl ? null
|
||||
, withFFI ? true, libffi ? null
|
||||
|
||||
# Things that are clearly an overkill to be enabled by default
|
||||
, withMisc ? false, libeb ? null
|
||||
}:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
assert withAnthy -> anthy != null;
|
||||
assert withGtk2 -> gtk2 != null;
|
||||
assert withGtk3 -> gtk3 != null;
|
||||
assert withQt4 -> qt4 != null;
|
||||
assert withKde4 -> withQt4 && kdelibs4 != null && automoc4 != null;
|
||||
assert withKNotify4 -> withKde4 && !withLibnotify;
|
||||
assert withLibnotify -> !withKNotify4 && libnotify != null;
|
||||
assert withSqlite -> sqlite != null;
|
||||
assert withNetworking -> curl != null && openssl != null;
|
||||
assert withFFI -> libffi != null;
|
||||
assert withMisc -> libeb != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.8.6";
|
||||
|
@ -8,32 +39,61 @@ stdenv.mkDerivation rec {
|
|||
buildInputs = [
|
||||
intltool
|
||||
pkgconfig
|
||||
qt4
|
||||
gtk2
|
||||
gtk3
|
||||
kdelibs4
|
||||
ncurses
|
||||
cmake
|
||||
anthy
|
||||
automoc4
|
||||
m17n_lib
|
||||
m17n_db
|
||||
];
|
||||
expat
|
||||
]
|
||||
++ optional withAnthy anthy
|
||||
++ optional withGtk2 gtk2
|
||||
++ optional withGtk3 gtk3
|
||||
++ optional withQt4 qt4
|
||||
++ optionals withKde4 [
|
||||
kdelibs4 automoc4
|
||||
]
|
||||
++ optional withLibnotify libnotify
|
||||
++ optional withSqlite sqlite
|
||||
++ optionals withNetworking [
|
||||
curl openssl
|
||||
]
|
||||
++ optional withFFI libffi
|
||||
++ optional withMisc libeb;
|
||||
|
||||
patches = [ ./data-hook.patch ];
|
||||
|
||||
configureFlags = [
|
||||
"--with-gtk2"
|
||||
"--with-gtk3"
|
||||
"--enable-kde4-applet"
|
||||
"--enable-notify=knotify4"
|
||||
"--enable-pref"
|
||||
"--with-qt4"
|
||||
"--with-qt4-immodule"
|
||||
"--with-skk"
|
||||
"--with-x"
|
||||
"--with-anthy-utf8"
|
||||
];
|
||||
"--with-xft"
|
||||
"--with-expat=${expat.dev}"
|
||||
]
|
||||
++ optional withAnthy "--with-anthy-utf8"
|
||||
++ optional withGtk2 "--with-gtk2"
|
||||
++ optional withGtk3 "--with-gtk3"
|
||||
++ optionals withQt4 [
|
||||
"--with-qt4"
|
||||
"--with-qt4-immodule"
|
||||
]
|
||||
++ optional withKde4 "--enable-kde4-applet"
|
||||
++ optional withKNotify4 "--enable-notify=knotify4"
|
||||
++ optional withLibnotify "--enable-notify=libnotify"
|
||||
++ optional withSqlite "--with-sqlite3"
|
||||
++ optionals withNetworking [
|
||||
"--with-curl"
|
||||
"--with-openssl-dir=${openssl.dev}"
|
||||
]
|
||||
++ optional withFFI "--with-ffi"
|
||||
++ optional withMisc "--with-eb";
|
||||
|
||||
# TODO: things in `./configure --help`, but not in nixpkgs
|
||||
#--with-canna Use Canna [default=no]
|
||||
#--with-wnn Build with libwnn [default=no]
|
||||
#--with-mana Build a plugin for Mana [default=yes]
|
||||
#--with-prime Build a plugin for PRIME [default=yes]
|
||||
#--with-sj3 Use SJ3 [default=no]
|
||||
#--with-osx-dcs Build with OS X Dictionary Services [default=no]
|
||||
|
||||
dontUseCmakeConfigure = true;
|
||||
|
||||
|
@ -45,8 +105,8 @@ stdenv.mkDerivation rec {
|
|||
meta = with stdenv.lib; {
|
||||
homepage = "https://github.com/uim/uim";
|
||||
description = "A multilingual input method framework";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = with maintainers; [ ericsagnes ];
|
||||
license = licenses.bsd3;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ ericsagnes oxij ];
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue