replacing applyAndFun by lib.defaultOverridableDelayableArgs
applyAndFun has a bug resulting in the same arg beeing added more than
once when using a concatenating merge function for the attr set.
I've tried giving the function a name "overridableDelayableArgs" which
resembles its usage much more.
important refactoring:
applyAndFun had .fun and .funMerge only when passing the merge
function lib.mergeOrApply
composableDerivation {
initial = {
...
};
}
to
overridableDelayableArgs has always .replace and .merge
composableDerivation {} {
...
}
svn path=/nixpkgs/trunk/; revision=14428
This commit is contained in:
@@ -1,56 +1,54 @@
|
||||
args: with args;
|
||||
let edf = composableDerivation.edf;
|
||||
wwf = composableDerivation.wwf; in
|
||||
composableDerivation.composableDerivation {
|
||||
initial = {
|
||||
composableDerivation.composableDerivation {} {
|
||||
|
||||
name="hugs98";
|
||||
name="hugs98";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://cvs.haskell.org/Hugs/downloads/2006-09/hugs98-Sep2006.tar.gz;
|
||||
sha256 = "3cf4d27673564cffe691bd14032369f646233f14daf2bc37c6c6df9f062b46b6";
|
||||
};
|
||||
|
||||
#encode all character I/O using the byte encoding
|
||||
#determined by the locale in effect at that time. To
|
||||
#require that the UTF-8 encoding is always used, give
|
||||
#the --enable-char-encoding=utf8 option.
|
||||
#[default=autodetect]
|
||||
postUnpack = ''
|
||||
find -type f | xargs sed -i 's@/bin/cp@cp@';
|
||||
'';
|
||||
configurePhase="./configure --prefix=\$out --enable-char-encoding=utf8 $configureFlags";
|
||||
|
||||
flags =
|
||||
edf { name = "pathCanonicalization"; feat="path-canonicalization"; }
|
||||
// edf { name="timer"; } # enable evaluation timing (for benchmarking Hugs)
|
||||
// edf { name="profiling"; }# enable heap profiler
|
||||
// edf { name="stackDumps"; feat="stack-dummps"; } # enable stack dump on stack overflow
|
||||
// edf { name="largeBanner"; feat="large-banner"; } # disable multiline startup banner
|
||||
// edf { name="internal-prims"; } # experimental primitives to access Hugs's innards
|
||||
// edf { name="debug"; } # include C debugging information (for debugging Hugs)
|
||||
// edf { name="tag"; } # runtime tag checking (for debugging Hugs)
|
||||
// edf { name="lint"; } # enable "lint" flags (for debugging Hugs)
|
||||
// edf { name="only98"; } # build Hugs to understand Haskell 98 only
|
||||
// edf { name="ffi"; }
|
||||
#--with-nmake produce a Makefile compatible with nmake
|
||||
#--with-gui build Hugs for Windows GUI (Borland C++ only)
|
||||
// wwf { name="pthreads"; } # build Hugs using POSIX threads C library
|
||||
;
|
||||
|
||||
cfg = {
|
||||
largeBannerSupport = true; # seems to be default
|
||||
|
||||
|
||||
char = { cfgOption = "--enable-char-encoding"; blocks = "utf8"; };
|
||||
utf8 = { cfgOption = "--enable-char-encoding=utf8"; blocks="char"; };
|
||||
|
||||
src = fetchurl {
|
||||
url = http://cvs.haskell.org/Hugs/downloads/2006-09/hugs98-Sep2006.tar.gz;
|
||||
sha256 = "3cf4d27673564cffe691bd14032369f646233f14daf2bc37c6c6df9f062b46b6";
|
||||
};
|
||||
|
||||
#encode all character I/O using the byte encoding
|
||||
#determined by the locale in effect at that time. To
|
||||
#require that the UTF-8 encoding is always used, give
|
||||
#the --enable-char-encoding=utf8 option.
|
||||
#[default=autodetect]
|
||||
postUnpack = ''
|
||||
find -type f | xargs sed -i 's@/bin/cp@cp@';
|
||||
'';
|
||||
configurePhase="./configure --prefix=\$out --enable-char-encoding=utf8 $configureFlags";
|
||||
|
||||
flags =
|
||||
edf { name = "pathCanonicalization"; feat="path-canonicalization"; }
|
||||
// edf { name="timer"; } # enable evaluation timing (for benchmarking Hugs)
|
||||
// edf { name="profiling"; }# enable heap profiler
|
||||
// edf { name="stackDumps"; feat="stack-dummps"; } # enable stack dump on stack overflow
|
||||
// edf { name="largeBanner"; feat="large-banner"; } # disable multiline startup banner
|
||||
// edf { name="internal-prims"; } # experimental primitives to access Hugs's innards
|
||||
// edf { name="debug"; } # include C debugging information (for debugging Hugs)
|
||||
// edf { name="tag"; } # runtime tag checking (for debugging Hugs)
|
||||
// edf { name="lint"; } # enable "lint" flags (for debugging Hugs)
|
||||
// edf { name="only98"; } # build Hugs to understand Haskell 98 only
|
||||
// edf { name="ffi"; }
|
||||
#--with-nmake produce a Makefile compatible with nmake
|
||||
#--with-gui build Hugs for Windows GUI (Borland C++ only)
|
||||
// wwf { name="pthreads"; } # build Hugs using POSIX threads C library
|
||||
;
|
||||
|
||||
cfg = {
|
||||
largeBannerSupport = true; # seems to be default
|
||||
|
||||
|
||||
char = { cfgOption = "--enable-char-encoding"; blocks = "utf8"; };
|
||||
utf8 = { cfgOption = "--enable-char-encoding=utf8"; blocks="char"; };
|
||||
|
||||
};
|
||||
|
||||
meta = {
|
||||
license = "as-is"; # gentoo is calling it this way..
|
||||
description = "The HUGS98 Haskell <interpreter";
|
||||
homepage = http://www.haskell.org/hugs;
|
||||
};
|
||||
meta = {
|
||||
license = "as-is"; # gentoo is calling it this way..
|
||||
description = "The HUGS98 Haskell <interpreter";
|
||||
homepage = http://www.haskell.org/hugs;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,38 +1,36 @@
|
||||
args: with args;
|
||||
let edf = composableDerivation.edf; in
|
||||
composableDerivation.composableDerivation {
|
||||
initial = {
|
||||
name = "roadsend-2.9.3";
|
||||
buildInputs = [bigloo curl];
|
||||
flags = edf { name = "pcre"; }
|
||||
// edf { name = "fcgi"; enable = { inherit fcgi; }; }
|
||||
// edf { name = "xml"; enable = { buildInputs = [ libxml2 ]; }; }
|
||||
// edf { name = "mysql"; enable = { buildInputs = [ mysql ]; }; }
|
||||
// edf { name = "odbc"; };
|
||||
# // edf { name = "gtk"} }
|
||||
# // edf { name = "gtk2", enable = { buildInputs = [ mysql ]; } }
|
||||
cfg = {
|
||||
pcreSupport = true;
|
||||
fcgiSupport = true;
|
||||
xmlSupport = true;
|
||||
mysqlSupport = true;
|
||||
};
|
||||
src = args.fetchurl {
|
||||
url = "http://code.roadsend.com/snaps/roadsend-php-20081210.tar.bz2";
|
||||
sha256 = "0yhpiik0dyayd964wvn2k0cq7b1gihx1k3qx343r2l7lla4mapsx";
|
||||
};
|
||||
composableDerivation.composableDerivation {} {
|
||||
name = "roadsend-2.9.3";
|
||||
buildInputs = [bigloo curl];
|
||||
flags = edf { name = "pcre"; }
|
||||
// edf { name = "fcgi"; enable = { inherit fcgi; }; }
|
||||
// edf { name = "xml"; enable = { buildInputs = [ libxml2 ]; }; }
|
||||
// edf { name = "mysql"; enable = { buildInputs = [ mysql ]; }; }
|
||||
// edf { name = "odbc"; };
|
||||
# // edf { name = "gtk"} }
|
||||
# // edf { name = "gtk2", enable = { buildInputs = [ mysql ]; } }
|
||||
cfg = {
|
||||
pcreSupport = true;
|
||||
fcgiSupport = true;
|
||||
xmlSupport = true;
|
||||
mysqlSupport = true;
|
||||
};
|
||||
src = args.fetchurl {
|
||||
url = "http://code.roadsend.com/snaps/roadsend-php-20081210.tar.bz2";
|
||||
sha256 = "0yhpiik0dyayd964wvn2k0cq7b1gihx1k3qx343r2l7lla4mapsx";
|
||||
};
|
||||
|
||||
# http://code.roadsend.com/snaps/roadsend-php-testsuite-2.9.7.tar.bz2";
|
||||
# sha256 = "0rf0g9r0prla7daq3aif24d7dx0j01i35hcm8h5bbg3gvpfim463";
|
||||
|
||||
# tell pcc where to find the fastcgi library
|
||||
postInstall = " sed -e \"s=(ldflags fastcgi.*=(ldflags -l fastcgi -L \$fcgi)=\" -i \$out/etc/pcc.conf ";
|
||||
meta = {
|
||||
description = "roadsend PHP -> C compiler";
|
||||
homepage = http://www.roadsend.com;
|
||||
# you can choose one of the following licenses:
|
||||
# Runtime license is LPGL 2.1
|
||||
license = ["GPL2"];
|
||||
};
|
||||
# tell pcc where to find the fastcgi library
|
||||
postInstall = " sed -e \"s=(ldflags fastcgi.*=(ldflags -l fastcgi -L \$fcgi)=\" -i \$out/etc/pcc.conf ";
|
||||
meta = {
|
||||
description = "roadsend PHP -> C compiler";
|
||||
homepage = http://www.roadsend.com;
|
||||
# you can choose one of the following licenses:
|
||||
# Runtime license is LPGL 2.1
|
||||
license = ["GPL2"];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -4,177 +4,174 @@ args: with args;
|
||||
|
||||
let inherit (args.composableDerivation) composableDerivation edf wwf; in
|
||||
|
||||
composableDerivation {
|
||||
initial = fixed : {
|
||||
composableDerivation {} ( fixed : {
|
||||
|
||||
name = "php_configurable-${version}";
|
||||
name = "php_configurable-${version}";
|
||||
|
||||
buildInputs = ["flex" "bison" "pkgconfig"];
|
||||
buildInputs = ["flex" "bison" "pkgconfig"];
|
||||
|
||||
flags = {
|
||||
flags = {
|
||||
|
||||
# much left to do here...
|
||||
|
||||
# SAPI modules:
|
||||
|
||||
apxs2 = {
|
||||
configureFlags = ["--with-apxs2=${apacheHttpd}/bin/apxs"];
|
||||
buildInputs = [apacheHttpd];
|
||||
};
|
||||
|
||||
# Extensions
|
||||
|
||||
curl = {
|
||||
configureFlags = ["--with-curl=${args.curl}" "--with-curlwrappers"];
|
||||
buildInputs = [curl];
|
||||
};
|
||||
|
||||
zlib = {
|
||||
configureFlags = ["--with-zlib=${args.zlib}"];
|
||||
buildInputs = [zlib];
|
||||
};
|
||||
|
||||
libxml2 = {
|
||||
configureFlags = ["--with-libxml-dir=${libxml2}"];
|
||||
buildInputs = [ libxml2 ];
|
||||
};
|
||||
|
||||
postgresql = {
|
||||
configureFlags = ["--with-pgsql=${postgresql}"];
|
||||
buildInputs = [ postgresql ];
|
||||
};
|
||||
|
||||
mysql = {
|
||||
configureFlags = ["--with-mysql=${mysql}"];
|
||||
buildInputs = [ mysql ];
|
||||
};
|
||||
|
||||
mysqli = {
|
||||
configureFlags = ["--with-mysqli=${mysql}/bin/mysql_config"];
|
||||
buildInputs = [ mysql];
|
||||
};
|
||||
|
||||
mysqli_embedded = {
|
||||
configureFlags = ["--enable-embedded-mysqli"];
|
||||
depends = "mysqli";
|
||||
assertion = fixed.mysqliSupport;
|
||||
};
|
||||
|
||||
pdo_mysql = {
|
||||
configureFlags = ["--with-pdo-mysql=${mysql}"];
|
||||
buildInputs = [ mysql ];
|
||||
};
|
||||
|
||||
bcmath = {
|
||||
configureFlags = ["--enable-bcmath"];
|
||||
};
|
||||
|
||||
gd = {
|
||||
configureFlags = ["--with-gd=${args.gd}"];
|
||||
buildInputs = [gd];
|
||||
};
|
||||
|
||||
sockets = {
|
||||
configureFlags = ["--enable-sockets"];
|
||||
};
|
||||
|
||||
openssl = {
|
||||
configureFlags = ["--with-openssl=${args.openssl}"];
|
||||
buildInputs = ["openssl"];
|
||||
};
|
||||
|
||||
mbstring = {
|
||||
configureFlags = ["--enable-mbstring"];
|
||||
};
|
||||
|
||||
/*
|
||||
Building xdebug withing php to be able to add the parameters to the ini file.. Ther should be a better way
|
||||
meta = {
|
||||
description = "debugging support for PHP";
|
||||
homepage = http://xdebug.org;
|
||||
license = "based on the PHP license - as is";
|
||||
};
|
||||
*/
|
||||
xdebug = {
|
||||
buildInputs = [ automake autoconf ];
|
||||
xdebug_src = args.fetchurl {
|
||||
name = "xdebug-2.0.2.tar.gz";
|
||||
url = "http://xdebug.org/link.php?url=xdebug202";
|
||||
sha256 = "1h0bxvf8krr203fmk1k7izrrr81gz537xmd3pqh4vslwdlbhrvic";
|
||||
};
|
||||
};
|
||||
# SAPI modules:
|
||||
|
||||
apxs2 = {
|
||||
configureFlags = ["--with-apxs2=${apacheHttpd}/bin/apxs"];
|
||||
buildInputs = [apacheHttpd];
|
||||
};
|
||||
|
||||
cfg = {
|
||||
mysqlSupport = true;
|
||||
mysqliSupport = true;
|
||||
pdo_mysqlSupport = true;
|
||||
libxml2Support = true;
|
||||
apxs2Support = true;
|
||||
bcmathSupport = true;
|
||||
socketsSupport = true;
|
||||
curlSupport = true;
|
||||
gettextSupport = true;
|
||||
postgresqlSupport = true;
|
||||
zlibSupport = true;
|
||||
opnesslSupport = true;
|
||||
xdebugSupport = true;
|
||||
mbstringSupport = true;
|
||||
gdSupport = true;
|
||||
# Extensions
|
||||
|
||||
curl = {
|
||||
configureFlags = ["--with-curl=${args.curl}" "--with-curlwrappers"];
|
||||
buildInputs = [curl];
|
||||
};
|
||||
|
||||
zlib = {
|
||||
configureFlags = ["--with-zlib=${args.zlib}"];
|
||||
buildInputs = [zlib];
|
||||
};
|
||||
|
||||
libxml2 = {
|
||||
configureFlags = ["--with-libxml-dir=${libxml2}"];
|
||||
buildInputs = [ libxml2 ];
|
||||
};
|
||||
|
||||
postgresql = {
|
||||
configureFlags = ["--with-pgsql=${postgresql}"];
|
||||
buildInputs = [ postgresql ];
|
||||
};
|
||||
|
||||
mysql = {
|
||||
configureFlags = ["--with-mysql=${mysql}"];
|
||||
buildInputs = [ mysql ];
|
||||
};
|
||||
|
||||
mysqli = {
|
||||
configureFlags = ["--with-mysqli=${mysql}/bin/mysql_config"];
|
||||
buildInputs = [ mysql];
|
||||
};
|
||||
|
||||
mysqli_embedded = {
|
||||
configureFlags = ["--enable-embedded-mysqli"];
|
||||
depends = "mysqli";
|
||||
assertion = fixed.mysqliSupport;
|
||||
};
|
||||
|
||||
pdo_mysql = {
|
||||
configureFlags = ["--with-pdo-mysql=${mysql}"];
|
||||
buildInputs = [ mysql ];
|
||||
};
|
||||
|
||||
bcmath = {
|
||||
configureFlags = ["--enable-bcmath"];
|
||||
};
|
||||
|
||||
gd = {
|
||||
configureFlags = ["--with-gd=${args.gd}"];
|
||||
buildInputs = [gd];
|
||||
};
|
||||
|
||||
sockets = {
|
||||
configureFlags = ["--enable-sockets"];
|
||||
};
|
||||
|
||||
openssl = {
|
||||
configureFlags = ["--with-openssl=${args.openssl}"];
|
||||
buildInputs = ["openssl"];
|
||||
};
|
||||
|
||||
mbstring = {
|
||||
configureFlags = ["--enable-mbstring"];
|
||||
};
|
||||
|
||||
/*
|
||||
Building xdebug withing php to be able to add the parameters to the ini file.. Ther should be a better way
|
||||
meta = {
|
||||
description = "debugging support for PHP";
|
||||
homepage = http://xdebug.org;
|
||||
license = "based on the PHP license - as is";
|
||||
};
|
||||
*/
|
||||
xdebug = {
|
||||
buildInputs = [ automake autoconf ];
|
||||
xdebug_src = args.fetchurl {
|
||||
name = "xdebug-2.0.2.tar.gz";
|
||||
url = "http://xdebug.org/link.php?url=xdebug202";
|
||||
sha256 = "1h0bxvf8krr203fmk1k7izrrr81gz537xmd3pqh4vslwdlbhrvic";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
configurePhase = ''
|
||||
iniFile=$out/etc/$name.ini
|
||||
[[ -z "$libxml2" ]] || export PATH=$PATH:$libxml2/bin
|
||||
./configure --with-config-file-scan-dir=/etc --with-config-file-path=$out/etc --prefix=$out $configureFlags
|
||||
echo configurePhase end
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
unset installPhase; installPhase;
|
||||
cp php.ini-recommended $iniFile
|
||||
|
||||
# Now Let's build xdebug if flag has been given
|
||||
# TODO I think there are better paths than the given below
|
||||
if [ -n $flag_set_xdebug ]; then
|
||||
PATH=$PATH:$out/bin
|
||||
tar xfz $xdebug_src;
|
||||
cd xdebug*
|
||||
phpize
|
||||
./configure --prefix=$out
|
||||
make
|
||||
ensureDir $out/lib; cp modules/xdebug.so $out/lib
|
||||
cat >> $out/etc/php.ini << EOF
|
||||
zend_extension="$out/lib/xdebug.so"
|
||||
zend_extension_ts="$out/lib/xdebug.so"
|
||||
zend_extension_debug="$out/lib/xdebug.so"
|
||||
xdebug.remote_enable=true
|
||||
xdebug.remote_host=127.0.0.1
|
||||
xdebug.remote_port=9000
|
||||
xdebug.remote_handler=dbgp
|
||||
xdebug.profiler_enable=0
|
||||
xdebug.profiler_output_dir="/tmp/xdebug"
|
||||
xdebug.remote_mode=req
|
||||
max_execution_time = 300
|
||||
date.timezone = UTC
|
||||
EOF
|
||||
fi
|
||||
'';
|
||||
|
||||
src = args.fetchurl {
|
||||
url = "http://nl.php.net/get/php-${version}.tar.bz2/from/this/mirror";
|
||||
md5 = "7380ffecebd95c6edb317ef861229ebd";
|
||||
name = "php-${version}.tar.bz2";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "The PHP language runtime engine";
|
||||
homepage = http://www.php.net/;
|
||||
license = "PHP-3";
|
||||
};
|
||||
|
||||
patches = [./fix.patch];
|
||||
|
||||
cfg = {
|
||||
mysqlSupport = true;
|
||||
mysqliSupport = true;
|
||||
pdo_mysqlSupport = true;
|
||||
libxml2Support = true;
|
||||
apxs2Support = true;
|
||||
bcmathSupport = true;
|
||||
socketsSupport = true;
|
||||
curlSupport = true;
|
||||
gettextSupport = true;
|
||||
postgresqlSupport = true;
|
||||
zlibSupport = true;
|
||||
opnesslSupport = true;
|
||||
xdebugSupport = true;
|
||||
mbstringSupport = true;
|
||||
gdSupport = true;
|
||||
};
|
||||
|
||||
}
|
||||
configurePhase = ''
|
||||
iniFile=$out/etc/$name.ini
|
||||
[[ -z "$libxml2" ]] || export PATH=$PATH:$libxml2/bin
|
||||
./configure --with-config-file-scan-dir=/etc --with-config-file-path=$out/etc --prefix=$out $configureFlags
|
||||
echo configurePhase end
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
unset installPhase; installPhase;
|
||||
cp php.ini-recommended $iniFile
|
||||
|
||||
# Now Let's build xdebug if flag has been given
|
||||
# TODO I think there are better paths than the given below
|
||||
if [ -n $flag_set_xdebug ]; then
|
||||
PATH=$PATH:$out/bin
|
||||
tar xfz $xdebug_src;
|
||||
cd xdebug*
|
||||
phpize
|
||||
./configure --prefix=$out
|
||||
make
|
||||
ensureDir $out/lib; cp modules/xdebug.so $out/lib
|
||||
cat >> $out/etc/php.ini << EOF
|
||||
zend_extension="$out/lib/xdebug.so"
|
||||
zend_extension_ts="$out/lib/xdebug.so"
|
||||
zend_extension_debug="$out/lib/xdebug.so"
|
||||
xdebug.remote_enable=true
|
||||
xdebug.remote_host=127.0.0.1
|
||||
xdebug.remote_port=9000
|
||||
xdebug.remote_handler=dbgp
|
||||
xdebug.profiler_enable=0
|
||||
xdebug.profiler_output_dir="/tmp/xdebug"
|
||||
xdebug.remote_mode=req
|
||||
max_execution_time = 300
|
||||
date.timezone = UTC
|
||||
EOF
|
||||
fi
|
||||
'';
|
||||
|
||||
src = args.fetchurl {
|
||||
url = "http://nl.php.net/get/php-${version}.tar.bz2/from/this/mirror";
|
||||
md5 = "7380ffecebd95c6edb317ef861229ebd";
|
||||
name = "php-${version}.tar.bz2";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "The PHP language runtime engine";
|
||||
homepage = http://www.php.net/;
|
||||
license = "PHP-3";
|
||||
};
|
||||
|
||||
patches = [./fix.patch];
|
||||
|
||||
})
|
||||
|
||||
@@ -129,7 +129,7 @@ in
|
||||
### python libraries:
|
||||
|
||||
wxPythonBaseFun = (t.pythonLibSetup.merge (a :
|
||||
let inherit (a.fixed) wxGTK version; in
|
||||
let inherit (a.fixed.passthru) wxGTK; inherit (a.fixed) version; in
|
||||
{
|
||||
buildInputs = [p.pkgconfig wxGTK (wxGTK.gtk)];
|
||||
setupFlags=["WXPORT=gtk2 NO_HEADERS=1 BUILD_GLCANVAS=0 BUILD_OGL=0 UNICODE=1"];
|
||||
@@ -196,7 +196,7 @@ in
|
||||
# If you install dozens of python packages this might be bloat.
|
||||
# So I think the overhead of installing these packages into the same store path should be prefered.
|
||||
pygtkBaseFun = (t.pythonLibStub.merge (a :
|
||||
let inherit (a.fixed) glib gtk; in lib.mergeAttrsByFuncDefaults [
|
||||
let inherit (a.fixed.passthru) glib gtk; in lib.mergeAttrsByFuncDefaults [
|
||||
{
|
||||
unpackPhase = "true";
|
||||
configurePhase = "true";
|
||||
@@ -312,7 +312,7 @@ in
|
||||
|
||||
pygtk212 = t.pygtkBaseFun.merge (a : {
|
||||
version = "2.12.1";
|
||||
name = "pygobject-${a.fixed.pygobjectVersion}-and-pygtk-${a.fixed.version}";
|
||||
name = "pygobject-${a.fixed.passthru.pygobjectVersion}-and-pygtk-${a.fixed.version}";
|
||||
pygtkSrc = fetchurl {
|
||||
url = http://ftp.acc.umu.se/pub/GNOME/sources/pygtk/2.12/pygtk-2.12.1.tar.bz2;
|
||||
sha256 = "0gg13xgr7y9sppw8bdys042928nc66czn74g60333c4my95ys021";
|
||||
|
||||
@@ -1,47 +1,45 @@
|
||||
args: with args;
|
||||
let inherit (args.composableDerivation) composableDerivation edf; in
|
||||
composableDerivation {
|
||||
initial = {
|
||||
composableDerivation {} {
|
||||
|
||||
name = "fltk-2.0.x-r6483";
|
||||
name = "fltk-2.0.x-r6483";
|
||||
|
||||
src = args.fetchurl {
|
||||
url = ftp://ftp.easysw.com/pub/fltk/snapshots/fltk-2.0.x-r6483.tar.bz2;
|
||||
sha256 = "1n8b53r5p0zb4sbvr6pj8aasls4zjwksv1sdc3r3pzb20fikp5jb";
|
||||
};
|
||||
src = args.fetchurl {
|
||||
url = ftp://ftp.easysw.com/pub/fltk/snapshots/fltk-2.0.x-r6483.tar.bz2;
|
||||
sha256 = "1n8b53r5p0zb4sbvr6pj8aasls4zjwksv1sdc3r3pzb20fikp5jb";
|
||||
};
|
||||
|
||||
propagatedBuildInputs=[x11 inputproto libXi freeglut];
|
||||
propagatedBuildInputs=[x11 inputproto libXi freeglut];
|
||||
|
||||
buildInputs = [ args.pkgconfig ];
|
||||
buildInputs = [ args.pkgconfig ];
|
||||
|
||||
flags =
|
||||
# this could be tidied up (?).. eg why does it require freeglut without glSupport?
|
||||
edf { name = "cygwin"; } # use the CygWin libraries default=no
|
||||
// edf { name = "debug"; } # turn on debugging default=no
|
||||
// edf { name = "gl"; enable = { buildInputs = [ mesa ]; }; } # turn on OpenGL support default=yes
|
||||
// edf { name = "shared"; } # turn on shared libraries default=no
|
||||
// edf { name = "threads"; } # enable multi-threading support
|
||||
// edf { name = "quartz"; enable = { buildInputs = "quartz"; }; } # don't konw yet what quartz is # use Quartz instead of Quickdraw (default=no)
|
||||
// edf { name = "largefile"; } # omit support for large files
|
||||
// edf { name = "localjpeg"; disable = { buildInputs = [libjpeg]; }; } # use local JPEG library, default=auto
|
||||
// edf { name = "localzlib"; disable = { buildInputs = [zlib]; }; } # use local ZLIB library, default=auto
|
||||
// edf { name = "localpng"; disable = { buildInputs = [libpng]; }; } # use local PNG library, default=auto
|
||||
// edf { name = "xinerama"; enable = { buildInputs = [libXinerama]; }; } # turn on Xinerama support default=no
|
||||
// edf { name = "xft"; enable = { buildInputs=[libXft]; }; } # turn on Xft support default=no
|
||||
// edf { name = "xdbe"; }; # turn on Xdbe support default=no
|
||||
cfg = {
|
||||
largefileSupport = true; # is default
|
||||
glSupport = true; # doesn't build without it. Why?
|
||||
localjpegSupport = false;
|
||||
localzlibSupport = false;
|
||||
localpngSupport = false;
|
||||
sharedSupport = true;
|
||||
threadsSupport = true;
|
||||
};
|
||||
flags =
|
||||
# this could be tidied up (?).. eg why does it require freeglut without glSupport?
|
||||
edf { name = "cygwin"; } # use the CygWin libraries default=no
|
||||
// edf { name = "debug"; } # turn on debugging default=no
|
||||
// edf { name = "gl"; enable = { buildInputs = [ mesa ]; }; } # turn on OpenGL support default=yes
|
||||
// edf { name = "shared"; } # turn on shared libraries default=no
|
||||
// edf { name = "threads"; } # enable multi-threading support
|
||||
// edf { name = "quartz"; enable = { buildInputs = "quartz"; }; } # don't konw yet what quartz is # use Quartz instead of Quickdraw (default=no)
|
||||
// edf { name = "largefile"; } # omit support for large files
|
||||
// edf { name = "localjpeg"; disable = { buildInputs = [libjpeg]; }; } # use local JPEG library, default=auto
|
||||
// edf { name = "localzlib"; disable = { buildInputs = [zlib]; }; } # use local ZLIB library, default=auto
|
||||
// edf { name = "localpng"; disable = { buildInputs = [libpng]; }; } # use local PNG library, default=auto
|
||||
// edf { name = "xinerama"; enable = { buildInputs = [libXinerama]; }; } # turn on Xinerama support default=no
|
||||
// edf { name = "xft"; enable = { buildInputs=[libXft]; }; } # turn on Xft support default=no
|
||||
// edf { name = "xdbe"; }; # turn on Xdbe support default=no
|
||||
cfg = {
|
||||
largefileSupport = true; # is default
|
||||
glSupport = true; # doesn't build without it. Why?
|
||||
localjpegSupport = false;
|
||||
localzlibSupport = false;
|
||||
localpngSupport = false;
|
||||
sharedSupport = true;
|
||||
threadsSupport = true;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "a C++ cross platform lightweight gui library binding";
|
||||
homepage = http://www.fltk.org;
|
||||
};
|
||||
meta = {
|
||||
description = "a C++ cross platform lightweight gui library binding";
|
||||
homepage = http://www.fltk.org;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,38 +1,35 @@
|
||||
args: with args;
|
||||
let inherit (args.composableDerivation) composableDerivation edf; in
|
||||
composableDerivation {
|
||||
composableDerivation {} {
|
||||
|
||||
initial = {
|
||||
buildInputs = [ "which" ]; # which is needed for the autogen.sh
|
||||
|
||||
buildInputs = [ "which" ]; # which is needed for the autogen.sh
|
||||
flags =
|
||||
# python and ruby untested
|
||||
edf { name = "python"; enable = { buildInputs = [ python ]; }; };
|
||||
# (if args.use_svn then ["libtool" "autoconf" "automake" "swig"] else [])
|
||||
# // edf { name = "ruby"; enable = { buildInputs = [ ruby ]; };}
|
||||
|
||||
flags =
|
||||
# python and ruby untested
|
||||
edf { name = "python"; enable = { buildInputs = [ python ]; }; };
|
||||
# (if args.use_svn then ["libtool" "autoconf" "automake" "swig"] else [])
|
||||
# // edf { name = "ruby"; enable = { buildInputs = [ ruby ]; };}
|
||||
name = "geos-3.0.3";
|
||||
|
||||
name = "geos-3.0.3";
|
||||
src = fetchurl {
|
||||
url = http://download.osgeo.org/geos/geos-3.0.3.tar.bz2;
|
||||
sha256 = "1pxk20jcbyidp3bvip1vdf8wfw2wvh8pcn810qkf1y3zfnki0c7k";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = http://download.osgeo.org/geos/geos-3.0.3.tar.bz2;
|
||||
sha256 = "1pxk20jcbyidp3bvip1vdf8wfw2wvh8pcn810qkf1y3zfnki0c7k";
|
||||
};
|
||||
# for development version. can be removed ?
|
||||
#configurePhase = "
|
||||
# [ -f configure ] || \\
|
||||
# LIBTOOLIZE=libtoolize ./autogen.sh
|
||||
# [>{ automake --add-missing; autoconf; }
|
||||
# unset configurePhase; configurePhase
|
||||
#";
|
||||
|
||||
# for development version. can be removed ?
|
||||
#configurePhase = "
|
||||
# [ -f configure ] || \\
|
||||
# LIBTOOLIZE=libtoolize ./autogen.sh
|
||||
# [>{ automake --add-missing; autoconf; }
|
||||
# unset configurePhase; configurePhase
|
||||
#";
|
||||
|
||||
meta = {
|
||||
description = "C++ port of the Java Topology Suite (JTS)"
|
||||
+ "- all the OpenGIS \"Simple Features for SQL\" spatial predicate functions and spatial operators,"
|
||||
+ " as well as specific JTS topology functions such as IsValid";
|
||||
homepage = http://geos.refractions.net/;
|
||||
license = "GPL";
|
||||
};
|
||||
meta = {
|
||||
description = "C++ port of the Java Topology Suite (JTS)"
|
||||
+ "- all the OpenGIS \"Simple Features for SQL\" spatial predicate functions and spatial operators,"
|
||||
+ " as well as specific JTS topology functions such as IsValid";
|
||||
homepage = http://geos.refractions.net/;
|
||||
license = "GPL";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,29 +1,28 @@
|
||||
args: with args;
|
||||
let inherit (args.composableDerivation) composableDerivation edf; in
|
||||
composableDerivation {
|
||||
initial = {
|
||||
flags = { }
|
||||
# TODO! implement flags
|
||||
# I want to get kino and cinelerra working. That's why I don't spend more time on this now
|
||||
// edf { name = "libtool_lock"; } #avoid locking (might break parallel builds)
|
||||
// edf { name ="asm"; } #disable use of architecture specific assembly code
|
||||
// edf { name ="sdl"; } #enable use of SDL for display
|
||||
// edf { name ="gtk"; } #disable use of gtk for display
|
||||
// edf { name ="xv"; } #disable use of XVideo extension for display
|
||||
// edf { name ="gprof"; }; #enable compiler options for gprof profiling
|
||||
composableDerivation {} {
|
||||
|
||||
name = "libdv-1.0.0";
|
||||
flags = { }
|
||||
# TODO! implement flags
|
||||
# I want to get kino and cinelerra working. That's why I don't spend more time on this now
|
||||
// edf { name = "libtool_lock"; } #avoid locking (might break parallel builds)
|
||||
// edf { name ="asm"; } #disable use of architecture specific assembly code
|
||||
// edf { name ="sdl"; } #enable use of SDL for display
|
||||
// edf { name ="gtk"; } #disable use of gtk for display
|
||||
// edf { name ="xv"; } #disable use of XVideo extension for display
|
||||
// edf { name ="gprof"; }; #enable compiler options for gprof profiling
|
||||
|
||||
src = args.fetchurl {
|
||||
url = mirror://sourceforge/libdv/libdv-1.0.0.tar.gz;
|
||||
sha256 = "1fl96f2xh2slkv1i1ix7kqk576a0ak1d33cylm0mbhm96d0761d3";
|
||||
};
|
||||
name = "libdv-1.0.0";
|
||||
|
||||
meta = {
|
||||
description = "software decoder for DV format video, as defined by the IEC 61834 and SMPTE 314M standards";
|
||||
homepage = http://sourceforge.net/projects/libdv/;
|
||||
# you can choose one of the following licenses:
|
||||
license = [];
|
||||
};
|
||||
src = args.fetchurl {
|
||||
url = mirror://sourceforge/libdv/libdv-1.0.0.tar.gz;
|
||||
sha256 = "1fl96f2xh2slkv1i1ix7kqk576a0ak1d33cylm0mbhm96d0761d3";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "software decoder for DV format video, as defined by the IEC 61834 and SMPTE 314M standards";
|
||||
homepage = http://sourceforge.net/projects/libdv/;
|
||||
# you can choose one of the following licenses:
|
||||
license = [];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -5,40 +5,38 @@ let
|
||||
name = "ragel-${version}";
|
||||
in
|
||||
|
||||
composableDerivation.composableDerivation {
|
||||
initial = rec {
|
||||
inherit name;
|
||||
src = fetchurl {
|
||||
url = "http://www.complang.org/ragel/${name}.tar.gz";
|
||||
sha256 = "018cedc8a68be85cda330fc53d0bb8a1ca6ad39b1cf790eed0311e7baa5a2520";
|
||||
};
|
||||
composableDerivation.composableDerivation {} {
|
||||
inherit name;
|
||||
src = fetchurl {
|
||||
url = "http://www.complang.org/ragel/${name}.tar.gz";
|
||||
sha256 = "018cedc8a68be85cda330fc53d0bb8a1ca6ad39b1cf790eed0311e7baa5a2520";
|
||||
};
|
||||
|
||||
flags = {
|
||||
doc = {
|
||||
# require fig2dev & pdflatex (see README)
|
||||
buildInputs = [transfig texLive];
|
||||
# use post* because default values of buildPhase is empty.
|
||||
postBuild = ''
|
||||
pushd doc
|
||||
make
|
||||
popd
|
||||
'';
|
||||
postInstall = ''
|
||||
pushd doc
|
||||
make install
|
||||
popd
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
cfg = {
|
||||
docSupport = false;
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = http://www.complang.org/ragel;
|
||||
description = "State machine compiler";
|
||||
license = "GPL-2";
|
||||
flags = {
|
||||
doc = {
|
||||
# require fig2dev & pdflatex (see README)
|
||||
buildInputs = [transfig texLive];
|
||||
# use post* because default values of buildPhase is empty.
|
||||
postBuild = ''
|
||||
pushd doc
|
||||
make
|
||||
popd
|
||||
'';
|
||||
postInstall = ''
|
||||
pushd doc
|
||||
make install
|
||||
popd
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
cfg = {
|
||||
docSupport = false;
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = http://www.complang.org/ragel;
|
||||
description = "State machine compiler";
|
||||
license = "GPL-2";
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user