12ae5363ea
* Make builders unexecutable by removing the hash-bang line and execute permission. * Convert calls to `derivation' to `mkDerivation'. * Remove `system' and `stdenv' attributes from calls to `mkDerivation'. These transformations were all done automatically, so it is quite possible I broke stuff. * Put the `mkDerivation' function in stdenv/generic. svn path=/nixpkgs/trunk/; revision=874
34 lines
757 B
Nix
34 lines
757 B
Nix
{ stdenv, name, preHook ? null, postHook ? null, initialPath, gcc, bash
|
|
, param1 ? "", param2 ? "", param3 ? "", param4 ? "", param5 ? ""
|
|
}:
|
|
|
|
let {
|
|
|
|
body =
|
|
|
|
stdenv.mkDerivation {
|
|
inherit name;
|
|
|
|
builder = ./builder.sh;
|
|
|
|
setup = ./setup.sh;
|
|
|
|
inherit preHook postHook initialPath gcc;
|
|
|
|
# TODO: make this more elegant.
|
|
inherit param1 param2 param3 param4 param5;
|
|
}
|
|
|
|
# Add a utility function to produce derivations that use this
|
|
# stdenv and its the bash shell.
|
|
// {
|
|
mkDerivation = attrs: derivation (attrs // {
|
|
builder = bash;
|
|
args = ["-e" (if attrs ? builder then attrs.builder else ./default-builder.sh)];
|
|
stdenv = body;
|
|
system = body.system;
|
|
});
|
|
};
|
|
|
|
}
|