From 1ea903a74a0bec86c02e2837d324e6d4fa23dcbd Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 29 Dec 2010 10:38:44 +0000 Subject: [PATCH 01/95] gui: wrap 'gui' module to ensure that it has a valid $TK_LIBRARY path svn path=/nixpkgs/branches/stdenv-updates/; revision=25318 --- .../version-management/git-and-tools/git/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix index 4824f39a527..5ed6275caf7 100644 --- a/pkgs/applications/version-management/git-and-tools/git/default.nix +++ b/pkgs/applications/version-management/git-and-tools/git/default.nix @@ -84,7 +84,7 @@ stdenv.mkDerivation rec { + (if guiSupport then '' # Wrap Tcl/Tk programs - for prog in bin/gitk libexec/git-core/git-gui + for prog in bin/gitk bin/git do wrapProgram "$out/$prog" \ --set TK_LIBRARY "${tk}/lib/${tk.libPrefix}" \ From cff72e7a835bcff90bccf92be164a1d4bc263a2f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 25 Feb 2011 15:28:11 +0000 Subject: [PATCH 02/95] stdenv: Emit `phase-started' and `phase-succeeded' events. These markers follow the format of those of `nix-store --print-build-trace', which allows extraction of, say, phase durations in a similar way. svn path=/nixpkgs/branches/stdenv-updates/; revision=26115 --- pkgs/stdenv/generic/setup.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index ba06666ca89..4c772dcb478 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -814,6 +814,9 @@ genericBuild() { if test "$curPhase" = fixupPhase -a -n "$dontFixup"; then continue; fi if test "$curPhase" = distPhase -a -z "$doDist"; then continue; fi + echo + echo "@ phase-started $out $curPhase" + showPhaseHeader "$curPhase" dumpVars @@ -825,6 +828,9 @@ genericBuild() { cd "${sourceRoot:-.}" fi + echo + echo "@ phase-succeeded $out $curPhase" + stopNest done From ce63b61a909583c99da309d9cc224f37816eec82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 25 Feb 2011 15:28:17 +0000 Subject: [PATCH 03/95] GNU libc 2.13. svn path=/nixpkgs/branches/stdenv-updates/; revision=26116 --- .../{glibc-2.12 => glibc-2.13}/builder.sh | 0 .../{glibc-2.12 => glibc-2.13}/common.nix | 6 +++--- .../{glibc-2.12 => glibc-2.13}/default.nix | 0 .../libraries/{glibc-2.12 => glibc-2.13}/info.nix | 0 .../{glibc-2.12 => glibc-2.13}/locales-builder.sh | 0 .../{glibc-2.12 => glibc-2.13}/locales.nix | 0 .../nix-locale-archive.patch | 0 .../nss-skip-unavail.patch | 0 .../{glibc-2.12 => glibc-2.13}/rpcgen-path.patch | 0 pkgs/top-level/all-packages.nix | 14 +++++++------- 10 files changed, 10 insertions(+), 10 deletions(-) rename pkgs/development/libraries/{glibc-2.12 => glibc-2.13}/builder.sh (100%) rename pkgs/development/libraries/{glibc-2.12 => glibc-2.13}/common.nix (97%) rename pkgs/development/libraries/{glibc-2.12 => glibc-2.13}/default.nix (100%) rename pkgs/development/libraries/{glibc-2.12 => glibc-2.13}/info.nix (100%) rename pkgs/development/libraries/{glibc-2.12 => glibc-2.13}/locales-builder.sh (100%) rename pkgs/development/libraries/{glibc-2.12 => glibc-2.13}/locales.nix (100%) rename pkgs/development/libraries/{glibc-2.12 => glibc-2.13}/nix-locale-archive.patch (100%) rename pkgs/development/libraries/{glibc-2.12 => glibc-2.13}/nss-skip-unavail.patch (100%) rename pkgs/development/libraries/{glibc-2.12 => glibc-2.13}/rpcgen-path.patch (100%) diff --git a/pkgs/development/libraries/glibc-2.12/builder.sh b/pkgs/development/libraries/glibc-2.13/builder.sh similarity index 100% rename from pkgs/development/libraries/glibc-2.12/builder.sh rename to pkgs/development/libraries/glibc-2.13/builder.sh diff --git a/pkgs/development/libraries/glibc-2.12/common.nix b/pkgs/development/libraries/glibc-2.13/common.nix similarity index 97% rename from pkgs/development/libraries/glibc-2.12/common.nix rename to pkgs/development/libraries/glibc-2.13/common.nix index 0ffc8d7a0e8..460deb1019b 100644 --- a/pkgs/development/libraries/glibc-2.12/common.nix +++ b/pkgs/development/libraries/glibc-2.13/common.nix @@ -11,7 +11,7 @@ cross : let # For GNU/Hurd, see below. - version = if hurdHeaders != null then "20100512" else "2.12.2"; + version = if hurdHeaders != null then "20100512" else "2.13"; needsPortsNative = stdenv.isMips || stdenv.isArm; needsPortsCross = cross.arch == "mips" || cross.arch == "arm"; @@ -20,7 +20,7 @@ let else needsPortsCross; srcPorts = fetchurl { - # These should work equally well for 2.12.2 + # These should work equally well for 2.13 url = "mirror://gnu/glibc/glibc-ports-2.12.1.tar.bz2"; sha256 = "041ix0nq7nc5r7jf80jsdlw4idah2mjp5nf7khybhc4cs1kc31ir"; }; @@ -147,7 +147,7 @@ stdenv.mkDerivation ({ } else fetchurl { url = "mirror://gnu/glibc/glibc-${version}.tar.bz2"; - sha256 = "05hjz816a2hmzc44gxxi9vrdx6l9f23az794zj45xsxr94yfpy12"; + sha256 = "1cnv319ysc8nkwpqw6f6ymb6b8hbl0nyvyx48sddkrj50lmcjwq1"; }; # `fetchurl' is a function and thus should not be passed to the diff --git a/pkgs/development/libraries/glibc-2.12/default.nix b/pkgs/development/libraries/glibc-2.13/default.nix similarity index 100% rename from pkgs/development/libraries/glibc-2.12/default.nix rename to pkgs/development/libraries/glibc-2.13/default.nix diff --git a/pkgs/development/libraries/glibc-2.12/info.nix b/pkgs/development/libraries/glibc-2.13/info.nix similarity index 100% rename from pkgs/development/libraries/glibc-2.12/info.nix rename to pkgs/development/libraries/glibc-2.13/info.nix diff --git a/pkgs/development/libraries/glibc-2.12/locales-builder.sh b/pkgs/development/libraries/glibc-2.13/locales-builder.sh similarity index 100% rename from pkgs/development/libraries/glibc-2.12/locales-builder.sh rename to pkgs/development/libraries/glibc-2.13/locales-builder.sh diff --git a/pkgs/development/libraries/glibc-2.12/locales.nix b/pkgs/development/libraries/glibc-2.13/locales.nix similarity index 100% rename from pkgs/development/libraries/glibc-2.12/locales.nix rename to pkgs/development/libraries/glibc-2.13/locales.nix diff --git a/pkgs/development/libraries/glibc-2.12/nix-locale-archive.patch b/pkgs/development/libraries/glibc-2.13/nix-locale-archive.patch similarity index 100% rename from pkgs/development/libraries/glibc-2.12/nix-locale-archive.patch rename to pkgs/development/libraries/glibc-2.13/nix-locale-archive.patch diff --git a/pkgs/development/libraries/glibc-2.12/nss-skip-unavail.patch b/pkgs/development/libraries/glibc-2.13/nss-skip-unavail.patch similarity index 100% rename from pkgs/development/libraries/glibc-2.12/nss-skip-unavail.patch rename to pkgs/development/libraries/glibc-2.13/nss-skip-unavail.patch diff --git a/pkgs/development/libraries/glibc-2.12/rpcgen-path.patch b/pkgs/development/libraries/glibc-2.13/rpcgen-path.patch similarity index 100% rename from pkgs/development/libraries/glibc-2.12/rpcgen-path.patch rename to pkgs/development/libraries/glibc-2.13/rpcgen-path.patch diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c8588aa435f..1823eab018e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2970,7 +2970,7 @@ let glfw = callPackage ../development/libraries/glfw { }; - glibc = glibc212; + glibc = glibc213; glibc25 = callPackage ../development/libraries/glibc-2.5 { kernelHeaders = linuxHeaders; @@ -2994,15 +2994,15 @@ let installLocales = getPkgConfig "glibc" "locales" false; }); - glibc212 = (callPackage ../development/libraries/glibc-2.12 { + glibc213 = (callPackage ../development/libraries/glibc-2.13 { kernelHeaders = linuxHeaders; installLocales = getPkgConfig "glibc" "locales" false; machHeaders = null; hurdHeaders = null; gccCross = null; - }) // (if crossSystem != null then { hostDrv = glibc212Cross; } else {}); + }) // (if crossSystem != null then { hostDrv = glibc213Cross; } else {}); - glibc212Cross = forceBuildDrv (makeOverridable (import ../development/libraries/glibc-2.12) + glibc213Cross = forceBuildDrv (makeOverridable (import ../development/libraries/glibc-2.13) (let crossGNU = (crossSystem != null && crossSystem.config == "i586-pc-gnu"); in ({ inherit stdenv fetchurl; @@ -3017,7 +3017,7 @@ let then { inherit machHeaders hurdHeaders mig fetchgit; } else { })))); - glibcCross = glibc212Cross; + glibcCross = glibc213Cross; # We can choose: libcCrossChooser = name : if (name == "glibc") then glibcCross @@ -3038,9 +3038,9 @@ let installLocales = getPkgConfig "glibc" "locales" false; }; - glibcLocales = callPackage ../development/libraries/glibc-2.12/locales.nix { }; + glibcLocales = callPackage ../development/libraries/glibc-2.13/locales.nix { }; - glibcInfo = callPackage ../development/libraries/glibc-2.12/info.nix { }; + glibcInfo = callPackage ../development/libraries/glibc-2.13/info.nix { }; glibc_multi = runCommand "${glibc.name}-multi" From 99a303b0dc70108ac22d38d3d9199fe5598f0277 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 25 Feb 2011 15:28:22 +0000 Subject: [PATCH 04/95] GNU Coreutils 8.10. svn path=/nixpkgs/branches/stdenv-updates/; revision=26117 --- pkgs/tools/misc/coreutils/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index 21ce9215017..65d5cb6c8f9 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -3,11 +3,11 @@ assert aclSupport -> acl != null; stdenv.mkDerivation rec { - name = "coreutils-8.7"; + name = "coreutils-8.10"; src = fetchurl { url = "mirror://gnu/coreutils/${name}.tar.gz"; - sha256 = "11ykd7glys6lcfb2mwgmkqmmffv1pan70j6sl9vcjpnlf9dvk7bw"; + sha256 = "11fr0hkdk9h7a5ggpp3hj45ryvq3gc8ri2kksbgn7v8rjmp1x1jb"; }; buildNativeInputs = [ perl ]; From c1cfa5855610ffb36b146fb41df59574964f80bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 25 Feb 2011 15:28:26 +0000 Subject: [PATCH 05/95] GNU Readline 6.2. svn path=/nixpkgs/branches/stdenv-updates/; revision=26118 --- pkgs/development/libraries/readline/readline6.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/readline/readline6.nix b/pkgs/development/libraries/readline/readline6.nix index 18118abedd9..b927e804200 100644 --- a/pkgs/development/libraries/readline/readline6.nix +++ b/pkgs/development/libraries/readline/readline6.nix @@ -1,11 +1,11 @@ { fetchurl, stdenv, ncurses }: stdenv.mkDerivation rec { - name = "readline-6.1"; + name = "readline-6.2"; src = fetchurl { url = "mirror://gnu/readline/${name}.tar.gz"; - sha256 = "0sd97zqdh4fc0zzgzpskkczwa2fmb0s89qdyndb6vkbcq04gdjph"; + sha256 = "10ckm2bd2rkxhvdmj7nmbsylmihw0abwcsnxf8y27305183rd9kr"; }; propagatedBuildInputs = [ncurses]; From 0f1ba30626862bb4bf4b5e0fce50e6fda996e4a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 25 Feb 2011 15:28:29 +0000 Subject: [PATCH 06/95] GNU Bash 4.2. svn path=/nixpkgs/branches/stdenv-updates/; revision=26119 --- pkgs/shells/bash/bash-patches.nix | 2 -- pkgs/shells/bash/default.nix | 7 ++++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/shells/bash/bash-patches.nix b/pkgs/shells/bash/bash-patches.nix index d22435744cc..b8019fb3350 100644 --- a/pkgs/shells/bash/bash-patches.nix +++ b/pkgs/shells/bash/bash-patches.nix @@ -1,6 +1,4 @@ # Automatically generated by `update-patch-set.sh'; do not edit. patch: [ -(patch "001" "0y02cbfnc5s3dnwr4fw2nz43f3b826f5084mk7qd0lzq12hpzr56") -(patch "002" "1y3qzw6lx16vnb8hrw3zx01z25k773cbmgysvs3vvcw6w6fj4bij") ] diff --git a/pkgs/shells/bash/default.nix b/pkgs/shells/bash/default.nix index f29d4354a06..5de0a2fae7d 100644 --- a/pkgs/shells/bash/default.nix +++ b/pkgs/shells/bash/default.nix @@ -3,7 +3,7 @@ assert interactive -> readline != null; let - realName = "bash-4.1"; + realName = "bash-4.2"; baseConfigureFlags = if interactive then "--with-installed-readline" else "--disable-readline"; in @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnu/bash/${realName}.tar.gz"; - sha256 = "1np1ggp1lv8idwfx3mcxl9rhadqdf4h3x4isa3dk8v9wm0j72qiz"; + sha256 = "1n5kbblp5ykbz5q8aq88lsif2z0gnvddg9babk33024wxiwi2ym2"; }; NIX_CFLAGS_COMPILE = '' @@ -30,7 +30,7 @@ stdenv.mkDerivation rec { let patch = nr: sha256: fetchurl { - url = "mirror://gnu/bash/bash-4.1-patches/bash41-${nr}"; + url = "mirror://gnu/bash/bash-4.2-patches/bash42-${nr}"; inherit sha256; }; in @@ -80,6 +80,7 @@ stdenv.mkDerivation rec { license = "GPLv3+"; maintainers = [ stdenv.lib.maintainers.ludo ]; + platforms = stdenv.lib.platforms.all; }; passthru = { From 65c78a322252fc4ddb51348f2d2fb9d1a292ba2f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Wed, 9 Mar 2011 20:10:47 +0000 Subject: [PATCH 07/95] Adding a manpage gzipping stage in the fixupPhase. This should go unnoticed, but for the less disk space used. svn path=/nixpkgs/branches/stdenv-updates/; revision=26241 --- pkgs/stdenv/generic/setup.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 4c772dcb478..575e6046473 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -719,6 +719,12 @@ fixupPhase() { done; fi + if test -z "$dontBzipMan"; then + for f in $out/share/man/*/*; do + gzip -c $f > $f.gz && rm $f + done + fi + # TODO: strip _only_ ELF executables, and return || fail here... if test -z "$dontStrip"; then stripDebugList=${stripDebugList:-lib lib64 libexec bin sbin} From c06046e5ef1b2f0a5b0fe243b72a257eaa9033ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Wed, 9 Mar 2011 22:17:18 +0000 Subject: [PATCH 08/95] Improving a bit the manpage gzip code. I decided to gzip hard links and soft links, as nix-store --optimise can care better later. svn path=/nixpkgs/branches/stdenv-updates/; revision=26242 --- pkgs/stdenv/generic/setup.sh | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 575e6046473..321e2673cad 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -719,10 +719,18 @@ fixupPhase() { done; fi - if test -z "$dontBzipMan"; then - for f in $out/share/man/*/*; do - gzip -c $f > $f.gz && rm $f + if test -z "$dontGzipMan"; then + GLOBIGNORE=.:..:*.gz:*.bz2 + for f in $out/share/man/*/* $out/share/man/*/*/*; do + if test -f $f; then + if gzip -c $f > $f.gz; then + rm $f + else + rm $f.gz + fi + fi done + unset GLOBIGNORE fi # TODO: strip _only_ ELF executables, and return || fail here... From f227549863feca39e320b7679ac73cfba927d62d Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Tue, 15 Mar 2011 09:24:43 +0000 Subject: [PATCH 09/95] Remove tabs svn path=/nixpkgs/branches/stdenv-updates/; revision=26310 --- pkgs/stdenv/generic/default.nix | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix index c4d6a3666d0..c01f0da93ee 100644 --- a/pkgs/stdenv/generic/default.nix +++ b/pkgs/stdenv/generic/default.nix @@ -91,8 +91,8 @@ let # Utility flags to test the type of platform. isDarwin = result.system == "i686-darwin" - || result.system == "powerpc-darwin" - || result.system == "x86_64-darwin"; + || result.system == "powerpc-darwin" + || result.system == "x86_64-darwin"; isLinux = result.system == "i686-linux" || result.system == "x86_64-linux" || result.system == "powerpc-linux" @@ -100,14 +100,14 @@ let || result.system == "mips64-linux"; isSunOS = result.system == "i386-sunos"; isCygwin = result.system == "i686-cygwin"; - isFreeBSD = result.system == "i686-freebsd" - || result.system == "x86_64-freebsd"; - isOpenBSD = result.system == "i686-openbsd" - || result.system == "x86_64-openbsd"; - isBSD = result.system == "i686-freebsd" - || result.system == "x86_64-freebsd" - || result.system == "i686-openbsd" - || result.system == "x86_64-openbsd"; + isFreeBSD = result.system == "i686-freebsd" + || result.system == "x86_64-freebsd"; + isOpenBSD = result.system == "i686-openbsd" + || result.system == "x86_64-openbsd"; + isBSD = result.system == "i686-freebsd" + || result.system == "x86_64-freebsd" + || result.system == "i686-openbsd" + || result.system == "x86_64-openbsd"; isi686 = result.system == "i686-linux" || result.system == "i686-darwin" || result.system == "i686-freebsd" From 3e71355377c0719bac49c3e3cf35dc93e6bc0dd3 Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Tue, 15 Mar 2011 09:24:47 +0000 Subject: [PATCH 10/95] Add two 'remove' functions svn path=/nixpkgs/branches/stdenv-updates/; revision=26311 --- pkgs/lib/lists.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/lib/lists.nix b/pkgs/lib/lists.nix index 36fa236304d..d1cdf5b68ab 100644 --- a/pkgs/lib/lists.nix +++ b/pkgs/lib/lists.nix @@ -50,6 +50,11 @@ rec { filter = pred: list: fold (x: y: if pred x then [x] ++ y else y) [] list; + # Remove elements 'e' from a list. Useful for buildInputs + remove = e: filter (x: x != e); + + # Given two lists, removes all elements of the first list from the second list + removeList = l: filter (x: elem x l); # Return true if `list' has an element `x': elem = x: list: fold (a: bs: x == a || bs) false list; From d887437d8e7efb173a4527635a5add612401283c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 23 Mar 2011 14:51:17 +0000 Subject: [PATCH 11/95] GCC 4.5: Use `install-strip' instead of `-Wl,--strip-debug'; add `gcc45_debug'. svn path=/nixpkgs/branches/stdenv-updates/; revision=26467 --- pkgs/development/compilers/gcc-4.5/builder.sh | 4 ++-- pkgs/development/compilers/gcc-4.5/default.nix | 11 ++++++++++- pkgs/top-level/all-packages.nix | 14 ++++++++++++++ 3 files changed, 26 insertions(+), 3 deletions(-) diff --git a/pkgs/development/compilers/gcc-4.5/builder.sh b/pkgs/development/compilers/gcc-4.5/builder.sh index aedd5b46b12..e684fbc951e 100644 --- a/pkgs/development/compilers/gcc-4.5/builder.sh +++ b/pkgs/development/compilers/gcc-4.5/builder.sh @@ -47,7 +47,7 @@ if test "$noSysDirs" = "1"; then fi extraFlags="-g0 -O2 -I$NIX_FIXINC_DUMMY $extraFlags" - extraLDFlags="--strip-debug -L$glibc_libdir -rpath $glibc_libdir $extraLDFlags" + extraLDFlags="-L$glibc_libdir -rpath $glibc_libdir $extraLDFlags" EXTRA_FLAGS="$extraFlags" for i in $extraLDFlags; do @@ -90,7 +90,7 @@ if test "$noSysDirs" = "1"; then glibc_libdir="$(cat $NIX_GCC_CROSS/nix-support/orig-libc)/lib" extraFlags="-g0 -O2 -I$NIX_FIXINC_DUMMY_CROSS $extraFlags" - extraLDFlags="--strip-debug -L$glibc_libdir -rpath $glibc_libdir $extraLDFlags" + extraLDFlags="-L$glibc_libdir -rpath $glibc_libdir $extraLDFlags" EXTRA_TARGET_CFLAGS="$extraFlags" for i in $extraLDFlags; do diff --git a/pkgs/development/compilers/gcc-4.5/default.nix b/pkgs/development/compilers/gcc-4.5/default.nix index 19efa57af8e..6145050e9f0 100644 --- a/pkgs/development/compilers/gcc-4.5/default.nix +++ b/pkgs/development/compilers/gcc-4.5/default.nix @@ -26,6 +26,7 @@ , crossStageStatic ? true , gnat ? null , libpthread ? null, libpthreadCross ? null # required for GNU/Hurd +, stripped ? true }: assert langTreelang -> bison != null && flex != null; @@ -259,6 +260,11 @@ stdenv.mkDerivation ({ targetConfig = if (cross != null) then cross.config else null; + installTargets = + if stripped + then "install-strip" + else "install"; + crossAttrs = { AR = "${stdenv.cross.config}-ar"; LD = "${stdenv.cross.config}-ld"; @@ -364,7 +370,8 @@ stdenv.mkDerivation ({ meta = { homepage = http://gcc.gnu.org/; license = "GPLv3+"; # runtime support libraries are typically LGPLv3+ - description = "GNU Compiler Collection, version ${version}"; + description = "GNU Compiler Collection, version ${version}" + + (if stripped then "" else " (with debugging info)"); longDescription = '' The GNU Compiler Collection includes compiler front ends for C, C++, @@ -392,6 +399,8 @@ stdenv.mkDerivation ({ installTargets = "install-gcc install-target-libgcc"; } +// optionalAttrs (!stripped) { dontStrip = true; NIX_STRIP_DEBUG = false; } + // optionalAttrs langVhdl rec { name = "ghdl-0.29"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1823eab018e..dd88d0e3813 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1670,6 +1670,20 @@ let profiledCompiler = if stdenv.system == "armv5tel-linux" then false else true; })); + # A non-stripped version of GCC. + gcc45_debug = lowPrio (wrapGCC (callPackage ../development/compilers/gcc-4.5 { + stripped = false; + + inherit noSysDirs; + cross = null; + libcCross = null; + binutilsCross = null; + + # bootstrapping a profiled compiler does not work in the sheevaplug: + # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43944 + profiledCompiler = if stdenv.system == "armv5tel-linux" then false else true; + })); + gccApple = wrapGCC ( (if stdenv.system == "i686-darwin" then import ../development/compilers/gcc-apple else import ../development/compilers/gcc-apple64) { inherit fetchurl stdenv noSysDirs; From 2e8c8087347da018b0b490d102670fef2d99849c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 23 Mar 2011 14:51:21 +0000 Subject: [PATCH 12/95] Make `update-gcc.sh' more robust. svn path=/nixpkgs/branches/stdenv-updates/; revision=26468 --- pkgs/development/compilers/gcc-4.4/update-gcc.sh | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pkgs/development/compilers/gcc-4.4/update-gcc.sh b/pkgs/development/compilers/gcc-4.4/update-gcc.sh index c93035296fc..1fb5a0c6e5b 100755 --- a/pkgs/development/compilers/gcc-4.4/update-gcc.sh +++ b/pkgs/development/compilers/gcc-4.4/update-gcc.sh @@ -36,11 +36,13 @@ do file="gcc-${component}-${version}.tar.bz2" url="${dir}/${file}" - path_and_hash="$(nix-prefetch-url "$url" 2>&1 | grep -E '^(hash|path) is')" - path="$(echo $path_and_hash | sed -e's/^.*path is \([^ ]\+\).*$/\1/g')" - hash="$(echo $path_and_hash | sed -e's/^.*hash is \([^ ]\+\).*$/\1/g')" + rm -f "${file}" - rm -f "${url}.sig" + wget "$url" + hash="$(nix-hash --flat --type sha256 "$file")" + path="$(nix-store --add-fixed sha256 "$file")" + + rm -f "${file}" "${file}.sig" wget "${url}.sig" gpg --verify "${file}.sig" "${path}" rm "${file}.sig" From d701519f5aafbd1a2eb60b72d946d2edf78bad8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 23 Mar 2011 14:51:25 +0000 Subject: [PATCH 13/95] GCC 4.5.2. svn path=/nixpkgs/branches/stdenv-updates/; revision=26469 --- pkgs/development/compilers/gcc-4.5/default.nix | 2 +- pkgs/development/compilers/gcc-4.5/sources.nix | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/development/compilers/gcc-4.5/default.nix b/pkgs/development/compilers/gcc-4.5/default.nix index 6145050e9f0..abe6186ef96 100644 --- a/pkgs/development/compilers/gcc-4.5/default.nix +++ b/pkgs/development/compilers/gcc-4.5/default.nix @@ -42,7 +42,7 @@ assert libelf != null -> zlib != null; with stdenv.lib; with builtins; -let version = "4.5.1"; +let version = "4.5.2"; javaEcj = fetchurl { # The `$(top_srcdir)/ecj.jar' file is automatically picked up at # `configure' time. diff --git a/pkgs/development/compilers/gcc-4.5/sources.nix b/pkgs/development/compilers/gcc-4.5/sources.nix index 6059e03880b..6e702f79ed0 100644 --- a/pkgs/development/compilers/gcc-4.5/sources.nix +++ b/pkgs/development/compilers/gcc-4.5/sources.nix @@ -1,26 +1,26 @@ /* Automatically generated by `update-gcc.sh', do not edit. - For GCC 4.5.1. */ + For GCC 4.5.2. */ { fetchurl, optional, version, langC, langCC, langFortran, langJava, langAda }: -assert version == "4.5.1"; +assert version == "4.5.2"; optional /* langC */ true (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-core-${version}.tar.bz2"; - sha256 = "0sjjw3qfcpdk0fs5d2rhl0xqcaclg86ifbq45dbk9ca072l3fyxm"; + sha256 = "d1099165702ccdfd65f2411ed8d1015452190fe6bc7b87baf124794e5c8e7464"; }) ++ optional langCC (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-g++-${version}.tar.bz2"; - sha256 = "0j6ffb96b3r75hrjshg52llv21ax7r8jdx44hhj0maiisnl9wd55"; + sha256 = "fdd45dc9158d1d5a1c2ef0054b353d5f403e29ec360c1f8e058dc7e4531fe83b"; }) ++ optional langFortran (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-fortran-${version}.tar.bz2"; - sha256 = "0xgwjc3h5fc5c100bnw24c35255il33lj5qbgpxf0zl8di2q13aw"; + sha256 = "19c3c8a4b23c880a369d3229ef65406fde6af47f5127d494a87f19e1de3d9a13"; }) ++ optional langJava (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-java-${version}.tar.bz2"; - sha256 = "0mh37q4ibg05h1hdh39pkj1hycvdg6i79m4698knw7pppm14ax8q"; + sha256 = "c120e2dc39dd707a3d5461744b879e41f5e642661d7b8a023fc620b24bb7a2ab"; }) ++ optional langAda (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-ada-${version}.tar.bz2"; - sha256 = "11chdbl7h046lnl83k79vj7dvgxz6kq7cnmwx94z644vaiflg153"; + sha256 = "7ed5bb26b72dfbfaf533d09e3d34df96305c09f57f5da67939087fb2726cc771"; }) ++ [] From fff1ca83d51d8f58be4154f787b3b56893c8d732 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 24 Mar 2011 22:36:09 +0000 Subject: [PATCH 14/95] GCC 4.5.2: Attempt to fix compilation of libstdc++. svn path=/nixpkgs/branches/stdenv-updates/; revision=26499 --- .../development/compilers/gcc-4.5/default.nix | 2 +- .../compilers/gcc-4.5/pr45894.patch | 23 +++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/compilers/gcc-4.5/pr45894.patch diff --git a/pkgs/development/compilers/gcc-4.5/default.nix b/pkgs/development/compilers/gcc-4.5/default.nix index abe6186ef96..2e840e90fbe 100644 --- a/pkgs/development/compilers/gcc-4.5/default.nix +++ b/pkgs/development/compilers/gcc-4.5/default.nix @@ -137,7 +137,7 @@ stdenv.mkDerivation ({ }; patches = - [ ] + [ ./pr45894.patch ] ++ optional (cross != null) ./libstdc++-target.patch ++ optional noSysDirs ./no-sys-dirs.patch # The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its diff --git a/pkgs/development/compilers/gcc-4.5/pr45894.patch b/pkgs/development/compilers/gcc-4.5/pr45894.patch new file mode 100644 index 00000000000..b6263faffc1 --- /dev/null +++ b/pkgs/development/compilers/gcc-4.5/pr45894.patch @@ -0,0 +1,23 @@ +See for details. + +Without this, compilation of GCC itself fails: + + ./../../../gcc-4.5.2/libstdc++-v3/src/pool_allocator.cc -fPIC -DPIC -o .libs/pool_allocator.o + In file included from ../../../../gcc-4.5.2/libstdc++-v3/src/pool_allocator.cc:31:0: + /tmp/nix-build-7d6ii7c1hqf0vzhxklbmnpbmzhq7glgr-gcc-4.5.2.drv-0/build/i686-pc-linux-gnu/libstdc++-v3/include/ext/pool_allocator.h: In constructor '__gnu_cxx::__pool_alloc<_Tp>::__pool_alloc() [with _Tp = char]': + ../../../../gcc-4.5.2/libstdc++-v3/src/pool_allocator.cc:171:18: instantiated from here + /tmp/nix-build-7d6ii7c1hqf0vzhxklbmnpbmzhq7glgr-gcc-4.5.2.drv-0/build/i686-pc-linux-gnu/libstdc++-v3/include/ext/pool_allocator.h:140:30: internal compiler error: Segmentation fault + Please submit a full bug report, + +--- gcc-4_5-branch/gcc/cp/tree.c 2010/11/11 20:40:32 166620 ++++ gcc-4_5-branch/gcc/cp/tree.c 2010/11/11 20:41:34 166621 +@@ -72,7 +72,8 @@ + == REFERENCE_TYPE) + return lvalue_p_1 (TREE_OPERAND (ref, 0)); + +- if (TREE_CODE (TREE_TYPE (ref)) == REFERENCE_TYPE) ++ if (TREE_TYPE (ref) ++ && TREE_CODE (TREE_TYPE (ref)) == REFERENCE_TYPE) + { + /* unnamed rvalue references are rvalues */ + if (TYPE_REF_IS_RVALUE (TREE_TYPE (ref)) From 570fed8e1fd807e5d38765384f3a40c6331d8137 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 25 Mar 2011 09:15:27 +0000 Subject: [PATCH 15/95] Revert "GCC 4.5.2: Attempt to fix compilation of libstdc++." This reverts r26499. svn path=/nixpkgs/branches/stdenv-updates/; revision=26504 --- .../development/compilers/gcc-4.5/default.nix | 2 +- .../compilers/gcc-4.5/pr45894.patch | 23 ------------------- 2 files changed, 1 insertion(+), 24 deletions(-) delete mode 100644 pkgs/development/compilers/gcc-4.5/pr45894.patch diff --git a/pkgs/development/compilers/gcc-4.5/default.nix b/pkgs/development/compilers/gcc-4.5/default.nix index 2e840e90fbe..abe6186ef96 100644 --- a/pkgs/development/compilers/gcc-4.5/default.nix +++ b/pkgs/development/compilers/gcc-4.5/default.nix @@ -137,7 +137,7 @@ stdenv.mkDerivation ({ }; patches = - [ ./pr45894.patch ] + [ ] ++ optional (cross != null) ./libstdc++-target.patch ++ optional noSysDirs ./no-sys-dirs.patch # The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its diff --git a/pkgs/development/compilers/gcc-4.5/pr45894.patch b/pkgs/development/compilers/gcc-4.5/pr45894.patch deleted file mode 100644 index b6263faffc1..00000000000 --- a/pkgs/development/compilers/gcc-4.5/pr45894.patch +++ /dev/null @@ -1,23 +0,0 @@ -See for details. - -Without this, compilation of GCC itself fails: - - ./../../../gcc-4.5.2/libstdc++-v3/src/pool_allocator.cc -fPIC -DPIC -o .libs/pool_allocator.o - In file included from ../../../../gcc-4.5.2/libstdc++-v3/src/pool_allocator.cc:31:0: - /tmp/nix-build-7d6ii7c1hqf0vzhxklbmnpbmzhq7glgr-gcc-4.5.2.drv-0/build/i686-pc-linux-gnu/libstdc++-v3/include/ext/pool_allocator.h: In constructor '__gnu_cxx::__pool_alloc<_Tp>::__pool_alloc() [with _Tp = char]': - ../../../../gcc-4.5.2/libstdc++-v3/src/pool_allocator.cc:171:18: instantiated from here - /tmp/nix-build-7d6ii7c1hqf0vzhxklbmnpbmzhq7glgr-gcc-4.5.2.drv-0/build/i686-pc-linux-gnu/libstdc++-v3/include/ext/pool_allocator.h:140:30: internal compiler error: Segmentation fault - Please submit a full bug report, - ---- gcc-4_5-branch/gcc/cp/tree.c 2010/11/11 20:40:32 166620 -+++ gcc-4_5-branch/gcc/cp/tree.c 2010/11/11 20:41:34 166621 -@@ -72,7 +72,8 @@ - == REFERENCE_TYPE) - return lvalue_p_1 (TREE_OPERAND (ref, 0)); - -- if (TREE_CODE (TREE_TYPE (ref)) == REFERENCE_TYPE) -+ if (TREE_TYPE (ref) -+ && TREE_CODE (TREE_TYPE (ref)) == REFERENCE_TYPE) - { - /* unnamed rvalue references are rvalues */ - if (TYPE_REF_IS_RVALUE (TREE_TYPE (ref)) From 3e68d94b22f7240c2112e7574be8d40074f07ccd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 28 Mar 2011 16:11:12 +0000 Subject: [PATCH 16/95] Add `release-small.nix'. svn path=/nixpkgs/branches/stdenv-updates/; revision=26578 --- pkgs/top-level/release-small.nix | 224 +++++++++++++++++++++++++++++++ 1 file changed, 224 insertions(+) create mode 100644 pkgs/top-level/release-small.nix diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix new file mode 100644 index 00000000000..68a287bbf5e --- /dev/null +++ b/pkgs/top-level/release-small.nix @@ -0,0 +1,224 @@ +/* A small release file, with few packages to be built. The aim is to reduce + the load on Hydra when testing the `stdenv-updates' branch. + + + This file will be evaluated by hydra with a call like this: + hydra_eval_jobs --gc-roots-dir \ + /nix/var/nix/gcroots/per-user/hydra/hydra-roots --argstr \ + system i686-linux --argstr system x86_64-linux --arg \ + nixpkgs "{outPath = ./}" .... release.nix + + Hydra can be installed with "nix-env -i hydra". */ +with (import ./release-lib.nix); + +{ + + tarball = import ./make-tarball.nix; + +} // (mapTestOn (rec { + + aspell = all; + at = linux; + aterm242fixes = all; + aterm25 = all; + aterm28 = all; + autoconf = all; + automake110x = all; + automake111x = all; + automake19x = all; + avahi = allBut "i686-cygwin"; # Cygwin builds fail + bash = all; + bashInteractive = all; + bc = all; + binutils = linux; + bind = linux; + bison24 = all; + boostFull = all; + bsdiff = all; + bzip2 = all; + classpath = linux; + cmake = all; + coreutils = all; + cpio = all; + cron = linux; + dhcp = linux; + diffutils = all; + e2fsprogs = linux; + emacs23 = gtkSupported; + enscript = all; + file = all; + findutils = all; + flex = all; + flex2535 = all; + gcc = all; + gcc33 = linux; + gcc34 = linux; + gcc41 = linux; + gcc42 = linux; + gcc43_multi = ["x86_64-linux"]; + gcc44 = linux; + gcj44 = linux; + ghdl = linux; + glibc = linux; + glibcLocales = linux; + gnat44 = linux; + gnugrep = all; + gnum4 = all; + gnumake = all; + gnupatch = all; + gnupg = linux; + gnuplot = allBut "i686-cygwin"; + gnused = all; + gnutar = all; + gnutls = linux; + grub = linux; + grub2 = linux; + gsl = linux; + guile = linux; # tests fail on Cygwin + gw6c = linux; + gzip = all; + hal = linux; + hal_info = linux; + hddtemp = linux; + hdparm = linux; + hello = all; + host = linux; + iana_etc = linux; + icecat3Xul = linux; + icewm = linux; + idutils = all; + ifplugd = linux; + inetutils = linux; + iputils = linux; + jnettop = linux; + jwhois = linux; + kbd = linux; + keen4 = ["i686-linux"]; + kvm = linux; + qemu = linux; + qemu_kvm = linux; + less = all; + lftp = all; + libtool = all; + libtool_2 = all; + libxml2 = all; + libxslt = all; + lout = linux; + lsh = linux; + lsof = linux; + ltrace = linux; + lvm2 = linux; + lynx = linux; + lzma = linux; + man = linux; + manpages = linux; + mc = all; + mcabber = linux; + mcron = linux; + mdadm = linux; + mesa = mesaPlatforms; + midori = linux; + mingetty = linux; + mk = linux; + mktemp = all; + module_init_tools = linux; + mono = linux; + monotone = linux; + mpg321 = linux; + mutt = linux; + mysql = linux; + mysql51 = linux; + ncat = linux; + netcat = all; + nfsUtils = linux; + nix = all; + nixUnstable = all; + nixSqlite = all; + nss_ldap = linux; + nssmdns = linux; + ntfs3g = linux; + ntp = linux; + openssh = linux; + openssl = all; + pam_console = linux; + pam_login = linux; + pam_unix2 = linux; + pan = gtkSupported; + par2cmdline = all; + pciutils = linux; + pdf2xml = all; + perl = all; + pkgconfig = all; + pmccabe = linux; + policykit = linux; + portmap = linux; + procps = linux; + pwdutils = linux; + python = allBut "i686-cygwin"; + pythonFull = linux; + readline = all; + rlwrap = all; + rpm = linux; + rsync = linux; + screen = linux ++ darwin; + scrot = linux; + sdparm = linux; + sharutils = all; + sloccount = allBut "i686-cygwin"; + smartmontools = all; + splashutils = linux; + sqlite = allBut "i686-cygwin"; + squid = linux; + ssmtp = linux; + stdenv = prio 175 all; + strace = linux; + su = linux; + sudo = linux; + sysklogd = linux; + syslinux = ["i686-linux"]; + sysvinit = linux; + sysvtools = linux; + tcl = linux; + tcpdump = linux; + tetex = linux; + texLive = linux; + texLiveBeamer = linux; + texLiveExtra = linux; + texinfo = all; + time = linux; + tinycc = ["i686-linux"]; + udev = linux; + uml = ["i686-linux"]; + unrar = linux; + unzip = all; + upstart = linux; + usbutils = linux; + utillinux = linux; + utillinuxCurses = linux; + w3m = all; + webkit = linux; + wget = all; + which = all; + wicd = linux; + wireshark = linux; + wirelesstools = linux; + wpa_supplicant = linux; + xfsprogs = linux; + xkeyboard_config = linux; + zile = linux; + zip = all; + + dbus = { + libs = linux; + tools = linux; + }; + + emacs23Packages = { + bbdb = linux; + cedet = linux; + ecb = linux; + emacsw3m = linux; + emms = linux; + nxml = all; + }; +} )) From 312680ff5089785b86756a7709aac2e0b3c92e7e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 28 Mar 2011 16:11:16 +0000 Subject: [PATCH 17/95] GCC 4.5.2: Don't use the `install-strip' target, which wasn't available. svn path=/nixpkgs/branches/stdenv-updates/; revision=26579 --- pkgs/development/compilers/gcc-4.5/default.nix | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/pkgs/development/compilers/gcc-4.5/default.nix b/pkgs/development/compilers/gcc-4.5/default.nix index abe6186ef96..1acbb82702b 100644 --- a/pkgs/development/compilers/gcc-4.5/default.nix +++ b/pkgs/development/compilers/gcc-4.5/default.nix @@ -260,11 +260,6 @@ stdenv.mkDerivation ({ targetConfig = if (cross != null) then cross.config else null; - installTargets = - if stripped - then "install-strip" - else "install"; - crossAttrs = { AR = "${stdenv.cross.config}-ar"; LD = "${stdenv.cross.config}-ld"; @@ -399,6 +394,8 @@ stdenv.mkDerivation ({ installTargets = "install-gcc install-target-libgcc"; } +# GCC 4.5.2 doesn't support the `install-strip' target, so let `stdenv' do +# the stripping by default. // optionalAttrs (!stripped) { dontStrip = true; NIX_STRIP_DEBUG = false; } // optionalAttrs langVhdl rec { From 9a9a6cd27e0fe6ade0d7f88d809d48cec2712952 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 29 Mar 2011 08:22:10 +0000 Subject: [PATCH 18/95] GCC 4.5: Remove explicit "-g0 -O2". svn path=/nixpkgs/branches/stdenv-updates/; revision=26589 --- pkgs/development/compilers/gcc-4.5/builder.sh | 6 +++--- pkgs/development/compilers/gcc-4.5/default.nix | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/compilers/gcc-4.5/builder.sh b/pkgs/development/compilers/gcc-4.5/builder.sh index e684fbc951e..e1e56c8574a 100644 --- a/pkgs/development/compilers/gcc-4.5/builder.sh +++ b/pkgs/development/compilers/gcc-4.5/builder.sh @@ -46,7 +46,7 @@ if test "$noSysDirs" = "1"; then export NIX_FIXINC_DUMMY=/usr/include fi - extraFlags="-g0 -O2 -I$NIX_FIXINC_DUMMY $extraFlags" + extraFlags="-I$NIX_FIXINC_DUMMY $extraFlags" extraLDFlags="-L$glibc_libdir -rpath $glibc_libdir $extraLDFlags" EXTRA_FLAGS="$extraFlags" @@ -63,7 +63,7 @@ if test "$noSysDirs" = "1"; then unset LIBRARY_PATH unset CPATH if test -z "$crossStageStatic"; then - EXTRA_TARGET_CFLAGS="-g0 -O2 -B${libcCross}/lib -idirafter ${libcCross}/include" + EXTRA_TARGET_CFLAGS="-B${libcCross}/lib -idirafter ${libcCross}/include" EXTRA_TARGET_LDFLAGS="-Wl,-L${libcCross}/lib" fi else @@ -89,7 +89,7 @@ if test "$noSysDirs" = "1"; then # The path to the Glibc binaries such as `crti.o'. glibc_libdir="$(cat $NIX_GCC_CROSS/nix-support/orig-libc)/lib" - extraFlags="-g0 -O2 -I$NIX_FIXINC_DUMMY_CROSS $extraFlags" + extraFlags="-I$NIX_FIXINC_DUMMY_CROSS $extraFlags" extraLDFlags="-L$glibc_libdir -rpath $glibc_libdir $extraLDFlags" EXTRA_TARGET_CFLAGS="$extraFlags" diff --git a/pkgs/development/compilers/gcc-4.5/default.nix b/pkgs/development/compilers/gcc-4.5/default.nix index 1acbb82702b..9d4aeaf01e1 100644 --- a/pkgs/development/compilers/gcc-4.5/default.nix +++ b/pkgs/development/compilers/gcc-4.5/default.nix @@ -347,7 +347,7 @@ stdenv.mkDerivation ({ EXTRA_TARGET_CFLAGS = if cross != null && libcCross != null - then "-g0 -O2 -idirafter ${libcCross}/include" + then "-idirafter ${libcCross}/include" else null; EXTRA_TARGET_LDFLAGS = From 4a9c8df2de2035c82b7ccfcebd6a0c4cf768b086 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Wed, 6 Apr 2011 05:21:05 +0000 Subject: [PATCH 19/95] Bump cloog-ppl to 0.15.11 This is so ppl can be bumped to 0.11, so that when stdenv-updates is merged we can go back to only having one version of ppl Tested by nix-build -A gcc44: gcc-4.4 was the first to use graphite optimizations, and obviously stdenv had to be rebuilt to compile gcc-4.4 svn path=/nixpkgs/branches/stdenv-updates/; revision=26706 --- pkgs/development/libraries/cloog-ppl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/cloog-ppl/default.nix b/pkgs/development/libraries/cloog-ppl/default.nix index ca662d30eb0..d0e4083788b 100644 --- a/pkgs/development/libraries/cloog-ppl/default.nix +++ b/pkgs/development/libraries/cloog-ppl/default.nix @@ -12,11 +12,11 @@ let in stdenv.mkDerivation rec { - name = "cloog-ppl-0.15.9"; + name = "cloog-ppl-0.15.11"; src = fetchurl { url = "mirror://gcc/infrastructure/${name}.tar.gz"; - sha256 = "19a2n75k3d3n8llng25f2g88lpvd4zn0lm073rkndjw6l6yd8m4c"; + sha256 = "0psdm0bn5gx60glfh955x5b3b23zqrd92idmjr0b00dlnb839mkw"; }; propagatedBuildInputs = [ ppl ]; From 8aa7d7b1ac1cd47bd8d649488ccea6057e3f574c Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Wed, 6 Apr 2011 05:22:10 +0000 Subject: [PATCH 20/95] Bump ppl to 0.11 This is so we only have one version of ppl when stdenv-updates is merged Tested by nix-build -A gcc4.4, for the reasons detailed in previous commit svn path=/nixpkgs/branches/stdenv-updates/; revision=26707 --- pkgs/development/libraries/ppl/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/ppl/default.nix b/pkgs/development/libraries/ppl/default.nix index 677d578e242..d8ffde644de 100644 --- a/pkgs/development/libraries/ppl/default.nix +++ b/pkgs/development/libraries/ppl/default.nix @@ -1,15 +1,15 @@ { fetchurl, stdenv, gmpxx, perl, gnum4, static ? false }: let - version = "0.10.2"; - staticFlags = if static then " --enable-static --disable-shared" else ""; + version = "0.11"; + staticFlags = if static then " --enable-static --disable-shared --disable-watchdog" else ""; in stdenv.mkDerivation rec { name = "ppl-${version}"; src = fetchurl { url = "mirror://gcc/infrastructure/ppl-${version}.tar.gz"; - sha256 = "0lly44sac4jd72klnhhil3wha15vak76r6gy88sh0zjsaww9hf6h"; + sha256 = "0xqwyaj232gi0pgm6z2rihk6p8l1rngbbibnhmcrbq4jq550clrl"; }; buildNativeInputs = [ perl gnum4 ]; From d00b3037661eee1662100139dc301a0680fb198e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 3 May 2011 22:38:52 +0000 Subject: [PATCH 21/95] GMP: Use `--enable-fat' instead of tinkering with `config.guess'. svn path=/nixpkgs/branches/stdenv-updates/; revision=27126 --- pkgs/development/libraries/gmp/default.nix | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/gmp/default.nix b/pkgs/development/libraries/gmp/default.nix index 338debaa81e..1b079c05158 100644 --- a/pkgs/development/libraries/gmp/default.nix +++ b/pkgs/development/libraries/gmp/default.nix @@ -1,7 +1,8 @@ {stdenv, fetchurl, m4, cxx ? true, static ? false}: let - staticFlags = if static then " --enable-static --disable-shared" else ""; + staticFlags = stdenv.lib.optionals static + [ "--enable-static" "--disable-shared" ]; in stdenv.mkDerivation rec { @@ -14,12 +15,12 @@ stdenv.mkDerivation rec { buildNativeInputs = [m4]; - # Prevent the build system from using sub-architecture-specific - # instructions (e.g., SSE2 on i686). - preConfigure = "ln -sf configfsf.guess config.guess"; + configureFlags = + # Build a "fat binary", with routines for several sub-architectures (x86). + [ "--enable-fat" ] - configureFlags = if cxx then "--enable-cxx" else "--disable-cxx" + - staticFlags; + ++ (if cxx then [ "--enable-cxx" ] else [ "--disable-cxx" ]) + ++ staticFlags; dontDisableStatic = if static then true else false; From 1a43ce8e08e1e294dc1f39a7f5bef2fe9d088711 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Thu, 28 Jul 2011 20:28:37 +0000 Subject: [PATCH 22/95] Add a substituteAllInPlace() function to stdenv svn path=/nixpkgs/branches/stdenv-updates/; revision=27993 --- pkgs/stdenv/generic/setup.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 321e2673cad..66be3875413 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -386,6 +386,13 @@ substituteAll() { } +substituteAllInPlace() { + local fileName="$1" + shift + substituteAll "$fileName" "$fileName" "$@" +} + + ###################################################################### # What follows is the generic builder. From 1eb378d0c4ae62e806286f2ebdfce972a50a9b9d Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Thu, 28 Jul 2011 20:33:20 +0000 Subject: [PATCH 23/95] Document substituteAllInPlace svn path=/nixpkgs/branches/stdenv-updates/; revision=27994 --- doc/stdenv.xml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/doc/stdenv.xml b/doc/stdenv.xml index 7e04cf20fe7..9c9b61cd1dc 100644 --- a/doc/stdenv.xml +++ b/doc/stdenv.xml @@ -1062,7 +1062,16 @@ echo @foo@ That is, no substitution is performed for undefined variables. - + + + substituteAllInPlace + file + Like substituteAll, but performs + the substitutions in place on the file + file. + + + stripHash path From e861fb2bcde5413c90c52d2db3b9fcea468bef0e Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Mon, 1 Aug 2011 04:53:21 +0000 Subject: [PATCH 24/95] Remove unzip 5.52, make unzip 6.0 default As per TODO in all-packages.nix comments svn path=/nixpkgs/branches/stdenv-updates/; revision=28101 --- pkgs/tools/archivers/unzip/5.52.nix | 18 ------------------ .../archivers/unzip/{6.0.nix => default.nix} | 0 pkgs/top-level/all-packages.nix | 7 +------ 3 files changed, 1 insertion(+), 24 deletions(-) delete mode 100644 pkgs/tools/archivers/unzip/5.52.nix rename pkgs/tools/archivers/unzip/{6.0.nix => default.nix} (100%) diff --git a/pkgs/tools/archivers/unzip/5.52.nix b/pkgs/tools/archivers/unzip/5.52.nix deleted file mode 100644 index c72def3731a..00000000000 --- a/pkgs/tools/archivers/unzip/5.52.nix +++ /dev/null @@ -1,18 +0,0 @@ -{stdenv, fetchurl}: - -stdenv.mkDerivation { - name = "unzip-5.52"; - - src = fetchurl { - url = http://nixos.org/tarballs/unzip552.tar.gz; - md5 = "9d23919999d6eac9217d1f41472034a9"; - }; - - buildPhase = "make -f unix/Makefile generic"; - - installPhase = "make -f unix/Makefile prefix=$out install"; - - meta = { - homepage = http://www.info-zip.org; - }; -} diff --git a/pkgs/tools/archivers/unzip/6.0.nix b/pkgs/tools/archivers/unzip/default.nix similarity index 100% rename from pkgs/tools/archivers/unzip/6.0.nix rename to pkgs/tools/archivers/unzip/default.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index dd88d0e3813..917926aa365 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1346,12 +1346,7 @@ let unshield = callPackage ../tools/archivers/unshield { }; - unzip = unzip552; - - # TODO: remove in the next stdenv update. - unzip552 = callPackage ../tools/archivers/unzip/5.52.nix { }; - - unzip60 = callPackage ../tools/archivers/unzip/6.0.nix { }; + unzip = callPackage ../tools/archivers/unzip { }; uptimed = callPackage ../tools/system/uptimed { }; From 05a530fd10d7b846a47e8bc4b9a4d21fef20e3e8 Mon Sep 17 00:00:00 2001 From: David Guibert Date: Tue, 16 Aug 2011 18:20:59 +0000 Subject: [PATCH 25/95] module-init-tools: 3.4 -> 3.16 svn path=/nixpkgs/branches/stdenv-updates/; revision=28621 --- pkgs/build-support/kernel/modules-closure.sh | 1 + .../linux/module-init-tools/default.nix | 12 +- .../linux/module-init-tools/module-dir.patch | 311 +++++++++--------- 3 files changed, 167 insertions(+), 157 deletions(-) diff --git a/pkgs/build-support/kernel/modules-closure.sh b/pkgs/build-support/kernel/modules-closure.sh index af1faa7708c..a1e790a9c72 100644 --- a/pkgs/build-support/kernel/modules-closure.sh +++ b/pkgs/build-support/kernel/modules-closure.sh @@ -26,6 +26,7 @@ ensureDir $out/lib/modules/"$version" for module in $closure; do target=$(echo $module | sed "s^/nix/store/.*/lib/modules/^$out/lib/modules/^") if test -e "$target"; then continue; fi + if test \! -e "$module"; then continue; fi # XXX: to avoid error with "cp builtin builtin" mkdir -p $(dirname $target) echo $module cp $module $target diff --git a/pkgs/os-specific/linux/module-init-tools/default.nix b/pkgs/os-specific/linux/module-init-tools/default.nix index 5fdfedc3e2f..003ee1263f8 100644 --- a/pkgs/os-specific/linux/module-init-tools/default.nix +++ b/pkgs/os-specific/linux/module-init-tools/default.nix @@ -1,24 +1,24 @@ {stdenv, fetchurl}: stdenv.mkDerivation { - name = "module-init-tools-3.4"; + name = "module-init-tools-3.16"; src = [ (fetchurl { - url = mirror://kernel/linux/utils/kernel/module-init-tools/module-init-tools-3.4.tar.bz2; - sha256 = "11rxcdr915skc1m6dcavavw8dhcsy24wpi56sw1m4akj2frs3iwn"; + url = mirror://kernel/linux/utils/kernel/module-init-tools/module-init-tools-3.16.tar.bz2; + sha256 = "0jxnz9ahfic79rp93l5wxcbgh4pkv85mwnjlbv1gz3jawv5cvwp1"; }) # Upstream forgot to include the generated manpages. Thankfully # the Gentoo people fixed this for us :-) (fetchurl { - url = mirror://gentoo/distfiles/module-init-tools-3.4-manpages.tar.bz2; - sha256 = "0jid24girjhr30mrdckylkcz11v4in46nshhrqv18yaxm6506v6j"; + url = mirror://gentoo/distfiles/module-init-tools-3.16-man.tar.bz2; + sha256 = "1j1nzi87kgsh4scl645fhwhjvljxj83cmdasa4n4p5krhasgw358"; }) ]; patches = [./module-dir.patch]; - + postInstall = "rm $out/sbin/insmod.static"; # don't need it # We don't want bash (and therefore glibc) in the closure of the diff --git a/pkgs/os-specific/linux/module-init-tools/module-dir.patch b/pkgs/os-specific/linux/module-init-tools/module-dir.patch index cda28c14527..95c7559604d 100644 --- a/pkgs/os-specific/linux/module-init-tools/module-dir.patch +++ b/pkgs/os-specific/linux/module-init-tools/module-dir.patch @@ -1,152 +1,161 @@ -diff -rc module-init-tools-3.4-orig/depmod.c module-init-tools-3.4/depmod.c -*** module-init-tools-3.4-orig/depmod.c 2007-10-07 23:51:46.000000000 +0200 ---- module-init-tools-3.4/depmod.c 2008-08-11 12:03:14.000000000 +0200 -*************** -*** 1066,1071 **** ---- 1066,1072 ---- - *system_map = NULL; - struct module *list = NULL; - int i; -+ char *module_dir; - const char *config = NULL; - struct module_search *search = NULL; - struct module_overrides *overrides = NULL; -*************** -*** 1148,1157 **** - if (optind == argc) - all = 1; - - dirname = NOFAIL(malloc(strlen(basedir) -! + strlen(MODULE_DIR) - + strlen(version) + 1)); -! sprintf(dirname, "%s%s%s", basedir, MODULE_DIR, version); - - if (maybe_all) { - if (!doing_stdout && !depfile_out_of_date(dirname)) ---- 1149,1162 ---- - if (optind == argc) - all = 1; - -+ if((module_dir = getenv("MODULE_DIR")) == NULL) { -+ module_dir = "/lib/modules/"; -+ } -+ - dirname = NOFAIL(malloc(strlen(basedir) -! + strlen(module_dir) - + strlen(version) + 1)); -! sprintf(dirname, "%s%s%s", basedir, module_dir, version); - - if (maybe_all) { - if (!doing_stdout && !depfile_out_of_date(dirname)) -Only in module-init-tools-3.4/: depmod.c~ -Only in module-init-tools-3.4/: depmod.c.rej -diff -rc module-init-tools-3.4-orig/modinfo.c module-init-tools-3.4/modinfo.c -*** module-init-tools-3.4-orig/modinfo.c 2007-10-07 23:51:46.000000000 +0200 ---- module-init-tools-3.4/modinfo.c 2008-08-11 12:07:55.000000000 +0200 -*************** -*** 18,27 **** - #define streq(a,b) (strcmp((a),(b)) == 0) - #define strstarts(a,start) (strncmp((a),(start), strlen(start)) == 0) - -- #ifndef MODULE_DIR -- #define MODULE_DIR "/lib/modules" -- #endif -- - static int elf_endian; - static int my_endian; - ---- 18,23 ---- -*************** -*** 278,283 **** ---- 274,280 ---- - char *data; - struct utsname buf; - char *depname, *p; +commit cf2c95edb7918bc658f6cae93793c1949fc9cb6e +Author: David Guibert +Date: Fri Aug 5 14:20:12 2011 +0200 + + introduce module-dir + +diff --git a/depmod.c b/depmod.c +index a1d2f8c..9362a35 100644 +--- a/depmod.c ++++ b/depmod.c +@@ -48,9 +48,6 @@ + + #include "testing.h" + +-#ifndef MODULE_DIR +-#define MODULE_DIR "/lib/modules/" +-#endif + + #ifndef MODULE_BUILTIN_KEY + #define MODULE_BUILTIN_KEY "built-in" +@@ -1516,6 +1513,7 @@ static int parse_config_file(const char *filename, + char *line; + unsigned int linenum = 0; + FILE *cfile; + char *module_dir; - - data = grab_file(name, size); - if (data) { -*************** -*** 290,301 **** - return NULL; - } - - /* Search for it in modules.dep. */ - if (kernel) { -! asprintf(&depname, "%s/%s/modules.dep", MODULE_DIR, kernel); - } else { - uname(&buf); -! asprintf(&depname, "%s/%s/modules.dep", MODULE_DIR, - buf.release); - } - data = grab_file(depname, size); ---- 287,302 ---- - return NULL; - } - -+ if((module_dir = getenv("MODULE_DIR")) == NULL) { -+ module_dir = "/lib/modules"; -+ } -+ - /* Search for it in modules.dep. */ - if (kernel) { -! asprintf(&depname, "%s/%s/modules.dep", module_dir, kernel); - } else { - uname(&buf); -! asprintf(&depname, "%s/%s/modules.dep", module_dir, - buf.release); - } - data = grab_file(depname, size); -Only in module-init-tools-3.4/: modinfo.c~ -Only in module-init-tools-3.4/: modinfo.c.rej -diff -rc module-init-tools-3.4-orig/modprobe.c module-init-tools-3.4/modprobe.c -*** module-init-tools-3.4-orig/modprobe.c 2007-10-07 23:57:23.000000000 +0200 ---- module-init-tools-3.4/modprobe.c 2008-08-11 12:06:54.000000000 +0200 -*************** -*** 55,64 **** - char filename[0]; - }; - -- #ifndef MODULE_DIR -- #define MODULE_DIR "/lib/modules" -- #endif -- - typedef void (*errfn_t)(const char *fmt, ...); - - /* Do we use syslog or stderr for messages? */ ---- 55,60 ---- -*************** -*** 1433,1438 **** ---- 1429,1435 ---- - char *newname = NULL; - char *aliasfilename, *symfilename; - errfn_t error = fatal; -+ char *module_dir = NULL; - int flags = O_NONBLOCK|O_EXCL; - - /* Prepend options from environment. */ -*************** -*** 1559,1566 **** - if (argc < optind + 1 && !dump_only && !list_only && !remove) - print_usage(argv[0]); - -! dirname = NOFAIL(malloc(strlen(buf.release) + sizeof(MODULE_DIR) + 1)); -! sprintf(dirname, "%s/%s", MODULE_DIR, buf.release); - aliasfilename = NOFAIL(malloc(strlen(dirname) - + sizeof("/modules.alias"))); - sprintf(aliasfilename, "%s/modules.alias", dirname); ---- 1556,1567 ---- - if (argc < optind + 1 && !dump_only && !list_only && !remove) - print_usage(argv[0]); - -! if((module_dir = getenv("MODULE_DIR")) == NULL) { -! module_dir = "/lib/modules"; -! } -! -! dirname = NOFAIL(malloc(strlen(buf.release) + strlen(module_dir) + 2)); -! sprintf(dirname, "%s/%s", module_dir, buf.release); - aliasfilename = NOFAIL(malloc(strlen(dirname) - + sizeof("/modules.alias"))); - sprintf(aliasfilename, "%s/modules.alias", dirname); -Only in module-init-tools-3.4/: modprobe.c~ -Only in module-init-tools-3.4/: modprobe.c.rej + + cfile = fopen(filename, "r"); + if (!cfile) { +@@ -1525,6 +1523,10 @@ static int parse_config_file(const char *filename, + return 0; + } + ++ if((module_dir = getenv("MODULE_DIR")) == NULL) { ++ module_dir = "/lib/modules/"; ++ } ++ + while ((line = getline_wrapped(cfile, &linenum)) != NULL) { + char *ptr = line; + char *cmd, *modname; +@@ -1550,7 +1552,7 @@ static int parse_config_file(const char *filename, + continue; + } + nofail_asprintf(&dirname, "%s%s%s/%s", basedir, +- MODULE_DIR, kernelversion, search_path); ++ module_dir, kernelversion, search_path); + len = strlen(dirname); + *search = add_search(dirname, len, *search); + free(dirname); +@@ -1565,7 +1567,7 @@ static int parse_config_file(const char *filename, + continue; + + nofail_asprintf(&pathname, "%s%s%s/%s/%s.ko", basedir, +- MODULE_DIR, kernelversion, subdir, modname); ++ module_dir, kernelversion, subdir, modname); + + *overrides = add_override(pathname, *overrides); + free(pathname); +@@ -1737,6 +1739,7 @@ int main(int argc, char *argv[]) + char *basedir = "", *dirname, *version; + char *system_map = NULL, *module_symvers = NULL; + int i; ++ char *module_dir; + const char *config = NULL; + + if (native_endianness() == 0) +@@ -1832,7 +1835,11 @@ int main(int argc, char *argv[]) + if (optind == argc) + all = 1; + +- nofail_asprintf(&dirname, "%s%s%s", basedir, MODULE_DIR, version); ++ if((module_dir = getenv("MODULE_DIR")) == NULL) { ++ module_dir = "/lib/modules/"; ++ } ++ ++ nofail_asprintf(&dirname, "%s%s%s", basedir, module_dir, version); + + if (maybe_all) { + if (!doing_stdout && !depfile_out_of_date(dirname)) +@@ -1850,7 +1857,7 @@ int main(int argc, char *argv[]) + size_t len; + + nofail_asprintf(&dirname, "%s%s%s/updates", basedir, +- MODULE_DIR, version); ++ module_dir, version); + len = strlen(dirname); + search = add_search(dirname, len, search); + } +diff --git a/modinfo.c b/modinfo.c +index 1dd8469..67b1041 100644 +--- a/modinfo.c ++++ b/modinfo.c +@@ -19,9 +19,6 @@ + #include "zlibsupport.h" + #include "testing.h" + +-#ifndef MODULE_DIR +-#define MODULE_DIR "/lib/modules" +-#endif + + struct param + { +@@ -193,6 +190,11 @@ static struct elf_file *grab_module(const char *name, + struct utsname buf; + char *depname, *p, *moddir; + struct elf_file *module; ++ char *module_dir; ++ ++ if((module_dir = getenv("MODULE_DIR")) == NULL) { ++ module_dir = "/lib/modules/"; ++ } + + if (strchr(name, '.') || strchr(name, '/')) { + module = grab_elf_file(name); +@@ -207,9 +209,9 @@ static struct elf_file *grab_module(const char *name, + kernel = buf.release; + } + if (strlen(basedir)) +- nofail_asprintf(&moddir, "%s/%s/%s", basedir, MODULE_DIR, kernel); ++ nofail_asprintf(&moddir, "%s/%s/%s", basedir, module_dir, kernel); + else +- nofail_asprintf(&moddir, "%s/%s", MODULE_DIR, kernel); ++ nofail_asprintf(&moddir, "%s/%s", module_dir, kernel); + + /* Search for it in modules.dep. */ + nofail_asprintf(&depname, "%s/%s", moddir, "modules.dep"); +diff --git a/modprobe.c b/modprobe.c +index 5464f45..d9fbf9d 100644 +--- a/modprobe.c ++++ b/modprobe.c +@@ -86,10 +86,6 @@ typedef enum + + } modprobe_flags_t; + +-#ifndef MODULE_DIR +-#define MODULE_DIR "/lib/modules" +-#endif +- + /** + * print_usage - output the prefered program usage + * +@@ -2136,6 +2132,7 @@ int main(int argc, char *argv[]) + struct modprobe_conf conf = {}; + + recursion_depth = 0; ++ char *module_dir = NULL; + + /* Prepend options from environment. */ + argv = merge_args(getenv("MODPROBE_OPTIONS"), argv, &argc); +@@ -2233,7 +2230,11 @@ int main(int argc, char *argv[]) + if (argc < optind + 1 && !dump_config && !list_only) + print_usage(argv[0]); + +- nofail_asprintf(&dirname, "%s%s/%s", basedir, MODULE_DIR, buf.release); ++ if((module_dir = getenv("MODULE_DIR")) == NULL) { ++ module_dir = "/lib/modules"; ++ } ++ ++ nofail_asprintf(&dirname, "%s%s/%s", basedir, module_dir, buf.release); + + /* Old-style -t xxx wildcard? Only with -l. */ + if (list_only) { From 565cdcc3e15baeca1dc0fd8a16d48456d97f98c6 Mon Sep 17 00:00:00 2001 From: David Guibert Date: Tue, 16 Aug 2011 18:21:05 +0000 Subject: [PATCH 26/95] unzip: add support for file greater than 2 GB (unix only) svn path=/nixpkgs/branches/stdenv-updates/; revision=28622 --- pkgs/tools/archivers/unzip/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/tools/archivers/unzip/default.nix b/pkgs/tools/archivers/unzip/default.nix index 803832f52d8..7aaa84d9ac9 100644 --- a/pkgs/tools/archivers/unzip/default.nix +++ b/pkgs/tools/archivers/unzip/default.nix @@ -16,6 +16,10 @@ stdenv.mkDerivation { buildFlags = "generic D_USE_BZ2=-DUSE_BZIP2 L_BZ2=-lbz2"; + preConfigure = '' + sed -i -e 's@CF="-O3 -Wall -I. -DASM_CRC $(LOC)"@CF="-O3 -Wall -I. -DASM_CRC -DLARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 $(LOC)"@' unix/Makefile + ''; + installFlags = "prefix=$(out)"; meta = { From 5d62c65d6e085481a36c857e8b86f88d80b1c565 Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Thu, 18 Aug 2011 22:46:08 +0000 Subject: [PATCH 27/95] Remove empty directory svn path=/nixpkgs/branches/stdenv-updates/; revision=28670 From fc41aa50f46bef612cadf7fbf0a9ed248d6c2b92 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Wed, 24 Aug 2011 19:33:42 +0000 Subject: [PATCH 28/95] Whoops, missed a commit, now merged through r28791 svn path=/nixpkgs/branches/stdenv-updates/; revision=28793 --- pkgs/development/libraries/gdbm/default.nix | 40 ++++++++++++++----- pkgs/development/libraries/gdbm/install.patch | 29 -------------- pkgs/top-level/all-packages.nix | 37 ++++++++--------- 3 files changed, 46 insertions(+), 60 deletions(-) delete mode 100644 pkgs/development/libraries/gdbm/install.patch diff --git a/pkgs/development/libraries/gdbm/default.nix b/pkgs/development/libraries/gdbm/default.nix index 448fd04edd8..807e6a6a2a8 100644 --- a/pkgs/development/libraries/gdbm/default.nix +++ b/pkgs/development/libraries/gdbm/default.nix @@ -1,22 +1,40 @@ -{ stdenv, fetchurl, automake }: +{ stdenv, fetchurl }: stdenv.mkDerivation rec { - name = "gdbm-1.8.3"; + name = "gdbm-1.9.1"; + src = fetchurl { url = "mirror://gnu/gdbm/${name}.tar.gz"; - sha256 = "1j8x51xc71di1fx23sl22n5ghlqxl9a57sxri82l12z2l8w06d6c"; + sha256 = "1vcs39nhvwyicjfx4qc17k54n22azla5yjr9yachcavp6wk8a9b0"; }; - patches = [ ./install.patch ]; - - # The fuloong2f is not supported by gdbm 1.8.3 still - preConfigure = '' - cp ${automake}/share/automake*/config.{sub,guess} . - ''; + doCheck = true; meta = { - description = "GNU DBM key/value database library"; + description = "GNU dbm key/value database library"; + + longDescription = + '' GNU dbm (or GDBM, for short) is a library of database functions that + use extensible hashing and work similar to the standard UNIX dbm. + These routines are provided to a programmer needing to create and + manipulate a hashed database. + + The basic use of GDBM is to store key/data pairs in a data file. + Each key must be unique and each key is paired with only one data + item. + + The library provides primitives for storing key/data pairs, + searching and retrieving the data by its key and deleting a key + along with its data. It also support sequential iteration over all + key/data pairs in a database. + + For compatibility with programs using old UNIX dbm function, the + package also provides traditional dbm and ndbm interfaces. + ''; + homepage = http://www.gnu.org/software/gdbm/; - license = "GPLv2+"; + license = "GPLv3+"; + platforms = stdenv.lib.platforms.all; + maintainers = [ stdenv.lib.maintainers.ludo ]; }; } diff --git a/pkgs/development/libraries/gdbm/install.patch b/pkgs/development/libraries/gdbm/install.patch deleted file mode 100644 index 81afe020b7b..00000000000 --- a/pkgs/development/libraries/gdbm/install.patch +++ /dev/null @@ -1,29 +0,0 @@ ---- gdbm-1.8.3/Makefile.in 2002-10-08 18:09:12.000000000 +0200 -+++ gdbm-1.8.3/Makefile.in 2008-04-07 01:15:58.000000000 +0200 -@@ -131,11 +131,11 @@ install: libgdbm.la gdbm.h gdbm.info - $(INSTALL_ROOT)$(includedir) $(INSTALL_ROOT)$(man3dir) \ - $(INSTALL_ROOT)$(infodir) - $(LIBTOOL) $(INSTALL) -c libgdbm.la $(INSTALL_ROOT)$(libdir)/libgdbm.la -- $(INSTALL_DATA) -o $(BINOWN) -g $(BINGRP) gdbm.h \ -+ $(INSTALL_DATA) gdbm.h \ - $(INSTALL_ROOT)$(includedir)/gdbm.h -- $(INSTALL_DATA) -o $(BINOWN) -g $(BINGRP) $(srcdir)/gdbm.3 \ -+ $(INSTALL_DATA) $(srcdir)/gdbm.3 \ - $(INSTALL_ROOT)$(man3dir)/gdbm.3 -- $(INSTALL_DATA) -o $(BINOWN) -g $(BINGRP) $(srcdir)/gdbm.info \ -+ $(INSTALL_DATA) $(srcdir)/gdbm.info \ - $(INSTALL_ROOT)$(infodir)/gdbm.info - - install-compat: -@@ -143,9 +143,9 @@ install-compat: - $(INSTALL_ROOT)$(includedir) - $(LIBTOOL) $(INSTALL) -c libgdbm_compat.la \ - $(INSTALL_ROOT)$(libdir)/libgdbm_compat.la -- $(INSTALL_DATA) -o $(BINOWN) -g $(BINGRP) $(srcdir)/dbm.h \ -+ $(INSTALL_DATA)) $(srcdir)/dbm.h \ - $(INSTALL_ROOT)$(includedir)/dbm.h -- $(INSTALL_DATA) -o $(BINOWN) -g $(BINGRP) $(srcdir)/ndbm.h \ -+ $(INSTALL_DATA)) $(srcdir)/ndbm.h \ - $(INSTALL_ROOT)$(includedir)/ndbm.h - - #libgdbm.a: $(OBJS) gdbm.h diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 264391bd328..dad141528d0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -179,9 +179,6 @@ let # inside the set for derivations. recurseIntoAttrs = attrs: attrs // {recurseForDerivations = true;}; - # Return the first available value in the order: pkg.val, val, or default. - getPkgConfig = pkg : val : default : (getConfig [ pkg val ] (getConfig [ val ] default)); - builderDefs = lib.composedArgsAndFun (import ../build-support/builder-defs/builder-defs.nix) { inherit stringsWithDeps lib stdenv writeScript fetchurl fetchmtn fetchgit; @@ -3317,19 +3314,19 @@ let glibc29 = callPackage ../development/libraries/glibc-2.9 { kernelHeaders = linuxHeaders; - installLocales = getPkgConfig "glibc" "locales" false; + installLocales = getConfig [ "glibc" "locales" ] false; }; glibc29Cross = forceBuildDrv (makeOverridable (import ../development/libraries/glibc-2.9) { inherit stdenv fetchurl; gccCross = gccCrossStageStatic; kernelHeaders = linuxHeadersCross; - installLocales = getPkgConfig "glibc" "locales" false; + installLocales = getConfig [ "glibc" "locales" ] false; }); glibc213 = (callPackage ../development/libraries/glibc-2.13 { kernelHeaders = linuxHeaders; - installLocales = getPkgConfig "glibc" "locales" false; + installLocales = getConfig [ "glibc" "locales" ] false; machHeaders = null; hurdHeaders = null; gccCross = null; @@ -3341,7 +3338,7 @@ let inherit stdenv fetchurl; gccCross = gccCrossStageStatic; kernelHeaders = if crossGNU then hurdHeaders else linuxHeadersCross; - installLocales = getPkgConfig "glibc" "locales" false; + installLocales = getConfig [ "glibc" "locales" ] false; } // @@ -3362,7 +3359,7 @@ let eglibc = callPackage ../development/libraries/eglibc { kernelHeaders = linuxHeaders; - installLocales = getPkgConfig "glibc" "locales" false; + installLocales = getConfig [ "glibc" "locales" ] false; }; glibcLocales = callPackage ../development/libraries/glibc-2.13/locales.nix { }; @@ -3789,7 +3786,7 @@ let libimobiledevice = callPackage ../development/libraries/libimobiledevice { }; libiodbc = callPackage ../development/libraries/libiodbc { - useGTK = getPkgConfig "libiodbc" "gtk" false; + useGTK = getConfig [ "libiodbc" "gtk" ] false; }; libktorrent = newScope pkgs.kde4 ../development/libraries/libktorrent { }; @@ -6346,11 +6343,11 @@ let }; emacsSnapshot = lowPrio (callPackage ../applications/editors/emacs-snapshot { - xawSupport = getPkgConfig "emacs" "xawSupport" false; - xaw3dSupport = getPkgConfig "emacs" "xaw3dSupport" false; - gtkGUI = getPkgConfig "emacs" "gtkSupport" true; - xftSupport = getPkgConfig "emacs" "xftSupport" true; - dbusSupport = getPkgConfig "emacs" "dbusSupport" true; + xawSupport = getConfig [ "emacs" "xawSupport" ] false; + xaw3dSupport = getConfig [ "emacs" "xaw3dSupport" ] false; + gtkGUI = getConfig [ "emacs" "gtkSupport" ] true; + xftSupport = getConfig [ "emacs" "xftSupport" ] true; + dbusSupport = getConfig [ "emacs" "dbusSupport" ] true; }); emacsPackages = emacs: self: let callPackage = newScope self; in rec { @@ -7271,7 +7268,7 @@ let # KDE support is not working yet. inherit (kde3) kdelibs kdebase; - withKde = getPkgConfig "taskJuggler" "kde" false; + withKde = getConfig [ "taskJuggler" "kde" ] false; }; tesseract = callPackage ../applications/graphics/tesseract { }; @@ -8153,7 +8150,7 @@ let ghostscript = callPackage ../misc/ghostscript { x11Support = false; - cupsSupport = getPkgConfig "ghostscript" "cups" true; + cupsSupport = getConfig [ "ghostscript" "cups" ] true; gnuFork = getConfig [ "ghostscript" "gnu" ] true; }; @@ -8194,13 +8191,13 @@ let nix = nixStable; nixStable = callPackage ../tools/package-management/nix { - storeDir = getPkgConfig "nix" "storeDir" "/nix/store"; - stateDir = getPkgConfig "nix" "stateDir" "/nix/var"; + storeDir = getConfig [ "nix" "storeDir" ] "/nix/store"; + stateDir = getConfig [ "nix" "stateDir" ] "/nix/var"; }; nixUnstable = callPackage ../tools/package-management/nix/unstable.nix { - storeDir = getPkgConfig "nix" "storeDir" "/nix/store"; - stateDir = getPkgConfig "nix" "stateDir" "/nix/var"; + storeDir = getConfig [ "nix" "storeDir" ] "/nix/store"; + stateDir = getConfig [ "nix" "stateDir" ] "/nix/var"; }; nixSqlite = nixUnstable; From 1bbbb2eafc20d1e0b2e79f8d1678cd411b3f8fcb Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Wed, 24 Aug 2011 20:11:18 +0000 Subject: [PATCH 29/95] Remove obsolete version of `gnupdate'. Revision 26483 from trunk. Somehow missed during merge. svn path=/nixpkgs/branches/stdenv-updates/; revision=28794 --- maintainers/scripts/gnu/gnupdate.scm | 712 --------------------------- 1 file changed, 712 deletions(-) delete mode 100644 maintainers/scripts/gnu/gnupdate.scm diff --git a/maintainers/scripts/gnu/gnupdate.scm b/maintainers/scripts/gnu/gnupdate.scm deleted file mode 100644 index 3cf6e7cfaba..00000000000 --- a/maintainers/scripts/gnu/gnupdate.scm +++ /dev/null @@ -1,712 +0,0 @@ -;;; GNUpdate -- Update GNU packages in Nixpkgs. -*- coding: utf-8; -*- -;;; Copyright (C) 2010 Ludovic Courtès -;;; -;;; This program is free software: you can redistribute it and/or modify -;;; it under the terms of the GNU General Public License as published by -;;; the Free Software Foundation, either version 3 of the License, or -;;; (at your option) any later version. -;;; -;;; This program is distributed in the hope that it will be useful, -;;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;;; GNU General Public License for more details. -;;; -;;; You should have received a copy of the GNU General Public License -;;; along with this program. If not, see . - -(cond-expand (guile-2 #t) - (else (error "GNU Guile 2.0 is required"))) - -(use-modules (sxml ssax) - (ice-9 popen) - (ice-9 match) - (ice-9 rdelim) - (ice-9 regex) - (ice-9 vlist) - (srfi srfi-1) - (srfi srfi-9) - (srfi srfi-11) - (srfi srfi-37) - (system foreign) - (rnrs bytevectors)) - - -;;; -;;; SNix. -;;; - -(define-record-type - (make-location file line column) - location? - (file location-file) - (line location-line) - (column location-column)) - -(define (->loc line column path) - (and line column path - (make-location path (string->number line) (string->number column)))) - -;; XXX: Hack to add missing exports from `(sxml ssax)' as of 1.9.10. -(let ((ssax (resolve-module '(sxml ssax)))) - (for-each (lambda (sym) - (module-add! (current-module) sym - (module-variable ssax sym))) - '(ssax:warn ssax:skip-pi nl))) - -;; Nix object types visible in the XML output of `nix-instantiate' and -;; mapping to S-expressions (we map to sexps, not records, so that we -;; can do pattern matching): -;; -;; at (at varpat attrspat) -;; attr (attribute loc name value) -;; attrs (attribute-set attributes) -;; attrspat (attribute-set-pattern patterns) -;; bool #f|#t -;; derivation (derivation drv-path out-path attributes) -;; ellipsis '... -;; expr (snix loc body ...) -;; function (function loc at|attrspat|varpat) -;; int int -;; list list -;; null 'null -;; path string -;; string string -;; unevaluated 'unevaluated -;; varpat (varpat name) -;; -;; Initially ATTRIBUTES in `derivation' and `attribute-set' was a promise; -;; however, handling `repeated' nodes makes it impossible to do anything -;; lazily because the whole SXML tree has to be traversed to maintain the -;; list of known derivations. - -(define (xml-element->snix elem attributes body derivations) - ;; Return an SNix element corresponding to XML element ELEM. - - (define (loc) - (->loc (assq-ref attributes 'line) - (assq-ref attributes 'column) - (assq-ref attributes 'path))) - - (case elem - ((at) - (values `(at ,(car body) ,(cadr body)) derivations)) - ((attr) - (let ((name (assq-ref attributes 'name))) - (cond ((null? body) - (values `(attribute-pattern ,name) derivations)) - ((and (pair? body) (null? (cdr body))) - (values `(attribute ,(loc) ,name ,(car body)) - derivations)) - (else - (error "invalid attribute body" name (loc) body))))) - ((attrs) - (values `(attribute-set ,(reverse body)) derivations)) - ((attrspat) - (values `(attribute-set-pattern ,body) derivations)) - ((bool) - (values (string-ci=? "true" (assq-ref attributes 'value)) - derivations)) - ((derivation) - (let ((drv-path (assq-ref attributes 'drvPath)) - (out-path (assq-ref attributes 'outPath))) - (if (equal? body '(repeated)) - (let ((body (vhash-assoc drv-path derivations))) - (if (pair? body) - (values `(derivation ,drv-path ,out-path ,(cdr body)) - derivations) - (error "no previous occurrence of derivation" - drv-path))) - (values `(derivation ,drv-path ,out-path ,body) - (vhash-cons drv-path body derivations))))) - ((ellipsis) - (values '... derivations)) - ((expr) - (values `(snix ,(loc) ,@body) derivations)) - ((function) - (values `(function ,(loc) ,body) derivations)) - ((int) - (values (string->number (assq-ref attributes 'value)) - derivations)) - ((list) - (values body derivations)) - ((null) - (values 'null derivations)) - ((path) - (values (assq-ref attributes 'value) derivations)) - ((repeated) - (values 'repeated derivations)) - ((string) - (values (assq-ref attributes 'value) derivations)) - ((unevaluated) - (values 'unevaluated derivations)) - ((varpat) - (values `(varpat ,(assq-ref attributes 'name)) derivations)) - (else (error "unhandled Nix XML element" elem)))) - -(define xml->snix - ;; Return the SNix represention of TREE, an SXML tree as returned by - ;; parsing the XML output of `nix-instantiate' on Nixpkgs. - (let ((parse - (ssax:make-parser NEW-LEVEL-SEED - (lambda (elem-gi attributes namespaces expected-content - seed) - (cons '() (cdr seed))) - - FINISH-ELEMENT - (lambda (elem-gi attributes namespaces parent-seed - seed) - (let ((snix (car seed)) - (derivations (cdr seed))) - (let-values (((snix derivations) - (xml-element->snix elem-gi - attributes - snix - derivations))) - (cons (cons snix (car parent-seed)) - derivations)))) - - CHAR-DATA-HANDLER - (lambda (string1 string2 seed) - ;; Discard inter-node strings, which are blanks. - seed)))) - (lambda (port) - ;; Discard the second value returned by the parser (the derivation - ;; vhash). - (caar (parse port (cons '() vlist-null)))))) - -(define (call-with-package snix proc) - (match snix - (('attribute _ (and attribute-name (? string?)) - ('derivation _ _ body)) - ;; Ugly pattern matching. - (let ((meta - (any (lambda (attr) - (match attr - (('attribute _ "meta" ('attribute-set metas)) metas) - (_ #f))) - body)) - (package-name - (any (lambda (attr) - (match attr - (('attribute _ "name" (and name (? string?))) - name) - (_ #f))) - body)) - (location - (any (lambda (attr) - (match attr - (('attribute loc "name" (? string?)) - loc) - (_ #f))) - body)) - (src - (any (lambda (attr) - (match attr - (('attribute _ "src" src) - src) - (_ #f))) - body))) - (proc attribute-name package-name location meta src))))) - -(define (call-with-src snix proc) - ;; Assume SNIX contains the SNix expression for the value of an `src' - ;; attribute, as returned by `call-with-package', and call PROC with the - ;; relevant SRC information, or #f if SNIX doesn't match. - (match snix - (('derivation _ _ body) - (let ((name - (any (lambda (attr) - (match attr - (('attribute _ "name" (and name (? string?))) - name) - (_ #f))) - body)) - (output-hash - (any (lambda (attr) - (match attr - (('attribute _ "outputHash" (and hash (? string?))) - hash) - (_ #f))) - body)) - (urls - (any (lambda (attr) - (match attr - (('attribute _ "urls" (and urls (? pair?))) - urls) - (_ #f))) - body))) - (proc name output-hash urls))) - (_ (proc #f #f #f)))) - -(define (src->values snix) - (call-with-src snix values)) - -(define (open-nixpkgs nixpkgs) - (let ((script (string-append nixpkgs - "/maintainers/scripts/eval-release.nix"))) - (open-pipe* OPEN_READ "nix-instantiate" - "--strict" "--eval-only" "--xml" - script))) - -(define (nix-prefetch-url url) - ;; Download URL in the Nix store and return the base32-encoded SHA256 hash - ;; of the file at URL - (let* ((pipe (open-pipe* OPEN_READ "nix-prefetch-url" url)) - (hash (read-line pipe))) - (close-pipe pipe) - (if (eof-object? hash) - (values #f #f) - (let* ((pipe (open-pipe* OPEN_READ "nix-store" "--print-fixed-path" - "sha256" hash (basename url))) - (path (read-line pipe))) - (if (eof-object? path) - (values #f #f) - (values (string-trim-both hash) (string-trim-both path))))))) - -(define (update-nix-expression file - old-version old-hash - new-version new-hash) - ;; Modify FILE in-place. Ugly: we call out to sed(1). - (let ((cmd (format #f "sed -i \"~a\" -e 's/~A/~a/g ; s/~A/~A/g'" - file - (regexp-quote old-version) new-version - old-hash - (or new-hash "new hash not available, check the log")))) - (format #t "running `~A'...~%" cmd) - (system cmd))) - - -;;; -;;; FTP client. -;;; - -(define-record-type - (%make-ftp-connection socket addrinfo) - ftp-connection? - (socket ftp-connection-socket) - (addrinfo ftp-connection-addrinfo)) - -(define %ftp-ready-rx - (make-regexp "^([0-9]{3}) (.+)$")) - -(define (%ftp-listen port) - (let loop ((line (read-line port))) - (cond ((eof-object? line) (values line #f)) - ((regexp-exec %ftp-ready-rx line) - => - (lambda (match) - (values (string->number (match:substring match 1)) - (match:substring match 2)))) - (else - (loop (read-line port)))))) - -(define (%ftp-command command expected-code port) - (format port "~A~A~A" command (string #\return) (string #\newline)) - (let-values (((code message) (%ftp-listen port))) - (if (eqv? code expected-code) - message - (throw 'ftp-error port command code message)))) - -(define (%ftp-login user pass port) - (let ((command (string-append "USER " user (string #\newline)))) - (display command port) - (let-values (((code message) (%ftp-listen port))) - (case code - ((230) #t) - ((331) (%ftp-command (string-append "PASS " pass) 230 port)) - (else (throw 'ftp-error port command code message)))))) - -(define (ftp-open host) - (catch 'getaddrinfo-error - (lambda () - (let* ((ai (car (getaddrinfo host "ftp"))) - (s (socket (addrinfo:fam ai) (addrinfo:socktype ai) - (addrinfo:protocol ai)))) - (connect s (addrinfo:addr ai)) - (setvbuf s _IOLBF) - (let-values (((code message) (%ftp-listen s))) - (if (eqv? code 220) - (begin - ;(%ftp-command "OPTS UTF8 ON" 200 s) - (%ftp-login "anonymous" "ludo@example.com" s) - (%make-ftp-connection s ai)) - (begin - (format (current-error-port) "FTP to `~a' failed: ~A: ~A~%" - host code message) - (close s) - #f))))) - (lambda (key errcode) - (format (current-error-port) "failed to resolve `~a': ~a~%" - host (gai-strerror errcode)) - #f))) - -(define (ftp-close conn) - (close (ftp-connection-socket conn))) - -(define (ftp-chdir conn dir) - (%ftp-command (string-append "CWD " dir) 250 - (ftp-connection-socket conn))) - -(define (ftp-pasv conn) - (define %pasv-rx - (make-regexp "([0-9]+),([0-9]+),([0-9]+),([0-9]+),([0-9]+),([0-9]+)")) - - (let ((message (%ftp-command "PASV" 227 (ftp-connection-socket conn)))) - (cond ((regexp-exec %pasv-rx message) - => - (lambda (match) - (+ (* (string->number (match:substring match 5)) 256) - (string->number (match:substring match 6))))) - (else - (throw 'ftp-error conn "PASV" 227 message))))) - - -(define* (ftp-list conn #:optional directory) - (define (address-with-port sa port) - (let ((fam (sockaddr:fam sa)) - (addr (sockaddr:addr sa))) - (cond ((= fam AF_INET) - (make-socket-address fam addr port)) - ((= fam AF_INET6) - (make-socket-address fam addr port - (sockaddr:flowinfo sa) - (sockaddr:scopeid sa))) - (else #f)))) - - (if directory - (ftp-chdir conn directory)) - - (let* ((port (ftp-pasv conn)) - (ai (ftp-connection-addrinfo conn)) - (s (socket (addrinfo:fam ai) (addrinfo:socktype ai) - (addrinfo:protocol ai)))) - (connect s (address-with-port (addrinfo:addr ai) port)) - (setvbuf s _IOLBF) - - (dynamic-wind - (lambda () #t) - (lambda () - (%ftp-command "LIST" 150 (ftp-connection-socket conn)) - - (let loop ((line (read-line s)) - (result '())) - (cond ((eof-object? line) (reverse result)) - ((regexp-exec %ftp-ready-rx line) - => - (lambda (match) - (let ((code (string->number (match:substring match 1)))) - (if (= 126 code) - (reverse result) - (throw 'ftp-error conn "LIST" code))))) - (else - (loop (read-line s) - (let ((file (car (reverse (string-tokenize line))))) - (cons file result))))))) - (lambda () - (close s) - (let-values (((code message) (%ftp-listen (ftp-connection-socket conn)))) - (or (eqv? code 226) - (throw 'ftp-error conn "LIST" code message))))))) - - -;;; -;;; GNU. -;;; - -(define %ignored-package-attributes - ;; Attribute name of packages to be ignored. - '("bash" "bashReal" "bashInteractive" ;; the full versioned name is incorrect - "autoconf213" - "automake17x" - "automake19x" - "automake110x" - "automake" ;; = 1.10.x - "bison1875" - "bison23" - "bison" ;; = 2.3 - "emacs22" - "emacsSnapshot" - "gcc295" - "gcc33" - "gcc34" - "gcc40" - "gcc41" - "gcc42" - "gcc43" - "glibc25" - "glibc27" - "glibc29" - "guile_1_9" - )) - -(define (gnu? package) - ;; Return true if PACKAGE (a snix expression) is a GNU package (according - ;; to a simple heuristic.) Otherwise return #f. - (match package - (('attribute _ attribute-name ('derivation _ _ body)) - (any (lambda (attr) - (match attr - (('attribute _ "meta" ('attribute-set metas)) - (any (lambda (attr) - (match attr - (('attribute _ "description" value) - (string-prefix? "GNU" value)) - (('attribute _ "homepage" value) - (string-contains value "www.gnu.org")) - (_ #f))) - metas)) - (_ #f))) - body)) - (_ #f))) - -(define (gnu-packages packages) - (fold (lambda (package gnu) - (match package - (('attribute _ "emacs23Packages" emacs-packages) - ;; XXX: Should prepend `emacs23Packages.' to attribute names. - (append (gnu-packages emacs-packages) gnu)) - (('attribute _ attribute-name ('derivation _ _ body)) - (if (member attribute-name %ignored-package-attributes) - gnu - (if (gnu? package) - (cons package gnu) - gnu))) - (_ gnu))) - '() - packages)) - -(define (ftp-server/directory project) - (define quirks - '(("commoncpp2" "ftp.gnu.org" "/gnu/commoncpp" #f) - ("libgcrypt" "ftp.gnupg.org" "/gcrypt" #t) - ("libgpg-error" "ftp.gnupg.org" "/gcrypt" #t) - ("gnupg" "ftp.gnupg.org" "/gcrypt" #t) - ("gnu-ghostscript" "ftp.gnu.org" "/ghostscript" #f) - ("GNUnet" "ftp.gnu.org" "/gnu/gnunet" #f) - ("mit-scheme" "ftp.gnu.org" "/gnu/mit-scheme/stable.pkg") - ("icecat" "ftp.gnu.org" "/gnu/gnuzilla" #f) - ("TeXmacs" "ftp.texmacs.org" "/TeXmacs/targz" #f))) - - (let ((quirk (assoc project quirks))) - (match quirk - ((_ server directory subdir?) - (values server (if (not subdir?) - directory - (string-append directory "/" project)))) - (else - (values "ftp.gnu.org" (string-append "/gnu/" project)))))) - -(define (nixpkgs->gnu-name project) - (define quirks - '(("gcc-wrapper" . "gcc") - ("ghostscript" . "gnu-ghostscript") ;; ../ghostscript/gnu-ghoscript-X.Y.tar.gz - ("gnum4" . "m4") - ("gnugrep" . "grep") - ("gnused" . "sed") - ("gnutar" . "tar") - ("gnunet" . "GNUnet") ;; ftp.gnu.org/gnu/gnunet/GNUnet-x.y.tar.gz - ("mitscheme" . "mit-scheme") - ("texmacs" . "TeXmacs"))) - - (or (assoc-ref quirks project) project)) - -(define (releases project) - ;; TODO: Handle project release trees like that of IceCat and MyServer. - (define release-rx - (make-regexp (string-append "^" project "-[0-9].*\\.tar\\."))) - - (catch #t - (lambda () - (let-values (((server directory) (ftp-server/directory project))) - (let* ((conn (ftp-open server)) - (files (ftp-list conn directory))) - (ftp-close conn) - (map (lambda (tarball) - (let ((end (string-contains tarball ".tar"))) - (substring tarball 0 end))) - - ;; Filter out signatures, deltas, and files which are potentially - ;; not releases of PROJECT (e.g., in /gnu/guile, filter out - ;; guile-oops and guile-www). - (filter (lambda (file) - (and (not (string-suffix? ".sig" file)) - (regexp-exec release-rx file))) - files))))) - (lambda (key subr message . args) - (format (current-error-port) - "failed to get release list for `~A': ~A ~A~%" - project message args) - '()))) - -(define version-string>? - (let ((strverscmp - (let ((sym (or (dynamic-func "strverscmp" (dynamic-link)) - (error "could not find `strverscmp' (from GNU libc)")))) - (make-foreign-function int sym (list '* '*)))) - (string->null-terminated-utf8 - (lambda (s) - (let* ((utf8 (string->utf8 s)) - (len (bytevector-length utf8)) - (nts (make-bytevector (+ len 1)))) - (bytevector-copy! utf8 0 nts 0 len) - (bytevector-u8-set! nts len 0) - nts)))) - (lambda (a b) - (let ((a (bytevector->foreign (string->null-terminated-utf8 a))) - (b (bytevector->foreign (string->null-terminated-utf8 b)))) - (> (strverscmp a b) 0))))) - -(define (latest-release project) - ;; Return "FOO-X.Y" or #f. - (let ((releases (releases project))) - (and (not (null? releases)) - (fold (lambda (release latest) - (if (version-string>? release latest) - release - latest)) - "" - releases)))) - -(define (package/version name+version) - (let ((hyphen (string-rindex name+version #\-))) - (if (not hyphen) - (values name+version #f) - (let ((name (substring name+version 0 hyphen)) - (version (substring name+version (+ hyphen 1) - (string-length name+version)))) - (values name version))))) - -(define (file-extension file) - (let ((dot (string-rindex file #\.))) - (and dot (substring file (+ 1 dot) (string-length file))))) - -(define (packages-to-update gnu-packages) - (fold (lambda (pkg result) - (call-with-package pkg - (lambda (attribute name+version location meta src) - (let-values (((name old-version) - (package/version name+version))) - (let ((latest (latest-release (nixpkgs->gnu-name name)))) - (cond ((not latest) - (format #t "~A [unknown latest version]~%" - name+version) - result) - ((string=? name+version latest) - (format #t "~A [up to date]~%" name+version) - result) - (else - (let-values (((project new-version) - (package/version latest)) - ((old-name old-hash old-urls) - (src->values src))) - (format #t "~A -> ~A [~A]~%" name+version latest - (and (pair? old-urls) (car old-urls))) - (let* ((url (and (pair? old-urls) - (car old-urls))) - (new-hash (fetch-gnu project new-version - (if url - (file-extension url) - "gz")))) - (cons (list name attribute - old-version old-hash - new-version new-hash - location) - result)))))))))) - '() - gnu-packages)) - -(define (fetch-gnu project version archive-type) - (let-values (((server directory) - (ftp-server/directory project))) - (let* ((base (string-append project "-" version ".tar." archive-type)) - (url (string-append "ftp://" server "/" directory "/" base)) - (sig (string-append base ".sig")) - (sig-url (string-append url ".sig"))) - (let-values (((hash path) (nix-prefetch-url url))) - (pk 'prefetch-url url hash path) - (and hash path - (begin - (false-if-exception (delete-file sig)) - (system* "wget" sig-url) - (if (file-exists? sig) - (let ((ret (system* "gpg" "--verify" sig path))) - (false-if-exception (delete-file sig)) - (if (and ret (= 0 (status:exit-val ret))) - hash - (begin - (format (current-error-port) - "signature verification failed for `~a'~%" - base) - (format (current-error-port) - "(could be because the public key is not in your keyring)~%") - #f))) - (begin - (format (current-error-port) - "no signature for `~a'~%" base) - hash)))))))) - - -;;; -;;; Main program. -;;; - -(define %options - ;; Specifications of the command-line options. - (list (option '(#\h "help") #f #f - (lambda (opt name arg result) - (format #t "Usage: gnupdate [OPTIONS...]~%") - (format #t "GNUpdate -- update Nix expressions of GNU packages in Nixpkgs~%") - (format #t "~%") - (format #t " -x, --xml=FILE Read XML output of `nix-instantiate'~%") - (format #t " from FILE.~%") - (format #t " -d, --dry-run Don't actually update Nix expressions~%") - (format #t " -h, --help Give this help list.~%~%") - (format #t "Report bugs to ~%") - (exit 0))) - (option '(#\d "dry-run") #f #f - (lambda (opt name arg result) - (alist-cons 'dry-run #t result))) - - (option '(#\x "xml") #t #f - (lambda (opt name arg result) - (alist-cons 'xml-file arg result))))) - -(define-public (main . args) - ;; Assume Nixpkgs is under $NIXPKGS or ~/src/nixpkgs. - (let* ((opts (args-fold args %options - (lambda (opt name arg result) - (error "unrecognized option `~A'" name)) - (lambda (operand result) - (error "extraneous argument `~A'" operand)) - '())) - (home (getenv "HOME")) - (path (or (getenv "NIXPKGS") - (string-append home "/src/nixpkgs"))) - (snix (begin - (format (current-error-port) "parsing XML...~%") - (xml->snix - (or (and=> (assoc-ref opts 'xml-file) open-input-file) - (open-nixpkgs path))))) - (packages (match snix - (('snix _ ('attribute-set attributes)) - attributes) - (else #f))) - (gnu (gnu-packages packages)) - (updates (packages-to-update gnu))) - (format #t "~%~A packages to update...~%" (length updates)) - (for-each (lambda (update) - (match update - ((name attribute - old-version old-hash - new-version new-hash - location) - (if (assoc-ref opts 'dry-run) - (format #t "`~a' would be updated from ~a to ~a (~a -> ~a)~%" - name old-version new-version - old-hash new-hash) - (update-nix-expression (location-file location) - old-version old-hash - new-version new-hash))) - (_ #f))) - updates) - #t)) From f1362ffb938c2fef526fee2095b9907373c7286f Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Wed, 24 Aug 2011 20:22:23 +0000 Subject: [PATCH 30/95] Another merge miss svn path=/nixpkgs/branches/stdenv-updates/; revision=28795 --- .../networking/browsers/rekonq/source.nix | 28 ------------------- 1 file changed, 28 deletions(-) delete mode 100644 pkgs/applications/networking/browsers/rekonq/source.nix diff --git a/pkgs/applications/networking/browsers/rekonq/source.nix b/pkgs/applications/networking/browsers/rekonq/source.nix deleted file mode 100644 index 5faeddaaf2a..00000000000 --- a/pkgs/applications/networking/browsers/rekonq/source.nix +++ /dev/null @@ -1,28 +0,0 @@ -{ fetchurl, fetchgit }: - -builtins.listToAttrs -[ - { - name = "0.4.90"; - value = rec { - name = "rekonq-0.4.90"; - src = fetchurl { - url = "http://kde-apps.org/CONTENT/content-files/94258-${name}.tar.bz2"; - name = "${name}.tar.bz2"; - sha256 = "1dmdx54asv0b4xzc8p5nadn92l8pks9cl1y9j8a46lsslwsjw3ws"; - }; - }; - } - - { - name = "scm"; - value = { - name = "rekonq-0.4.0-20100514"; - src = fetchgit { - url = git://gitorious.org/rekonq/mainline.git; - rev = "6b4f4d69a3c599bc958ccddc5f7ac1c8648a7042"; - sha256 = "1qcwf7rsrnsbnq62cl44r48bmavc2nysi2wqhy1jxmj2ndwvsxy1"; - }; - }; - } -] From f6bfeb3fce1dd949de73a4b91112f31c3d853369 Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Wed, 24 Aug 2011 20:22:27 +0000 Subject: [PATCH 31/95] Apply glibc-elf-localscope patch from OpenSUSE This fixes a lot of crashes in KDE background processes svn path=/nixpkgs/branches/stdenv-updates/; revision=28796 --- .../glibc-2.12/glibc-elf-localscope.patch | 82 +++++++++++++++++++ .../libraries/glibc-2.13/common.nix | 2 + 2 files changed, 84 insertions(+) create mode 100644 pkgs/development/libraries/glibc-2.12/glibc-elf-localscope.patch diff --git a/pkgs/development/libraries/glibc-2.12/glibc-elf-localscope.patch b/pkgs/development/libraries/glibc-2.12/glibc-elf-localscope.patch new file mode 100644 index 00000000000..98f7f81087b --- /dev/null +++ b/pkgs/development/libraries/glibc-2.12/glibc-elf-localscope.patch @@ -0,0 +1,82 @@ +diff -ru a/elf/dl-close.c b/elf/dl-close.c +--- a/elf/dl-close.c 2011-02-04 00:35:03.000000000 +0100 ++++ b/elf/dl-close.c 2011-02-22 02:16:12.367883000 +0100 +@@ -180,24 +186,28 @@ + /* Signal the object is still needed. */ + l->l_idx = IDX_STILL_USED; + ++#define mark_used(dmap) \ ++ do { \ ++ if ((dmap)->l_idx != IDX_STILL_USED) \ ++ { \ ++ assert ((dmap)->l_idx >= 0 && (dmap)->l_idx < nloaded); \ ++ \ ++ if (!used[(dmap)->l_idx]) \ ++ { \ ++ used[(dmap)->l_idx] = 1; \ ++ if ((dmap)->l_idx - 1 < done_index) \ ++ done_index = (dmap)->l_idx - 1; \ ++ } \ ++ } \ ++ } while (0) ++ + /* Mark all dependencies as used. */ + if (l->l_initfini != NULL) + { + struct link_map **lp = &l->l_initfini[1]; + while (*lp != NULL) + { +- if ((*lp)->l_idx != IDX_STILL_USED) +- { +- assert ((*lp)->l_idx >= 0 && (*lp)->l_idx < nloaded); +- +- if (!used[(*lp)->l_idx]) +- { +- used[(*lp)->l_idx] = 1; +- if ((*lp)->l_idx - 1 < done_index) +- done_index = (*lp)->l_idx - 1; +- } +- } +- ++ mark_used(*lp); + ++lp; + } + } +@@ -206,19 +216,25 @@ + for (unsigned int j = 0; j < l->l_reldeps->act; ++j) + { + struct link_map *jmap = l->l_reldeps->list[j]; +- +- if (jmap->l_idx != IDX_STILL_USED) +- { +- assert (jmap->l_idx >= 0 && jmap->l_idx < nloaded); +- +- if (!used[jmap->l_idx]) +- { +- used[jmap->l_idx] = 1; +- if (jmap->l_idx - 1 < done_index) +- done_index = jmap->l_idx - 1; +- } +- } ++ mark_used(jmap); + } ++ /* And the same for owners of our scopes; normally, our last ++ scope provider would render us unused, but this can be ++ prevented by the NODELETE flag. */ ++ if (__builtin_expect(l->l_type == lt_loaded ++ && (l->l_flags_1 & DF_1_NODELETE), 0)) ++ for (size_t cnt = 0; l->l_scope[cnt] != NULL; ++cnt) ++ /* This relies on l_scope[] entries being always set either ++ to its own l_symbolic_searchlist address, or some map's ++ l_searchlist address. */ ++ if (l->l_scope[cnt] != &l->l_symbolic_searchlist) ++ { ++ struct link_map *ls = (struct link_map *) ++ ((char *) l->l_scope[cnt] ++ - offsetof (struct link_map, l_searchlist)); ++ assert (ls->l_ns == nsid); ++ mark_used(ls); ++ } + } + + /* Sort the entries. */ diff --git a/pkgs/development/libraries/glibc-2.13/common.nix b/pkgs/development/libraries/glibc-2.13/common.nix index 460deb1019b..c6ea06cc117 100644 --- a/pkgs/development/libraries/glibc-2.13/common.nix +++ b/pkgs/development/libraries/glibc-2.13/common.nix @@ -74,6 +74,8 @@ stdenv.mkDerivation ({ /* Allow nixos and nix handle the locale-archive. */ ./nix-locale-archive.patch + /* Without this patch many KDE binaries crash. */ + ./glibc-elf-localscope.patch ]; postPatch = '' From 8e7e316ae1547c6af3fa07a40a213a70d0ef031f Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Wed, 24 Aug 2011 20:32:46 +0000 Subject: [PATCH 32/95] Oops, wrong local merge svn path=/nixpkgs/branches/stdenv-updates/; revision=28797 --- .../{glibc-2.12 => glibc-2.13}/glibc-elf-localscope.patch | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename pkgs/development/libraries/{glibc-2.12 => glibc-2.13}/glibc-elf-localscope.patch (100%) diff --git a/pkgs/development/libraries/glibc-2.12/glibc-elf-localscope.patch b/pkgs/development/libraries/glibc-2.13/glibc-elf-localscope.patch similarity index 100% rename from pkgs/development/libraries/glibc-2.12/glibc-elf-localscope.patch rename to pkgs/development/libraries/glibc-2.13/glibc-elf-localscope.patch From 2b619dd126ca1ef8d5847e3ea0dc84eb0c2f2a5d Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Wed, 24 Aug 2011 21:15:58 +0000 Subject: [PATCH 33/95] Merge with trunk (trivial svn merge URL/trunk) svn path=/nixpkgs/branches/stdenv-updates/; revision=28799 --- pkgs/top-level/release.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix index 7c415fa445b..49c2279a649 100644 --- a/pkgs/top-level/release.nix +++ b/pkgs/top-level/release.nix @@ -566,7 +566,7 @@ with (import ./release-lib.nix); xwininfo = linux; }; - xfce4 = { + xfce = { gtk_xfce_engine = linux; mousepad = linux; ristretto = linux; From d11c7b604f17d6f23a4162add908ae8575ca4167 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Sun, 28 Aug 2011 18:41:51 +0000 Subject: [PATCH 34/95] gcc-4.{4,5,6}: Remove Treelang, bison, and flex Treelang was dropped in gcc 4.4 and bison and flex are not needed for anything else svn path=/nixpkgs/branches/stdenv-updates/; revision=28858 --- pkgs/development/compilers/gcc-4.4/default.nix | 9 ++------- pkgs/development/compilers/gcc-4.5/default.nix | 9 ++------- pkgs/development/compilers/gcc-4.6/default.nix | 9 ++------- 3 files changed, 6 insertions(+), 21 deletions(-) diff --git a/pkgs/development/compilers/gcc-4.4/default.nix b/pkgs/development/compilers/gcc-4.4/default.nix index 6c2897c56c4..b08cf5bb8cf 100644 --- a/pkgs/development/compilers/gcc-4.4/default.nix +++ b/pkgs/development/compilers/gcc-4.4/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, noSysDirs -, langC ? true, langCC ? true, langFortran ? false, langTreelang ? false +, langC ? true, langCC ? true, langFortran ? false , langJava ? false , langAda ? false , langVhdl ? false @@ -9,7 +9,6 @@ , texinfo ? null , gmp, mpfr, gettext, which , ppl ? null, cloogppl ? null # used by the Graphite optimization framework -, bison ? null, flex ? null , zlib ? null, boehmgc ? null , zip ? null, unzip ? null, pkgconfig ? null, gtk ? null, libart_lgpl ? null , libX11 ? null, libXt ? null, libSM ? null, libICE ? null, libXtst ? null @@ -25,7 +24,6 @@ , gnat ? null }: -assert langTreelang -> bison != null && flex != null; assert langJava -> zip != null && unzip != null && zlib != null && boehmgc != null; assert langAda -> gnatboot != null; @@ -131,7 +129,6 @@ stdenv.mkDerivation ({ buildInputs = [ gmp mpfr gettext ] ++ (optional (ppl != null) ppl) ++ (optional (cloogppl != null) cloogppl) - ++ (optionals langTreelang [bison flex]) ++ (optional (zlib != null) zlib) ++ (optional (boehmgc != null) boehmgc) ++ (optionals langJava [zip unzip]) @@ -160,7 +157,6 @@ stdenv.mkDerivation ({ ++ optional langCC "c++" ++ optional langFortran "fortran" ++ optional langJava "java" - ++ optional langTreelang "treelang" ++ optional langAda "ada" ++ optional langVhdl "vhdl" ) @@ -209,7 +205,6 @@ stdenv.mkDerivation ({ ++ optional langCC "c++" ++ optional langFortran "fortran" ++ optional langJava "java" - ++ optional langTreelang "treelang" ++ optional langAda "ada" ++ optional langVhdl "vhdl" ) @@ -244,7 +239,7 @@ stdenv.mkDerivation ({ ++ optionals javaAwtGtk [ gmp mpfr ]))); - passthru = { inherit langC langCC langAda langFortran langTreelang langVhdl + passthru = { inherit langC langCC langAda langFortran langVhdl enableMultilib version; }; # ghdl does not build fine with parallel building diff --git a/pkgs/development/compilers/gcc-4.5/default.nix b/pkgs/development/compilers/gcc-4.5/default.nix index 9d4aeaf01e1..8d3aa658ab3 100644 --- a/pkgs/development/compilers/gcc-4.5/default.nix +++ b/pkgs/development/compilers/gcc-4.5/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, noSysDirs -, langC ? true, langCC ? true, langFortran ? false, langTreelang ? false +, langC ? true, langCC ? true, langFortran ? false , langJava ? false , langAda ? false , langVhdl ? false @@ -11,7 +11,6 @@ , gmp, mpfr, mpc, gettext, which , libelf # optional, for link-time optimizations (LTO) , ppl ? null, cloogppl ? null # optional, for the Graphite optimization framework -, bison ? null, flex ? null , zlib ? null, boehmgc ? null , zip ? null, unzip ? null, pkgconfig ? null, gtk ? null, libart_lgpl ? null , libX11 ? null, libXt ? null, libSM ? null, libICE ? null, libXtst ? null @@ -29,7 +28,6 @@ , stripped ? true }: -assert langTreelang -> bison != null && flex != null; assert langJava -> zip != null && unzip != null && zlib != null && boehmgc != null && perl != null; # for `--enable-java-home' @@ -203,7 +201,6 @@ stdenv.mkDerivation ({ buildInputs = [ gmp mpfr mpc libelf gettext ] ++ (optional (ppl != null) ppl) ++ (optional (cloogppl != null) cloogppl) - ++ (optionals langTreelang [bison flex]) ++ (optional (zlib != null) zlib) ++ (optional (boehmgc != null) boehmgc) ++ (optionals langJava [zip unzip]) @@ -245,7 +242,6 @@ stdenv.mkDerivation ({ ++ optional langCC "c++" ++ optional langFortran "fortran" ++ optional langJava "java" - ++ optional langTreelang "treelang" ++ optional langAda "ada" ++ optional langVhdl "vhdl" ) @@ -292,7 +288,6 @@ stdenv.mkDerivation ({ ++ optional langCC "c++" ++ optional langFortran "fortran" ++ optional langJava "java" - ++ optional langTreelang "treelang" ++ optional langAda "ada" ++ optional langVhdl "vhdl" ) @@ -357,7 +352,7 @@ stdenv.mkDerivation ({ " -L${libpthreadCross}/lib -Wl,${libpthreadCross.TARGET_LDFLAGS}") else null; - passthru = { inherit langC langCC langAda langFortran langTreelang langVhdl + passthru = { inherit langC langCC langAda langFortran langVhdl enableMultilib version; }; enableParallelBuilding = true; diff --git a/pkgs/development/compilers/gcc-4.6/default.nix b/pkgs/development/compilers/gcc-4.6/default.nix index 6b484a09877..c28b885c680 100644 --- a/pkgs/development/compilers/gcc-4.6/default.nix +++ b/pkgs/development/compilers/gcc-4.6/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, noSysDirs -, langC ? true, langCC ? true, langFortran ? false, langTreelang ? false +, langC ? true, langCC ? true, langFortran ? false , langJava ? false , langAda ? false , langVhdl ? false @@ -12,7 +12,6 @@ , gmp, mpfr, mpc, gettext, which , libelf # optional, for link-time optimizations (LTO) , ppl ? null, cloogppl ? null, cloog ? null # optional, for the Graphite optimization framework. Cannot pass both cloog and cloogppl -, bison ? null, flex ? null , zlib ? null, boehmgc ? null , zip ? null, unzip ? null, pkgconfig ? null, gtk ? null, libart_lgpl ? null , libX11 ? null, libXt ? null, libSM ? null, libICE ? null, libXtst ? null @@ -30,7 +29,6 @@ , stripped ? true }: -assert langTreelang -> bison != null && flex != null; assert langJava -> zip != null && unzip != null && zlib != null && boehmgc != null && perl != null; # for `--enable-java-home' @@ -209,7 +207,6 @@ stdenv.mkDerivation ({ ++ (optional (ppl != null) ppl) ++ (optional (cloogppl != null) cloogppl) ++ (optional (cloog != null) cloog) - ++ (optionals langTreelang [bison flex]) ++ (optional (zlib != null) zlib) ++ (optionals langJava [ boehmgc zip unzip ]) ++ (optionals javaAwtGtk [gtk pkgconfig libart_lgpl] ++ xlibs) @@ -252,7 +249,6 @@ stdenv.mkDerivation ({ ++ optional langCC "c++" ++ optional langFortran "fortran" ++ optional langJava "java" - ++ optional langTreelang "treelang" ++ optional langAda "ada" ++ optional langVhdl "vhdl" ++ optional langGo "go" @@ -306,7 +302,6 @@ stdenv.mkDerivation ({ ++ optional langCC "c++" ++ optional langFortran "fortran" ++ optional langJava "java" - ++ optional langTreelang "treelang" ++ optional langAda "ada" ++ optional langVhdl "vhdl" ++ optional langGo "go" @@ -372,7 +367,7 @@ stdenv.mkDerivation ({ " -L${libpthreadCross}/lib -Wl,${libpthreadCross.TARGET_LDFLAGS}") else null; - passthru = { inherit langC langCC langAda langFortran langTreelang langVhdl + passthru = { inherit langC langCC langAda langFortran langVhdl langGo enableMultilib version; }; enableParallelBuilding = true; From 9c37762551a5edba9d13f04082245d288ab3f4dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Thu, 1 Sep 2011 13:24:51 +0000 Subject: [PATCH 35/95] util-linux-ng failed to build without zlib. svn path=/nixpkgs/branches/stdenv-updates/; revision=28955 --- pkgs/os-specific/linux/util-linux-ng/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/util-linux-ng/default.nix b/pkgs/os-specific/linux/util-linux-ng/default.nix index 4e62be4ff32..ba9ae72b73a 100644 --- a/pkgs/os-specific/linux/util-linux-ng/default.nix +++ b/pkgs/os-specific/linux/util-linux-ng/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, ncurses ? null, perl ? null }: +{ stdenv, fetchurl, zlib, ncurses ? null, perl ? null }: stdenv.mkDerivation rec { name = "util-linux-ng-2.18"; @@ -19,6 +19,6 @@ stdenv.mkDerivation rec { ${if ncurses == null then "--without-ncurses" else ""} ''; - buildInputs = stdenv.lib.optional (ncurses != null) ncurses + buildInputs = [ zlib ] ++ stdenv.lib.optional (ncurses != null) ncurses ++ stdenv.lib.optional (perl != null) perl; } From bff99fe8b52c5a0c19bc298b86549a470c578fb3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Thu, 1 Sep 2011 14:28:13 +0000 Subject: [PATCH 36/95] Making gcc 4.6 that of stdenv. svn path=/nixpkgs/branches/stdenv-updates/; revision=28958 --- pkgs/stdenv/linux/default.nix | 7 +++++-- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index ce10399eb5d..315c0895d20 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -218,10 +218,13 @@ rec { static = true; }; }; - cloogppl = stdenvLinuxBoot3Pkgs.cloogppl.override { - inherit ppl; + cloog = stdenvLinuxBoot3Pkgs.cloog.override { + isl = stdenvLinuxBoot3Pkgs.isl.override { + static = true; + }; static = true; }; + cloogppl = null; }); # 8) Construct a fourth stdenv identical to the second, except that diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3fec298e6ae..4dbc58aa27d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1642,7 +1642,7 @@ let gambit = callPackage ../development/compilers/gambit { }; - gcc = gcc45; + gcc = gcc46; gcc295 = wrapGCC (import ../development/compilers/gcc-2.95 { inherit fetchurl stdenv noSysDirs; From befe2926a864f66963a2f62fd52a60549fc305cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Thu, 1 Sep 2011 17:37:50 +0000 Subject: [PATCH 37/95] Binutils 2.21 tarball is away from the mirrors. I guess we should take 2.21a. svn path=/nixpkgs/branches/stdenv-updates/; revision=28959 --- pkgs/development/tools/misc/binutils/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index 679a10a517d..c937176f74a 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -1,14 +1,14 @@ { stdenv, fetchurl, noSysDirs, zlib, cross ? null, gold ? false, bison ? null, flex2535 ? null, bc ? null, dejagnu ? null }: let - basename = "binutils-2.21"; + basename = "binutils-2.21a"; in stdenv.mkDerivation rec { name = basename + stdenv.lib.optionalString (cross != null) "-${cross.config}"; src = fetchurl { url = "mirror://gnu/binutils/${basename}.tar.bz2"; - sha256 = "1iyhc42zfa0j2gaxy4zvpk47sdqj4rqvib0mb8597ss8yidyrav0"; + sha256 = "0m7nmd7gc9d9md43wbrv65hz6lbi2crqwryzpigv19ray1lzmv6d"; }; patches = [ From 58fedb26b45afe15a19f620bc6e5cd2b12a6195c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Thu, 1 Sep 2011 17:38:05 +0000 Subject: [PATCH 38/95] (binutils in the previous commit) I meant 2.21.1a svn path=/nixpkgs/branches/stdenv-updates/; revision=28960 --- pkgs/development/tools/misc/binutils/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index c937176f74a..508acd0199a 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, noSysDirs, zlib, cross ? null, gold ? false, bison ? null, flex2535 ? null, bc ? null, dejagnu ? null }: let - basename = "binutils-2.21a"; + basename = "binutils-2.21.1a"; in stdenv.mkDerivation rec { name = basename + stdenv.lib.optionalString (cross != null) "-${cross.config}"; From 006c7c854a95db3497b61c3f80ba58ed29ed5d85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Thu, 1 Sep 2011 17:38:55 +0000 Subject: [PATCH 39/95] Adding a patch for libxcrypt that could make it build for gcc 4.6. Untested; I only looked at the hydra log. svn path=/nixpkgs/branches/stdenv-updates/; revision=28961 --- .../libraries/libxcrypt/default.nix | 3 +++ .../libraries/libxcrypt/gcc46.patch | 18 ++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 pkgs/development/libraries/libxcrypt/gcc46.patch diff --git a/pkgs/development/libraries/libxcrypt/default.nix b/pkgs/development/libraries/libxcrypt/default.nix index aea9e53eef6..b2c9a2c9cf5 100644 --- a/pkgs/development/libraries/libxcrypt/default.nix +++ b/pkgs/development/libraries/libxcrypt/default.nix @@ -11,4 +11,7 @@ stdenv.mkDerivation { url = ftp://ftp.suse.com/pub/people/kukuk/libxcrypt/libxcrypt-3.0.2.tar.bz2; sha256 = "15l2xvhi3r3b40x4665c101ikylh5xsbpw03gnszypfjgn1jkcii"; }; + + patches = [ ./gcc46.patch ]; + } diff --git a/pkgs/development/libraries/libxcrypt/gcc46.patch b/pkgs/development/libraries/libxcrypt/gcc46.patch new file mode 100644 index 00000000000..0664f96aa68 --- /dev/null +++ b/pkgs/development/libraries/libxcrypt/gcc46.patch @@ -0,0 +1,18 @@ +For gcc 4.6 to build this. Otherwise it says 's unused variable', and it's built +with -Werror. + +diff --git a/src/cert.c b/src/cert.c +index 28c7b11..34570a4 100644 +--- a/src/cert.c ++++ b/src/cert.c +@@ -87,9 +87,7 @@ char *cp; + int i,j,t; + + for(i=0;i<8;i++){ +- int s; +- +- s = scanf("%2x",&t); ++ scanf("%2x",&t); + if(feof(stdin)) + good_bye(); + for(j=0; j<8 ; j++) { From 306b85df733c571fde3bfdab32dae3b6429298bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Thu, 1 Sep 2011 19:26:19 +0000 Subject: [PATCH 40/95] Updating the glibc ports to 2.13. This should fix https://bugs.gentoo.org/show_bug.cgi?id=356599 (that I found bootstrapping this stdenv in armv5tel) svn path=/nixpkgs/branches/stdenv-updates/; revision=28967 --- pkgs/development/libraries/glibc-2.13/common.nix | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/glibc-2.13/common.nix b/pkgs/development/libraries/glibc-2.13/common.nix index c6ea06cc117..15941c2a43b 100644 --- a/pkgs/development/libraries/glibc-2.13/common.nix +++ b/pkgs/development/libraries/glibc-2.13/common.nix @@ -20,9 +20,8 @@ let else needsPortsCross; srcPorts = fetchurl { - # These should work equally well for 2.13 - url = "mirror://gnu/glibc/glibc-ports-2.12.1.tar.bz2"; - sha256 = "041ix0nq7nc5r7jf80jsdlw4idah2mjp5nf7khybhc4cs1kc31ir"; + url = "mirror://gnu/glibc/glibc-ports-2.13.tar.bz2"; + sha256 = "0npffql62m1xba15l1wkaqf2p0l2bvb33720gx28764jmq0la75i"; }; in From 8715ac105ba2cd54db8f2dcab200963d76c89913 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Sun, 11 Sep 2011 18:58:24 +0000 Subject: [PATCH 41/95] GNU Coreutils 8.13 svn path=/nixpkgs/branches/stdenv-updates/; revision=29191 --- pkgs/tools/misc/coreutils/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index 4db9df46721..f21f97a18a2 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, perl, gmp ? null +{ stdenv, fetchurl, perl, xz, gmp ? null , aclSupport ? false, acl ? null , selinuxSupport? false, libselinux ? null, libsepol ? null }: @@ -6,14 +6,14 @@ assert aclSupport -> acl != null; assert selinuxSupport -> ( (libselinux != null) && (libsepol != null) ); stdenv.mkDerivation (rec { - name = "coreutils-8.10"; + name = "coreutils-8.13"; src = fetchurl { - url = "mirror://gnu/coreutils/${name}.tar.gz"; - sha256 = "11fr0hkdk9h7a5ggpp3hj45ryvq3gc8ri2kksbgn7v8rjmp1x1jb"; + url = "mirror://gnu/coreutils/${name}.tar.xz"; + sha256 = "06xc4jfkr5h8pc6wq14ncihapf5chcwvvcjvpwkby1ngw0xbxz8b"; }; - buildNativeInputs = [ perl ]; + buildNativeInputs = [ perl xz ]; buildInputs = [ gmp ] ++ stdenv.lib.optional aclSupport acl ++ stdenv.lib.optional selinuxSupport libselinux From 99863cb87b3231e6bfef139a7b54c35f6aa63a16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Wed, 21 Sep 2011 06:18:23 +0000 Subject: [PATCH 42/95] Making bison 2.4 and 2.5 cross build (I hope), and setting the main bison as 2.5. Let's see what builds and what not. svn path=/nixpkgs/branches/stdenv-updates/; revision=29406 --- pkgs/development/tools/parsing/bison/bison-2.4.nix | 3 ++- pkgs/development/tools/parsing/bison/bison-2.5.nix | 3 ++- pkgs/top-level/all-packages.nix | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/parsing/bison/bison-2.4.nix b/pkgs/development/tools/parsing/bison/bison-2.4.nix index 61ce9b895db..8fda9e3a087 100644 --- a/pkgs/development/tools/parsing/bison/bison-2.4.nix +++ b/pkgs/development/tools/parsing/bison/bison-2.4.nix @@ -8,7 +8,8 @@ stdenv.mkDerivation rec { sha256 = "019s3pdzggb71g7p7dgajhh53gh0h6nfl4yrzrs0jzsc37ph4lwk"; }; - buildInputs = [m4]; + buildNativeInputs = [m4]; + propagatedBuildInputs = [m4]; doCheck = true; diff --git a/pkgs/development/tools/parsing/bison/bison-2.5.nix b/pkgs/development/tools/parsing/bison/bison-2.5.nix index e373a80e46d..87753d472f3 100644 --- a/pkgs/development/tools/parsing/bison/bison-2.5.nix +++ b/pkgs/development/tools/parsing/bison/bison-2.5.nix @@ -8,8 +8,9 @@ stdenv.mkDerivation rec { sha256 = "1f1rai3v6k6xjii94964iq0alhc2hxwapqa363nfj8rbxvv0sdqa"; }; - buildInputs = [ m4 ] + buildNativeInputs = [ m4 ] ++ stdenv.lib.optional doCheck perl; + propagatedBuildInputs = [ m4 ]; doCheck = true; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4dbc58aa27d..4c333d95ee6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2706,7 +2706,7 @@ let cross = assert crossSystem != null; crossSystem; }); - bison = bison24; + bison = bison25; bison1875 = callPackage ../development/tools/parsing/bison/bison-1.875.nix { }; From 6a1bde84dc45349c9b3dcc6e8a1a519b7e9f6360 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sat, 24 Sep 2011 08:06:47 +0000 Subject: [PATCH 43/95] pkgs/shells/bash/default.nix: don't install bash completion in non-interactive mode This patch removes the kludge introduced in trunk to avoid a stdenv rebuild. svn path=/nixpkgs/branches/stdenv-updates/; revision=29469 --- pkgs/shells/bash/default.nix | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/pkgs/shells/bash/default.nix b/pkgs/shells/bash/default.nix index 684fc67ed1a..529c7334b49 100644 --- a/pkgs/shells/bash/default.nix +++ b/pkgs/shells/bash/default.nix @@ -51,15 +51,7 @@ stdenv.mkDerivation rec { postInstall = '' # Add an `sh' -> `bash' symlink. ln -s bash "$out/bin/sh" - - '' + (if interactive then "" else '' - # Install the completion examples. - ensureDir "$out/etc" - cp -v "examples/complete/bash_completion" "$out/etc" - - ensureDir "$out/etc/bash_completion.d" - cp -v "examples/complete/complete.gnu-longopt" "$out/etc/bash_completion.d" - ''); + ''; meta = { homepage = http://www.gnu.org/software/bash/; From e460e459bf3717ddda80c6be1f5e608d79a8ad9e Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 28 Sep 2011 19:26:00 +0000 Subject: [PATCH 44/95] synchronize with trunk svn path=/nixpkgs/branches/stdenv-updates/; revision=29531 --- .../networking/browsers/opera/builder.sh | 39 --------- .../networking/browsers/opera/default.nix | 87 +++++++++++++------ .../libraries/haskell/criterion/default.nix | 10 +-- .../haskell/happstack/happstack-util.nix | 4 +- pkgs/development/libraries/icu/default.nix | 4 +- .../tools/haskell/hlint/default.nix | 4 +- pkgs/top-level/all-packages.nix | 4 +- 7 files changed, 75 insertions(+), 77 deletions(-) delete mode 100644 pkgs/applications/networking/browsers/opera/builder.sh diff --git a/pkgs/applications/networking/browsers/opera/builder.sh b/pkgs/applications/networking/browsers/opera/builder.sh deleted file mode 100644 index de4a413e4ac..00000000000 --- a/pkgs/applications/networking/browsers/opera/builder.sh +++ /dev/null @@ -1,39 +0,0 @@ -source $stdenv/setup - -buildPhase() { - true -} - -installPhase() { - substituteInPlace install --replace /bin/pwd pwd - substituteInPlace install --replace /usr/local "$out" - - # Note: the "no" is because the install scripts asks whether we - # want to install icons in some system-wide directories. - - ensureDir "$out" - - ./install --text --system - - [ -z ${system##*64*} ] && suf=64 - - find $out -type f | while read f; do - echo testing "$f" - # patch all executables - if readelf -h "$f" | grep 'EXEC (Executable file)' &> /dev/null; then - echo "patching $f <<" - patchelf \ - --set-interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \ - --set-rpath "$libPath" \ - "$f" - fi - done - - # Substitute pwd as late as possible so that the md5 checksum check of opera passes. - substituteInPlace $out/bin/opera --replace /bin/pwd pwd - - ensureDir $out/share/applications - cp $desktopItem/share/applications/* $out/share/applications -} - -genericBuild diff --git a/pkgs/applications/networking/browsers/opera/default.nix b/pkgs/applications/networking/browsers/opera/default.nix index 8b7ef628044..3dddc856963 100644 --- a/pkgs/applications/networking/browsers/opera/default.nix +++ b/pkgs/applications/networking/browsers/opera/default.nix @@ -1,46 +1,81 @@ -{ stdenv, fetchurl, qt, zlib, libX11, libXext, libSM, libICE, libXt, glibc -, makeDesktopItem, freetype, fontconfig, libXft, libXrender +{ stdenv, fetchurl, zlib, libX11, libXext, libSM, libICE, libXt +, freetype, fontconfig, libXft, libXrender, libxcb, expat, libXau, libXdmcp +, libuuid, cups, xz +, gstreamer, gstPluginsBase, libxml2 +, gtkSupport ? true, glib, gtk, pango, gdk_pixbuf, cairo, atk +, kdeSupport ? false, qt4, kdelibs }: -assert stdenv.isLinux && stdenv.gcc.gcc != null; +assert stdenv.isLinux && stdenv.gcc.gcc != null && stdenv.gcc.libc != null; + +let + mirror = ftp://ftp.ussg.iu.edu/pub/opera; +in stdenv.mkDerivation rec { - name = "opera-10.63"; + name = "opera-11.51-1087"; - builder = ./builder.sh; + buildNativeInputs = [ xz ]; src = if stdenv.system == "i686-linux" then fetchurl { - url = "http://mirror.liteserver.nl/pub/opera/linux/1063/opera-10.63-6450.i386.linux.tar.bz2"; - sha256 = "dd105d602a4b8897749a4cb9610f8bfe2d07d4f4cc9bf3905930c65592737259"; + url = "${mirror}/linux/1151/${name}.i386.linux.tar.bz2"; + sha256 = "1baaim404g8nwd7knbl1p1ardpx36ib5159nkvqfnnavfyhkinp2"; } else if stdenv.system == "x86_64-linux" then fetchurl { - url = "http://mirror.liteserver.nl/pub/opera/linux/1063/opera-10.63-6450.x86_64.linux.tar.bz2"; - sha256 = "da8ae14cf317364ab0295102220246b205bf30c59c00cadb571395c90dda7c74"; + url = "${mirror}/linux/1151/${name}.x86_64.linux.tar.xz"; + sha256 = "1bciqyfhhdywaasj717by1a975ywf672r3pv9cw9bn0b90pgp933"; } else throw "Opera is not supported on ${stdenv.system} (only i686-linux and x86_64 linux are supported)"; dontStrip = 1; - - # `operapluginwrapper' requires libXt. Adding it makes startup faster - # and omits error messages (on x86). - libPath = - let list = [ stdenv.gcc.gcc glibc qt zlib libX11 libXt libXext libSM libICE libXft freetype fontconfig - libXrender]; - in stdenv.lib.makeLibraryPath list - + ":" + (if stdenv.system == "x86_64-linux" then stdenv.lib.makeSearchPath "lib64" list else ""); - desktopItem = makeDesktopItem { - name = "Opera"; - exec = "opera"; - icon = "opera"; - comment = "Opera Web Browser"; - desktopName = "Opera"; - genericName = "Web Browser"; - categories = "Application;Network;"; - }; + phases = "unpackPhase installPhase fixupPhase"; + + installPhase = '' + ./install --unattended --prefix $out + ''; + + buildInputs = + [ stdenv.gcc.gcc stdenv.gcc.libc zlib libX11 libXt libXext libSM libICE + libXft freetype fontconfig libXrender libuuid expat + gstreamer libxml2 gstPluginsBase + ] + ++ stdenv.lib.optionals gtkSupport [ glib gtk pango gdk_pixbuf cairo atk ] + ++ stdenv.lib.optionals kdeSupport [ kdelibs qt4 ]; + + libPath = stdenv.lib.makeLibraryPath buildInputs + + stdenv.lib.optionalString (stdenv.system == "x86_64-linux") + (":" + stdenv.lib.makeSearchPath "lib64" buildInputs); + + preFixup = + '' + find $out/lib/opera -type f | while read f; do + type=$(readelf -h "$f" 2>/dev/null | grep 'Type:' | sed -e 's/ *Type: *\([A-Z]*\) (.*/\1/') + if [ -z "$type" ]; then + : + elif [ $type == "EXEC" ]; then + echo "patching $f executable <<" + patchelf \ + --set-interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \ + --set-rpath "${libPath}" \ + "$f" + elif [ $type == "DYN" ]; then + echo "patching $f library <<" + patchelf --set-rpath "${libPath}" "$f" + else + echo "Unknown type $type" + exit 1 + fi + done + ''; + + postFixup = '' + oldRPATH=`patchelf --print-rpath $out/lib/opera/opera` + patchelf --set-rpath $oldRPATH:${cups}/lib $out/lib/opera/opera + ''; meta = { homepage = http://www.opera.com; diff --git a/pkgs/development/libraries/haskell/criterion/default.nix b/pkgs/development/libraries/haskell/criterion/default.nix index 0a7f23a38ac..f567569a6f6 100644 --- a/pkgs/development/libraries/haskell/criterion/default.nix +++ b/pkgs/development/libraries/haskell/criterion/default.nix @@ -1,13 +1,13 @@ -{ cabal, deepseq, mtl, mwcRandom, parsec, statistics, time, vector -, vectorAlgorithms +{ cabal, aeson, deepseq, mtl, mwcRandom, parsec, statistics, time +, vector, vectorAlgorithms }: cabal.mkDerivation (self: { pname = "criterion"; - version = "0.5.0.10"; - sha256 = "0sd289s7wnyg0p37j327hv55aw4a18bdv56z26v4qi3j8p2fbpbj"; + version = "0.5.1.0"; + sha256 = "0v43dm1d84zvn32q89dq0nh4dvqr4r6fjdzwcjac0mjics3iy29d"; buildDepends = [ - deepseq mtl mwcRandom parsec statistics time vector + aeson deepseq mtl mwcRandom parsec statistics time vector vectorAlgorithms ]; meta = { diff --git a/pkgs/development/libraries/haskell/happstack/happstack-util.nix b/pkgs/development/libraries/haskell/happstack/happstack-util.nix index de4c1b9990c..faeb174f251 100644 --- a/pkgs/development/libraries/haskell/happstack/happstack-util.nix +++ b/pkgs/development/libraries/haskell/happstack/happstack-util.nix @@ -4,8 +4,8 @@ cabal.mkDerivation (self: { pname = "happstack-util"; - version = "6.0.0"; - sha256 = "06qla74kb58q0rvlfa9k16s4crnylq99hm80xx4phlddyzn0cy4z"; + version = "6.0.2"; + sha256 = "03qlnclpg72iflry1xlkd0sxqm6nybvx113la9r0cmsnz17y546a"; isLibrary = true; isExecutable = true; buildDepends = [ diff --git a/pkgs/development/libraries/icu/default.nix b/pkgs/development/libraries/icu/default.nix index c15bbe2491c..0474b79a847 100644 --- a/pkgs/development/libraries/icu/default.nix +++ b/pkgs/development/libraries/icu/default.nix @@ -2,7 +2,7 @@ let pname = "icu4c"; - version = "4.6"; + version = "4.8.1"; in stdenv.mkDerivation { @@ -11,7 +11,7 @@ stdenv.mkDerivation { src = fetchurl { url = "http://download.icu-project.org/files/${pname}/${version}/${pname}-" + (stdenv.lib.replaceChars ["."] ["_"] version) + "-src.tgz"; - sha256 = "1z6zklqdf6pq7fckk8ar4vmfrnw79bih6yc8gwc7k2vx2alav8dm"; + sha256 = "13zq190gl54zr84f0k48w9knarjsb966jkailyy06yhqjipcv90r"; }; postUnpack = " diff --git a/pkgs/development/tools/haskell/hlint/default.nix b/pkgs/development/tools/haskell/hlint/default.nix index da117157f22..be66cfc0680 100644 --- a/pkgs/development/tools/haskell/hlint/default.nix +++ b/pkgs/development/tools/haskell/hlint/default.nix @@ -2,8 +2,8 @@ cabal.mkDerivation (self: { pname = "hlint"; - version = "1.8.15"; - sha256 = "1hi2qapi8lb7cawjzvpknp8qvsnfw3glxyyd5m2lbp3rvkx0d6kr"; + version = "1.8.16"; + sha256 = "0crahq7fvhf0qvjcpjnmv5yh29l52cv7rgfwrc6ka4q0dm9r49vb"; isLibrary = true; isExecutable = true; buildDepends = [ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b32b7f90a90..d38892e23a2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7069,7 +7069,9 @@ let }; opera = callPackage ../applications/networking/browsers/opera { - qt = qt3; + inherit (pkgs.gtkLibs) gdk_pixbuf atk; + inherit (pkgs.kde4) kdelibs; + inherit (pkgs.gst_all) gstreamer gstPluginsBase; }; pan = callPackage ../applications/networking/newsreaders/pan { From ad076fc3d584f6eadbf5db696a826835e050c31f Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Thu, 29 Sep 2011 21:48:33 +0000 Subject: [PATCH 45/95] shells/bash/4.1,2.nix have been replaced by default.nix svn path=/nixpkgs/branches/stdenv-updates/; revision=29542 --- pkgs/top-level/all-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d38892e23a2..2234f65fcee 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1591,11 +1591,11 @@ let ### SHELLS - bash = lowPrio (callPackage ../shells/bash/4.1.nix { + bash = lowPrio (callPackage ../shells/bash { texinfo = null; }); - bashInteractive = appendToName "interactive" (callPackage ../shells/bash/4.2.nix { + bashInteractive = appendToName "interactive" (callPackage ../shells/bash { interactive = true; }); From 024a629e271c3ebad062a27b0cadab29265fe224 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Fri, 30 Sep 2011 15:29:30 +0000 Subject: [PATCH 46/95] Set the M4 env var, for some reason configure can't find it even though it's in PATH svn path=/nixpkgs/branches/stdenv-updates/; revision=29545 --- pkgs/development/tools/parsing/bison/bison-2.5.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/tools/parsing/bison/bison-2.5.nix b/pkgs/development/tools/parsing/bison/bison-2.5.nix index 87753d472f3..98c465a185c 100644 --- a/pkgs/development/tools/parsing/bison/bison-2.5.nix +++ b/pkgs/development/tools/parsing/bison/bison-2.5.nix @@ -12,6 +12,8 @@ stdenv.mkDerivation rec { ++ stdenv.lib.optional doCheck perl; propagatedBuildInputs = [ m4 ]; + M4 = "m4"; + doCheck = true; meta = { From dcef7ad3bf309af208e205c1224cfd1654cbef4b Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Fri, 30 Sep 2011 15:34:37 +0000 Subject: [PATCH 47/95] Have the kernel headers be a linuxPackage, use the current linuxPackage's headers svn path=/nixpkgs/branches/stdenv-updates/; revision=29546 --- .../linux/kernel-headers/default.nix | 59 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 +- 2 files changed, 62 insertions(+), 1 deletion(-) create mode 100644 pkgs/os-specific/linux/kernel-headers/default.nix diff --git a/pkgs/os-specific/linux/kernel-headers/default.nix b/pkgs/os-specific/linux/kernel-headers/default.nix new file mode 100644 index 00000000000..bb2e6a28803 --- /dev/null +++ b/pkgs/os-specific/linux/kernel-headers/default.nix @@ -0,0 +1,59 @@ +{stdenv, fetchurl, perl, cross ? null, kernel}: + +assert cross == null -> stdenv.isLinux; + +let + version = kernel.version; + kernelHeadersBaseConfig = if (cross == null) then + stdenv.platform.kernelHeadersBaseConfig + else + cross.platform.kernelHeadersBaseConfig; +in + +stdenv.mkDerivation { + name = "linux-headers-${version}"; + + src = kernel.src; + + targetConfig = if (cross != null) then cross.config else null; + + platform = + if cross != null then cross.platform.kernelArch else + if stdenv.system == "i686-linux" then "i386" else + if stdenv.system == "x86_64-linux" then "x86_64" else + if stdenv.system == "powerpc-linux" then "powerpc" else + if stdenv.system == "armv5tel-linux" then "arm" else + if stdenv.platform ? kernelArch then stdenv.platform.kernelArch else + abort "don't know what the kernel include directory is called for this platform"; + + buildInputs = [perl]; + + extraIncludeDirs = + if cross != null then + (if cross.arch == "powerpc" then ["ppc"] else []) + else if stdenv.system == "powerpc-linux" then ["ppc"] else []; + + buildPhase = '' + if test -n "$targetConfig"; then + export ARCH=$platform + fi + make ${kernelHeadersBaseConfig} + make mrproper headers_check + ''; + + installPhase = '' + make INSTALL_HDR_PATH=$out headers_install + + # Some builds (e.g. KVM) want a kernel.release. + ensureDir $out/include/config + echo "${version}-default" > $out/include/config/kernel.release + ''; + + # !!! hacky + fixupPhase = '' + ln -s asm $out/include/asm-$platform + if test "$platform" = "i386" -o "$platform" = "x86_64"; then + ln -s asm $out/include/asm-x86 + fi + ''; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2234f65fcee..3c30c879ea2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5242,7 +5242,7 @@ let libnl1 = callPackage ../os-specific/linux/libnl/v1.nix { }; - linuxHeaders = linuxHeaders_2_6_32; + linuxHeaders = linuxPackages.kernelHeaders; linuxHeaders26Cross = forceBuildDrv (import ../os-specific/linux/kernel-headers/2.6.32.nix { inherit stdenv fetchurl perl; @@ -5627,6 +5627,8 @@ let broadcom_sta = callPackage ../os-specific/linux/broadcom-sta/default.nix { }; + kernelHeaders = callPackage ../os-specific/linux/kernel-headers { }; + nvidia_x11 = callPackage ../os-specific/linux/nvidia-x11 { }; nvidia_x11_legacy96 = callPackage ../os-specific/linux/nvidia-x11/legacy96.nix { }; From c10d43d3bd6ec003dcfe9567122c749641a9345c Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Fri, 30 Sep 2011 15:37:35 +0000 Subject: [PATCH 48/95] Enable setting the headersSrc so the default kernel can be updated without rebuilding stdenv svn path=/nixpkgs/branches/stdenv-updates/; revision=29547 --- pkgs/os-specific/linux/kernel-headers/default.nix | 2 +- pkgs/os-specific/linux/kernel/generic.nix | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel-headers/default.nix b/pkgs/os-specific/linux/kernel-headers/default.nix index bb2e6a28803..7153e730a4a 100644 --- a/pkgs/os-specific/linux/kernel-headers/default.nix +++ b/pkgs/os-specific/linux/kernel-headers/default.nix @@ -13,7 +13,7 @@ in stdenv.mkDerivation { name = "linux-headers-${version}"; - src = kernel.src; + src = kernel.headersSrc; targetConfig = if (cross != null) then cross.config else null; diff --git a/pkgs/os-specific/linux/kernel/generic.nix b/pkgs/os-specific/linux/kernel/generic.nix index a86aef1af8e..355f0c9c5ba 100644 --- a/pkgs/os-specific/linux/kernel/generic.nix +++ b/pkgs/os-specific/linux/kernel/generic.nix @@ -3,6 +3,9 @@ , # The kernel source tarball. src +, # The kernel headers source tarball. + headersSrc ? src + , # The kernel version. version @@ -69,7 +72,7 @@ stdenv.mkDerivation { enableParallelBuilding = true; passthru = { - inherit version modDirVersion; + inherit version modDirVersion headersSrc; # Combine the `features' attribute sets of all the kernel patches. features = lib.fold (x: y: (if x ? features then x.features else {}) // y) features kernelPatches; }; From 1a7554562f516cef17a7fdb0258e5f1f7f738d14 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Fri, 30 Sep 2011 15:39:47 +0000 Subject: [PATCH 49/95] Enable setting the headersVersion so the default kernel can be updated without rebuilding stdenv svn path=/nixpkgs/branches/stdenv-updates/; revision=29548 --- pkgs/os-specific/linux/kernel-headers/default.nix | 2 +- pkgs/os-specific/linux/kernel/generic.nix | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/kernel-headers/default.nix b/pkgs/os-specific/linux/kernel-headers/default.nix index 7153e730a4a..d2c6bf9d700 100644 --- a/pkgs/os-specific/linux/kernel-headers/default.nix +++ b/pkgs/os-specific/linux/kernel-headers/default.nix @@ -3,7 +3,7 @@ assert cross == null -> stdenv.isLinux; let - version = kernel.version; + version = kernel.headersVersion; kernelHeadersBaseConfig = if (cross == null) then stdenv.platform.kernelHeadersBaseConfig else diff --git a/pkgs/os-specific/linux/kernel/generic.nix b/pkgs/os-specific/linux/kernel/generic.nix index 355f0c9c5ba..6ed8164f341 100644 --- a/pkgs/os-specific/linux/kernel/generic.nix +++ b/pkgs/os-specific/linux/kernel/generic.nix @@ -9,6 +9,9 @@ , # The kernel version. version +, # The kernel headers version. + headersVersion ? version + , # The version number used for the module directory modDirVersion ? version @@ -72,7 +75,7 @@ stdenv.mkDerivation { enableParallelBuilding = true; passthru = { - inherit version modDirVersion headersSrc; + inherit version modDirVersion headersSrc headersVersion; # Combine the `features' attribute sets of all the kernel patches. features = lib.fold (x: y: (if x ? features then x.features else {}) // y) features kernelPatches; }; From d3cf97b56ed237a7033194850b7a324d039abf2d Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Sat, 1 Oct 2011 22:25:28 +0000 Subject: [PATCH 50/95] Cleaner decoupling of glibc and linuxPackages while keeping kernelHeaders a linuxPackage and having a single default.nix for kernelHeaders svn path=/nixpkgs/branches/stdenv-updates/; revision=29554 --- pkgs/os-specific/linux/kernel-headers/default.nix | 4 ++-- pkgs/os-specific/linux/kernel/generic.nix | 8 +------- pkgs/top-level/all-packages.nix | 11 ++++++++++- 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/pkgs/os-specific/linux/kernel-headers/default.nix b/pkgs/os-specific/linux/kernel-headers/default.nix index d2c6bf9d700..bb2e6a28803 100644 --- a/pkgs/os-specific/linux/kernel-headers/default.nix +++ b/pkgs/os-specific/linux/kernel-headers/default.nix @@ -3,7 +3,7 @@ assert cross == null -> stdenv.isLinux; let - version = kernel.headersVersion; + version = kernel.version; kernelHeadersBaseConfig = if (cross == null) then stdenv.platform.kernelHeadersBaseConfig else @@ -13,7 +13,7 @@ in stdenv.mkDerivation { name = "linux-headers-${version}"; - src = kernel.headersSrc; + src = kernel.src; targetConfig = if (cross != null) then cross.config else null; diff --git a/pkgs/os-specific/linux/kernel/generic.nix b/pkgs/os-specific/linux/kernel/generic.nix index 11aaf176891..af62125eb75 100644 --- a/pkgs/os-specific/linux/kernel/generic.nix +++ b/pkgs/os-specific/linux/kernel/generic.nix @@ -3,15 +3,9 @@ , # The kernel source tarball. src -, # The kernel headers source tarball. - headersSrc ? src - , # The kernel version. version -, # The kernel headers version. - headersVersion ? version - , # The version number used for the module directory modDirVersion ? version @@ -75,7 +69,7 @@ stdenv.mkDerivation { enableParallelBuilding = true; passthru = { - inherit version modDirVersion kernelPatches headersSrc headersVersion; + inherit version modDirVersion kernelPatches; # Combine the `features' attribute sets of all the kernel patches. features = lib.fold (x: y: (if x ? features then x.features else {}) // y) features kernelPatches; }; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 92fa24586c7..89a7a541aab 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5242,7 +5242,16 @@ let libnl1 = callPackage ../os-specific/linux/libnl/v1.nix { }; - linuxHeaders = linuxPackages.kernelHeaders; + linuxHeaders = + let + + kernel = { + src = linuxPackages.kernel.src; + version = linuxPackages.kernel.version; + }; + + in + callPackage ../os-specific/linux/kernel-headers { inherit kernel; }; linuxHeaders26Cross = forceBuildDrv (import ../os-specific/linux/kernel-headers/2.6.32.nix { inherit stdenv fetchurl perl; From 5bd43ca25f8d5dd101cee410a29956741e787c0a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 2 Oct 2011 20:35:40 +0000 Subject: [PATCH 51/95] GNU MPFR 3.0.1. svn path=/nixpkgs/branches/stdenv-updates/; revision=29586 --- pkgs/development/libraries/mpfr/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/mpfr/default.nix b/pkgs/development/libraries/mpfr/default.nix index 51d33f9593c..e2be5d75e8c 100644 --- a/pkgs/development/libraries/mpfr/default.nix +++ b/pkgs/development/libraries/mpfr/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, gmp}: stdenv.mkDerivation rec { - name = "mpfr-3.0.0"; + name = "mpfr-3.0.1"; src = fetchurl { url = "mirror://gnu/mpfr/${name}.tar.bz2"; - sha256 = "07w24h8by7n319p2vwwa1xdcg7qzkd1aqm84lfcbfv2kaff5yklg"; + sha256 = "0zwfwc9rn2sl3kpnr72fi1b8lh8c0mcmgy61y301jhs9pfcp15z1"; }; buildInputs = [ gmp ]; From 3e8b08d2fc30c754ef36aa860fbdb4a57da19eb3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 2 Oct 2011 20:35:44 +0000 Subject: [PATCH 52/95] GNU Ncurses 5.9. svn path=/nixpkgs/branches/stdenv-updates/; revision=29587 --- pkgs/development/libraries/ncurses/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 6e15dca01f3..d3b230e3121 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -11,11 +11,11 @@ let cxx = stdenv.system != "i386-sunos"; in stdenv.mkDerivation (rec { - name = "ncurses-5.7"; + name = "ncurses-5.9"; src = fetchurl { url = "mirror://gnu/ncurses/${name}.tar.gz"; - sha256 = "1x4q6kma6zgg438llbgiac3kik7j2lln9v97jdffv3fyqyjxx6qa"; + sha256 = "0fsn7xis81za62afan0vvm38bvgzg5wfmv1m86flqcj0nj7jjilh"; }; crossAttrs = { From 18962bfe6606316a7f46f2cc99d7df506d7913b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 2 Oct 2011 20:35:49 +0000 Subject: [PATCH 53/95] GNU M4 1.4.16. svn path=/nixpkgs/branches/stdenv-updates/; revision=29588 --- pkgs/development/tools/misc/gnum4/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/misc/gnum4/default.nix b/pkgs/development/tools/misc/gnum4/default.nix index df417c3e55e..47d8b51b82b 100644 --- a/pkgs/development/tools/misc/gnum4/default.nix +++ b/pkgs/development/tools/misc/gnum4/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl}: stdenv.mkDerivation { - name = "gnum4-1.4.15"; + name = "gnum4-1.4.16"; src = fetchurl { - url = mirror://gnu/m4/m4-1.4.15.tar.bz2; - sha256 = "1ygzshj4h6l6wh52vjqczkyahmv67r3yzi1m6nkh94qgndffmbqa"; + url = mirror://gnu/m4/m4-1.4.16.tar.bz2; + sha256 = "035r7ma272j2cwni2961jp22k6bn3n9xwn3b3qbcn2yrvlghql22"; }; doCheck = !stdenv.isDarwin; From 40f2ee920069739e8129867bbee37d881e1db6bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 2 Oct 2011 20:35:53 +0000 Subject: [PATCH 54/95] GNU tar 1.26. svn path=/nixpkgs/branches/stdenv-updates/; revision=29589 --- pkgs/tools/archivers/gnutar/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/archivers/gnutar/default.nix b/pkgs/tools/archivers/gnutar/default.nix index a38c7fcdd1e..ccd0d755e8c 100644 --- a/pkgs/tools/archivers/gnutar/default.nix +++ b/pkgs/tools/archivers/gnutar/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl}: stdenv.mkDerivation rec { - name = "gnutar-1.25"; + name = "gnutar-1.26"; src = fetchurl { - url = "mirror://gnu/tar/tar-1.25.tar.bz2"; - sha256 = "0js9b1jd93kjk6dgf40y2fpgpnix247rk5aws2mjgwz0p10wxxpk"; + url = "mirror://gnu/tar/tar-1.26.tar.bz2"; + sha256 = "0hbdkzmchq9ycr2x1pxqdcgdbaxksh8c6ac0jf75jajhcks6jlss"; }; meta = { From 14a86cfa3b6b10a4a4dd8ac4c3e563df6c5e0c88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 2 Oct 2011 20:35:57 +0000 Subject: [PATCH 55/95] GNU diffutils 3.2. svn path=/nixpkgs/branches/stdenv-updates/; revision=29590 --- pkgs/tools/text/diffutils/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/text/diffutils/default.nix b/pkgs/tools/text/diffutils/default.nix index 4fde88d9262..eae48f2e3a4 100644 --- a/pkgs/tools/text/diffutils/default.nix +++ b/pkgs/tools/text/diffutils/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, coreutils ? null}: stdenv.mkDerivation { - name = "diffutils-3.0"; + name = "diffutils-3.2"; src = fetchurl { - url = mirror://gnu/diffutils/diffutils-3.0.tar.gz; - sha256 = "02g8i6jv0j0vr5nl13ns50lv2dbjy9kkk8jvp11n0g5fpdjizf9g"; + url = mirror://gnu/diffutils/diffutils-3.2.tar.gz; + sha256 = "1lsf0ln0h3mnm2y0mwgrfk0lyfi7bnm4r886acvdrrsvc7pypaia"; }; /* If no explicit coreutils is given, use the one from stdenv. */ From 29d669037e5f058e349b90f3e1d8ea14f62f19ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 2 Oct 2011 20:36:01 +0000 Subject: [PATCH 56/95] GNU Awk 4.0.0. svn path=/nixpkgs/branches/stdenv-updates/; revision=29591 --- pkgs/tools/text/gawk/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/text/gawk/default.nix b/pkgs/tools/text/gawk/default.nix index c4f37f922c7..0c7e85cce4f 100644 --- a/pkgs/tools/text/gawk/default.nix +++ b/pkgs/tools/text/gawk/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, libsigsegv }: stdenv.mkDerivation rec { - name = "gawk-3.1.8"; + name = "gawk-4.0.0"; src = fetchurl { url = "mirror://gnu/gawk/${name}.tar.bz2"; - sha256 = "1d0jfh319w4h8l1zzqv248916wrc2add1b1aghri31rj9hn7pg2x"; + sha256 = "0sss7rhpvizi2a88h6giv0i7w5h07s2fxkw3s6n1hqvcnhrfgbb0"; }; doCheck = true; From 88dd456354524ae840e11ecf6ae213a75e7a4051 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 2 Oct 2011 20:36:06 +0000 Subject: [PATCH 57/95] GNU grep 2.9. svn path=/nixpkgs/branches/stdenv-updates/; revision=29592 --- pkgs/tools/text/gnugrep/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/text/gnugrep/default.nix b/pkgs/tools/text/gnugrep/default.nix index f06be1b7336..402d2413085 100644 --- a/pkgs/tools/text/gnugrep/default.nix +++ b/pkgs/tools/text/gnugrep/default.nix @@ -1,13 +1,13 @@ { stdenv, fetchurl, pcre, libiconv ? null}: -let version = "2.7"; in +let version = "2.9"; in stdenv.mkDerivation ({ name = "gnugrep-${version}"; src = fetchurl { url = "mirror://gnu/grep/grep-${version}.tar.gz"; - sha256 = "1b8vksfd1ngharac3ygaqim3lrf0yqap992sg0vfm7572l88655d"; + sha256 = "0w3r6m597p3qgfj6jj1nsggkwr5p38v6cxasfa8i3izcfan8w4g9"; }; buildInputs = [ pcre ] From 07b8c666f7dc09bc4ed7c50d6b176922f10214b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 2 Oct 2011 20:36:10 +0000 Subject: [PATCH 58/95] OpenCV: Add missing parameter. svn path=/nixpkgs/branches/stdenv-updates/; revision=29593 --- pkgs/development/libraries/opencv/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/opencv/default.nix b/pkgs/development/libraries/opencv/default.nix index e6d2cb260b1..46c170d33f9 100644 --- a/pkgs/development/libraries/opencv/default.nix +++ b/pkgs/development/libraries/opencv/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, cmake, gtk, libjpeg, libpng, libtiff, jasper, ffmpeg -, pkgconfig, gstreamer, xineLib }: +, pkgconfig, gstreamer, xineLib, glib }: let v = "2.3.1a"; in From 41d04539a66bd4e4f1fc46920021b01d16e337e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 3 Oct 2011 17:35:04 +0000 Subject: [PATCH 59/95] GNU Readline 6.2: Update patch set. svn path=/nixpkgs/branches/stdenv-updates/; revision=29603 --- .../readline/{readline-patches.nix => readline-6.2-patches.nix} | 1 + pkgs/development/libraries/readline/readline6.nix | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) rename pkgs/development/libraries/readline/{readline-patches.nix => readline-6.2-patches.nix} (52%) diff --git a/pkgs/development/libraries/readline/readline-patches.nix b/pkgs/development/libraries/readline/readline-6.2-patches.nix similarity index 52% rename from pkgs/development/libraries/readline/readline-patches.nix rename to pkgs/development/libraries/readline/readline-6.2-patches.nix index b8019fb3350..ae1e67224af 100644 --- a/pkgs/development/libraries/readline/readline-patches.nix +++ b/pkgs/development/libraries/readline/readline-6.2-patches.nix @@ -1,4 +1,5 @@ # Automatically generated by `update-patch-set.sh'; do not edit. patch: [ +(patch "001" "1qxl74f4n0hv4a807byrgbk4ixd8m50apj3922q2ss9pfi0nra1q") ] diff --git a/pkgs/development/libraries/readline/readline6.nix b/pkgs/development/libraries/readline/readline6.nix index c7abfa2bfb2..0a5c2d1b426 100644 --- a/pkgs/development/libraries/readline/readline6.nix +++ b/pkgs/development/libraries/readline/readline6.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation (rec { inherit sha256; }; in - import ./readline-patches.nix patch); + import ./readline-6.2-patches.nix patch); meta = { description = "GNU Readline, a library for interactive line editing"; From 21887cf61ecbfbc4bad5512ee6f76899069ca2d1 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 3 Oct 2011 18:40:12 +0000 Subject: [PATCH 60/95] we would like to test cups svn path=/nixpkgs/branches/stdenv-updates/; revision=29604 --- pkgs/top-level/release-small.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix index 68a287bbf5e..e7957a8a78e 100644 --- a/pkgs/top-level/release-small.nix +++ b/pkgs/top-level/release-small.nix @@ -41,6 +41,7 @@ with (import ./release-lib.nix); coreutils = all; cpio = all; cron = linux; + cups = linux; dhcp = linux; diffutils = all; e2fsprogs = linux; From eff71744ea4f20820440d6fa17ae91441e19022b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 3 Oct 2011 19:11:09 +0000 Subject: [PATCH 61/95] GNU Binutils: Fix URL. svn path=/nixpkgs/branches/stdenv-updates/; revision=29605 --- pkgs/development/tools/misc/binutils/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index b9a3f598c5c..0dcf46397a0 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { # {enter "anoncvs" as the password} # cvs -z 9 -d :pserver:anoncvs@sourceware.org:/cvs/src co cgen src = fetchurl { - url = "http://nixos.org/tarballs/${basename}.tar.bz2"; + url = "mirror://gnu/binutils/${basename}.tar.bz2"; sha256 = "0m7nmd7gc9d9md43wbrv65hz6lbi2crqwryzpigv19ray1lzmv6d"; }; From eaaaad52037936c379c0fbde293d2411c8ada498 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 3 Oct 2011 19:27:10 +0000 Subject: [PATCH 62/95] GNU Readline: Fix typo. svn path=/nixpkgs/branches/stdenv-updates/; revision=29606 --- pkgs/development/libraries/readline/readline6.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/readline/readline6.nix b/pkgs/development/libraries/readline/readline6.nix index 0a5c2d1b426..0826e6c5f7c 100644 --- a/pkgs/development/libraries/readline/readline6.nix +++ b/pkgs/development/libraries/readline/readline6.nix @@ -17,7 +17,7 @@ stdenv.mkDerivation (rec { (let patch = nr: sha256: fetchurl { - url = "mirror://gnu/readline/${name}-patches/readline61-${nr}"; + url = "mirror://gnu/readline/${name}-patches/readline62-${nr}"; inherit sha256; }; in From f74e361e453e8d96dda1ffc4323ad7fe5cd93f7b Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 3 Oct 2011 20:50:08 +0000 Subject: [PATCH 63/95] added myself as maintainer svn path=/nixpkgs/branches/stdenv-updates/; revision=29618 --- pkgs/misc/cups/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/misc/cups/default.nix b/pkgs/misc/cups/default.nix index 8a9efdedcf9..cc1157c022e 100644 --- a/pkgs/misc/cups/default.nix +++ b/pkgs/misc/cups/default.nix @@ -41,7 +41,7 @@ stdenv.mkDerivation { homepage = http://www.cups.org/; description = "A standards-based printing system for UNIX"; license = "GPLv2"; # actually LGPL for the library and GPL for the rest - maintainers = [ stdenv.lib.maintainers.urkud ]; + maintainers = [ stdenv.lib.maintainers.urkud stdenv.lib.maintainers.simons ]; platforms = stdenv.lib.platforms.linux; }; } From f68e44a602f63541f1f0458197ab64497ed32fb7 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 6 Oct 2011 09:57:32 +0000 Subject: [PATCH 64/95] cups: updated to version 1.5.0 svn path=/nixpkgs/branches/stdenv-updates/; revision=29681 --- pkgs/misc/cups/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/misc/cups/default.nix b/pkgs/misc/cups/default.nix index cc1157c022e..56461f2e858 100644 --- a/pkgs/misc/cups/default.nix +++ b/pkgs/misc/cups/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchurl, pkgconfig, zlib, libjpeg, libpng, libtiff, pam, openssl , dbus, libusb, acl }: -let version = "1.4.7"; in +let version = "1.5.0"; in stdenv.mkDerivation { name = "cups-${version}"; @@ -10,7 +10,7 @@ stdenv.mkDerivation { src = fetchurl { url = "http://ftp.easysw.com/pub/cups/${version}/cups-${version}-source.tar.bz2"; - sha256 = "1xlnkdqldq81pdqgisqbyh92k249bzz35m1f5bp4la06p00ksvjf"; + sha256 = "0czc0bmrm31jy03inm6w2mbr5s9q9xk6s1x5x4kddx2qlml9pyf6"; }; buildInputs = [ pkgconfig zlib libjpeg libpng libtiff pam dbus libusb acl ]; @@ -40,7 +40,7 @@ stdenv.mkDerivation { meta = { homepage = http://www.cups.org/; description = "A standards-based printing system for UNIX"; - license = "GPLv2"; # actually LGPL for the library and GPL for the rest + license = stdenv.lib.licenses.gpl2; # actually LGPL for the library and GPL for the rest maintainers = [ stdenv.lib.maintainers.urkud stdenv.lib.maintainers.simons ]; platforms = stdenv.lib.platforms.linux; }; From ba6cc24ca8c71787226964aaf9d7b0e9d7cd4284 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 6 Oct 2011 10:27:33 +0000 Subject: [PATCH 65/95] synchronize with trunk svn path=/nixpkgs/branches/stdenv-updates/; revision=29685 --- pkgs/development/libraries/cppunit/1.10.nix | 12 --------- .../development/libraries/cppunit/default.nix | 9 ++++++- .../libraries/cppunit/include-cstdlib.patch | 12 --------- pkgs/os-specific/linux/libsmbios/default.nix | 26 ++++++++++++------- pkgs/top-level/all-packages.nix | 1 - 5 files changed, 24 insertions(+), 36 deletions(-) delete mode 100644 pkgs/development/libraries/cppunit/1.10.nix delete mode 100644 pkgs/development/libraries/cppunit/include-cstdlib.patch diff --git a/pkgs/development/libraries/cppunit/1.10.nix b/pkgs/development/libraries/cppunit/1.10.nix deleted file mode 100644 index 546f2bbba1e..00000000000 --- a/pkgs/development/libraries/cppunit/1.10.nix +++ /dev/null @@ -1,12 +0,0 @@ -{stdenv, fetchurl}: - -stdenv.mkDerivation { - name = "cppunit-1.10.0"; - - src = fetchurl { - url = mirror://sf/cppunit/cppunit-1.10.0.tar.gz; - sha256 = "08w5ljd3rbz6wzipzxqx1ma779b6k930iwjrg4bckddigrq897bg"; - }; - - patches = [./include-cstdlib.patch]; -} diff --git a/pkgs/development/libraries/cppunit/default.nix b/pkgs/development/libraries/cppunit/default.nix index 5e55bd51bcd..dbbcf4388c5 100644 --- a/pkgs/development/libraries/cppunit/default.nix +++ b/pkgs/development/libraries/cppunit/default.nix @@ -2,9 +2,16 @@ stdenv.mkDerivation { name = "cppunit-1.12.0"; - + src = fetchurl { url = mirror://sf/cppunit/cppunit-1.12.0.tar.gz; sha256 = "07zyyx5dyai94y8r8va28971f5mw84mb93xx9pm6m4ddpj6c79cq"; }; + + meta = { + homepage = "http://sourceforge.net/apps/mediawiki/cppunit/"; + description = "C++ unit testing framework"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.simons ]; + }; } diff --git a/pkgs/development/libraries/cppunit/include-cstdlib.patch b/pkgs/development/libraries/cppunit/include-cstdlib.patch deleted file mode 100644 index 8a00c370ce2..00000000000 --- a/pkgs/development/libraries/cppunit/include-cstdlib.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -rc cppunit-1.10.0/src/cppunit/TypeInfoHelper.cpp cppunit-1.10.0-2/src/cppunit/TypeInfoHelper.cpp -*** cppunit-1.10.0/src/cppunit/TypeInfoHelper.cpp 2004-02-18 21:45:44.000000000 +0100 ---- cppunit-1.10.0-2/src/cppunit/TypeInfoHelper.cpp 2011-04-13 09:20:57.000000000 +0200 -*************** -*** 1,5 **** ---- 1,6 ---- - #include - #include -+ #include - - #if CPPUNIT_HAVE_RTTI - diff --git a/pkgs/os-specific/linux/libsmbios/default.nix b/pkgs/os-specific/linux/libsmbios/default.nix index 41b440a4898..7b7e1c96ab5 100644 --- a/pkgs/os-specific/linux/libsmbios/default.nix +++ b/pkgs/os-specific/linux/libsmbios/default.nix @@ -1,13 +1,16 @@ { stdenv, fetchurl, pkgconfig, libxml2, perl }: -stdenv.mkDerivation rec { - name = "libsmbios-2.2.19"; +let + name = "libsmbios-2.2.28"; +in +stdenv.mkDerivation { + inherit name; src = fetchurl { url = "http://linux.dell.com/libsmbios/download/libsmbios/${name}/${name}.tar.gz"; - sha256 = "0f4wnjml734ssg583r448ypax7vf3f9n8gybzvzg170lc3byayhv"; + sha256 = "03m0n834w49acwbf5cf9ync1ksnn2jkwaysvy7584y60qpmngb91"; }; - + buildInputs = [ pkgconfig libxml2 perl ]; # It tries to install some Python stuff even when Python is disabled. @@ -16,13 +19,16 @@ stdenv.mkDerivation rec { # It forgets to install headers. postInstall = '' - cp -a src/include/* $out/include - cp -a out/public-include/* $out/include - ''; # */ + cp -va "src/include/"* "$out/include/" + cp -va "out/public-include/"* "$out/include/" + ''; meta = { - homepage = http://linux.dell.com/libsmbios/main/index.html; - description = "A library to obtain BIOS information"; - license = "GPLv2+"; # alternatively, under the Open Software License version 2.1 + homepage = "http://linux.dell.com/libsmbios/main"; + description = "a library to obtain BIOS information"; + license = stdenv.lib.licenses.gpl2Plus; # alternatively, under the Open Software License version 2.1 + + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.simons ]; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d2718d53b63..6ecbe6fadc7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3178,7 +3178,6 @@ let ctl = callPackage ../development/libraries/ctl { }; cppunit = callPackage ../development/libraries/cppunit { }; - cppunit_1_10 = callPackage ../development/libraries/cppunit/1.10.nix { }; cracklib = callPackage ../development/libraries/cracklib { }; From d5d5ff5a78f677b37b97e6f2128e4ada2e391134 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 6 Oct 2011 10:29:56 +0000 Subject: [PATCH 66/95] release-small.nix: dropped obsolete 'aterm242fixes' package svn path=/nixpkgs/branches/stdenv-updates/; revision=29686 --- pkgs/top-level/release-small.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix index e7957a8a78e..35fae54f4eb 100644 --- a/pkgs/top-level/release-small.nix +++ b/pkgs/top-level/release-small.nix @@ -19,7 +19,6 @@ with (import ./release-lib.nix); aspell = all; at = linux; - aterm242fixes = all; aterm25 = all; aterm28 = all; autoconf = all; From 1add4b2e6dd4c5ac452edfaffb5c166a4dfe590a Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 6 Oct 2011 13:16:47 +0000 Subject: [PATCH 67/95] synchronize with trunk svn path=/nixpkgs/branches/stdenv-updates/; revision=29696 --- .../networking/browsers/firefox/7.0.nix | 6 +- pkgs/desktops/gnome-2.28/default.nix | 2 +- .../desktop/gnome-keyring/default.nix | 4 +- pkgs/os-specific/linux/mdadm/default.nix | 4 +- pkgs/os-specific/linux/nvidia-x11/default.nix | 6 +- pkgs/tools/filesystems/btrfsprogs/default.nix | 14 ++--- pkgs/top-level/all-packages.nix | 63 ++++++++++--------- 7 files changed, 51 insertions(+), 48 deletions(-) diff --git a/pkgs/applications/networking/browsers/firefox/7.0.nix b/pkgs/applications/networking/browsers/firefox/7.0.nix index c14386e5f9e..c4fef3dfaf2 100644 --- a/pkgs/applications/networking/browsers/firefox/7.0.nix +++ b/pkgs/applications/networking/browsers/firefox/7.0.nix @@ -15,14 +15,14 @@ assert stdenv.gcc ? libc && stdenv.gcc.libc != null; rec { - firefoxVersion = "7.0"; + firefoxVersion = "7.0.1"; - xulVersion = "7.0"; # this attribute is used by other packages + xulVersion = "7.0.1"; # this attribute is used by other packages src = fetchurl { url = "http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"; - sha256 = "1fpadlsdc8d739cz52dicn68v2ilv044hxivilgy9jnrazznrm42"; + sha1 = "94bbc7152832371dc0be82f411730df043c5c6ac"; }; commonConfigureFlags = diff --git a/pkgs/desktops/gnome-2.28/default.nix b/pkgs/desktops/gnome-2.28/default.nix index 36eb7b70be2..e486cac465e 100644 --- a/pkgs/desktops/gnome-2.28/default.nix +++ b/pkgs/desktops/gnome-2.28/default.nix @@ -182,7 +182,7 @@ pkgs.makeOverridable #### DESKTOP gnome_keyring = import ./desktop/gnome-keyring { - inherit (pkgs) stdenv fetchurl pkgconfig dbus libgcrypt libtasn1 pam hal python; + inherit (pkgs) stdenv fetchurl pkgconfig dbus libgcrypt libtasn1 pam python; inherit (pkgs.gtkLibs) glib gtk; inherit intltool GConf; }; diff --git a/pkgs/desktops/gnome-2.28/desktop/gnome-keyring/default.nix b/pkgs/desktops/gnome-2.28/desktop/gnome-keyring/default.nix index fdb885bf595..f49cb1c2d1c 100644 --- a/pkgs/desktops/gnome-2.28/desktop/gnome-keyring/default.nix +++ b/pkgs/desktops/gnome-2.28/desktop/gnome-keyring/default.nix @@ -1,4 +1,4 @@ -{stdenv, fetchurl, pkgconfig, dbus, libgcrypt, libtasn1, pam, hal, python, glib, gtk, intltool, GConf}: +{stdenv, fetchurl, pkgconfig, dbus, libgcrypt, libtasn1, pam, python, glib, gtk, intltool, GConf}: stdenv.mkDerivation { name = "gnome-keyring-2.28.0"; @@ -8,7 +8,7 @@ stdenv.mkDerivation { sha256 = "1d6av3cq32ypq9f9mv7f9bcqkkdqgbvbb831kad62smczvqk8chv"; }; - buildInputs = [ pkgconfig dbus.libs libgcrypt pam hal python gtk intltool GConf ]; + buildInputs = [ pkgconfig dbus.libs libgcrypt pam python gtk intltool GConf ]; propagatedBuildInputs = [ glib libtasn1 ]; } diff --git a/pkgs/os-specific/linux/mdadm/default.nix b/pkgs/os-specific/linux/mdadm/default.nix index 0a80e7c8dd0..a88107ae73d 100644 --- a/pkgs/os-specific/linux/mdadm/default.nix +++ b/pkgs/os-specific/linux/mdadm/default.nix @@ -2,7 +2,7 @@ stdenv.mkDerivation rec { name = "mdadm-3.1.2"; - + src = fetchurl { url = "mirror://kernel/linux/utils/raid/mdadm/${name}.tar.bz2"; sha256 = "0s2d2a01j8cizxqvbgd0sn5bpa1j46q8976078b3jq1q7i1ir0zz"; @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { buildNativeInputs = [ groff ]; - preConfigure = "sed -e 's@/lib/udev@\${out}/lib/udev@' -i Makefile"; + preConfigure = "sed -e 's@/lib/udev@\${out}/lib/udev@' -e 's@ -Werror @ @' -i Makefile"; # Force mdadm to use /var/run/mdadm.map for its map file (or # /dev/.mdadm/map as a fallback). diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix index f2065e1aa01..1fc65eb35ed 100644 --- a/pkgs/os-specific/linux/nvidia-x11/default.nix +++ b/pkgs/os-specific/linux/nvidia-x11/default.nix @@ -7,7 +7,7 @@ with stdenv.lib; -let versionNumber = "280.13"; in +let versionNumber = "285.05.09"; in stdenv.mkDerivation { name = "nvidia-x11-${versionNumber}${optionalString (!libsOnly) "-${kernel.version}"}"; @@ -18,12 +18,12 @@ stdenv.mkDerivation { if stdenv.system == "i686-linux" then fetchurl { url = "http://us.download.nvidia.com/XFree86/Linux-x86/${versionNumber}/NVIDIA-Linux-x86-${versionNumber}.run"; - sha256 = "16xcidshamxvc80sdnkph5rpgf72m5zz4x155amg2433kkhsy8mj"; + sha256 = "15kgsfpv0jigm1v3vnhcagni694lqm55kqysslmvb090nsczl0yf"; } else if stdenv.system == "x86_64-linux" then fetchurl { url = "http://us.download.nvidia.com/XFree86/Linux-x86_64/${versionNumber}/NVIDIA-Linux-x86_64-${versionNumber}-no-compat32.run"; - sha256 = "14x80qirwlfxhphzqvi92lpgs82qnzb7hq0vd02rkbwvvnkhgdxd"; + sha256 = "1zkgsjkhbx6dfmhhbflghbysr3icwfb5p6210xnhfss5dp2cvbwl"; } else throw "nvidia-x11 does not support platform ${stdenv.system}"; diff --git a/pkgs/tools/filesystems/btrfsprogs/default.nix b/pkgs/tools/filesystems/btrfsprogs/default.nix index 2a5574a829e..22d7a1164c8 100644 --- a/pkgs/tools/filesystems/btrfsprogs/default.nix +++ b/pkgs/tools/filesystems/btrfsprogs/default.nix @@ -1,10 +1,10 @@ -a : -let +a : +let fetchurl = a.fetchurl; - version = a.lib.attrByPath ["version"] "0.19" a; + version = a.lib.attrByPath ["version"] "0.19" a; buildInputs = with a; [ - zlib libuuid acl + zlib libuuid acl ]; in @@ -18,13 +18,13 @@ rec { inherit buildInputs; configureFlags = []; - makeFlags = ["prefix=$out"]; + makeFlags = ["prefix=$out CFLAGS=-Os"]; patches = [ ./glibc212.patch ]; phaseNames = ["doPatch" "doEnsureBtrfsImage" "doMakeInstall"]; - + doEnsureBtrfsImage = a.fullDepEntry ('' - if ! grep 'progs = ' Makefile | grep btrfs-image; then + if ! grep 'progs = ' Makefile | grep btrfs-image; then sed -e 's/progs = .*/& btrfs-image/' -i Makefile fi '') ["minInit" "doUnpack"]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6ecbe6fadc7..77aba9c8372 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4213,6 +4213,7 @@ let neon029 = callPackage ../development/libraries/neon/0.29.nix { compressionSupport = true; sslSupport = true; + openssl = opensslNew; }; nethack = builderDefsPackage (import ../games/nethack) { @@ -5980,7 +5981,7 @@ let tunctl = true; mconsole = true; }; - untie = callPackage ../os-specific/linux/untie {}; + untie = callPackage ../os-specific/linux/untie { }; upower = callPackage ../os-specific/linux/upower { dbus_glib = pkgs.dbus_glib_0_94; @@ -6324,7 +6325,7 @@ let patchelf = patchelf06; }; - chromeWrapper = wrapFirefox chrome "chrome" ""; + chromeWrapper = wrapFirefox { browser = chrome; browserName = "chrome"; desktopName = "Chrome"; }; cinelerra = callPackage ../applications/video/cinelerra { inherit (gnome) esound; @@ -6576,37 +6577,37 @@ let firefox = pkgs.firefoxPkgs.firefox; - firefoxWrapper = wrapFirefox pkgs.firefox "firefox" ""; + firefoxWrapper = wrapFirefox { browser = pkgs.firefox; }; - firefoxPkgs = pkgs.firefox60Pkgs; + firefoxPkgs = pkgs.firefox70Pkgs; firefox36Pkgs = callPackage ../applications/networking/browsers/firefox/3.6.nix { inherit (gtkLibs) gtk pango; inherit (gnome) libIDL; }; - firefox36Wrapper = wrapFirefox firefox36Pkgs.firefox "firefox" ""; + firefox36Wrapper = wrapFirefox { browser = firefox36Pkgs.firefox; }; firefox50Pkgs = callPackage ../applications/networking/browsers/firefox/5.0.nix { inherit (gtkLibs) gtk pango; inherit (gnome) libIDL; }; - firefox50Wrapper = wrapFirefox firefox50Pkgs.firefox "firefox" ""; + firefox50Wrapper = wrapFirefox { browser = firefox50Pkgs.firefox; }; firefox60Pkgs = callPackage ../applications/networking/browsers/firefox/6.0.nix { inherit (gtkLibs) gtk pango; inherit (gnome) libIDL; }; - firefox60Wrapper = wrapFirefox firefox60Pkgs.firefox "firefox" ""; + firefox60Wrapper = wrapFirefox { browser = firefox60Pkgs.firefox; }; firefox70Pkgs = callPackage ../applications/networking/browsers/firefox/7.0.nix { inherit (gtkLibs) gtk pango; inherit (gnome) libIDL; }; - firefox70Wrapper = lowPrio (wrapFirefox firefox70Pkgs.firefox "firefox" ""); + firefox70Wrapper = wrapFirefox { browser = firefox70Pkgs.firefox; }; firefox80bPkgs = callPackage ../applications/networking/browsers/firefox/8.0.nix { inherit (gtkLibs) gtk pango; @@ -6808,7 +6809,7 @@ let [ icecat3 icecatXulrunner3 ]) // { inherit (icecat3) gtk isFirefox3Like meta; }; - icecat3Wrapper = wrapFirefox icecat3Xul "icecat" ""; + icecat3Wrapper = wrapFirefox { browser = icecat3Xul; browserName = "icecat"; desktopName = "IceCat"; }; icecat4 = lowPrio (import ../applications/networking/browsers/icecat-4 { inherit fetchurl stdenv xz pkgconfig perl zip libjpeg libpng zlib cairo @@ -6834,7 +6835,7 @@ let [ icecat4 icecatXulrunner4 ]) // { inherit (icecat4) gtk meta; }; - icecat4Wrapper = wrapFirefox icecat4Xul "icecat" ""; + icecat4Wrapper = wrapFirefox { browser = icecat4Xul; browserName = "icecat"; desktopName = "IceCat"; }; icewm = callPackage ../applications/window-managers/icewm { inherit (gtkLibs) gtk; @@ -7476,26 +7477,28 @@ let wordnet = callPackage ../applications/misc/wordnet { }; - wrapFirefox = browser: browserName: nameSuffix: import ../applications/networking/browsers/firefox/wrapper.nix { - inherit stdenv nameSuffix makeWrapper makeDesktopItem browser browserName; - plugins = - let - enableAdobeFlash = getConfig [ browserName "enableAdobeFlash" ] true; - enableGnash = getConfig [ browserName "enableGnash" ] false; - in - assert !(enableGnash && enableAdobeFlash); - ([ ] - ++ lib.optional enableGnash gnash - ++ lib.optional enableAdobeFlash flashplayer - # RealPlayer is disabled by default for legal reasons. - ++ lib.optional (system != "i686-linux" && getConfig [browserName "enableRealPlayer"] false) RealPlayer - ++ lib.optional (getConfig [browserName "enableDjvu"] false) (djview4) - ++ lib.optional (getConfig [browserName "enableMPlayer"] false) (MPlayerPlugin browser) - ++ lib.optional (getConfig [browserName "enableGeckoMediaPlayer"] false) gecko_mediaplayer - ++ lib.optional (supportsJDK && getConfig [browserName "jre"] false && jrePlugin ? mozillaPlugin) jrePlugin - ++ lib.optional (getConfig [browserName "enableGoogleTalkPlugin"] false) google_talk_plugin - ); - }; + wrapFirefox = + { browser, browserName ? "firefox", desktopName ? "Firefox", nameSuffix ? "" }: + import ../applications/networking/browsers/firefox/wrapper.nix { + inherit stdenv makeWrapper makeDesktopItem browser browserName desktopName nameSuffix; + plugins = + let + enableAdobeFlash = getConfig [ browserName "enableAdobeFlash" ] true; + enableGnash = getConfig [ browserName "enableGnash" ] false; + in + assert !(enableGnash && enableAdobeFlash); + ([ ] + ++ lib.optional enableGnash gnash + ++ lib.optional enableAdobeFlash flashplayer + # RealPlayer is disabled by default for legal reasons. + ++ lib.optional (system != "i686-linux" && getConfig [browserName "enableRealPlayer"] false) RealPlayer + ++ lib.optional (getConfig [browserName "enableDjvu"] false) (djview4) + ++ lib.optional (getConfig [browserName "enableMPlayer"] false) (MPlayerPlugin browser) + ++ lib.optional (getConfig [browserName "enableGeckoMediaPlayer"] false) gecko_mediaplayer + ++ lib.optional (supportsJDK && getConfig [browserName "jre"] false && jrePlugin ? mozillaPlugin) jrePlugin + ++ lib.optional (getConfig [browserName "enableGoogleTalkPlugin"] false) google_talk_plugin + ); + }; x11vnc = callPackage ../tools/X11/x11vnc { }; From a60193db6ba1ebc0946c5aa63a68bd3d0afb3fe3 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 6 Oct 2011 13:21:07 +0000 Subject: [PATCH 68/95] release-small.nix: updated name of "dbus" attribute svn path=/nixpkgs/branches/stdenv-updates/; revision=29698 --- pkgs/top-level/release-small.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix index 35fae54f4eb..f56f6cf357d 100644 --- a/pkgs/top-level/release-small.nix +++ b/pkgs/top-level/release-small.nix @@ -208,7 +208,7 @@ with (import ./release-lib.nix); zile = linux; zip = all; - dbus = { + dbus_all = { libs = linux; tools = linux; }; From 0baf36471578a960588c78eb69d89dc7623029ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 14 Oct 2011 21:56:07 +0000 Subject: [PATCH 69/95] XZ Utils 5.0.3. svn path=/nixpkgs/branches/stdenv-updates/; revision=29846 --- pkgs/tools/compression/xz/default.nix | 44 ++++++++++++++++----------- 1 file changed, 27 insertions(+), 17 deletions(-) diff --git a/pkgs/tools/compression/xz/default.nix b/pkgs/tools/compression/xz/default.nix index b6aa8e96013..78a8ed95a4e 100644 --- a/pkgs/tools/compression/xz/default.nix +++ b/pkgs/tools/compression/xz/default.nix @@ -1,25 +1,35 @@ -{stdenv, fetchurl, lib}: +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "xz-5.0.3"; -stdenv.mkDerivation ({ - name = "xz-5.0.0"; - src = fetchurl { - url = http://tukaani.org/xz/xz-5.0.0.tar.bz2; - sha256 = "1n2nc00d83di0jl5d9qwpngkmlk3wqhs4w9q2ah680v9qijrxa27"; + url = "http://tukaani.org/xz/${name}.tar.bz2"; + sha256 = "1sgaq4gdh8llz3gnlgvd65x610fwc8h4m32skhqn5npwgghvj4as"; }; + doCheck = true; + meta = { homepage = http://tukaani.org/xz/; - description = "Successor of the LZMA Utils package"; - license = "GPL/LGPL"; - maintainers = [ lib.maintainers.sander ]; + description = "XZ, general-purpose data compression software, successor of LZMA"; + + longDescription = + '' XZ Utils is free general-purpose data compression software with high + compression ratio. XZ Utils were written for POSIX-like systems, + but also work on some not-so-POSIX systems. XZ Utils are the + successor to LZMA Utils. + + The core of the XZ Utils compression code is based on LZMA SDK, but + it has been modified quite a lot to be suitable for XZ Utils. The + primary compression algorithm is currently LZMA2, which is used + inside the .xz container format. With typical files, XZ Utils + create 30 % smaller output than gzip and 15 % smaller output than + bzip2. + ''; + + licenses = [ "GPLv2+" "LGPLv2.1+" ]; + maintainers = with stdenv.lib.maintainers; [ sander ludo ]; + platforms = stdenv.lib.platforms.all; }; } - -// - -(if stdenv.system == "x86_64-darwin" - # Work around assembler misconfiguration as `x86'. This appears to be fixed - # by commit b9b5c54cd438b3ae47b44cc211b71f3bc53e35ef (Nov 22 12:00:30 2009 # +0200). - then { configureFlags = "--enable-assembler=x86_64"; } - else {})) From e2e7a6f1cefdc4af7b213256f7fa153d2d24087f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 14 Oct 2011 21:56:11 +0000 Subject: [PATCH 70/95] Add XZ to stdenv. svn path=/nixpkgs/branches/stdenv-updates/; revision=29847 --- pkgs/stdenv/linux/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 315c0895d20..a45e6a71817 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -293,7 +293,7 @@ rec { inherit gcc; inherit (stdenvLinuxBoot3Pkgs) binutils glibc; inherit (stdenvLinuxBoot4Pkgs) - gzip bzip2 bash coreutils diffutils findutils gawk + gzip bzip2 xz bash coreutils diffutils findutils gawk gnumake gnused gnutar gnugrep gnupatch patchelf attr acl; }; From 5d5b8932231d2ae59fc9d7ea3142d1f2f75c9cfb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 14 Oct 2011 21:56:16 +0000 Subject: [PATCH 71/95] GNU Coreutils 8.14. svn path=/nixpkgs/branches/stdenv-updates/; revision=29848 --- pkgs/tools/misc/coreutils/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index f21f97a18a2..26c4d0fbdce 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, perl, xz, gmp ? null +{ stdenv, fetchurl, perl, gmp ? null , aclSupport ? false, acl ? null , selinuxSupport? false, libselinux ? null, libsepol ? null }: @@ -6,14 +6,14 @@ assert aclSupport -> acl != null; assert selinuxSupport -> ( (libselinux != null) && (libsepol != null) ); stdenv.mkDerivation (rec { - name = "coreutils-8.13"; + name = "coreutils-8.14"; src = fetchurl { url = "mirror://gnu/coreutils/${name}.tar.xz"; - sha256 = "06xc4jfkr5h8pc6wq14ncihapf5chcwvvcjvpwkby1ngw0xbxz8b"; + sha256 = "0bdh31fvd0ng2sqrrbz0a4yy084hmj76pbljksqyv4ljq4bhh4hd"; }; - buildNativeInputs = [ perl xz ]; + buildNativeInputs = [ perl ]; buildInputs = [ gmp ] ++ stdenv.lib.optional aclSupport acl ++ stdenv.lib.optional selinuxSupport libselinux From 909200437c419a0c9bb68c22f8a3439a1837916d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Fri, 14 Oct 2011 21:56:21 +0000 Subject: [PATCH 72/95] GNU MPFR 3.1.0. svn path=/nixpkgs/branches/stdenv-updates/; revision=29849 --- pkgs/development/libraries/mpfr/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/mpfr/default.nix b/pkgs/development/libraries/mpfr/default.nix index e2be5d75e8c..0ab745879ac 100644 --- a/pkgs/development/libraries/mpfr/default.nix +++ b/pkgs/development/libraries/mpfr/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, gmp}: stdenv.mkDerivation rec { - name = "mpfr-3.0.1"; + name = "mpfr-3.1.0"; src = fetchurl { url = "mirror://gnu/mpfr/${name}.tar.bz2"; - sha256 = "0zwfwc9rn2sl3kpnr72fi1b8lh8c0mcmgy61y301jhs9pfcp15z1"; + sha256 = "105nx8qqx5x8f4rlplr2wk4cyv61iw5j3jgi2k21rpb8s6xbp9vl"; }; buildInputs = [ gmp ]; From 383baf8794ebbdb81dff24b7d6f314e046f5d0cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 15 Oct 2011 23:25:12 +0000 Subject: [PATCH 73/95] GNU M4: Have a test work around flaws in newer Linux versions. svn path=/nixpkgs/branches/stdenv-updates/; revision=29856 --- pkgs/development/tools/misc/gnum4/default.nix | 2 +- .../tools/misc/gnum4/readlink-EINVAL.patch | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/tools/misc/gnum4/readlink-EINVAL.patch diff --git a/pkgs/development/tools/misc/gnum4/default.nix b/pkgs/development/tools/misc/gnum4/default.nix index 47d8b51b82b..12cc50a37a0 100644 --- a/pkgs/development/tools/misc/gnum4/default.nix +++ b/pkgs/development/tools/misc/gnum4/default.nix @@ -11,7 +11,7 @@ stdenv.mkDerivation { doCheck = !stdenv.isDarwin; # Upstream is aware of it; it may be in the next release. - patches = [ ./s_isdir.patch ]; + patches = [ ./s_isdir.patch ./readlink-EINVAL.patch ]; meta = { homepage = http://www.gnu.org/software/m4/; diff --git a/pkgs/development/tools/misc/gnum4/readlink-EINVAL.patch b/pkgs/development/tools/misc/gnum4/readlink-EINVAL.patch new file mode 100644 index 00000000000..dd371584a79 --- /dev/null +++ b/pkgs/development/tools/misc/gnum4/readlink-EINVAL.patch @@ -0,0 +1,18 @@ +Newer Linux kernels would return EINVAL instead of ENOENT. +The patch below, taken from Gnulib, allows the test to pass when +these Linux versions are in use: +https://lists.gnu.org/archive/html/bug-gnulib/2011-03/msg00308.html . + +diff --git a/tests/test-readlink.h b/tests/test-readlink.h +index 08d5662..7247fc4 100644 +--- a/tests/test-readlink.h ++++ b/tests/test-readlink.h +@@ -38,7 +38,7 @@ test_readlink (ssize_t (*func) (char const *, char *, size_t), bool print) + ASSERT (errno == ENOENT); + errno = 0; + ASSERT (func ("", buf, sizeof buf) == -1); +- ASSERT (errno == ENOENT); ++ ASSERT (errno == ENOENT || errno == EINVAL); + errno = 0; + ASSERT (func (".", buf, sizeof buf) == -1); + ASSERT (errno == EINVAL); From 3fa51ac56a90863a5ffc7e7a013b2758401f9e18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Tue, 25 Oct 2011 18:35:17 +0000 Subject: [PATCH 74/95] Trying to disable the references to the bootstrap-tools libgcc svn path=/nixpkgs/branches/stdenv-updates/; revision=30022 --- pkgs/development/libraries/zlib/default.nix | 4 ++++ pkgs/development/tools/misc/binutils/default.nix | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/pkgs/development/libraries/zlib/default.nix b/pkgs/development/libraries/zlib/default.nix index f1b8a006ecf..631cd50dd68 100644 --- a/pkgs/development/libraries/zlib/default.nix +++ b/pkgs/development/libraries/zlib/default.nix @@ -17,6 +17,10 @@ stdenv.mkDerivation (rec { fi ''; + # As zlib takes part in the stdenv building, we don't want references + # to the bootstrap-tools libgcc (as uses to happen on arm/mips) + NIX_LDFLAGS = "-static-libgcc"; + crossAttrs = { dontStrip = if static then true else false; } // (if stdenv.cross.libc == "msvcrt" then { diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index 0dcf46397a0..59082aa2f27 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -53,6 +53,10 @@ stdenv.mkDerivation rec { done ''; + # As binutils takes part in the stdenv building, we don't want references + # to the bootstrap-tools libgcc (as uses to happen on arm/mips) + NIX_LDFLAGS = "-static-libgcc"; + configureFlags = "--disable-werror" # needed for dietlibc build + stdenv.lib.optionalString (stdenv.system == "mips64-linux") " --enable-fix-loongson2f-nop" From 0b1f1a522c655ef8b16242be975bf3314ed6dbe9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Tue, 25 Oct 2011 18:35:41 +0000 Subject: [PATCH 75/95] Updating glibc from 2.13 to 2.14.1 svn path=/nixpkgs/branches/stdenv-updates/; revision=30023 --- .../{glibc-2.13 => glibc-2.14}/builder.sh | 0 .../{glibc-2.13 => glibc-2.14}/common.nix | 8 ++++---- .../{glibc-2.13 => glibc-2.14}/default.nix | 0 .../glibc-elf-localscope.patch | 0 .../libraries/{glibc-2.13 => glibc-2.14}/info.nix | 0 .../{glibc-2.13 => glibc-2.14}/locales-builder.sh | 0 .../{glibc-2.13 => glibc-2.14}/locales.nix | 0 .../nix-locale-archive.patch | 0 .../nss-skip-unavail.patch | 0 .../{glibc-2.13 => glibc-2.14}/rpcgen-path.patch | 0 pkgs/top-level/all-packages.nix | 14 +++++++------- 11 files changed, 11 insertions(+), 11 deletions(-) rename pkgs/development/libraries/{glibc-2.13 => glibc-2.14}/builder.sh (100%) rename pkgs/development/libraries/{glibc-2.13 => glibc-2.14}/common.nix (96%) rename pkgs/development/libraries/{glibc-2.13 => glibc-2.14}/default.nix (100%) rename pkgs/development/libraries/{glibc-2.13 => glibc-2.14}/glibc-elf-localscope.patch (100%) rename pkgs/development/libraries/{glibc-2.13 => glibc-2.14}/info.nix (100%) rename pkgs/development/libraries/{glibc-2.13 => glibc-2.14}/locales-builder.sh (100%) rename pkgs/development/libraries/{glibc-2.13 => glibc-2.14}/locales.nix (100%) rename pkgs/development/libraries/{glibc-2.13 => glibc-2.14}/nix-locale-archive.patch (100%) rename pkgs/development/libraries/{glibc-2.13 => glibc-2.14}/nss-skip-unavail.patch (100%) rename pkgs/development/libraries/{glibc-2.13 => glibc-2.14}/rpcgen-path.patch (100%) diff --git a/pkgs/development/libraries/glibc-2.13/builder.sh b/pkgs/development/libraries/glibc-2.14/builder.sh similarity index 100% rename from pkgs/development/libraries/glibc-2.13/builder.sh rename to pkgs/development/libraries/glibc-2.14/builder.sh diff --git a/pkgs/development/libraries/glibc-2.13/common.nix b/pkgs/development/libraries/glibc-2.14/common.nix similarity index 96% rename from pkgs/development/libraries/glibc-2.13/common.nix rename to pkgs/development/libraries/glibc-2.14/common.nix index 15941c2a43b..87b808cda4b 100644 --- a/pkgs/development/libraries/glibc-2.13/common.nix +++ b/pkgs/development/libraries/glibc-2.14/common.nix @@ -11,7 +11,7 @@ cross : let # For GNU/Hurd, see below. - version = if hurdHeaders != null then "20100512" else "2.13"; + version = if hurdHeaders != null then "20100512" else "2.14.1"; needsPortsNative = stdenv.isMips || stdenv.isArm; needsPortsCross = cross.arch == "mips" || cross.arch == "arm"; @@ -20,8 +20,8 @@ let else needsPortsCross; srcPorts = fetchurl { - url = "mirror://gnu/glibc/glibc-ports-2.13.tar.bz2"; - sha256 = "0npffql62m1xba15l1wkaqf2p0l2bvb33720gx28764jmq0la75i"; + url = "mirror://gnu/glibc/glibc-ports-2.14.1.tar.bz2"; + sha256 = "1acs4sd5mjzmssmd0md6dfqwnziph2am7v09mbnnd8aadpxhm0qw"; }; in @@ -148,7 +148,7 @@ stdenv.mkDerivation ({ } else fetchurl { url = "mirror://gnu/glibc/glibc-${version}.tar.bz2"; - sha256 = "1cnv319ysc8nkwpqw6f6ymb6b8hbl0nyvyx48sddkrj50lmcjwq1"; + sha256 = "0fsvf5d6sib483rp7asdy8hs0dysxqkrvw316c82hsxy7vxa51bf"; }; # `fetchurl' is a function and thus should not be passed to the diff --git a/pkgs/development/libraries/glibc-2.13/default.nix b/pkgs/development/libraries/glibc-2.14/default.nix similarity index 100% rename from pkgs/development/libraries/glibc-2.13/default.nix rename to pkgs/development/libraries/glibc-2.14/default.nix diff --git a/pkgs/development/libraries/glibc-2.13/glibc-elf-localscope.patch b/pkgs/development/libraries/glibc-2.14/glibc-elf-localscope.patch similarity index 100% rename from pkgs/development/libraries/glibc-2.13/glibc-elf-localscope.patch rename to pkgs/development/libraries/glibc-2.14/glibc-elf-localscope.patch diff --git a/pkgs/development/libraries/glibc-2.13/info.nix b/pkgs/development/libraries/glibc-2.14/info.nix similarity index 100% rename from pkgs/development/libraries/glibc-2.13/info.nix rename to pkgs/development/libraries/glibc-2.14/info.nix diff --git a/pkgs/development/libraries/glibc-2.13/locales-builder.sh b/pkgs/development/libraries/glibc-2.14/locales-builder.sh similarity index 100% rename from pkgs/development/libraries/glibc-2.13/locales-builder.sh rename to pkgs/development/libraries/glibc-2.14/locales-builder.sh diff --git a/pkgs/development/libraries/glibc-2.13/locales.nix b/pkgs/development/libraries/glibc-2.14/locales.nix similarity index 100% rename from pkgs/development/libraries/glibc-2.13/locales.nix rename to pkgs/development/libraries/glibc-2.14/locales.nix diff --git a/pkgs/development/libraries/glibc-2.13/nix-locale-archive.patch b/pkgs/development/libraries/glibc-2.14/nix-locale-archive.patch similarity index 100% rename from pkgs/development/libraries/glibc-2.13/nix-locale-archive.patch rename to pkgs/development/libraries/glibc-2.14/nix-locale-archive.patch diff --git a/pkgs/development/libraries/glibc-2.13/nss-skip-unavail.patch b/pkgs/development/libraries/glibc-2.14/nss-skip-unavail.patch similarity index 100% rename from pkgs/development/libraries/glibc-2.13/nss-skip-unavail.patch rename to pkgs/development/libraries/glibc-2.14/nss-skip-unavail.patch diff --git a/pkgs/development/libraries/glibc-2.13/rpcgen-path.patch b/pkgs/development/libraries/glibc-2.14/rpcgen-path.patch similarity index 100% rename from pkgs/development/libraries/glibc-2.13/rpcgen-path.patch rename to pkgs/development/libraries/glibc-2.14/rpcgen-path.patch diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e31114ca573..c15f1f093d0 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3384,7 +3384,7 @@ let glfw = callPackage ../development/libraries/glfw { }; - glibc = glibc213; + glibc = glibc214; glibc25 = callPackage ../development/libraries/glibc-2.5 { kernelHeaders = linuxHeaders_2_6_28; @@ -3408,15 +3408,15 @@ let installLocales = getConfig [ "glibc" "locales" ] false; }); - glibc213 = (callPackage ../development/libraries/glibc-2.13 { + glibc214 = (callPackage ../development/libraries/glibc-2.14 { kernelHeaders = linuxHeaders; installLocales = getConfig [ "glibc" "locales" ] false; machHeaders = null; hurdHeaders = null; gccCross = null; - }) // (if crossSystem != null then { hostDrv = glibc213Cross; } else {}); + }) // (if crossSystem != null then { hostDrv = glibc214Cross; } else {}); - glibc213Cross = forceBuildDrv (makeOverridable (import ../development/libraries/glibc-2.13) + glibc214Cross = forceBuildDrv (makeOverridable (import ../development/libraries/glibc-2.14) (let crossGNU = (crossSystem != null && crossSystem.config == "i586-pc-gnu"); in ({ inherit stdenv fetchurl; @@ -3431,7 +3431,7 @@ let then { inherit machHeaders hurdHeaders mig fetchgit; } else { })))); - glibcCross = glibc213Cross; + glibcCross = glibc214Cross; # We can choose: libcCrossChooser = name : if (name == "glibc") then glibcCross @@ -3446,9 +3446,9 @@ let installLocales = getConfig [ "glibc" "locales" ] false; }; - glibcLocales = callPackage ../development/libraries/glibc-2.13/locales.nix { }; + glibcLocales = callPackage ../development/libraries/glibc-2.14/locales.nix { }; - glibcInfo = callPackage ../development/libraries/glibc-2.13/info.nix { }; + glibcInfo = callPackage ../development/libraries/glibc-2.14/info.nix { }; glibc_multi = runCommand "${glibc.name}-multi" From 706b80c28223486d84ae1e809323fc553b271438 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Tue, 25 Oct 2011 18:52:32 +0000 Subject: [PATCH 76/95] I wrote bad my attempt at -static-libgcc. Retrying. svn path=/nixpkgs/branches/stdenv-updates/; revision=30024 --- pkgs/development/libraries/zlib/default.nix | 2 +- pkgs/development/tools/misc/binutils/default.nix | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/zlib/default.nix b/pkgs/development/libraries/zlib/default.nix index 631cd50dd68..13157601e6f 100644 --- a/pkgs/development/libraries/zlib/default.nix +++ b/pkgs/development/libraries/zlib/default.nix @@ -19,7 +19,7 @@ stdenv.mkDerivation (rec { # As zlib takes part in the stdenv building, we don't want references # to the bootstrap-tools libgcc (as uses to happen on arm/mips) - NIX_LDFLAGS = "-static-libgcc"; + NIX_CFLAGS_COMPILE = "-static-libgcc"; crossAttrs = { dontStrip = if static then true else false; diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index 59082aa2f27..2eb9d43bcbe 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -55,7 +55,7 @@ stdenv.mkDerivation rec { # As binutils takes part in the stdenv building, we don't want references # to the bootstrap-tools libgcc (as uses to happen on arm/mips) - NIX_LDFLAGS = "-static-libgcc"; + NIX_CFLAGS_COMPILE = "-static-libgcc"; configureFlags = "--disable-werror" # needed for dietlibc build + stdenv.lib.optionalString (stdenv.system == "mips64-linux") From 61c4b72f0ed70c46a2f0041db871226581763c6f Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 26 Oct 2011 09:58:19 +0000 Subject: [PATCH 77/95] coreutils: added missing xz build input svn path=/nixpkgs/branches/stdenv-updates/; revision=30028 --- pkgs/tools/misc/coreutils/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index 26c4d0fbdce..b1a740ab5f9 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -1,6 +1,8 @@ { stdenv, fetchurl, perl, gmp ? null , aclSupport ? false, acl ? null -, selinuxSupport? false, libselinux ? null, libsepol ? null }: +, selinuxSupport? false, libselinux ? null, libsepol ? null +, xz +}: assert aclSupport -> acl != null; assert selinuxSupport -> ( (libselinux != null) && (libsepol != null) ); @@ -13,7 +15,7 @@ stdenv.mkDerivation (rec { sha256 = "0bdh31fvd0ng2sqrrbz0a4yy084hmj76pbljksqyv4ljq4bhh4hd"; }; - buildNativeInputs = [ perl ]; + buildNativeInputs = [ perl xz ]; buildInputs = [ gmp ] ++ stdenv.lib.optional aclSupport acl ++ stdenv.lib.optional selinuxSupport libselinux From 4353727ac8e1df2ae56179716b4ffba6bfc5e0b0 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 26 Oct 2011 10:32:40 +0000 Subject: [PATCH 78/95] libtirpc: added version 0.2.2 The glibc maintainers in their wisdom have dropped RPC support. That change causes plenty of builds to fail, like PAM. Users are supposed to use libtirpc instead, which, naturally, doesn't compile with glibc 2.14. I'm adding the library anyway, just so that we have it. svn path=/nixpkgs/branches/stdenv-updates/; revision=30029 --- .../libraries/libtirpc/default.nix | 22 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 24 insertions(+) create mode 100644 pkgs/development/libraries/libtirpc/default.nix diff --git a/pkgs/development/libraries/libtirpc/default.nix b/pkgs/development/libraries/libtirpc/default.nix new file mode 100644 index 00000000000..d9678f646b8 --- /dev/null +++ b/pkgs/development/libraries/libtirpc/default.nix @@ -0,0 +1,22 @@ +{ stdenv, fetchurl }: + +let + version = "0.2.2"; +in +stdenv.mkDerivation { + name = "libtirpc-${version}"; + + src = fetchurl { + url = "mirror://sourceforge/libtirpc/libtirpc-${version}.tar.bz2"; + sha256 = "f05eb17c85d62423858b8f74512cfe66a9ae1cedf93f03c2a0a32e04f0a33705"; + }; + + meta = { + homepage = "http://sourceforge.net/projects/libtirpc/"; + description = "a port of Suns Transport-Independent RPC library to Linux"; + license = stdenv.lib.licenses.bsd3; + + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.simons ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b8c5237f049..797fcb1dde3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -907,6 +907,8 @@ let lftp = callPackage ../tools/networking/lftp { }; + libtirpc = callPackage ../development/libraries/libtirpc { }; + libtorrent = callPackage ../tools/networking/p2p/libtorrent { }; logrotate = callPackage ../tools/system/logrotate { }; From 51e5c3b73d40db54f1284f3a5b1adfe676f2e594 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 26 Oct 2011 10:47:19 +0000 Subject: [PATCH 79/95] added glibc-2.13 again svn path=/nixpkgs/branches/stdenv-updates/; revision=30030 --- .../libraries/glibc-2.13/builder.sh | 55 +++++ .../libraries/glibc-2.13/common.nix | 210 ++++++++++++++++++ .../libraries/glibc-2.13/default.nix | 83 +++++++ .../glibc-2.13/glibc-elf-localscope.patch | 82 +++++++ .../development/libraries/glibc-2.13/info.nix | 26 +++ .../libraries/glibc-2.13/locales-builder.sh | 17 ++ .../libraries/glibc-2.13/locales.nix | 47 ++++ .../glibc-2.13/nix-locale-archive.patch | 116 ++++++++++ .../glibc-2.13/nss-skip-unavail.patch | 21 ++ .../libraries/glibc-2.13/rpcgen-path.patch | 72 ++++++ 10 files changed, 729 insertions(+) create mode 100644 pkgs/development/libraries/glibc-2.13/builder.sh create mode 100644 pkgs/development/libraries/glibc-2.13/common.nix create mode 100644 pkgs/development/libraries/glibc-2.13/default.nix create mode 100644 pkgs/development/libraries/glibc-2.13/glibc-elf-localscope.patch create mode 100644 pkgs/development/libraries/glibc-2.13/info.nix create mode 100644 pkgs/development/libraries/glibc-2.13/locales-builder.sh create mode 100644 pkgs/development/libraries/glibc-2.13/locales.nix create mode 100644 pkgs/development/libraries/glibc-2.13/nix-locale-archive.patch create mode 100644 pkgs/development/libraries/glibc-2.13/nss-skip-unavail.patch create mode 100644 pkgs/development/libraries/glibc-2.13/rpcgen-path.patch diff --git a/pkgs/development/libraries/glibc-2.13/builder.sh b/pkgs/development/libraries/glibc-2.13/builder.sh new file mode 100644 index 00000000000..9a1c1490019 --- /dev/null +++ b/pkgs/development/libraries/glibc-2.13/builder.sh @@ -0,0 +1,55 @@ +# Glibc cannot have itself in its RPATH. +export NIX_NO_SELF_RPATH=1 + +source $stdenv/setup + +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= + + export NIX_DONT_SET_RPATH=1 + unset CFLAGS +} + + +postInstall() { + if test -n "$installLocales"; then + make -j${NIX_BUILD_CORES:-1} -l${NIX_BUILD_CORES:-1} localedata/install-locales + fi + + test -f $out/etc/ld.so.cache && rm $out/etc/ld.so.cache + + # FIXME: Use `test -n $linuxHeaders' when `kernelHeaders' has been + # renamed. + if test -z "$hurdHeaders"; then + # Include the Linux kernel headers in Glibc, except the `scsi' + # subdirectory, which Glibc provides itself. + (cd $out/include && \ + ln -sv $(ls -d $kernelHeaders/include/* | grep -v 'scsi$') .) + fi + + if test -f "$out/lib/libhurduser.so"; then + # libc.so, libhurduser.so, and libmachuser.so depend on each + # other, so add them to libc.so (a RUNPATH on libc.so.0.3 + # would be ignored by the cross-linker.) + echo "adding \`libhurduser.so' and \`libmachuser.so' to the \`libc.so' linker script..." + sed -i "$out/lib/libc.so" \ + -e"s|\(libc\.so\.[^ ]\+\>\)|\1 $out/lib/libhurduser.so $out/lib/libmachuser.so|g" + fi + + # Fix for NIXOS-54 (ldd not working on x86_64). Make a symlink + # "lib64" to "lib". + if test -n "$is64bit"; then + ln -s lib $out/lib64 + fi + + # This file, that should not remain in the glibc derivation, + # may have not been created during the preInstall + rm -f $out/lib/libgcc_s.so.1 +} + + +genericBuild diff --git a/pkgs/development/libraries/glibc-2.13/common.nix b/pkgs/development/libraries/glibc-2.13/common.nix new file mode 100644 index 00000000000..15941c2a43b --- /dev/null +++ b/pkgs/development/libraries/glibc-2.13/common.nix @@ -0,0 +1,210 @@ +/* Build configuration used to build glibc, Info files, and locale + information. */ + +cross : + +{ name, fetchurl, stdenv, installLocales ? false +, gccCross ? null, kernelHeaders ? null +, machHeaders ? null, hurdHeaders ? null, mig ? null, fetchgit ? null +, profilingLibraries ? false, meta +, preConfigure ? "", ... }@args : + +let + # For GNU/Hurd, see below. + version = if hurdHeaders != null then "20100512" else "2.13"; + + needsPortsNative = stdenv.isMips || stdenv.isArm; + needsPortsCross = cross.arch == "mips" || cross.arch == "arm"; + needsPorts = if (stdenv ? cross) && stdenv.cross != null then true + else if cross == null then needsPortsNative + else needsPortsCross; + + srcPorts = fetchurl { + url = "mirror://gnu/glibc/glibc-ports-2.13.tar.bz2"; + sha256 = "0npffql62m1xba15l1wkaqf2p0l2bvb33720gx28764jmq0la75i"; + }; + +in + +assert (cross != null) -> (gccCross != null); + +assert (mig != null) -> (machHeaders != null); +assert (machHeaders != null) -> (hurdHeaders != null); +assert (hurdHeaders != null) -> (fetchgit != null); + +stdenv.mkDerivation ({ + inherit kernelHeaders installLocales; + + # The host/target system. + crossConfig = if (cross != null) then cross.config else null; + + inherit (stdenv) is64bit; + + enableParallelBuilding = true; + + patches = + stdenv.lib.optional (fetchgit == null) + /* Fix for NIXPKGS-79: when doing host name lookups, when + nsswitch.conf contains a line like + + hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 + + don't return an error when mdns4_minimal can't be found. This + is a bug in Glibc: when a service can't be found, NSS should + continue to the next service unless "UNAVAIL=return" is set. + ("NOTFOUND=return" refers to the service returning a NOTFOUND + error, not the service itself not being found.) The reason is + that the "status" variable (while initialised to UNAVAIL) is + outside of the loop that iterates over the services, the + "files" service sets status to NOTFOUND. So when the call to + find "mdns4_minimal" fails, "status" will still be NOTFOUND, + and it will return instead of continuing to "dns". Thus, the + line + + hosts: mdns4_minimal [NOTFOUND=return] dns mdns4 + + does work because "status" will contain UNAVAIL after the + failure to find mdns4_minimal. */ + ./nss-skip-unavail.patch + ++ [ + /* Have rpcgen(1) look for cpp(1) in $PATH. */ + ./rpcgen-path.patch + + /* Allow nixos and nix handle the locale-archive. */ + ./nix-locale-archive.patch + + /* Without this patch many KDE binaries crash. */ + ./glibc-elf-localscope.patch + ]; + + postPatch = '' + # Needed for glibc to build with the gnumake 3.82 + # http://comments.gmane.org/gmane.linux.lfs.support/31227 + sed -i 's/ot \$/ot:\n\ttouch $@\n$/' manual/Makefile + + # nscd needs libgcc, and we don't want it dynamically linked + # because we don't want it to depend on bootstrap-tools libs. + echo "LDFLAGS-nscd += -static-libgcc" >> nscd/Makefile + ''; + + configureFlags = [ + "-C" + "--enable-add-ons" + "--localedir=/var/run/current-system/sw/lib/locale" + (if kernelHeaders != null + then "--with-headers=${kernelHeaders}/include" + else "--without-headers") + (if profilingLibraries + then "--enable-profile" + else "--disable-profile") + ] ++ stdenv.lib.optionals (cross != null) [ + (if cross.withTLS then "--with-tls" else "--without-tls") + (if cross.float == "soft" then "--without-fp" else "--with-fp") + "--enable-kernel=2.6.0" + "--with-__thread" + ] ++ stdenv.lib.optionals (stdenv.system == "armv5tel-linux") [ + "--host=arm-linux-gnueabi" + "--build=arm-linux-gnueabi" + "--without-fp" + + # To avoid linking with -lgcc_s (dynamic link) + # so the glibc does not depend on its compiler store path + "libc_cv_as_needed=no" + ]; + + buildInputs = stdenv.lib.optionals (cross != null) [ gccCross ] + ++ stdenv.lib.optional (mig != null) mig; + + # Needed to install share/zoneinfo/zone.tab. Set to impure /bin/sh to + # prevent a retained dependency on the bootstrap tools in the stdenv-linux + # bootstrap. + BASH_SHELL = "/bin/sh"; + + # Workaround for this bug: + # http://sourceware.org/bugzilla/show_bug.cgi?id=411 + # I.e. when gcc is compiled with --with-arch=i686, then the + # preprocessor symbol `__i686' will be defined to `1'. This causes + # the symbol __i686.get_pc_thunk.dx to be mangled. + NIX_CFLAGS_COMPILE = stdenv.lib.optionalString (stdenv.system == "i686-linux") "-U__i686"; +} + +# Remove the `gccCross' attribute so that the *native* glibc store path +# doesn't depend on whether `gccCross' is null or not. +// (removeAttrs args [ "gccCross" ]) // + +{ + name = name + "-${version}" + + stdenv.lib.optionalString (cross != null) "-${cross.config}"; + + src = + if hurdHeaders != null + then fetchgit { + # Shamefully the "official" glibc won't build on GNU, so use the one + # maintained by the Hurd folks, `tschwinge/Roger_Whittaker' branch. + # See . + url = "git://git.sv.gnu.org/hurd/glibc.git"; + sha256 = "f3590a54a9d897d121f91113949edbaaf3e30cdeacbb8d0a44de7b6564f6643e"; + rev = "df4c3faf0ccc848b5a8086c222bdb42679a9798f"; + } + else fetchurl { + url = "mirror://gnu/glibc/glibc-${version}.tar.bz2"; + sha256 = "1cnv319ysc8nkwpqw6f6ymb6b8hbl0nyvyx48sddkrj50lmcjwq1"; + }; + + # `fetchurl' is a function and thus should not be passed to the + # `derivation' primitive. + fetchurl = null; + + # Remove absolute paths from `configure' & co.; build out-of-tree. + preConfigure = '' + export PWD_P=$(type -tP pwd) + for i in configure io/ftwtest-sh; do + # Can't use substituteInPlace here because replace hasn't been + # built yet in the bootstrap. + sed -i "$i" -e "s^/bin/pwd^$PWD_P^g" + done + + ${if needsPorts then "tar xvf ${srcPorts}" else ""} + + mkdir ../build + cd ../build + + configureScript="`pwd`/../$sourceRoot/configure" + + ${preConfigure} + ''; + + meta = { + homepage = http://www.gnu.org/software/libc/; + description = "The GNU C Library"; + + longDescription = + '' Any Unix-like operating system needs a C library: the library which + defines the "system calls" and other basic facilities such as + open, malloc, printf, exit... + + The GNU C library is used as the C library in the GNU system and + most systems with the Linux kernel. + ''; + + license = "LGPLv2+"; + + maintainers = [ stdenv.lib.maintainers.ludo ]; + platforms = stdenv.lib.platforms.linux; + } // meta; +} + +// + +(if hurdHeaders != null + then { + # Work around the fact that the configure snippet that looks for + # does not honor `--with-headers=$sysheaders' and that + # glibc expects both Mach and Hurd headers to be in the same place. + CPATH = "${hurdHeaders}/include:${machHeaders}/include"; + + # `fetchgit' is a function and thus should not be passed to the + # `derivation' primitive. + fetchgit = null; + } + else { })) diff --git a/pkgs/development/libraries/glibc-2.13/default.nix b/pkgs/development/libraries/glibc-2.13/default.nix new file mode 100644 index 00000000000..31a8ef13a4f --- /dev/null +++ b/pkgs/development/libraries/glibc-2.13/default.nix @@ -0,0 +1,83 @@ +{ stdenv, fetchurl, kernelHeaders +, machHeaders ? null, hurdHeaders ? null, mig ? null, fetchgit ? null +, installLocales ? true +, profilingLibraries ? false +, gccCross ? null +}: + +assert stdenv.gcc.gcc != null; + +let + build = import ./common.nix; + cross = if gccCross != null then gccCross.target else null; +in + build cross ({ + name = "glibc"; + + inherit fetchurl stdenv kernelHeaders installLocales profilingLibraries + gccCross; + + builder = ./builder.sh; + + # When building glibc from bootstrap-tools, we need libgcc_s at RPATH for + # any program we run, because the gcc will have been placed at a new + # store path than that determined when built (as a source for the + # bootstrap-tools tarball) + # Building from a proper gcc staying in the path where it was installed, + # libgcc_s will not be at {gcc}/lib, and gcc's libgcc will be found without + # any special hack. + preInstall = '' + if [ -f ${stdenv.gcc.gcc}/lib/libgcc_s.so.1 ]; then + ensureDir $out/lib + ln -s ${stdenv.gcc.gcc}/lib/libgcc_s.so.1 $out/lib/libgcc_s.so.1 + fi + ''; + + meta.description = "The GNU C Library"; + } + + // + + (if hurdHeaders != null + then rec { + inherit machHeaders hurdHeaders mig fetchgit; + + propagatedBuildInputs = [ machHeaders hurdHeaders ]; + + passthru = { + # When building GCC itself `propagatedBuildInputs' above is not + # honored, so we pass it here so that the GCC builder can do the right + # thing. + inherit propagatedBuildInputs; + }; + } + else { }) + + // + + (if cross != null + then { + preConfigure = '' + sed -i s/-lgcc_eh//g "../$sourceRoot/Makeconfig" + + cat > config.cache << "EOF" + libc_cv_forced_unwind=yes + libc_cv_c_cleanup=yes + libc_cv_gnu89_inline=yes + # Only due to a problem in gcc configure scripts: + libc_cv_sparc64_tls=${if cross.withTLS then "yes" else "no"} + EOF + export BUILD_CC=gcc + export CC="$crossConfig-gcc" + export AR="$crossConfig-ar" + export RANLIB="$crossConfig-ranlib" + + dontStrip=1 + ''; + + # To avoid a dependency on the build system 'bash'. + preFixup = '' + rm $out/bin/{ldd,tzselect,catchsegv,xtrace} + ''; + } + else {})) diff --git a/pkgs/development/libraries/glibc-2.13/glibc-elf-localscope.patch b/pkgs/development/libraries/glibc-2.13/glibc-elf-localscope.patch new file mode 100644 index 00000000000..98f7f81087b --- /dev/null +++ b/pkgs/development/libraries/glibc-2.13/glibc-elf-localscope.patch @@ -0,0 +1,82 @@ +diff -ru a/elf/dl-close.c b/elf/dl-close.c +--- a/elf/dl-close.c 2011-02-04 00:35:03.000000000 +0100 ++++ b/elf/dl-close.c 2011-02-22 02:16:12.367883000 +0100 +@@ -180,24 +186,28 @@ + /* Signal the object is still needed. */ + l->l_idx = IDX_STILL_USED; + ++#define mark_used(dmap) \ ++ do { \ ++ if ((dmap)->l_idx != IDX_STILL_USED) \ ++ { \ ++ assert ((dmap)->l_idx >= 0 && (dmap)->l_idx < nloaded); \ ++ \ ++ if (!used[(dmap)->l_idx]) \ ++ { \ ++ used[(dmap)->l_idx] = 1; \ ++ if ((dmap)->l_idx - 1 < done_index) \ ++ done_index = (dmap)->l_idx - 1; \ ++ } \ ++ } \ ++ } while (0) ++ + /* Mark all dependencies as used. */ + if (l->l_initfini != NULL) + { + struct link_map **lp = &l->l_initfini[1]; + while (*lp != NULL) + { +- if ((*lp)->l_idx != IDX_STILL_USED) +- { +- assert ((*lp)->l_idx >= 0 && (*lp)->l_idx < nloaded); +- +- if (!used[(*lp)->l_idx]) +- { +- used[(*lp)->l_idx] = 1; +- if ((*lp)->l_idx - 1 < done_index) +- done_index = (*lp)->l_idx - 1; +- } +- } +- ++ mark_used(*lp); + ++lp; + } + } +@@ -206,19 +216,25 @@ + for (unsigned int j = 0; j < l->l_reldeps->act; ++j) + { + struct link_map *jmap = l->l_reldeps->list[j]; +- +- if (jmap->l_idx != IDX_STILL_USED) +- { +- assert (jmap->l_idx >= 0 && jmap->l_idx < nloaded); +- +- if (!used[jmap->l_idx]) +- { +- used[jmap->l_idx] = 1; +- if (jmap->l_idx - 1 < done_index) +- done_index = jmap->l_idx - 1; +- } +- } ++ mark_used(jmap); + } ++ /* And the same for owners of our scopes; normally, our last ++ scope provider would render us unused, but this can be ++ prevented by the NODELETE flag. */ ++ if (__builtin_expect(l->l_type == lt_loaded ++ && (l->l_flags_1 & DF_1_NODELETE), 0)) ++ for (size_t cnt = 0; l->l_scope[cnt] != NULL; ++cnt) ++ /* This relies on l_scope[] entries being always set either ++ to its own l_symbolic_searchlist address, or some map's ++ l_searchlist address. */ ++ if (l->l_scope[cnt] != &l->l_symbolic_searchlist) ++ { ++ struct link_map *ls = (struct link_map *) ++ ((char *) l->l_scope[cnt] ++ - offsetof (struct link_map, l_searchlist)); ++ assert (ls->l_ns == nsid); ++ mark_used(ls); ++ } + } + + /* Sort the entries. */ diff --git a/pkgs/development/libraries/glibc-2.13/info.nix b/pkgs/development/libraries/glibc-2.13/info.nix new file mode 100644 index 00000000000..84a16fefce9 --- /dev/null +++ b/pkgs/development/libraries/glibc-2.13/info.nix @@ -0,0 +1,26 @@ +{ stdenv, fetchurl, texinfo, perl }: + +let build = import ./common.nix; +in + /* null cross builder */ + build null { + name = "glibc-info"; + + inherit fetchurl stdenv; + + configureFlags = [ "--enable-add-ons" ]; + + buildInputs = [ texinfo perl ]; + + buildPhase = "make info"; + + # I don't know why the info is not generated in 'build' + # Somehow building the info still does not work, because the final + # libc.info hasn't a Top node. + installPhase = '' + ensureDir "$out/share/info" + cp -v "../$sourceRoot/manual/"*.info* "$out/share/info" + ''; + + meta.description = "GNU Info manual of the GNU C Library"; + } diff --git a/pkgs/development/libraries/glibc-2.13/locales-builder.sh b/pkgs/development/libraries/glibc-2.13/locales-builder.sh new file mode 100644 index 00000000000..d732e208fa2 --- /dev/null +++ b/pkgs/development/libraries/glibc-2.13/locales-builder.sh @@ -0,0 +1,17 @@ +# Glibc cannot have itself in its RPATH. +export NIX_NO_SELF_RPATH=1 + +source $stdenv/setup + +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= + + export NIX_DONT_SET_RPATH=1 + unset CFLAGS +} + +genericBuild diff --git a/pkgs/development/libraries/glibc-2.13/locales.nix b/pkgs/development/libraries/glibc-2.13/locales.nix new file mode 100644 index 00000000000..d598e0e094d --- /dev/null +++ b/pkgs/development/libraries/glibc-2.13/locales.nix @@ -0,0 +1,47 @@ +/* This function builds just the `lib/locale/locale-archive' file from + Glibc and nothing else. If `allLocales' is true, all supported + locales are included; otherwise, just the locales listed in + `locales'. See localedata/SUPPORTED in the Glibc source tree for + the list of all supported locales: + http://sourceware.org/cgi-bin/cvsweb.cgi/libc/localedata/SUPPORTED?cvsroot=glibc +*/ + +{ stdenv, fetchurl, allLocales ? true, locales ? ["en_US.UTF-8/UTF-8"] }: + +let build = import ./common.nix; +in + build null { + name = "glibc-locales"; + + inherit fetchurl stdenv; + installLocales = true; + + builder = ./locales-builder.sh; + + # Awful hack: `localedef' doesn't allow the path to `locale-archive' + # to be overriden, but you *can* specify a prefix, i.e. it will use + # //lib/locale/locale-archive. So we use + # $TMPDIR as a prefix, meaning that the locale-archive is placed in + # $TMPDIR/nix/store/...-glibc-.../lib/locale/locale-archive. + buildPhase = + '' + mkdir -p $TMPDIR/"$(dirname $(readlink -f $(type -p localedef)))/../lib/locale" + + # Hack to allow building of the locales (needed since glibc-2.12) + sed -i -e "s,^LOCALEDEF=.*,LOCALEDEF=localedef --prefix=$TMPDIR," -e \ + /library-path/d ../glibc-2*/localedata/Makefile + ${if allLocales then "" else + "echo SUPPORTED-LOCALES=\"${toString locales}\" > ../glibc-2*/localedata/SUPPORTED"} + + make localedata/install-locales \ + localedir=$out/lib/locale \ + ''; + + installPhase = + '' + ensureDir "$out/lib/locale" + cp -v "$TMPDIR/nix/store/"*"/lib/locale/locale-archive" "$out/lib/locale" + ''; + + meta.description = "Locale information for the GNU C Library"; + } diff --git a/pkgs/development/libraries/glibc-2.13/nix-locale-archive.patch b/pkgs/development/libraries/glibc-2.13/nix-locale-archive.patch new file mode 100644 index 00000000000..aca904f7ff4 --- /dev/null +++ b/pkgs/development/libraries/glibc-2.13/nix-locale-archive.patch @@ -0,0 +1,116 @@ +diff --git a/locale/loadarchive.c b/locale/loadarchive.c +index d545f17..0d8638a 100644 +--- a/locale/loadarchive.c ++++ b/locale/loadarchive.c +@@ -124,6 +124,25 @@ calculate_head_size (const struct locarhead *h) + } + + ++static int ++open_locale_archive () ++{ ++ int fd = -1; ++ char *path = getenv ("LOCALE_ARCHIVE_2_11"); ++ char *path2 = getenv ("LOCALE_ARCHIVE"); ++ const char *usualpath = "/usr/lib/locale/locale-archive"; ++ if (path) ++ fd = open_not_cancel_2 (path, O_RDONLY|O_LARGEFILE); ++ if (path2 && fd < 0) ++ fd = open_not_cancel_2 (path2, O_RDONLY|O_LARGEFILE); ++ if (fd < 0) ++ fd = open_not_cancel_2 (archfname, O_RDONLY|O_LARGEFILE); ++ if (fd < 0) ++ fd = open_not_cancel_2 (usualpath, O_RDONLY|O_LARGEFILE); ++ return fd; ++} ++ ++ + /* Find the locale *NAMEP in the locale archive, and return the + internalized data structure for its CATEGORY data. If this locale has + already been loaded from the archive, just returns the existing data +@@ -203,7 +222,7 @@ _nl_load_locale_from_archive (int category, const char **namep) + archmapped = &headmap; + + /* The archive has never been opened. */ +- fd = open_not_cancel_2 (archfname, O_RDONLY|O_LARGEFILE); ++ fd = open_locale_archive (); + if (fd < 0) + /* Cannot open the archive, for whatever reason. */ + return NULL; +@@ -394,7 +413,7 @@ _nl_load_locale_from_archive (int category, const char **namep) + if (fd == -1) + { + struct stat64 st; +- fd = open_not_cancel_2 (archfname, O_RDONLY|O_LARGEFILE); ++ fd = open_locale_archive (); + if (fd == -1) + /* Cannot open the archive, for whatever reason. */ + return NULL; +diff --git a/locale/programs/locale.c b/locale/programs/locale.c +index 77262b7..fddc00d 100644 +--- a/locale/programs/locale.c ++++ b/locale/programs/locale.c +@@ -628,6 +628,20 @@ nameentcmp (const void *a, const void *b) + ((const struct nameent *) b)->name); + } + ++static int ++open_nix_locale_archive (const char * fname, int access) ++{ ++ int fd = -1; ++ char *path = getenv ("LOCALE_ARCHIVE_2_11"); ++ char *path2 = getenv ("LOCALE_ARCHIVE"); ++ if (path) ++ fd = open64 (path, access); ++ if (path2 && fd < 0) ++ fd = open64 (path2, access); ++ if (fd < 0) ++ fd = open64 (fname, access); ++ return fd; ++} + + static int + write_archive_locales (void **all_datap, char *linebuf) +@@ -641,7 +658,7 @@ write_archive_locales (void **all_datap, char *linebuf) + int fd, ret = 0; + uint32_t cnt; + +- fd = open64 (ARCHIVE_NAME, O_RDONLY); ++ fd = open_nix_locale_archive (ARCHIVE_NAME, O_RDONLY); + if (fd < 0) + return 0; + +diff --git a/locale/programs/locarchive.c b/locale/programs/locarchive.c +index 85ba77d..3ad2af8 100644 +--- a/locale/programs/locarchive.c ++++ b/locale/programs/locarchive.c +@@ -512,6 +512,20 @@ enlarge_archive (struct locarhandle *ah, const struct locarhead *head) + *ah = new_ah; + } + ++static int ++open_nix_locale_archive (const char * fname, int access) ++{ ++ int fd = -1; ++ char *path = getenv ("LOCALE_ARCHIVE_2_11"); ++ char *path2 = getenv ("LOCALE_ARCHIVE"); ++ if (path) ++ fd = open64 (path, access); ++ if (path2 && fd < 0) ++ fd = open64 (path2, access); ++ if (fd < 0) ++ fd = open64 (fname, access); ++ return fd; ++} + + void + open_archive (struct locarhandle *ah, bool readonly) +@@ -531,7 +548,7 @@ open_archive (struct locarhandle *ah, bool readonly) + while (1) + { + /* Open the archive. We must have exclusive write access. */ +- fd = open64 (archivefname, readonly ? O_RDONLY : O_RDWR); ++ fd = open_nix_locale_archive (archivefname, readonly ? O_RDONLY : O_RDWR); + if (fd == -1) + { + /* Maybe the file does not yet exist. */ diff --git a/pkgs/development/libraries/glibc-2.13/nss-skip-unavail.patch b/pkgs/development/libraries/glibc-2.13/nss-skip-unavail.patch new file mode 100644 index 00000000000..e48dc2bc0a6 --- /dev/null +++ b/pkgs/development/libraries/glibc-2.13/nss-skip-unavail.patch @@ -0,0 +1,21 @@ +diff -ru glibc-2.11.2-orig/sysdeps/posix/getaddrinfo.c glibc-2.11.2/sysdeps/posix/getaddrinfo.c +--- glibc-2.11.2-orig/sysdeps/posix/getaddrinfo.c 2010-05-19 22:38:20.000000000 +0200 ++++ glibc-2.11.2/sysdeps/posix/getaddrinfo.c 2010-08-05 18:39:54.259556327 +0200 +@@ -505,8 +505,6 @@ + int no_data = 0; + int no_inet6_data = 0; + service_user *nip = NULL; +- enum nss_status inet6_status = NSS_STATUS_UNAVAIL; +- enum nss_status status = NSS_STATUS_UNAVAIL; + int no_more; + int old_res_options; + +@@ -702,6 +700,8 @@ + + while (!no_more) + { ++ enum nss_status inet6_status = NSS_STATUS_UNAVAIL; ++ enum nss_status status = NSS_STATUS_UNAVAIL; + no_data = 0; + nss_gethostbyname4_r fct4 + = __nss_lookup_function (nip, "gethostbyname4_r"); diff --git a/pkgs/development/libraries/glibc-2.13/rpcgen-path.patch b/pkgs/development/libraries/glibc-2.13/rpcgen-path.patch new file mode 100644 index 00000000000..fbb03dd5fad --- /dev/null +++ b/pkgs/development/libraries/glibc-2.13/rpcgen-path.patch @@ -0,0 +1,72 @@ +By default, rpcgen(1) looks for cpp(1) from a list of fixed absolute paths +(`/lib/cpp', etc.), which may only be overrided with the `-Y' option. This +patch makes it run any `cpp' command found in $PATH. + +--- glibc-2.7/sunrpc/rpc_main.c 2006-11-10 21:54:46.000000000 +0100 ++++ glibc-2.7/sunrpc/rpc_main.c 2009-04-22 14:32:10.000000000 +0200 +@@ -79,7 +79,7 @@ static const char *cmdname; + + static const char *svcclosetime = "120"; + static int cppDefined; /* explicit path for C preprocessor */ +-static const char *CPP = SUNOS_CPP; ++static const char *CPP = "cpp"; + static const char CPPFLAGS[] = "-C"; + static char *pathbuf; + static int cpp_pid; +@@ -108,7 +108,6 @@ static char *extendfile (const char *fil + static void open_output (const char *infile, const char *outfile); + static void add_warning (void); + static void clear_args (void); +-static void find_cpp (void); + static void open_input (const char *infile, const char *define); + static int check_nettype (const char *name, const char *list_to_check[]); + static void c_output (const char *infile, const char *define, +@@ -327,31 +326,6 @@ clear_args (void) + argcount = FIXEDARGS; + } + +-/* make sure that a CPP exists */ +-static void +-find_cpp (void) +-{ +- struct stat buf; +- +- if (stat (CPP, &buf) < 0) +- { /* /lib/cpp or explicit cpp does not exist */ +- if (cppDefined) +- { +- fprintf (stderr, _ ("cannot find C preprocessor: %s \n"), CPP); +- crash (); +- } +- else +- { /* try the other one */ +- CPP = SVR4_CPP; +- if (stat (CPP, &buf) < 0) +- { /* can't find any cpp */ +- fputs (_ ("cannot find any C preprocessor (cpp)\n"), stdout); +- crash (); +- } +- } +- } +-} +- + /* + * Open input file with given define for C-preprocessor + */ +@@ -370,7 +344,6 @@ open_input (const char *infile, const ch + switch (cpp_pid) + { + case 0: +- find_cpp (); + putarg (0, CPP); + putarg (1, CPPFLAGS); + addarg (define); +@@ -380,7 +353,7 @@ open_input (const char *infile, const ch + close (1); + dup2 (pd[1], 1); + close (pd[0]); +- execv (arglist[0], (char **) arglist); ++ execvp (arglist[0], (char **) arglist); + perror ("execv"); + exit (1); + case -1: From 3590b859c5e2a8b4fdff3ec06b25cf12e90a49d1 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 26 Oct 2011 10:48:55 +0000 Subject: [PATCH 80/95] Revert stdenv glibc back to version 2.13. Note that I didn't touch the glibcCross attribute! That still points to glibc 2.14. svn path=/nixpkgs/branches/stdenv-updates/; revision=30031 --- pkgs/top-level/all-packages.nix | 29 ++++++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 797fcb1dde3..1caf577dec1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3401,7 +3401,9 @@ let glfw = callPackage ../development/libraries/glfw { }; - glibc = glibc214; + glibc = glibc213; + + glibcCross = glibc214Cross; glibc25 = callPackage ../development/libraries/glibc-2.5 { kernelHeaders = linuxHeaders_2_6_28; @@ -3425,6 +3427,29 @@ let installLocales = getConfig [ "glibc" "locales" ] false; }); + glibc213 = (callPackage ../development/libraries/glibc-2.13 { + kernelHeaders = linuxHeaders; + installLocales = getConfig [ "glibc" "locales" ] false; + machHeaders = null; + hurdHeaders = null; + gccCross = null; + }) // (if crossSystem != null then { hostDrv = glibc213Cross; } else {}); + + glibc213Cross = forceBuildDrv (makeOverridable (import ../development/libraries/glibc-2.13) + (let crossGNU = (crossSystem != null && crossSystem.config == "i586-pc-gnu"); + in ({ + inherit stdenv fetchurl; + gccCross = gccCrossStageStatic; + kernelHeaders = if crossGNU then hurdHeaders else linuxHeadersCross; + installLocales = getConfig [ "glibc" "locales" ] false; + } + + // + + (if crossGNU + then { inherit machHeaders hurdHeaders mig fetchgit; } + else { })))); + glibc214 = (callPackage ../development/libraries/glibc-2.14 { kernelHeaders = linuxHeaders; installLocales = getConfig [ "glibc" "locales" ] false; @@ -3448,8 +3473,6 @@ let then { inherit machHeaders hurdHeaders mig fetchgit; } else { })))); - glibcCross = glibc214Cross; - # We can choose: libcCrossChooser = name : if (name == "glibc") then glibcCross else if (name == "uclibc") then uclibcCross From af640dee052611a636eee0f541ed907b0e18467f Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 26 Oct 2011 11:14:29 +0000 Subject: [PATCH 81/95] synchronize with trunk svn path=/nixpkgs/branches/stdenv-updates/; revision=30033 From 20ab6cfbf75d2b218b4ac0f145e6a97e21f899e4 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 27 Oct 2011 15:35:43 +0000 Subject: [PATCH 82/95] * Move perl-5.8 and perl-5.10 into perl/ per the coding conventions. svn path=/nixpkgs/branches/stdenv-updates/; revision=30055 --- .../interpreters/{perl-5.10 => perl/5.10}/default.nix | 0 .../interpreters/{perl-5.10 => perl/5.10}/no-sys-dirs.patch | 0 .../interpreters/{perl-5.10 => perl/5.10}/setup-hook.sh | 0 .../interpreters/{perl-5.8 => perl/5.8}/default.nix | 0 .../interpreters/{perl-5.8 => perl/5.8}/gcc-4.2.patch | 0 .../interpreters/{perl-5.8 => perl/5.8}/no-sys-dirs.patch | 0 .../interpreters/{perl-5.8 => perl/5.8}/setup-hook.sh | 0 pkgs/top-level/all-packages.nix | 4 ++-- 8 files changed, 2 insertions(+), 2 deletions(-) rename pkgs/development/interpreters/{perl-5.10 => perl/5.10}/default.nix (100%) rename pkgs/development/interpreters/{perl-5.10 => perl/5.10}/no-sys-dirs.patch (100%) rename pkgs/development/interpreters/{perl-5.10 => perl/5.10}/setup-hook.sh (100%) rename pkgs/development/interpreters/{perl-5.8 => perl/5.8}/default.nix (100%) rename pkgs/development/interpreters/{perl-5.8 => perl/5.8}/gcc-4.2.patch (100%) rename pkgs/development/interpreters/{perl-5.8 => perl/5.8}/no-sys-dirs.patch (100%) rename pkgs/development/interpreters/{perl-5.8 => perl/5.8}/setup-hook.sh (100%) diff --git a/pkgs/development/interpreters/perl-5.10/default.nix b/pkgs/development/interpreters/perl/5.10/default.nix similarity index 100% rename from pkgs/development/interpreters/perl-5.10/default.nix rename to pkgs/development/interpreters/perl/5.10/default.nix diff --git a/pkgs/development/interpreters/perl-5.10/no-sys-dirs.patch b/pkgs/development/interpreters/perl/5.10/no-sys-dirs.patch similarity index 100% rename from pkgs/development/interpreters/perl-5.10/no-sys-dirs.patch rename to pkgs/development/interpreters/perl/5.10/no-sys-dirs.patch diff --git a/pkgs/development/interpreters/perl-5.10/setup-hook.sh b/pkgs/development/interpreters/perl/5.10/setup-hook.sh similarity index 100% rename from pkgs/development/interpreters/perl-5.10/setup-hook.sh rename to pkgs/development/interpreters/perl/5.10/setup-hook.sh diff --git a/pkgs/development/interpreters/perl-5.8/default.nix b/pkgs/development/interpreters/perl/5.8/default.nix similarity index 100% rename from pkgs/development/interpreters/perl-5.8/default.nix rename to pkgs/development/interpreters/perl/5.8/default.nix diff --git a/pkgs/development/interpreters/perl-5.8/gcc-4.2.patch b/pkgs/development/interpreters/perl/5.8/gcc-4.2.patch similarity index 100% rename from pkgs/development/interpreters/perl-5.8/gcc-4.2.patch rename to pkgs/development/interpreters/perl/5.8/gcc-4.2.patch diff --git a/pkgs/development/interpreters/perl-5.8/no-sys-dirs.patch b/pkgs/development/interpreters/perl/5.8/no-sys-dirs.patch similarity index 100% rename from pkgs/development/interpreters/perl-5.8/no-sys-dirs.patch rename to pkgs/development/interpreters/perl/5.8/no-sys-dirs.patch diff --git a/pkgs/development/interpreters/perl-5.8/setup-hook.sh b/pkgs/development/interpreters/perl/5.8/setup-hook.sh similarity index 100% rename from pkgs/development/interpreters/perl-5.8/setup-hook.sh rename to pkgs/development/interpreters/perl/5.8/setup-hook.sh diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1caf577dec1..dab1460816e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2559,11 +2559,11 @@ let # mercurial (hg) bleeding edge version octaveHG = callPackage ../development/interpreters/octave/hg.nix { }; - perl58 = callPackage ../development/interpreters/perl-5.8 { + perl58 = callPackage ../development/interpreters/perl/5.8 { impureLibcPath = if stdenv.isLinux then null else "/usr"; }; - perl510 = callPackage ../development/interpreters/perl-5.10 { + perl510 = callPackage ../development/interpreters/perl/5.10 { fetchurl = fetchurlBoot; }; From 5649122458d9959dab216556707249e8fa144ab1 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 27 Oct 2011 15:58:25 +0000 Subject: [PATCH 83/95] * Added Perl 5.14.2. svn path=/nixpkgs/branches/stdenv-updates/; revision=30057 --- .../interpreters/perl/5.14/default.nix | 60 ++++++++ .../interpreters/perl/5.14/no-sys-dirs.patch | 134 ++++++++++++++++++ .../interpreters/perl/5.14/setup-hook.sh | 5 + pkgs/top-level/all-packages.nix | 4 + 4 files changed, 203 insertions(+) create mode 100644 pkgs/development/interpreters/perl/5.14/default.nix create mode 100644 pkgs/development/interpreters/perl/5.14/no-sys-dirs.patch create mode 100644 pkgs/development/interpreters/perl/5.14/setup-hook.sh diff --git a/pkgs/development/interpreters/perl/5.14/default.nix b/pkgs/development/interpreters/perl/5.14/default.nix new file mode 100644 index 00000000000..bdd3365b8b0 --- /dev/null +++ b/pkgs/development/interpreters/perl/5.14/default.nix @@ -0,0 +1,60 @@ +{ stdenv, fetchurl }: + +let + + libc = if stdenv ? gcc && stdenv.gcc.libc != null then stdenv.gcc.libc else "/usr"; + +in + +stdenv.mkDerivation rec { + name = "perl-5.14.2"; + + src = fetchurl { + url = "mirror://cpan/src/${name}.tar.gz"; + sha256 = "1ls8cpbgnlaxfydyyqgr7pxj1hkxh9pzcdgr3dv42zdxffakb234"; + }; + + patches = + [ # Do not look in /usr etc. for dependencies. + ./no-sys-dirs.patch + ]; + + # Build a thread-safe Perl with a dynamic libperls.o. We need the + # "installstyle" option to ensure that modules are put under + # $out/lib/perl5 - this is the general default, but because $out + # contains the string "perl", Configure would select $out/lib. + # Miniperl needs -lm. perl needs -lrt. + configureFlags = + [ "-de" + "-Dcc=gcc" + "-Uinstallusrbinperl" + "-Dinstallstyle=lib/perl5" + "-Duseshrplib" + "-Dlocincpth=${libc}/include" + "-Dloclibpth=${libc}/lib" + ] + ++ stdenv.lib.optional (stdenv ? glibc) "-Dusethreads"; + + configureScript = "${stdenv.shell} ./Configure"; + + dontAddPrefix = true; + + enableParallelBuilding = true; + + preConfigure = + '' + configureFlags="$configureFlags -Dprefix=$out -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3" + + ${stdenv.lib.optionalString (stdenv.system == "armv5tel-linux") '' + configureFlagsArray=(-Dldflags="-lm -lrt") + ''} + ''; + + preBuild = stdenv.lib.optionalString (!(stdenv ? gcc && stdenv.gcc.nativeTools)) + '' + # Make Cwd work on NixOS (where we don't have a /bin/pwd). + substituteInPlace dist/Cwd/Cwd.pm --replace "'/bin/pwd'" "'$(type -tP pwd)'" + ''; + + setupHook = ./setup-hook.sh; +} diff --git a/pkgs/development/interpreters/perl/5.14/no-sys-dirs.patch b/pkgs/development/interpreters/perl/5.14/no-sys-dirs.patch new file mode 100644 index 00000000000..a7fa7725c89 --- /dev/null +++ b/pkgs/development/interpreters/perl/5.14/no-sys-dirs.patch @@ -0,0 +1,134 @@ +diff -ru perl-5.14.2-orig/Configure perl-5.14.2/Configure +--- perl-5.14.2-orig/Configure 2011-09-26 11:44:34.000000000 +0200 ++++ perl-5.14.2/Configure 2011-10-27 17:42:26.791103662 +0200 +@@ -106,15 +106,7 @@ + fi + + : Proper PATH setting +-paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin' +-paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin" +-paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin" +-paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin" +-paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb" +-paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /opt/ansic/bin /usr/ccs/bin" +-paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib" +-paths="$paths /sbin /usr/sbin /usr/libexec" +-paths="$paths /system/gnu_library/bin" ++paths='' + + for p in $paths + do +@@ -1311,8 +1303,7 @@ + archname='' + : Possible local include directories to search. + : Set locincpth to "" in a hint file to defeat local include searches. +-locincpth="/usr/local/include /opt/local/include /usr/gnu/include" +-locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include" ++locincpth="" + : + : no include file wanted by default + inclwanted='' +@@ -1328,17 +1319,12 @@ + archobjs='' + libnames='' + : change the next line if compiling for Xenix/286 on Xenix/386 +-xlibpth='/usr/lib/386 /lib/386' ++xlibpth='' + : Possible local library directories to search. +-loclibpth="/usr/local/lib /opt/local/lib /usr/gnu/lib" +-loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib" ++loclibpth="" + + : general looking path for locating libraries +-glibpth="/lib /usr/lib $xlibpth" +-glibpth="$glibpth /usr/ccs/lib /usr/ucblib /usr/local/lib" +-test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth" +-test -f /shlib/libc.so && glibpth="/shlib $glibpth" +-test -d /usr/lib64 && glibpth="$glibpth /lib64 /usr/lib64 /usr/local/lib64" ++glibpth="" + + : Private path used by Configure to find libraries. Its value + : is prepended to libpth. This variable takes care of special +@@ -1371,8 +1357,6 @@ + libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD" + : We probably want to search /usr/shlib before most other libraries. + : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist. +-glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'` +-glibpth="/usr/shlib $glibpth" + : Do not use vfork unless overridden by a hint file. + usevfork=false + +@@ -2380,7 +2364,6 @@ + zip + " + pth=`echo $PATH | sed -e "s/$p_/ /g"` +-pth="$pth /lib /usr/lib" + for file in $loclist; do + eval xxx=\$$file + case "$xxx" in +@@ -8390,13 +8373,8 @@ + echo " " + case "$sysman" in + '') +- syspath='/usr/share/man/man1 /usr/man/man1' +- syspath="$syspath /usr/man/mann /usr/man/manl /usr/man/local/man1" +- syspath="$syspath /usr/man/u_man/man1" +- syspath="$syspath /usr/catman/u_man/man1 /usr/man/l_man/man1" +- syspath="$syspath /usr/local/man/u_man/man1 /usr/local/man/l_man/man1" +- syspath="$syspath /usr/man/man.L /local/man/man1 /usr/local/man/man1" +- sysman=`./loc . /usr/man/man1 $syspath` ++ syspath='' ++ sysman='' + ;; + esac + if $test -d "$sysman"; then +@@ -19721,9 +19699,10 @@ + case "$full_ar" in + '') full_ar=$ar ;; + esac ++full_ar=ar + + : Store the full pathname to the sed program for use in the C program +-full_sed=$sed ++full_sed=sed + + : see what type gids are declared as in the kernel + echo " " +Only in perl-5.14.2-orig/cpan/Module-Pluggable/t/lib/EditorJunk/Plugin: Bar.pm~ +diff -ru perl-5.14.2-orig/ext/Errno/Errno_pm.PL perl-5.14.2/ext/Errno/Errno_pm.PL +--- perl-5.14.2-orig/ext/Errno/Errno_pm.PL 2011-09-26 11:44:34.000000000 +0200 ++++ perl-5.14.2/ext/Errno/Errno_pm.PL 2011-10-27 17:40:13.083352010 +0200 +@@ -137,11 +137,7 @@ + if ($dep =~ /(\S+errno\.h)/) { + $file{$1} = 1; + } +- } elsif ($^O eq 'linux' && +- $Config{gccversion} ne '' && +- $Config{gccversion} !~ /intel/i +- # might be using, say, Intel's icc +- ) { ++ } elsif (0) { + # Some Linuxes have weird errno.hs which generate + # no #file or #line directives + my $linux_errno_h = -e '/usr/include/errno.h' ? +diff -ru perl-5.14.2-orig/hints/freebsd.sh perl-5.14.2/hints/freebsd.sh +--- perl-5.14.2-orig/hints/freebsd.sh 2011-09-19 15:18:22.000000000 +0200 ++++ perl-5.14.2/hints/freebsd.sh 2011-10-27 17:40:13.083352010 +0200 +@@ -118,13 +118,13 @@ + objformat=`/usr/bin/objformat` + if [ x$objformat = xaout ]; then + if [ -e /usr/lib/aout ]; then +- libpth="/usr/lib/aout /usr/local/lib /usr/lib" +- glibpth="/usr/lib/aout /usr/local/lib /usr/lib" ++ libpth="" ++ glibpth="" + fi + lddlflags='-Bshareable' + else +- libpth="/usr/lib /usr/local/lib" +- glibpth="/usr/lib /usr/local/lib" ++ libpth="" ++ glibpth="" + ldflags="-Wl,-E " + lddlflags="-shared " + fi diff --git a/pkgs/development/interpreters/perl/5.14/setup-hook.sh b/pkgs/development/interpreters/perl/5.14/setup-hook.sh new file mode 100644 index 00000000000..6a144a7f780 --- /dev/null +++ b/pkgs/development/interpreters/perl/5.14/setup-hook.sh @@ -0,0 +1,5 @@ +addPerlLibPath () { + addToSearchPath PERL5LIB $1/lib/perl5/site_perl +} + +envHooks=(${envHooks[@]} addPerlLibPath) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index dab1460816e..326bcdcddd5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2567,6 +2567,10 @@ let fetchurl = fetchurlBoot; }; + perl514 = callPackage ../development/interpreters/perl/5.14 { + fetchurl = fetchurlBoot; + }; + perl = if system != "i686-cygwin" then perl510 else sysPerl; php = php5_3; From de1c91bc002d555fc5b40f928999a7cc0e15df2a Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 27 Oct 2011 16:09:22 +0000 Subject: [PATCH 84/95] * Make Perl 5.14 the default. Cross fingers. svn path=/nixpkgs/branches/stdenv-updates/; revision=30058 --- pkgs/top-level/all-packages.nix | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 326bcdcddd5..3c00d99dcff 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2563,15 +2563,13 @@ let impureLibcPath = if stdenv.isLinux then null else "/usr"; }; - perl510 = callPackage ../development/interpreters/perl/5.10 { - fetchurl = fetchurlBoot; - }; + perl510 = callPackage ../development/interpreters/perl/5.10 { }; perl514 = callPackage ../development/interpreters/perl/5.14 { fetchurl = fetchurlBoot; }; - perl = if system != "i686-cygwin" then perl510 else sysPerl; + perl = if system != "i686-cygwin" then perl514 else sysPerl; php = php5_3; From fd394a7c4a8991df3270ff9f43b73273bde699d4 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 27 Oct 2011 16:32:46 +0000 Subject: [PATCH 85/95] * Only print "@ phase..." messages on demand since they're kind of ugly and we already print phases (with start and end markers). * Remove some stray tabs. svn path=/nixpkgs/branches/stdenv-updates/; revision=30059 --- pkgs/stdenv/generic/setup.sh | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 66be3875413..bf1642d84aa 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -453,8 +453,8 @@ unpackFile() { case "$curSrc" in *.tar | *.tar.* | *.tgz | *.tbz2) - # GNU tar can automatically select the decompression method - # (info "(tar) gzip"). + # GNU tar can automatically select the decompression method + # (info "(tar) gzip"). tar xvf $curSrc ;; *.zip) @@ -834,9 +834,11 @@ genericBuild() { if test "$curPhase" = installPhase -a -n "$dontInstall"; then continue; fi if test "$curPhase" = fixupPhase -a -n "$dontFixup"; then continue; fi if test "$curPhase" = distPhase -a -z "$doDist"; then continue; fi - - echo - echo "@ phase-started $out $curPhase" + + if [ -n "$tracePhases" ]; then + echo + echo "@ phase-started $out $curPhase" + fi showPhaseHeader "$curPhase" dumpVars @@ -849,8 +851,10 @@ genericBuild() { cd "${sourceRoot:-.}" fi - echo - echo "@ phase-succeeded $out $curPhase" + if [ -n "$tracePhases" ]; then + echo + echo "@ phase-succeeded $out $curPhase" + fi stopNest done From e85e73bbc8ebcfcb9415aca8bd929f8b672a82de Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 27 Oct 2011 16:42:51 +0000 Subject: [PATCH 86/95] =?UTF-8?q?*=20Operator=20precendence=20kills=20:-)?= =?UTF-8?q?=20=20GCC=20was=20accidentally=20depending=20on=20=20=20X11=20b?= =?UTF-8?q?ecause=20of=20missing=20parentheses=20around=20a=20=E2=80=98++?= =?UTF-8?q?=E2=80=99.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit svn path=/nixpkgs/branches/stdenv-updates/; revision=30060 --- pkgs/development/compilers/gcc-4.6/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/compilers/gcc-4.6/default.nix b/pkgs/development/compilers/gcc-4.6/default.nix index c28b885c680..48b147fc863 100644 --- a/pkgs/development/compilers/gcc-4.6/default.nix +++ b/pkgs/development/compilers/gcc-4.6/default.nix @@ -209,7 +209,7 @@ stdenv.mkDerivation ({ ++ (optional (cloog != null) cloog) ++ (optional (zlib != null) zlib) ++ (optionals langJava [ boehmgc zip unzip ]) - ++ (optionals javaAwtGtk [gtk pkgconfig libart_lgpl] ++ xlibs) + ++ (optionals javaAwtGtk ([gtk pkgconfig libart_lgpl] ++ xlibs)) ++ (optionals (cross != null) [binutilsCross]) ++ (optionals langAda [gnatboot]) ++ (optionals langVhdl [gnat]) From 3cb8791cf91f95407b4db0dd39f3cb6bc208007e Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 27 Oct 2011 16:50:00 +0000 Subject: [PATCH 87/95] * Backport the GCC xlibs dependency fix. svn path=/nixpkgs/branches/stdenv-updates/; revision=30061 --- maintainers/scripts/eval-release.nix | 2 +- pkgs/development/compilers/gcc-4.4/default.nix | 2 +- pkgs/development/compilers/gcc-4.5/default.nix | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/maintainers/scripts/eval-release.nix b/maintainers/scripts/eval-release.nix index 3d4458699c7..57395f8cc68 100644 --- a/maintainers/scripts/eval-release.nix +++ b/maintainers/scripts/eval-release.nix @@ -16,7 +16,7 @@ let call = attrs: lib.flip lib.mapAttrs attrs (n: v: builtins.trace n ( - if builtins.isFunction v then maybe (v { system = "i686-linux"; }) + if builtins.isFunction v then maybe (v { system = "x86_64-linux"; }) else if builtins.isAttrs v then call v else null )); diff --git a/pkgs/development/compilers/gcc-4.4/default.nix b/pkgs/development/compilers/gcc-4.4/default.nix index 11c89c7eb6b..d962d4ac347 100644 --- a/pkgs/development/compilers/gcc-4.4/default.nix +++ b/pkgs/development/compilers/gcc-4.4/default.nix @@ -132,7 +132,7 @@ stdenv.mkDerivation ({ ++ (optional (zlib != null) zlib) ++ (optional (boehmgc != null) boehmgc) ++ (optionals langJava [zip unzip]) - ++ (optionals javaAwtGtk [gtk pkgconfig libart_lgpl] ++ xlibs) + ++ (optionals javaAwtGtk ([gtk pkgconfig libart_lgpl] ++ xlibs)) ++ (optionals (cross != null) [binutilsCross]) ++ (optionals langAda [gnatboot]) ++ (optionals langVhdl [gnat]) diff --git a/pkgs/development/compilers/gcc-4.5/default.nix b/pkgs/development/compilers/gcc-4.5/default.nix index 8d3aa658ab3..61d0af6aa4f 100644 --- a/pkgs/development/compilers/gcc-4.5/default.nix +++ b/pkgs/development/compilers/gcc-4.5/default.nix @@ -204,7 +204,7 @@ stdenv.mkDerivation ({ ++ (optional (zlib != null) zlib) ++ (optional (boehmgc != null) boehmgc) ++ (optionals langJava [zip unzip]) - ++ (optionals javaAwtGtk [gtk pkgconfig libart_lgpl] ++ xlibs) + ++ (optionals javaAwtGtk ([gtk pkgconfig libart_lgpl] ++ xlibs)) ++ (optionals (cross != null) [binutilsCross]) ++ (optionals langAda [gnatboot]) ++ (optionals langVhdl [gnat]) From 30933c30d314e120386d5bb3a08d4be0d3c1eb57 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 27 Oct 2011 17:02:15 +0000 Subject: [PATCH 88/95] * GCC updated to 4.6.2. svn path=/nixpkgs/branches/stdenv-updates/; revision=30062 --- pkgs/development/compilers/gcc-4.6/default.nix | 2 +- pkgs/development/compilers/gcc-4.6/sources.nix | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/pkgs/development/compilers/gcc-4.6/default.nix b/pkgs/development/compilers/gcc-4.6/default.nix index 48b147fc863..cbbd3bdbf5d 100644 --- a/pkgs/development/compilers/gcc-4.6/default.nix +++ b/pkgs/development/compilers/gcc-4.6/default.nix @@ -44,7 +44,7 @@ assert cloog != null -> cloogppl == null; with stdenv.lib; with builtins; -let version = "4.6.1"; +let version = "4.6.2"; javaEcj = fetchurl { # The `$(top_srcdir)/ecj.jar' file is automatically picked up at # `configure' time. diff --git a/pkgs/development/compilers/gcc-4.6/sources.nix b/pkgs/development/compilers/gcc-4.6/sources.nix index e91f3facb8e..dc85ff10b51 100644 --- a/pkgs/development/compilers/gcc-4.6/sources.nix +++ b/pkgs/development/compilers/gcc-4.6/sources.nix @@ -1,31 +1,31 @@ /* Automatically generated by `update-gcc.sh', do not edit. - For GCC 4.6.1. */ + For GCC 4.6.2. */ { fetchurl, optional, version, langC, langCC, langFortran, langJava, langAda, langGo }: -assert version == "4.6.1"; +assert version == "4.6.2"; optional /* langC */ true (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-core-${version}.tar.bz2"; - sha256 = "0bbb8f754a31f29013f6e9ad4c755d92bb0f154a665c4b623e86ae7174d98e33"; + sha256 = "dcbf391f05277b7e09d14d54f3bdaba5515a3a8e7dd1d8af93af3f6f68455e10"; }) ++ optional langCC (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-g++-${version}.tar.bz2"; - sha256 = "44a91149bf4608aceb03b22209e5ec14ffe0c4003b11e3a368d6cebe5a327901"; + sha256 = "5470bea8093438cf5840fbbef3546b6dba7b0153ef6a16e142c1fba1fac6e598"; }) ++ optional langFortran (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-fortran-${version}.tar.bz2"; - sha256 = "a0069a4452572b46cc20f1a1b52dc839b69c1d25e19c147a782e439d6be0156b"; + sha256 = "492becd732662349eaa5e7c4e458ac009df0ccb8904df54ae295d277c4d6be6f"; }) ++ optional langJava (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-java-${version}.tar.bz2"; - sha256 = "728462275a0532714063803282d1ea815e35b5fd91a96f65a1f0a14da355765f"; + sha256 = "d021a16816daeb5db9a3280909d846b38cbdb4cc0d9aa47714c49b08a81d11f1"; }) ++ optional langAda (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-ada-${version}.tar.bz2"; - sha256 = "0e2958b7be2e7ec9d7847658262ce9276d6c75f91d53c48d7141848cfe3cd093"; + sha256 = "9ac26821ad900d02ed251b62e6a0506ee12417b506a7bb9b02ec9f09e5d9c84f"; }) ++ optional langGo (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-go-${version}.tar.bz2"; - sha256 = "9512347a76c46528d25295cd762f262c8265e99cee497dc2d66caddf9c021198"; + sha256 = "1cafbb254d70f60c39a62a39a3b236674e02c875a1775057ddd33ffafe0fd4e1"; }) ++ [] From 4d0d7d78c5f116c59cd2736d55a5928981be5dc7 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 27 Oct 2011 18:42:32 +0000 Subject: [PATCH 89/95] =?UTF-8?q?*=20Build=20Glibc=20with=20sysconfdir=20s?= =?UTF-8?q?et=20to=20/etc.=20=20This=20causes=20it=20to=20look=20for=20=20?= =?UTF-8?q?=20=E2=80=98localtime=E2=80=99=20(the=20default=20time=20zone?= =?UTF-8?q?=20definition)=20in=20/etc=20rather=20than=20=20=20$out/etc,=20?= =?UTF-8?q?allowing=20us=20to=20override=20the=20time=20zone=20globally=20?= =?UTF-8?q?in=20NixOS.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Note that Glibc already looked in /etc for most other configuration files (e.g., /etc/hosts). svn path=/nixpkgs/branches/stdenv-updates/; revision=30069 --- pkgs/development/libraries/glibc-2.13/common.nix | 3 +++ pkgs/development/libraries/glibc-2.14/common.nix | 3 +++ 2 files changed, 6 insertions(+) diff --git a/pkgs/development/libraries/glibc-2.13/common.nix b/pkgs/development/libraries/glibc-2.13/common.nix index 15941c2a43b..d63e7e99e48 100644 --- a/pkgs/development/libraries/glibc-2.13/common.nix +++ b/pkgs/development/libraries/glibc-2.13/common.nix @@ -90,6 +90,7 @@ stdenv.mkDerivation ({ configureFlags = [ "-C" "--enable-add-ons" + "--sysconfdir=/etc" "--localedir=/var/run/current-system/sw/lib/locale" (if kernelHeaders != null then "--with-headers=${kernelHeaders}/include" @@ -111,6 +112,8 @@ stdenv.mkDerivation ({ # so the glibc does not depend on its compiler store path "libc_cv_as_needed=no" ]; + + installFlags = [ "sysconfdir=$(out)/etc" ]; buildInputs = stdenv.lib.optionals (cross != null) [ gccCross ] ++ stdenv.lib.optional (mig != null) mig; diff --git a/pkgs/development/libraries/glibc-2.14/common.nix b/pkgs/development/libraries/glibc-2.14/common.nix index 87b808cda4b..e24089fd192 100644 --- a/pkgs/development/libraries/glibc-2.14/common.nix +++ b/pkgs/development/libraries/glibc-2.14/common.nix @@ -90,6 +90,7 @@ stdenv.mkDerivation ({ configureFlags = [ "-C" "--enable-add-ons" + "--sysconfdir=/etc" "--localedir=/var/run/current-system/sw/lib/locale" (if kernelHeaders != null then "--with-headers=${kernelHeaders}/include" @@ -111,6 +112,8 @@ stdenv.mkDerivation ({ # so the glibc does not depend on its compiler store path "libc_cv_as_needed=no" ]; + + installFlags = [ "sysconfdir=$(out)/etc" ]; buildInputs = stdenv.lib.optionals (cross != null) [ gccCross ] ++ stdenv.lib.optional (mig != null) mig; From 03e3e290bc97512960cd0a12181128ef495e28ca Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 4 Nov 2011 18:46:20 +0000 Subject: [PATCH 90/95] * Remove unused file. svn path=/nixpkgs/branches/stdenv-updates/; revision=30231 --- pkgs/development/libraries/openssl/1.x.nix | 45 ---------------------- 1 file changed, 45 deletions(-) delete mode 100644 pkgs/development/libraries/openssl/1.x.nix diff --git a/pkgs/development/libraries/openssl/1.x.nix b/pkgs/development/libraries/openssl/1.x.nix deleted file mode 100644 index eae32de30e4..00000000000 --- a/pkgs/development/libraries/openssl/1.x.nix +++ /dev/null @@ -1,45 +0,0 @@ -{ stdenv, fetchurl, perl }: - -let - opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ] - (throw "openssl needs its platform name cross building" null) - stdenv.cross; -in - -stdenv.mkDerivation (rec { - name = "openssl-1.0.0"; - - src = fetchurl { - url = "http://www.openssl.org/source/${name}.tar.gz"; - sha1 = "3f800ea9fa3da1c0f576d689be7dca3d55a4cb62"; - }; - - buildNativeInputs = [ perl ]; - - configureScript = "./config"; - - configureFlags="--libdir=lib shared"; - - crossAttrs = { - preConfigure='' - export cross=$crossSystem- - ''; - configureFlags="--libdir=lib ${opensslCrossSystem} shared"; - buildPhase = '' - make CC=$crossConfig-gcc \ - AR="$crossConfig-ar r" \ - RANLIB=$crossConfig-ranlib - ''; - }; - - meta = { - homepage = http://www.openssl.org/; - description = "A cryptographic library that implements the SSL and TLS protocols"; - }; -} -// -(if stdenv.isDarwin then { - patches = ./darwin-arch.patch; -} -else { }) -) From a35804be30b9ccaf0c0407a7b39c0a758ead0c90 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 4 Nov 2011 18:48:00 +0000 Subject: [PATCH 91/95] * Another unused file. svn path=/nixpkgs/branches/stdenv-updates/; revision=30232 --- .../libraries/openssl/darwin-arch-1.patch | 16 ---------------- 1 file changed, 16 deletions(-) delete mode 100644 pkgs/development/libraries/openssl/darwin-arch-1.patch diff --git a/pkgs/development/libraries/openssl/darwin-arch-1.patch b/pkgs/development/libraries/openssl/darwin-arch-1.patch deleted file mode 100644 index ad8e86c6791..00000000000 --- a/pkgs/development/libraries/openssl/darwin-arch-1.patch +++ /dev/null @@ -1,16 +0,0 @@ -The patch is specific to nix: MacOS gcc supports -arch. ---- a/Configure -+++ b/Configure -@@ -549,9 +549,9 @@ my %table=( - "rhapsody-ppc-cc","cc:-O3 -DB_ENDIAN::(unknown):MACOSX_RHAPSODY::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}::", - "darwin-ppc-cc","cc:-arch ppc -O3 -DB_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${ppc32_asm}:osx32:dlfcn:darwin-shared:-fPIC -fno-common:-arch ppc -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib", - "darwin64-ppc-cc","cc:-arch ppc64 -O3 -DB_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${ppc64_asm}:osx64:dlfcn:darwin-shared:-fPIC -fno-common:-arch ppc64 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib", --"darwin-i386-cc","cc:-arch i386 -O3 -fomit-frame-pointer -DL_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_INT RC4_CHUNK DES_UNROLL BF_PTR:${x86_asm}:macosx:dlfcn:darwin-shared:-fPIC -fno-common:-arch i386 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib", --"debug-darwin-i386-cc","cc:-arch i386 -g3 -DL_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_INT RC4_CHUNK DES_UNROLL BF_PTR:${x86_asm}:macosx:dlfcn:darwin-shared:-fPIC -fno-common:-arch i386 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib", --"darwin64-x86_64-cc","cc:-arch x86_64 -O3 -DL_ENDIAN -DMD32_REG_T=int -Wall::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:macosx:dlfcn:darwin-shared:-fPIC -fno-common:-arch x86_64 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib", -+"darwin-i386-cc","cc:-O3 -fomit-frame-pointer -DL_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_INT RC4_CHUNK DES_UNROLL BF_PTR:${x86_asm}:macosx:dlfcn:darwin-shared:-fPIC -fno-common:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib", -+"debug-darwin-i386-cc","cc:-g3 -DL_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_INT RC4_CHUNK DES_UNROLL BF_PTR:${x86_asm}:macosx:dlfcn:darwin-shared:-fPIC -fno-common:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib", -+"darwin64-x86_64-cc","cc:-O3 -DL_ENDIAN -DMD32_REG_T=int -Wall::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:macosx:dlfcn:darwin-shared:-fPIC -fno-common:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib", - "debug-darwin-ppc-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG -DB_ENDIAN -g -Wall -O::-D_REENTRANT:MACOSX::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${ppc32_asm}:osx32:dlfcn:darwin-shared:-fPIC:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib", - - ##### A/UX From a839947b85dcd648ff350438d3529be94afafa88 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 4 Nov 2011 18:48:25 +0000 Subject: [PATCH 92/95] * Make OpenSSL 1.0.0e the default. svn path=/nixpkgs/branches/stdenv-updates/; revision=30233 --- pkgs/development/libraries/openssl/1.0.0e.nix | 74 ------------------- .../development/libraries/openssl/default.nix | 18 ++++- pkgs/top-level/all-packages.nix | 3 - 3 files changed, 15 insertions(+), 80 deletions(-) delete mode 100644 pkgs/development/libraries/openssl/1.0.0e.nix diff --git a/pkgs/development/libraries/openssl/1.0.0e.nix b/pkgs/development/libraries/openssl/1.0.0e.nix deleted file mode 100644 index 01f9eca15bb..00000000000 --- a/pkgs/development/libraries/openssl/1.0.0e.nix +++ /dev/null @@ -1,74 +0,0 @@ -{ stdenv, fetchurl, perl }: - -let - name = "openssl-1.0.0e"; - - opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ] - (throw "openssl needs its platform name cross building" null) - stdenv.cross; -in - -stdenv.mkDerivation { - inherit name; - - src = fetchurl { - url = "http://www.openssl.org/source/${name}.tar.gz"; - sha256 = "1xw0ffzmr4wbnb0glywgks375dvq8x87pgxmwx6vhgvkflkxqqg3"; - }; - - patches = - [ # Allow the location of the X509 certificate file (the CA - # bundle) to be set through the environment variable - # ‘OPENSSL_X509_CERT_FILE’. This is necessary because the - # default location ($out/ssl/cert.pem) doesn't exist, and - # hardcoding something like /etc/ssl/cert.pem is impure and - # cannot be overriden per-process. For security, the - # environment variable is ignored for setuid binaries. - ./cert-file.patch - ] - ++ stdenv.lib.optional stdenv.isDarwin ./darwin-arch.patch; - - buildNativeInputs = [ perl ]; - - # On x86_64-darwin, "./config" misdetects the system as - # "darwin-i386-cc". So specify the system type explicitly. - configureScript = - if stdenv.system == "x86_64-darwin" then "./Configure darwin64-x86_64-cc" else "./config"; - - configureFlags = "shared --libdir=lib"; - - makeFlags = "MANDIR=$(out)/share/man"; - - postInstall = - '' - # If we're building dynamic libraries, then don't install static - # libraries. - if [ -n "$(echo $out/lib/*.so)" ]; then - rm $out/lib/*.a - fi - ''; # */ - - crossAttrs = { - preConfigure='' - # It's configure does not like --build or --host - export configureFlags="--libdir=lib --cross-compile-prefix=${stdenv.cross.config}- shared ${opensslCrossSystem}" - ''; - - postInstall = '' - # Openssl installs readonly files, which otherwise we can't strip. - # This could at some stdenv hash change be put out of crossAttrs, too - chmod -R +w $out - - # Remove references to perl, to avoid depending on it at runtime - rm $out/bin/c_rehash $out/ssl/misc/CA.pl $out/ssl/misc/tsget - ''; - configureScript = "./Configure"; - }; - - meta = { - homepage = http://www.openssl.org/; - description = "A cryptographic library that implements the SSL and TLS protocols"; - platforms = stdenv.lib.platforms.all; - maintainers = [ stdenv.lib.maintainers.simons ]; - }; -} diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index e51b88f5bca..01f9eca15bb 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.0d"; + name = "openssl-1.0.0e"; opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ] (throw "openssl needs its platform name cross building" null) @@ -13,10 +13,20 @@ stdenv.mkDerivation { src = fetchurl { url = "http://www.openssl.org/source/${name}.tar.gz"; - sha256 = "1nr0cf6pf8i4qsnx31kqhiqv402xgn76yhjhlbdri8ma1hgislcj"; + sha256 = "1xw0ffzmr4wbnb0glywgks375dvq8x87pgxmwx6vhgvkflkxqqg3"; }; - patches = stdenv.lib.optional stdenv.isDarwin ./darwin-arch.patch; + patches = + [ # Allow the location of the X509 certificate file (the CA + # bundle) to be set through the environment variable + # ‘OPENSSL_X509_CERT_FILE’. This is necessary because the + # default location ($out/ssl/cert.pem) doesn't exist, and + # hardcoding something like /etc/ssl/cert.pem is impure and + # cannot be overriden per-process. For security, the + # environment variable is ignored for setuid binaries. + ./cert-file.patch + ] + ++ stdenv.lib.optional stdenv.isDarwin ./darwin-arch.patch; buildNativeInputs = [ perl ]; @@ -27,6 +37,8 @@ stdenv.mkDerivation { configureFlags = "shared --libdir=lib"; + makeFlags = "MANDIR=$(out)/share/man"; + postInstall = '' # If we're building dynamic libraries, then don't install static diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cc6a92ccb2e..a2386ed3220 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4265,7 +4265,6 @@ let neon029 = callPackage ../development/libraries/neon/0.29.nix { compressionSupport = true; sslSupport = true; - openssl = opensslNew; }; nethack = builderDefsPackage (import ../games/nethack) { @@ -4339,8 +4338,6 @@ let fetchurl = fetchurlBoot; }; - opensslNew = callPackage ../development/libraries/openssl/1.0.0e.nix { }; - ortp = callPackage ../development/libraries/ortp { }; pangoxsl = callPackage ../development/libraries/pangoxsl { From 0880b96a3d04a35ddad29a347e5607693723c9e1 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 7 Nov 2011 22:54:45 +0000 Subject: [PATCH 93/95] * Apply the zlib/cmake updates from the trunk. svn path=/nixpkgs/branches/stdenv-updates/; revision=30309 --- pkgs/development/libraries/zlib/default.nix | 2 ++ .../libraries/zlib/zlib-LARGEFILE64_SOURCE.patch | 14 ++++++++++++++ .../tools/build-managers/cmake/default.nix | 4 ++-- 3 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 pkgs/development/libraries/zlib/zlib-LARGEFILE64_SOURCE.patch diff --git a/pkgs/development/libraries/zlib/default.nix b/pkgs/development/libraries/zlib/default.nix index 13157601e6f..6af8126f5a9 100644 --- a/pkgs/development/libraries/zlib/default.nix +++ b/pkgs/development/libraries/zlib/default.nix @@ -8,6 +8,8 @@ stdenv.mkDerivation (rec { sha256 = "0n7rlgvjn73pyil3s1l6p77m7wkc809n934rnzxv1b1za4pfar30"; }; + patches = [ ./zlib-LARGEFILE64_SOURCE.patch ]; + configureFlags = if static then "" else "--shared"; preConfigure = '' diff --git a/pkgs/development/libraries/zlib/zlib-LARGEFILE64_SOURCE.patch b/pkgs/development/libraries/zlib/zlib-LARGEFILE64_SOURCE.patch new file mode 100644 index 00000000000..ff308ba3f5e --- /dev/null +++ b/pkgs/development/libraries/zlib/zlib-LARGEFILE64_SOURCE.patch @@ -0,0 +1,14 @@ + Fix compilation with _LARGEFILE64_SOURCE + +diff -ur zlib-1.2.5.orig/zlib.h zlib-1.2.5/zlib.h +--- zlib-1.2.5.orig/zlib.h 2010-04-20 06:12:48.000000000 +0200 ++++ zlib-1.2.5/zlib.h 2010-09-27 21:20:27.398694997 +0200 +@@ -1578,7 +1578,7 @@ + # define gzoffset gzoffset64 + # define adler32_combine adler32_combine64 + # define crc32_combine crc32_combine64 +-# ifdef _LARGEFILE64_SOURCE ++# ifndef _LARGEFILE64_SOURCE + ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *)); + ZEXTERN z_off_t ZEXPORT gzseek64 OF((gzFile, z_off_t, int)); + ZEXTERN z_off_t ZEXPORT gztell64 OF((gzFile)); diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix index c7484ee6e84..249e441be5d 100644 --- a/pkgs/development/tools/build-managers/cmake/default.nix +++ b/pkgs/development/tools/build-managers/cmake/default.nix @@ -7,7 +7,7 @@ with stdenv.lib; let os = stdenv.lib.optionalString; majorVersion = "2.8"; - minorVersion = "4"; + minorVersion = "6"; version = "${majorVersion}.${minorVersion}"; in @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "${meta.homepage}files/v${majorVersion}/cmake-${version}.tar.gz"; - sha256 = "1k2kjaj3vfifb329ff7fr4hcbpbaqb66l97pshq70h7m0zwajznr"; + sha256 = "13kjfpgsrsygz693bzaf2pf9avzr1r56r6znn3zqaz9nmj0rp6g6"; }; patches = From 91ab98ce09f5f7d62932d198f678663d0cf40721 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 8 Nov 2011 01:30:02 +0000 Subject: [PATCH 94/95] * Update patchelf. svn path=/nixpkgs/branches/stdenv-updates/; revision=30312 --- pkgs/development/tools/misc/patchelf/0.6.nix | 16 ---------------- pkgs/development/tools/misc/patchelf/default.nix | 8 ++++---- pkgs/top-level/all-packages.nix | 3 --- 3 files changed, 4 insertions(+), 23 deletions(-) delete mode 100644 pkgs/development/tools/misc/patchelf/0.6.nix diff --git a/pkgs/development/tools/misc/patchelf/0.6.nix b/pkgs/development/tools/misc/patchelf/0.6.nix deleted file mode 100644 index 5a2a7c1d716..00000000000 --- a/pkgs/development/tools/misc/patchelf/0.6.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ stdenv, fetchurl }: - -stdenv.mkDerivation rec { - name = "patchelf-0.6pre29192"; - - src = fetchurl { - url = "http://hydra.nixos.org/build/1319933/download/2/${name}.tar.bz2"; - sha256 = "1873d76994c112355f53d1ac6233ce334d0852ce67cae6b21f492b9b8e0b48b5"; - }; - - meta = { - homepage = http://nixos.org/patchelf.html; - license = "GPL"; - description = "A small utility to modify the dynamic linker and RPATH of ELF executables"; - }; -} diff --git a/pkgs/development/tools/misc/patchelf/default.nix b/pkgs/development/tools/misc/patchelf/default.nix index 43944ca9acd..857aa1cabcf 100644 --- a/pkgs/development/tools/misc/patchelf/default.nix +++ b/pkgs/development/tools/misc/patchelf/default.nix @@ -1,11 +1,11 @@ -{stdenv, fetchurl}: +{ stdenv, fetchurl }: stdenv.mkDerivation rec { - name = "patchelf-0.5"; - + name = "patchelf-0.6"; + src = fetchurl { url = "http://nixos.org/releases/patchelf/${name}/${name}.tar.bz2"; - sha256 = "24b9a850af45e1a277e234b9eb090b52305a2e1c6b02addeb3ae98b4b49d37ce"; + sha256 = "fc7e7fa95f282fc37a591a802629e0e1ed07bc2a8bf162228d9a69dd76127c01"; }; meta = { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a2386ed3220..d888d30eb13 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2966,8 +2966,6 @@ let patchelf = callPackage ../development/tools/misc/patchelf { }; - patchelf06 = callPackage ../development/tools/misc/patchelf/0.6.nix { }; - peg = callPackage ../development/tools/parsing/peg { }; pmccabe = callPackage ../development/tools/misc/pmccabe { }; @@ -6388,7 +6386,6 @@ let chrome = callPackage ../applications/networking/browsers/chromium { inherit (gnome) GConf; - patchelf = patchelf06; }; chromeWrapper = wrapFirefox From 32b3de1f9602404e058f2e877a1c9785c4c1074b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Tue, 8 Nov 2011 22:51:11 +0000 Subject: [PATCH 95/95] Updating the zlib patch to the patch proposed in the zlib-devel list regarding this issue. svn path=/nixpkgs/branches/stdenv-updates/; revision=30349 --- .../zlib/zlib-LARGEFILE64_SOURCE.patch | 81 ++++++++++++++++--- 1 file changed, 68 insertions(+), 13 deletions(-) diff --git a/pkgs/development/libraries/zlib/zlib-LARGEFILE64_SOURCE.patch b/pkgs/development/libraries/zlib/zlib-LARGEFILE64_SOURCE.patch index ff308ba3f5e..5278d81ba83 100644 --- a/pkgs/development/libraries/zlib/zlib-LARGEFILE64_SOURCE.patch +++ b/pkgs/development/libraries/zlib/zlib-LARGEFILE64_SOURCE.patch @@ -1,14 +1,69 @@ - Fix compilation with _LARGEFILE64_SOURCE +http://mail.madler.net/pipermail/zlib-devel_madler.net/2011-June/002583.html -diff -ur zlib-1.2.5.orig/zlib.h zlib-1.2.5/zlib.h ---- zlib-1.2.5.orig/zlib.h 2010-04-20 06:12:48.000000000 +0200 -+++ zlib-1.2.5/zlib.h 2010-09-27 21:20:27.398694997 +0200 -@@ -1578,7 +1578,7 @@ - # define gzoffset gzoffset64 - # define adler32_combine adler32_combine64 - # define crc32_combine crc32_combine64 --# ifdef _LARGEFILE64_SOURCE -+# ifndef _LARGEFILE64_SOURCE - ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *)); - ZEXTERN z_off_t ZEXPORT gzseek64 OF((gzFile, z_off_t, int)); - ZEXTERN z_off_t ZEXPORT gztell64 OF((gzFile)); +[Zlib-devel] Possible typo in zlib.h + +Mark Adler madler at madler.net + +*** ../zlib-1.2.5/zlib.h 2010-04-19 21:12:48.000000000 -0700 +--- zlib.h 2011-02-26 21:23:30.000000000 -0800 +*************** +*** 1572,1584 **** + #endif + + #if !defined(ZLIB_INTERNAL) && _FILE_OFFSET_BITS-0 == 64 && _LFS64_LARGEFILE-0 +! # define gzopen gzopen64 +! # define gzseek gzseek64 +! # define gztell gztell64 +! # define gzoffset gzoffset64 +! # define adler32_combine adler32_combine64 +! # define crc32_combine crc32_combine64 +! # ifdef _LARGEFILE64_SOURCE + ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *)); + ZEXTERN z_off_t ZEXPORT gzseek64 OF((gzFile, z_off_t, int)); + ZEXTERN z_off_t ZEXPORT gztell64 OF((gzFile)); +--- 1580,1601 ---- + #endif + + #if !defined(ZLIB_INTERNAL) && _FILE_OFFSET_BITS-0 == 64 && _LFS64_LARGEFILE-0 +! # ifdef Z_PREFIX_SET +! # define z_gzopen z_gzopen64 +! # define z_gzseek z_gzseek64 +! # define z_gztell z_gztell64 +! # define z_gzoffset z_gzoffset64 +! # define z_adler32_combine z_adler32_combine64 +! # define z_crc32_combine z_crc32_combine64 +! # else +! # define gzopen gzopen64 +! # define gzseek gzseek64 +! # define gztell gztell64 +! # define gzoffset gzoffset64 +! # define adler32_combine adler32_combine64 +! # define crc32_combine crc32_combine64 +! # endif +! # ifndef _LARGEFILE64_SOURCE + ZEXTERN gzFile ZEXPORT gzopen64 OF((const char *, const char *)); + ZEXTERN z_off_t ZEXPORT gzseek64 OF((gzFile, z_off_t, int)); + ZEXTERN z_off_t ZEXPORT gztell64 OF((gzFile)); +*** ../zlib-1.2.5/zconf.h.in 2010-04-18 10:58:06.000000000 -0700 +--- zconf.h.in 2010-07-18 09:05:49.000000000 -0700 +*************** +*** 374,380 **** + # undef _LARGEFILE64_SOURCE + #endif + +! #if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE) + # include /* for SEEK_* and off_t */ + # ifdef VMS + # include /* for off_t */ +--- 375,385 ---- + # undef _LARGEFILE64_SOURCE + #endif + +! #if defined(_LARGEFILE64_SOURCE) && _LFS64_LARGEFILE-0 +! # define Z_LARGE +! #endif +! +! #if defined(Z_HAVE_UNISTD_H) || defined(Z_LARGE) + # include /* for SEEK_* and off_t */ + # ifdef VMS + # include /* for off_t */