Loading pkgs/by-name/ja/jam/package.nix +29 −15 Original line number Diff line number Diff line Loading @@ -49,12 +49,17 @@ stdenv.mkDerivation (finalAttrs: { export AR="$AR rc" ''; postPatch = '' substituteInPlace jam.h --replace-fail 'ifdef linux' 'ifdef __linux__' '' + # When cross-compiling, we need to set the preprocessor macros # OSMAJOR/OSMINOR/OSPLAT to the values from the target platform, not the host # platform. This looks a little ridiculous because the vast majority of build # tools don't embed target-specific information into their binary, but in this # case we behave more like a compiler than a make(1)-alike. postPatch = lib.optionalString (stdenv.hostPlatform != stdenv.targetPlatform) '' lib.optionalString (stdenv.hostPlatform != stdenv.targetPlatform) '' cat >>jam.h <<EOF #undef OSMAJOR #undef OSMINOR Loading Loading @@ -87,6 +92,15 @@ stdenv.mkDerivation (finalAttrs: { package = finalAttrs.finalPackage; command = "jam -v"; }; tests.os = testers.runCommand { name = "${finalAttrs.finalPackage.name}-os"; nativeBuildInputs = [ finalAttrs.finalPackage ]; script = '' echo 'echo $(OS) ;' > Jamfile os=$(jam -d0) [[ $os != UNKNOWN* ]] && touch $out ''; }; }; meta = { Loading Loading
pkgs/by-name/ja/jam/package.nix +29 −15 Original line number Diff line number Diff line Loading @@ -49,12 +49,17 @@ stdenv.mkDerivation (finalAttrs: { export AR="$AR rc" ''; postPatch = '' substituteInPlace jam.h --replace-fail 'ifdef linux' 'ifdef __linux__' '' + # When cross-compiling, we need to set the preprocessor macros # OSMAJOR/OSMINOR/OSPLAT to the values from the target platform, not the host # platform. This looks a little ridiculous because the vast majority of build # tools don't embed target-specific information into their binary, but in this # case we behave more like a compiler than a make(1)-alike. postPatch = lib.optionalString (stdenv.hostPlatform != stdenv.targetPlatform) '' lib.optionalString (stdenv.hostPlatform != stdenv.targetPlatform) '' cat >>jam.h <<EOF #undef OSMAJOR #undef OSMINOR Loading Loading @@ -87,6 +92,15 @@ stdenv.mkDerivation (finalAttrs: { package = finalAttrs.finalPackage; command = "jam -v"; }; tests.os = testers.runCommand { name = "${finalAttrs.finalPackage.name}-os"; nativeBuildInputs = [ finalAttrs.finalPackage ]; script = '' echo 'echo $(OS) ;' > Jamfile os=$(jam -d0) [[ $os != UNKNOWN* ]] && touch $out ''; }; }; meta = { Loading