diff options
Diffstat (limited to 'pkgs/development/libraries/glibc-new/builder.sh')
-rw-r--r-- | pkgs/development/libraries/glibc-new/builder.sh | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/pkgs/development/libraries/glibc-new/builder.sh b/pkgs/development/libraries/glibc-new/builder.sh new file mode 100644 index 0000000000000..2007235ab7660 --- /dev/null +++ b/pkgs/development/libraries/glibc-new/builder.sh @@ -0,0 +1,63 @@ +# glibc cannot have itself in its rpath. +export NIX_NO_SELF_RPATH=1 +export NIX_DONT_SET_RPATH=1 + +source $stdenv/setup +source $substitute + +glibc=`cat $NIX_GCC/nix-support/orig-glibc` +echo $glibc + +export LD_LIBRARY_PATH=$glibc/lib + +# Explicitly tell glibc to use our pwd, not /bin/pwd. +export PWD_P=$(type -tP pwd) + + +postUnpack=postUnpack +postUnpack() { + cd $sourceRoot + unpackFile $linuxthreadsSrc + cd .. +} + + +preConfigure=preConfigure +preConfigure() { + + # Use Linuxthreads instead of NPTL. + rm -rf nptl + + for i in configure io/ftwtest-sh; do + substituteInPlace "$i" \ + --replace "@PWD@" "pwd" + done + + mkdir ../build + cd ../build + + configureScript=../$sourceRoot/configure +} + + +postConfigure=postConfigure +postConfigure() { + # Hack: get rid of the `-static' flag set by the bootstrap stdenv. + # This has to be done *after* `configure' because it builds some + # test binaries. + export NIX_CFLAGS_LINK= + export NIX_LDFLAGS_BEFORE= +} + + +postInstall=postInstall +postInstall() { + if test -n "$installLocales"; then + make localedata/install-locales + fi + rm $out/etc/ld.so.cache + (cd $out/include && ln -s $kernelHeaders/include/* .) || exit 1 +} + + +genericBuild |