python/hooks/setuptools-build-hook.sh: use `--parallel` flag only for fresh setuptools

Without the change attempt to enable parallelist for `python2` packages
fails with unsupported `--parallel` flag for `setuptools`-based
packages:

$ nix build --no-link -f. --arg config '{enableParallelBuildingByDefault = true;}' xdg-utils
error: builder for '/nix/store/...-python2.7-setuptools-44.0.0.drv' failed with exit code 1;
last 10 log lines:
> no configure script, doing nothing
> Running phase: buildPhase
> Executing setuptoolsBuildPhase
> usage: nix_run_setup [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
> or: nix_run_setup --help [cmd1 cmd2 ...]
> or: nix_run_setup --help-commands
> or: nix_run_setup cmd --help
>
> error: option --parallel not recognized

authored by Sergei Trofimovich and committed by Sandro Jäckel 187ac583 f904a6b3

+6 -2
+2
pkgs/development/interpreters/python/hooks/default.nix
··· 195 195 propagatedBuildInputs = [ setuptools wheel ]; 196 196 substitutions = { 197 197 inherit pythonInterpreter setuppy; 198 + # python2.pkgs.setuptools does not support parallelism 199 + setuptools_has_parallel = setuptools != null && lib.versionAtLeast setuptools.version "69"; 198 200 }; 199 201 } ./setuptools-build-hook.sh) {}; 200 202
+4 -2
pkgs/development/interpreters/python/hooks/setuptools-build-hook.sh
··· 3 3 4 4 setuptoolsBuildPhase() { 5 5 echo "Executing setuptoolsBuildPhase" 6 - local args 6 + local args setuptools_has_parallel=@setuptools_has_parallel@ 7 7 runHook preBuild 8 8 9 9 cp -f @setuppy@ nix_run_setup ··· 12 12 args+="$setupPyGlobalFlags" 13 13 fi 14 14 if [ -n "$enableParallelBuilding" ]; then 15 - setupPyBuildFlags+=" --parallel $NIX_BUILD_CORES" 15 + if [ -n "$setuptools_has_parallel" ]; then 16 + setupPyBuildFlags+=" --parallel $NIX_BUILD_CORES" 17 + fi 16 18 fi 17 19 if [ -n "$setupPyBuildFlags" ]; then 18 20 args+=" build_ext $setupPyBuildFlags"