* Merge the stdenv branch.

svn path=/nixpkgs/trunk/; revision=34051
This commit is contained in:
Eelco Dolstra 2012-05-10 15:16:27 +00:00
commit 203b85334a
17 changed files with 134 additions and 51 deletions

View File

@ -9,11 +9,11 @@ with stdenv.lib;
let let
majorVersion = "2.7"; majorVersion = "2.7";
version = "${majorVersion}.2"; version = "${majorVersion}.3";
src = fetchurl { src = fetchurl {
url = "http://www.python.org/ftp/python/${version}/Python-${version}.tar.bz2"; url = "http://www.python.org/ftp/python/${version}/Python-${version}.tar.bz2";
sha256 = "1axx9h1r157fanldmnj1q2gdw2sm0sg8h3mx1l2adddmgq3fnmsh"; sha256 = "0g3672il41rcfjk7sphfqdsa6qf53y8g3ai8yk1sslxi3khmfr3j";
}; };
patches = patches =

View File

@ -51,5 +51,4 @@ postInstall() {
rm -f $out/lib/libgcc_s.so.1 rm -f $out/lib/libgcc_s.so.1
} }
genericBuild genericBuild

View File

@ -76,6 +76,9 @@ stdenv.mkDerivation ({
/* Allow nixos and nix handle the locale-archive. */ /* Allow nixos and nix handle the locale-archive. */
./nix-locale-archive.patch ./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. */ /* Without this patch many KDE binaries crash. */
./glibc-elf-localscope.patch ./glibc-elf-localscope.patch
] ++ stdenv.lib.optional installLocales ./catalan-firstdays.patch; ] ++ stdenv.lib.optional installLocales ./catalan-firstdays.patch;

View File

@ -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

View File

@ -51,5 +51,4 @@ postInstall() {
rm -f $out/lib/libgcc_s.so.1 rm -f $out/lib/libgcc_s.so.1
} }
genericBuild genericBuild

View File

@ -75,6 +75,9 @@ stdenv.mkDerivation ({
/* Allow nixos and nix handle the locale-archive. */ /* Allow nixos and nix handle the locale-archive. */
./nix-locale-archive.patch ./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. */ /* Without this patch many KDE binaries crash. */
./glibc-elf-localscope.patch ./glibc-elf-localscope.patch
]; ];

View File

@ -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

View File

@ -1,13 +1,15 @@
{ stdenv, fetchurl, m4, cxx ? true }: { stdenv, fetchurl, m4, cxx ? true }:
stdenv.mkDerivation (rec { stdenv.mkDerivation rec {
name = "gmp-5.0.3"; name = "gmp-5.0.5";
src = fetchurl { src = fetchurl {
url = "mirror://gnu/gmp/${name}.tar.bz2"; url = "mirror://gnu/gmp/${name}.tar.bz2";
sha256 = "dcafe9989c7f332b373e1f766af8e9cd790fc802fdec422a1910a6ef783480e3"; sha256 = "1jfymbr90mpn0zw5sg001llqnvf2462y77vgjknrmfs1rjn8ln0z";
}; };
patches = [ ./ignore-bad-cpuid.patch ];
buildNativeInputs = [ m4 ]; buildNativeInputs = [ m4 ];
configureFlags = configureFlags =
@ -51,13 +53,3 @@ stdenv.mkDerivation (rec {
platforms = stdenv.lib.platforms.all; platforms = stdenv.lib.platforms.all;
}; };
} }
//
(if stdenv.isFreeBSD
then {
# The FreeBSD boxes at hydra.nixos.org are VMs run in QEMU. This patch
# allows GMP to work correctly in that environment.
patches = [ ./ignore-bad-cpuid.patch ];
}
else { }))

View File

@ -3,11 +3,11 @@
assert zlib != null; assert zlib != null;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libpng-1.5.9"; name = "libpng-1.5.10";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/libpng/${name}.tar.xz"; url = "mirror://sourceforge/libpng/${name}.tar.xz";
sha256 = "0rd0kn7bpdhbv4gw6475plc51a4p5kzk26kag0d08wfvb7ip8wxq"; sha256 = "0pb096zn6iyza28js4j7krvcw23b979igfi315aqmvx622bw6jfx";
}; };
propagatedBuildInputs = [ zlib ]; propagatedBuildInputs = [ zlib ];

