* Ensure that when building gcc, libstdc++ is linked against the
libgcc of the gcc being built, not the gcc building it. * Only include a directory in the rpath of an executable/library if it is actually used. Before, the `/lib' directory of every build input was added to the rpath, causing many unnecessary retained dependencies. For instance, Perl has a `/lib' directory, but most applications whose build process uses Perl don't actually link against Perl. (Also added a test for this.) * After building glibc, remove glibcbug, to prevent a retained dependency on gcc. * Add a newline after `building X' in GNU Make. svn path=/nixpkgs/trunk/; revision=911
This commit is contained in:
@@ -4,13 +4,6 @@ export NIX_NO_SELF_RPATH=1
|
||||
. $stdenv/setup
|
||||
|
||||
|
||||
# !!! Toss the linker flags. Any sort of rpath is fatal.
|
||||
# This probably will cause a failure when building in a pure Nix
|
||||
# environment.
|
||||
export NIX_LDFLAGS=
|
||||
export NIX_GLIBC_FLAGS_SET=1
|
||||
|
||||
|
||||
postUnpack() {
|
||||
cd $sourceRoot
|
||||
unpackFile $linuxthreadsSrc
|
||||
@@ -35,6 +28,8 @@ postInstall() {
|
||||
make localedata/install-locales
|
||||
rm $out/etc/ld.so.cache
|
||||
(cd $out/include && ln -s $kernelHeaders/include/* .) || exit 1
|
||||
# `glibcbug' causes a retained dependency on the C compiler.
|
||||
rm $out/bin/glibcbug
|
||||
}
|
||||
|
||||
postInstall=postInstall
|
||||
|
||||
Reference in New Issue
Block a user