diff options
Diffstat (limited to 'nixpkgs/pkgs/development/tools/build-managers/ninja/setup-hook.sh')
-rw-r--r-- | nixpkgs/pkgs/development/tools/build-managers/ninja/setup-hook.sh | 58 |
1 files changed, 33 insertions, 25 deletions
diff --git a/nixpkgs/pkgs/development/tools/build-managers/ninja/setup-hook.sh b/nixpkgs/pkgs/development/tools/build-managers/ninja/setup-hook.sh index 63fa7d8f16f7..7fa5e4675f39 100644 --- a/nixpkgs/pkgs/development/tools/build-managers/ninja/setup-hook.sh +++ b/nixpkgs/pkgs/development/tools/build-managers/ninja/setup-hook.sh @@ -9,7 +9,7 @@ ninjaBuildPhase() { fi local flagsArray=( - -j$buildCores -l$NIX_BUILD_CORES + -j$buildCores $ninjaFlags "${ninjaFlagsArray[@]}" ) @@ -19,29 +19,6 @@ ninjaBuildPhase() { runHook postBuild } -if [ -z "${dontUseNinjaBuild-}" -a -z "${buildPhase-}" ]; then - buildPhase=ninjaBuildPhase -fi - -ninjaInstallPhase() { - runHook preInstall - - # shellcheck disable=SC2086 - local flagsArray=( - $ninjaFlags "${ninjaFlagsArray[@]}" - ${installTargets:-install} - ) - - echoCmd 'install flags' "${flagsArray[@]}" - TERM=dumb ninja "${flagsArray[@]}" - - runHook postInstall -} - -if [ -z "${dontUseNinjaInstall-}" -a -z "${installPhase-}" ]; then - installPhase=ninjaInstallPhase -fi - ninjaCheckPhase() { runHook preCheck @@ -61,7 +38,7 @@ ninjaCheckPhase() { fi local flagsArray=( - -j$buildCores -l$NIX_BUILD_CORES + -j$buildCores $ninjaFlags "${ninjaFlagsArray[@]}" $checkTarget ) @@ -73,6 +50,37 @@ ninjaCheckPhase() { runHook postCheck } +ninjaInstallPhase() { + runHook preInstall + + local buildCores=1 + + # Parallel building is enabled by default. + if [ "${enableParallelInstalling-1}" ]; then + buildCores="$NIX_BUILD_CORES" + fi + + # shellcheck disable=SC2086 + local flagsArray=( + -j$buildCores + $ninjaFlags "${ninjaFlagsArray[@]}" + ${installTargets:-install} + ) + + echoCmd 'install flags' "${flagsArray[@]}" + TERM=dumb ninja "${flagsArray[@]}" + + runHook postInstall +} + +if [ -z "${dontUseNinjaBuild-}" -a -z "${buildPhase-}" ]; then + buildPhase=ninjaBuildPhase +fi + if [ -z "${dontUseNinjaCheck-}" -a -z "${checkPhase-}" ]; then checkPhase=ninjaCheckPhase fi + +if [ -z "${dontUseNinjaInstall-}" -a -z "${installPhase-}" ]; then + installPhase=ninjaInstallPhase +fi |