20 lines
769 B
Nix
20 lines
769 B
Nix
{ callPackage, python3, stdenv, chickenPackages, ninja, pkg-config, libfaketime }: let
|
|
process = callPackage ./process.nix {};
|
|
in
|
|
{ name, src, buildInputs, buildAgainst ? [], overrides ? { } }: let
|
|
buildAgainstList = builtins.toString buildAgainst;
|
|
in stdenv.mkDerivation ({
|
|
inherit name src;
|
|
|
|
buildInputs = [ chickenPackages.chicken ninja pkg-config libfaketime ] ++ buildInputs;
|
|
propagatedBuildInputs = buildInputs;
|
|
|
|
enableParallelBuilding = true;
|
|
dontStrip = true;
|
|
|
|
configurePhase = ''
|
|
runHook preConfigure
|
|
${process}/bin/process ${name} ./ $out/lib/chicken/11 ${if buildAgainst == [] then ''"" ""'' else ''"$(pkg-config --cflags ${buildAgainstList})" "$(pkg-config --libs ${buildAgainstList})"''}
|
|
runHook postConfigure
|
|
'';
|
|
} // overrides)
|