zilch/lib/build-chicken-parallel/default.nix
2024-10-04 15:08:26 +00:00

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)