diff --git a/pkgs/development/libraries/boost/generic.nix b/pkgs/development/libraries/boost/generic.nix index c3493d6a14d7..fd784e0b6505 100644 --- a/pkgs/development/libraries/boost/generic.nix +++ b/pkgs/development/libraries/boost/generic.nix @@ -1,4 +1,4 @@ -{ stdenv, icu, expat, zlib, bzip2, python, fixDarwinDylibNames +{ stdenv, icu, expat, zlib, bzip2, python, fixDarwinDylibNames, makeSetupHook , toolset ? null , enableRelease ? true , enableDebug ? false @@ -89,13 +89,16 @@ let # Create a derivation which encompasses everything, making buildInputs nicer mkdir -p $out/nix-support - echo "$dev $lib" > $out/nix-support/propagated-native-build-inputs + echo "${stripHeaderPathHook} $dev $lib" > $out/nix-support/propagated-native-build-inputs ''; commonConfigureFlags = [ "--includedir=$(dev)/include" "--libdir=$(lib)/lib" ]; + + stripHeaderPathHook = makeSetupHook { } ./strip-header-path.sh; + in stdenv.mkDerivation { diff --git a/pkgs/development/libraries/boost/strip-header-path.sh b/pkgs/development/libraries/boost/strip-header-path.sh new file mode 100644 index 000000000000..f8243fc27be4 --- /dev/null +++ b/pkgs/development/libraries/boost/strip-header-path.sh @@ -0,0 +1,12 @@ +postPhases+=" boostHeaderStripPhase" + +boostHeaderStripPhase() { + runHook preBoostHeaderStrip + [ -z "$outputs" ] && outputs=out + for output in $outputs; do + eval "path=\$$outputs" + [ -d "$path/bin" ] || continue + find "$path/bin" -type f -exec sed -i "s,[^/]*\(-boost-[0-9.]*-dev\),xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\1,g" {} \; + done + runHook postBoostHeaderStrip +}