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"];
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user