View File

@ -1,7 +1,7 @@
{ stdenv, fetchurl, perl }: { stdenv, fetchurl, perl }:
let let
name = "openssl-1.0.0g"; name = "openssl-1.0.0i";
opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ] opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ]
(throw "openssl needs its platform name cross building" null) (throw "openssl needs its platform name cross building" null)
@ -23,8 +23,7 @@ let
./gnu.patch # submitted upstream ./gnu.patch # submitted upstream
] ]
++ stdenv.lib.optional stdenv.isDarwin ./darwin-arch.patch ++ stdenv.lib.optional stdenv.isDarwin ./darwin-arch.patch;
++ stdenv.lib.optional (stdenv.system == "x86_64-freebsd") ./freebsd-x86_64-asm.patch;
in in
@ -36,7 +35,7 @@ stdenv.mkDerivation {
"http://www.openssl.org/source/${name}.tar.gz" "http://www.openssl.org/source/${name}.tar.gz"
"http://openssl.linux-mirror.org/source/${name}.tar.gz" "http://openssl.linux-mirror.org/source/${name}.tar.gz"
]; ];
sha1 = "2b517baada2338663c27314cb922f9755e73e07f"; sha1 = "b7aa11cbd7d264c2b1f44e3d55b334fb33f7b674";
}; };
patches = patchesCross false; patches = patchesCross false;

View File

@ -1,16 +0,0 @@
Patch for <http://rt.openssl.org/Ticket/Display.html?id=2435&user=guest&pass=guest>.
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$/);

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl, static ? false }: { stdenv, fetchurl, static ? false }:
let version = "1.2.6"; in let version = "1.2.7"; in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "zlib-${version}"; name = "zlib-${version}";
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
[ "http://www.zlib.net/${name}.tar.gz" # old versions vanish from here [ "http://www.zlib.net/${name}.tar.gz" # old versions vanish from here
"mirror://sourceforge/libpng/zlib/${version}/${name}.tar.gz" "mirror://sourceforge/libpng/zlib/${version}/${name}.tar.gz"
]; ];
sha256 = "06x6m33ls1606ni7275q5z392csvh18dgs55kshfnvrfal45w8r1"; sha256 = "1i96gsdvxqb6skp9a58bacf1wxamwi9m9pg4yn7cpf7g7239r77s";
}; };
configureFlags = if static then "" else "--shared"; configureFlags = if static then "" else "--shared";

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
++ stdenv.lib.optional doCheck perl; ++ stdenv.lib.optional doCheck perl;
propagatedBuildInputs = [ m4 ]; propagatedBuildInputs = [ m4 ];
M4 = "m4"; M4 = "${m4}/bin/m4";
doCheck = true; doCheck = true;

View File

@ -21,4 +21,8 @@ patch: [
(patch "018" "0ka9pfnjmdak8lvmbryv2r1kkrlffnxbqjxq656la39pf9qlbag2") (patch "018" "0ka9pfnjmdak8lvmbryv2r1kkrlffnxbqjxq656la39pf9qlbag2")
(patch "019" "0mpb0whacppwcdx7pcnf0ah5vjvkw14ang6r2rh9fmkn401cvdx8") (patch "019" "0mpb0whacppwcdx7pcnf0ah5vjvkw14ang6r2rh9fmkn401cvdx8")
(patch "020" "0vrwv9wpbr692kf427npmsxzvn007d9alk6jf99v7307s3q76is9") (patch "020" "0vrwv9wpbr692kf427npmsxzvn007d9alk6jf99v7307s3q76is9")
(patch "021" "1p5s6apnnbmx4yf1kzndw7fiwvdxamkcgqiv937mwmr6w9xsk1x8")
(patch "022" "0sswp2c63pclvdwi2hbkwbqf9ysmiw6mmi0qinl2pkgqyyfzdkcx")
(patch "023" "1gzhcmwj0741libjqwln4r4h9k7lskprc4q87hvqgj56y6a17hax")
(patch "024" "1rlrdfk67g8as6pr076ldhjhnkd2c86mb4ci18fjivivsfyjdj4r")
] ]

View File

