From 342559e0a1ef81ca1df1c2230095468069ddef93 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 2 Apr 2012 14:15:01 +0000 Subject: [PATCH 01/26] glibc: Fixed gencat and librt impurities. Patch submitted by Jack Cummings to the nix-dev mailing list in message <20120309092909.GG39859@ice9.mudshark.org>. svn path=/nixpkgs/branches/stdenv-updates/; revision=33536 --- pkgs/development/libraries/glibc/2.13/builder.sh | 6 ++++++ pkgs/development/libraries/glibc/2.14/builder.sh | 7 +++++++ pkgs/tools/misc/coreutils/default.nix | 8 ++++++++ 3 files changed, 21 insertions(+) diff --git a/pkgs/development/libraries/glibc/2.13/builder.sh b/pkgs/development/libraries/glibc/2.13/builder.sh index 9a1c1490019..f979b91200d 100644 --- a/pkgs/development/libraries/glibc/2.13/builder.sh +++ b/pkgs/development/libraries/glibc/2.13/builder.sh @@ -51,5 +51,11 @@ postInstall() { rm -f $out/lib/libgcc_s.so.1 } +postFixup() { + # libelf uses gencat, so we need to fix it's rpath so that it doesn't pick up the system rpath. + patchelf --set-rpath $out/lib $out/bin/gencat + # librt (used by acl, used by coreutils) links against pthread, try *not* to pick up the system one. + patchelf --set-rpath $out/lib $out/lib/librt-*.so +} genericBuild diff --git a/pkgs/development/libraries/glibc/2.14/builder.sh b/pkgs/development/libraries/glibc/2.14/builder.sh index 9a1c1490019..7d829816fb7 100644 --- a/pkgs/development/libraries/glibc/2.14/builder.sh +++ b/pkgs/development/libraries/glibc/2.14/builder.sh @@ -51,5 +51,12 @@ postInstall() { rm -f $out/lib/libgcc_s.so.1 } +postFixup() { + # libelf uses gencat, so we need to fix it's rpath so that it doesn't pick up the system rpath. + patchelf --set-rpath $out/lib $out/bin/gencat + # librt (used by acl, used by coreutils) links against pthread, try *not* to pick up the system one. + patchelf --set-rpath $out/lib $out/lib/librt-*.so +} + genericBuild diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index 597ab802d74..9ccb5226ced 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -44,6 +44,14 @@ stdenv.mkDerivation rec { NIX_LDFLAGS = stdenv.lib.optionalString selinuxSupport "-lsepol"; + # the coreutils install calls the ginstall just compiled, before we have + # a chance to patchelf it. + libPath = stdenv.lib.makeLibraryPath ([stdenv.gcc.libc] ++ buildInputs); + + preInstall = '' + patchelf --set-rpath $libPath src/ginstall + ''; + meta = { homepage = http://www.gnu.org/software/coreutils/; description = "The basic file, shell and text manipulation utilities of the GNU operating system"; From 00cd8c4235e853cb9cbbf4c981d6c02ac7607e71 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 2 Apr 2012 14:19:09 +0000 Subject: [PATCH 02/26] prune empty directory svn path=/nixpkgs/branches/stdenv-updates/; revision=33537 From 916b7d9dff05c860fadf39d028a8186fefb7d7cc Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 2 Apr 2012 18:18:31 +0000 Subject: [PATCH 03/26] Reverted the patchelf modification to coreutils. It's not obvious to me why that change is needed (and it would need further work to generalize to non-Linux platforms, too). Thanks to Eelco for catching this. svn path=/nixpkgs/branches/stdenv-updates/; revision=33541 --- pkgs/tools/misc/coreutils/default.nix | 8 -------- 1 file changed, 8 deletions(-) diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index 9ccb5226ced..597ab802d74 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -44,14 +44,6 @@ stdenv.mkDerivation rec { NIX_LDFLAGS = stdenv.lib.optionalString selinuxSupport "-lsepol"; - # the coreutils install calls the ginstall just compiled, before we have - # a chance to patchelf it. - libPath = stdenv.lib.makeLibraryPath ([stdenv.gcc.libc] ++ buildInputs); - - preInstall = '' - patchelf --set-rpath $libPath src/ginstall - ''; - meta = { homepage = http://www.gnu.org/software/coreutils/; description = "The basic file, shell and text manipulation utilities of the GNU operating system"; From 69e32e52e2bac66ab7f23aa1653f7735ef6e5bc7 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 3 Apr 2012 11:48:31 +0000 Subject: [PATCH 04/26] * Bash 4.2.24. svn path=/nixpkgs/branches/stdenv-updates/; revision=33554 --- pkgs/shells/bash/bash-4.2-patches.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/shells/bash/bash-4.2-patches.nix b/pkgs/shells/bash/bash-4.2-patches.nix index 0a210186532..8d2a74e95b0 100644 --- a/pkgs/shells/bash/bash-4.2-patches.nix +++ b/pkgs/shells/bash/bash-4.2-patches.nix @@ -21,4 +21,8 @@ patch: [ (patch "018" "0ka9pfnjmdak8lvmbryv2r1kkrlffnxbqjxq656la39pf9qlbag2") (patch "019" "0mpb0whacppwcdx7pcnf0ah5vjvkw14ang6r2rh9fmkn401cvdx8") (patch "020" "0vrwv9wpbr692kf427npmsxzvn007d9alk6jf99v7307s3q76is9") +(patch "021" "1p5s6apnnbmx4yf1kzndw7fiwvdxamkcgqiv937mwmr6w9xsk1x8") +(patch "022" "0sswp2c63pclvdwi2hbkwbqf9ysmiw6mmi0qinl2pkgqyyfzdkcx") +(patch "023" "1gzhcmwj0741libjqwln4r4h9k7lskprc4q87hvqgj56y6a17hax") +(patch "024" "1rlrdfk67g8as6pr076ldhjhnkd2c86mb4ci18fjivivsfyjdj4r") ] From fe497cdcab90cc59e67cf9509adbab158d6f11de Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Tue, 3 Apr 2012 18:00:51 +0000 Subject: [PATCH 05/26] automake: updated to version 1.11.4 svn path=/nixpkgs/branches/stdenv-updates/; revision=33558 --- pkgs/development/tools/misc/automake/automake-1.11.x.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/misc/automake/automake-1.11.x.nix b/pkgs/development/tools/misc/automake/automake-1.11.x.nix index 65ef3a9a146..e2507432151 100644 --- a/pkgs/development/tools/misc/automake/automake-1.11.x.nix +++ b/pkgs/development/tools/misc/automake/automake-1.11.x.nix @@ -1,7 +1,7 @@ {stdenv, fetchurl, perl, autoconf, makeWrapper, doCheck ? true}: stdenv.mkDerivation rec { - name = "automake-1.11.2"; + name = "automake-1.11.4"; # TODO: Remove the `aclocal' wrapper when $ACLOCAL_PATH support is # available upstream; see @@ -11,8 +11,8 @@ stdenv.mkDerivation rec { setupHook = ./setup-hook.sh; src = fetchurl { - url = "mirror://gnu/automake/${name}.tar.bz2"; - sha256 = "06476qbd16dlasz29drmljqmr4gwx4qgcl075033b2hc73wx2ijg"; + url = "mirror://gnu/automake/${name}.tar.xz"; + sha256 = "0q39igxz41nlhjhq81gjgjxchcia3scs585sszswlp2ldd8h6ap5"; }; buildInputs = [perl autoconf makeWrapper]; From 07b7aa1f38a16055ceecaddf71ba4cb521d78342 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 4 Apr 2012 08:59:03 +0000 Subject: [PATCH 06/26] * Revert r33558, it breaks various packages (see e.g. http://hydra.nixos.org/build/2363689). svn path=/nixpkgs/branches/stdenv-updates/; revision=33560 --- pkgs/development/tools/misc/automake/automake-1.11.x.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/misc/automake/automake-1.11.x.nix b/pkgs/development/tools/misc/automake/automake-1.11.x.nix index e2507432151..65ef3a9a146 100644 --- a/pkgs/development/tools/misc/automake/automake-1.11.x.nix +++ b/pkgs/development/tools/misc/automake/automake-1.11.x.nix @@ -1,7 +1,7 @@ {stdenv, fetchurl, perl, autoconf, makeWrapper, doCheck ? true}: stdenv.mkDerivation rec { - name = "automake-1.11.4"; + name = "automake-1.11.2"; # TODO: Remove the `aclocal' wrapper when $ACLOCAL_PATH support is # available upstream; see @@ -11,8 +11,8 @@ stdenv.mkDerivation rec { setupHook = ./setup-hook.sh; src = fetchurl { - url = "mirror://gnu/automake/${name}.tar.xz"; - sha256 = "0q39igxz41nlhjhq81gjgjxchcia3scs585sszswlp2ldd8h6ap5"; + url = "mirror://gnu/automake/${name}.tar.bz2"; + sha256 = "06476qbd16dlasz29drmljqmr4gwx4qgcl075033b2hc73wx2ijg"; }; buildInputs = [perl autoconf makeWrapper]; From 461455afe9ad8b56e1abdeab16f6807f5c6484b6 Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Wed, 4 Apr 2012 11:29:21 +0000 Subject: [PATCH 07/26] pcre-8.30 svn path=/nixpkgs/branches/stdenv-updates/; revision=33561 --- pkgs/development/libraries/pcre/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/pcre/default.nix b/pkgs/development/libraries/pcre/default.nix index 7802f89807d..906054ffd3a 100644 --- a/pkgs/development/libraries/pcre/default.nix +++ b/pkgs/development/libraries/pcre/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, unicodeSupport ? true, cplusplusSupport ? true }: stdenv.mkDerivation rec { - name = "pcre-8.21"; + name = "pcre-8.30"; src = fetchurl { url = "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/${name}.tar.bz2"; - sha256 = "1qwrqldbwszbmr4cw4f0xmcl889cmmjbf58l9vxn89zw26fm1f54"; + sha256 = "1b7lcp4kfjc0jyvpw4pxkbmyjhmnwlrd85rrifnrfklkvgbky4f1"; }; # The compiler on Darwin crashes with an internal error while building the From 4a84fd30b5d987430f6ae5ca79ee0f077225dabe Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Wed, 4 Apr 2012 16:25:17 +0000 Subject: [PATCH 08/26] Don't do verbose unpacking, it's just log noise svn path=/nixpkgs/branches/stdenv-updates/; revision=33573 --- pkgs/stdenv/generic/setup.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 655b7f94047..317f50679e0 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -432,15 +432,15 @@ unpackFile() { case "$curSrc" in *.tar.xz | *.tar.lzma) # Don't rely on tar knowing about .xz. - xz -d < $curSrc | tar xvf - + xz -d < $curSrc | tar xf - ;; *.tar | *.tar.* | *.tgz | *.tbz2) # GNU tar can automatically select the decompression method # (info "(tar) gzip"). - tar xvf $curSrc + tar xf $curSrc ;; *.zip) - unzip $curSrc + unzip -qq $curSrc ;; *) if [ -d "$curSrc" ]; then From 358e51bb6df6f43a13baf0824f489ea64588b833 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Wed, 4 Apr 2012 16:27:04 +0000 Subject: [PATCH 09/26] tar doesn't need -f - to read from stdin svn path=/nixpkgs/branches/stdenv-updates/; revision=33574 --- pkgs/stdenv/generic/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 317f50679e0..d034109f799 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -432,7 +432,7 @@ unpackFile() { case "$curSrc" in *.tar.xz | *.tar.lzma) # Don't rely on tar knowing about .xz. - xz -d < $curSrc | tar xf - + xz -d < $curSrc | tar x ;; *.tar | *.tar.* | *.tgz | *.tbz2) # GNU tar can automatically select the decompression method From 6f711ceb01ab73e62b7257bc88f1255cd85730d4 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Wed, 4 Apr 2012 19:45:01 +0000 Subject: [PATCH 10/26] Revert r33547 svn path=/nixpkgs/branches/stdenv-updates/; revision=33583 --- pkgs/stdenv/generic/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index d034109f799..317f50679e0 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -432,7 +432,7 @@ unpackFile() { case "$curSrc" in *.tar.xz | *.tar.lzma) # Don't rely on tar knowing about .xz. - xz -d < $curSrc | tar x + xz -d < $curSrc | tar xf - ;; *.tar | *.tar.* | *.tgz | *.tbz2) # GNU tar can automatically select the decompression method From 6e195330d6f54e42f625ff789920ba5c17149574 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 6 Apr 2012 11:19:48 +0000 Subject: [PATCH 11/26] * Lower priority for stdenv jobs. svn path=/nixpkgs/branches/stdenv-updates/; revision=33644 --- pkgs/top-level/release-lib.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/release-lib.nix b/pkgs/top-level/release-lib.nix index f6db077b313..711736e438c 100644 --- a/pkgs/top-level/release-lib.nix +++ b/pkgs/top-level/release-lib.nix @@ -37,7 +37,7 @@ rec { prio = level: job: toJob job // { schedulingPriority = level; }; toJob = x: if builtins.isAttrs x then x else - { type = "job"; systems = x; schedulingPriority = 10; }; + { type = "job"; systems = x; schedulingPriority = 5; }; /* Perform a job on the given set of platforms. The function `f' is called by Hydra for each platform, and should return some job From 8f60696e06a3c714f83968f57cd6a230d92e7430 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Wed, 11 Apr 2012 04:42:23 +0000 Subject: [PATCH 12/26] glibc: Don't check /etc/ld.so.cache Idea by Eelco, initial patch by Jack Cummings, minor fixups by me svn path=/nixpkgs/branches/stdenv-updates/; revision=33741 --- .../libraries/glibc/2.13/builder.sh | 7 --- .../libraries/glibc/2.13/common.nix | 3 ++ .../2.13/dont_use_system_ld_so_cache.patch | 43 +++++++++++++++++++ .../libraries/glibc/2.14/builder.sh | 8 ---- .../libraries/glibc/2.14/common.nix | 3 ++ .../2.14/dont_use_system_ld_so_cache.patch | 43 +++++++++++++++++++ 6 files changed, 92 insertions(+), 15 deletions(-) create mode 100644 pkgs/development/libraries/glibc/2.13/dont_use_system_ld_so_cache.patch create mode 100644 pkgs/development/libraries/glibc/2.14/dont_use_system_ld_so_cache.patch diff --git a/pkgs/development/libraries/glibc/2.13/builder.sh b/pkgs/development/libraries/glibc/2.13/builder.sh index f979b91200d..e68e13f9bec 100644 --- a/pkgs/development/libraries/glibc/2.13/builder.sh +++ b/pkgs/development/libraries/glibc/2.13/builder.sh @@ -51,11 +51,4 @@ postInstall() { rm -f $out/lib/libgcc_s.so.1 } -postFixup() { - # libelf uses gencat, so we need to fix it's rpath so that it doesn't pick up the system rpath. - patchelf --set-rpath $out/lib $out/bin/gencat - # librt (used by acl, used by coreutils) links against pthread, try *not* to pick up the system one. - patchelf --set-rpath $out/lib $out/lib/librt-*.so -} - genericBuild diff --git a/pkgs/development/libraries/glibc/2.13/common.nix b/pkgs/development/libraries/glibc/2.13/common.nix index 6cb663d7f12..7d17f21a914 100644 --- a/pkgs/development/libraries/glibc/2.13/common.nix +++ b/pkgs/development/libraries/glibc/2.13/common.nix @@ -75,6 +75,9 @@ stdenv.mkDerivation ({ /* Allow nixos and nix handle the locale-archive. */ ./nix-locale-archive.patch + /* don't use /etc/ld.so.cache, for non-nixos systems */ + ./dont_use_system_ld_so_cache.patch + /* Without this patch many KDE binaries crash. */ ./glibc-elf-localscope.patch ] ++ stdenv.lib.optional installLocales ./catalan-firstdays.patch; diff --git a/pkgs/development/libraries/glibc/2.13/dont_use_system_ld_so_cache.patch b/pkgs/development/libraries/glibc/2.13/dont_use_system_ld_so_cache.patch new file mode 100644 index 00000000000..444eb8251e4 --- /dev/null +++ b/pkgs/development/libraries/glibc/2.13/dont_use_system_ld_so_cache.patch @@ -0,0 +1,43 @@ +diff -Naur glibc-2.13-orig/elf/ldconfig.c glibc-2.13/elf/ldconfig.c +--- glibc-2.13-orig/elf/ldconfig.c 2011-01-17 23:34:07.000000000 -0500 ++++ glibc-2.13/elf/ldconfig.c 2012-04-10 23:28:45.957492340 -0400 +@@ -51,7 +51,7 @@ + #endif + + #ifndef LD_SO_CONF +-# define LD_SO_CONF SYSCONFDIR "/ld.so.conf" ++# define LD_SO_CONF PREFIX "/etc/ld.so.conf" + #endif + + /* Get libc version number. */ +diff -Naur glibc-2.13-orig/elf/Makefile glibc-2.13/elf/Makefile +--- glibc-2.13-orig/elf/Makefile 2011-01-17 23:34:07.000000000 -0500 ++++ glibc-2.13/elf/Makefile 2012-04-10 23:27:05.666477442 -0400 +@@ -459,11 +459,11 @@ + $(objpfx)sprof: $(libdl) + + $(objpfx)ldconfig: $(ldconfig-modules:%=$(objpfx)%.o) +-SYSCONF-FLAGS := -D'SYSCONFDIR="$(sysconfdir)"' +-CFLAGS-ldconfig.c = $(SYSCONF-FLAGS) -D'LIBDIR="$(libdir)"' \ ++PREFIX-FLAGS := -D'PREFIX="$(prefix)"' ++CFLAGS-ldconfig.c = $(PREFIX-FLAGS) -D'LIBDIR="$(libdir)"' \ + -D'SLIBDIR="$(slibdir)"' -DIS_IN_ldconfig=1 +-CFLAGS-dl-cache.c = $(SYSCONF-FLAGS) +-CFLAGS-cache.c = $(SYSCONF-FLAGS) ++CFLAGS-dl-cache.c = $(PREFIX-FLAGS) ++CFLAGS-cache.c = $(PREFIX-FLAGS) + + CPPFLAGS-.os += $(if $(filter $(@F),$(patsubst %,%.os,$(all-rtld-routines))),-DNOT_IN_libc=1 -DIS_IN_rtld=1) + +diff -Naur glibc-2.13-orig/sysdeps/generic/dl-cache.h glibc-2.13/sysdeps/generic/dl-cache.h +--- glibc-2.13-orig/sysdeps/generic/dl-cache.h 2011-01-17 23:34:07.000000000 -0500 ++++ glibc-2.13/sysdeps/generic/dl-cache.h 2012-04-10 23:28:20.077488815 -0400 +@@ -29,7 +29,7 @@ + #endif + + #ifndef LD_SO_CACHE +-# define LD_SO_CACHE SYSCONFDIR "/ld.so.cache" ++# define LD_SO_CACHE PREFIX "/etc/ld.so.cache" + #endif + + #ifndef add_system_dir diff --git a/pkgs/development/libraries/glibc/2.14/builder.sh b/pkgs/development/libraries/glibc/2.14/builder.sh index 7d829816fb7..e68e13f9bec 100644 --- a/pkgs/development/libraries/glibc/2.14/builder.sh +++ b/pkgs/development/libraries/glibc/2.14/builder.sh @@ -51,12 +51,4 @@ postInstall() { rm -f $out/lib/libgcc_s.so.1 } -postFixup() { - # libelf uses gencat, so we need to fix it's rpath so that it doesn't pick up the system rpath. - patchelf --set-rpath $out/lib $out/bin/gencat - # librt (used by acl, used by coreutils) links against pthread, try *not* to pick up the system one. - patchelf --set-rpath $out/lib $out/lib/librt-*.so -} - - genericBuild diff --git a/pkgs/development/libraries/glibc/2.14/common.nix b/pkgs/development/libraries/glibc/2.14/common.nix index 4ded6e4edd8..fcc07b71cf9 100644 --- a/pkgs/development/libraries/glibc/2.14/common.nix +++ b/pkgs/development/libraries/glibc/2.14/common.nix @@ -75,6 +75,9 @@ stdenv.mkDerivation ({ /* Allow nixos and nix handle the locale-archive. */ ./nix-locale-archive.patch + /* don't use /etc/ld.so.cache, for non-nixos systems */ + ./dont_use_system_ld_so_cache.patch + /* Without this patch many KDE binaries crash. */ ./glibc-elf-localscope.patch ]; diff --git a/pkgs/development/libraries/glibc/2.14/dont_use_system_ld_so_cache.patch b/pkgs/development/libraries/glibc/2.14/dont_use_system_ld_so_cache.patch new file mode 100644 index 00000000000..444eb8251e4 --- /dev/null +++ b/pkgs/development/libraries/glibc/2.14/dont_use_system_ld_so_cache.patch @@ -0,0 +1,43 @@ +diff -Naur glibc-2.13-orig/elf/ldconfig.c glibc-2.13/elf/ldconfig.c +--- glibc-2.13-orig/elf/ldconfig.c 2011-01-17 23:34:07.000000000 -0500 ++++ glibc-2.13/elf/ldconfig.c 2012-04-10 23:28:45.957492340 -0400 +@@ -51,7 +51,7 @@ + #endif + + #ifndef LD_SO_CONF +-# define LD_SO_CONF SYSCONFDIR "/ld.so.conf" ++# define LD_SO_CONF PREFIX "/etc/ld.so.conf" + #endif + + /* Get libc version number. */ +diff -Naur glibc-2.13-orig/elf/Makefile glibc-2.13/elf/Makefile +--- glibc-2.13-orig/elf/Makefile 2011-01-17 23:34:07.000000000 -0500 ++++ glibc-2.13/elf/Makefile 2012-04-10 23:27:05.666477442 -0400 +@@ -459,11 +459,11 @@ + $(objpfx)sprof: $(libdl) + + $(objpfx)ldconfig: $(ldconfig-modules:%=$(objpfx)%.o) +-SYSCONF-FLAGS := -D'SYSCONFDIR="$(sysconfdir)"' +-CFLAGS-ldconfig.c = $(SYSCONF-FLAGS) -D'LIBDIR="$(libdir)"' \ ++PREFIX-FLAGS := -D'PREFIX="$(prefix)"' ++CFLAGS-ldconfig.c = $(PREFIX-FLAGS) -D'LIBDIR="$(libdir)"' \ + -D'SLIBDIR="$(slibdir)"' -DIS_IN_ldconfig=1 +-CFLAGS-dl-cache.c = $(SYSCONF-FLAGS) +-CFLAGS-cache.c = $(SYSCONF-FLAGS) ++CFLAGS-dl-cache.c = $(PREFIX-FLAGS) ++CFLAGS-cache.c = $(PREFIX-FLAGS) + + CPPFLAGS-.os += $(if $(filter $(@F),$(patsubst %,%.os,$(all-rtld-routines))),-DNOT_IN_libc=1 -DIS_IN_rtld=1) + +diff -Naur glibc-2.13-orig/sysdeps/generic/dl-cache.h glibc-2.13/sysdeps/generic/dl-cache.h +--- glibc-2.13-orig/sysdeps/generic/dl-cache.h 2011-01-17 23:34:07.000000000 -0500 ++++ glibc-2.13/sysdeps/generic/dl-cache.h 2012-04-10 23:28:20.077488815 -0400 +@@ -29,7 +29,7 @@ + #endif + + #ifndef LD_SO_CACHE +-# define LD_SO_CACHE SYSCONFDIR "/ld.so.cache" ++# define LD_SO_CACHE PREFIX "/etc/ld.so.cache" + #endif + + #ifndef add_system_dir From 65ddcaa3ed2c7771739638100bc20e5cbf61a603 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 13 Apr 2012 12:32:51 +0000 Subject: [PATCH 13/26] * Bison: use an absolute path to M4. Otherwise Bison will silently fail (due to a SIGPIPE) if M4 isn't installed. svn path=/nixpkgs/branches/stdenv-updates/; revision=33772 --- pkgs/development/tools/parsing/bison/bison-2.5.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/tools/parsing/bison/bison-2.5.nix b/pkgs/development/tools/parsing/bison/bison-2.5.nix index 98c465a185c..ea50b859020 100644 --- a/pkgs/development/tools/parsing/bison/bison-2.5.nix +++ b/pkgs/development/tools/parsing/bison/bison-2.5.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { ++ stdenv.lib.optional doCheck perl; propagatedBuildInputs = [ m4 ]; - M4 = "m4"; + M4 = "${m4}/bin/m4"; doCheck = true; From 661d16d3fe5268be8ee442c4827c393bf462efac Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 23 Apr 2012 12:42:03 +0000 Subject: [PATCH 14/26] * Revert pcre (r33561). It breaks Apache (http://hydra.nixos.org/build/2447441). svn path=/nixpkgs/branches/stdenv-updates/; revision=33890 --- pkgs/development/libraries/pcre/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/pcre/default.nix b/pkgs/development/libraries/pcre/default.nix index 906054ffd3a..7802f89807d 100644 --- a/pkgs/development/libraries/pcre/default.nix +++ b/pkgs/development/libraries/pcre/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, unicodeSupport ? true, cplusplusSupport ? true }: stdenv.mkDerivation rec { - name = "pcre-8.30"; + name = "pcre-8.21"; src = fetchurl { url = "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/${name}.tar.bz2"; - sha256 = "1b7lcp4kfjc0jyvpw4pxkbmyjhmnwlrd85rrifnrfklkvgbky4f1"; + sha256 = "1qwrqldbwszbmr4cw4f0xmcl889cmmjbf58l9vxn89zw26fm1f54"; }; # The compiler on Darwin crashes with an internal error while building the From be901fa8befb762928e2c2f7805ce98c76dc2c53 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 1 May 2012 21:00:30 +0000 Subject: [PATCH 15/26] * Add an installCheckPhase. svn path=/nixpkgs/branches/stdenv-updates/; revision=33967 --- pkgs/stdenv/generic/setup.sh | 17 ++++++++++++++++- pkgs/tools/package-management/nix/unstable.nix | 7 +++---- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 317f50679e0..703ea53db8e 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -767,6 +767,19 @@ fixupPhase() { } +installCheckPhase() { + runHook preInstallCheck + + echo "installcheck flags: $makeFlags ${makeFlagsArray[@]} $installCheckFlags ${installCheckFlagsArray[@]}" + make ${makefile:+-f $makefile} \ + ${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}} \ + $makeFlags "${makeFlagsArray[@]}" \ + $installCheckFlags "${installCheckFlagsArray[@]}" ${installCheckTarget:-installcheck} + + runHook postInstallCheck +} + + distPhase() { runHook preDist @@ -795,6 +808,7 @@ showPhaseHeader() { checkPhase) header "running tests";; installPhase) header "installing";; fixupPhase) header "post-installation fixup";; + installCheckPhase) header "running install tests";; *) header "$phase";; esac } @@ -811,7 +825,7 @@ genericBuild() { if [ -z "$phases" ]; then phases="$prePhases unpackPhase patchPhase $preConfigurePhases \ configurePhase $preBuildPhases buildPhase checkPhase \ - $preInstallPhases installPhase fixupPhase \ + $preInstallPhases installPhase fixupPhase installCheckPhase \ $preDistPhases distPhase $postPhases"; fi @@ -820,6 +834,7 @@ genericBuild() { if [ "$curPhase" = checkPhase -a -z "$doCheck" ]; then continue; fi if [ "$curPhase" = installPhase -a -n "$dontInstall" ]; then continue; fi if [ "$curPhase" = fixupPhase -a -n "$dontFixup" ]; then continue; fi + if [ "$curPhase" = installCheckPhase -a -z "$doInstallCheck" ]; then continue; fi if [ "$curPhase" = distPhase -a -z "$doDist" ]; then continue; fi if [ -n "$tracePhases" ]; then diff --git a/pkgs/tools/package-management/nix/unstable.nix b/pkgs/tools/package-management/nix/unstable.nix index edce730d73b..ce62eb1e562 100644 --- a/pkgs/tools/package-management/nix/unstable.nix +++ b/pkgs/tools/package-management/nix/unstable.nix @@ -34,6 +34,8 @@ stdenv.mkDerivation rec { CFLAGS=-O3 CXXFLAGS=-O3 ''; + doInstallCheck = true; + crossAttrs = { postUnpack = '' export CPATH="${bzip2.hostDrv}/include" @@ -51,14 +53,11 @@ stdenv.mkDerivation rec { '' + stdenv.lib.optionalString ( stdenv.cross ? nix && stdenv.cross.nix ? system ) ''--with-system=${stdenv.cross.nix.system}''; - doCheck = false; - postInstall = ":"; + doInstallCheck = false; }; enableParallelBuilding = true; - postInstall = "make installcheck"; - meta = { description = "The Nix Deployment System"; homepage = http://nixos.org/; From 0ae007e26f0c373695aa7c4435ecd6f00d297840 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Sat, 5 May 2012 15:00:10 +0000 Subject: [PATCH 16/26] * OpenSSL 1.0.1b (includes security fixes). svn path=/nixpkgs/branches/stdenv-updates/; revision=33989 --- pkgs/development/libraries/openssl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index 1a4767916f8..95fa701a27e 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, perl }: let - name = "openssl-1.0.0g"; + name = "openssl-1.0.1b"; opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ] (throw "openssl needs its platform name cross building" null) @@ -36,7 +36,7 @@ stdenv.mkDerivation { "http://www.openssl.org/source/${name}.tar.gz" "http://openssl.linux-mirror.org/source/${name}.tar.gz" ]; - sha1 = "2b517baada2338663c27314cb922f9755e73e07f"; + sha1 = "b6222cbbf835c27d9ad6db22262da6e4a2aca8b8"; }; patches = patchesCross false; From d0a1fe6b90fc11dbdac912c2b5c7b058bf8b62f4 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 7 May 2012 01:08:33 +0000 Subject: [PATCH 17/26] * Revert to the OpenSSL 1.0.0 series (though a newer version) because 1.0.1 doesn't build on FreeBSD and Darwin (due to our patches). svn path=/nixpkgs/branches/stdenv-updates/; revision=34001 --- pkgs/development/libraries/openssl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index 95fa701a27e..9757aee0241 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, perl }: let - name = "openssl-1.0.1b"; + name = "openssl-1.0.0i"; opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ] (throw "openssl needs its platform name cross building" null) @@ -36,7 +36,7 @@ stdenv.mkDerivation { "http://www.openssl.org/source/${name}.tar.gz" "http://openssl.linux-mirror.org/source/${name}.tar.gz" ]; - sha1 = "b6222cbbf835c27d9ad6db22262da6e4a2aca8b8"; + sha1 = "b7aa11cbd7d264c2b1f44e3d55b334fb33f7b674"; }; patches = patchesCross false; From 6c36eece344d3a78245211846f6b434f3fd78dfd Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 7 May 2012 19:56:14 +0000 Subject: [PATCH 18/26] * Remove the FreeBSD patch. It no longer applies and no longer seems needed. svn path=/nixpkgs/branches/stdenv-updates/; revision=34006 --- pkgs/development/libraries/openssl/default.nix | 3 +-- .../libraries/openssl/freebsd-x86_64-asm.patch | 16 ---------------- 2 files changed, 1 insertion(+), 18 deletions(-) delete mode 100644 pkgs/development/libraries/openssl/freebsd-x86_64-asm.patch diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index 9757aee0241..cd164b13f8e 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -23,8 +23,7 @@ let ./gnu.patch # submitted upstream ] - ++ stdenv.lib.optional stdenv.isDarwin ./darwin-arch.patch - ++ stdenv.lib.optional (stdenv.system == "x86_64-freebsd") ./freebsd-x86_64-asm.patch; + ++ stdenv.lib.optional stdenv.isDarwin ./darwin-arch.patch; in diff --git a/pkgs/development/libraries/openssl/freebsd-x86_64-asm.patch b/pkgs/development/libraries/openssl/freebsd-x86_64-asm.patch deleted file mode 100644 index f52e4dac25f..00000000000 --- a/pkgs/development/libraries/openssl/freebsd-x86_64-asm.patch +++ /dev/null @@ -1,16 +0,0 @@ -Patch for . -Fixes compilation on FreeBSD 8.2 with GNU Make 3.81. - -diff --git a/crypto/perlasm/x86_64-xlate.pl b/crypto/perlasm/x86_64-xlate.pl -index e47116b..dc500ae 100755 ---- a/crypto/perlasm/x86_64-xlate.pl -+++ b/crypto/perlasm/x86_64-xlate.pl -@@ -66,7 +66,7 @@ if ($flavour =~ /\./) { $output = $flavour; undef $flavour; } - my ($outdev,$outino,@junk)=stat($output); - - open STDOUT,">$output" || die "can't open $output: $!" -- if ($stddev!=$outdev || $stdino!=$outino); -+ if (!defined($outdev) || $stddev!=$outdev || $stdino!=$outino); - } - - my $gas=1; $gas=0 if ($output =~ /\.asm$/); From ab55de20c13b9233d007ff044dad3bbce1a8e6b2 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 7 May 2012 20:03:12 +0000 Subject: [PATCH 19/26] * GMP 5.0.5. svn path=/nixpkgs/branches/stdenv-updates/; revision=34007 --- pkgs/development/libraries/gmp/{5.0.4.nix => 5.0.5.nix} | 4 ++-- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) rename pkgs/development/libraries/gmp/{5.0.4.nix => 5.0.5.nix} (95%) diff --git a/pkgs/development/libraries/gmp/5.0.4.nix b/pkgs/development/libraries/gmp/5.0.5.nix similarity index 95% rename from pkgs/development/libraries/gmp/5.0.4.nix rename to pkgs/development/libraries/gmp/5.0.5.nix index 01995d1d885..3fb62585051 100644 --- a/pkgs/development/libraries/gmp/5.0.4.nix +++ b/pkgs/development/libraries/gmp/5.0.5.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, m4, cxx ? true }: stdenv.mkDerivation rec { - name = "gmp-5.0.4"; + name = "gmp-5.0.5"; src = fetchurl { url = "mirror://gnu/gmp/${name}.tar.bz2"; - sha256 = "0vx0z5f1q8jjxjp8hcbcvzz8y41zs889nna4r4ahkpsb7vgamm1m"; + sha256 = "1jfymbr90mpn0zw5sg001llqnvf2462y77vgjknrmfs1rjn8ln0z"; }; patches = [ ./ignore-bad-cpuid.patch ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a8fdae521e6..6938938d9d2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3679,7 +3679,7 @@ let # GMP 4.3.2 is broken on Darwin, so use 4.3.1. callPackage ../development/libraries/gmp/4.3.1.nix { } else - callPackage ../development/libraries/gmp/5.0.4.nix { }; + callPackage ../development/libraries/gmp/5.0.5.nix { }; gmpxx = appendToName "with-cxx" (gmp.override { cxx = true; }); From 356ce12cd0e41a5bc010790da4efe836b2927b7d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 7 May 2012 20:08:10 +0000 Subject: [PATCH 20/26] * Python 2.7.3 (including various security fixes). svn path=/nixpkgs/branches/stdenv-updates/; revision=34008 --- pkgs/development/interpreters/python/2.7/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/python/2.7/default.nix b/pkgs/development/interpreters/python/2.7/default.nix index e4d3d057570..09860310541 100644 --- a/pkgs/development/interpreters/python/2.7/default.nix +++ b/pkgs/development/interpreters/python/2.7/default.nix @@ -9,11 +9,11 @@ with stdenv.lib; let majorVersion = "2.7"; - version = "${majorVersion}.2"; + version = "${majorVersion}.3"; src = fetchurl { url = "http://www.python.org/ftp/python/${version}/Python-${version}.tar.bz2"; - sha256 = "1axx9h1r157fanldmnj1q2gdw2sm0sg8h3mx1l2adddmgq3fnmsh"; + sha256 = "0g3672il41rcfjk7sphfqdsa6qf53y8g3ai8yk1sslxi3khmfr3j"; }; patches = From b5fa2175dbe4e4a620b6a3f538a79655b9e234d5 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 7 May 2012 20:10:50 +0000 Subject: [PATCH 21/26] * Zlib updated to 1.2.7. svn path=/nixpkgs/branches/stdenv-updates/; revision=34009 --- pkgs/development/libraries/zlib/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/zlib/default.nix b/pkgs/development/libraries/zlib/default.nix index eecdc80da5e..5e1ddf83951 100644 --- a/pkgs/development/libraries/zlib/default.nix +++ b/pkgs/development/libraries/zlib/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, static ? false }: -let version = "1.2.6"; in +let version = "1.2.7"; in stdenv.mkDerivation rec { name = "zlib-${version}"; @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { [ "http://www.zlib.net/${name}.tar.gz" # old versions vanish from here "mirror://sourceforge/libpng/zlib/${version}/${name}.tar.gz" ]; - sha256 = "06x6m33ls1606ni7275q5z392csvh18dgs55kshfnvrfal45w8r1"; + sha256 = "1i96gsdvxqb6skp9a58bacf1wxamwi9m9pg4yn7cpf7g7239r77s"; }; configureFlags = if static then "" else "--shared"; From 32649ce94c9d252a97face2ac09600b8db9a5a3d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 7 May 2012 20:12:53 +0000 Subject: [PATCH 22/26] * libpng 1.5.10, which includes a fix for CVE-2011-3048. svn path=/nixpkgs/branches/stdenv-updates/; revision=34010 --- pkgs/development/libraries/libpng/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libpng/default.nix b/pkgs/development/libraries/libpng/default.nix index a79f05ab093..a06e8e12543 100644 --- a/pkgs/development/libraries/libpng/default.nix +++ b/pkgs/development/libraries/libpng/default.nix @@ -3,11 +3,11 @@ assert zlib != null; stdenv.mkDerivation rec { - name = "libpng-1.5.9"; + name = "libpng-1.5.10"; src = fetchurl { url = "mirror://sourceforge/libpng/${name}.tar.xz"; - sha256 = "0rd0kn7bpdhbv4gw6475plc51a4p5kzk26kag0d08wfvb7ip8wxq"; + sha256 = "0pb096zn6iyza28js4j7krvcw23b979igfi315aqmvx622bw6jfx"; }; propagatedBuildInputs = [ zlib ]; From f1a63ee0a75a618ad7b13ae6da11717c2f9faaaa Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 10 May 2012 14:56:19 +0000 Subject: [PATCH 23/26] * Hack svn:mergeinfo to hopefully allow "svn merge --reintegrate" to succeed. The error is: $ svn merge --reintegrate ^/nixpkgs/branches/stdenv-updates svn: E195016: Reintegrate can only be used if revisions 33530 through 34045 were previously merged from https://nixos.org/repos/nix/nixpkgs/trunk to the reintegrate source, but this is not the case: nixpkgs/branches/stdenv-updates/pkgs/misc/screensavers/xscreensaver/default.nix Missing ranges: /nixpkgs/trunk/pkgs/misc/screensavers/xscreensaver/default.nix:33655-33656 svn path=/nixpkgs/branches/stdenv-updates/; revision=34046 From 928a24da69402098723fbf2a1e9e2cc94f50ff0f Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 10 May 2012 14:58:45 +0000 Subject: [PATCH 24/26] * Second attempt. svn path=/nixpkgs/branches/stdenv-updates/; revision=34047 From c60af6bbd1cfd95fdb96ed12fc84160592f59af9 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 10 May 2012 15:00:17 +0000 Subject: [PATCH 25/26] * Third attempt. svn path=/nixpkgs/branches/stdenv-updates/; revision=34048 From 587b2e7d3ecaea6a952a644e618fa876f1906604 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 10 May 2012 15:14:08 +0000 Subject: [PATCH 26/26] * Bravely delete the mergeinfo. svn path=/nixpkgs/branches/stdenv-updates/; revision=34050