mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-05-05 21:32:24 +00:00
* New bootstrap binaries (from r16022 in the trunk). Don't set
LD_LIBRARY_PATH since it breaks /bin/sh on non-NixOS platforms (and reverted the previous "fix" in r15470). svn path=/nixpkgs/branches/stdenv-updates/; revision=16029
This commit is contained in:
parent
01c63dfd3e
commit
a830968c53
@ -1,6 +1,5 @@
|
||||
# glibc cannot have itself in its rpath.
|
||||
# Glibc cannot have itself in its RPATH.
|
||||
export NIX_NO_SELF_RPATH=1
|
||||
export NIX_DONT_SET_RPATH=1
|
||||
|
||||
source $stdenv/setup
|
||||
|
||||
@ -41,6 +40,8 @@ postConfigure() {
|
||||
# test binaries.
|
||||
export NIX_CFLAGS_LINK=
|
||||
export NIX_LDFLAGS_BEFORE=
|
||||
|
||||
export NIX_DONT_SET_RPATH=1
|
||||
}
|
||||
|
||||
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -7,7 +7,7 @@
|
||||
curl = ./curl.bz2;
|
||||
|
||||
bootstrapTools = {
|
||||
url = http://nixos.org/tarballs/stdenv-linux/i686/r13932/bootstrap-tools.cpio.bz2;
|
||||
sha256 = "12z35wnpcbjwczsr9fldp6bjpz7wh5qwylw6xfrr9l4s7gmk3m8a";
|
||||
url = http://nixos.org/tarballs/stdenv-linux/i686/r16022/bootstrap-tools.cpio.bz2;
|
||||
sha256 = "1x014icv3dxfs55qzshxjs9gaczmhwlrn144p4314zvl4xz6wq3f";
|
||||
};
|
||||
}
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -4,7 +4,7 @@
|
||||
|
||||
{
|
||||
bootstrapTools = {
|
||||
url = http://nixos.org/tarballs/stdenv-linux/x86_64/r13932/bootstrap-tools.cpio.bz2;
|
||||
sha256 = "135lx2945cxf43g9n39dxcamw6f6n8qp5iqbh4xma575rf2bx5js";
|
||||
url = http://nixos.org/tarballs/stdenv-linux/x86_64/r16022/bootstrap-tools.cpio.bz2;
|
||||
sha256 = "1hwmyd9x9lhmb1ckwap2lvf7wi34p1j23v5bw41drym4mfp97ynz";
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -77,8 +77,6 @@ rec {
|
||||
param1 = bootstrapTools;
|
||||
preHook = builtins.toFile "prehook.sh"
|
||||
''
|
||||
# Put libpthread.so in LD_LIBRARY_PATH; some libraries need it.
|
||||
export LD_LIBRARY_PATH=$param1/lib2
|
||||
# Don't patch #!/interpreter because it leads to retained
|
||||
# dependencies on the bootstrapTools in the final stdenv.
|
||||
dontPatchShebangs=1
|
||||
|
@ -16,7 +16,7 @@ for i in $out/bin/* $out/libexec/gcc/*/*/*; do
|
||||
echo patching $i
|
||||
if ! test -L $i; then
|
||||
LD_LIBRARY_PATH=$out/lib $out/lib/ld-linux*.so.2 \
|
||||
./patchelf --set-interpreter $out/lib/ld-linux*.so.2 --set-rpath $out/lib $i
|
||||
./patchelf --set-interpreter $out/lib/ld-linux*.so.2 --set-rpath $out/lib --force-rpath $i
|
||||
fi
|
||||
done
|
||||
|
||||
@ -33,16 +33,3 @@ ln -s bzip2 $out/bin/bunzip2
|
||||
# fetchurl needs curl.
|
||||
bzip2 -d < $curl > $out/bin/curl
|
||||
chmod +x $out/bin/curl
|
||||
|
||||
# Some libraries have libpthread in their DT_RUNPATH. PatchELF
|
||||
# doesn't work on libraries, so we need to set LD_LIBRARY_PATH.
|
||||
# However, setting LD_LIBRARY_PATH to $out/lib will confuse /bin/sh,
|
||||
# since it might end up loading libraries from a different Glibc. So
|
||||
# put *only* libpthread in LD_LIBRARY_PATH (via $out/lib2). !!! This
|
||||
# is a temporary fix (since /bin/sh could have a dependency on
|
||||
# libpthread as well). A better fix would be to make patchelf work on
|
||||
# libraries, or to set the RPATH rather than the RUNPATH in the
|
||||
# binaries in $out/bin (patchelf --force-rpath doesn't quite work,
|
||||
# since it doesn't discard the existing RUNPATH).
|
||||
mkdir $out/lib2
|
||||
ln -s $out/lib/libpthread* $out/lib2
|
||||
|
Loading…
Reference in New Issue
Block a user