@ -432,15 +432,15 @@ unpackFile() {
case "$curSrc" in case "$curSrc" in
*.tar.xz | *.tar.lzma) *.tar.xz | *.tar.lzma)
# Don't rely on tar knowing about .xz. # Don't rely on tar knowing about .xz.
xz -d < $curSrc | tar xvf - xz -d < $curSrc | tar xf -
;; ;;
*.tar | *.tar.* | *.tgz | *.tbz2) *.tar | *.tar.* | *.tgz | *.tbz2)
# GNU tar can automatically select the decompression method # GNU tar can automatically select the decompression method
# (info "(tar) gzip"). # (info "(tar) gzip").
tar xvf $curSrc tar xf $curSrc
;; ;;
*.zip) *.zip)
unzip $curSrc unzip -qq $curSrc
;; ;;
*) *)
if [ -d "$curSrc" ]; then if [ -d "$curSrc" ]; then
@ -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() { distPhase() {
runHook preDist runHook preDist
@ -795,6 +808,7 @@ showPhaseHeader() {
checkPhase) header "running tests";; checkPhase) header "running tests";;
installPhase) header "installing";; installPhase) header "installing";;
fixupPhase) header "post-installation fixup";; fixupPhase) header "post-installation fixup";;
installCheckPhase) header "running install tests";;
*) header "$phase";; *) header "$phase";;
esac esac
} }
@ -811,7 +825,7 @@ genericBuild() {
if [ -z "$phases" ]; then if [ -z "$phases" ]; then
phases="$prePhases unpackPhase patchPhase $preConfigurePhases \ phases="$prePhases unpackPhase patchPhase $preConfigurePhases \
configurePhase $preBuildPhases buildPhase checkPhase \ configurePhase $preBuildPhases buildPhase checkPhase \
$preInstallPhases installPhase fixupPhase \ $preInstallPhases installPhase fixupPhase installCheckPhase \
$preDistPhases distPhase $postPhases"; $preDistPhases distPhase $postPhases";
fi fi
@ -820,6 +834,7 @@ genericBuild() {
if [ "$curPhase" = checkPhase -a -z "$doCheck" ]; then continue; fi if [ "$curPhase" = checkPhase -a -z "$doCheck" ]; then continue; fi
if [ "$curPhase" = installPhase -a -n "$dontInstall" ]; then continue; fi if [ "$curPhase" = installPhase -a -n "$dontInstall" ]; then continue; fi
if [ "$curPhase" = fixupPhase -a -n "$dontFixup" ]; 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 [ "$curPhase" = distPhase -a -z "$doDist" ]; then continue; fi
if [ -n "$tracePhases" ]; then if [ -n "$tracePhases" ]; then

View File

@ -34,6 +34,8 @@ stdenv.mkDerivation rec {
CFLAGS=-O3 CXXFLAGS=-O3 CFLAGS=-O3 CXXFLAGS=-O3
''; '';
doInstallCheck = true;
crossAttrs = { crossAttrs = {
postUnpack = postUnpack =
'' export CPATH="${bzip2.hostDrv}/include" '' export CPATH="${bzip2.hostDrv}/include"
@ -51,14 +53,11 @@ stdenv.mkDerivation rec {
'' + stdenv.lib.optionalString ( '' + stdenv.lib.optionalString (
stdenv.cross ? nix && stdenv.cross.nix ? system stdenv.cross ? nix && stdenv.cross.nix ? system
) ''--with-system=${stdenv.cross.nix.system}''; ) ''--with-system=${stdenv.cross.nix.system}'';
doCheck = false; doInstallCheck = false;
postInstall = ":";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;
postInstall = "make installcheck";
meta = { meta = {
description = "The Nix Deployment System"; description = "The Nix Deployment System";
homepage = http://nixos.org/; homepage = http://nixos.org/;

View File

@ -3705,7 +3705,7 @@ let
# GMP 4.3.2 is broken on Darwin, so use 4.3.1. # GMP 4.3.2 is broken on Darwin, so use 4.3.1.
callPackage ../development/libraries/gmp/4.3.1.nix { } callPackage ../development/libraries/gmp/4.3.1.nix { }
else else
callPackage ../development/libraries/gmp/5.0.3.nix { }; callPackage ../development/libraries/gmp/5.0.5.nix { };
gmpxx = appendToName "with-cxx" (gmp.override { cxx = true; }); gmpxx = appendToName "with-cxx" (gmp.override { cxx = true; });