From 601b69a21876b856d8e98da8de71e7704a785645 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Sun, 30 Dec 2012 15:22:40 +0100 Subject: [PATCH 001/286] Setting the stdenv compiler to gcc 4.7. --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f8bda788333..b53609666f1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1884,7 +1884,7 @@ let gambit = callPackage ../development/compilers/gambit { }; - gcc = gcc46; + gcc = gcc47; gcc295 = wrapGCC (import ../development/compilers/gcc/2.95 { inherit fetchurl stdenv noSysDirs; From 8067f1469947d7eddec3d797edf39475ac1b1768 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Mon, 31 Dec 2012 10:13:55 +0100 Subject: [PATCH 002/286] Fixing the gcc47 build in stdenv gcc 4.7 wants an explicit reference to the system include directory, and that's guessed through 'stdenv ? glibc'. --- pkgs/stdenv/linux/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index e4a8bd77076..e8e089695c0 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -214,6 +214,9 @@ rec { cloog = pkgs.cloog.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; }; ppl = pkgs.ppl.override { stdenv = pkgs.makeStaticLibraries pkgs.stdenv; }; }; + extraAttrs = { + glibc = stdenvLinuxGlibc; # Required by gcc47 build + }; inherit fetchurl; }; From bbc494644f1c10bb7ecf60dd6bd5cf72cb98e223 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Sat, 5 Jan 2013 22:14:59 +0400 Subject: [PATCH 003/286] ARMv7 seems to need special ARM unpacking procedure, too --- pkgs/stdenv/linux/default.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 5d9a0cf750a..45ba2c58811 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -58,9 +58,10 @@ rec { builder = bootstrapFiles.sh; args = - if (system == "armv5tel-linux" || system == "armv6l-linux") - then [ ./scripts/unpack-bootstrap-tools-arm.sh ] - else [ ./scripts/unpack-bootstrap-tools.sh ]; + if (system == "armv5tel-linux" || system == "armv6l-linux" + || system == "armv7l-linux") + then ./scripts/unpack-bootstrap-tools-arm.sh + else ./scripts/unpack-bootstrap-tools.sh; inherit (bootstrapFiles) bzip2 mkdir curl cpio; From 21e57a0d08e054813385773402b0dd568c8f6f9e Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Sat, 5 Jan 2013 22:49:31 +0400 Subject: [PATCH 004/286] Not all parenthesis are extraneous, after all --- pkgs/stdenv/linux/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 45ba2c58811..21867be0b44 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -58,10 +58,10 @@ rec { builder = bootstrapFiles.sh; args = - if (system == "armv5tel-linux" || system == "armv6l-linux" - || system == "armv7l-linux") - then ./scripts/unpack-bootstrap-tools-arm.sh - else ./scripts/unpack-bootstrap-tools.sh; + if system == "armv5tel-linux" || system == "armv6l-linux" + || system == "armv7l-linux" + then [ ./scripts/unpack-bootstrap-tools-arm.sh ] + else [ ./scripts/unpack-bootstrap-tools.sh ]; inherit (bootstrapFiles) bzip2 mkdir curl cpio; From ed2f075930f3f7280136c7863dbc5efc3df94b51 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Sat, 5 Jan 2013 23:28:22 +0400 Subject: [PATCH 005/286] ARMv7l fails in strange way with ARMv5 bootstrap but works with ARMv6 bootstrap --- 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 21867be0b44..c2e2045cbd1 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -17,7 +17,7 @@ rec { else if system == "powerpc-linux" then import ./bootstrap/powerpc else if system == "armv5tel-linux" then import ./bootstrap/armv5tel else if system == "armv6l-linux" then import ./bootstrap/armv6l - else if system == "armv7l-linux" then import ./bootstrap/armv5tel + else if system == "armv7l-linux" then import ./bootstrap/armv6l else if system == "mips64el-linux" then import ./bootstrap/loongson2f else abort "unsupported platform for the pure Linux stdenv"; From b7e2799d329cf366de1d90291632f95259c7514d Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 11 Jan 2013 15:52:42 +0100 Subject: [PATCH 006/286] gmp: version 5.1.0 has the cpu-id patch applied already --- pkgs/development/libraries/gmp/5.1.0.nix | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/pkgs/development/libraries/gmp/5.1.0.nix b/pkgs/development/libraries/gmp/5.1.0.nix index 88d639e621b..270788198f6 100644 --- a/pkgs/development/libraries/gmp/5.1.0.nix +++ b/pkgs/development/libraries/gmp/5.1.0.nix @@ -4,13 +4,10 @@ stdenv.mkDerivation rec { name = "gmp-5.1.0"; src = fetchurl { - urls = [ "mirror://gnu/gmp/${name}.tar.bz2" - "ftp://ftp.gmplib.org/pub/${name}/${name}.tar.bz2" ]; + urls = [ "mirror://gnu/gmp/${name}.tar.bz2" "ftp://ftp.gmplib.org/pub/${name}/${name}.tar.bz2" ]; sha256 = "15n7xxgasbxdch8ii8z9ic6fxc2ysk3q8iavf55abjp5iylspnfz"; }; - patches = [ ./ignore-bad-cpuid.patch ]; - nativeBuildInputs = [ m4 ]; configureFlags = From 996da754e4444197176c3ed0f2be02141b48954f Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 11 Jan 2013 16:15:16 +0100 Subject: [PATCH 007/286] gmp: switch default version back to 5.0.5 The 5.1.0 version breaks the build of virtually every package that uses the C++ wrappers for gmp (such as mpfr, ppl, etc). --- pkgs/development/libraries/gmp/5.0.5.nix | 55 ++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 +- 2 files changed, 58 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/libraries/gmp/5.0.5.nix diff --git a/pkgs/development/libraries/gmp/5.0.5.nix b/pkgs/development/libraries/gmp/5.0.5.nix new file mode 100644 index 00000000000..62acc974caa --- /dev/null +++ b/pkgs/development/libraries/gmp/5.0.5.nix @@ -0,0 +1,55 @@ +{ stdenv, fetchurl, m4, cxx ? true }: + +stdenv.mkDerivation rec { + name = "gmp-5.0.5"; + + src = fetchurl { + url = "mirror://gnu/gmp/${name}.tar.bz2"; + sha256 = "1jfymbr90mpn0zw5sg001llqnvf2462y77vgjknrmfs1rjn8ln0z"; + }; + + nativeBuildInputs = [ m4 ]; + + configureFlags = + # Build a "fat binary", with routines for several sub-architectures + # (x86), except on Solaris where some tests crash with "Memory fault". + # See , for instance. + (stdenv.lib.optional (!stdenv.isSunOS) "--enable-fat") + ++ (if cxx then [ "--enable-cxx" ] else [ "--disable-cxx" ]); + + doCheck = true; + + enableParallelBuilding = true; + + meta = { + description = "GMP, the GNU multiple precision arithmetic library"; + + longDescription = + '' GMP is a free library for arbitrary precision arithmetic, operating + on signed integers, rational numbers, and floating point numbers. + There is no practical limit to the precision except the ones implied + by the available memory in the machine GMP runs on. GMP has a rich + set of functions, and the functions have a regular interface. + + The main target applications for GMP are cryptography applications + and research, Internet security applications, algebra systems, + computational algebra research, etc. + + GMP is carefully designed to be as fast as possible, both for small + operands and for huge operands. The speed is achieved by using + fullwords as the basic arithmetic type, by using fast algorithms, + with highly optimised assembly code for the most common inner loops + for a lot of CPUs, and by a general emphasis on speed. + + GMP is faster than any other bignum library. The advantage for GMP + increases with the operand sizes for many operations, since GMP uses + asymptotically faster algorithms. + ''; + + homepage = http://gmplib.org/; + license = "LGPLv3+"; + + maintainers = [ stdenv.lib.maintainers.ludo stdenv.lib.maintainers.simons ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2f61e43158d..6ebb71ee147 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3768,7 +3768,9 @@ let # The GHC bootstrap binaries link against libgmp.so.3, which is in GMP 4.x. gmp4 = callPackage ../development/libraries/gmp/4.3.2.nix { }; - gmp5 = callPackage ../development/libraries/gmp/5.1.0.nix { }; + gmp5 = callPackage ../development/libraries/gmp/5.0.5.nix { }; + + gmp51 = callPackage ../development/libraries/gmp/5.1.0.nix { }; gobjectIntrospection = callPackage ../development/libraries/gobject-introspection { }; From 82e852160bc170ecd91b56343cdaf6d6c55ce1fb Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 11 Jan 2013 16:15:28 +0100 Subject: [PATCH 008/286] all-packages.nix: strip trailing whitespace --- 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 6ebb71ee147..eca8e9c3b94 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -415,9 +415,9 @@ let inherit pkgs; pkgs_i686 = pkgsi686Linux; }; - + xcodeenv = callPackage ../development/mobile/xcodeenv { }; - + titaniumenv = import ../development/mobile/titaniumenv { inherit pkgs; pkgs_i686 = pkgsi686Linux; From c77946fa70ec3a6a8c7fb3f28e15e230ed55e915 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 11 Jan 2013 17:03:03 +0100 Subject: [PATCH 009/286] ppl: update to version 0.12.1 --- pkgs/development/libraries/ppl/default.nix | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/pkgs/development/libraries/ppl/default.nix b/pkgs/development/libraries/ppl/default.nix index b24b4e06cb9..ca37881ae95 100644 --- a/pkgs/development/libraries/ppl/default.nix +++ b/pkgs/development/libraries/ppl/default.nix @@ -1,13 +1,13 @@ { fetchurl, stdenv, gmpxx, perl, gnum4 }: -let version = "0.11.2"; in +let version = "0.12.1"; in stdenv.mkDerivation rec { name = "ppl-${version}"; src = fetchurl { url = "http://bugseng.com/products/ppl/download/ftp/releases/${version}/ppl-${version}.tar.bz2"; - sha256 = "1sxviip4yk6gp453pid5scy1ba66dzdpr02i1416yk7lkv0x3yz3"; + sha256 = "165iy8bmkgszs0v8lkb1mzwp53x4vkcc7m1xdpv8w77qf93ya8j0"; }; nativeBuildInputs = [ perl gnum4 ]; @@ -23,7 +23,9 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; meta = { + homepage = "http://www.cs.unipr.it/ppl/"; description = "PPL: The Parma Polyhedra Library"; + license = "GPLv3+"; longDescription = '' The Parma Polyhedra Library (PPL) provides numerical abstractions @@ -40,10 +42,6 @@ stdenv.mkDerivation rec { version of the simplex algorithm. ''; - homepage = http://www.cs.unipr.it/ppl/; - - license = "GPLv3+"; - maintainers = [ stdenv.lib.maintainers.ludo ]; }; } From 0728c65af6860052dcd25365559283aecfef36ee Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 11 Jan 2013 17:04:20 +0100 Subject: [PATCH 010/286] mpfr: update to version 3.1.1 --- 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 faa2e1b1a71..db5af11a670 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.1.0"; + name = "mpfr-3.1.1"; src = fetchurl { url = "mirror://gnu/mpfr/${name}.tar.bz2"; - sha256 = "105nx8qqx5x8f4rlplr2wk4cyv61iw5j3jgi2k21rpb8s6xbp9vl"; + sha256 = "1zfmmk4p26b67qpmh787p3dfxa71yd9mi02c4q45yf687pqw6rkv"; }; buildInputs = [ gmp ]; From 9b003f066815a1f43a6ef52720b47c4e5107a403 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 11 Jan 2013 17:04:44 +0100 Subject: [PATCH 011/286] mpc: update to version 1.0.1 --- pkgs/development/libraries/mpc/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/mpc/default.nix b/pkgs/development/libraries/mpc/default.nix index 3824e3d3755..e5d212dc269 100644 --- a/pkgs/development/libraries/mpc/default.nix +++ b/pkgs/development/libraries/mpc/default.nix @@ -1,11 +1,11 @@ { fetchurl, stdenv, gmp, mpfr }: stdenv.mkDerivation rec { - name = "mpc-0.9"; + name = "mpc-1.0.1"; src = fetchurl { url = "http://www.multiprecision.org/mpc/download/${name}.tar.gz"; - sha1 = "229722d553030734d49731844abfef7617b64f1a"; + sha1 = "vxg0rkyn4cs40wr2cp6bbcyr1nnijzlc"; }; buildInputs = [ gmp mpfr ]; From eebc0c6965f5581d3a31aa63d5e91ad3d3a7deaa Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Sun, 13 Jan 2013 11:27:29 +0100 Subject: [PATCH 012/286] gmp: add back the cpuid patch to 5.0.5 it was lost during 5.0.5 -> 5.1.0 -> 5.1.0 w/o patch -> 5.0.5 w/o patch --- pkgs/development/libraries/gmp/5.0.5.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/libraries/gmp/5.0.5.nix b/pkgs/development/libraries/gmp/5.0.5.nix index 62acc974caa..dba5cafdf57 100644 --- a/pkgs/development/libraries/gmp/5.0.5.nix +++ b/pkgs/development/libraries/gmp/5.0.5.nix @@ -8,6 +8,8 @@ stdenv.mkDerivation rec { sha256 = "1jfymbr90mpn0zw5sg001llqnvf2462y77vgjknrmfs1rjn8ln0z"; }; + patches = [ ./ignore-bad-cpuid.patch ]; + nativeBuildInputs = [ m4 ]; configureFlags = From 755dac3c6d50ad43abf22503a327a876db26ed81 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Sun, 13 Jan 2013 11:33:45 +0100 Subject: [PATCH 013/286] buildNativeInputs -> nativeBuildInputs --- pkgs/applications/editors/zile/default.nix | 2 +- pkgs/development/libraries/eigen/2.0.nix | 8 ++++---- pkgs/development/tools/phantomjs/default.nix | 2 +- pkgs/tools/graphics/argyllcms/default.nix | 2 +- pkgs/tools/misc/youtube-dl/default.nix | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/applications/editors/zile/default.nix b/pkgs/applications/editors/zile/default.nix index ea2000b57db..5929f4c76c8 100644 --- a/pkgs/applications/editors/zile/default.nix +++ b/pkgs/applications/editors/zile/default.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ help2man perl ]; # `help2man' wants to run Zile, which fails when cross-compiling. - crossAttrs.buildNativeInputs = []; + crossAttrs.nativeBuildInputs = []; # Tests can't be run because most of them rely on the ability to # fiddle with the terminal. diff --git a/pkgs/development/libraries/eigen/2.0.nix b/pkgs/development/libraries/eigen/2.0.nix index 6884aca16fc..9cf0a3c350c 100644 --- a/pkgs/development/libraries/eigen/2.0.nix +++ b/pkgs/development/libraries/eigen/2.0.nix @@ -5,15 +5,15 @@ let in stdenv.mkDerivation { name = "eigen-${v}"; - + src = fetchurl { url = "http://bitbucket.org/eigen/eigen/get/${v}.tar.bz2"; name = "eigen-${v}.tar.bz2"; sha256 = "1akcb4g5hvc664gfc6sxb6f6jrm55fgks6017wg0smyvmm6k09v0"; }; - - buildNativeInputs = [ cmake ]; - + + nativeBuildInputs = [ cmake ]; + meta = with stdenv.lib; { description = "C++ template library for linear algebra: vectors, matrices, and related algorithms"; license = licenses.lgpl3Plus; diff --git a/pkgs/development/tools/phantomjs/default.nix b/pkgs/development/tools/phantomjs/default.nix index 33b99e12de5..5d9433cc5ca 100644 --- a/pkgs/development/tools/phantomjs/default.nix +++ b/pkgs/development/tools/phantomjs/default.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { sha256 = "1m14czhi3b388didn0a881glsx8bnsg9gnxgj5lghr4l5mgqyrd7"; }; - buildNativeInputs = stdenv.lib.optional (stdenv.system == "x86_64-linux") upx; + nativeBuildInputs = stdenv.lib.optional (stdenv.system == "x86_64-linux") upx; buildPhase = stdenv.lib.optionalString (stdenv.system == "x86_64-linux") '' upx -d bin/phantomjs diff --git a/pkgs/tools/graphics/argyllcms/default.nix b/pkgs/tools/graphics/argyllcms/default.nix index 08cd012e079..934a27ef25b 100644 --- a/pkgs/tools/graphics/argyllcms/default.nix +++ b/pkgs/tools/graphics/argyllcms/default.nix @@ -47,7 +47,7 @@ stdenv.mkDerivation rec { -ljpeg -ltiff ; ''; - buildNativeInputs = [ jam unzip ]; + nativeBuildInputs = [ jam unzip ]; preConfigure = '' cp ${jamTop} Jamtop diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix index 52c8e493fdc..40f19dc89e0 100644 --- a/pkgs/tools/misc/youtube-dl/default.nix +++ b/pkgs/tools/misc/youtube-dl/default.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation { }; buildInputs = [ python ]; - buildNativeInputs = [ pandoc zip ]; + nativeBuildInputs = [ pandoc zip ]; patchPhase = '' rm youtube-dl From cf42601f92c400b81c0db4b0c932075290811cc7 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Wed, 20 Feb 2013 09:18:26 +0000 Subject: [PATCH 014/286] Coreutils update and Illumos compatibility fixes. - GNU Coreutils 8.21 - Add is64Bit checks to stdenv for Solaris. - Fix OpenSSL Illumos build. --- pkgs/development/libraries/openssl/default.nix | 4 +++- pkgs/stdenv/generic/default.nix | 6 ++++-- pkgs/tools/misc/coreutils/default.nix | 12 ++++++++---- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index 640b99df547..55beb8bbc53 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -53,7 +53,9 @@ stdenv.mkDerivation { # 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"; + if stdenv.system == "x86_64-darwin" then "./Configure darwin64-x86_64-cc" + else if stdenv.system == "x86_64-solaris" then "./Configure solaris64-x86_64-gcc" + else "./config"; configureFlags = "shared --libdir=lib --openssldir=etc/ssl" + stdenv.lib.optionalString withCryptodev " -DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS"; diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix index 6f5e5d34582..843bf580b6a 100644 --- a/pkgs/stdenv/generic/default.nix +++ b/pkgs/stdenv/generic/default.nix @@ -114,11 +114,13 @@ let isx86_64 = result.system == "x86_64-linux" || result.system == "x86_64-darwin" || result.system == "x86_64-freebsd" - || result.system == "x86_64-openbsd"; + || result.system == "x86_64-openbsd" + || result.system == "x86_64-solaris"; is64bit = result.system == "x86_64-linux" || result.system == "x86_64-darwin" || result.system == "x86_64-freebsd" - || result.system == "x86_64-openbsd"; + || result.system == "x86_64-openbsd" + || result.system == "x86_64-solaris"; isMips = result.system == "mips-linux" || result.system == "mips64el-linux"; isArm = result.system == "armv5tel-linux" diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index 9fd1d86ff82..733c4218d83 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -6,12 +6,12 @@ assert aclSupport -> acl != null; assert selinuxSupport -> libselinux != null && libsepol != null; -stdenv.mkDerivation rec { - name = "coreutils-8.20"; +stdenv.mkDerivation (rec { + name = "coreutils-8.21"; src = fetchurl { url = "mirror://gnu/coreutils/${name}.tar.xz"; - sha256 = "1cly97xdy3v4nbbx631k43smqw0nnpn651kkprs0yyl2cj3pkjyv"; + sha256 = "064f512185iysqqcvhnhaf3bfmzrvcgs7n405qsyp99zmfyl9amd"; }; nativeBuildInputs = [ perl ]; @@ -67,4 +67,8 @@ stdenv.mkDerivation rec { maintainers = [ stdenv.lib.maintainers.ludo ]; }; } - + # May have some issues with root compilation because the bootstrap tool + # cannot be used as a login shell for now. +// stdenv.lib.optionalAttrs (stdenv.system == "armv7l-linux" || stdenv.isSunOS) { + FORCE_UNSAFE_CONFIGURE = 1; +}) From bcaea92a1217f6adb79bdb400f2bfffef97955ed Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Wed, 20 Feb 2013 09:20:07 +0000 Subject: [PATCH 015/286] Attempt at getting GCC 4.7 compiled on Illumos... No success yet :-( --- .../development/compilers/gcc/4.7/default.nix | 19 ++++++++++++++----- pkgs/development/libraries/cloog/default.nix | 4 ++-- .../development/libraries/gettext/default.nix | 2 ++ pkgs/development/libraries/isl/default.nix | 4 ++-- pkgs/development/libraries/mpc/default.nix | 4 ++-- pkgs/development/libraries/mpfr/default.nix | 6 +++--- pkgs/development/libraries/ppl/default.nix | 8 +++++--- pkgs/stdenv/default.nix | 1 + pkgs/stdenv/native/default.nix | 1 + pkgs/tools/archivers/cpio/default.nix | 4 ++-- pkgs/tools/misc/coreutils/default.nix | 1 + pkgs/top-level/all-packages.nix | 4 ++-- 12 files changed, 37 insertions(+), 21 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.7/default.nix b/pkgs/development/compilers/gcc/4.7/default.nix index 62a86751a71..6e8e5d86cc5 100644 --- a/pkgs/development/compilers/gcc/4.7/default.nix +++ b/pkgs/development/compilers/gcc/4.7/default.nix @@ -279,19 +279,25 @@ stdenv.mkDerivation ({ configureFlagsArray = stdenv.lib.optionals (ppl != null && ppl ? dontDisableStatic && ppl.dontDisableStatic) - [ "--with-host-libstdcxx=-lstdc++ -lgcc_s" ]; + [ "--with-host-libstdcxx=-lstdc++ -lgcc_s" ]; # 'iant' at #go-nuts@freenode, gccgo maintainer, said that # they have a bug in 4.7.1 if adding "--disable-static" dontDisableStatic = langGo; configureFlags = " + ${if stdenv.isSunOS then + " --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " + + # On Illumos/Solaris GNU as is preferred + " --with-gnu-as --with-gnu-ld " + else ""} + --enable-lto ${if enableMultilib then "" else "--disable-multilib"} ${if enableShared then "" else "--disable-shared"} - ${if enablePlugin then "--enable-plugin" else ""} - ${if ppl != null then "--with-ppl=${ppl}" else ""} + ${if enablePlugin then "--enable-plugin" else "--disable-plugin"} + ${if ppl != null then "--with-ppl=${ppl} --disable-ppl-version-check" else ""} ${if cloog != null then - "--with-cloog=${cloog} --enable-cloog-backend=isl" + "--with-cloog=${cloog} --disable-cloog-version-check --enable-cloog-backend=isl" else ""} ${if langJava then "--with-ecj-jar=${javaEcj} " + @@ -406,7 +412,9 @@ stdenv.mkDerivation ({ # Needed for the cross compilation to work AR = "ar"; LD = "ld"; - CC = "gcc"; + # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210 + CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" + else "gcc"; # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find # the library headers and binaries, regarless of the language being @@ -496,6 +504,7 @@ stdenv.mkDerivation ({ installTargets = "install-gcc install-target-libgcc"; } + # Strip kills static libs of other archs (hence cross != null) // optionalAttrs (!stripped || cross != null) { dontStrip = true; NIX_STRIP_DEBUG = 0; } ) diff --git a/pkgs/development/libraries/cloog/default.nix b/pkgs/development/libraries/cloog/default.nix index ab5737b20ed..c3878ef4b78 100644 --- a/pkgs/development/libraries/cloog/default.nix +++ b/pkgs/development/libraries/cloog/default.nix @@ -1,11 +1,11 @@ { fetchurl, stdenv, gmp, isl }: stdenv.mkDerivation rec { - name = "cloog-0.16.3"; + name = "cloog-0.18.0"; src = fetchurl { url = "http://www.bastoul.net/cloog/pages/download/count.php3?url=./${name}.tar.gz"; - sha256 = "0lzbsszfzsr0jfwkccfbsvx913d2yc45dqwa472plmxkhbwykmc9"; + sha256 = "1c4aa8dde7886be9cbe0f9069c334843b21028f61d344a2d685f88cb1dcf2228"; }; buildInputs = [ gmp ]; diff --git a/pkgs/development/libraries/gettext/default.nix b/pkgs/development/libraries/gettext/default.nix index 5468c9f2336..113093a8067 100644 --- a/pkgs/development/libraries/gettext/default.nix +++ b/pkgs/development/libraries/gettext/default.nix @@ -10,6 +10,8 @@ stdenv.mkDerivation (rec { patches = [ ./no-gets.patch ]; + LDFLAGS = if stdenv.isSunOS then "-lsec -lavl" else ""; + configureFlags = [ "--disable-csharp" ] ++ (stdenv.lib.optionals stdenv.isCygwin [ # We have a static libiconv, so we can only build the static lib. diff --git a/pkgs/development/libraries/isl/default.nix b/pkgs/development/libraries/isl/default.nix index aaec37eae8f..9097df78de3 100644 --- a/pkgs/development/libraries/isl/default.nix +++ b/pkgs/development/libraries/isl/default.nix @@ -1,14 +1,14 @@ { stdenv, fetchurl, gmp }: stdenv.mkDerivation rec { - name = "isl-0.07"; # CLooG 0.16.3 fails to build with ISL 0.08. + name = "isl-0.11.1"; # CLooG 0.16.3 fails to build with ISL 0.08. src = fetchurl { urls = [ "http://www.kotnet.org/~skimo/isl/${name}.tar.bz2" "ftp://ftp.linux.student.kuleuven.be/pub/people/skimo/isl/${name}.tar.bz2" ]; - sha256 = "0kpxmvhrwwdygqqafqzjf9xiksq7paac2x24g9jhr3f9ajj3zkyx"; + sha256 = "095f4b54c88ca13a80d2b025d9c551f89ea7ba6f6201d701960bfe5c1466a98d"; }; buildInputs = [ gmp ]; diff --git a/pkgs/development/libraries/mpc/default.nix b/pkgs/development/libraries/mpc/default.nix index 3824e3d3755..586658556db 100644 --- a/pkgs/development/libraries/mpc/default.nix +++ b/pkgs/development/libraries/mpc/default.nix @@ -1,11 +1,11 @@ { fetchurl, stdenv, gmp, mpfr }: stdenv.mkDerivation rec { - name = "mpc-0.9"; + name = "mpc-1.0.1"; src = fetchurl { url = "http://www.multiprecision.org/mpc/download/${name}.tar.gz"; - sha1 = "229722d553030734d49731844abfef7617b64f1a"; + sha256 = "ed5a815cfea525dc778df0cb37468b9c1b554aaf30d9328b1431ca705b7400ff"; }; buildInputs = [ gmp mpfr ]; diff --git a/pkgs/development/libraries/mpfr/default.nix b/pkgs/development/libraries/mpfr/default.nix index faa2e1b1a71..802fd93f8cf 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.1.0"; + name = "mpfr-3.1.1"; src = fetchurl { url = "mirror://gnu/mpfr/${name}.tar.bz2"; - sha256 = "105nx8qqx5x8f4rlplr2wk4cyv61iw5j3jgi2k21rpb8s6xbp9vl"; + sha256 = "1zfmmk4p26b67qpmh787p3dfxa71yd9mi02c4q45yf687pqw6rkv"; }; buildInputs = [ gmp ]; @@ -39,7 +39,7 @@ stdenv.mkDerivation (rec { // -(stdenv.lib.optionalAttrs stdenv.isFreeBSD { +(stdenv.lib.optionalAttrs (stdenv.isSunOS or stdenv.isFreeBSD) { /* Work around a FreeBSD bug that otherwise leads to segfaults in the test suite: http://hydra.bordeaux.inria.fr/build/34862 diff --git a/pkgs/development/libraries/ppl/default.nix b/pkgs/development/libraries/ppl/default.nix index b24b4e06cb9..0e1948b2fd0 100644 --- a/pkgs/development/libraries/ppl/default.nix +++ b/pkgs/development/libraries/ppl/default.nix @@ -1,13 +1,13 @@ { fetchurl, stdenv, gmpxx, perl, gnum4 }: -let version = "0.11.2"; in +let version = "1.0"; in stdenv.mkDerivation rec { name = "ppl-${version}"; src = fetchurl { url = "http://bugseng.com/products/ppl/download/ftp/releases/${version}/ppl-${version}.tar.bz2"; - sha256 = "1sxviip4yk6gp453pid5scy1ba66dzdpr02i1416yk7lkv0x3yz3"; + sha256 = "c169e962b8a0f7b7bcde5c5e0e2235248f1d78b155dfad684591d1a57e330b54"; }; nativeBuildInputs = [ perl gnum4 ]; @@ -15,6 +15,8 @@ stdenv.mkDerivation rec { configureFlags = "--disable-watchdog"; + patches = [ ./upstream-based.patch ]; + # Beware! It took ~6 hours to compile PPL and run its tests on a 1.2 GHz # x86_64 box. Nevertheless, being a dependency of GCC, it probably ought # to be tested. @@ -40,7 +42,7 @@ stdenv.mkDerivation rec { version of the simplex algorithm. ''; - homepage = http://www.cs.unipr.it/ppl/; + homepage = http://bugseng.com/products/ppl/; license = "GPLv3+"; diff --git a/pkgs/stdenv/default.nix b/pkgs/stdenv/default.nix index ca90b46192e..a2723f5575c 100644 --- a/pkgs/stdenv/default.nix +++ b/pkgs/stdenv/default.nix @@ -62,5 +62,6 @@ rec { if stdenvType == "powerpc-linux" then /* stdenvLinux */ stdenvNative else if stdenvType == "i686-mingw" then stdenvMinGW else if stdenvType == "x86_64-darwin" then stdenvNix else + if stdenvType == "x86_64-solaris" then stdenvNix else stdenvNative; } diff --git a/pkgs/stdenv/native/default.nix b/pkgs/stdenv/native/default.nix index 524b2a53337..f303e47fd5d 100644 --- a/pkgs/stdenv/native/default.nix +++ b/pkgs/stdenv/native/default.nix @@ -9,6 +9,7 @@ rec { path = (if system == "i686-solaris" then [ "/usr/gnu" ] else []) ++ (if system == "i686-netbsd" then [ "/usr/pkg" ] else []) ++ + (if system == "x86_64-solaris" then [ "/opt/local/gnu" ] else []) ++ ["/" "/usr" "/usr/local"]; prehookBase = '' diff --git a/pkgs/tools/archivers/cpio/default.nix b/pkgs/tools/archivers/cpio/default.nix index 1700f03d7bd..525a64f9b82 100644 --- a/pkgs/tools/archivers/cpio/default.nix +++ b/pkgs/tools/archivers/cpio/default.nix @@ -4,8 +4,8 @@ stdenv.mkDerivation { name = "cpio-2.9"; src = fetchurl { - url = mirror://gnu/cpio/cpio-2.9.tar.bz2; - sha256 = "01s7f9hg8kgpis96j99hgkiqgdy53pm7qi7bhm3fzx58jfk5z6mv"; + url = mirror://gnu/cpio/cpio-2.11.tar.bz2; + sha256 = "bb820bfd96e74fc6ce43104f06fe733178517e7f5d1cdee553773e8eff7d5bbd"; }; patches = [ diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index 733c4218d83..69892cbfd73 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -49,6 +49,7 @@ stdenv.mkDerivation (rec { enableParallelBuilding = true; + LDFLAGS = stdenv.lib.optionalString stdenv.isSunOS "-lmp -lmd -lnsl -lsocket -lresolv"; NIX_LDFLAGS = stdenv.lib.optionalString selinuxSupport "-lsepol"; meta = { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6d9d534c412..22436952061 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1938,7 +1938,7 @@ let gambit = callPackage ../development/compilers/gambit { }; - gcc = gcc46; + gcc = gcc47; gcc33 = wrapGCC (import ../development/compilers/gcc/3.3 { inherit fetchurl stdenv noSysDirs; @@ -3761,7 +3761,7 @@ let # The GHC bootstrap binaries link against libgmp.so.3, which is in GMP 4.x. gmp4 = callPackage ../development/libraries/gmp/4.3.2.nix { }; - gmp5 = callPackage ../development/libraries/gmp/5.0.5.nix { }; + gmp5 = callPackage ../development/libraries/gmp/5.1.1.nix { }; gmp51 = callPackage ../development/libraries/gmp/5.1.1.nix { }; From 15e865ac09c93093c9cada2f247b14dba084c71a Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Sat, 23 Feb 2013 13:59:59 +0000 Subject: [PATCH 016/286] GCC 4.7.2 + updated libraries compiles on Illumos/SmartOS! - Add solaris native ld support to GCC build wrapper - Add solaris ld wrapper that fixes -L argument order --- pkgs/build-support/gcc-wrapper/builder.sh | 21 +++++++++- pkgs/build-support/gcc-wrapper/default.nix | 1 + .../gcc-wrapper/ld-solaris-wrapper.sh | 40 ++++++++++++++++++ pkgs/development/compilers/gcc/4.7/builder.sh | 5 ++- .../development/compilers/gcc/4.7/default.nix | 25 ++++++++--- .../development/libraries/gettext/default.nix | 2 +- pkgs/development/libraries/mpfr/default.nix | 24 +++++------ .../libraries/ppl/upstream-based.patch | 42 +++++++++++++++++++ pkgs/stdenv/nix/default.nix | 1 + pkgs/tools/misc/coreutils/default.nix | 4 +- 10 files changed, 141 insertions(+), 24 deletions(-) create mode 100644 pkgs/build-support/gcc-wrapper/ld-solaris-wrapper.sh create mode 100644 pkgs/development/libraries/ppl/upstream-based.patch diff --git a/pkgs/build-support/gcc-wrapper/builder.sh b/pkgs/build-support/gcc-wrapper/builder.sh index ed7ad0a50b7..e7c3400e9f7 100644 --- a/pkgs/build-support/gcc-wrapper/builder.sh +++ b/pkgs/build-support/gcc-wrapper/builder.sh @@ -66,13 +66,23 @@ else echo "$gccCFlags" > $out/nix-support/gcc-cflags gccPath="$gcc/bin" - ldPath="$binutils/bin" + # On Illumos/Solaris we might prefer native ld + if test -n "$nativePrefix"; then + ldPath="$nativePrefix/bin" + else + ldPath="$binutils/bin" + fi; fi doSubstitute() { local src=$1 local dst=$2 + local ld="$ldPath/ld" + if $ld -V 2>&1 |grep Solaris; then + # Use Solaris specific linker wrapper + ld="$out/bin/ld-solaris" + fi # Can't use substitute() here, because replace may not have been # built yet (in the bootstrap). sed \ @@ -85,7 +95,7 @@ doSubstitute() { -e "s^@binutils@^$binutils^g" \ -e "s^@coreutils@^$coreutils^g" \ -e "s^@libc@^$libc^g" \ - -e "s^@ld@^$ldPath/ld^g" \ + -e "s^@ld@^$ld^g" \ < "$src" > "$dst" } @@ -174,6 +184,13 @@ ln -s $ldPath/as $out/bin/as doSubstitute "$ldWrapper" "$out/bin/ld" chmod +x "$out/bin/ld" +# Copy solaris ld wrapper if needed +if $ldPath/ld -V 2>&1 |grep Solaris; then + # Use Solaris specific linker wrapper + sed -e "s^@ld@^$ldPath/ld^g" < "$ldSolarisWrapper" > "$out/bin/ld-solaris" + chmod +x "$out/bin/ld-solaris" +fi + # Emit a setup hook. Also store the path to the original GCC and # Glibc. diff --git a/pkgs/build-support/gcc-wrapper/default.nix b/pkgs/build-support/gcc-wrapper/default.nix index 87617621e64..aa4f6a3944e 100644 --- a/pkgs/build-support/gcc-wrapper/default.nix +++ b/pkgs/build-support/gcc-wrapper/default.nix @@ -36,6 +36,7 @@ stdenv.mkDerivation { gnatWrapper = ./gnat-wrapper.sh; gnatlinkWrapper = ./gnatlink-wrapper.sh; ldWrapper = ./ld-wrapper.sh; + ldSolarisWrapper = ./ld-solaris-wrapper.sh; utils = ./utils.sh; addFlags = ./add-flags; diff --git a/pkgs/build-support/gcc-wrapper/ld-solaris-wrapper.sh b/pkgs/build-support/gcc-wrapper/ld-solaris-wrapper.sh new file mode 100644 index 00000000000..5a7b92b5ad7 --- /dev/null +++ b/pkgs/build-support/gcc-wrapper/ld-solaris-wrapper.sh @@ -0,0 +1,40 @@ +#!/bin/bash + +set -e +set -u + +# I've also tried adding -z direct and -z lazyload, but it gave too many problems with C++ exceptions :'( +# Also made sure libgcc would not be lazy-loaded, as suggested here: https://www.illumos.org/issues/2534#note-3 +# but still no success. +cmd="@ld@ -z ignore" + +args=("$@"); + +# This loop makes sure all -L arguments are before -l arguments, or ld may complain it cannot find a library. +# GNU binutils does not have this problem: +# http://stackoverflow.com/questions/5817269/does-the-order-of-l-and-l-options-in-the-gnu-linker-matter +i=0; +while [[ $i -lt $# ]]; do + case "${args[$i]}" in + -L) cmd="$cmd ${args[$i]} ${args[($i+1)]}"; i=($i+1); ;; + -L*) cmd="$cmd ${args[$i]}" ;; + *) ;; + esac + i=($i+1); +done + +i=0; +while [[ $i -lt $# ]]; do + case "${args[$i]}" in + -L) i=($i+1); ;; + -L*) ;; + *) cmd="$cmd ${args[$i]}" ;; + esac + i=($i+1); +done + +# Trace: +set -x +exec $cmd + +exit 0 diff --git a/pkgs/development/compilers/gcc/4.7/builder.sh b/pkgs/development/compilers/gcc/4.7/builder.sh index 37400fba5bf..dc6fdd93561 100644 --- a/pkgs/development/compilers/gcc/4.7/builder.sh +++ b/pkgs/development/compilers/gcc/4.7/builder.sh @@ -155,7 +155,7 @@ if test -n "$targetConfig"; then dontStrip=1 fi - +providedPreConfigure="$preConfigure"; preConfigure() { if test -n "$newlibSrc"; then tar xvf "$newlibSrc" -C .. @@ -188,6 +188,9 @@ preConfigure() { configureFlags="$configureFlags --with-build-sysroot=`pwd`/.." fi + # Eval the preConfigure script from nix expression. + eval $providedPreConfigure; + env; # Perform the build in a different directory. mkdir ../build cd ../build diff --git a/pkgs/development/compilers/gcc/4.7/default.nix b/pkgs/development/compilers/gcc/4.7/default.nix index 6e8e5d86cc5..d97f8aaf5c6 100644 --- a/pkgs/development/compilers/gcc/4.7/default.nix +++ b/pkgs/development/compilers/gcc/4.7/default.nix @@ -277,19 +277,34 @@ stdenv.mkDerivation ({ ++ (optional stdenv.isDarwin gnused) ; - configureFlagsArray = stdenv.lib.optionals - (ppl != null && ppl ? dontDisableStatic && ppl.dontDisableStatic) - [ "--with-host-libstdcxx=-lstdc++ -lgcc_s" ]; + NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isSunOS "-lm -ldl"; + + preConfigure = '' + configureFlagsArray=( + ${stdenv.lib.optionalString (ppl != null && ppl ? dontDisableStatic && ppl.dontDisableStatic) + "'--with-host-libstdcxx=-lstdc++ -lgcc_s'"} + ${stdenv.lib.optionalString (ppl != null && stdenv.isSunOS) + "\"--with-host-libstdcxx=-Wl,-rpath,\$prefix/lib/amd64 -lstdc++\" + \"--with-boot-ldflags=-L../prev-x86_64-pc-solaris2.11/libstdc++-v3/src/.libs\""} + ); + ${stdenv.lib.optionalString (stdenv.isSunOS && stdenv.is64bit) + '' + export NIX_LDFLAGS=`echo $NIX_LDFLAGS | sed -e s~$prefix/lib~$prefix/lib/amd64~g` + export LDFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $LDFLAGS_FOR_TARGET" + export CXXFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CXXFLAGS_FOR_TARGET" + export CFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CFLAGS_FOR_TARGET" + ''} + ''; # 'iant' at #go-nuts@freenode, gccgo maintainer, said that # they have a bug in 4.7.1 if adding "--disable-static" - dontDisableStatic = langGo; + dontDisableStatic = langGo || staticCompiler; configureFlags = " ${if stdenv.isSunOS then " --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " + # On Illumos/Solaris GNU as is preferred - " --with-gnu-as --with-gnu-ld " + " --with-gnu-as --without-gnu-ld " else ""} --enable-lto ${if enableMultilib then "" else "--disable-multilib"} diff --git a/pkgs/development/libraries/gettext/default.nix b/pkgs/development/libraries/gettext/default.nix index 113093a8067..e88308bb2e9 100644 --- a/pkgs/development/libraries/gettext/default.nix +++ b/pkgs/development/libraries/gettext/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation (rec { patches = [ ./no-gets.patch ]; - LDFLAGS = if stdenv.isSunOS then "-lsec -lavl" else ""; + LDFLAGS = if stdenv.isSunOS then "-lm -lmd -lmp -luutil -lnvpair -lnsl -lidmap -lavl -lsec" else ""; configureFlags = [ "--disable-csharp" ] ++ (stdenv.lib.optionals stdenv.isCygwin diff --git a/pkgs/development/libraries/mpfr/default.nix b/pkgs/development/libraries/mpfr/default.nix index 802fd93f8cf..6fbb6253ee5 100644 --- a/pkgs/development/libraries/mpfr/default.nix +++ b/pkgs/development/libraries/mpfr/default.nix @@ -1,6 +1,6 @@ {stdenv, fetchurl, gmp}: -stdenv.mkDerivation (rec { +stdenv.mkDerivation rec { name = "mpfr-3.1.1"; src = fetchurl { @@ -35,16 +35,14 @@ stdenv.mkDerivation (rec { maintainers = [ stdenv.lib.maintainers.ludo ]; platforms = stdenv.lib.platforms.all; }; + + configureFlags = + /* Work around a FreeBSD bug that otherwise leads to segfaults in + the test suite: + http://hydra.bordeaux.inria.fr/build/34862 + http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00015.html + http://www.freebsd.org/cgi/query-pr.cgi?pr=161344 + */ + stdenv.lib.optional (stdenv.isSunOS or stdenv.isFreeBSD) "--disable-thread-safe" ++ + stdenv.lib.optional stdenv.is64bit "--with-pic"; } - -// - -(stdenv.lib.optionalAttrs (stdenv.isSunOS or stdenv.isFreeBSD) { - /* Work around a FreeBSD bug that otherwise leads to segfaults in - the test suite: - http://hydra.bordeaux.inria.fr/build/34862 - http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00015.html - http://www.freebsd.org/cgi/query-pr.cgi?pr=161344 - */ - configureFlags = [ "--disable-thread-safe" ]; - })) diff --git a/pkgs/development/libraries/ppl/upstream-based.patch b/pkgs/development/libraries/ppl/upstream-based.patch new file mode 100644 index 00000000000..551050f67bf --- /dev/null +++ b/pkgs/development/libraries/ppl/upstream-based.patch @@ -0,0 +1,42 @@ +https://bugs.gentoo.org/show_bug.cgi?id=447928 +--- ppl-1.0/src/p_std_bits.cc.org 2012-12-30 00:37:03.033948083 +0100 ++++ ppl-1.0/src/mp_std_bits.cc 2012-12-30 00:44:12.893019313 +0100 +@@ -25,6 +25,9 @@ + #include "ppl-config.h" + #include "mp_std_bits.defs.hh" + ++#if __GNU_MP_VERSION < 5 \ ++ || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1) ++ + const bool std::numeric_limits::is_specialized; + const int std::numeric_limits::digits; + const int std::numeric_limits::digits10; +@@ -70,3 +73,6 @@ + const bool std::numeric_limits::traps; + const bool std::numeric_limits::tininess_before; + const std::float_round_style std::numeric_limits::round_style; ++ ++#endif // __GNU_MP_VERSION < 5 ++ // || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1) +--- ppl-1.0/src/mp_std_bits.defs.hh.org 2012-12-30 00:37:03.037948187 +0100 ++++ ppl-1.0/src/mp_std_bits.defs.hh 2012-12-30 00:42:32.002424189 +0100 +@@ -38,6 +38,9 @@ + #endif // defined(PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS) + void swap(mpq_class& x, mpq_class& y); + ++#if __GNU_MP_VERSION < 5 \ ++ || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1) ++ + namespace std { + + #ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS +@@ -164,6 +167,9 @@ + + } // namespace std + ++#endif // __GNU_MP_VERSION < 5 ++ // || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1) ++ + #include "mp_std_bits.inlines.hh" + + #endif // !defined(PPL_mp_std_bits_defs_hh) diff --git a/pkgs/stdenv/nix/default.nix b/pkgs/stdenv/nix/default.nix index d0f7d60f101..b16c51f7580 100644 --- a/pkgs/stdenv/nix/default.nix +++ b/pkgs/stdenv/nix/default.nix @@ -23,6 +23,7 @@ import ../generic rec { gcc = import ../../build-support/gcc-wrapper { nativeTools = false; + nativePrefix = stdenv.lib.optionalString stdenv.isSunOS "/usr"; nativeLibc = true; inherit stdenv; binutils = diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index 69892cbfd73..1ed3fc928f0 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -49,8 +49,8 @@ stdenv.mkDerivation (rec { enableParallelBuilding = true; - LDFLAGS = stdenv.lib.optionalString stdenv.isSunOS "-lmp -lmd -lnsl -lsocket -lresolv"; - NIX_LDFLAGS = stdenv.lib.optionalString selinuxSupport "-lsepol"; + NIX_LDFLAGS = stdenv.lib.optionalString selinuxSupport "-lsepol" + + stdenv.lib.optionalString stdenv.isSunOS "-lmp -lmd -lnsl -lsocket -lresolv -luutil -lnvpair -lidmap -lavl -lsec"; meta = { homepage = http://www.gnu.org/software/coreutils/; From 867ea1f8fe74e50be63ecc0ade7d5cfe685e47a3 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Tue, 26 Feb 2013 09:06:20 +0000 Subject: [PATCH 017/286] Update to PCRE 8.32 with JIT enabled --- pkgs/development/libraries/pcre/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/pcre/default.nix b/pkgs/development/libraries/pcre/default.nix index e59c249348a..69ed4c85313 100644 --- a/pkgs/development/libraries/pcre/default.nix +++ b/pkgs/development/libraries/pcre/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, unicodeSupport ? true, cplusplusSupport ? true }: stdenv.mkDerivation rec { - name = "pcre-8.31"; + name = "pcre-8.32"; src = fetchurl { url = "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/${name}.tar.bz2"; - sha256 = "5778a02535473c7ee7838ea598c19f451e63cf5eec0bf0307a688301c9078c3c"; + sha256 = "a913fb9bd058ef380a2d91847c3c23fcf98e92dc3b47cd08a53c021c5cde0f55"; }; # The compiler on Darwin crashes with an internal error while building the @@ -13,6 +13,7 @@ stdenv.mkDerivation rec { # problem. In case we ever update the Darwin GCC version, the exception for # that platform ought to be removed. configureFlags = '' + --enable-jit ${if unicodeSupport then "--enable-unicode-properties" else ""} ${if !cplusplusSupport then "--disable-cpp" else ""} '' + stdenv.lib.optionalString stdenv.isDarwin "CXXFLAGS=-O0"; From c019cdb7615ebc89e5a84e5b1fb873139b356b42 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Tue, 26 Feb 2013 09:08:00 +0000 Subject: [PATCH 018/286] Update CPIO to 2.11 --- pkgs/tools/archivers/cpio/default.nix | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/pkgs/tools/archivers/cpio/default.nix b/pkgs/tools/archivers/cpio/default.nix index 525a64f9b82..919484fa915 100644 --- a/pkgs/tools/archivers/cpio/default.nix +++ b/pkgs/tools/archivers/cpio/default.nix @@ -1,22 +1,13 @@ {stdenv, fetchurl}: stdenv.mkDerivation { - name = "cpio-2.9"; + name = "cpio-2.11"; src = fetchurl { url = mirror://gnu/cpio/cpio-2.11.tar.bz2; sha256 = "bb820bfd96e74fc6ce43104f06fe733178517e7f5d1cdee553773e8eff7d5bbd"; }; - patches = [ - # Make it compile on GCC 4.3. - (fetchurl { - name = "cpio-2.9-gnu-inline.patch"; - url = "http://sources.gentoo.org/viewcvs.py/*checkout*/gentoo-x86/app-arch/cpio/files/cpio-2.9-gnu-inline.patch?rev=1.1"; - sha256 = "1167hrq64h9lh3qhgasm2rivfzkkgx6fik92b017qfa0q61ff8c3"; - }) - ]; - meta = { homepage = http://www.gnu.org/software/cpio/; description = "A program to create or extract from cpio archives"; From fcce211c8ee3e65344b7af52a97f2f2bfceca41e Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Tue, 26 Feb 2013 09:19:11 +0000 Subject: [PATCH 019/286] Fix GZip build on Illumos --- pkgs/tools/compression/gzip/default.nix | 4 ++++ .../compression/gzip/skip-some-tests.patch | 21 +++++++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/tools/compression/gzip/skip-some-tests.patch diff --git a/pkgs/tools/compression/gzip/default.nix b/pkgs/tools/compression/gzip/default.nix index d15b26f48b6..c1e86b5d2f6 100644 --- a/pkgs/tools/compression/gzip/default.nix +++ b/pkgs/tools/compression/gzip/default.nix @@ -8,6 +8,10 @@ stdenv.mkDerivation rec { sha256 = "0wx1nqk709kx75cwp2axachnbxryp4gyl06qxn5nl95184w0mhls"; }; + doCheck = true; + + patches = [ ./skip-some-tests.patch ]; + meta = { homepage = http://www.gnu.org/software/gzip/; description = "Gzip, the GNU zip compression program"; diff --git a/pkgs/tools/compression/gzip/skip-some-tests.patch b/pkgs/tools/compression/gzip/skip-some-tests.patch new file mode 100644 index 00000000000..ebcda684ef7 --- /dev/null +++ b/pkgs/tools/compression/gzip/skip-some-tests.patch @@ -0,0 +1,21 @@ +Skip tests requiring Perl and less (more). +Also zgrep-signal skipping fails with weird Bad file number error on illumos. +--- gzip-1.5/tests/Makefile.in.orig 2013-02-23 15:15:08.017048868 +0000 ++++ gzip-1.5/tests/Makefile.in 2013-02-23 15:15:32.756197039 +0000 +@@ -1421,7 +1421,6 @@ + trailing-nul \ + zdiff \ + zgrep-f \ +- zgrep-signal \ + znew-k + + EXTRA_DIST = \ +@@ -1441,8 +1440,6 @@ + zfgrep \ + zforce \ + zgrep \ +- zless \ +- zmore \ + znew + + TESTS_ENVIRONMENT = \ From 82240c899adc77ac6cdddf9f1dafc4eedcf60cd4 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Tue, 26 Feb 2013 09:23:16 +0000 Subject: [PATCH 020/286] Fix GMP build on Illumos. - Use smaller xz sources instead of bz2 sources. --- pkgs/development/libraries/gmp/5.1.1.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/gmp/5.1.1.nix b/pkgs/development/libraries/gmp/5.1.1.nix index 0261f833962..d9c67274f25 100644 --- a/pkgs/development/libraries/gmp/5.1.1.nix +++ b/pkgs/development/libraries/gmp/5.1.1.nix @@ -4,8 +4,8 @@ stdenv.mkDerivation rec { name = "gmp-5.1.1"; src = fetchurl { - urls = [ "mirror://gnu/gmp/${name}.tar.bz2" "ftp://ftp.gmplib.org/pub/${name}/${name}.tar.bz2" ]; - sha256 = "1bdgf04k2i12pfivxgjq68iarz3ngix9hpzbmkgijrdk92gpgm50"; + urls = [ "mirror://gnu/gmp/${name}.tar.xz" "ftp://ftp.gmplib.org/pub/${name}/${name}.tar.xz" ]; + sha256 = "1hili06lcf0clg5qfvz7knm6pmj6ab54yhsvskp1mdny5xw4vmjb"; }; nativeBuildInputs = [ m4 ]; @@ -15,7 +15,8 @@ stdenv.mkDerivation rec { # (x86), except on Solaris where some tests crash with "Memory fault". # See , for instance. (stdenv.lib.optional (!stdenv.isSunOS) "--enable-fat") - ++ (if cxx then [ "--enable-cxx" ] else [ "--disable-cxx" ]); + ++ (if cxx then [ "--enable-cxx" ] else [ "--disable-cxx" ]) + ++ (if stdenv.is64bit then [ "--with-pic" ] else []); doCheck = true; From c041dbb1d2ca5d52dd837564a4b73d48c52175a7 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Wed, 27 Feb 2013 18:15:57 +0100 Subject: [PATCH 021/286] Fix libxslt build on Illumos. --- .../development/libraries/libxslt/default.nix | 6 +- .../libraries/libxslt/patch-ah.patch | 69 +++++++++++++++++++ 2 files changed, 73 insertions(+), 2 deletions(-) create mode 100644 pkgs/development/libraries/libxslt/patch-ah.patch diff --git a/pkgs/development/libraries/libxslt/default.nix b/pkgs/development/libraries/libxslt/default.nix index d3b7769754e..56acc841c60 100644 --- a/pkgs/development/libraries/libxslt/default.nix +++ b/pkgs/development/libraries/libxslt/default.nix @@ -1,15 +1,17 @@ { stdenv, fetchurl, libxml2 }: stdenv.mkDerivation rec { - name = "libxslt-1.1.27"; + name = "libxslt-1.1.28"; src = fetchurl { url = "ftp://xmlsoft.org/libxml2/${name}.tar.gz"; - sha256 = "09ky3vhlaahvsb0q9gp6h3as53pfj70gincirachjqzj46jdka5n"; + sha256 = "5fc7151a57b89c03d7b825df5a0fae0a8d5f05674c0e7cf2937ecec4d54a028c"; }; buildInputs = [ libxml2 ]; + patches = stdenv.lib.optionals stdenv.isSunOS [ ./patch-ah.patch ]; + postInstall = '' mkdir -p $out/nix-support ln -s ${libxml2}/nix-support/setup-hook $out/nix-support/ diff --git a/pkgs/development/libraries/libxslt/patch-ah.patch b/pkgs/development/libraries/libxslt/patch-ah.patch new file mode 100644 index 00000000000..ea75b01178e --- /dev/null +++ b/pkgs/development/libraries/libxslt/patch-ah.patch @@ -0,0 +1,69 @@ +$NetBSD: patch-ah,v 1.3 2012/11/27 12:17:51 adam Exp $ + +Fix syms file for stricter solaris ld + +--- libxslt-1.1.28/libxslt/libxslt.syms.orig 2012-11-27 12:04:43.000000000 +0000 ++++ libxslt-1.1.28/libxslt/libxslt.syms +@@ -107,7 +107,7 @@ LIBXML2_1.0.11 { + xsltFreeCompMatchList; + xsltFreeTemplateHashes; + xsltGetTemplate; +- xsltMatchPattern; ++# xsltMatchPattern; + xsltTestCompMatchList; + + # preproc +@@ -407,7 +407,7 @@ LIBXML2_1.1.18 { + global: + + # xsltInternals +- xsltConstNamespaceNameXSLT; # variable ++# xsltConstNamespaceNameXSLT; # variable + xsltExtensionInstructionResultFinalize; + xsltExtensionInstructionResultRegister; + xsltInitCtxtKey; +@@ -416,24 +416,24 @@ LIBXML2_1.1.18 { + xsltInit; + + # xsltInternals +- xsltParseAnyXSLTElem; +- xsltParseSequenceConstructor; +- xsltPointerListAddSize; +- xsltPointerListClear; +- xsltPointerListCreate; +- xsltPointerListFree; ++# xsltParseAnyXSLTElem; ++# xsltParseSequenceConstructor; ++# xsltPointerListAddSize; ++# xsltPointerListClear; ++# xsltPointerListCreate; ++# xsltPointerListFree; + xsltRegisterLocalRVT; + xsltReleaseRVT; +- xsltRestoreDocumentNamespaces; ++# xsltRestoreDocumentNamespaces; + + # extensions +- xsltStyleStylesheetLevelGetExtData; ++# xsltStyleStylesheetLevelGetExtData; + + # xsltInternals + # xsltTransStorageAdd; removed in 1.1.28 + # xsltTransStorageRemove; removed in 1.1.28 + xsltUninit; +- xsltXSLTAttrMarker; # variable ++# xsltXSLTAttrMarker; # variable + } LIBXML2_1.1.9; + + LIBXML2_1.1.20 { +@@ -476,6 +476,10 @@ LIBXML2_1.1.26 { + + # transform + xsltProcessOneNode; ++ ++# Solaris ld needs explicit auto-reduction (or, alternatively, "-B local") ++ local: ++ *; + } LIBXML2_1.1.25; + + LIBXML2_1.1.27 { From 8ae2a89cabb83428d5217ac8623b70935317c1b1 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Tue, 26 Feb 2013 12:03:23 +0000 Subject: [PATCH 022/286] Update glib and dbus - and make them compile on Illumos. --- pkgs/development/libraries/dbus/default.nix | 4 ++-- pkgs/development/libraries/glib/2.34.x.nix | 10 +++++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/pkgs/development/libraries/dbus/default.nix b/pkgs/development/libraries/dbus/default.nix index 5716ac6648a..fa06a5269d3 100644 --- a/pkgs/development/libraries/dbus/default.nix +++ b/pkgs/development/libraries/dbus/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, expat, libX11, libICE, libSM, useX11 ? true }: let - version = "1.6.4"; + version = "1.6.8"; src = fetchurl { url = "http://dbus.freedesktop.org/releases/dbus/dbus-${version}.tar.gz"; - sha256 = "1wacqyfkcpayg7f8rvx9awqg275n5pksxq5q7y21lxjx85x6pfjz"; + sha256 = "fc1370ef38abeeb13f55c905ec002e60705fb0bfde3b8d21c8d6eb8056c11bac"; }; patches = [ ./ignore-missing-includedirs.patch ]; diff --git a/pkgs/development/libraries/glib/2.34.x.nix b/pkgs/development/libraries/glib/2.34.x.nix index 69ed44aecca..e11e3bcb317 100644 --- a/pkgs/development/libraries/glib/2.34.x.nix +++ b/pkgs/development/libraries/glib/2.34.x.nix @@ -12,11 +12,11 @@ # $out/bin/gtester-report' to postInstall if this is solved stdenv.mkDerivation (rec { - name = "glib-2.34.0"; + name = "glib-2.34.3"; src = fetchurl { url = "mirror://gnome/sources/glib/2.34/${name}.tar.xz"; - sha256 = "f69b112f8848be35139d9099b62bc81649241f78f6a775516f0d4c9b47f65144"; + sha256 = "855fcbf87cb93065b488358e351774d8a39177281023bae58c286f41612658a7"; }; # configure script looks for d-bus but it is only needed for tests @@ -26,7 +26,11 @@ stdenv.mkDerivation (rec { propagatedBuildInputs = [ pcre zlib libffi ]; - configureFlags = "--with-pcre=system --disable-fam"; + configureFlags = "--with-pcre=system --disable-fam" + + (stdenv.lib.optionalString (libiconvOrNull != null) " --with-libiconv=gnu") + + (stdenv.lib.optionalString stdenv.isSunOS " --disable-modular-tests"); + + CPPFLAGS = stdenv.lib.optionalString stdenv.isSunOS "-DBSD_COMP"; enableParallelBuilding = true; From 029864b08dd6b57d0cab1ecb35b2a78673ab192c Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Tue, 26 Feb 2013 12:05:27 +0000 Subject: [PATCH 023/286] Update disnix. --- pkgs/tools/package-management/disnix/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/package-management/disnix/default.nix b/pkgs/tools/package-management/disnix/default.nix index 9c17b9b78f7..42e55b35fc0 100644 --- a/pkgs/tools/package-management/disnix/default.nix +++ b/pkgs/tools/package-management/disnix/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, pkgconfig, dbus_glib, libxml2, libxslt, getopt, nixUnstable, gettext, libiconv }: stdenv.mkDerivation { - name = "disnix-0.3pre32254"; + name = "disnix-0.3pre34664"; src = fetchurl { - url = http://hydra.nixos.org/build/2368541/download/4/disnix-0.3pre32254.tar.gz; - sha256 = "1jznx4mb6vwpzzpbk4c16j73hjgng7v1nraq8yya7f7m1s2gyhcw"; + url = http://hydra.nixos.org/build/4072223/download/4/disnix-0.3pre34664.tar.gz; + sha256 = "4e20a73c17061428ea66abd6004aaaa71b273ac88fca8e569a2262ae1f246c52"; }; buildInputs = [ pkgconfig dbus_glib libxml2 libxslt getopt nixUnstable ] From a611683b44f8fe53950f21bd9a813281e07754e5 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Thu, 28 Feb 2013 13:37:32 +0000 Subject: [PATCH 024/286] Illumos: Fix dbus group policy checking only looking at user's primary group. D-Bus simply gives up when getgrouplist is not available. Added a dirty patch with getgrouplist.c from OpenBSD: https://github.com/duosecurity/duo_unix/blob/master/compat/getgrouplist.c --- pkgs/development/libraries/dbus/default.nix | 4 +- .../dbus/implement-getgrouplist.patch | 108 ++++++++++++++++++ 2 files changed, 110 insertions(+), 2 deletions(-) create mode 100644 pkgs/development/libraries/dbus/implement-getgrouplist.patch diff --git a/pkgs/development/libraries/dbus/default.nix b/pkgs/development/libraries/dbus/default.nix index fa06a5269d3..7510801cd79 100644 --- a/pkgs/development/libraries/dbus/default.nix +++ b/pkgs/development/libraries/dbus/default.nix @@ -8,9 +8,9 @@ let sha256 = "fc1370ef38abeeb13f55c905ec002e60705fb0bfde3b8d21c8d6eb8056c11bac"; }; - patches = [ ./ignore-missing-includedirs.patch ]; + patches = [ ./ignore-missing-includedirs.patch ./implement-getgrouplist.patch ]; - configureFlags = "--localstatedir=/var --sysconfdir=/etc --with-session-socket-dir=/tmp"; + configureFlags = "--enable-embedded-tests --localstatedir=/var --sysconfdir=/etc --with-session-socket-dir=/tmp"; in rec { diff --git a/pkgs/development/libraries/dbus/implement-getgrouplist.patch b/pkgs/development/libraries/dbus/implement-getgrouplist.patch new file mode 100644 index 00000000000..e3a4a25cb72 --- /dev/null +++ b/pkgs/development/libraries/dbus/implement-getgrouplist.patch @@ -0,0 +1,108 @@ +Compatibility patch for Illumos/Solaris and possibly other platforms. +Implements getgrouplist when not provided by OS. +Without it, only the user's primary group is used in authentication! +--- 1970-01-01 00:00:00.000000000 +0000 ++++ dbus-1.6.8/dbus/getgrouplist.c 2013-02-28 13:10:51.081792722 +0000 +@@ -0,0 +1,89 @@ ++/* $OpenBSD: getgrouplist.c,v 1.12 2005/08/08 08:05:34 espie Exp $ */ ++/* ++ * Copyright (c) 1991, 1993 ++ * The Regents of the University of California. All rights reserved. ++ * ++ * Redistribution and use in source and binary forms, with or without ++ * modification, are permitted provided that the following conditions ++ * are met: ++ * 1. Redistributions of source code must retain the above copyright ++ * notice, this list of conditions and the following disclaimer. ++ * 2. Redistributions in binary form must reproduce the above copyright ++ * notice, this list of conditions and the following disclaimer in the ++ * documentation and/or other materials provided with the distribution. ++ * 3. Neither the name of the University nor the names of its contributors ++ * may be used to endorse or promote products derived from this software ++ * without specific prior written permission. ++ * ++ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ++ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ++ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ++ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE ++ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL ++ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS ++ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ++ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT ++ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY ++ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ++ * SUCH DAMAGE. ++ */ ++ ++/* OPENBSD ORIGINAL: lib/libc/gen/getgrouplist.c */ ++ ++/* ++ * get credential ++ */ ++#include ++#include ++#include ++#include ++ ++int ++getgrouplist(const char *uname, gid_t agroup, gid_t *groups, int *grpcnt) ++{ ++ struct group *grp; ++ int i, ngroups; ++ int ret, maxgroups; ++ int bail; ++ ++ ret = 0; ++ ngroups = 0; ++ maxgroups = *grpcnt; ++ ++ /* ++ * install primary group ++ */ ++ if (ngroups >= maxgroups) { ++ *grpcnt = ngroups; ++ return (-1); ++ } ++ groups[ngroups++] = agroup; ++ ++ /* ++ * Scan the group file to find additional groups. ++ */ ++ setgrent(); ++ while ((grp = getgrent())) { ++ if (grp->gr_gid == agroup) ++ continue; ++ for (bail = 0, i = 0; bail == 0 && i < ngroups; i++) ++ if (groups[i] == grp->gr_gid) ++ bail = 1; ++ if (bail) ++ continue; ++ for (i = 0; grp->gr_mem[i]; i++) { ++ if (!strcmp(grp->gr_mem[i], uname)) { ++ if (ngroups >= maxgroups) { ++ ret = -1; ++ goto out; ++ } ++ groups[ngroups++] = grp->gr_gid; ++ break; ++ } ++ } ++ } ++out: ++ endgrent(); ++ *grpcnt = ngroups; ++ return (ret); ++} +--- dbus-1.6.8/dbus/dbus-sysdeps-unix.c.orig 2013-02-28 13:08:52.171215237 +0000 ++++ dbus-1.6.8/dbus/dbus-sysdeps-unix.c 2013-02-28 13:13:52.224615146 +0000 +@@ -21,6 +21,10 @@ + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + */ ++#ifndef HAVE_GETGROUPLIST ++#include "getgrouplist.c" ++#define HAVE_GETGROUPLIST ++#endif + + #include + From cbfc76d5caa73dff89a3388fe2ed18b3214face3 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Thu, 28 Feb 2013 14:52:14 +0000 Subject: [PATCH 025/286] Add SmartOS native GCC path. --- pkgs/stdenv/native/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/stdenv/native/default.nix b/pkgs/stdenv/native/default.nix index f303e47fd5d..715bc02758b 100644 --- a/pkgs/stdenv/native/default.nix +++ b/pkgs/stdenv/native/default.nix @@ -113,7 +113,7 @@ rec { name = "gcc-native"; nativeTools = true; nativeLibc = true; - nativePrefix = if system == "i686-solaris" then "/usr/gnu" else "/usr"; + nativePrefix = if system == "i686-solaris" then "/usr/gnu" else if system == "x86_64-solaris" then "/opt/local/gcc47" else "/usr"; stdenv = stdenvBoot0; }; From 9baf9e98d191de0fc39678a0b1bc051ee48d6fa6 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Thu, 28 Feb 2013 15:53:47 +0100 Subject: [PATCH 026/286] Fix Perl builds on Illumos. --- pkgs/development/interpreters/perl/5.14/default.nix | 3 ++- .../interpreters/perl/5.14/ld-shared.patch | 11 +++++++++++ pkgs/development/interpreters/perl/5.16/default.nix | 1 + .../interpreters/perl/5.16/ld-shared.patch | 11 +++++++++++ 4 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/interpreters/perl/5.14/ld-shared.patch create mode 100644 pkgs/development/interpreters/perl/5.16/ld-shared.patch diff --git a/pkgs/development/interpreters/perl/5.14/default.nix b/pkgs/development/interpreters/perl/5.14/default.nix index ac19900bcfc..70a030e0308 100644 --- a/pkgs/development/interpreters/perl/5.14/default.nix +++ b/pkgs/development/interpreters/perl/5.14/default.nix @@ -17,7 +17,8 @@ stdenv.mkDerivation rec { patches = [ # Do not look in /usr etc. for dependencies. ./no-sys-dirs.patch - ] + ] + ++ stdenv.lib.optional stdenv.isSunOS ./ld-shared.patch ++ stdenv.lib.optional stdenv.isDarwin ./no-libutil.patch; # Build a thread-safe Perl with a dynamic libperls.o. We need the diff --git a/pkgs/development/interpreters/perl/5.14/ld-shared.patch b/pkgs/development/interpreters/perl/5.14/ld-shared.patch new file mode 100644 index 00000000000..b1834ff7a1f --- /dev/null +++ b/pkgs/development/interpreters/perl/5.14/ld-shared.patch @@ -0,0 +1,11 @@ +--- perl-5.14.2/hints/solaris_2.sh.orig 2013-02-14 19:29:49.453988140 +0000 ++++ perl-5.14.2/hints/solaris_2.sh 2013-02-14 19:30:31.681631019 +0000 +@@ -568,7 +568,7 @@ + # ccflags="$ccflags -Wa,`getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`" + # fi + ldflags="$ldflags -m64" +- lddlflags="$lddlflags -G -m64" ++ lddlflags="$lddlflags -shared -m64" + ;; + *) + getconfccflags="`getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`" diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index 288de63b4ae..153da2c9d05 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -18,6 +18,7 @@ stdenv.mkDerivation rec { [ # Do not look in /usr etc. for dependencies. ./no-sys-dirs.patch ] + ++ stdenv.lib.optional stdenv.isSunOS ./ld-shared.patch ++ stdenv.lib.optional stdenv.isDarwin ./no-libutil.patch; # Build a thread-safe Perl with a dynamic libperls.o. We need the diff --git a/pkgs/development/interpreters/perl/5.16/ld-shared.patch b/pkgs/development/interpreters/perl/5.16/ld-shared.patch new file mode 100644 index 00000000000..be45230c8a7 --- /dev/null +++ b/pkgs/development/interpreters/perl/5.16/ld-shared.patch @@ -0,0 +1,11 @@ +--- perl-5.16.2/hints/solaris_2.sh.orig 2013-02-14 19:29:49.453988140 +0000 ++++ perl-5.16.2/hints/solaris_2.sh 2013-02-14 19:30:31.681631019 +0000 +@@ -568,7 +568,7 @@ + # ccflags="$ccflags -Wa,`getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`" + # fi + ldflags="$ldflags -m64" +- lddlflags="$lddlflags -G -m64" ++ lddlflags="$lddlflags -shared -m64" + ;; + *) + getconfccflags="`getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`" From 99a14f378c7fb6f24b2ce98d834c1394bb176bc4 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Thu, 28 Feb 2013 16:20:03 +0100 Subject: [PATCH 027/286] Fix ncurses build on Illumos. --- .../development/libraries/ncurses/default.nix | 4 +- pkgs/development/libraries/ncurses/patch-ac | 40 +++++++++++++++++++ 2 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/libraries/ncurses/patch-ac diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 569d7fe2a32..378abb81295 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -8,7 +8,7 @@ let , but this is left as an exercise to the reader. So disable them for now. */ - cxx = stdenv.system != "i686-solaris"; + cxx = !stdenv.isSunOS; in stdenv.mkDerivation (rec { name = "ncurses-5.9"; @@ -23,6 +23,8 @@ stdenv.mkDerivation (rec { ${if unicode then "--enable-widec" else ""}${if cxx then "" else "--without-cxx-binding"} ''; + patches = [ ./patch-ac ]; + selfNativeBuildInput = true; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/ncurses/patch-ac b/pkgs/development/libraries/ncurses/patch-ac new file mode 100644 index 00000000000..73578f8a367 --- /dev/null +++ b/pkgs/development/libraries/ncurses/patch-ac @@ -0,0 +1,40 @@ +$NetBSD: patch-ac,v 1.18 2011/11/01 14:47:46 hans Exp $ + +--- ncurses-5.9/configure.orig 2011-02-21 01:40:36.000000000 +0000 ++++ ncurses-5.9/configure +@@ -7096,6 +7096,13 @@ sco*) #(vi + # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer + ;; + solaris2.1[0-9]) #(vi ++ case "$GCC_VERSION" in ++ 4.[67].*) ++ cf_XOPEN_SOURCE=600 ++ cf_add_cflags=-std=c99 ++ CPPFLAGS="$CPPFLAGS -std=c99" ++ ;; ++ esac + cf_xopen_source="-D__EXTENSIONS__ -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" + ;; + solaris2.[1-9]) #(vi +@@ -9640,12 +9647,7 @@ case ".$MANPAGE_RENAMES" in #(vi + .no) #(vi + ;; + .|.yes) +- # Debian 'man' program? +- if test -f /etc/debian_version ; then +- MANPAGE_RENAMES=`cd $srcdir && pwd`/man/man_db.renames +- else + MANPAGE_RENAMES=no +- fi + ;; + esac + +@@ -18449,7 +18444,7 @@ echo "${ECHO_T}$LIB_SUBSETS" >&6 + + ### Construct the list of include-directories to be generated + +-CPPFLAGS="$CPPFLAGS -I. -I../include" ++CPPFLAGS="-I. -I../include $CPPFLAGS" + if test "$srcdir" != "."; then + CPPFLAGS="$CPPFLAGS -I\${srcdir}/../include" + fi From fe3a8b6859302393c77ee6626f4a65a0a3831eca Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Thu, 28 Feb 2013 16:28:14 +0100 Subject: [PATCH 028/286] gnutar root build: Nix on Illumos doesn't support build users yet. --- pkgs/tools/archivers/gnutar/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/archivers/gnutar/default.nix b/pkgs/tools/archivers/gnutar/default.nix index 51d5d35fe80..828d0677bb8 100644 --- a/pkgs/tools/archivers/gnutar/default.nix +++ b/pkgs/tools/archivers/gnutar/default.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { # May have some issues with root compilation because the bootstrap tool # cannot be used as a login shell for now. - FORCE_UNSAFE_CONFIGURE = stdenv.lib.optionalString (stdenv.system == "armv7l-linux") "1"; + FORCE_UNSAFE_CONFIGURE = stdenv.lib.optionalString (stdenv.system == "armv7l-linux" || stdenv.isSunOS) "1"; meta = { homepage = http://www.gnu.org/software/tar/; From 5dcc019dc0fa88caa071b457c77f1d1ccbfaa380 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Thu, 28 Feb 2013 16:35:01 +0100 Subject: [PATCH 029/286] Update bison to 2.7 --- pkgs/development/tools/parsing/bison/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/parsing/bison/default.nix b/pkgs/development/tools/parsing/bison/default.nix index b397a22443a..4e4539059a6 100644 --- a/pkgs/development/tools/parsing/bison/default.nix +++ b/pkgs/development/tools/parsing/bison/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, m4, perl }: stdenv.mkDerivation rec { - name = "bison-2.6.5"; + name = "bison-2.7"; src = fetchurl { url = "mirror://gnu/bison/${name}.tar.xz"; - sha256 = "8640d5b51aad462db6863711f333a9159836853e0b1e79fdef708c6efb5cd52b"; + sha256 = "1zd77ilmpv5mi3kr55jrj6ncqlcnyhpianhrwzak2q28cv2cbn23"; }; nativeBuildInputs = [ m4 ] ++ stdenv.lib.optional doCheck perl; From ecba7e947eb8cc1500dd1a91b544567d595a37e2 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Thu, 28 Feb 2013 16:38:43 +0100 Subject: [PATCH 030/286] Update Git to 1.8.1.3 and fix build on Illumos. --- .../version-management/git-and-tools/git/default.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) 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 87fa119252c..62880424b59 100644 --- a/pkgs/applications/version-management/git-and-tools/git/default.nix +++ b/pkgs/applications/version-management/git-and-tools/git/default.nix @@ -10,7 +10,7 @@ let - version = "1.8.1"; + version = "1.8.1.3"; svn = subversionClient.override { perlBindings = true; }; @@ -21,7 +21,7 @@ stdenv.mkDerivation { src = fetchurl { url = "http://git-core.googlecode.com/files/git-${version}.tar.gz"; - sha1 = "wfj2pbqf9l56014dm330wb13qgcwx3dc"; + sha256 = "1waz35cwgcwhgmgzmc4s00yd2vivhy77p49crgqsl0nqpxyj8lrp"; }; patches = [ ./docbook2texi.patch ]; @@ -32,7 +32,8 @@ stdenv.mkDerivation { ++ stdenv.lib.optionals guiSupport [tcl tk]; makeFlags = "prefix=\${out} PERL_PATH=${perl}/bin/perl SHELL_PATH=${stdenv.shell} " - + (if pythonSupport then "PYTHON_PATH=${python}/bin/python" else "NO_PYTHON=1"); + + (if pythonSupport then "PYTHON_PATH=${python}/bin/python" else "NO_PYTHON=1") + + (if stdenv.isSunOS then " INSTALL=install NO_INET_NTOP= NO_INET_PTON=" else ""); # FIXME: "make check" requires Sparse; the Makefile must be tweaked # so that `SPARSE_FLAGS' corresponds to the current architecture... From 5436ca4d87dda0687435147b5657bd0540b9f668 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Thu, 28 Feb 2013 16:42:03 +0100 Subject: [PATCH 031/286] Update gettext to 0.18.2 --- pkgs/development/libraries/gettext/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/gettext/default.nix b/pkgs/development/libraries/gettext/default.nix index e88308bb2e9..074c1b9c49f 100644 --- a/pkgs/development/libraries/gettext/default.nix +++ b/pkgs/development/libraries/gettext/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, libiconv }: stdenv.mkDerivation (rec { - name = "gettext-0.18.1.1"; + name = "gettext-0.18.2"; src = fetchurl { url = "mirror://gnu/gettext/${name}.tar.gz"; - sha256 = "1sa3ch12qxa4h3ya6hkz119yclcccmincl9j20dhrdx5mykp3b4k"; + sha256 = "516a6370b3b3f46e2fc5a5e222ff5ecd76f3089bc956a7587a6e4f89de17714c"; }; patches = [ ./no-gets.patch ]; From e33b77d84d1c4dabc18a439e39c9f084e7c566fb Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Thu, 28 Feb 2013 16:49:46 +0100 Subject: [PATCH 032/286] Fix gnugrep build on Illumos. --- pkgs/tools/text/gnugrep/default.nix | 2 ++ pkgs/tools/text/gnugrep/test-localeconv.patch | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 pkgs/tools/text/gnugrep/test-localeconv.patch diff --git a/pkgs/tools/text/gnugrep/default.nix b/pkgs/tools/text/gnugrep/default.nix index 98a737339d2..fde9123adf2 100644 --- a/pkgs/tools/text/gnugrep/default.nix +++ b/pkgs/tools/text/gnugrep/default.nix @@ -13,6 +13,8 @@ stdenv.mkDerivation { buildInputs = [ pcre ] ++ stdenv.lib.optional (libiconv != null) libiconv; + patches = [ ./test-localeconv.patch ]; + NIX_LDFLAGS = stdenv.lib.optionalString (libiconv != null) "-L${libiconv}/lib -liconv"; doCheck = !stdenv.isDarwin; diff --git a/pkgs/tools/text/gnugrep/test-localeconv.patch b/pkgs/tools/text/gnugrep/test-localeconv.patch new file mode 100644 index 00000000000..f5efaf22221 --- /dev/null +++ b/pkgs/tools/text/gnugrep/test-localeconv.patch @@ -0,0 +1,18 @@ +--- grep-2.14/gnulib-tests/test-localeconv.c.orig 2013-02-15 18:41:50.213433059 +0000 ++++ grep-2.14/gnulib-tests/test-localeconv.c 2013-02-15 18:50:33.964751303 +0000 +@@ -37,13 +37,13 @@ + + ASSERT (STREQ (l->decimal_point, ".")); + ASSERT (STREQ (l->thousands_sep, "")); +-#if !defined __FreeBSD__ ++#if !(defined __FreeBSD__ || defined __sun) + ASSERT (STREQ (l->grouping, "")); + #endif + + ASSERT (STREQ (l->mon_decimal_point, "")); + ASSERT (STREQ (l->mon_thousands_sep, "")); +-#if !defined __FreeBSD__ ++#if !(defined __FreeBSD__ || defined __sun) + ASSERT (STREQ (l->mon_grouping, "")); + #endif + ASSERT (STREQ (l->positive_sign, "")); From ef85e97b518ffbf5913f5ba1e44cce8337b2a886 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Thu, 28 Feb 2013 16:50:58 +0100 Subject: [PATCH 033/286] Update gnused to 4.2.2 --- pkgs/tools/text/gnused/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/text/gnused/default.nix b/pkgs/tools/text/gnused/default.nix index 66fcb3d1929..65a1c131de1 100644 --- a/pkgs/tools/text/gnused/default.nix +++ b/pkgs/tools/text/gnused/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl}: stdenv.mkDerivation { - name = "gnused-4.2.1"; + name = "gnused-4.2.2"; src = fetchurl { - url = mirror://gnu/sed/sed-4.2.1.tar.gz; - sha256 = "0q1hzjvr6pzhaagidg7pj76k1fzz5nl15np7p72w9zcpw0f58ww7"; + url = mirror://gnu/sed/sed-4.2.2.tar.gz; + sha256 = "f048d1838da284c8bc9753e4506b85a1e0cc1ea8999d36f6995bcb9460cddbd7"; }; meta = { From 66798d7aaf79fdb4eca7c1f04f092544b4afa4a6 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Thu, 28 Feb 2013 17:03:42 +0100 Subject: [PATCH 034/286] gettext: Remove old patch. Enable xz compression. --- .../development/libraries/gettext/default.nix | 8 ++-- .../libraries/gettext/no-gets.patch | 42 ------------------- 2 files changed, 3 insertions(+), 47 deletions(-) delete mode 100644 pkgs/development/libraries/gettext/no-gets.patch diff --git a/pkgs/development/libraries/gettext/default.nix b/pkgs/development/libraries/gettext/default.nix index 074c1b9c49f..c9596d66ee2 100644 --- a/pkgs/development/libraries/gettext/default.nix +++ b/pkgs/development/libraries/gettext/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, libiconv }: +{ stdenv, fetchurl, libiconv, xz }: stdenv.mkDerivation (rec { name = "gettext-0.18.2"; @@ -8,11 +8,9 @@ stdenv.mkDerivation (rec { sha256 = "516a6370b3b3f46e2fc5a5e222ff5ecd76f3089bc956a7587a6e4f89de17714c"; }; - patches = [ ./no-gets.patch ]; - LDFLAGS = if stdenv.isSunOS then "-lm -lmd -lmp -luutil -lnvpair -lnsl -lidmap -lavl -lsec" else ""; - configureFlags = [ "--disable-csharp" ] + configureFlags = [ "--disable-csharp" "--with-xz" ] ++ (stdenv.lib.optionals stdenv.isCygwin [ # We have a static libiconv, so we can only build the static lib. "--disable-shared" "--enable-static" @@ -32,7 +30,7 @@ stdenv.mkDerivation (rec { fi ''; - buildInputs = stdenv.lib.optional (!stdenv.isLinux) libiconv; + buildInputs = [ xz ] ++ stdenv.lib.optional (!stdenv.isLinux) libiconv; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/gettext/no-gets.patch b/pkgs/development/libraries/gettext/no-gets.patch deleted file mode 100644 index 9daa48eae64..00000000000 --- a/pkgs/development/libraries/gettext/no-gets.patch +++ /dev/null @@ -1,42 +0,0 @@ -hack until gzip pulls a newer gnulib version - -From 66712c23388e93e5c518ebc8515140fa0c807348 Mon Sep 17 00:00:00 2001 -From: Eric Blake -Date: Thu, 29 Mar 2012 13:30:41 -0600 -Subject: [PATCH] stdio: don't assume gets any more - -Gnulib intentionally does not have a gets module, and now that C11 -and glibc have dropped it, we should be more proactive about warning -any user on a platform that still has a declaration of this dangerous -interface. - ---- a/gettext-tools/libgettextpo/stdio.in.h -+++ b/gettext-tools/libgettextpo/stdio.in.h -@@ -125,7 +125,6 @@ - so any use of gets warrants an unconditional warning. Assume it is - always declared, since it is required by C89. */ - #undef gets --_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); - - #if @GNULIB_FOPEN@ - # if @REPLACE_FOPEN@ ---- a/gettext-tools/gnulib-lib/stdio.in.h -+++ b/gettext-tools/gnulib-lib/stdio.in.h -@@ -125,7 +125,6 @@ - so any use of gets warrants an unconditional warning. Assume it is - always declared, since it is required by C89. */ - #undef gets --_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); - - #if @GNULIB_FOPEN@ - # if @REPLACE_FOPEN@ ---- a/gettext-runtime/gnulib-lib/stdio.in.h -+++ b/gettext-runtime/gnulib-lib/stdio.in.h -@@ -125,7 +125,6 @@ - so any use of gets warrants an unconditional warning. Assume it is - always declared, since it is required by C89. */ - #undef gets --_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); - - #if @GNULIB_FOPEN@ - # if @REPLACE_FOPEN@ From 58e6277d77088629b72b2bf9a02f46edb4208c36 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Thu, 28 Feb 2013 18:53:50 +0000 Subject: [PATCH 035/286] Allow GNU Patch tests to run with non-bash shell. Fix gnused url. --- pkgs/tools/text/gnupatch/bashishms.patch | 67 ++++++++++++++++++++++++ pkgs/tools/text/gnupatch/default.nix | 5 +- pkgs/tools/text/gnused/default.nix | 2 +- 3 files changed, 71 insertions(+), 3 deletions(-) create mode 100644 pkgs/tools/text/gnupatch/bashishms.patch diff --git a/pkgs/tools/text/gnupatch/bashishms.patch b/pkgs/tools/text/gnupatch/bashishms.patch new file mode 100644 index 00000000000..1a2cfbd8e4a --- /dev/null +++ b/pkgs/tools/text/gnupatch/bashishms.patch @@ -0,0 +1,67 @@ +http://lists.gnu.org/archive/html/bug-patch/2012-11/msg00001.html +Tested on Illumos, where ksh is /bin/sh. + +--- patch-2.7.1/tests/test-lib.sh ++++ patch-2.7.1/tests/test-lib.sh +@@ -118,7 +118,7 @@ + } + + if test -z "`echo -n`"; then +- if eval 'test -n "${BASH_LINENO[0]}" 2>/dev/null'; then ++ if (eval 'test -n "${BASH_LINENO[0]}"') 2>/dev/null; then + eval ' + _start_test() { + echo -n "[${BASH_LINENO[2]}] $* -- " + +--- patch-2.7.1/tests/crlf-handling ++++ patch-2.7.1/tests/crlf-handling +@@ -14,7 +14,7 @@ + use_tmpdir + + lf2crlf() { +- while read l; do echo -e "$l\r"; done ++ while read l; do printf "%s\r\n" "$l"; done + } + + echo 1 > a + +--- patch-2.7.1/tests/merge ++++ patch-2.7.1/tests/merge +@@ -32,18 +32,20 @@ + shift + done > a.sed + echo "$body" | sed -f a.sed > b +- shift +- while test $# -gt 0 ; do +- echo "$1" ++ if test $# -gt 0 ; then + shift +- done > b.sed ++ while test $# -gt 0 ; do ++ echo "$1" ++ shift ++ done ++ fi > b.sed + echo "$body" | sed -f b.sed > c + rm -f a.sed b.sed + output=`diff -u a b | patch $ARGS -f c` + status=$? + echo "$output" | sed -e '/^$/d' -e '/^patching file c$/d' + cat c +- test $status == 0 || echo "Status: $status" ++ test $status = 0 || echo "Status: $status" + } + + x() { + +--- patch-2.7.1/tests/read-only-files ++++ patch-2.7.1/tests/read-only-files +@@ -16,7 +16,7 @@ + + : > read-only + chmod a-w read-only +-if : 2> /dev/null > read-only; then ++if (: > read-only) 2> /dev/null; then + echo "Files with read-only permissions are writable" \ + "(probably running as superuser)" >&2 + exit 77 diff --git a/pkgs/tools/text/gnupatch/default.nix b/pkgs/tools/text/gnupatch/default.nix index c8c336ad202..83430a87105 100644 --- a/pkgs/tools/text/gnupatch/default.nix +++ b/pkgs/tools/text/gnupatch/default.nix @@ -14,8 +14,9 @@ stdenv.mkDerivation rec { configureFlags = [ "ac_cv_func_strnlen_working=yes" ]; }; - # Tests fail on FreeBSD due to a Bashism in the tests. - doCheck = !stdenv.isFreeBSD; + patches = [ ./bashishms.patch ]; + + doCheck = true; meta = { description = "GNU Patch, a program to apply differences to files"; diff --git a/pkgs/tools/text/gnused/default.nix b/pkgs/tools/text/gnused/default.nix index 65a1c131de1..d16ce1e0a29 100644 --- a/pkgs/tools/text/gnused/default.nix +++ b/pkgs/tools/text/gnused/default.nix @@ -4,7 +4,7 @@ stdenv.mkDerivation { name = "gnused-4.2.2"; src = fetchurl { - url = mirror://gnu/sed/sed-4.2.2.tar.gz; + url = mirror://gnu/sed/sed-4.2.2.tar.bz2; sha256 = "f048d1838da284c8bc9753e4506b85a1e0cc1ea8999d36f6995bcb9460cddbd7"; }; From 242b4d23a71b9d2193d590da31448c26b15ba534 Mon Sep 17 00:00:00 2001 From: Danny Wilson Date: Thu, 28 Feb 2013 16:45:36 +0100 Subject: [PATCH 036/286] Update less to version 451 --- pkgs/tools/misc/less/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/misc/less/default.nix b/pkgs/tools/misc/less/default.nix index b22e7521764..d038abbfc81 100644 --- a/pkgs/tools/misc/less/default.nix +++ b/pkgs/tools/misc/less/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, ncurses}: stdenv.mkDerivation { - name = "less-436"; + name = "less-451"; src = fetchurl { - url = http://www.greenwoodsoftware.com/less/less-436.tar.gz; - sha256 = "1lilcx6qrfr2dqahv7r10j9h2v86w5sb7m8wrx2sza9ifkq6z8ap"; + url = http://www.greenwoodsoftware.com/less/less-451.tar.gz; + sha256 = "9fe8287c647afeafb4149c5dedaeacfd20971ed7c26c7553794bb750536b5f57"; }; buildInputs = [ncurses]; From d09269a22eed2e844b046c31899887aa6c1fb42d Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 15 Mar 2013 20:38:15 +0100 Subject: [PATCH 037/286] Use the same directory layout for user-installed Haskell libraries that GHC uses for its core libraries, so that these files integrate seamlessly into one profile, living right next to each other. This change is eventually going to simply our with-packages wrapper quite a bit. --- pkgs/build-support/cabal/default.nix | 4 ++-- pkgs/development/compilers/ghc/ghc-get-packages.sh | 2 +- pkgs/development/compilers/ghc/with-packages.nix | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index c1b8d6d5fea..2eedd315830 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -121,7 +121,7 @@ done echo "configure flags: $extraConfigureFlags $configureFlags" - ./Setup configure --verbose --prefix="$out" $extraConfigureFlags $configureFlags + ./Setup configure --verbose --prefix="$out" --libdir='$prefix/lib/$compiler' --libsubdir='$pkgid' $extraConfigureFlags $configureFlags eval "$postConfigure" ''; @@ -156,7 +156,7 @@ ensureDir $out/bin # necessary to get it added to PATH - local confDir=$out/lib/ghc-pkgs/ghc-${ghc.ghc.version} + local confDir=$out/lib/ghc-${ghc.ghc.version}/package.conf.d local installedPkgConf=$confDir/${self.fname}.installedconf local pkgConf=$confDir/${self.fname}.conf ensureDir $confDir diff --git a/pkgs/development/compilers/ghc/ghc-get-packages.sh b/pkgs/development/compilers/ghc/ghc-get-packages.sh index 9ed1455d232..71e58e66a5e 100755 --- a/pkgs/development/compilers/ghc/ghc-get-packages.sh +++ b/pkgs/development/compilers/ghc/ghc-get-packages.sh @@ -12,7 +12,7 @@ fi PATH="$2:$PATH" IFS=":" for p in $PATH; do - PkgDir="$p/../lib/ghc-pkgs/ghc-$version" + PkgDir="$p/../lib/ghc-$version/package.conf.d" for i in $PkgDir/*.installedconf; do # output takes place here test -f $i && echo -n " $prefix$i" diff --git a/pkgs/development/compilers/ghc/with-packages.nix b/pkgs/development/compilers/ghc/with-packages.nix index 99e91901d00..28a639246ce 100644 --- a/pkgs/development/compilers/ghc/with-packages.nix +++ b/pkgs/development/compilers/ghc/with-packages.nix @@ -51,7 +51,7 @@ stdenv.mkDerivation rec { echo "Linking selected packages and dependencies:" for currentPath in ${stdenv.lib.concatStringsSep " " allPackages}; do - currentPkgDir="$currentPath/lib/ghc-pkgs/ghc-${ghc.version}" + currentPkgDir="$currentPath/lib/ghc-${ghc.version}/package.conf.d/" # Check if current path is a Cabal package for the current GHC if test -d $currentPkgDir; then echo -n "Linking $currentPath " From 90fc42c2f2bef844f5689b5939bcf760a23e4a63 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 15 Mar 2013 21:11:31 +0100 Subject: [PATCH 038/286] pkgs/development/compilers/ghc/with-packages.nix: simply this wrapper on top of buildenv --- .../compilers/ghc/with-packages.nix | 130 ++++-------------- 1 file changed, 23 insertions(+), 107 deletions(-) diff --git a/pkgs/development/compilers/ghc/with-packages.nix b/pkgs/development/compilers/ghc/with-packages.nix index 28a639246ce..74a8253b838 100644 --- a/pkgs/development/compilers/ghc/with-packages.nix +++ b/pkgs/development/compilers/ghc/with-packages.nix @@ -1,122 +1,38 @@ -{stdenv, ghc, packages ? [], makeWrapper}: +{ stdenv, ghc, packages, buildEnv, makeWrapper }: -stdenv.mkDerivation rec { +assert packages != []; + +let + ghc761OrLater = stdenv.lib.versionOlder "7.6.1" ghc.version; + packageDBFlag = if ghc761OrLater then "--package-db" else "--package-conf"; + libDir = "$out/lib/ghc-${ghc.version}"; + packageCfgDir = "${libDir}/package.conf.d"; +in +buildEnv { name = "haskell-env-${ghc.name}"; - - allPackages = stdenv.lib.closePropagation packages; - buildInputs = allPackages ++ [makeWrapper]; - propagatedBuildInputs = packages; - - unpackPhase = "true"; - - installPhase = '' - numversion=$(${ghc}/bin/ghc --numeric-version) - majorversion=''${numversion%%.*} - minorversion=''${numversion#*.} - minorversion=''${minorversion%%.*} - - if [[ $majorversion -gt 6 ]] && [[ $minorversion -gt 4 ]]; then - globalConf="--global-package-db" - else - globalConf="--global-conf" - fi - - originalTopDir="${ghc}/lib/ghc-${ghc.version}" - originalPkgDir="$originalTopDir/package.conf.d" - linkedTopDir="$out/lib" - linkedPkgDir="$linkedTopDir/package.conf.d" - - mkdir -p $out/bin - mkdir -p $linkedTopDir - mkdir -p $linkedPkgDir - - echo "Linking GHC core libraries:" - - echo -n "Linking $originalTopDir " - for f in "$originalTopDir/"*; do - if test -f $f; then - ln -s $f $linkedTopDir - echo -n . - fi - done - echo - - echo -n "Linking $originalPkgDir " - for f in "$originalPkgDir/"*.conf; do - ln -s $f $linkedPkgDir - echo -n . - done - echo - - echo "Linking selected packages and dependencies:" - - for currentPath in ${stdenv.lib.concatStringsSep " " allPackages}; do - currentPkgDir="$currentPath/lib/ghc-${ghc.version}/package.conf.d/" - # Check if current path is a Cabal package for the current GHC - if test -d $currentPkgDir; then - echo -n "Linking $currentPath " - for f in "$currentPath/bin/"*; do - ln -s $f $out/bin - echo -n . - done - for f in "$currentPath/etc/bash_completion.d/"*; do - mkdir -p $out/etc/bash_completion.d - ln -s $f $out/etc/bash_completion.d/ - echo -n . - done - for s in 1 2 3 4 5 6 7 8 9; do - for f in "$currentPath/share/man/man$s/"*; do - mkdir -p $out/share/man/man$s - ln -sv $f $out/share/man/man$s/ - echo -n . - done - done - for f in "$currentPath/share/emacs/site-lisp/"*; do - mkdir -p $out/share/emacs/site-lisp - ln -s $f $out/share/emacs/site-lisp/ - echo -n . - done - for f in "$currentPkgDir/"*.conf; do - ln -s $f $linkedPkgDir - echo -n . - done - echo - fi - done - - echo -n "Generating package cache " - ${ghc}/bin/ghc-pkg $globalConf $linkedPkgDir recache - echo . - - echo -n "Generating wrappers " + paths = stdenv.lib.closePropagation (packages ++ [ghc]); + postBuild = '' + . ${makeWrapper}/nix-support/setup-hook for prg in ghc ghci ghc-${ghc.version} ghci-${ghc.version}; do - # The NIX env-vars are picked up by our patched version of ghc-paths. - makeWrapper ${ghc}/bin/$prg $out/bin/$prg \ - --add-flags "-B$linkedTopDir" \ - --set "NIX_GHC" "$out/bin/ghc" \ - --set "NIX_GHCPKG" "$out/bin/ghc-pkg" \ - --set "NIX_GHC_LIBDIR" "$linkedTopDir" - echo -n . + rm -f $out/bin/$prg + makeWrapper ${ghc}/bin/$prg $out/bin/$prg \ + --add-flags '"-B$NIX_GHC_LIBDIR"' \ + --set "NIX_GHC" "$out/bin/ghc" \ + --set "NIX_GHCPKG" "$out/bin/ghc-pkg" \ + --set "NIX_GHC_LIBDIR" "${libDir}" done for prg in runghc runhaskell; do + rm -f $out/bin/$prg makeWrapper ${ghc}/bin/$prg $out/bin/$prg --add-flags "-f $out/bin/ghc" - echo -n . done for prg in ghc-pkg ghc-pkg-${ghc.version}; do - makeWrapper ${ghc}/bin/$prg $out/bin/$prg --add-flags "$globalConf $linkedPkgDir" - echo -n . + rm -f $out/bin/$prg + makeWrapper ${ghc}/bin/$prg $out/bin/$prg --add-flags "${packageDBFlag} ${packageCfgDir}" done - for prg in hp2ps hpc hasktags hsc2hs haddock haddock-${ghc.version}; do - if test -x ${ghc}/bin/$prg -a ! -x $out/bin/$prg; then - ln -s ${ghc}/bin/$prg $out/bin/$prg && echo -n . - fi - done - echo + $out/bin/ghc-pkg recache ''; - - meta = ghc.meta; } From 7cb4d92bec10e893574507d0b6afcd367ac74c05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 17 Mar 2013 10:15:03 +0100 Subject: [PATCH 039/286] amule: update and fix build on gcc47 --- pkgs/tools/networking/p2p/amule/default.nix | 8 +++++--- pkgs/tools/networking/p2p/amule/gcc47.patch | 21 +++++++++++++++++++++ 2 files changed, 26 insertions(+), 3 deletions(-) create mode 100644 pkgs/tools/networking/p2p/amule/gcc47.patch diff --git a/pkgs/tools/networking/p2p/amule/default.nix b/pkgs/tools/networking/p2p/amule/default.nix index eafa51fb4f2..3347ad010c7 100644 --- a/pkgs/tools/networking/p2p/amule/default.nix +++ b/pkgs/tools/networking/p2p/amule/default.nix @@ -12,17 +12,19 @@ let edf = enabled: flag: if enabled then "--enable-" + flag else "--disable-" + flag; in mkDerivation rec { - name = "aMule-2.2.6"; + name = "aMule-2.3.1"; src = fetchurl { - url = "mirror://sourceforge/amule/${name}.tar.bz2"; - sha256 = "08l1931hcg1ia8yvhgx70hx64mknjnfn6l78m0ja44w13mgjpqvc"; + url = "mirror://sourceforge/amule/${name}.tar.xz"; + sha256 = "0hvpx3c005nvxsfand5bwfxxiq3mv0mpykajfm2lkygjh1rw2383"; }; buildInputs = [ zlib wxGTK perl cryptopp libupnp gettext pkgconfig makeWrapper ] ++ lib.optional httpServer libpng; + patches = [ ./gcc47.patch ]; # from Gentoo + configureFlags = '' --with-crypto-prefix=${cryptopp} --disable-debug diff --git a/pkgs/tools/networking/p2p/amule/gcc47.patch b/pkgs/tools/networking/p2p/amule/gcc47.patch new file mode 100644 index 00000000000..e776dda3240 --- /dev/null +++ b/pkgs/tools/networking/p2p/amule/gcc47.patch @@ -0,0 +1,21 @@ +# http://code.google.com/p/amule/source/detail?r=10772 +diff -ur aMule-2.3.1.orig//src/ObservableQueue.h aMule-2.3.1/src/ObservableQueue.h +--- aMule-2.3.1.orig//src/ObservableQueue.h 2012-04-22 19:40:05.560084120 +0200 ++++ aMule-2.3.1/src/ObservableQueue.h 2012-04-22 19:40:32.479085322 +0200 +@@ -331,14 +331,14 @@ + template + void CObservableQueue::ObserverAdded( ObserverType* o ) + { +- NotifyObservers( EventType( EventType::STARTING ), o ); ++ this->NotifyObservers( EventType( EventType::STARTING ), o ); + } + + + template + void CObservableQueue::ObserverRemoved( ObserverType* o ) + { +- NotifyObservers( EventType( EventType::STOPPING ), o ); ++ this->NotifyObservers( EventType( EventType::STOPPING ), o ); + } + + \ No newline at end of file From 99da34c204eba62a66e111e4b92b38053cd49162 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 17 Mar 2013 10:26:44 +0100 Subject: [PATCH 040/286] elfutils: fix build via update --- pkgs/development/tools/misc/elfutils/default.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/development/tools/misc/elfutils/default.nix b/pkgs/development/tools/misc/elfutils/default.nix index 5a1a19068a7..ef1e7e781fa 100644 --- a/pkgs/development/tools/misc/elfutils/default.nix +++ b/pkgs/development/tools/misc/elfutils/default.nix @@ -3,20 +3,20 @@ # TODO: Look at the hardcoded paths to kernel, modules etc. stdenv.mkDerivation rec { name = "elfutils-${version}"; - version = "0.152"; - + version = "0.155"; + src = fetchurl { urls = [ - "https://fedorahosted.org/releases/e/l/elfutils/${version}/${name}.tar.bz2" + "http://fedorahosted.org/releases/e/l/elfutils/${version}/${name}.tar.bz2" "mirror://gentoo/distfiles/${name}.tar.bz2" ]; - sha256 = "19mlgxyzcwiv64ynj2cibgkiw4qkm3n37kizvy6555dsmlaqfybq"; + sha256 = "1n0fsg2q961i0lj355w2ad3cmp7d1jjcdhrfhmlgsvs14r2lli38"; }; patches = [ (fetchurl { - url = https://fedorahosted.org/releases/e/l/elfutils/0.152/elfutils-portability.patch; - sha256 = "0q318w4cvvqv9ps4xcwphapj1gl31isgjyya4y9sm72qj68n61p0"; + url = "http://fedorahosted.org/releases/e/l/elfutils/${version}/elfutils-portability.patch"; + sha256 = "0w8i94x9hqirgs2lwcd1g36s77r5svh4j1fgcrd6lx5w18vch0di"; }) ]; # We need bzip2 in NativeInputs because otherwise we can't unpack the src, From c78bad69e1349713adec91ac07fd842ee0ff5925 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 17 Mar 2013 11:01:49 +0100 Subject: [PATCH 041/286] gsl: attempt to fix ToDo: there may be more impurities than this processor-feature test. --- pkgs/development/libraries/gsl/default.nix | 4 +++ .../libraries/gsl/disable-fma.patch | 32 +++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 pkgs/development/libraries/gsl/disable-fma.patch diff --git a/pkgs/development/libraries/gsl/default.nix b/pkgs/development/libraries/gsl/default.nix index 474d2f97dd0..0eefda50c20 100644 --- a/pkgs/development/libraries/gsl/default.nix +++ b/pkgs/development/libraries/gsl/default.nix @@ -8,6 +8,10 @@ stdenv.mkDerivation rec { sha256 = "18qf6jzz1r3mzb5qynywv4xx3z9g61hgkbpkdrhbgqh2g7jhgfc5"; }; + # ToDo: there might be more impurities than FMA support check + patches = [ ./disable-fma.patch ]; # http://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html + patchFlags = "-p0"; + doCheck = true; meta = { diff --git a/pkgs/development/libraries/gsl/disable-fma.patch b/pkgs/development/libraries/gsl/disable-fma.patch new file mode 100644 index 00000000000..d5c0d620863 --- /dev/null +++ b/pkgs/development/libraries/gsl/disable-fma.patch @@ -0,0 +1,32 @@ +--- configure.ac 2011-09-22 16:13:22 +0000 ++++ configure.ac 2011-11-26 23:55:24 +0000 +@@ -381,6 +381,28 @@ + AC_SUBST(HAVE_DARWIN_IEEE_INTERFACE) + AC_SUBST(HAVE_DARWIN86_IEEE_INTERFACE) + ++dnl check for compiler flags to disable use of FMA ++save_cflags="$CFLAGS" ++AC_CACHE_CHECK([for compiler flags to disable use of FMA], ac_cv_c_fma_flags, ++[ ++if test X"$GCC" = Xyes; then ++ fma_flags='-ffp-contract=off' ++else ++ fma_flags= ++fi ++if test X"$fma_flags" != X; then ++ CFLAGS="$fma_flags $CFLAGS" ++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[int foo;]])],[ac_cv_c_fma_flags="$fma_flags"],[ac_cv_c_fma_flags="none"]) ++else ++ ac_cv_c_fma_flags="none" ++fi]) ++ ++if test "$ac_cv_c_fma_flags" != "none" ; then ++ CFLAGS="$ac_cv_c_fma_flags $save_cflags" ++else ++ CFLAGS="$save_cflags" ++fi ++ + dnl Check for IEEE control flags + + save_cflags="$CFLAGS" + From c3cefc669cd11fd5942661e142aeb20c155cc130 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 17 Mar 2013 12:02:55 +0100 Subject: [PATCH 042/286] asc: fix build for gcc47 --- pkgs/games/asc/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/games/asc/default.nix b/pkgs/games/asc/default.nix index 86cf929aede..bf2fb1e89c2 100644 --- a/pkgs/games/asc/default.nix +++ b/pkgs/games/asc/default.nix @@ -10,6 +10,10 @@ stdenv.mkDerivation rec { sha256 = "1r011l4gsliky6szjvda8xzyhkkc50ahrr7p14911v5ydar0w3hh"; }; + configureFlags = [ "--disable-paragui" "--disable-paraguitest" ]; + + NIX_CFLAGS_COMPILE = "-fpermissive"; # I'm too lazy to catch all gcc47-related problems + buildInputs = [ SDL SDL_image SDL_mixer SDL_sound libsigcxx physfs boost expat freetype libjpeg wxGTK lua perl pkgconfig zlib zip bzip2 libpng From 3c472d53aaa1bc11e3f927364cd0cdde0df0f50f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 17 Mar 2013 12:37:39 +0100 Subject: [PATCH 043/286] sword: fix build with gcc47 via a patch from Gentoo --- pkgs/development/libraries/sword/default.nix | 2 +- pkgs/development/libraries/sword/gcc47.patch | 35 ++++++++++++++++++++ 2 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/libraries/sword/gcc47.patch diff --git a/pkgs/development/libraries/sword/default.nix b/pkgs/development/libraries/sword/default.nix index 3486981463f..f62bc2eb11d 100644 --- a/pkgs/development/libraries/sword/default.nix +++ b/pkgs/development/libraries/sword/default.nix @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { buildInputs = [ pkgconfig icu cluceneCore curl ]; # because curl/types.h disappeared since at least curl 7.21.7 - patches = [ ./dont_include_curl_types_h.patch ]; + patches = [ ./dont_include_curl_types_h.patch ./gcc47.patch ]; prePatch = '' patchShebangs .; diff --git a/pkgs/development/libraries/sword/gcc47.patch b/pkgs/development/libraries/sword/gcc47.patch new file mode 100644 index 00000000000..7b55de75b64 --- /dev/null +++ b/pkgs/development/libraries/sword/gcc47.patch @@ -0,0 +1,35 @@ +https://bugs.gentoo.org/419505 + + +--- a/include/multimapwdef.h ++++ b/include/multimapwdef.h +@@ -12,21 +12,21 @@ class multimapwithdefault : public std::multimap { + public: + typedef std::pair value_type; + T& getWithDefault(const Key& k, const T& defaultValue) { +- if (find(k) == this->end()) { +- insert(value_type(k, defaultValue)); ++ if (this->find(k) == this->end()) { ++ this->insert(value_type(k, defaultValue)); + } +- return (*(find(k))).second; ++ return (*(this->find(k))).second; + } + + T& operator[](const Key& k) { +- if (find(k) == this->end()) { +- insert(value_type(k, T())); ++ if (this->find(k) == this->end()) { ++ this->insert(value_type(k, T())); + } +- return (*(find(k))).second; ++ return (*(this->find(k))).second; + } + bool has(const Key& k, const T &val) const { +- typename std::multimap::const_iterator start = lower_bound(k); +- typename std::multimap::const_iterator end = upper_bound(k); ++ typename std::multimap::const_iterator start = this->lower_bound(k); ++ typename std::multimap::const_iterator end = this->upper_bound(k); + for (; start!=end; start++) { + if (start->second == val) + return true; From 6c21cde68df8495fce97c5250f408bf303120854 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 17 Mar 2013 20:36:47 +0100 Subject: [PATCH 044/286] blobby: minor update, making it build --- pkgs/games/blobby/default.nix | 17 +++++++++++------ pkgs/top-level/all-packages.nix | 4 +--- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/pkgs/games/blobby/default.nix b/pkgs/games/blobby/default.nix index b9f5f5d7e2a..93b69cee98e 100644 --- a/pkgs/games/blobby/default.nix +++ b/pkgs/games/blobby/default.nix @@ -1,14 +1,19 @@ -{stdenv, fetchurl, SDL, SDL_image, mesa, cmake, physfs, boost, zip, zlib}: +{ stdenv, fetchurl, SDL, SDL_image, mesa, cmake, physfs, boostHeaders +, zip, zlib/*, lua5, tinyxml*/ }: + stdenv.mkDerivation rec { - version = "2.0-RC1"; - name = "blobby-volley-${version}"; + version = "1.0rc3"; + name = "blobby-volley-2-${version}"; src = fetchurl { - url = "mirror://sourceforge/project/blobby/Blobby%20Volley%202%20%28Linux%29/1.0RC1/blobby2-linux-1.0rc1.tar.gz"; - sha256 = "1cb56bd31vqkc12cmzp43q2aai99505isq2mii95jp0rzdqks4fy"; + url = "mirror://sourceforge/blobby/blobby2-linux-${version}.tar.gz"; + sha256 = "10f50b2ygw8cb9mp33wpdwv9p6lc10qlwc1xd44bbcby1d9v5ga5"; }; - buildInputs = [SDL SDL_image mesa cmake physfs boost zip zlib]; + buildInputs = [ + SDL SDL_image mesa cmake physfs boostHeaders + zip zlib # lua5 tinyxml # ToDo: use shared libs? + ]; preConfigure = '' sed -re '1i#include ' -i src/CrossCorrelation.h diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b679c6c4d52..61142934345 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8153,9 +8153,7 @@ let blackshadeselite = callPackage ../games/blackshadeselite { }; - blobby = callPackage ../games/blobby { - boost = boost149; - }; + blobby = callPackage ../games/blobby { }; bsdgames = callPackage ../games/bsdgames { }; From 3836ef7d66fd84224a53f1771219b8ecb30ef0e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 18 Mar 2013 18:20:54 +0100 Subject: [PATCH 045/286] gmp: revert to using bz2 sources Bootstrapping of stdenv can't handle anything else. --- pkgs/development/libraries/gmp/5.1.1.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/gmp/5.1.1.nix b/pkgs/development/libraries/gmp/5.1.1.nix index d9c67274f25..2f9ff516523 100644 --- a/pkgs/development/libraries/gmp/5.1.1.nix +++ b/pkgs/development/libraries/gmp/5.1.1.nix @@ -3,9 +3,9 @@ stdenv.mkDerivation rec { name = "gmp-5.1.1"; - src = fetchurl { - urls = [ "mirror://gnu/gmp/${name}.tar.xz" "ftp://ftp.gmplib.org/pub/${name}/${name}.tar.xz" ]; - sha256 = "1hili06lcf0clg5qfvz7knm6pmj6ab54yhsvskp1mdny5xw4vmjb"; + src = fetchurl { # we need to use bz2, others aren't in bootstrapping stdenv + urls = [ "mirror://gnu/gmp/${name}.tar.bz2" "ftp://ftp.gmplib.org/pub/${name}/${name}.tar.bz2" ]; + sha256 = "1bdgf04k2i12pfivxgjq68iarz3ngix9hpzbmkgijrdk92gpgm50"; }; nativeBuildInputs = [ m4 ]; From 907602d5b8f8e0637f5e80537fdbc4aa7195372f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 19 Mar 2013 22:16:57 +0100 Subject: [PATCH 046/286] dbus: several fixes - disable the tests as (they warn) they make the library insecure - add libX11 (was missing something) - dirty hack around the "incomplete struct ucred" problem (feel free to find a better solution, I tried almost 1h) --- pkgs/development/libraries/dbus/default.nix | 9 ++++++--- .../libraries/dbus/ucred-dirty-hack.patch | 18 ++++++++++++++++++ 2 files changed, 24 insertions(+), 3 deletions(-) create mode 100644 pkgs/development/libraries/dbus/ucred-dirty-hack.patch diff --git a/pkgs/development/libraries/dbus/default.nix b/pkgs/development/libraries/dbus/default.nix index 7510801cd79..a9ec076a543 100644 --- a/pkgs/development/libraries/dbus/default.nix +++ b/pkgs/development/libraries/dbus/default.nix @@ -8,9 +8,12 @@ let sha256 = "fc1370ef38abeeb13f55c905ec002e60705fb0bfde3b8d21c8d6eb8056c11bac"; }; - patches = [ ./ignore-missing-includedirs.patch ./implement-getgrouplist.patch ]; + patches = [ + ./ignore-missing-includedirs.patch ./implement-getgrouplist.patch + ./ucred-dirty-hack.patch + ]; - configureFlags = "--enable-embedded-tests --localstatedir=/var --sysconfdir=/etc --with-session-socket-dir=/tmp"; + configureFlags = "--localstatedir=/var --sysconfdir=/etc --with-session-socket-dir=/tmp"; in rec { @@ -19,7 +22,7 @@ in rec { nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ expat ]; + buildInputs = [ expat libX11 ]; # FIXME: dbus has optional systemd integration when checking # at_console policies. How to enable this without introducing a diff --git a/pkgs/development/libraries/dbus/ucred-dirty-hack.patch b/pkgs/development/libraries/dbus/ucred-dirty-hack.patch new file mode 100644 index 00000000000..a07abcc15fb --- /dev/null +++ b/pkgs/development/libraries/dbus/ucred-dirty-hack.patch @@ -0,0 +1,18 @@ +diff --git a/dbus/dbus-sysdeps-unix.c b/dbus/dbus-sysdeps-unix.c +index b4ecc96..267984a 100644 +--- a/dbus/dbus-sysdeps-unix.c ++++ b/dbus/dbus-sysdeps-unix.c +@@ -1635,6 +1635,13 @@ write_credentials_byte (int server_fd, + } + } + ++struct ucred ++{ ++ pid_t pid; /* PID of sending process. */ ++ uid_t uid; /* UID of sending process. */ ++ gid_t gid; /* GID of sending process. */ ++}; ++ + /** + * Reads a single byte which must be nul (an error occurs otherwise), + * and reads unix credentials if available. Clears the credentials From 111c8db50038341b09c8561f750c6d56e46de869 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 19 Mar 2013 22:34:33 +0100 Subject: [PATCH 047/286] ctl: fix build with gcc47 --- pkgs/development/libraries/ctl/default.nix | 8 ++++---- pkgs/development/libraries/ctl/gcc47.patch | 15 +++++++++++++++ 2 files changed, 19 insertions(+), 4 deletions(-) create mode 100644 pkgs/development/libraries/ctl/gcc47.patch diff --git a/pkgs/development/libraries/ctl/default.nix b/pkgs/development/libraries/ctl/default.nix index 950fe1baf08..1020ba3502e 100644 --- a/pkgs/development/libraries/ctl/default.nix +++ b/pkgs/development/libraries/ctl/default.nix @@ -8,12 +8,12 @@ stdenv.mkDerivation { sha256 = "16lzgbpxdyhykdwndj1i9vx3h4bfkxqqcrvasvgg70gb5raxj0mj"; }; - patches = [ ./patch.patch ]; - + patches = [ ./patch.patch ./gcc47.patch ]; + propagatedBuildInputs = [ ilmbase ]; - + configureFlags = "--with-ilmbase-prefix=${ilmbase}"; - + #configurePhase = " #export CXXFLAGS=\"-I${ilmbase}/include -L${ilmbase}/lib\" #echo $CXXFLAGS diff --git a/pkgs/development/libraries/ctl/gcc47.patch b/pkgs/development/libraries/ctl/gcc47.patch new file mode 100644 index 00000000000..1aa4be4fe6d --- /dev/null +++ b/pkgs/development/libraries/ctl/gcc47.patch @@ -0,0 +1,15 @@ + https://bugs.gentoo.org/426368 + + IlmCtl/CtlInterpreter.cpp | 1 + + 1 file changed, 1 insertion(+) + +--- a/IlmCtl/CtlInterpreter.cpp ++++ b/IlmCtl/CtlInterpreter.cpp +@@ -64,6 +64,7 @@ + #include + #include + #include ++#include + + #ifdef WIN32 + #include From 32a503a5d34d22987d4c2a723a0155da543043bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 20 Mar 2013 23:01:36 +0100 Subject: [PATCH 048/286] cpio: fix build without gets --- pkgs/tools/archivers/cpio/default.nix | 4 +++- pkgs/tools/archivers/cpio/no-gets.patch | 24 ++++++++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 pkgs/tools/archivers/cpio/no-gets.patch diff --git a/pkgs/tools/archivers/cpio/default.nix b/pkgs/tools/archivers/cpio/default.nix index 919484fa915..ec873507c85 100644 --- a/pkgs/tools/archivers/cpio/default.nix +++ b/pkgs/tools/archivers/cpio/default.nix @@ -2,12 +2,14 @@ stdenv.mkDerivation { name = "cpio-2.11"; - + src = fetchurl { url = mirror://gnu/cpio/cpio-2.11.tar.bz2; sha256 = "bb820bfd96e74fc6ce43104f06fe733178517e7f5d1cdee553773e8eff7d5bbd"; }; + patches = [ ./no-gets.patch ]; + meta = { homepage = http://www.gnu.org/software/cpio/; description = "A program to create or extract from cpio archives"; diff --git a/pkgs/tools/archivers/cpio/no-gets.patch b/pkgs/tools/archivers/cpio/no-gets.patch new file mode 100644 index 00000000000..f7a9be324df --- /dev/null +++ b/pkgs/tools/archivers/cpio/no-gets.patch @@ -0,0 +1,24 @@ +https://bugs.gentoo.org/424974 + +hack until gzip pulls a newer gnulib version + +From 66712c23388e93e5c518ebc8515140fa0c807348 Mon Sep 17 00:00:00 2001 +From: Eric Blake +Date: Thu, 29 Mar 2012 13:30:41 -0600 +Subject: [PATCH] stdio: don't assume gets any more + +Gnulib intentionally does not have a gets module, and now that C11 +and glibc have dropped it, we should be more proactive about warning +any user on a platform that still has a declaration of this dangerous +interface. + +--- a/gnu/stdio.in.h ++++ b/gnu/stdio.in.h +@@ -125,7 +125,6 @@ + so any use of gets warrants an unconditional warning. Assume it is + always declared, since it is required by C89. */ + #undef gets +-_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); + + #if @GNULIB_FOPEN@ + # if @REPLACE_FOPEN@ From 365dc528720ae1f70c63bf7cec4af40f8a3eaf93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 20 Mar 2013 23:25:43 +0100 Subject: [PATCH 049/286] protobuf: fix via update --- pkgs/development/libraries/protobuf/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/protobuf/default.nix b/pkgs/development/libraries/protobuf/default.nix index 57dc58bdfa1..bba8481780a 100644 --- a/pkgs/development/libraries/protobuf/default.nix +++ b/pkgs/development/libraries/protobuf/default.nix @@ -1,11 +1,11 @@ { fetchurl, stdenv, zlib }: stdenv.mkDerivation rec { - name = "protobuf-2.4.1"; + name = "protobuf-2.5.0"; src = fetchurl { url = "http://protobuf.googlecode.com/files/${name}.tar.bz2"; - sha256 = "1gxhfhk37jyjq1z4y3d4bz4i1fk2an5ydhk5kjzlp0rhfcs5516g"; + sha256 = "0xxn9gxhvsgzz2sgmihzf6pf75clr05mqj6218camwrwajpcbgqk"; }; buildInputs = [ zlib ]; From d91df9a4bdc4977e6ac81a550307f02bdc623ff7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 20 Mar 2013 23:36:17 +0100 Subject: [PATCH 050/286] krb5: fix build via update --- pkgs/development/libraries/kerberos/krb5.nix | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/pkgs/development/libraries/kerberos/krb5.nix b/pkgs/development/libraries/kerberos/krb5.nix index 38272165a28..b8aaa020972 100644 --- a/pkgs/development/libraries/kerberos/krb5.nix +++ b/pkgs/development/libraries/kerberos/krb5.nix @@ -2,7 +2,7 @@ let pname = "krb5"; - version = "1.10"; + version = "1.11.1"; name = "${pname}-${version}"; webpage = http://web.mit.edu/kerberos/; in @@ -11,8 +11,8 @@ stdenv.mkDerivation (rec { inherit name; src = fetchurl { - url = "${webpage}/dist/krb5/1.10/${name}-signed.tar"; - sha256 = "1pa4m6538drb51gsqxbbxlsnc9fm9ccid9m2s3pv3di5l0a7l8bg"; + url = "${webpage}/dist/krb5/1.11/${name}-signed.tar"; + sha256 = "0s07sbwrj3c61gc29g016csim04azb9h74rf5595fxzqlzv0y8rs"; }; buildInputs = [ perl ncurses yacc ]; @@ -23,9 +23,11 @@ stdenv.mkDerivation (rec { cd ${name}/src ''; - meta = { - description = "MIT Kerberos 5"; - homepage = webpage; - license = "MPL"; + #doCheck = true; # report: No suitable file for testing purposes + + meta = { + description = "MIT Kerberos 5"; + homepage = webpage; + license = "MPL"; }; }) From d210a4a8fa247406f0b0dfe2247cab13316b7da8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 21 Mar 2013 00:08:24 +0100 Subject: [PATCH 051/286] goldendict: fix build with gcc47 --- pkgs/applications/misc/goldendict/default.nix | 2 +- pkgs/applications/misc/goldendict/gcc47.patch | 40 +++++++++++++++++++ 2 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 pkgs/applications/misc/goldendict/gcc47.patch diff --git a/pkgs/applications/misc/goldendict/default.nix b/pkgs/applications/misc/goldendict/default.nix index f7b8a511bc6..717d0a012a2 100644 --- a/pkgs/applications/misc/goldendict/default.nix +++ b/pkgs/applications/misc/goldendict/default.nix @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { cd ${name}-src tar xf ${src} ''; - patches = [ ./goldendict-paths.diff ]; + patches = [ ./goldendict-paths.diff ./gcc47.patch ]; patchFlags = "-p 0"; configurePhase = '' qmake diff --git a/pkgs/applications/misc/goldendict/gcc47.patch b/pkgs/applications/misc/goldendict/gcc47.patch new file mode 100644 index 00000000000..311dad4f648 --- /dev/null +++ b/pkgs/applications/misc/goldendict/gcc47.patch @@ -0,0 +1,40 @@ +From b00d081da20b9a6b257573c6b23a6bc640c4dab1 Mon Sep 17 00:00:00 2001 +From: Michael Palimaka +Date: Fri, 20 Jul 2012 03:27:38 +1000 +Subject: [PATCH] Fix build with GCC 4.7 by adding missing includes. + +--- + processwrapper.cc | 4 ++++ + qtsingleapplication/src/qtlocalpeer.cpp | 1 + + 2 files changed, 5 insertions(+) + +diff --git processwrapper.cc processwrapper.cc +index f7f3f19..86b985d 100644 +--- processwrapper.cc ++++ processwrapper.cc +@@ -2,6 +2,10 @@ + + #include + ++#if defined(Q_OS_UNIX) ++#include ++#endif ++ + #ifdef Q_OS_WIN32 + + #include +diff --git qtsingleapplication/src/qtlocalpeer.cpp qtsingleapplication/src/qtlocalpeer.cpp +index 382d182..506c142 100644 +--- qtsingleapplication/src/qtlocalpeer.cpp ++++ qtsingleapplication/src/qtlocalpeer.cpp +@@ -50,6 +50,7 @@ static PProcessIdToSessionId pProcessIdToSessionId = 0; + #endif + #if defined(Q_OS_UNIX) + #include ++#include + #endif + + namespace QtLP_Private { +-- +1.7.11.1 + From 9c893c793141c773630f825462ef458206d668b0 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 21 Mar 2013 10:13:06 +0100 Subject: [PATCH 052/286] blobby: merge changes from master into stdenv-updates --- pkgs/games/blobby/default.nix | 17 ++++++----------- pkgs/top-level/all-packages.nix | 4 +++- 2 files changed, 9 insertions(+), 12 deletions(-) diff --git a/pkgs/games/blobby/default.nix b/pkgs/games/blobby/default.nix index 93b69cee98e..b9f5f5d7e2a 100644 --- a/pkgs/games/blobby/default.nix +++ b/pkgs/games/blobby/default.nix @@ -1,19 +1,14 @@ -{ stdenv, fetchurl, SDL, SDL_image, mesa, cmake, physfs, boostHeaders -, zip, zlib/*, lua5, tinyxml*/ }: - +{stdenv, fetchurl, SDL, SDL_image, mesa, cmake, physfs, boost, zip, zlib}: stdenv.mkDerivation rec { - version = "1.0rc3"; - name = "blobby-volley-2-${version}"; + version = "2.0-RC1"; + name = "blobby-volley-${version}"; src = fetchurl { - url = "mirror://sourceforge/blobby/blobby2-linux-${version}.tar.gz"; - sha256 = "10f50b2ygw8cb9mp33wpdwv9p6lc10qlwc1xd44bbcby1d9v5ga5"; + url = "mirror://sourceforge/project/blobby/Blobby%20Volley%202%20%28Linux%29/1.0RC1/blobby2-linux-1.0rc1.tar.gz"; + sha256 = "1cb56bd31vqkc12cmzp43q2aai99505isq2mii95jp0rzdqks4fy"; }; - buildInputs = [ - SDL SDL_image mesa cmake physfs boostHeaders - zip zlib # lua5 tinyxml # ToDo: use shared libs? - ]; + buildInputs = [SDL SDL_image mesa cmake physfs boost zip zlib]; preConfigure = '' sed -re '1i#include ' -i src/CrossCorrelation.h diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d2759d0ab88..7cf1ecf198c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8169,7 +8169,9 @@ let blackshadeselite = callPackage ../games/blackshadeselite { }; - blobby = callPackage ../games/blobby { }; + blobby = callPackage ../games/blobby { + boost = boost149; + }; bsdgames = callPackage ../games/bsdgames { }; From fc176178674789f44332c1c5f1b7c043b8dbddfc Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 21 Mar 2013 10:26:02 +0100 Subject: [PATCH 053/286] blobby: update to 2.0rc3 (which is called 1.0rc3 on the server for some reason) --- pkgs/games/blobby/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/games/blobby/default.nix b/pkgs/games/blobby/default.nix index b9f5f5d7e2a..5c10154998d 100644 --- a/pkgs/games/blobby/default.nix +++ b/pkgs/games/blobby/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, SDL, SDL_image, mesa, cmake, physfs, boost, zip, zlib}: stdenv.mkDerivation rec { - version = "2.0-RC1"; + version = "2.0-rc3"; name = "blobby-volley-${version}"; src = fetchurl { - url = "mirror://sourceforge/project/blobby/Blobby%20Volley%202%20%28Linux%29/1.0RC1/blobby2-linux-1.0rc1.tar.gz"; - sha256 = "1cb56bd31vqkc12cmzp43q2aai99505isq2mii95jp0rzdqks4fy"; + url = "mirror://sourceforge/project/blobby/Blobby%20Volley%202%20%28Linux%29/1.0RC3/blobby2-linux-1.0rc3.tar.gz"; + sha256 = "10f50b2ygw8cb9mp33wpdwv9p6lc10qlwc1xd44bbcby1d9v5ga5"; }; buildInputs = [SDL SDL_image mesa cmake physfs boost zip zlib]; From b69a86ed43969e3a9fd0ce09c2507b6c361c7c2d Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 21 Mar 2013 10:34:22 +0100 Subject: [PATCH 054/286] gfortran: update to version 4.7 Removed gfortran 4.2, 4.5, and 4.6 because they don't build anymore anyway. --- pkgs/top-level/all-packages.nix | 20 ++------------------ 1 file changed, 2 insertions(+), 18 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7cf1ecf198c..47afc680c03 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2212,15 +2212,7 @@ let stdenv = allStdenvs.stdenvNative; }); - gfortran = gfortran46; - - gfortran42 = wrapGCC (gcc42.gcc.override { - name = "gfortran"; - langFortran = true; - langCC = false; - langC = false; - inherit gmp mpfr; - }); + gfortran = gfortran47; gfortran43 = wrapGCC (gcc43.gcc.override { name = "gfortran"; @@ -2238,15 +2230,7 @@ let profiledCompiler = false; }); - gfortran45 = wrapGCC (gcc45_real.gcc.override { - name = "gfortran"; - langFortran = true; - langCC = false; - langC = false; - profiledCompiler = false; - }); - - gfortran46 = wrapGCC (gcc46_real.gcc.override { + gfortran47 = wrapGCC (gcc47.gcc.override { name = "gfortran"; langFortran = true; langCC = false; From 459234db2067055801d13ed2ba36879c3de67180 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 21 Mar 2013 16:25:50 +0100 Subject: [PATCH 055/286] ghc-with-packages: include only derivations in the generated environment that have a ghc attribute This predicate filters out packages that weren't created by the Cabal builder. Doing that greatly reduces the likelihood of file collisions in the generated environment, because Haskell packages tend to have a lot of propagated build inputs. For example, both zeromq 2.x and 3.x use the same names for their header files. Users of haskell-zeromq don't need those headers, so we just don't include them in the generated environment to avoid the collision that would otherwise occur when haskell-zeromq 2.x and 3.x are installed into the same environment. --- pkgs/development/compilers/ghc/with-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/compilers/ghc/with-packages.nix b/pkgs/development/compilers/ghc/with-packages.nix index 74a8253b838..afdaea44d5b 100644 --- a/pkgs/development/compilers/ghc/with-packages.nix +++ b/pkgs/development/compilers/ghc/with-packages.nix @@ -10,7 +10,7 @@ let in buildEnv { name = "haskell-env-${ghc.name}"; - paths = stdenv.lib.closePropagation (packages ++ [ghc]); + paths = stdenv.lib.filter (x: x ? ghc) (stdenv.lib.closePropagation (packages ++ [ghc])); postBuild = '' . ${makeWrapper}/nix-support/setup-hook From 264ac17a0f2296b559a6d83b83e7112220c42666 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 21 Mar 2013 16:26:18 +0100 Subject: [PATCH 056/286] ghc-with-packages: set NIX_GHC_XXX variables for runhaskell and runghc, too --- pkgs/development/compilers/ghc/with-packages.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/development/compilers/ghc/with-packages.nix b/pkgs/development/compilers/ghc/with-packages.nix index afdaea44d5b..979b2480586 100644 --- a/pkgs/development/compilers/ghc/with-packages.nix +++ b/pkgs/development/compilers/ghc/with-packages.nix @@ -25,7 +25,11 @@ buildEnv { for prg in runghc runhaskell; do rm -f $out/bin/$prg - makeWrapper ${ghc}/bin/$prg $out/bin/$prg --add-flags "-f $out/bin/ghc" + makeWrapper ${ghc}/bin/$prg $out/bin/$prg \ + --add-flags "-f $out/bin/ghc" \ + --set "NIX_GHC" "$out/bin/ghc" \ + --set "NIX_GHCPKG" "$out/bin/ghc-pkg" \ + --set "NIX_GHC_LIBDIR" "${libDir}" done for prg in ghc-pkg ghc-pkg-${ghc.version}; do From 0e1dfe702d28df2842aef1c9b8e83a36d4fe1b54 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 28 Mar 2013 12:58:10 +0100 Subject: [PATCH 057/286] pkgs/build-support/cabal: strip unnecessary --extra-lib-dir arguments for haskell packages Packages that are registered in the ghc-pkg database don't need any extra flags passed for Cabal to recognize them. --- pkgs/build-support/cabal/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index 765beceb2a4..6d615e1d0c8 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -115,7 +115,9 @@ fi for d in lib{,64}; do if [ -d "$p/$d" ]; then - extraConfigureFlags+=" --extra-lib-dir=$p/$d" + if [ ! -d "$p/$d/ghc-pkgs" ]; then + extraConfigureFlags+=" --extra-lib-dir=$p/$d" + fi fi done done From 270b8589051a7fc96620fdf411df0451ebf159d6 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 28 Mar 2013 14:25:51 +0100 Subject: [PATCH 058/286] pkgs/build-support/cabal: updated recognition of Haskell packages for the directory new layout used in the stdenv-updates branch --- pkgs/build-support/cabal/default.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index 6d615e1d0c8..dd1c2a76d19 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -110,14 +110,16 @@ done for p in $extraBuildInputs $propagatedNativeBuildInputs; do + if [ -d "$p/lib/ghc-${ghc.ghc.version}/package.conf.d" ]; then + # Haskell packages don't need any extra configuration. + continue; + fi if [ -d "$p/include" ]; then extraConfigureFlags+=" --extra-include-dir=$p/include" fi for d in lib{,64}; do if [ -d "$p/$d" ]; then - if [ ! -d "$p/$d/ghc-pkgs" ]; then - extraConfigureFlags+=" --extra-lib-dir=$p/$d" - fi + extraConfigureFlags+=" --extra-lib-dir=$p/$d" fi done done From 73b0fa87201d90275e1d28bd0e8a4a6473b27a28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 29 Mar 2013 01:34:28 +0100 Subject: [PATCH 059/286] perl: modify patch for better purity This probably solves problems on some platforms that expose /usr and /lib during build, see #386. --- .../interpreters/perl/5.16/no-sys-dirs.patch | 113 ++++++++++++++---- 1 file changed, 93 insertions(+), 20 deletions(-) diff --git a/pkgs/development/interpreters/perl/5.16/no-sys-dirs.patch b/pkgs/development/interpreters/perl/5.16/no-sys-dirs.patch index 54ffb28e206..883b24889c3 100644 --- a/pkgs/development/interpreters/perl/5.16/no-sys-dirs.patch +++ b/pkgs/development/interpreters/perl/5.16/no-sys-dirs.patch @@ -1,7 +1,8 @@ -diff -ru -x '*~' 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 2012-01-20 17:05:23.089223129 +0100 -@@ -106,15 +106,7 @@ +diff --git a/Configure b/Configure +index fdbbf20..ba1fd07 100755 +--- a/Configure ++++ b/Configure +@@ -106,15 +106,7 @@ if test -d c:/. || ( uname -a | grep -i 'os\(/\|\)2' ) 2>&1 >/dev/null ; then fi : Proper PATH setting @@ -18,7 +19,7 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure for p in $paths do -@@ -1311,8 +1303,7 @@ +@@ -1323,8 +1315,7 @@ archobjs='' archname='' : Possible local include directories to search. : Set locincpth to "" in a hint file to defeat local include searches. @@ -28,8 +29,8 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure : : no include file wanted by default inclwanted='' -@@ -1328,17 +1319,12 @@ - archobjs='' +@@ -1335,17 +1326,12 @@ DEBUGGING='' + libnames='' : change the next line if compiling for Xenix/286 on Xenix/386 -xlibpth='/usr/lib/386 /lib/386' @@ -49,7 +50,7 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure : Private path used by Configure to find libraries. Its value : is prepended to libpth. This variable takes care of special -@@ -1371,8 +1357,6 @@ +@@ -1380,8 +1366,6 @@ libswanted="sfio socket bind inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun" 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. @@ -58,7 +59,7 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure : Do not use vfork unless overridden by a hint file. usevfork=false -@@ -2380,7 +2364,6 @@ +@@ -2389,7 +2373,6 @@ uname zip " pth=`echo $PATH | sed -e "s/$p_/ /g"` @@ -66,7 +67,7 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure for file in $loclist; do eval xxx=\$$file case "$xxx" in -@@ -4785,7 +4768,7 @@ +@@ -4708,7 +4691,7 @@ $rm -f testcpp.c testcpp.out : Set private lib path case "$plibpth" in '') if ./mips; then @@ -75,7 +76,7 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure fi;; esac case "$libpth" in -@@ -8390,13 +8373,8 @@ +@@ -8354,13 +8337,8 @@ esac echo " " case "$sysman" in '') @@ -91,7 +92,7 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure ;; esac if $test -d "$sysman"; then -@@ -19721,9 +19699,10 @@ +@@ -19742,9 +19720,10 @@ $rm_try tryp case "$full_ar" in '') full_ar=$ar ;; esac @@ -103,10 +104,11 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure : see what type gids are declared as in the kernel echo " " -diff -ru -x '*~' 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 2012-01-20 17:02:07.938138311 +0100 -@@ -137,11 +137,7 @@ +diff --git a/ext/Errno/Errno_pm.PL b/ext/Errno/Errno_pm.PL +index 439f254..2cdfdb0 100644 +--- a/ext/Errno/Errno_pm.PL ++++ b/ext/Errno/Errno_pm.PL +@@ -137,11 +137,7 @@ sub get_files { if ($dep =~ /(\S+errno\.h)/) { $file{$1} = 1; } @@ -119,10 +121,11 @@ diff -ru -x '*~' perl-5.14.2-orig/ext/Errno/Errno_pm.PL perl-5.14.2/ext/Errno/Er # Some Linuxes have weird errno.hs which generate # no #file or #line directives my $linux_errno_h = -e '/usr/include/errno.h' ? -diff -ru -x '*~' 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 2012-01-20 17:10:37.267924044 +0100 -@@ -118,21 +118,21 @@ +diff --git a/hints/freebsd.sh b/hints/freebsd.sh +index a67c0bb..0f07ca5 100644 +--- a/hints/freebsd.sh ++++ b/hints/freebsd.sh +@@ -119,21 +119,21 @@ case "$osvers" in objformat=`/usr/bin/objformat` if [ x$objformat = xaout ]; then if [ -e /usr/lib/aout ]; then @@ -150,3 +153,73 @@ diff -ru -x '*~' perl-5.14.2-orig/hints/freebsd.sh perl-5.14.2/hints/freebsd.sh ldflags="-Wl,-E " lddlflags="-shared " cccdlflags='-DPIC -fPIC' +diff --git a/hints/linux.sh b/hints/linux.sh +index 688c68d..c12f5f5 100644 +--- a/hints/linux.sh ++++ b/hints/linux.sh +@@ -60,17 +60,6 @@ libswanted="$*" + # Debian 4.0 puts ndbm in the -lgdbm_compat library. + libswanted="$libswanted gdbm_compat" + +-# If you have glibc, then report the version for ./myconfig bug reporting. +-# (Configure doesn't need to know the specific version since it just uses +-# gcc to load the library for all tests.) +-# We don't use __GLIBC__ and __GLIBC_MINOR__ because they +-# are insufficiently precise to distinguish things like +-# libc-2.0.6 and libc-2.0.7. +-if test -L /lib/libc.so.6; then +- libc=`ls -l /lib/libc.so.6 | awk '{print $NF}'` +- libc=/lib/$libc +-fi +- + # Configure may fail to find lstat() since it's a static/inline + # function in . + d_lstat=define +@@ -154,24 +143,6 @@ case "$optimize" in + ;; + esac + +-# Ubuntu 11.04 (and later, presumably) doesn't keep most libraries +-# (such as -lm) in /lib or /usr/lib. So we have to ask gcc to tell us +-# where to look. We don't want gcc's own libraries, however, so we +-# filter those out. +-# This could be conditional on Unbuntu, but other distributions may +-# follow suit, and this scheme seems to work even on rather old gcc's. +-# This unconditionally uses gcc because even if the user is using another +-# compiler, we still need to find the math library and friends, and I don't +-# know how other compilers will cope with that situation. +-# Morever, if the user has their own gcc earlier in $PATH than the system gcc, +-# we don't want its libraries. So we try to prefer the system gcc +-# Still, as an escape hatch, allow Configure command line overrides to +-# plibpth to bypass this check. +-if [ -x /usr/bin/gcc ] ; then +- gcc=/usr/bin/gcc +-else +- gcc=gcc +-fi + + case "$plibpth" in + '') plibpth=`LANG=C LC_ALL=C $gcc -print-search-dirs | grep libraries | +@@ -345,22 +316,6 @@ sparc*) + ;; + esac + +-# SuSE8.2 has /usr/lib/libndbm* which are ld scripts rather than +-# true libraries. The scripts cause binding against static +-# version of -lgdbm which is a bad idea. So if we have 'nm' +-# make sure it can read the file +-# NI-S 2003/08/07 +-if [ -r /usr/lib/libndbm.so -a -x /usr/bin/nm ] ; then +- if /usr/bin/nm /usr/lib/libndbm.so >/dev/null 2>&1 ; then +- echo 'Your shared -lndbm seems to be a real library.' +- else +- echo 'Your shared -lndbm is not a real library.' +- set `echo X "$libswanted "| sed -e 's/ ndbm / /'` +- shift +- libswanted="$*" +- fi +-fi +- + + # This script UU/usethreads.cbu will get 'called-back' by Configure + # after it has prompted the user for whether to use threads. From ff92538aec929d4fcc41b5172d034d6696c5db73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 29 Mar 2013 01:36:00 +0100 Subject: [PATCH 060/286] perl: enable doCheck, almost all tests work for me --- pkgs/development/interpreters/perl/5.16/default.nix | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index 153da2c9d05..c18dbc2b1f1 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -60,5 +60,17 @@ stdenv.mkDerivation rec { setupHook = ./setup-hook.sh; + # some network-related tests don't work, mostly probably due to our sandboxing + postPatch = '' + for test in lib/Net/hostent.t dist/IO/t/{io_multihomed.t,io_sock.t} \ + t/porting/{maintainers.t,regen.t} + do + rm "$test" + pat=`echo "$test" | sed 's,/,\\\\/,g'` # just escape slashes + sed "/^$pat/d" -i MANIFEST + done + ''; + doCheck = true; + passthru.libPrefix = "lib/perl5/site_perl"; } From 84df617be3a7ec578957b4d06ac9446c657c2182 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Apr 2013 13:37:15 +0200 Subject: [PATCH 061/286] icu: update to version 51.1 --- pkgs/development/libraries/icu/default.nix | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/development/libraries/icu/default.nix b/pkgs/development/libraries/icu/default.nix index 0474b79a847..335730e8e0d 100644 --- a/pkgs/development/libraries/icu/default.nix +++ b/pkgs/development/libraries/icu/default.nix @@ -2,23 +2,22 @@ let pname = "icu4c"; - version = "4.8.1"; + version = "51.1"; in - stdenv.mkDerivation { name = pname + "-" + version; - + src = fetchurl { url = "http://download.icu-project.org/files/${pname}/${version}/${pname}-" + (stdenv.lib.replaceChars ["."] ["_"] version) + "-src.tgz"; - sha256 = "13zq190gl54zr84f0k48w9knarjsb966jkailyy06yhqjipcv90r"; + sha256 = "0sv6hgkm92pm27zgjxgk284lcxxbsl0syi40ckw2b7yj7d8sxrc7"; }; postUnpack = " sourceRoot=\${sourceRoot}/source echo Source root reset to \${sourceRoot} "; - + configureFlags = "--disable-debug"; meta = { From e5c3614d52b882d348526722edf3770a8a709864 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 1 Apr 2013 14:06:56 +0200 Subject: [PATCH 062/286] pkgs/build-support/cabal: fix spelling of the --extra-{include,lib}-dirs options to Cabal It's quite amazing that we've managed to pass incorrectly spelled command line flags to Cabal for ages without ever noticing. :-) The search path options --extra-{include,lib}-dirs are usually unnecessary, because the build environment is set up such that gcc and ld find those headers and libraries automatically, i.e. without needing extra flags. The bubble burst on MacOS X, though, where the build of haskell-text-icu couldn't find the icu library without manually setting DYLD_LIBRARY_PATH in that build. Fortunately, cabal takes care of that issue if a correctly spelled --extra-lib-dirs flag is passed. --- pkgs/build-support/cabal/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index dd1c2a76d19..4466b7b19b8 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -115,11 +115,11 @@ continue; fi if [ -d "$p/include" ]; then - extraConfigureFlags+=" --extra-include-dir=$p/include" + extraConfigureFlags+=" --extra-include-dirs=$p/include" fi for d in lib{,64}; do if [ -d "$p/$d" ]; then - extraConfigureFlags+=" --extra-lib-dir=$p/$d" + extraConfigureFlags+=" --extra-lib-dirs=$p/$d" fi done done From 21cd5376b4a351079c094cd5409bf981066801b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 1 Apr 2013 23:31:00 +0200 Subject: [PATCH 063/286] perl: disable one more test It worked for me, but fails on hydra (probably not very pure). --- pkgs/development/interpreters/perl/5.16/default.nix | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index c18dbc2b1f1..8047413de3a 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -60,17 +60,21 @@ stdenv.mkDerivation rec { setupHook = ./setup-hook.sh; + doCheck = true; # some network-related tests don't work, mostly probably due to our sandboxing + testsToSkip = '' + lib/Net/hostent.t \ + dist/IO/t/{io_multihomed.t,io_sock.t} \ + t/porting/{maintainers.t,regen.t} \ + cpan/Socket/t/getnameinfo.t + ''; postPatch = '' - for test in lib/Net/hostent.t dist/IO/t/{io_multihomed.t,io_sock.t} \ - t/porting/{maintainers.t,regen.t} - do + for test in ${testsToSkip}; do rm "$test" pat=`echo "$test" | sed 's,/,\\\\/,g'` # just escape slashes sed "/^$pat/d" -i MANIFEST done ''; - doCheck = true; passthru.libPrefix = "lib/perl5/site_perl"; } From 5e202a2221a8bcb34eeaee1966e9ad2f66dda163 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 2 Apr 2013 09:20:58 +0200 Subject: [PATCH 064/286] perl: fix bash syntax I thought I could make a small syntax change without trying, I was being foolish. --- pkgs/development/interpreters/perl/5.16/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index 8047413de3a..fa9b9f0fbef 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -66,10 +66,11 @@ stdenv.mkDerivation rec { lib/Net/hostent.t \ dist/IO/t/{io_multihomed.t,io_sock.t} \ t/porting/{maintainers.t,regen.t} \ - cpan/Socket/t/getnameinfo.t - ''; + cpan/Socket/t/getnameinfo.t \ + '' + " "; postPatch = '' for test in ${testsToSkip}; do + echo "Removing test" $test rm "$test" pat=`echo "$test" | sed 's,/,\\\\/,g'` # just escape slashes sed "/^$pat/d" -i MANIFEST From 322c2f36a3b1e4909ee81921b9f361a080fc85fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 2 Apr 2013 10:39:20 +0200 Subject: [PATCH 065/286] perl: attempt to fix on FreeBSD by disabling two tests --- pkgs/development/interpreters/perl/5.16/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index fa9b9f0fbef..62873f7b57a 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -67,6 +67,9 @@ stdenv.mkDerivation rec { dist/IO/t/{io_multihomed.t,io_sock.t} \ t/porting/{maintainers.t,regen.t} \ cpan/Socket/t/getnameinfo.t \ + '' + stdenv.lib.optionalString (stdenv.isFreeBSD) '' + cpan/CPANPLUS/t/04_CPANPLUS-Module.t + cpan/CPANPLUS/t/20_CPANPLUS-Dist-MM.t '' + " "; postPatch = '' for test in ${testsToSkip}; do From d021eb6e12d31fb4da0fe44534442269124ae094 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 2 Apr 2013 11:33:59 +0200 Subject: [PATCH 066/286] Fix release-small.nix --- pkgs/top-level/release-small.nix | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix index faefdc5a0c3..0fa311746b1 100644 --- a/pkgs/top-level/release-small.nix +++ b/pkgs/top-level/release-small.nix @@ -1,19 +1,19 @@ /* 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. + the load on Hydra when testing the `stdenv-updates' branch. */ +{ nixpkgs ? { outPath = (import ./all-packages.nix {}).lib.cleanSource ../..; revCount = 1234; shortRev = "abcdef"; } +}: - 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); +with import ./release-lib.nix { + supportedSystems = [ "x86_64-linux" "i686-linux" "x86_64-darwin" "x86_64-freebsd" "i686-freebsd" ]; +}; { - tarball = import ./make-tarball.nix; + tarball = import ./make-tarball.nix { + inherit nixpkgs; + officialRelease = false; + }; } // (mapTestOn (rec { From 2660b9115fc254b32a8eaa927f87ff8195d1dec7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 2 Apr 2013 21:18:14 +0200 Subject: [PATCH 067/286] perl: fix bad syntax in FreeBSD commit --- pkgs/development/interpreters/perl/5.16/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index 62873f7b57a..de2839e82ed 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -68,8 +68,8 @@ stdenv.mkDerivation rec { t/porting/{maintainers.t,regen.t} \ cpan/Socket/t/getnameinfo.t \ '' + stdenv.lib.optionalString (stdenv.isFreeBSD) '' - cpan/CPANPLUS/t/04_CPANPLUS-Module.t - cpan/CPANPLUS/t/20_CPANPLUS-Dist-MM.t + cpan/CPANPLUS/t/04_CPANPLUS-Module.t \ + cpan/CPANPLUS/t/20_CPANPLUS-Dist-MM.t \ '' + " "; postPatch = '' for test in ${testsToSkip}; do From 4cdcd4e74fd61fad30e7e32cef2df00309e82f1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 3 Apr 2013 15:13:11 +0200 Subject: [PATCH 068/286] libproxy: update to build with gcc47, add glib --- pkgs/development/libraries/libproxy/default.nix | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/libproxy/default.nix b/pkgs/development/libraries/libproxy/default.nix index 8461bfef439..7085236feb5 100644 --- a/pkgs/development/libraries/libproxy/default.nix +++ b/pkgs/development/libraries/libproxy/default.nix @@ -1,10 +1,14 @@ -{stdenv, fetchurl, cmake, zlib}: +{ stdenv, fetchurl, pkgconfig, cmake, zlib, glib }: stdenv.mkDerivation rec { - name = "libproxy-0.4.7"; + name = "libproxy-0.4.11"; src = fetchurl { url = "http://libproxy.googlecode.com/files/${name}.tar.gz"; - sha256 = "15rp97g3s2xkc842p5qfm8kx3p4awvrwrpl6w71a76qk224abq4g"; + sha256 = "0jw6454gxjykmbnbh544axi8hzz9gmm4jz1y5gw1hdqnakg36gyw"; }; - buildInputs = [cmake zlib]; + + nativeBuildInputs = [ pkgconfig cmake ]; + propagatedBuildInputs = [ zlib ] + # now some optional deps, but many more are possible + ++ [ glib ]; } From 642b07f9887482c973609d7421b7965ec37a5873 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 4 Apr 2013 13:55:20 +0200 Subject: [PATCH 069/286] gcc: add version 4.8.0 --- .../compilers/gcc/4.8/arm-eabi.patch | 230 ++++++++ pkgs/development/compilers/gcc/4.8/builder.sh | 245 ++++++++ .../development/compilers/gcc/4.8/default.nix | 525 ++++++++++++++++++ .../compilers/gcc/4.8/gfortran-driving.patch | 20 + .../compilers/gcc/4.8/gnat-cflags.patch | 33 ++ .../gcc/4.8/java-jvgenmain-link.patch | 17 + .../compilers/gcc/4.8/libstdc++-target.patch | 32 ++ .../compilers/gcc/4.8/no-sys-dirs.patch | 41 ++ pkgs/top-level/all-packages.nix | 26 + 9 files changed, 1169 insertions(+) create mode 100644 pkgs/development/compilers/gcc/4.8/arm-eabi.patch create mode 100644 pkgs/development/compilers/gcc/4.8/builder.sh create mode 100644 pkgs/development/compilers/gcc/4.8/default.nix create mode 100644 pkgs/development/compilers/gcc/4.8/gfortran-driving.patch create mode 100644 pkgs/development/compilers/gcc/4.8/gnat-cflags.patch create mode 100644 pkgs/development/compilers/gcc/4.8/java-jvgenmain-link.patch create mode 100644 pkgs/development/compilers/gcc/4.8/libstdc++-target.patch create mode 100644 pkgs/development/compilers/gcc/4.8/no-sys-dirs.patch diff --git a/pkgs/development/compilers/gcc/4.8/arm-eabi.patch b/pkgs/development/compilers/gcc/4.8/arm-eabi.patch new file mode 100644 index 00000000000..63b017062b5 --- /dev/null +++ b/pkgs/development/compilers/gcc/4.8/arm-eabi.patch @@ -0,0 +1,230 @@ +Index: gcc-4_7-branch/libstdc++-v3/configure.host +=================================================================== +--- gcc-4_7-branch/libstdc++-v3/configure.host (revision 194579) ++++ gcc-4_7-branch/libstdc++-v3/configure.host (revision 194580) +@@ -340,7 +340,7 @@ + fi + esac + case "${host}" in +- arm*-*-linux-*eabi) ++ arm*-*-linux-*eabi*) + port_specific_symbol_files="\$(srcdir)/../config/os/gnu-linux/arm-eabi-extra.ver" + ;; + esac +Index: gcc-4_7-branch/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc +=================================================================== +--- gcc-4_7-branch/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc (revision 194579) ++++ gcc-4_7-branch/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc (revision 194580) +@@ -1,5 +1,5 @@ + // { dg-options "-std=gnu++0x -funsigned-char -fshort-enums" } +-// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } ++// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi* } } + + // 2007-05-03 Benjamin Kosnik + // +Index: gcc-4_7-branch/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc +=================================================================== +--- gcc-4_7-branch/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc (revision 194579) ++++ gcc-4_7-branch/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc (revision 194580) +@@ -1,5 +1,5 @@ + // { dg-options "-std=gnu++0x -funsigned-char -fshort-enums" } +-// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } ++// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi* } } + + // 2007-05-03 Benjamin Kosnik + // +Index: gcc-4_7-branch/libjava/configure.ac +=================================================================== +--- gcc-4_7-branch/libjava/configure.ac (revision 194579) ++++ gcc-4_7-branch/libjava/configure.ac (revision 194580) +@@ -931,7 +931,7 @@ + # on Darwin -single_module speeds up loading of the dynamic libraries. + extra_ldflags_libjava=-Wl,-single_module + ;; +-arm*linux*eabi) ++arm*-*-linux*eabi*) + # Some of the ARM unwinder code is actually in libstdc++. We + # could in principle replicate it in libgcj, but it's better to + # have a dependency on libstdc++. +Index: gcc-4_7-branch/libjava/configure +=================================================================== +--- gcc-4_7-branch/libjava/configure (revision 194579) ++++ gcc-4_7-branch/libjava/configure (revision 194580) +@@ -20542,7 +20542,7 @@ + # on Darwin -single_module speeds up loading of the dynamic libraries. + extra_ldflags_libjava=-Wl,-single_module + ;; +-arm*linux*eabi) ++arm*-*-linux*eabi*) + # Some of the ARM unwinder code is actually in libstdc++. We + # could in principle replicate it in libgcj, but it's better to + # have a dependency on libstdc++. +Index: gcc-4_7-branch/libgcc/config.host +=================================================================== +--- gcc-4_7-branch/libgcc/config.host (revision 194579) ++++ gcc-4_7-branch/libgcc/config.host (revision 194580) +@@ -327,7 +327,7 @@ + arm*-*-linux*) # ARM GNU/Linux with ELF + tmake_file="${tmake_file} arm/t-arm t-fixedpoint-gnu-prefix" + case ${host} in +- arm*-*-linux-*eabi) ++ arm*-*-linux-*eabi*) + tmake_file="${tmake_file} arm/t-elf arm/t-bpabi arm/t-linux-eabi t-slibgcc-libgcc" + tm_file="$tm_file arm/bpabi-lib.h" + unwind_header=config/arm/unwind-arm.h +Index: gcc-4_7-branch/gcc/doc/install.texi +=================================================================== +--- gcc-4_7-branch/gcc/doc/install.texi (revision 194579) ++++ gcc-4_7-branch/gcc/doc/install.texi (revision 194580) +@@ -3222,7 +3222,7 @@ + @heading @anchor{arm-x-eabi}arm-*-eabi + ARM-family processors. Subtargets that use the ELF object format + require GNU binutils 2.13 or newer. Such subtargets include: +-@code{arm-*-netbsdelf}, @code{arm-*-*linux-gnueabi} ++@code{arm-*-netbsdelf}, @code{arm-*-*linux-gnueabi*} + and @code{arm-*-rtemseabi}. + + @html +Index: gcc-4_7-branch/gcc/testsuite/gcc.target/arm/synchronize.c +=================================================================== +--- gcc-4_7-branch/gcc/testsuite/gcc.target/arm/synchronize.c (revision 194579) ++++ gcc-4_7-branch/gcc/testsuite/gcc.target/arm/synchronize.c (revision 194580) +@@ -1,4 +1,4 @@ +-/* { dg-final { scan-assembler "__sync_synchronize|dmb|mcr" { target arm*-*-linux-*eabi } } } */ ++/* { dg-final { scan-assembler "__sync_synchronize|dmb|mcr" { target arm*-*-linux-*eabi* } } } */ + + void *foo (void) + { +Index: gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.jason/enum6.C +=================================================================== +--- gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.jason/enum6.C (revision 194579) ++++ gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.jason/enum6.C (revision 194580) +@@ -7,10 +7,10 @@ + // enum-size attributes should only be emitted if there are values of + // enum type that can escape the compilation unit, gcc cannot currently + // detect this; if this facility is added then this linker option should +-// not be needed. arm-*-linux*eabi should be a good approximation to ++// not be needed. arm-*-linux*eabi* should be a good approximation to + // those platforms where the EABI supplement defines enum values to be + // 32 bits wide. +-// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } ++// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi* } } + + #include + +Index: gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.other/enum4.C +=================================================================== +--- gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.other/enum4.C (revision 194579) ++++ gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.other/enum4.C (revision 194580) +@@ -9,10 +9,10 @@ + // enum-size attributes should only be emitted if there are values of + // enum type that can escape the compilation unit, gcc cannot currently + // detect this; if this facility is added then this linker option should +-// not be needed. arm-*-linux*eabi should be a good approximation to ++// not be needed. arm-*-linux*eabi* should be a good approximation to + // those platforms where the EABI supplement defines enum values to be + // 32 bits wide. +-// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } ++// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi* } } + + enum E { + a = -312 +Index: gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.law/enum9.C +=================================================================== +--- gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.law/enum9.C (revision 194579) ++++ gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.law/enum9.C (revision 194580) +@@ -7,10 +7,10 @@ + // enum-size attributes should only be emitted if there are values of + // enum type that can escape the compilation unit, gcc cannot currently + // detect this; if this facility is added then this linker option should +-// not be needed. arm-*-linux*eabi should be a good approximation to ++// not be needed. arm-*-linux*eabi* should be a good approximation to + // those platforms where the EABI supplement defines enum values to be + // 32 bits wide. +-// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } ++// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi* } } + + // GROUPS passed enums + extern "C" int printf (const char *, ...); +Index: gcc-4_7-branch/gcc/testsuite/lib/target-supports.exp +=================================================================== +--- gcc-4_7-branch/gcc/testsuite/lib/target-supports.exp (revision 194579) ++++ gcc-4_7-branch/gcc/testsuite/lib/target-supports.exp (revision 194580) +@@ -3818,7 +3818,7 @@ + } + } "" + }] +- } elseif { [istarget arm*-*-linux-gnueabi] } { ++ } elseif { [istarget arm*-*-linux-gnueabi*] } { + return [check_runtime sync_longlong_runtime { + #include + int main () +@@ -3860,7 +3860,7 @@ + || [istarget i?86-*-*] + || [istarget x86_64-*-*] + || [istarget alpha*-*-*] +- || [istarget arm*-*-linux-gnueabi] ++ || [istarget arm*-*-linux-gnueabi*] + || [istarget bfin*-*linux*] + || [istarget hppa*-*linux*] + || [istarget s390*-*-*] +@@ -3890,7 +3890,7 @@ + || [istarget i?86-*-*] + || [istarget x86_64-*-*] + || [istarget alpha*-*-*] +- || [istarget arm*-*-linux-gnueabi] ++ || [istarget arm*-*-linux-gnueabi*] + || [istarget hppa*-*linux*] + || [istarget s390*-*-*] + || [istarget powerpc*-*-*] +Index: gcc-4_7-branch/gcc/testsuite/gfortran.dg/enum_9.f90 +=================================================================== +--- gcc-4_7-branch/gcc/testsuite/gfortran.dg/enum_9.f90 (revision 194579) ++++ gcc-4_7-branch/gcc/testsuite/gfortran.dg/enum_9.f90 (revision 194580) +@@ -1,6 +1,6 @@ + ! { dg-do run } + ! { dg-options "-fshort-enums" } +-! { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } ++! { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi* } } + ! Program to test enumerations when option -fshort-enums is given + + program main +Index: gcc-4_7-branch/gcc/testsuite/gfortran.dg/enum_10.f90 +=================================================================== +--- gcc-4_7-branch/gcc/testsuite/gfortran.dg/enum_10.f90 (revision 194579) ++++ gcc-4_7-branch/gcc/testsuite/gfortran.dg/enum_10.f90 (revision 194580) +@@ -1,7 +1,7 @@ + ! { dg-do run } + ! { dg-additional-sources enum_10.c } + ! { dg-options "-fshort-enums -w" } +-! { dg-options "-fshort-enums -w -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } ++! { dg-options "-fshort-enums -w -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi* } } + ! Make sure short enums are indeed interoperable with the + ! corresponding C type. + +Index: gcc-4_7-branch/gcc/ada/gcc-interface/Makefile.in +=================================================================== +--- gcc-4_7-branch/gcc/ada/gcc-interface/Makefile.in (revision 194579) ++++ gcc-4_7-branch/gcc/ada/gcc-interface/Makefile.in (revision 194580) +@@ -1866,7 +1866,7 @@ + LIBRARY_VERSION := $(LIB_VERSION) + endif + +-ifeq ($(strip $(filter-out arm% linux-gnueabi,$(arch) $(osys)-$(word 4,$(targ)))),) ++ifeq ($(strip $(filter-out arm%-linux,$(arch)-$(osys)) $(if $(findstring eabi,$(word 4,$(targ))),,$(word 4,$(targ)))),) + LIBGNAT_TARGET_PAIRS = \ + a-intnam.ads zip != null && unzip != null + && zlib != null && boehmgc != null + && perl != null; # for `--enable-java-home' +assert langAda -> gnatboot != null; +assert langVhdl -> gnat != null; + +# We enable the isl cloog backend. +assert cloog != null -> isl != null; + +# LTO needs libelf and zlib. +assert libelf != null -> zlib != null; + +# Make sure we get GNU sed. +assert stdenv.isDarwin -> gnused != null; + +# The go frontend is written in c++ +assert langGo -> langCC; + +with stdenv.lib; +with builtins; + +let version = "4.8.0"; + + # Whether building a cross-compiler for GNU/Hurd. + crossGNU = cross != null && cross.config == "i586-pc-gnu"; + + patches = [] + ++ optional stdenv.isArm [ ./arm-eabi.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 + # target libraries and tools. + ++ optional langAda ./gnat-cflags.patch + ++ optional langFortran ./gfortran-driving.patch; + + javaEcj = fetchurl { + # The `$(top_srcdir)/ecj.jar' file is automatically picked up at + # `configure' time. + + # XXX: Eventually we might want to take it from upstream. + url = "ftp://sourceware.org/pub/java/ecj-4.3.jar"; + sha256 = "0jz7hvc0s6iydmhgh5h2m15yza7p2rlss2vkif30vm9y77m97qcx"; + }; + + # Antlr (optional) allows the Java `gjdoc' tool to be built. We want a + # binary distribution here to allow the whole chain to be bootstrapped. + javaAntlr = fetchurl { + url = http://www.antlr.org/download/antlr-3.1.3.jar; + sha256 = "1f41j0y4kjydl71lqlvr73yagrs2jsg1fjymzjz66mjy7al5lh09"; + }; + + xlibs = [ + libX11 libXt libSM libICE libXtst libXrender libXrandr libXi + xproto renderproto xextproto inputproto randrproto + ]; + + javaAwtGtk = langJava && gtk != null; + + /* Platform flags */ + platformFlags = let + gccArch = stdenv.lib.attrByPath [ "platform" "gcc" "arch" ] null stdenv; + gccCpu = stdenv.lib.attrByPath [ "platform" "gcc" "cpu" ] null stdenv; + gccAbi = stdenv.lib.attrByPath [ "platform" "gcc" "abi" ] null stdenv; + gccFpu = stdenv.lib.attrByPath [ "platform" "gcc" "fpu" ] null stdenv; + gccFloat = stdenv.lib.attrByPath [ "platform" "gcc" "float" ] null stdenv; + gccMode = stdenv.lib.attrByPath [ "platform" "gcc" "mode" ] null stdenv; + withArch = if gccArch != null then " --with-arch=${gccArch}" else ""; + withCpu = if gccCpu != null then " --with-cpu=${gccCpu}" else ""; + withAbi = if gccAbi != null then " --with-abi=${gccAbi}" else ""; + withFpu = if gccFpu != null then " --with-fpu=${gccFpu}" else ""; + withFloat = if gccFloat != null then " --with-float=${gccFloat}" else ""; + withMode = if gccMode != null then " --with-mode=${gccMode}" else ""; + in + (withArch + + withCpu + + withAbi + + withFpu + + withFloat + + withMode); + + /* Cross-gcc settings */ + crossMingw = (cross != null && cross.libc == "msvcrt"); + crossConfigureFlags = let + gccArch = stdenv.lib.attrByPath [ "gcc" "arch" ] null cross; + gccCpu = stdenv.lib.attrByPath [ "gcc" "cpu" ] null cross; + gccAbi = stdenv.lib.attrByPath [ "gcc" "abi" ] null cross; + gccFpu = stdenv.lib.attrByPath [ "gcc" "fpu" ] null cross; + gccFloat = stdenv.lib.attrByPath [ "gcc" "float" ] null cross; + gccMode = stdenv.lib.attrByPath [ "gcc" "mode" ] null cross; + withArch = if gccArch != null then " --with-arch=${gccArch}" else ""; + withCpu = if gccCpu != null then " --with-cpu=${gccCpu}" else ""; + withAbi = if gccAbi != null then " --with-abi=${gccAbi}" else ""; + withFpu = if gccFpu != null then " --with-fpu=${gccFpu}" else ""; + withFloat = if gccFloat != null then " --with-float=${gccFloat}" else ""; + withMode = if gccMode != null then " --with-mode=${gccMode}" else ""; + in + "--target=${cross.config}" + + withArch + + withCpu + + withAbi + + withFpu + + withFloat + + withMode + + (if crossMingw && crossStageStatic then + " --with-headers=${libcCross}/include" + + " --with-gcc" + + " --with-gnu-as" + + " --with-gnu-ld" + + " --with-gnu-ld" + + " --disable-shared" + + " --disable-nls" + + " --disable-debug" + + " --enable-sjlj-exceptions" + + " --enable-threads=win32" + + " --disable-win32-registry" + else if crossStageStatic then + " --disable-libssp --disable-nls" + + " --without-headers" + + " --disable-threads " + + " --disable-libmudflap " + + " --disable-libgomp " + + " --disable-libquadmath" + + " --disable-shared" + + " --disable-decimal-float" # libdecnumber requires libc + else + " --with-headers=${libcCross}/include" + + " --enable-__cxa_atexit" + + " --enable-long-long" + + (if crossMingw then + " --enable-threads=win32" + + " --enable-sjlj-exceptions" + + " --enable-hash-synchronization" + + " --disable-libssp" + + " --disable-nls" + + " --with-dwarf2" + + # I think noone uses shared gcc libs in mingw, so we better do the same. + # In any case, mingw32 g++ linking is broken by default with shared libs, + # unless adding "-lsupc++" to any linking command. I don't know why. + " --disable-shared" + + (if cross.config == "x86_64-w64-mingw32" then + # To keep ABI compatibility with upstream mingw-w64 + " --enable-fully-dynamic-string" + else "") + else (if cross.libc == "uclibc" then + # In uclibc cases, libgomp needs an additional '-ldl' + # and as I don't know how to pass it, I disable libgomp. + " --disable-libgomp" else "") + + " --enable-threads=posix" + + " --enable-nls" + + " --disable-decimal-float") # No final libdecnumber (it may work only in 386) + ); + stageNameAddon = if crossStageStatic then "-stage-static" else + "-stage-final"; + crossNameAddon = if cross != null then "-${cross.config}" + stageNameAddon else ""; + + bootstrap = cross == null && !stdenv.isArm && !stdenv.isMips; + +in + +# We need all these X libraries when building AWT with GTK+. +assert gtk != null -> (filter (x: x == null) xlibs) == []; + +stdenv.mkDerivation ({ + name = "${name}${if stripped then "" else "-debug"}-${version}" + crossNameAddon; + + builder = ./builder.sh; + + src = fetchurl { + url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2"; + sha256 = "0b6cp9d1sas3vq6dj3zrgd134p9b569fqhbixb9cl7mp698zwdxh"; + }; + + inherit patches; + + postPatch = + if (stdenv.isGNU + || (libcCross != null # e.g., building `gcc.crossDrv' + && libcCross ? crossConfig + && libcCross.crossConfig == "i586-pc-gnu") + || (crossGNU && libcCross != null)) + then + # On GNU/Hurd glibc refers to Hurd & Mach headers and libpthread is not + # in glibc, so add the right `-I' flags to the default spec string. + assert libcCross != null -> libpthreadCross != null; + let + libc = if libcCross != null then libcCross else stdenv.glibc; + gnu_h = "gcc/config/gnu.h"; + extraCPPDeps = + libc.propagatedBuildInputs + ++ stdenv.lib.optional (libpthreadCross != null) libpthreadCross + ++ stdenv.lib.optional (libpthread != null) libpthread; + extraCPPSpec = + concatStrings (intersperse " " + (map (x: "-I${x}/include") extraCPPDeps)); + extraLibSpec = + if libpthreadCross != null + then "-L${libpthreadCross}/lib ${libpthreadCross.TARGET_LDFLAGS}" + else "-L${libpthread}/lib"; + in + '' echo "augmenting \`CPP_SPEC' in \`${gnu_h}' with \`${extraCPPSpec}'..." + sed -i "${gnu_h}" \ + -es'|CPP_SPEC *"\(.*\)$|CPP_SPEC "${extraCPPSpec} \1|g' + + echo "augmenting \`LIB_SPEC' in \`${gnu_h}' with \`${extraLibSpec}'..." + sed -i "${gnu_h}" \ + -es'|LIB_SPEC *"\(.*\)$|LIB_SPEC "${extraLibSpec} \1|g' + + echo "setting \`NATIVE_SYSTEM_HEADER_DIR' and \`STANDARD_INCLUDE_DIR' to \`${libc}/include'..." + sed -i "${gnu_h}" \ + -es'|#define STANDARD_INCLUDE_DIR.*$|#define STANDARD_INCLUDE_DIR "${libc}/include"|g' + '' + else if cross != null || stdenv.gcc.libc != null then + # On NixOS, use the right path to the dynamic linker instead of + # `/lib/ld*.so'. + let + libc = if libcCross != null then libcCross else stdenv.gcc.libc; + in + '' echo "fixing the \`GLIBC_DYNAMIC_LINKER' and \`UCLIBC_DYNAMIC_LINKER' macros..." + for header in "gcc/config/"*-gnu.h "gcc/config/"*"/"*.h + do + grep -q LIBC_DYNAMIC_LINKER "$header" || continue + echo " fixing \`$header'..." + sed -i "$header" \ + -e 's|define[[:blank:]]*\([UCG]\+\)LIBC_DYNAMIC_LINKER\([0-9]*\)[[:blank:]]"\([^\"]\+\)"$|define \1LIBC_DYNAMIC_LINKER\2 "${libc}\3"|g' + done + '' + else null; + + inherit noSysDirs staticCompiler langJava crossStageStatic + libcCross crossMingw; + + nativeBuildInputs = [ texinfo which gettext ] + ++ (optional (perl != null) perl) + ++ (optional javaAwtGtk pkgconfig); + + buildInputs = [ gmp mpfr mpc libelf ] + ++ (optional (ppl != null) ppl) + ++ (optional (cloog != null) cloog) + ++ (optional (isl != null) isl) + ++ (optional (zlib != null) zlib) + ++ (optionals langJava [ boehmgc zip unzip ]) + ++ (optionals javaAwtGtk ([ gtk libart_lgpl ] ++ xlibs)) + ++ (optionals (cross != null) [binutilsCross]) + ++ (optionals langAda [gnatboot]) + ++ (optionals langVhdl [gnat]) + + # The builder relies on GNU sed (for instance, Darwin's `sed' fails with + # "-i may not be used with stdin"), and `stdenvNative' doesn't provide it. + ++ (optional stdenv.isDarwin gnused) + ; + + NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isSunOS "-lm -ldl"; + + preConfigure = '' + configureFlagsArray=( + ${stdenv.lib.optionalString (ppl != null && ppl ? dontDisableStatic && ppl.dontDisableStatic) + "'--with-host-libstdcxx=-lstdc++ -lgcc_s'"} + ${stdenv.lib.optionalString (ppl != null && stdenv.isSunOS) + "\"--with-host-libstdcxx=-Wl,-rpath,\$prefix/lib/amd64 -lstdc++\" + \"--with-boot-ldflags=-L../prev-x86_64-pc-solaris2.11/libstdc++-v3/src/.libs\""} + ); + ${stdenv.lib.optionalString (stdenv.isSunOS && stdenv.is64bit) + '' + export NIX_LDFLAGS=`echo $NIX_LDFLAGS | sed -e s~$prefix/lib~$prefix/lib/amd64~g` + export LDFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $LDFLAGS_FOR_TARGET" + export CXXFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CXXFLAGS_FOR_TARGET" + export CFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CFLAGS_FOR_TARGET" + ''} + ''; + + # 'iant' at #go-nuts@freenode, gccgo maintainer, said that + # they have a bug in 4.7.1 if adding "--disable-static" + dontDisableStatic = langGo || staticCompiler; + + configureFlags = " + ${if stdenv.isSunOS then + " --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " + + # On Illumos/Solaris GNU as is preferred + " --with-gnu-as --without-gnu-ld " + else ""} + --enable-lto + ${if enableMultilib then "" else "--disable-multilib"} + ${if enableShared then "" else "--disable-shared"} + ${if enablePlugin then "--enable-plugin" else "--disable-plugin"} + ${if ppl != null then "--with-ppl=${ppl} --disable-ppl-version-check" else ""} + ${optionalString (isl != null) "--with-isl=${isl}"} + ${optionalString (cloog != null) "--with-cloog=${cloog} --disable-cloog-version-check --enable-cloog-backend=isl"} + ${if langJava then + "--with-ecj-jar=${javaEcj} " + + + # Follow Sun's layout for the convenience of IcedTea/OpenJDK. See + # . + "--enable-java-home --with-java-home=\${prefix}/lib/jvm/jre " + else ""} + ${if javaAwtGtk then "--enable-java-awt=gtk" else ""} + ${if langJava && javaAntlr != null then "--with-antlr-jar=${javaAntlr}" else ""} + --with-gmp=${gmp} + --with-mpfr=${mpfr} + --with-mpc=${mpc} + ${if libelf != null then "--with-libelf=${libelf}" else ""} + --disable-libstdcxx-pch + --without-included-gettext + --with-system-zlib + --enable-languages=${ + concatStrings (intersperse "," + ( optional langC "c" + ++ optional langCC "c++" + ++ optional langFortran "fortran" + ++ optional langJava "java" + ++ optional langAda "ada" + ++ optional langVhdl "vhdl" + ++ optional langGo "go" + ) + ) + } + ${if (stdenv ? glibc && cross == null) + then " --with-native-system-header-dir=${stdenv.glibc}/include" + else ""} + ${if langAda then " --enable-libada" else ""} + ${if cross == null && stdenv.isi686 then "--with-arch=i686" else ""} + ${if cross != null then crossConfigureFlags else ""} + ${if !bootstrap then "--disable-bootstrap" else ""} + ${if cross == null then platformFlags else ""} + "; + + targetConfig = if cross != null then cross.config else null; + + buildFlags = if bootstrap then + (if profiledCompiler then "profiledbootstrap" else "bootstrap") + else ""; + + installTargets = + if stripped + then "install-strip" + else "install"; + + crossAttrs = let + xgccArch = stdenv.lib.attrByPath [ "gcc" "arch" ] null stdenv.cross; + xgccCpu = stdenv.lib.attrByPath [ "gcc" "cpu" ] null stdenv.cross; + xgccAbi = stdenv.lib.attrByPath [ "gcc" "abi" ] null stdenv.cross; + xgccFpu = stdenv.lib.attrByPath [ "gcc" "fpu" ] null stdenv.cross; + xgccFloat = stdenv.lib.attrByPath [ "gcc" "float" ] null stdenv.cross; + xwithArch = if xgccArch != null then " --with-arch=${xgccArch}" else ""; + xwithCpu = if xgccCpu != null then " --with-cpu=${xgccCpu}" else ""; + xwithAbi = if xgccAbi != null then " --with-abi=${xgccAbi}" else ""; + xwithFpu = if xgccFpu != null then " --with-fpu=${xgccFpu}" else ""; + xwithFloat = if xgccFloat != null then " --with-float=${xgccFloat}" else ""; + in { + AR = "${stdenv.cross.config}-ar"; + LD = "${stdenv.cross.config}-ld"; + CC = "${stdenv.cross.config}-gcc"; + CXX = "${stdenv.cross.config}-gcc"; + AR_FOR_TARGET = "${stdenv.cross.config}-ar"; + LD_FOR_TARGET = "${stdenv.cross.config}-ld"; + CC_FOR_TARGET = "${stdenv.cross.config}-gcc"; + NM_FOR_TARGET = "${stdenv.cross.config}-nm"; + CXX_FOR_TARGET = "${stdenv.cross.config}-g++"; + # If we are making a cross compiler, cross != null + NIX_GCC_CROSS = if cross == null then "${stdenv.gccCross}" else ""; + dontStrip = true; + configureFlags = '' + ${if enableMultilib then "" else "--disable-multilib"} + ${if enableShared then "" else "--disable-shared"} + ${if ppl != null then "--with-ppl=${ppl.crossDrv}" else ""} + ${if cloog != null then "--with-cloog=${cloog.crossDrv} --enable-cloog-backend=isl" else ""} + ${if langJava then "--with-ecj-jar=${javaEcj.crossDrv}" else ""} + ${if javaAwtGtk then "--enable-java-awt=gtk" else ""} + ${if langJava && javaAntlr != null then "--with-antlr-jar=${javaAntlr.crossDrv}" else ""} + --with-gmp=${gmp.crossDrv} + --with-mpfr=${mpfr.crossDrv} + --disable-libstdcxx-pch + --without-included-gettext + --with-system-zlib + --enable-languages=${ + concatStrings (intersperse "," + ( optional langC "c" + ++ optional langCC "c++" + ++ optional langFortran "fortran" + ++ optional langJava "java" + ++ optional langAda "ada" + ++ optional langVhdl "vhdl" + ++ optional langGo "go" + ) + ) + } + ${if langAda then " --enable-libada" else ""} + --target=${stdenv.cross.config} + ${xwithArch} + ${xwithCpu} + ${xwithAbi} + ${xwithFpu} + ${xwithFloat} + ''; + buildFlags = ""; + }; + + + # Needed for the cross compilation to work + AR = "ar"; + LD = "ld"; + # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210 + CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" + else "gcc"; + + # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find + # the library headers and binaries, regarless of the language being + # compiled. + + # Note: When building the Java AWT GTK+ peer, the build system doesn't + # honor `--with-gmp' et al., e.g., when building + # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just + # add them to $CPATH and $LIBRARY_PATH in this case. + # + # Likewise, the LTO code doesn't find zlib. + + CPATH = concatStrings + (intersperse ":" (map (x: x + "/include") + (optionals (zlib != null) [ zlib ] + ++ optionals langJava [ boehmgc ] + ++ optionals javaAwtGtk xlibs + ++ optionals javaAwtGtk [ gmp mpfr ] + ++ optional (libpthread != null) libpthread + ++ optional (libpthreadCross != null) libpthreadCross + + # On GNU/Hurd glibc refers to Mach & Hurd + # headers. + ++ optionals (libcCross != null && + hasAttr "propagatedBuildInputs" libcCross) + libcCross.propagatedBuildInputs))); + + LIBRARY_PATH = concatStrings + (intersperse ":" (map (x: x + "/lib") + (optionals (zlib != null) [ zlib ] + ++ optionals langJava [ boehmgc ] + ++ optionals javaAwtGtk xlibs + ++ optionals javaAwtGtk [ gmp mpfr ] + ++ optional (libpthread != null) libpthread))); + + EXTRA_TARGET_CFLAGS = + if cross != null && libcCross != null + then "-idirafter ${libcCross}/include" + else null; + + EXTRA_TARGET_LDFLAGS = + if cross != null && libcCross != null + then "-B${libcCross}/lib -Wl,-L${libcCross}/lib" + + (optionalString (libpthreadCross != null) + " -L${libpthreadCross}/lib -Wl,${libpthreadCross.TARGET_LDFLAGS}") + else null; + + passthru = { inherit langC langCC langAda langFortran langVhdl + langGo enableMultilib version; }; + + /* From gccinstall.info: + "parallel make is currently not supported since collisions in profile + collecting may occur" + */ + enableParallelBuilding = !profiledCompiler; + + meta = { + homepage = http://gcc.gnu.org/; + license = "GPLv3+"; # runtime support libraries are typically LGPLv3+ + 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++, + Objective-C, Fortran, OpenMP for C/C++/Fortran, Java, and Ada, as well + as libraries for these languages (libstdc++, libgcj, libgomp,...). + + GCC development is a part of the GNU Project, aiming to improve the + compiler used in the GNU system including the GNU/Linux variant. + ''; + + maintainers = with stdenv.lib.maintainers; [ ludo viric shlevy simons ]; + + # Volunteers needed for the {Cyg,Dar}win ports of *PPL. + # gnatboot is not available out of linux platforms, so we disable the darwin build + # for the gnat (ada compiler). + platforms = stdenv.lib.platforms.linux ++ optionals (langAda == false && libelf == null) [ "i686-darwin" ]; + }; +} + +// optionalAttrs (cross != null && cross.libc == "msvcrt" && crossStageStatic) { + makeFlags = [ "all-gcc" "all-target-libgcc" ]; + installTargets = "install-gcc install-target-libgcc"; +} + + +# Strip kills static libs of other archs (hence cross != null) +// optionalAttrs (!stripped || cross != null) { dontStrip = true; NIX_STRIP_DEBUG = 0; } +) diff --git a/pkgs/development/compilers/gcc/4.8/gfortran-driving.patch b/pkgs/development/compilers/gcc/4.8/gfortran-driving.patch new file mode 100644 index 00000000000..70708886b40 --- /dev/null +++ b/pkgs/development/compilers/gcc/4.8/gfortran-driving.patch @@ -0,0 +1,20 @@ +This patch fixes interaction with Libtool. +See , for details. + +--- a/gcc/fortran/gfortranspec.c ++++ b/gcc/fortran/gfortranspec.c +@@ -461,8 +461,15 @@ For more information about these matters, see the file named COPYING\n\n")); + { + fprintf (stderr, _("Driving:")); + for (i = 0; i < g77_newargc; i++) ++ { ++ if (g77_new_decoded_options[i].opt_index == OPT_l) ++ /* Make sure no white space is inserted after `-l'. */ ++ fprintf (stderr, " -l%s", ++ g77_new_decoded_options[i].canonical_option[1]); ++ else + fprintf (stderr, " %s", + g77_new_decoded_options[i].orig_option_with_args_text); ++ } + fprintf (stderr, "\n"); + } diff --git a/pkgs/development/compilers/gcc/4.8/gnat-cflags.patch b/pkgs/development/compilers/gcc/4.8/gnat-cflags.patch new file mode 100644 index 00000000000..bf2acf065e9 --- /dev/null +++ b/pkgs/development/compilers/gcc/4.8/gnat-cflags.patch @@ -0,0 +1,33 @@ +diff --git a/libada/Makefile.in b/libada/Makefile.in +index f5057a0..337e0c6 100644 +--- a/libada/Makefile.in ++++ b/libada/Makefile.in +@@ -55,7 +55,7 @@ GCC_WARN_CFLAGS = $(LOOSE_WARN) + WARN_CFLAGS = @warn_cflags@ + + TARGET_LIBGCC2_CFLAGS= +-GNATLIBCFLAGS= -g -O2 ++GNATLIBCFLAGS= -g -O2 $(CFLAGS) + GNATLIBCFLAGS_FOR_C = $(GNATLIBCFLAGS) $(TARGET_LIBGCC2_CFLAGS) -fexceptions \ + -DIN_RTS @have_getipinfo@ + +--- a/gcc/ada/gcc-interface/Makefile.in ++++ b/gcc/ada/gcc-interface/Makefile.in +@@ -105,7 +105,7 @@ ADAFLAGS = -W -Wall -gnatpg -gnata + SOME_ADAFLAGS =-gnata + FORCE_DEBUG_ADAFLAGS = -g + GNATLIBFLAGS = -gnatpg -nostdinc +-GNATLIBCFLAGS = -g -O2 ++GNATLIBCFLAGS = -g -O2 $(CFLAGS_FOR_TARGET) + # Pretend that _Unwind_GetIPInfo is available for the target by default. This + # should be autodetected during the configuration of libada and passed down to + # here, but we need something for --disable-libada and hope for the best. +@@ -193,7 +193,7 @@ RTSDIR = rts$(subst /,_,$(MULTISUBDIR)) + # Link flags used to build gnat tools. By default we prefer to statically + # link with libgcc to avoid a dependency on shared libgcc (which is tricky + # to deal with as it may conflict with the libgcc provided by the system). +-GCC_LINK_FLAGS=-static-libgcc ++GCC_LINK_FLAGS=-static-libgcc $(CFLAGS_FOR_TARGET) + + # End of variables for you to override. + diff --git a/pkgs/development/compilers/gcc/4.8/java-jvgenmain-link.patch b/pkgs/development/compilers/gcc/4.8/java-jvgenmain-link.patch new file mode 100644 index 00000000000..2612e8bfbbb --- /dev/null +++ b/pkgs/development/compilers/gcc/4.8/java-jvgenmain-link.patch @@ -0,0 +1,17 @@ +The `jvgenmain' executable must be linked against `vec.o', among others, +since it uses its vector API. + +--- gcc-4.3.3/gcc/java/Make-lang.in 2008-12-05 00:00:19.000000000 +0100 ++++ gcc-4.3.3/gcc/java/Make-lang.in 2009-07-03 16:11:41.000000000 +0200 +@@ -109,9 +109,9 @@ jcf-dump$(exeext): $(JCFDUMP_OBJS) $(LIB + $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JCFDUMP_OBJS) \ + $(CPPLIBS) $(ZLIB) $(LDEXP_LIB) $(LIBS) + +-jvgenmain$(exeext): $(JVGENMAIN_OBJS) $(LIBDEPS) ++jvgenmain$(exeext): $(JVGENMAIN_OBJS) $(LIBDEPS) $(BUILD_RTL) + rm -f $@ +- $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JVGENMAIN_OBJS) $(LIBS) ++ $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JVGENMAIN_OBJS) $(BUILD_RTL) $(LIBS) + + # + # Build hooks: diff --git a/pkgs/development/compilers/gcc/4.8/libstdc++-target.patch b/pkgs/development/compilers/gcc/4.8/libstdc++-target.patch new file mode 100644 index 00000000000..fb622b39580 --- /dev/null +++ b/pkgs/development/compilers/gcc/4.8/libstdc++-target.patch @@ -0,0 +1,32 @@ +Patch to make the target libraries 'configure' scripts find the proper CPP. +I noticed that building the mingw32 cross compiler. +Looking at the build script for mingw in archlinux, I think that only nixos +needs this patch. I don't know why. +diff --git a/Makefile.in b/Makefile.in +index 93f66b6..d691917 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -266,6 +266,7 @@ BASE_TARGET_EXPORTS = \ + AR="$(AR_FOR_TARGET)"; export AR; \ + AS="$(COMPILER_AS_FOR_TARGET)"; export AS; \ + CC="$(CC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CC; \ ++ CPP="$(CC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS -E"; export CC; \ + CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ + CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ + CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \ +@@ -291,11 +292,13 @@ BASE_TARGET_EXPORTS = \ + RAW_CXX_TARGET_EXPORTS = \ + $(BASE_TARGET_EXPORTS) \ + CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \ +- CXX="$(RAW_CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CXX; ++ CXX="$(RAW_CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CXX; \ ++ CXXCPP="$(RAW_CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS -E"; export CXX; + + NORMAL_TARGET_EXPORTS = \ + $(BASE_TARGET_EXPORTS) \ +- CXX="$(CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CXX; ++ CXX="$(CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CXX; \ ++ CXXCPP="$(CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS -E"; export CXX; + + # Where to find GMP + HOST_GMPLIBS = @gmplibs@ diff --git a/pkgs/development/compilers/gcc/4.8/no-sys-dirs.patch b/pkgs/development/compilers/gcc/4.8/no-sys-dirs.patch new file mode 100644 index 00000000000..79901703cb8 --- /dev/null +++ b/pkgs/development/compilers/gcc/4.8/no-sys-dirs.patch @@ -0,0 +1,41 @@ +diff -ru gcc-4.3.1-orig/gcc/cppdefault.c gcc-4.3.1/gcc/cppdefault.c +--- gcc-4.3.1-orig/gcc/cppdefault.c 2007-07-26 10:37:01.000000000 +0200 ++++ gcc-4.3.1/gcc/cppdefault.c 2008-06-25 17:48:23.000000000 +0200 +@@ -41,6 +41,10 @@ + # undef CROSS_INCLUDE_DIR + #endif + ++#undef LOCAL_INCLUDE_DIR ++#undef SYSTEM_INCLUDE_DIR ++#undef STANDARD_INCLUDE_DIR ++ + const struct default_include cpp_include_defaults[] + #ifdef INCLUDE_DEFAULTS + = INCLUDE_DEFAULTS; +diff -ru gcc-4.3.1-orig/gcc/gcc.c gcc-4.3.1/gcc/gcc.c +--- gcc-4.3.1-orig/gcc/gcc.c 2008-03-02 23:55:19.000000000 +0100 ++++ gcc-4.3.1/gcc/gcc.c 2008-06-25 17:52:53.000000000 +0200 +@@ -1478,10 +1478,10 @@ + /* Default prefixes to attach to command names. */ + + #ifndef STANDARD_STARTFILE_PREFIX_1 +-#define STANDARD_STARTFILE_PREFIX_1 "/lib/" ++#define STANDARD_STARTFILE_PREFIX_1 "" + #endif + #ifndef STANDARD_STARTFILE_PREFIX_2 +-#define STANDARD_STARTFILE_PREFIX_2 "/usr/lib/" ++#define STANDARD_STARTFILE_PREFIX_2 "" + #endif + + #ifdef CROSS_DIRECTORY_STRUCTURE /* Don't use these prefixes for a cross compiler. */ +--- gcc-4.3.1-orig/gcc/Makefile.in 2008-05-11 20:54:15.000000000 +0200 ++++ gcc-4.3.1/gcc/Makefile.in 2008-06-25 17:48:23.000000000 +0200 +@@ -3277,7 +3281,7 @@ + -DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \ + -DGPLUSPLUS_TOOL_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/$(target_noncanonical)\" \ + -DGPLUSPLUS_BACKWARD_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/backward\" \ +- -DLOCAL_INCLUDE_DIR=\"$(local_includedir)\" \ ++ -DLOCAL_INCLUDE_DIR=\"/no-such-dir\" \ + -DCROSS_INCLUDE_DIR=\"$(CROSS_SYSTEM_HEADER_DIR)\" \ + -DTOOL_INCLUDE_DIR=\"$(gcc_tooldir)/include\" \ + -DPREFIX=\"$(prefix)/\" \ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ba17cf99ae3..c3af959ac48 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2237,6 +2237,32 @@ let binutilsCross = null; })); + gcc48_real = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.8 { + inherit noSysDirs; + # I'm not sure if profiling with enableParallelBuilding helps a lot. + # We can enable it back some day. This makes the *gcc* builds faster now. + profiledCompiler = false; + + # When building `gcc.crossDrv' (a "Canadian cross", with host == target + # and host != build), `cross' must be null but the cross-libc must still + # be passed. + cross = null; + libcCross = if crossSystem != null then libcCross else null; + libpthreadCross = + if crossSystem != null && crossSystem.config == "i586-pc-gnu" + then gnu.libpthreadCross + else null; + })); + + gcc48_debug = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.8 { + stripped = false; + + inherit noSysDirs; + cross = null; + libcCross = null; + binutilsCross = null; + })); + gccApple = assert stdenv.isDarwin; wrapGCC (makeOverridable (import ../development/compilers/gcc/4.2-apple64) { From e12e62001bef98b4983579c505d772e8362a590b Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 4 Apr 2013 13:42:26 +0200 Subject: [PATCH 070/286] perl: Update to 5.16.3, 5.14.4 CVE-2013-1667 --- pkgs/development/interpreters/perl/5.14/default.nix | 4 ++-- pkgs/development/interpreters/perl/5.16/default.nix | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/pkgs/development/interpreters/perl/5.14/default.nix b/pkgs/development/interpreters/perl/5.14/default.nix index 70a030e0308..dd4e7acf71f 100644 --- a/pkgs/development/interpreters/perl/5.14/default.nix +++ b/pkgs/development/interpreters/perl/5.14/default.nix @@ -7,11 +7,11 @@ let in stdenv.mkDerivation rec { - name = "perl-5.14.2"; + name = "perl-5.14.4"; src = fetchurl { url = "mirror://cpan/src/${name}.tar.gz"; - sha256 = "1ls8cpbgnlaxfydyyqgr7pxj1hkxh9pzcdgr3dv42zdxffakb234"; + sha256 = "1js47zzna3v38fjnirf2vq6y0rjp8m86ysj5vagzgkig956d8gw0"; }; patches = diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index de2839e82ed..2e9540f0006 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -7,11 +7,11 @@ let in stdenv.mkDerivation rec { - name = "perl-5.16.2"; + name = "perl-5.16.3"; src = fetchurl { url = "mirror://cpan/src/${name}.tar.gz"; - sha256 = "03nh8bqnjsdd5izjv3n2yfcxw4ck0llwww36jpbjbjgixwpqpy4f"; + sha256 = "1dpd9lhc4723wmsn4dsn4m320qlqgyw28bvcbhnfqp2nl3f0ikv9"; }; patches = @@ -61,16 +61,18 @@ stdenv.mkDerivation rec { setupHook = ./setup-hook.sh; doCheck = true; + # some network-related tests don't work, mostly probably due to our sandboxing testsToSkip = '' lib/Net/hostent.t \ dist/IO/t/{io_multihomed.t,io_sock.t} \ t/porting/{maintainers.t,regen.t} \ cpan/Socket/t/getnameinfo.t \ - '' + stdenv.lib.optionalString (stdenv.isFreeBSD) '' + '' + stdenv.lib.optionalString stdenv.isFreeBSD '' cpan/CPANPLUS/t/04_CPANPLUS-Module.t \ cpan/CPANPLUS/t/20_CPANPLUS-Dist-MM.t \ '' + " "; + postPatch = '' for test in ${testsToSkip}; do echo "Removing test" $test From a1a845876314d4244315d809df99dee41d000011 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 5 Apr 2013 10:21:41 +0200 Subject: [PATCH 071/286] pkgs/top-level/release-small.nix: make 'supportedSystems' an argument to this expression --- pkgs/top-level/release-small.nix | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix index a2a10ab7561..516141fa003 100644 --- a/pkgs/top-level/release-small.nix +++ b/pkgs/top-level/release-small.nix @@ -2,11 +2,10 @@ the load on Hydra when testing the `stdenv-updates' branch. */ { nixpkgs ? { outPath = (import ./all-packages.nix {}).lib.cleanSource ../..; revCount = 1234; shortRev = "abcdef"; } +, supportedSystems ? [ "x86_64-linux" "i686-linux" "x86_64-darwin" "x86_64-freebsd" "i686-freebsd" ] }: -with import ./release-lib.nix { - supportedSystems = [ "x86_64-linux" "i686-linux" "x86_64-darwin" "x86_64-freebsd" "i686-freebsd" ]; -}; +with import ./release-lib.nix { inherit supportedSystems; }; { From 8a9e83057b93ac08f7fb3a8e330709fb7549a643 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 4 Apr 2013 15:16:38 +0200 Subject: [PATCH 072/286] all-packages.nix: strip trailing whitespace --- 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 75b823eba3d..9ab4f310f72 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7707,7 +7707,7 @@ let ratpoison = callPackage ../applications/window-managers/ratpoison { }; rawtherapee = callPackage ../applications/graphics/rawtherapee { - fftw = fftw.override {float = true;}; + fftw = fftw.override {float = true;}; }; rcs = callPackage ../applications/version-management/rcs { }; @@ -8005,7 +8005,7 @@ let wings = callPackage ../applications/graphics/wings { erlang = erlangR14B04; - esdl = esdl.override { erlang = erlangR14B04; }; + esdl = esdl.override { erlang = erlangR14B04; }; }; wmname = callPackage ../applications/misc/wmname { }; From b4ac9a4c9f0fa399448d5b96c765788c92435ed7 Mon Sep 17 00:00:00 2001 From: Domen Kozar Date: Sun, 7 Apr 2013 12:22:40 +0200 Subject: [PATCH 073/286] python: 2.7.3 -> 2.7.4 --- pkgs/development/interpreters/python/2.7/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/python/2.7/default.nix b/pkgs/development/interpreters/python/2.7/default.nix index 9fb2ab377df..7dc4708e3cf 100644 --- a/pkgs/development/interpreters/python/2.7/default.nix +++ b/pkgs/development/interpreters/python/2.7/default.nix @@ -9,11 +9,11 @@ with stdenv.lib; let majorVersion = "2.7"; - version = "${majorVersion}.3"; + version = "${majorVersion}.4"; src = fetchurl { url = "http://www.python.org/ftp/python/${version}/Python-${version}.tar.bz2"; - sha256 = "0g3672il41rcfjk7sphfqdsa6qf53y8g3ai8yk1sslxi3khmfr3j"; + sha256 = "0nd3x4j2w8pi9ac3pawrzb5i3s88hw0aasr08dprdv7q81fp0pq3"; }; patches = From 70f0d79d063c665a9fd46d5bd38391f940f0430f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 7 Apr 2013 21:52:24 +0200 Subject: [PATCH 074/286] perl: remove one more unreliable test, fixes #454 --- pkgs/development/interpreters/perl/5.16/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index 2e9540f0006..c838bb35ab5 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -67,7 +67,7 @@ stdenv.mkDerivation rec { lib/Net/hostent.t \ dist/IO/t/{io_multihomed.t,io_sock.t} \ t/porting/{maintainers.t,regen.t} \ - cpan/Socket/t/getnameinfo.t \ + cpan/Socket/t/get{name,addr}info.t \ '' + stdenv.lib.optionalString stdenv.isFreeBSD '' cpan/CPANPLUS/t/04_CPANPLUS-Module.t \ cpan/CPANPLUS/t/20_CPANPLUS-Dist-MM.t \ From e9b30710a4c23378b6fcf5908f6e1bfef35892c1 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 4 Apr 2013 15:15:57 +0200 Subject: [PATCH 075/286] Switch stdenv to GCC 4.8.0. --- pkgs/top-level/all-packages.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d1f9449f57a..82dfd0dd481 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1998,7 +1998,7 @@ let gambit = callPackage ../development/compilers/gambit { }; - gcc = gcc47; + gcc = gcc48; gcc33 = wrapGCC (import ../development/compilers/gcc/3.3 { inherit fetchurl stdenv noSysDirs; @@ -2051,6 +2051,8 @@ let gcc47 = gcc47_real; + gcc48 = gcc48_real; + gcc45_realCross = lib.addMetaAttrs { platforms = []; } (makeOverridable (import ../development/compilers/gcc/4.5) { inherit fetchurl stdenv texinfo gmp mpfr mpc libelf zlib From e4f9d6b396b57ff0d9f918e252195e84d81faf48 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 5 Apr 2013 08:48:34 +0200 Subject: [PATCH 076/286] gmp-4.3.2.nix: disable test suite to fix the build The test t-lucnum_ui fails (on Linux/x86_64) when built with GCC 4.8. Newer versions of GMP don't have that issue anymore. --- pkgs/development/libraries/gmp/4.3.2.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/gmp/4.3.2.nix b/pkgs/development/libraries/gmp/4.3.2.nix index df7bd0ea3b9..f003979c701 100644 --- a/pkgs/development/libraries/gmp/4.3.2.nix +++ b/pkgs/development/libraries/gmp/4.3.2.nix @@ -23,7 +23,9 @@ stdenv.mkDerivation rec { configureFlags = if cxx then "--enable-cxx" else "--disable-cxx"; - doCheck = true; + # The test t-lucnum_ui fails (on Linux/x86_64) when built with GCC 4.8. + # Newer versions of GMP don't have that issue anymore. + doCheck = false; meta = { description = "GMP, the GNU multiple precision arithmetic library"; From 3e208067eae985271899471c4b26f720167a3640 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 10 Apr 2013 08:59:59 +0200 Subject: [PATCH 077/286] gcc48: turn on PGO on x86*, see #445 --- pkgs/top-level/all-packages.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 82dfd0dd481..0dbffda27d1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2241,9 +2241,9 @@ let gcc48_real = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.8 { inherit noSysDirs; - # I'm not sure if profiling with enableParallelBuilding helps a lot. - # We can enable it back some day. This makes the *gcc* builds faster now. - profiledCompiler = false; + + # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion + profiledCompiler = with stdenv; (isi686 || isx86_64); # When building `gcc.crossDrv' (a "Canadian cross", with host == target # and host != build), `cross' must be null but the cross-libc must still From 4c62d0d144b6c287fb5a629afb94632cfaaab34b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 10 Apr 2013 14:46:50 +0200 Subject: [PATCH 078/286] gcc42: fix build via a patch from arch --- pkgs/development/compilers/gcc/4.2/default.nix | 6 +++--- .../development/compilers/gcc/4.2/siginfo_t.patch | 15 +++++++++++++++ 2 files changed, 18 insertions(+), 3 deletions(-) create mode 100644 pkgs/development/compilers/gcc/4.2/siginfo_t.patch diff --git a/pkgs/development/compilers/gcc/4.2/default.nix b/pkgs/development/compilers/gcc/4.2/default.nix index 68a174cc579..69cac159d4a 100644 --- a/pkgs/development/compilers/gcc/4.2/default.nix +++ b/pkgs/development/compilers/gcc/4.2/default.nix @@ -30,11 +30,11 @@ stdenv.mkDerivation { url = "mirror://gnu/gcc/gcc-${version}/gcc-fortran-${version}.tar.bz2"; sha256 = "013yqiqhdavgxzjryvylgf3lcnknmw89fx41jf2v4899srn0bhkg"; }); - + patches = - [./pass-cxxcpp.patch] + [./pass-cxxcpp.patch ./siginfo_t.patch] ++ optional noSysDirs [./no-sys-dirs.patch]; - + inherit noSysDirs profiledCompiler staticCompiler; buildInputs = [gmp mpfr texinfo]; diff --git a/pkgs/development/compilers/gcc/4.2/siginfo_t.patch b/pkgs/development/compilers/gcc/4.2/siginfo_t.patch new file mode 100644 index 00000000000..bfb9f975372 --- /dev/null +++ b/pkgs/development/compilers/gcc/4.2/siginfo_t.patch @@ -0,0 +1,15 @@ +https://bbs.archlinux.org/viewtopic.php?id=144949 +--- a/gcc/config/i386/linux-unwind.h 2011-01-03 20:52:22.000000000 +0000 ++++ b/gcc/config/i386/linux-unwind.h 2012-07-06 12:23:51.562859470 +0100 +@@ -133,9 +133,9 @@ + { + struct rt_sigframe { + int sig; +- struct siginfo *pinfo; ++ siginfo_t *pinfo; + void *puc; +- struct siginfo info; ++ siginfo_t info; + struct ucontext uc; + } *rt_ = context->cfa; + /* The void * cast is necessary to avoid an aliasing warning. From d7be1e84d0800bfa83a25c001c128de1fe89c02e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 10 Apr 2013 15:28:54 +0200 Subject: [PATCH 079/286] ruby19: fix build via a patch-level update --- pkgs/development/interpreters/ruby/ruby-19.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/interpreters/ruby/ruby-19.nix b/pkgs/development/interpreters/ruby/ruby-19.nix index b954d7e6bf0..fc9d6d3de6b 100644 --- a/pkgs/development/interpreters/ruby/ruby-19.nix +++ b/pkgs/development/interpreters/ruby/ruby-19.nix @@ -14,12 +14,12 @@ in stdenv.mkDerivation rec { version = with passthru; "${majorVersion}.${minorVersion}-p${patchLevel}"; - + name = "ruby-${version}"; - + src = fetchurl { url = "ftp://ftp.ruby-lang.org/pub/ruby/1.9/${name}.tar.bz2"; - sha256 = "1ymq5lhp3fz0j3cs65521aihcnivbfrn76in900ccxd0msgfmld9"; + sha256 = "14c3lp9w7hq3jcmbakw2ngrzd7c81fgqm6skpxwni5k2vzgk8wss"; }; # Have `configure' avoid `/usr/bin/nroff' in non-chroot builds. @@ -33,7 +33,7 @@ stdenv.mkDerivation rec { ++ (op yamlSupport libyaml); enableParallelBuilding = true; - + configureFlags = ["--enable-shared" "--enable-pthread"]; installFlags = stdenv.lib.optionalString docSupport "install-doc"; @@ -50,7 +50,7 @@ stdenv.mkDerivation rec { passthru = rec { majorVersion = "1.9"; minorVersion = "3"; - patchLevel = "194"; + patchLevel = "392"; libPath = "lib/ruby/${majorVersion}"; gemPath = "lib/ruby/gems/${majorVersion}"; }; From 2b56b020c7e68727e6ffcd15818802076e608fc1 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 19 Apr 2013 14:14:40 +0200 Subject: [PATCH 080/286] alex, happy: fix build for gcc 4.8.0 Alex and happy use CPP to generate some internal template files, but the code is unprepared for the output from CPP 4.8.0, which generates LINE pragmas that contain more information than they thought it would. --- pkgs/development/tools/parsing/alex/2.3.1.nix | 1 + pkgs/development/tools/parsing/alex/2.3.2.nix | 1 + pkgs/development/tools/parsing/alex/2.3.3.nix | 1 + pkgs/development/tools/parsing/alex/2.3.5.nix | 1 + .../alex/adapt-crazy-perl-regex-for-cpp-4.8.0.patch | 12 ++++++++++++ pkgs/development/tools/parsing/happy/1.18.4.nix | 1 + pkgs/development/tools/parsing/happy/1.18.5.nix | 1 + pkgs/development/tools/parsing/happy/1.18.6.nix | 1 + pkgs/development/tools/parsing/happy/1.18.8.nix | 1 + .../happy/adapt-crazy-perl-regex-for-cpp-4.8.0.patch | 12 ++++++++++++ 10 files changed, 32 insertions(+) create mode 100644 pkgs/development/tools/parsing/alex/adapt-crazy-perl-regex-for-cpp-4.8.0.patch create mode 100644 pkgs/development/tools/parsing/happy/adapt-crazy-perl-regex-for-cpp-4.8.0.patch diff --git a/pkgs/development/tools/parsing/alex/2.3.1.nix b/pkgs/development/tools/parsing/alex/2.3.1.nix index 92db61e08a2..7be36a2bf3c 100644 --- a/pkgs/development/tools/parsing/alex/2.3.1.nix +++ b/pkgs/development/tools/parsing/alex/2.3.1.nix @@ -8,6 +8,7 @@ cabal.mkDerivation (self: { isExecutable = true; buildTools = [ perl ]; doCheck = false; + patches = [ ./adapt-crazy-perl-regex-for-cpp-4.8.0.patch ]; meta = { homepage = "http://www.haskell.org/alex/"; description = "Alex is a tool for generating lexical analysers in Haskell"; diff --git a/pkgs/development/tools/parsing/alex/2.3.2.nix b/pkgs/development/tools/parsing/alex/2.3.2.nix index 2ec395d463f..d05daf83ee0 100644 --- a/pkgs/development/tools/parsing/alex/2.3.2.nix +++ b/pkgs/development/tools/parsing/alex/2.3.2.nix @@ -8,6 +8,7 @@ cabal.mkDerivation (self: { isExecutable = true; buildTools = [ perl ]; doCheck = false; + patches = [ ./adapt-crazy-perl-regex-for-cpp-4.8.0.patch ]; meta = { homepage = "http://www.haskell.org/alex/"; description = "Alex is a tool for generating lexical analysers in Haskell"; diff --git a/pkgs/development/tools/parsing/alex/2.3.3.nix b/pkgs/development/tools/parsing/alex/2.3.3.nix index 920c5fd9cc2..fe8ed57189d 100644 --- a/pkgs/development/tools/parsing/alex/2.3.3.nix +++ b/pkgs/development/tools/parsing/alex/2.3.3.nix @@ -8,6 +8,7 @@ cabal.mkDerivation (self: { isExecutable = true; buildTools = [ perl ]; doCheck = false; + patches = [ ./adapt-crazy-perl-regex-for-cpp-4.8.0.patch ]; meta = { homepage = "http://www.haskell.org/alex/"; description = "Alex is a tool for generating lexical analysers in Haskell"; diff --git a/pkgs/development/tools/parsing/alex/2.3.5.nix b/pkgs/development/tools/parsing/alex/2.3.5.nix index 3635b248787..366988d8d14 100644 --- a/pkgs/development/tools/parsing/alex/2.3.5.nix +++ b/pkgs/development/tools/parsing/alex/2.3.5.nix @@ -8,6 +8,7 @@ cabal.mkDerivation (self: { isExecutable = true; buildTools = [ perl ]; doCheck = false; + patches = [ ./adapt-crazy-perl-regex-for-cpp-4.8.0.patch ]; meta = { homepage = "http://www.haskell.org/alex/"; description = "Alex is a tool for generating lexical analysers in Haskell"; diff --git a/pkgs/development/tools/parsing/alex/adapt-crazy-perl-regex-for-cpp-4.8.0.patch b/pkgs/development/tools/parsing/alex/adapt-crazy-perl-regex-for-cpp-4.8.0.patch new file mode 100644 index 00000000000..1e5942bfbef --- /dev/null +++ b/pkgs/development/tools/parsing/alex/adapt-crazy-perl-regex-for-cpp-4.8.0.patch @@ -0,0 +1,12 @@ +diff -ubr alex-2.3.5-orig/Setup.lhs alex-2.3.5/Setup.lhs +--- alex-2.3.5-orig/Setup.lhs 2013-04-19 12:00:15.812606335 +0000 ++++ alex-2.3.5/Setup.lhs 2013-04-19 12:05:41.635450321 +0000 +@@ -25,7 +25,7 @@ + -- hack to turn cpp-style '# 27 "GenericTemplate.hs"' into + -- '{-# LINE 27 "GenericTemplate.hs" #-}'. + crazy_perl_regexp = +- "s/^#\\s+(\\d+)\\s+(\"[^\"]*\")/{-# LINE \\1 \\2 #-}/g;s/\\$(Id:.*)\\$/\\1/g" ++ "s/^#\\s+(\\d+)\\s+(\"[^\"]*\").*/{-# LINE \\1 \\2 #-}/g;s/\\$(Id:.*)\\$/\\1/g" + + myPostBuild _ flags _ lbi = do + let runProgram p = rawSystemProgramConf (buildVerbose flags) p (withPrograms lbi) diff --git a/pkgs/development/tools/parsing/happy/1.18.4.nix b/pkgs/development/tools/parsing/happy/1.18.4.nix index cc5c60a3d43..12eb1837635 100644 --- a/pkgs/development/tools/parsing/happy/1.18.4.nix +++ b/pkgs/development/tools/parsing/happy/1.18.4.nix @@ -8,6 +8,7 @@ cabal.mkDerivation (self: { isExecutable = true; buildDepends = [ mtl ]; buildTools = [ perl ]; + patches = [ ./adapt-crazy-perl-regex-for-cpp-4.8.0.patch ]; meta = { homepage = "http://www.haskell.org/happy/"; description = "Happy is a parser generator for Haskell"; diff --git a/pkgs/development/tools/parsing/happy/1.18.5.nix b/pkgs/development/tools/parsing/happy/1.18.5.nix index 41532651c99..5cee8d7fc78 100644 --- a/pkgs/development/tools/parsing/happy/1.18.5.nix +++ b/pkgs/development/tools/parsing/happy/1.18.5.nix @@ -8,6 +8,7 @@ cabal.mkDerivation (self: { isExecutable = true; buildDepends = [ mtl ]; buildTools = [ perl ]; + patches = [ ./adapt-crazy-perl-regex-for-cpp-4.8.0.patch ]; meta = { homepage = "http://www.haskell.org/happy/"; description = "Happy is a parser generator for Haskell"; diff --git a/pkgs/development/tools/parsing/happy/1.18.6.nix b/pkgs/development/tools/parsing/happy/1.18.6.nix index 60b8d253659..c50eee13fd0 100644 --- a/pkgs/development/tools/parsing/happy/1.18.6.nix +++ b/pkgs/development/tools/parsing/happy/1.18.6.nix @@ -8,6 +8,7 @@ cabal.mkDerivation (self: { isExecutable = true; buildDepends = [ mtl ]; buildTools = [ perl ]; + patches = [ ./adapt-crazy-perl-regex-for-cpp-4.8.0.patch ]; meta = { homepage = "http://www.haskell.org/happy/"; description = "Happy is a parser generator for Haskell"; diff --git a/pkgs/development/tools/parsing/happy/1.18.8.nix b/pkgs/development/tools/parsing/happy/1.18.8.nix index b1ba0b165dd..1caf80a94bd 100644 --- a/pkgs/development/tools/parsing/happy/1.18.8.nix +++ b/pkgs/development/tools/parsing/happy/1.18.8.nix @@ -8,6 +8,7 @@ cabal.mkDerivation (self: { isExecutable = true; buildDepends = [ mtl ]; buildTools = [ perl ]; + patches = [ ./adapt-crazy-perl-regex-for-cpp-4.8.0.patch ]; meta = { homepage = "http://www.haskell.org/happy/"; description = "Happy is a parser generator for Haskell"; diff --git a/pkgs/development/tools/parsing/happy/adapt-crazy-perl-regex-for-cpp-4.8.0.patch b/pkgs/development/tools/parsing/happy/adapt-crazy-perl-regex-for-cpp-4.8.0.patch new file mode 100644 index 00000000000..8bc4db0f405 --- /dev/null +++ b/pkgs/development/tools/parsing/happy/adapt-crazy-perl-regex-for-cpp-4.8.0.patch @@ -0,0 +1,12 @@ +diff -ubr happy-1.18.6-orig/Setup.lhs happy-1.18.6/Setup.lhs +--- happy-1.18.6-orig/Setup.lhs 2013-04-19 14:17:10.865999210 +0200 ++++ happy-1.18.6/Setup.lhs 2013-04-19 14:17:15.285214809 +0200 +@@ -25,7 +25,7 @@ + -- hack to turn cpp-style '# 27 "GenericTemplate.hs"' into + -- '{-# LINE 27 "GenericTemplate.hs" #-}'. + crazy_perl_regexp = +- "s/^#\\s+(\\d+)\\s+(\"[^\"]*\")/{-# LINE \\1 \\2 #-}/g;s/\\$(Id:.*)\\$/\\1/g" ++ "s/^#\\s+(\\d+)\\s+(\"[^\"]*\").*/{-# LINE \\1 \\2 #-}/g;s/\\$(Id:.*)\\$/\\1/g" + + myPostBuild _ flags _ lbi = do + let runProgram p = rawSystemProgramConf (buildVerbose flags) p (withPrograms lbi) From 4dd05a51ed5c57f0f1d88715423fc0d525cf8de0 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sat, 20 Apr 2013 23:26:09 +0200 Subject: [PATCH 081/286] ghc-binary: don't refer to /bin/sh --- pkgs/development/compilers/ghc/6.10.1-binary.nix | 4 ++-- pkgs/development/compilers/ghc/6.10.2-binary.nix | 4 ++-- pkgs/development/compilers/ghc/6.12.1-binary.nix | 4 ++-- pkgs/development/compilers/ghc/7.0.4-binary.nix | 4 ++-- pkgs/development/compilers/ghc/7.4.2-binary.nix | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/pkgs/development/compilers/ghc/6.10.1-binary.nix b/pkgs/development/compilers/ghc/6.10.1-binary.nix index dd79ef9c8e7..e7d4d3c1946 100644 --- a/pkgs/development/compilers/ghc/6.10.1-binary.nix +++ b/pkgs/development/compilers/ghc/6.10.1-binary.nix @@ -36,10 +36,10 @@ stdenv.mkDerivation rec { '' mkdir "$TMP/bin" for i in strip; do - echo '#!/bin/sh' >> "$TMP/bin/$i" + echo '#! ${stdenv.shell}' > "$TMP/bin/$i" chmod +x "$TMP/bin/$i" - PATH="$TMP/bin:$PATH" done + PATH="$TMP/bin:$PATH" '' + # On Linux, use patchelf to modify the executables so that they can # find editline/gmp. diff --git a/pkgs/development/compilers/ghc/6.10.2-binary.nix b/pkgs/development/compilers/ghc/6.10.2-binary.nix index 7effff83c69..5af89e38c21 100644 --- a/pkgs/development/compilers/ghc/6.10.2-binary.nix +++ b/pkgs/development/compilers/ghc/6.10.2-binary.nix @@ -30,10 +30,10 @@ stdenv.mkDerivation rec { '' mkdir "$TMP/bin" for i in strip; do - echo '#!/bin/sh' >> "$TMP/bin/$i" + echo '#! ${stdenv.shell}' > "$TMP/bin/$i" chmod +x "$TMP/bin/$i" - PATH="$TMP/bin:$PATH" done + PATH="$TMP/bin:$PATH" '' + # On Linux, use patchelf to modify the executables so that they can # find editline/gmp. diff --git a/pkgs/development/compilers/ghc/6.12.1-binary.nix b/pkgs/development/compilers/ghc/6.12.1-binary.nix index 6f3411da4af..da4658c3829 100644 --- a/pkgs/development/compilers/ghc/6.12.1-binary.nix +++ b/pkgs/development/compilers/ghc/6.12.1-binary.nix @@ -28,10 +28,10 @@ stdenv.mkDerivation rec { '' mkdir "$TMP/bin" for i in strip; do - echo '#!/bin/sh' >> "$TMP/bin/$i" + echo '#! ${stdenv.shell}' > "$TMP/bin/$i" chmod +x "$TMP/bin/$i" - PATH="$TMP/bin:$PATH" done + PATH="$TMP/bin:$PATH" '' + # We have to patch the GMP paths for the integer-gmp package. '' diff --git a/pkgs/development/compilers/ghc/7.0.4-binary.nix b/pkgs/development/compilers/ghc/7.0.4-binary.nix index 455d552b91a..2c9b11f2b65 100644 --- a/pkgs/development/compilers/ghc/7.0.4-binary.nix +++ b/pkgs/development/compilers/ghc/7.0.4-binary.nix @@ -38,10 +38,10 @@ stdenv.mkDerivation rec { '' mkdir "$TMP/bin" for i in strip; do - echo '#!/bin/sh' >> "$TMP/bin/$i" + echo '#! ${stdenv.shell}' > "$TMP/bin/$i" chmod +x "$TMP/bin/$i" - PATH="$TMP/bin:$PATH" done + PATH="$TMP/bin:$PATH" '' + # We have to patch the GMP paths for the integer-gmp package. '' diff --git a/pkgs/development/compilers/ghc/7.4.2-binary.nix b/pkgs/development/compilers/ghc/7.4.2-binary.nix index 59eb957a45f..7000081e5db 100644 --- a/pkgs/development/compilers/ghc/7.4.2-binary.nix +++ b/pkgs/development/compilers/ghc/7.4.2-binary.nix @@ -38,10 +38,10 @@ stdenv.mkDerivation rec { '' mkdir "$TMP/bin" for i in strip; do - echo '#!/bin/sh' >> "$TMP/bin/$i" + echo '#! ${stdenv.shell}' > "$TMP/bin/$i" chmod +x "$TMP/bin/$i" - PATH="$TMP/bin:$PATH" done + PATH="$TMP/bin:$PATH" '' + # We have to patch the GMP paths for the integer-gmp package. '' From 431b774cc0b6984e6910b690136d6c2a60cf0afe Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sat, 20 Apr 2013 23:20:47 +0200 Subject: [PATCH 082/286] ghc: greatly simplify the GHC compiler wrapper The wrapper script accumulated some cruft over the last couple of months because we did changes in freaky ways to avoid triggering re-builds of all Haskell packages. Most of these kludges have been thrown out now. This patch doesn't change the behavior of the wrapper except for one thing: the internal helper scripts "ghc-get-packages.sh" and "ghc-packages.sh" are no longer installed in the bin directory of the generated derivation. --- pkgs/build-support/cabal/default.nix | 2 +- .../compilers/ghc/ghc-get-packages.sh | 21 ----- pkgs/development/compilers/ghc/wrapper.nix | 93 ++++++++++++------- pkgs/top-level/haskell-packages.nix | 10 -- 4 files changed, 59 insertions(+), 67 deletions(-) delete mode 100755 pkgs/development/compilers/ghc/ghc-get-packages.sh diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index 7064908f334..dfac8a4b292 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -144,7 +144,7 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; ./Setup build - export GHC_PACKAGE_PATH=$(ghc-packages) + export GHC_PACKAGE_PATH=$(${ghc.GHCPackages}) [ -n "$noHaddock" ] || ./Setup haddock eval "$postBuild" diff --git a/pkgs/development/compilers/ghc/ghc-get-packages.sh b/pkgs/development/compilers/ghc/ghc-get-packages.sh deleted file mode 100755 index 71e58e66a5e..00000000000 --- a/pkgs/development/compilers/ghc/ghc-get-packages.sh +++ /dev/null @@ -1,21 +0,0 @@ -#! /bin/sh -# Usage: -# $1: version of GHC -# $2: invocation path of GHC -# $3: prefix -version="$1" -if test -z "$3"; then - prefix="-package-conf " -else - prefix="$3" -fi -PATH="$2:$PATH" -IFS=":" -for p in $PATH; do - PkgDir="$p/../lib/ghc-$version/package.conf.d" - for i in $PkgDir/*.installedconf; do - # output takes place here - test -f $i && echo -n " $prefix$i" - done -done -test -f "$2/../lib/ghc-$version/package.conf" && echo -n " $prefix$2/../lib/ghc-$version/package.conf" diff --git a/pkgs/development/compilers/ghc/wrapper.nix b/pkgs/development/compilers/ghc/wrapper.nix index 55fd16be5ed..24deb89c2ec 100644 --- a/pkgs/development/compilers/ghc/wrapper.nix +++ b/pkgs/development/compilers/ghc/wrapper.nix @@ -1,10 +1,53 @@ -{ stdenv, ghc, makeWrapper, coreutils, forUserEnv ? false }: +{ stdenv, ghc, makeWrapper, coreutils, writeScript }: let ghc761OrLater = !stdenv.lib.versionOlder ghc.version "7.6.1"; packageDBFlag = if ghc761OrLater then "-package-db" else "-package-conf"; + + GHCGetPackages = writeScript "ghc-get-packages.sh" '' + #! ${stdenv.shell} + # Usage: + # $1: version of GHC + # $2: invocation path of GHC + # $3: prefix + version="$1" + if test -z "$3"; then + prefix="${packageDBFlag} " + else + prefix="$3" + fi + PATH="$2:$PATH" + IFS=":" + for p in $PATH; do + PkgDir="$p/../lib/ghc-$version/package.conf.d" + for i in "$PkgDir/"*.installedconf; do + # output takes place here + test -f $i && echo -n " $prefix$i" + done + done + test -f "$2/../lib/ghc-$version/package.conf" && echo -n " $prefix$2/../lib/ghc-$version/package.conf" + ''; + + GHCPackages = writeScript "ghc-packages.sh" '' + #! ${stdenv.shell} -e + declare -A GHC_PACKAGES_HASH # using bash4 hashs to get uniq paths + + for arg in $(${GHCGetPackages} ${ghc.version} "$(dirname $0)"); do + case "$arg" in + ${packageDBFlag}) ;; + *) + CANONICALIZED="$(${coreutils}/bin/readlink -f -- "$arg")" + GHC_PACKAGES_HASH["$CANONICALIZED"]= ;; + esac + done + + for path in ''${!GHC_PACKAGES_HASH[@]}; do + echo -n "$path:" + done + ''; + in -stdenv.mkDerivation ({ +stdenv.mkDerivation { name = "ghc-${ghc.version}-wrapper"; buildInputs = [makeWrapper]; @@ -12,53 +55,33 @@ stdenv.mkDerivation ({ unpackPhase = "true"; installPhase = '' + runHook preInstall + mkdir -p $out/bin - cp $GHCGetPackages $out/bin/ghc-get-packages.sh - chmod 755 $out/bin/ghc-get-packages.sh for prg in ghc ghci ghc-${ghc.version} ghci-${ghc.version}; do - makeWrapper $ghc/bin/$prg $out/bin/$prg --add-flags "\$($out/bin/ghc-get-packages.sh ${ghc.version} \"\$(dirname \$0)\")" + makeWrapper $ghc/bin/$prg $out/bin/$prg --add-flags "\$(${GHCGetPackages} ${ghc.version} \"\$(dirname \$0)\")" done for prg in runghc runhaskell; do - makeWrapper $ghc/bin/$prg $out/bin/$prg --add-flags "\$($out/bin/ghc-get-packages.sh ${ghc.version} \"\$(dirname \$0)\" \" ${packageDBFlag} --ghc-arg=\")" + makeWrapper $ghc/bin/$prg $out/bin/$prg --add-flags "\$(${GHCGetPackages} ${ghc.version} \"\$(dirname \$0)\" \" ${packageDBFlag} --ghc-arg=\")" done for prg in ghc-pkg ghc-pkg-${ghc.version}; do - makeWrapper $ghc/bin/$prg $out/bin/$prg --add-flags "\$($out/bin/ghc-get-packages.sh ${ghc.version} \"\$(dirname \$0)\" -${packageDBFlag}=)" + makeWrapper $ghc/bin/$prg $out/bin/$prg --add-flags "\$(${GHCGetPackages} ${ghc.version} \"\$(dirname \$0)\" -${packageDBFlag}=)" done for prg in hp2ps hpc hasktags hsc2hs; do test -x $ghc/bin/$prg && ln -s $ghc/bin/$prg $out/bin/$prg done - cat >> $out/bin/ghc-packages << EOF - #! /bin/bash -e - declare -A GHC_PACKAGES_HASH # using bash4 hashs to get uniq paths - for arg in \$($out/bin/ghc-get-packages.sh ${ghc.version} \"\$(dirname \$0)\"); do - case "\$arg" in - ${packageDBFlag}) ;; - *) - CANONICALIZED="\$(${stdenv.lib.optionalString stdenv.isDarwin "${coreutils}/bin/"}readlink -f "\$arg")" - GHC_PACKAGES_HASH["\$CANONICALIZED"]= ;; - esac - done - - for path in \''${!GHC_PACKAGES_HASH[@]}; do - echo -n "\$path:" - done - EOF - chmod +x $out/bin/ghc-packages mkdir -p $out/nix-support ln -s $out/nix-support/propagated-build-inputs $out/nix-support/propagated-user-env-packages + + mkdir -p $out/share/doc + ln -s $ghc/lib $out/lib + ln -s $ghc/share/doc/ghc $out/share/doc/ghc-${ghc.version} + + runHook postInstall ''; - GHCGetPackages = ./ghc-get-packages.sh; - - inherit ghc; + inherit ghc GHCGetPackages GHCPackages; inherit (ghc) meta; ghcVersion = ghc.version; -} // (stdenv.lib.optionalAttrs ghc761OrLater { preFixup = "sed -i -e 's|-package-conf|${packageDBFlag}|' $out/bin/ghc-get-packages.sh"; }) - // (stdenv.lib.optionalAttrs forUserEnv { - postFixup= '' - ln -s $ghc/lib $out/lib; - mkdir -p $out/share/doc - ln -s $ghc/share/doc/ghc $out/share/doc/ghc-${ghc.version} - ''; - })) +} diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 3bf5d3d7f74..7c6c237b194 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -89,16 +89,6 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y); ghc = ghc; # refers to ghcPlain }; - # The normal GHC wrapper doesn't create links to the documentation in - # ~/.nix-profile. Having this second wrapper allows us to remedy the - # situation without re-building all Haskell packages. At the next - # stdenv-updates merge, this second wrapper will go away. - - ghcUserEnvWrapper = pkgs.appendToName "new" (callPackage ../development/compilers/ghc/wrapper.nix { - ghc = ghc; # refers to ghcPlain - forUserEnv = true; - }); - # An experimental wrapper around ghcPlain that does not automatically # pick up packages from the profile, but instead has a fixed set of packages # in its global database. The set of packages can be specified as an From 3e3f70713ffe68a6ee63a8d4a8bd2552e32916d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 30 Apr 2013 09:15:15 +0200 Subject: [PATCH 083/286] zlib: minor update 1.2.7 -> 1.2.8 --- pkgs/development/libraries/zlib/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/zlib/default.nix b/pkgs/development/libraries/zlib/default.nix index ec47c35c153..0d4abaf25e0 100644 --- a/pkgs/development/libraries/zlib/default.nix +++ b/pkgs/development/libraries/zlib/default.nix @@ -1,16 +1,16 @@ { stdenv, fetchurl, static ? false }: -let version = "1.2.7"; in +let version = "1.2.8"; in stdenv.mkDerivation rec { name = "zlib-${version}"; - + src = fetchurl { urls = [ "http://www.zlib.net/${name}.tar.gz" # old versions vanish from here "mirror://sourceforge/libpng/zlib/${version}/${name}.tar.gz" ]; - sha256 = "1i96gsdvxqb6skp9a58bacf1wxamwi9m9pg4yn7cpf7g7239r77s"; + sha256 = "039agw5rqvqny92cpkrfn243x2gd4xn13hs3xi6isk55d2vqqr9n"; }; configureFlags = if static then "" else "--shared"; From 6b78544addd4f46f7ad073fb7de83d0bb8b8de30 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Sat, 4 May 2013 19:38:46 -0400 Subject: [PATCH 084/286] binutils: enable gold by default This doesn't change the default but makes gold available to packages that might want to use it. Required switching to the gzipped tarball for bison, as xz isn't available in the early bootstrap. Signed-off-by: Shea Levy --- pkgs/development/tools/misc/binutils/default.nix | 2 +- pkgs/development/tools/parsing/bison/default.nix | 4 ++-- pkgs/top-level/all-packages.nix | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index e1afceebaa2..ad3b4ae2b27 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, noSysDirs, zlib, cross ? null, gold ? false, bison ? null, flex2535 ? null, bc ? null, dejagnu ? null }: +{ stdenv, fetchurl, noSysDirs, zlib, cross ? null, gold ? true, bison ? null, flex2535 ? null, bc ? null, dejagnu ? null }: let basename = "binutils-2.23.1"; in stdenv.mkDerivation rec { diff --git a/pkgs/development/tools/parsing/bison/default.nix b/pkgs/development/tools/parsing/bison/default.nix index 4e4539059a6..c1de3315bee 100644 --- a/pkgs/development/tools/parsing/bison/default.nix +++ b/pkgs/development/tools/parsing/bison/default.nix @@ -4,8 +4,8 @@ stdenv.mkDerivation rec { name = "bison-2.7"; src = fetchurl { - url = "mirror://gnu/bison/${name}.tar.xz"; - sha256 = "1zd77ilmpv5mi3kr55jrj6ncqlcnyhpianhrwzak2q28cv2cbn23"; + url = "mirror://gnu/bison/${name}.tar.gz"; + sha256 = "0cd8s2g7zjshya7kwjc9rh3drsssl4hiq4sccnkgf0nn9wvygfqr"; }; nativeBuildInputs = [ m4 ] ++ stdenv.lib.optional doCheck perl; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c43449d1956..ec7a2a90715 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3093,9 +3093,9 @@ let inherit noSysDirs; }; - binutils_gold = lowPrio (callPackage ../development/tools/misc/binutils { + binutils_nogold = lowPrio (callPackage ../development/tools/misc/binutils { inherit noSysDirs; - gold = true; + gold = false; }); binutilsCross = lowPrio (forceNativeDrv (import ../development/tools/misc/binutils { From 986f36194650e2a41451cbfb9f29ce1c66a62df3 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Sun, 5 May 2013 11:30:34 -0400 Subject: [PATCH 085/286] linux/bootstrap: Use to get the static binaries Since nix-1.4, nix's corepkgs contain a fetchurl suitable for downloading the bootstrap binaries. Doing this will allow us to have a nixpkgs with no in-tree binaries without breaking the purity of the bootstrap (though for now, they are fetched in-tree until the binaries are added to nixos.org somewhere). As an additional small benefit, the in-tree binaries do not have to be hashed on every instantiation as they do now. The fetchurl in nix-1.2 and 1.3 isn't able to make binaries executable, so it can't be used for this case. In that case, attempting to build the bootstrap will show a message asking the user to manually download each file and add it to the store with nix-store --add (but the hash is ultimately the same, of course). Signed-off-by: Shea Levy --- .../linux/bootstrap/armv5tel/default.nix | 69 ++++++++++++++++-- .../stdenv/linux/bootstrap/armv6l/default.nix | 10 +-- pkgs/stdenv/linux/bootstrap/i686/default.nix | 70 +++++++++++++++++-- .../linux/bootstrap/loongson2f/default.nix | 70 +++++++++++++++++-- .../linux/bootstrap/powerpc/default.nix | 64 +++++++++++++++-- 5 files changed, 249 insertions(+), 34 deletions(-) diff --git a/pkgs/stdenv/linux/bootstrap/armv5tel/default.nix b/pkgs/stdenv/linux/bootstrap/armv5tel/default.nix index 3a8a03e5a54..342a612d218 100644 --- a/pkgs/stdenv/linux/bootstrap/armv5tel/default.nix +++ b/pkgs/stdenv/linux/bootstrap/armv5tel/default.nix @@ -1,10 +1,65 @@ -{ - sh = ./sh; - bzip2 = ./bzip2; - mkdir = ./mkdir; - cpio = ./cpio; - ln = ./ln; - curl = ./curl.bz2; +let fetch = { file, sha256 }: + let + nixFetchurl = import ; + args = { + url = "file://${builtins.toString ./.}/${file}"; + inherit sha256; + executable = true; + }; + in if (builtins.functionArgs nixFetchurl) ? executable + then nixFetchurl args + else derivation { + name = file; + builder = "/bin/sh"; + + system = builtins.currentSystem; + + args = [ "-c" "echo $message; exit 1" ]; + + message = '' + Sorry, this version of nix cannot download all of the bootstrap tools. + Please download ${args.url}, make it executable, add it to the store + with `nix-store --add', and try again. + ''; + + outputHashAlgo = "sha256"; + + outputHash = args.sha256; + + outputHashMode = "recursive"; + + preferLocalBuild = true; + }; +in { + sh = fetch { + file = "sh"; + sha256 = "1kv3gc8h209rjc5i0rzzc4pjxq23kzq25iff89in05c9vl20mn4n"; + }; + + bzip2 = fetch { + file = "bzip2"; + sha256 = "090jrj099wl33q0iq092iljilam39pv8acli59m2af0fa9z0d9f0"; + }; + + mkdir = fetch { + file = "mkdir"; + sha256 = "01s8myfvi559dsxvbanxw71vxzjv49k4gi1qh0ak6l0qx0xq602b"; + }; + + cpio = fetch { + file = "cpio"; + sha256 = "07snc8l0mn84w2xrvdmc5yfpmlbrvl2bar8wipbpvm43nzz2qbzs"; + }; + + ln = fetch { + file = "ln"; + sha256 = "0m9fz02bashpfgwfkxmrp4wa8a5r3il52bclvf6z36vsam0vx56d"; + }; + + curl = fetch { + file = "curl.bz2"; + sha256 = "19yqdjqi31zlnqn8ss2ml60iq2a1vrwfw6dmvjqp6qbxmh7yb8n8"; + }; bootstrapTools = { url = "http://nixos.org/tarballs/stdenv-linux/armv5tel/r18744/bootstrap-tools.cpio.bz2"; diff --git a/pkgs/stdenv/linux/bootstrap/armv6l/default.nix b/pkgs/stdenv/linux/bootstrap/armv6l/default.nix index ecda6be8bd3..542f74de49f 100644 --- a/pkgs/stdenv/linux/bootstrap/armv6l/default.nix +++ b/pkgs/stdenv/linux/bootstrap/armv6l/default.nix @@ -1,11 +1,7 @@ -{ - sh = ../armv5tel/sh; - bzip2 = ../armv5tel/bzip2; - mkdir = ../armv5tel/mkdir; - cpio = ../armv5tel/cpio; - ln = ../armv5tel/ln; - curl = ../armv5tel/curl.bz2; +# Use the static tools for armv5tel-linux. +(import ../armv5tel) // +{ bootstrapTools = { # Built from make-bootstrap-tools-crosspi.nix # nixpkgs rev eb0422e4c1263a65a9b2b954fe10a1e03d67db3e diff --git a/pkgs/stdenv/linux/bootstrap/i686/default.nix b/pkgs/stdenv/linux/bootstrap/i686/default.nix index 1d709766bfd..0dee92d2249 100644 --- a/pkgs/stdenv/linux/bootstrap/i686/default.nix +++ b/pkgs/stdenv/linux/bootstrap/i686/default.nix @@ -1,10 +1,66 @@ -{ - sh = ./sh; - bzip2 = ./bzip2; - mkdir = ./mkdir; - cpio = ./cpio; - ln = ./ln; - curl = ./curl.bz2; +let + fetch = { file, sha256 }: + let + nixFetchurl = import ; + args = { + url = "file://${builtins.toString ./.}/${file}"; + inherit sha256; + executable = true; + }; + in if (builtins.functionArgs nixFetchurl) ? executable + then nixFetchurl args + else derivation { + name = file; + builder = "/bin/sh"; + + system = builtins.currentSystem; + + args = [ "-c" "echo $message; exit 1" ]; + + message = '' + Sorry, this version of nix cannot download all of the bootstrap tools. + Please download ${args.url}, make it executable, add it to the store + with `nix-store --add', and try again. + ''; + + outputHashAlgo = "sha256"; + + outputHash = args.sha256; + + outputHashMode = "recursive"; + + preferLocalBuild = true; + }; +in { + sh = fetch { + file = "sh"; + sha256 = "1l6sdhyqjlh4m5gj3pfpi8aisp1m012lpwxfcc4v1x8g429mflmy"; + }; + + bzip2 = fetch { + file = "bzip2"; + sha256 = "1p5nkrdn52jm6rsx8x3wwjpsh83f2qsjl1qckkgnkplwhj23zjp7"; + }; + + mkdir = fetch { + file = "mkdir"; + sha256 = "02ff7i9ph9ahiapsg2v9c3pwr7sl73sk4n7ic112ljkrgwkail33"; + }; + + cpio = fetch { + file = "cpio"; + sha256 = "046if3aqqramyhrn2yxrjf4bfkl8x1bcqxhvi7ml9nrv9smx8irg"; + }; + + ln = fetch { + file = "ln"; + sha256 = "06vr474i3x55p0rnqa87yx7dzf4qdfpfg201mks39id43cjm9f8j"; + }; + + curl = fetch { + file = "curl.bz2"; + sha256 = "1v0yfb4gcdyqpl2fxlxjh337r28c23iqm7vwck4p4643xd55di7q"; + }; bootstrapTools = { url = http://nixos.org/tarballs/stdenv-linux/i686/r24519/bootstrap-tools.cpio.bz2; diff --git a/pkgs/stdenv/linux/bootstrap/loongson2f/default.nix b/pkgs/stdenv/linux/bootstrap/loongson2f/default.nix index b0ad8d6545d..4d7594f02ad 100644 --- a/pkgs/stdenv/linux/bootstrap/loongson2f/default.nix +++ b/pkgs/stdenv/linux/bootstrap/loongson2f/default.nix @@ -1,10 +1,66 @@ -{ - sh = ./sh; - bzip2 = ./bzip2; - mkdir = ./mkdir; - cpio = ./cpio; - ln = ./ln; - curl = ./curl.bz2; +let + fetch = { file, sha256 }: + let + nixFetchurl = import ; + args = { + url = "file://${builtins.toString ./.}/${file}"; + inherit sha256; + executable = true; + }; + in if (builtins.functionArgs nixFetchurl) ? executable + then nixFetchurl args + else derivation { + name = file; + builder = "/bin/sh"; + + system = builtins.currentSystem; + + args = [ "-c" "echo $message; exit 1" ]; + + message = '' + Sorry, this version of nix cannot download all of the bootstrap tools. + Please download ${args.url}, make it executable, add it to the store + with `nix-store --add', and try again. + ''; + + outputHashAlgo = "sha256"; + + outputHash = args.sha256; + + outputHashMode = "recursive"; + + preferLocalBuild = true; + }; +in { + sh = fetch { + file = "sh"; + sha256 = "02jjl49wdq85pgh61aqf78yaknn9mi3rcspbpk7hs9c4mida2rhf"; + }; + + bzip2 = fetch { + file = "bzip2"; + sha256 = "1qn27y3amj9c6mnjk2kyb59y0d2w4yv16z9apaxx91hyq19gf29z"; + }; + + mkdir = fetch { + file = "mkdir"; + sha256 = "1vbp2bv9hkyb2fwl8hjrffpywn1wrl1kc4yrwi2lirawlnc6kymh"; + }; + + cpio = fetch { + file = "cpio"; + sha256 = "0mqxwdx0sl7skxx6049mk35l7d0fnibqsv174284kdp4p7iixwa0"; + }; + + ln = fetch { + file = "ln"; + sha256 = "05lwx8qvga3yv8xhs8bjgsfygsfrcxsfck0lxw6gsdckx25fgi7s"; + }; + + curl = fetch { + file = "curl.bz2"; + sha256 = "0iblnz4my54gryac04i64fn3ksi9g3dx96yjq93fj39z6kx6151c"; + }; bootstrapTools = { url = "http://nixos.org/tarballs/stdenv-linux/loongson2f/r22849/cross-bootstrap-tools.cpio.bz2"; diff --git a/pkgs/stdenv/linux/bootstrap/powerpc/default.nix b/pkgs/stdenv/linux/bootstrap/powerpc/default.nix index 61f7f863512..59fa47561dd 100644 --- a/pkgs/stdenv/linux/bootstrap/powerpc/default.nix +++ b/pkgs/stdenv/linux/bootstrap/powerpc/default.nix @@ -1,9 +1,61 @@ -{ - bash = ./bash; - bzip2 = ./bzip2; - cp = ./cp; - curl = ./curl.bz2; - tar = ./tar.bz2; +let + fetch = { file, sha256 }: + let + nixFetchurl = import ; + args = { + url = "file://${builtins.toString ./.}/${file}"; + inherit sha256; + executable = true; + }; + in if (builtins.functionArgs nixFetchurl) ? executable + then nixFetchurl args + else derivation { + name = file; + builder = "/bin/sh"; + + system = builtins.currentSystem; + + args = [ "-c" "echo $message; exit 1" ]; + + message = '' + Sorry, this version of nix cannot download all of the bootstrap tools. + Please download ${args.url}, make it executable, add it to the store + with `nix-store --add', and try again. + ''; + + outputHashAlgo = "sha256"; + + outputHash = args.sha256; + + outputHashMode = "recursive"; + + preferLocalBuild = true; + }; +in { + bash = fetch { + file = "bash"; + sha256 = "0zss8im6hbx6z2i2wxn1554kd7ggdqdli4xk39cy5fchlnz9bqpp"; + }; + + bzip2 = fetch { + file = "bzip2"; + sha256 = "01ylj8x7albv6k9sqx2h1prsazh4d8y22nga0pwai2bnns0q9qdg"; + }; + + cp = fetch { + file = "cp"; + sha256 = "0d7xbzrv22bxgw7w9b03rakirna5zfvr9gzwm7ichd2fh634hvgl"; + }; + + curl = fetch { + file = "curl.bz2"; + sha256 = "17c25dfslw3qkjlcmihpbhn3x4kj9pgkslizv89ggnki7iiy4jgh"; + }; + + tar = fetch { + file = "tar.bz2"; + sha256 = "132ylqwz02hw5njqx7wvj4sxpcrllx8b8b3a00rlv6iad671ayyr"; + }; staticToolsURL = { url = http://nixos.org/tarballs/stdenv-linux/powerpc/r9828/static-tools.tar.bz2; From 303c3a9fbf7fd5a95f7aab7a00b4a9ba92a8e304 Mon Sep 17 00:00:00 2001 From: Domen Kozar Date: Sun, 26 May 2013 13:22:55 +0200 Subject: [PATCH 086/286] unzip: add bzip2 as native build input Signed-off-by: Domen Kozar --- pkgs/tools/archivers/unzip/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/tools/archivers/unzip/default.nix b/pkgs/tools/archivers/unzip/default.nix index 8309a2102ab..f939c968c44 100644 --- a/pkgs/tools/archivers/unzip/default.nix +++ b/pkgs/tools/archivers/unzip/default.nix @@ -9,6 +9,7 @@ stdenv.mkDerivation ({ sha256 = "0dxx11knh3nk95p2gg2ak777dd11pr7jx5das2g49l262scrcv83"; }; + nativeBuildInputs = [ bzip2 ]; buildInputs = [ bzip2 ] ++ stdenv.lib.optional enableNLS libnatspec; makefile = "unix/Makefile"; From 8326038d2b59886a8d0ec55762e919033ba909fc Mon Sep 17 00:00:00 2001 From: Gergely Risko Date: Fri, 24 May 2013 00:56:00 +0200 Subject: [PATCH 087/286] Add ncursesw compatibility link also for includes This is needed for the ncurses cabal package to compile. It uses include/ncursesw/curses.h, without trying include/curses.h first. The files are provided through include/ncursesw on a clean Debian too, in the unicode case (when the libncursesw5-dev is installed). Signed-off-by: Domen Kozar --- pkgs/development/libraries/ncurses/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 378abb81295..8d20a7339b7 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -48,6 +48,7 @@ stdenv.mkDerivation (rec { ln -svf lib''${lib}w.so.5 $out/lib/lib$lib.so.5 fi done; + ln -svf . $out/include/ncursesw '' else ""; meta = { From f7ef08e5cd986f89c3ac4baf3d1dab3bce2b1b4c Mon Sep 17 00:00:00 2001 From: Marc Weber Date: Tue, 28 May 2013 16:22:45 +0200 Subject: [PATCH 088/286] experimental/cmake-improvement set CMAKE_LIBRARY_PATH, CMAKE_INCLUDE_PATH based on NIX_CFLAGS_COMPILE and NIX_LDFLAGS so that cmake's find_library like functions find all the libraries gcc knows about thanks to the gcc wrapper This is particular useful with myEnvFun which then also sets those CMAKE_* env variables.` Because setup.sh has to change this causes many rebuilds - thus it should be included in a stdenv-update like branch Also cmake builds in parallel perfectly fine update cmake to latest minor number, I didn't change the patches, just reapplied them manually recordin a new patch --- .../tools/build-managers/cmake/default.nix | 6 +- .../build-managers/cmake/search-path.patch | 72 ++++++++++--------- .../tools/build-managers/cmake/setup-hook.sh | 17 +++++ pkgs/stdenv/generic/setup.sh | 4 ++ 4 files changed, 62 insertions(+), 37 deletions(-) diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix index d66149a9509..d4e5fa00a51 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 = "9"; + minorVersion = "11"; version = "${majorVersion}.${minorVersion}"; in @@ -18,9 +18,11 @@ stdenv.mkDerivation rec { src = fetchurl { url = "${meta.homepage}files/v${majorVersion}/cmake-${version}.tar.gz"; - sha256 = "1yg68ng732cfm5c0h91chqwhg06zdh45bybm353kd1myk5rwqgfw"; + sha256 = "1rgfgzigmc0b2z5330r3ncf003k4bhqwfxbskv0q5ylp2xkd7l10"; }; + enableParallelBuilding = true; + patches = # Don't search in non-Nix locations such as /usr, but do search in # Nixpkgs' Glibc. diff --git a/pkgs/development/tools/build-managers/cmake/search-path.patch b/pkgs/development/tools/build-managers/cmake/search-path.patch index ef8a9eef7c1..31c85d6f522 100644 --- a/pkgs/development/tools/build-managers/cmake/search-path.patch +++ b/pkgs/development/tools/build-managers/cmake/search-path.patch @@ -1,41 +1,43 @@ -diff -ru -x '*~' cmake-2.8.5-orig/Modules/Platform/Linux.cmake cmake-2.8.5/Modules/Platform/Linux.cmake ---- cmake-2.8.5-orig/Modules/Platform/Linux.cmake 2011-07-08 14:21:44.000000000 +0200 -+++ cmake-2.8.5/Modules/Platform/Linux.cmake 2011-07-21 19:45:00.000000000 +0200 -@@ -36,13 +36,13 @@ +diff --git a/Modules/Platform/Linux.cmake b/Modules/Platform/Linux.cmake +index fe8e003..378512c 100644 +--- a/Modules/Platform/Linux.cmake ++++ b/Modules/Platform/Linux.cmake +@@ -36,13 +36,13 @@ else() # checking the platform every time. This option is advanced enough # that only package maintainers should need to adjust it. They are # capable of providing a setting on the command line. -- IF(EXISTS "/etc/debian_version") -- SET(CMAKE_INSTALL_SO_NO_EXE 1 CACHE INTERNAL +- if(EXISTS "/etc/debian_version") +- set(CMAKE_INSTALL_SO_NO_EXE 1 CACHE INTERNAL - "Install .so files without execute permission.") -- ELSE(EXISTS "/etc/debian_version") -+ #IF(EXISTS "/etc/debian_version") -+ # SET(CMAKE_INSTALL_SO_NO_EXE 1 CACHE INTERNAL -+ # "Install .so files without execute permission.") -+ #ELSE(EXISTS "/etc/debian_version") - SET(CMAKE_INSTALL_SO_NO_EXE 0 CACHE INTERNAL +- else() ++ # if(EXISTS "/etc/debian_version") ++ # set(CMAKE_INSTALL_SO_NO_EXE 1 CACHE INTERNAL ++ # "Install .so files without execute permission.") ++ # else() + set(CMAKE_INSTALL_SO_NO_EXE 0 CACHE INTERNAL "Install .so files without execute permission.") -- ENDIF(EXISTS "/etc/debian_version") -+ #ENDIF(EXISTS "/etc/debian_version") - ENDIF(DEFINED CMAKE_INSTALL_SO_NO_EXE) +- endif() ++ # endif() + endif() # Match multiarch library directory names. -@@ -52,6 +52,6 @@ +@@ -52,6 +52,6 @@ include(Platform/UnixPaths) # Debian has lib64 paths only for compatibility so they should not be # searched. --IF(EXISTS "/etc/debian_version") -- SET_PROPERTY(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE) --ENDIF(EXISTS "/etc/debian_version") -+#IF(EXISTS "/etc/debian_version") -+# SET_PROPERTY(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE) -+#ENDIF(EXISTS "/etc/debian_version") -diff -ru -x '*~' cmake-2.8.5-orig/Modules/Platform/UnixPaths.cmake cmake-2.8.5/Modules/Platform/UnixPaths.cmake ---- cmake-2.8.5-orig/Modules/Platform/UnixPaths.cmake 2011-07-08 14:21:44.000000000 +0200 -+++ cmake-2.8.5/Modules/Platform/UnixPaths.cmake 2011-07-21 19:50:52.000000000 +0200 -@@ -33,55 +33,18 @@ +-if(EXISTS "/etc/debian_version") +- set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE) +-endif() ++# if(EXISTS "/etc/debian_version") ++# set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE) ++#endif() +diff --git a/Modules/Platform/UnixPaths.cmake b/Modules/Platform/UnixPaths.cmake +index ccb2663..39834e6 100644 +--- a/Modules/Platform/UnixPaths.cmake ++++ b/Modules/Platform/UnixPaths.cmake +@@ -33,55 +33,18 @@ get_filename_component(_CMAKE_INSTALL_DIR "${_CMAKE_INSTALL_DIR}" PATH) # search types. - LIST(APPEND CMAKE_SYSTEM_PREFIX_PATH + list(APPEND CMAKE_SYSTEM_PREFIX_PATH # Standard - /usr/local /usr / - @@ -47,7 +49,7 @@ diff -ru -x '*~' cmake-2.8.5-orig/Modules/Platform/UnixPaths.cmake cmake-2.8.5/M - ) - -# List common include file locations not under the common prefixes. --LIST(APPEND CMAKE_SYSTEM_INCLUDE_PATH +-list(APPEND CMAKE_SYSTEM_INCLUDE_PATH - # Windows API on Cygwin - /usr/include/w32api - @@ -56,11 +58,11 @@ diff -ru -x '*~' cmake-2.8.5-orig/Modules/Platform/UnixPaths.cmake cmake-2.8.5/M - - # Other - /usr/pkg/include -- /opt/csw/include /opt/include +- /opt/csw/include /opt/include - /usr/openwin/include - ) - --LIST(APPEND CMAKE_SYSTEM_LIBRARY_PATH +-list(APPEND CMAKE_SYSTEM_LIBRARY_PATH - # Windows API on Cygwin - /usr/lib/w32api - @@ -69,25 +71,25 @@ diff -ru -x '*~' cmake-2.8.5-orig/Modules/Platform/UnixPaths.cmake cmake-2.8.5/M - - # Other - /usr/pkg/lib -- /opt/csw/lib /opt/lib +- /opt/csw/lib /opt/lib - /usr/openwin/lib - ) - --LIST(APPEND CMAKE_SYSTEM_PROGRAM_PATH +-list(APPEND CMAKE_SYSTEM_PROGRAM_PATH - /usr/pkg/bin + "@glibc@" ) - LIST(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES + list(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES - /lib /usr/lib /usr/lib32 /usr/lib64 + "@glibc@/lib" ) - LIST(APPEND CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES + list(APPEND CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES - /usr/include + "@glibc@/include" ) - LIST(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES + list(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES - /usr/include + "@glibc@/include" ) diff --git a/pkgs/development/tools/build-managers/cmake/setup-hook.sh b/pkgs/development/tools/build-managers/cmake/setup-hook.sh index 175e538e519..d324d1f1815 100755 --- a/pkgs/development/tools/build-managers/cmake/setup-hook.sh +++ b/pkgs/development/tools/build-managers/cmake/setup-hook.sh @@ -56,3 +56,20 @@ if [ -n "$crossConfig" ]; then else envHooks+=(addCMakeParams) fi + +make_cmake_find_libs(){ + for flag in $NIX_CFLAGS_COMPILE $NIX_LDFLAGS; do + case $flag in + -I*) + export CMAKE_INCLUDE_PATH="$CMAKE_INCLUDE_PATH${CMAKE_INCLUDE_PATH:+:}${flag:2}" + ;; + -L*) + export CMAKE_LIBRARY_PATH="$CMAKE_LIBRARY_PATH${CMAKE_LIBRARY_PATH:+:}${flag:2}" + ;; + esac + done +} + +# not using setupHook, because it could be a setupHook adding additional +# include flags to NIX_CFLAGS_COMPILE +postHooks+=(make_cmake_find_libs) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index a474b6a8eaf..a80a5ab743c 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -862,6 +862,10 @@ genericBuild() { stopNest } +for i in "${postHooks[@]}"; do + $i +done + # Execute the post-hook. runHook postHook From d4bcbbaba699af5fc96daae4c2afa627ca53f8a1 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sat, 1 Jun 2013 12:41:34 +0200 Subject: [PATCH 089/286] gcc: update from 4.8.0 to 4.8.1 --- pkgs/development/compilers/gcc/4.8/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index b260c1e97ef..1435277c105 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -52,7 +52,7 @@ assert langGo -> langCC; with stdenv.lib; with builtins; -let version = "4.8.0"; +let version = "4.8.1"; # Whether building a cross-compiler for GNU/Hurd. crossGNU = cross != null && cross.config == "i586-pc-gnu"; @@ -200,7 +200,7 @@ stdenv.mkDerivation ({ src = fetchurl { url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2"; - sha256 = "0b6cp9d1sas3vq6dj3zrgd134p9b569fqhbixb9cl7mp698zwdxh"; + sha256 = "04sqn0ds17ys8l6zn7vyyvjz1a7hsk4zb0381vlw9wnr7az48nsl"; }; inherit patches; From 2a0479fc4817b9dee1c153e646d87cb9799073e2 Mon Sep 17 00:00:00 2001 From: Petr Rockai Date: Thu, 16 May 2013 06:52:52 +0200 Subject: [PATCH 090/286] glibc: Enable kernels down to 2.6.32 (required for RHEL 6). --- pkgs/development/libraries/glibc/2.17/common.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/glibc/2.17/common.nix b/pkgs/development/libraries/glibc/2.17/common.nix index 413a0d7aae8..23ec1c46ad7 100644 --- a/pkgs/development/libraries/glibc/2.17/common.nix +++ b/pkgs/development/libraries/glibc/2.17/common.nix @@ -81,7 +81,7 @@ stdenv.mkDerivation ({ then "--enable-profile" else "--disable-profile") ] ++ stdenv.lib.optionals (cross == null && kernelHeaders != null) [ - "--enable-kernel=2.6.35" + "--enable-kernel=2.6.32" ] ++ stdenv.lib.optionals (cross != null) [ (if cross.withTLS then "--with-tls" else "--without-tls") (if cross.float == "soft" then "--without-fp" else "--with-fp") From aa2044099d33b62f0d194d46264c0be3de06bea0 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 3 Jun 2013 22:16:05 +0200 Subject: [PATCH 091/286] glibc: add "/run/current-system/sw/bin" to the default search path returned by "getconf CS_PATH" --- pkgs/development/libraries/glibc/2.17/common.nix | 5 +++++ .../glibc/2.17/fix_path_attribute_in_getconf.patch | 6 ++++++ 2 files changed, 11 insertions(+) create mode 100644 pkgs/development/libraries/glibc/2.17/fix_path_attribute_in_getconf.patch diff --git a/pkgs/development/libraries/glibc/2.17/common.nix b/pkgs/development/libraries/glibc/2.17/common.nix index 23ec1c46ad7..1bc439b5e9b 100644 --- a/pkgs/development/libraries/glibc/2.17/common.nix +++ b/pkgs/development/libraries/glibc/2.17/common.nix @@ -55,6 +55,11 @@ stdenv.mkDerivation ({ rfc3484_sort: Assertion `src->results[i].native == -1 || src->results[i].native == a2_native' failed." crashes. */ ./glibc-rh739743.patch + + /* The command "getconf CS_PATH" returns the default search path + "/bin:/usr/bin", which is inappropriate on NixOS machines. This + patch extends the search path by "/run/current-system/sw/bin". */ + ./fix_path_attribute_in_getconf.patch ]; postPatch = '' diff --git a/pkgs/development/libraries/glibc/2.17/fix_path_attribute_in_getconf.patch b/pkgs/development/libraries/glibc/2.17/fix_path_attribute_in_getconf.patch new file mode 100644 index 00000000000..714e49db560 --- /dev/null +++ b/pkgs/development/libraries/glibc/2.17/fix_path_attribute_in_getconf.patch @@ -0,0 +1,6 @@ +diff -ubr glibc-2.17-orig/sysdeps/unix/confstr.h glibc-2.17/sysdeps/unix/confstr.h +--- glibc-2.17-orig/sysdeps/unix/confstr.h 2013-06-03 22:01:44.829726968 +0200 ++++ glibc-2.17/sysdeps/unix/confstr.h 2013-06-03 22:04:39.469376740 +0200 +@@ -1 +1 @@ +-#define CS_PATH "/bin:/usr/bin" ++#define CS_PATH "/run/current-system/sw/bin:/bin:/usr/bin" From a3cc98019306d017452379899d784a6037a537c1 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Tue, 11 Jun 2013 11:55:52 +0200 Subject: [PATCH 092/286] groff: explicitly disable X11 support in configure to avoid impure builds Without this flag, the configure script will find /usr/X11 on host system and assume that it can build with X11 support. --- pkgs/tools/text/groff/default.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/tools/text/groff/default.nix b/pkgs/tools/text/groff/default.nix index 90c5ef0ba81..6a11882fdc9 100644 --- a/pkgs/tools/text/groff/default.nix +++ b/pkgs/tools/text/groff/default.nix @@ -11,6 +11,13 @@ stdenv.mkDerivation rec { buildInputs = [ ghostscript ]; nativeBuildInputs = [ perl ]; + # Builds running without a chroot environment may detect the presence + # of /usr/X11 in the host system, leading to an impure build of the + # package. To avoid this issue, X11 support is explicitly disabled. + # Note: If we ever want to *enable* X11 support, then we'll probably + # have to pass "--with-appresdir", too. + configureFlags = "--without-x"; + doCheck = true; crossAttrs = { From b08e12b37ae9470c9d8eb8438c21adb8ddbae19e Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 17 Jun 2013 10:19:15 +0200 Subject: [PATCH 093/286] Revert "Merge pull request #567 from MarcWeber/submit/cmake-improvement" This reverts commit abc7591aaf3912d819401241d7d2339fb96441f3, reversing changes made to 6b1ebeccf2c9d9e8f68d7e21a1e55b5d91577683, because they broke half the packages in stdenv-updates: http://hydra.nixos.org/eval/927013 has further details. --- .../tools/build-managers/cmake/default.nix | 6 +- .../build-managers/cmake/search-path.patch | 72 +++++++++---------- .../tools/build-managers/cmake/setup-hook.sh | 17 ----- pkgs/stdenv/generic/setup.sh | 4 -- 4 files changed, 37 insertions(+), 62 deletions(-) diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix index d4e5fa00a51..d66149a9509 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 = "11"; + minorVersion = "9"; version = "${majorVersion}.${minorVersion}"; in @@ -18,11 +18,9 @@ stdenv.mkDerivation rec { src = fetchurl { url = "${meta.homepage}files/v${majorVersion}/cmake-${version}.tar.gz"; - sha256 = "1rgfgzigmc0b2z5330r3ncf003k4bhqwfxbskv0q5ylp2xkd7l10"; + sha256 = "1yg68ng732cfm5c0h91chqwhg06zdh45bybm353kd1myk5rwqgfw"; }; - enableParallelBuilding = true; - patches = # Don't search in non-Nix locations such as /usr, but do search in # Nixpkgs' Glibc. diff --git a/pkgs/development/tools/build-managers/cmake/search-path.patch b/pkgs/development/tools/build-managers/cmake/search-path.patch index 31c85d6f522..ef8a9eef7c1 100644 --- a/pkgs/development/tools/build-managers/cmake/search-path.patch +++ b/pkgs/development/tools/build-managers/cmake/search-path.patch @@ -1,43 +1,41 @@ -diff --git a/Modules/Platform/Linux.cmake b/Modules/Platform/Linux.cmake -index fe8e003..378512c 100644 ---- a/Modules/Platform/Linux.cmake -+++ b/Modules/Platform/Linux.cmake -@@ -36,13 +36,13 @@ else() +diff -ru -x '*~' cmake-2.8.5-orig/Modules/Platform/Linux.cmake cmake-2.8.5/Modules/Platform/Linux.cmake +--- cmake-2.8.5-orig/Modules/Platform/Linux.cmake 2011-07-08 14:21:44.000000000 +0200 ++++ cmake-2.8.5/Modules/Platform/Linux.cmake 2011-07-21 19:45:00.000000000 +0200 +@@ -36,13 +36,13 @@ # checking the platform every time. This option is advanced enough # that only package maintainers should need to adjust it. They are # capable of providing a setting on the command line. -- if(EXISTS "/etc/debian_version") -- set(CMAKE_INSTALL_SO_NO_EXE 1 CACHE INTERNAL +- IF(EXISTS "/etc/debian_version") +- SET(CMAKE_INSTALL_SO_NO_EXE 1 CACHE INTERNAL - "Install .so files without execute permission.") -- else() -+ # if(EXISTS "/etc/debian_version") -+ # set(CMAKE_INSTALL_SO_NO_EXE 1 CACHE INTERNAL -+ # "Install .so files without execute permission.") -+ # else() - set(CMAKE_INSTALL_SO_NO_EXE 0 CACHE INTERNAL +- ELSE(EXISTS "/etc/debian_version") ++ #IF(EXISTS "/etc/debian_version") ++ # SET(CMAKE_INSTALL_SO_NO_EXE 1 CACHE INTERNAL ++ # "Install .so files without execute permission.") ++ #ELSE(EXISTS "/etc/debian_version") + SET(CMAKE_INSTALL_SO_NO_EXE 0 CACHE INTERNAL "Install .so files without execute permission.") -- endif() -+ # endif() - endif() +- ENDIF(EXISTS "/etc/debian_version") ++ #ENDIF(EXISTS "/etc/debian_version") + ENDIF(DEFINED CMAKE_INSTALL_SO_NO_EXE) # Match multiarch library directory names. -@@ -52,6 +52,6 @@ include(Platform/UnixPaths) +@@ -52,6 +52,6 @@ # Debian has lib64 paths only for compatibility so they should not be # searched. --if(EXISTS "/etc/debian_version") -- set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE) --endif() -+# if(EXISTS "/etc/debian_version") -+# set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE) -+#endif() -diff --git a/Modules/Platform/UnixPaths.cmake b/Modules/Platform/UnixPaths.cmake -index ccb2663..39834e6 100644 ---- a/Modules/Platform/UnixPaths.cmake -+++ b/Modules/Platform/UnixPaths.cmake -@@ -33,55 +33,18 @@ get_filename_component(_CMAKE_INSTALL_DIR "${_CMAKE_INSTALL_DIR}" PATH) +-IF(EXISTS "/etc/debian_version") +- SET_PROPERTY(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE) +-ENDIF(EXISTS "/etc/debian_version") ++#IF(EXISTS "/etc/debian_version") ++# SET_PROPERTY(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE) ++#ENDIF(EXISTS "/etc/debian_version") +diff -ru -x '*~' cmake-2.8.5-orig/Modules/Platform/UnixPaths.cmake cmake-2.8.5/Modules/Platform/UnixPaths.cmake +--- cmake-2.8.5-orig/Modules/Platform/UnixPaths.cmake 2011-07-08 14:21:44.000000000 +0200 ++++ cmake-2.8.5/Modules/Platform/UnixPaths.cmake 2011-07-21 19:50:52.000000000 +0200 +@@ -33,55 +33,18 @@ # search types. - list(APPEND CMAKE_SYSTEM_PREFIX_PATH + LIST(APPEND CMAKE_SYSTEM_PREFIX_PATH # Standard - /usr/local /usr / - @@ -49,7 +47,7 @@ index ccb2663..39834e6 100644 - ) - -# List common include file locations not under the common prefixes. --list(APPEND CMAKE_SYSTEM_INCLUDE_PATH +-LIST(APPEND CMAKE_SYSTEM_INCLUDE_PATH - # Windows API on Cygwin - /usr/include/w32api - @@ -58,11 +56,11 @@ index ccb2663..39834e6 100644 - - # Other - /usr/pkg/include -- /opt/csw/include /opt/include +- /opt/csw/include /opt/include - /usr/openwin/include - ) - --list(APPEND CMAKE_SYSTEM_LIBRARY_PATH +-LIST(APPEND CMAKE_SYSTEM_LIBRARY_PATH - # Windows API on Cygwin - /usr/lib/w32api - @@ -71,25 +69,25 @@ index ccb2663..39834e6 100644 - - # Other - /usr/pkg/lib -- /opt/csw/lib /opt/lib +- /opt/csw/lib /opt/lib - /usr/openwin/lib - ) - --list(APPEND CMAKE_SYSTEM_PROGRAM_PATH +-LIST(APPEND CMAKE_SYSTEM_PROGRAM_PATH - /usr/pkg/bin + "@glibc@" ) - list(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES + LIST(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES - /lib /usr/lib /usr/lib32 /usr/lib64 + "@glibc@/lib" ) - list(APPEND CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES + LIST(APPEND CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES - /usr/include + "@glibc@/include" ) - list(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES + LIST(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES - /usr/include + "@glibc@/include" ) diff --git a/pkgs/development/tools/build-managers/cmake/setup-hook.sh b/pkgs/development/tools/build-managers/cmake/setup-hook.sh index d324d1f1815..175e538e519 100755 --- a/pkgs/development/tools/build-managers/cmake/setup-hook.sh +++ b/pkgs/development/tools/build-managers/cmake/setup-hook.sh @@ -56,20 +56,3 @@ if [ -n "$crossConfig" ]; then else envHooks+=(addCMakeParams) fi - -make_cmake_find_libs(){ - for flag in $NIX_CFLAGS_COMPILE $NIX_LDFLAGS; do - case $flag in - -I*) - export CMAKE_INCLUDE_PATH="$CMAKE_INCLUDE_PATH${CMAKE_INCLUDE_PATH:+:}${flag:2}" - ;; - -L*) - export CMAKE_LIBRARY_PATH="$CMAKE_LIBRARY_PATH${CMAKE_LIBRARY_PATH:+:}${flag:2}" - ;; - esac - done -} - -# not using setupHook, because it could be a setupHook adding additional -# include flags to NIX_CFLAGS_COMPILE -postHooks+=(make_cmake_find_libs) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index a80a5ab743c..a474b6a8eaf 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -862,10 +862,6 @@ genericBuild() { stopNest } -for i in "${postHooks[@]}"; do - $i -done - # Execute the post-hook. runHook postHook From 83ec7aa92fab68b44f6e8a27b7398c19e49a307d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 21 Jun 2013 14:05:46 +0200 Subject: [PATCH 094/286] python: Remove --with-wctype-functions flag This causes functions like string.upper() to misbehave on non-ASCII characters. Upstream also advises against it: http://bugs.python.org/issue9210 http://bugs.python.org/issue11309 --- pkgs/development/interpreters/python/2.6/default.nix | 2 +- pkgs/development/interpreters/python/2.7/default.nix | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/python/2.6/default.nix b/pkgs/development/interpreters/python/2.6/default.nix index f264e4179e7..38060e9af33 100644 --- a/pkgs/development/interpreters/python/2.6/default.nix +++ b/pkgs/development/interpreters/python/2.6/default.nix @@ -45,7 +45,7 @@ let C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") buildInputs); LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") buildInputs); - configureFlags = "--enable-shared --with-threads --enable-unicode --with-wctype-functions"; + configureFlags = "--enable-shared --with-threads --enable-unicode"; preConfigure = '' diff --git a/pkgs/development/interpreters/python/2.7/default.nix b/pkgs/development/interpreters/python/2.7/default.nix index 7dc4708e3cf..78aaf4d7fdf 100644 --- a/pkgs/development/interpreters/python/2.7/default.nix +++ b/pkgs/development/interpreters/python/2.7/default.nix @@ -56,7 +56,7 @@ let C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") buildInputs); LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") buildInputs); - configureFlags = "--enable-shared --with-threads --enable-unicode --with-wctype-functions"; + configureFlags = "--enable-shared --with-threads --enable-unicode"; preConfigure = "${ensurePurity}" + optionalString stdenv.isCygwin '' From 7f1e09c35dbf48efb074208790a651693f061c13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 22 Jun 2013 13:58:30 +0200 Subject: [PATCH 095/286] Re-Revert "Merge pull request #567 from MarcWeber/submit/cmake-improvement" This reverts commit b08e12b37ae9470c9d8eb8438c21adb8ddbae19e. --- .../tools/build-managers/cmake/default.nix | 6 +- .../build-managers/cmake/search-path.patch | 72 ++++++++++--------- .../tools/build-managers/cmake/setup-hook.sh | 17 +++++ pkgs/stdenv/generic/setup.sh | 4 ++ 4 files changed, 62 insertions(+), 37 deletions(-) diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix index d66149a9509..d4e5fa00a51 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 = "9"; + minorVersion = "11"; version = "${majorVersion}.${minorVersion}"; in @@ -18,9 +18,11 @@ stdenv.mkDerivation rec { src = fetchurl { url = "${meta.homepage}files/v${majorVersion}/cmake-${version}.tar.gz"; - sha256 = "1yg68ng732cfm5c0h91chqwhg06zdh45bybm353kd1myk5rwqgfw"; + sha256 = "1rgfgzigmc0b2z5330r3ncf003k4bhqwfxbskv0q5ylp2xkd7l10"; }; + enableParallelBuilding = true; + patches = # Don't search in non-Nix locations such as /usr, but do search in # Nixpkgs' Glibc. diff --git a/pkgs/development/tools/build-managers/cmake/search-path.patch b/pkgs/development/tools/build-managers/cmake/search-path.patch index ef8a9eef7c1..31c85d6f522 100644 --- a/pkgs/development/tools/build-managers/cmake/search-path.patch +++ b/pkgs/development/tools/build-managers/cmake/search-path.patch @@ -1,41 +1,43 @@ -diff -ru -x '*~' cmake-2.8.5-orig/Modules/Platform/Linux.cmake cmake-2.8.5/Modules/Platform/Linux.cmake ---- cmake-2.8.5-orig/Modules/Platform/Linux.cmake 2011-07-08 14:21:44.000000000 +0200 -+++ cmake-2.8.5/Modules/Platform/Linux.cmake 2011-07-21 19:45:00.000000000 +0200 -@@ -36,13 +36,13 @@ +diff --git a/Modules/Platform/Linux.cmake b/Modules/Platform/Linux.cmake +index fe8e003..378512c 100644 +--- a/Modules/Platform/Linux.cmake ++++ b/Modules/Platform/Linux.cmake +@@ -36,13 +36,13 @@ else() # checking the platform every time. This option is advanced enough # that only package maintainers should need to adjust it. They are # capable of providing a setting on the command line. -- IF(EXISTS "/etc/debian_version") -- SET(CMAKE_INSTALL_SO_NO_EXE 1 CACHE INTERNAL +- if(EXISTS "/etc/debian_version") +- set(CMAKE_INSTALL_SO_NO_EXE 1 CACHE INTERNAL - "Install .so files without execute permission.") -- ELSE(EXISTS "/etc/debian_version") -+ #IF(EXISTS "/etc/debian_version") -+ # SET(CMAKE_INSTALL_SO_NO_EXE 1 CACHE INTERNAL -+ # "Install .so files without execute permission.") -+ #ELSE(EXISTS "/etc/debian_version") - SET(CMAKE_INSTALL_SO_NO_EXE 0 CACHE INTERNAL +- else() ++ # if(EXISTS "/etc/debian_version") ++ # set(CMAKE_INSTALL_SO_NO_EXE 1 CACHE INTERNAL ++ # "Install .so files without execute permission.") ++ # else() + set(CMAKE_INSTALL_SO_NO_EXE 0 CACHE INTERNAL "Install .so files without execute permission.") -- ENDIF(EXISTS "/etc/debian_version") -+ #ENDIF(EXISTS "/etc/debian_version") - ENDIF(DEFINED CMAKE_INSTALL_SO_NO_EXE) +- endif() ++ # endif() + endif() # Match multiarch library directory names. -@@ -52,6 +52,6 @@ +@@ -52,6 +52,6 @@ include(Platform/UnixPaths) # Debian has lib64 paths only for compatibility so they should not be # searched. --IF(EXISTS "/etc/debian_version") -- SET_PROPERTY(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE) --ENDIF(EXISTS "/etc/debian_version") -+#IF(EXISTS "/etc/debian_version") -+# SET_PROPERTY(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE) -+#ENDIF(EXISTS "/etc/debian_version") -diff -ru -x '*~' cmake-2.8.5-orig/Modules/Platform/UnixPaths.cmake cmake-2.8.5/Modules/Platform/UnixPaths.cmake ---- cmake-2.8.5-orig/Modules/Platform/UnixPaths.cmake 2011-07-08 14:21:44.000000000 +0200 -+++ cmake-2.8.5/Modules/Platform/UnixPaths.cmake 2011-07-21 19:50:52.000000000 +0200 -@@ -33,55 +33,18 @@ +-if(EXISTS "/etc/debian_version") +- set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE) +-endif() ++# if(EXISTS "/etc/debian_version") ++# set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS FALSE) ++#endif() +diff --git a/Modules/Platform/UnixPaths.cmake b/Modules/Platform/UnixPaths.cmake +index ccb2663..39834e6 100644 +--- a/Modules/Platform/UnixPaths.cmake ++++ b/Modules/Platform/UnixPaths.cmake +@@ -33,55 +33,18 @@ get_filename_component(_CMAKE_INSTALL_DIR "${_CMAKE_INSTALL_DIR}" PATH) # search types. - LIST(APPEND CMAKE_SYSTEM_PREFIX_PATH + list(APPEND CMAKE_SYSTEM_PREFIX_PATH # Standard - /usr/local /usr / - @@ -47,7 +49,7 @@ diff -ru -x '*~' cmake-2.8.5-orig/Modules/Platform/UnixPaths.cmake cmake-2.8.5/M - ) - -# List common include file locations not under the common prefixes. --LIST(APPEND CMAKE_SYSTEM_INCLUDE_PATH +-list(APPEND CMAKE_SYSTEM_INCLUDE_PATH - # Windows API on Cygwin - /usr/include/w32api - @@ -56,11 +58,11 @@ diff -ru -x '*~' cmake-2.8.5-orig/Modules/Platform/UnixPaths.cmake cmake-2.8.5/M - - # Other - /usr/pkg/include -- /opt/csw/include /opt/include +- /opt/csw/include /opt/include - /usr/openwin/include - ) - --LIST(APPEND CMAKE_SYSTEM_LIBRARY_PATH +-list(APPEND CMAKE_SYSTEM_LIBRARY_PATH - # Windows API on Cygwin - /usr/lib/w32api - @@ -69,25 +71,25 @@ diff -ru -x '*~' cmake-2.8.5-orig/Modules/Platform/UnixPaths.cmake cmake-2.8.5/M - - # Other - /usr/pkg/lib -- /opt/csw/lib /opt/lib +- /opt/csw/lib /opt/lib - /usr/openwin/lib - ) - --LIST(APPEND CMAKE_SYSTEM_PROGRAM_PATH +-list(APPEND CMAKE_SYSTEM_PROGRAM_PATH - /usr/pkg/bin + "@glibc@" ) - LIST(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES + list(APPEND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES - /lib /usr/lib /usr/lib32 /usr/lib64 + "@glibc@/lib" ) - LIST(APPEND CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES + list(APPEND CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES - /usr/include + "@glibc@/include" ) - LIST(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES + list(APPEND CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES - /usr/include + "@glibc@/include" ) diff --git a/pkgs/development/tools/build-managers/cmake/setup-hook.sh b/pkgs/development/tools/build-managers/cmake/setup-hook.sh index 175e538e519..d324d1f1815 100755 --- a/pkgs/development/tools/build-managers/cmake/setup-hook.sh +++ b/pkgs/development/tools/build-managers/cmake/setup-hook.sh @@ -56,3 +56,20 @@ if [ -n "$crossConfig" ]; then else envHooks+=(addCMakeParams) fi + +make_cmake_find_libs(){ + for flag in $NIX_CFLAGS_COMPILE $NIX_LDFLAGS; do + case $flag in + -I*) + export CMAKE_INCLUDE_PATH="$CMAKE_INCLUDE_PATH${CMAKE_INCLUDE_PATH:+:}${flag:2}" + ;; + -L*) + export CMAKE_LIBRARY_PATH="$CMAKE_LIBRARY_PATH${CMAKE_LIBRARY_PATH:+:}${flag:2}" + ;; + esac + done +} + +# not using setupHook, because it could be a setupHook adding additional +# include flags to NIX_CFLAGS_COMPILE +postHooks+=(make_cmake_find_libs) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index a474b6a8eaf..a80a5ab743c 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -862,6 +862,10 @@ genericBuild() { stopNest } +for i in "${postHooks[@]}"; do + $i +done + # Execute the post-hook. runHook postHook From 3314be6b73f773df1a14f6c81b8076f0bfaf0852 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 27 Jun 2013 16:33:24 +0200 Subject: [PATCH 096/286] cmake: consistent names, to satisfy comments on #567 --- pkgs/development/tools/build-managers/cmake/setup-hook.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/build-managers/cmake/setup-hook.sh b/pkgs/development/tools/build-managers/cmake/setup-hook.sh index d324d1f1815..abc0b070a76 100755 --- a/pkgs/development/tools/build-managers/cmake/setup-hook.sh +++ b/pkgs/development/tools/build-managers/cmake/setup-hook.sh @@ -57,7 +57,7 @@ else envHooks+=(addCMakeParams) fi -make_cmake_find_libs(){ +makeCmakeFindLibs(){ for flag in $NIX_CFLAGS_COMPILE $NIX_LDFLAGS; do case $flag in -I*) @@ -72,4 +72,4 @@ make_cmake_find_libs(){ # not using setupHook, because it could be a setupHook adding additional # include flags to NIX_CFLAGS_COMPILE -postHooks+=(make_cmake_find_libs) +postHooks+=(makeCmakeFindLibs) From 173c9cbb63882f44d254762e84575184ae462b28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 27 Jun 2013 16:34:31 +0200 Subject: [PATCH 097/286] builder: fail if patch is missing or fails to unpack --- pkgs/stdenv/generic/setup.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index a80a5ab743c..534a1bb27af 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -544,7 +544,8 @@ patchPhase() { uncompress="lzma -d" ;; esac - $uncompress < $i | patch ${patchFlags:--p1} + # "2>&1" is a hack to make patch fail if the decompressor fails (nonexistent patch, etc.) + $uncompress < $i 2>&1 | patch ${patchFlags:--p1} stopNest done From af53fd451f89213c1ecb92ff153c9e8a2d3feaac Mon Sep 17 00:00:00 2001 From: James Cook Date: Tue, 25 Jun 2013 22:08:38 -0700 Subject: [PATCH 098/286] curl: update to version 7.31.0 --- pkgs/tools/networking/curl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index 73dcb44269c..54cae1b31d9 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -11,11 +11,11 @@ assert sslSupport -> openssl != null; assert scpSupport -> libssh2 != null; stdenv.mkDerivation rec { - name = "curl-7.30.0"; + name = "curl-7.31.0"; src = fetchurl { url = "http://curl.haxx.se/download/${name}.tar.bz2"; - sha256 = "04dgm9aqvplsx43n8xin5rkr8mwmc6mdd1gcp80jda5yhw1l273b"; + sha256 = "021ygqk4gn24iqm0i0xvzldfgqdg18fmvwqia7i5vzzcxj712fx7"; }; # Zlib and OpenSSL must be propagated because `libcurl.la' contains From 08882c4700c4f954b616116600d7c13e7f965a63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 28 Jun 2013 08:26:34 +0200 Subject: [PATCH 099/286] release-small: fix bad attr dbus_all --- 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 253d5a1bec7..f50b373cb48 100644 --- a/pkgs/top-level/release-small.nix +++ b/pkgs/top-level/release-small.nix @@ -198,7 +198,7 @@ with import ./release-lib.nix { inherit supportedSystems; }; zile = linux; zip = all; - dbus_all = { + dbus = { libs = linux; daemon = linux; tools = linux; From f4ec2a3090eb62369ccf164d1bd408023ac3aa06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 30 Jun 2013 08:58:51 +0200 Subject: [PATCH 100/286] diffutils: minor stable update 3.2 -> 3.3 --- pkgs/tools/text/diffutils/default.nix | 10 ++- .../text/diffutils/gets-undeclared.patch | 71 ------------------- 2 files changed, 4 insertions(+), 77 deletions(-) delete mode 100644 pkgs/tools/text/diffutils/gets-undeclared.patch diff --git a/pkgs/tools/text/diffutils/default.nix b/pkgs/tools/text/diffutils/default.nix index fc4293ad7cf..f8413b9a0d0 100644 --- a/pkgs/tools/text/diffutils/default.nix +++ b/pkgs/tools/text/diffutils/default.nix @@ -1,15 +1,13 @@ { stdenv, fetchurl, coreutils ? null }: -stdenv.mkDerivation { - name = "diffutils-3.2"; +stdenv.mkDerivation rec { + name = "diffutils-3.3"; src = fetchurl { - url = mirror://gnu/diffutils/diffutils-3.2.tar.gz; - sha256 = "1lsf0ln0h3mnm2y0mwgrfk0lyfi7bnm4r886acvdrrsvc7pypaia"; + url = "mirror://gnu/diffutils/${name}.tar.xz"; + sha256 = "1761vymxbp4wb5rzjvabhdkskk95pghnn67464byvzb5mfl8jpm2"; }; - patches = [ ./gets-undeclared.patch ]; - /* If no explicit coreutils is given, use the one from stdenv. */ nativeBuildInputs = [ coreutils ]; diff --git a/pkgs/tools/text/diffutils/gets-undeclared.patch b/pkgs/tools/text/diffutils/gets-undeclared.patch deleted file mode 100644 index b6cdc77caa8..00000000000 --- a/pkgs/tools/text/diffutils/gets-undeclared.patch +++ /dev/null @@ -1,71 +0,0 @@ -This patch is needed to allow builds with newer versions of -the GNU libc (2.16+). - - -commit 66712c23388e93e5c518ebc8515140fa0c807348 -Author: Eric Blake -Date: Thu Mar 29 13:30:41 2012 -0600 - - stdio: don't assume gets any more - - Gnulib intentionally does not have a gets module, and now that C11 - and glibc have dropped it, we should be more proactive about warning - any user on a platform that still has a declaration of this dangerous - interface. - - * m4/stdio_h.m4 (gl_STDIO_H, gl_STDIO_H_DEFAULTS): Drop gets - support. - * modules/stdio (Makefile.am): Likewise. - * lib/stdio-read.c (gets): Likewise. - * tests/test-stdio-c++.cc: Likewise. - * m4/warn-on-use.m4 (gl_WARN_ON_USE_PREPARE): Fix comment. - * lib/stdio.in.h (gets): Make warning occur in more places. - * doc/posix-functions/gets.texi (gets): Update documentation. - Reported by Christer Solskogen. - - Signed-off-by: Eric Blake - -diff --git a/lib/stdio.in.h b/lib/stdio.in.h -index aa7b599..c377b6e 100644 ---- a/lib/stdio.in.h -+++ b/lib/stdio.in.h -@@ -698,22 +698,11 @@ _GL_WARN_ON_USE (getline, "getline is unportable - " - # endif - #endif - --#if @GNULIB_GETS@ --# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@ --# if !(defined __cplusplus && defined GNULIB_NAMESPACE) --# undef gets --# define gets rpl_gets --# endif --_GL_FUNCDECL_RPL (gets, char *, (char *s) _GL_ARG_NONNULL ((1))); --_GL_CXXALIAS_RPL (gets, char *, (char *s)); --# else --_GL_CXXALIAS_SYS (gets, char *, (char *s)); --# undef gets --# endif --_GL_CXXALIASWARN (gets); - /* It is very rare that the developer ever has full control of stdin, -- so any use of gets warrants an unconditional warning. Assume it is -- always declared, since it is required by C89. */ -+ so any use of gets warrants an unconditional warning; besides, C11 -+ removed it. */ -+#undef gets -+#if HAVE_RAW_DECL_GETS - _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); - #endif - -@@ -1053,9 +1042,9 @@ _GL_WARN_ON_USE (snprintf, "snprintf is unportable - " - # endif - #endif - --/* Some people would argue that sprintf should be handled like gets -- (for example, OpenBSD issues a link warning for both functions), -- since both can cause security holes due to buffer overruns. -+/* Some people would argue that all sprintf uses should be warned about -+ (for example, OpenBSD issues a link warning for it), -+ since it can cause security holes due to buffer overruns. - However, we believe that sprintf can be used safely, and is more - efficient than snprintf in those safe cases; and as proof of our - belief, we use sprintf in several gnulib modules. So this header From 8902e01cea1059efb35ea8236a2f5d90f09d3adc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Jun 2013 12:38:02 +0200 Subject: [PATCH 101/286] linux: use 3.4 as the default (latest longterm) CC #501 --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4f11ce0b0d3..4d51b8423eb 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6367,7 +6367,7 @@ let # The current default kernel / kernel modules. linux = linuxPackages.kernel; - linuxPackages = linuxPackages_3_2; + linuxPackages = linuxPackages_3_4; # should be latest longterm, see #501 # A function to build a manually-configured kernel linuxManualConfig = import ../os-specific/linux/kernel/manual-config.nix { From 4a7696589d23e4fc1186e4588c873870cede5118 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Jun 2013 16:15:43 +0200 Subject: [PATCH 102/286] gzip: update 1.5 -> 1.6, use less in tests now --- pkgs/tools/compression/gzip/default.nix | 12 +++++++----- pkgs/tools/compression/gzip/skip-some-tests.patch | 15 +++------------ 2 files changed, 10 insertions(+), 17 deletions(-) diff --git a/pkgs/tools/compression/gzip/default.nix b/pkgs/tools/compression/gzip/default.nix index c1e86b5d2f6..d5ff4d4da6c 100644 --- a/pkgs/tools/compression/gzip/default.nix +++ b/pkgs/tools/compression/gzip/default.nix @@ -1,17 +1,19 @@ -{ stdenv, fetchurl }: +{ stdenv, fetchurl, less }: stdenv.mkDerivation rec { - name = "gzip-1.5"; + name = "gzip-1.6"; src = fetchurl { url = "mirror://gnu/gzip/${name}.tar.xz"; - sha256 = "0wx1nqk709kx75cwp2axachnbxryp4gyl06qxn5nl95184w0mhls"; + sha256 = "0ivqnbhiwd12q8hp3qw6rpsrpw2jg5y2mymk8cn22lsx90dfvprp"; }; - doCheck = true; - patches = [ ./skip-some-tests.patch ]; + buildInputs = [ less ]; # just for tests + + doCheck = true; + meta = { homepage = http://www.gnu.org/software/gzip/; description = "Gzip, the GNU zip compression program"; diff --git a/pkgs/tools/compression/gzip/skip-some-tests.patch b/pkgs/tools/compression/gzip/skip-some-tests.patch index ebcda684ef7..74043a3ab56 100644 --- a/pkgs/tools/compression/gzip/skip-some-tests.patch +++ b/pkgs/tools/compression/gzip/skip-some-tests.patch @@ -1,20 +1,11 @@ -Skip tests requiring Perl and less (more). -Also zgrep-signal skipping fails with weird Bad file number error on illumos. +Skip test requiring more (not found in nixpkgs). --- gzip-1.5/tests/Makefile.in.orig 2013-02-23 15:15:08.017048868 +0000 +++ gzip-1.5/tests/Makefile.in 2013-02-23 15:15:32.756197039 +0000 -@@ -1421,7 +1421,6 @@ - trailing-nul \ - zdiff \ - zgrep-f \ -- zgrep-signal \ - znew-k - - EXTRA_DIST = \ -@@ -1441,8 +1440,6 @@ +@@ -1441,8 +1440,7 @@ zfgrep \ zforce \ zgrep \ -- zless \ + zless \ - zmore \ znew From 48441716453b9ce6ba4af62a5c01dc039ef89603 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Jun 2013 16:16:53 +0200 Subject: [PATCH 103/286] acl: minor update 2.2.51 -> 2.2.52 --- pkgs/development/libraries/acl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/acl/default.nix b/pkgs/development/libraries/acl/default.nix index bc0821f39fd..d37d8926fbd 100644 --- a/pkgs/development/libraries/acl/default.nix +++ b/pkgs/development/libraries/acl/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, gettext, attr }: stdenv.mkDerivation rec { - name = "acl-2.2.51"; + name = "acl-2.2.52"; src = fetchurl { url = "mirror://savannah/acl/${name}.src.tar.gz"; - sha256 = "09aj30m49ivycl3irram8c3givc0crivjm3ymw0nhfaxrwhlb186"; + sha256 = "08qd9s3wfhv0ajswsylnfwr5h0d7j9d4rgip855nrh400nxp940p"; }; nativeBuildInputs = [ gettext ]; From 99b83b397f1221cadc336052e30e9503f511381d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Jun 2013 16:17:41 +0200 Subject: [PATCH 104/286] attr: minor update 2.4.46 -> 2.4.47 --- pkgs/development/libraries/attr/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/attr/default.nix b/pkgs/development/libraries/attr/default.nix index 3c5855ea284..8d87e2ee50d 100644 --- a/pkgs/development/libraries/attr/default.nix +++ b/pkgs/development/libraries/attr/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, gettext }: stdenv.mkDerivation rec { - name = "attr-2.4.46"; + name = "attr-2.4.47"; src = fetchurl { url = "mirror://savannah/attr/${name}.src.tar.gz"; - sha256 = "07qf6kb2zk512az481bbnsk9jycn477xpva1a726n5pzlzf9pmnw"; + sha256 = "0nd8y0m6awc9ahv0ciiwf8gy54c8d3j51pw9xg7f7cn579jjyxr5"; }; nativeBuildInputs = [ gettext ]; From 11e380a937ea8416a38c2e10e228c3054f5cd6b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Jun 2013 16:19:56 +0200 Subject: [PATCH 105/286] gmp5: minor update 5.1.1 -> 5.1.2 and file rename --- pkgs/development/libraries/gmp/{5.1.1.nix => 5.1.x.nix} | 4 ++-- pkgs/top-level/all-packages.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) rename pkgs/development/libraries/gmp/{5.1.1.nix => 5.1.x.nix} (96%) diff --git a/pkgs/development/libraries/gmp/5.1.1.nix b/pkgs/development/libraries/gmp/5.1.x.nix similarity index 96% rename from pkgs/development/libraries/gmp/5.1.1.nix rename to pkgs/development/libraries/gmp/5.1.x.nix index 2f9ff516523..4d63f38127d 100644 --- a/pkgs/development/libraries/gmp/5.1.1.nix +++ b/pkgs/development/libraries/gmp/5.1.x.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, m4, cxx ? true }: stdenv.mkDerivation rec { - name = "gmp-5.1.1"; + name = "gmp-5.1.2"; src = fetchurl { # we need to use bz2, others aren't in bootstrapping stdenv urls = [ "mirror://gnu/gmp/${name}.tar.bz2" "ftp://ftp.gmplib.org/pub/${name}/${name}.tar.bz2" ]; - sha256 = "1bdgf04k2i12pfivxgjq68iarz3ngix9hpzbmkgijrdk92gpgm50"; + sha256 = "13qv3ihk3ykbh2fkb4z8m0q188y3hq1amsj25fn5hgpgckmdx690"; }; nativeBuildInputs = [ m4 ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4d51b8423eb..47374bc2bb6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4024,9 +4024,9 @@ let # The GHC bootstrap binaries link against libgmp.so.3, which is in GMP 4.x. gmp4 = callPackage ../development/libraries/gmp/4.3.2.nix { }; - gmp5 = callPackage ../development/libraries/gmp/5.1.1.nix { }; + gmp5 = gmp51; - gmp51 = callPackage ../development/libraries/gmp/5.1.1.nix { }; + gmp51 = callPackage ../development/libraries/gmp/5.1.x.nix { }; gobjectIntrospection = callPackage ../development/libraries/gobject-introspection { }; From 666c12f6459fd9d64bb3bdd31ad24f3d97b8b659 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Jun 2013 16:56:20 +0200 Subject: [PATCH 106/286] mpfr: only use 3.1.2 and drop 3.1.1 I tried some packages, all seem to compile fine. --- pkgs/development/libraries/mpfr/3.1.2.nix | 51 --------------------- pkgs/development/libraries/mpfr/default.nix | 26 +++++------ pkgs/top-level/all-packages.nix | 10 ++-- 3 files changed, 17 insertions(+), 70 deletions(-) delete mode 100644 pkgs/development/libraries/mpfr/3.1.2.nix diff --git a/pkgs/development/libraries/mpfr/3.1.2.nix b/pkgs/development/libraries/mpfr/3.1.2.nix deleted file mode 100644 index fd164cf9105..00000000000 --- a/pkgs/development/libraries/mpfr/3.1.2.nix +++ /dev/null @@ -1,51 +0,0 @@ - -{stdenv, fetchurl, gmp}: - -stdenv.mkDerivation (rec { - name = "mpfr-3.1.2"; - - src = fetchurl { - url = "mirror://gnu/mpfr/${name}.tar.bz2"; - sha256 = "0sqvpfkzamxdr87anzakf9dhkfh15lfmm5bsqajk02h1mxh3zivr"; - }; - - buildInputs = [ gmp ]; - - doCheck = true; - - enableParallelBuilding = true; - - meta = { - homepage = http://www.mpfr.org/; - description = "GNU MPFR, a library for multiple-precision floating-point arithmetic"; - - longDescription = '' - The GNU MPFR library is a C library for multiple-precision - floating-point computations with correct rounding. MPFR is - based on the GMP multiple-precision library. - - The main goal of MPFR is to provide a library for - multiple-precision floating-point computation which is both - efficient and has a well-defined semantics. It copies the good - ideas from the ANSI/IEEE-754 standard for double-precision - floating-point arithmetic (53-bit mantissa). - ''; - - license = "LGPLv2+"; - - maintainers = [ stdenv.lib.maintainers.ludo ]; - platforms = stdenv.lib.platforms.all; - }; -} - -// - -(stdenv.lib.optionalAttrs stdenv.isFreeBSD { - /* Work around a FreeBSD bug that otherwise leads to segfaults in - the test suite: - http://hydra.bordeaux.inria.fr/build/34862 - http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00015.html - http://www.freebsd.org/cgi/query-pr.cgi?pr=161344 - */ - configureFlags = [ "--disable-thread-safe" ]; - })) diff --git a/pkgs/development/libraries/mpfr/default.nix b/pkgs/development/libraries/mpfr/default.nix index 6fbb6253ee5..8e3281c862a 100644 --- a/pkgs/development/libraries/mpfr/default.nix +++ b/pkgs/development/libraries/mpfr/default.nix @@ -1,15 +1,24 @@ -{stdenv, fetchurl, gmp}: +{ stdenv, fetchurl, gmp }: stdenv.mkDerivation rec { - name = "mpfr-3.1.1"; + name = "mpfr-3.1.2"; src = fetchurl { url = "mirror://gnu/mpfr/${name}.tar.bz2"; - sha256 = "1zfmmk4p26b67qpmh787p3dfxa71yd9mi02c4q45yf687pqw6rkv"; + sha256 = "0sqvpfkzamxdr87anzakf9dhkfh15lfmm5bsqajk02h1mxh3zivr"; }; buildInputs = [ gmp ]; + configureFlags = + /* Work around a FreeBSD bug that otherwise leads to segfaults in the test suite: + http://hydra.bordeaux.inria.fr/build/34862 + http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00015.html + http://www.freebsd.org/cgi/query-pr.cgi?pr=161344 + */ + stdenv.lib.optional (stdenv.isSunOS or stdenv.isFreeBSD) "--disable-thread-safe" ++ + stdenv.lib.optional stdenv.is64bit "--with-pic"; + doCheck = true; enableParallelBuilding = true; @@ -35,14 +44,5 @@ stdenv.mkDerivation rec { maintainers = [ stdenv.lib.maintainers.ludo ]; platforms = stdenv.lib.platforms.all; }; - - configureFlags = - /* Work around a FreeBSD bug that otherwise leads to segfaults in - the test suite: - http://hydra.bordeaux.inria.fr/build/34862 - http://websympa.loria.fr/wwsympa/arc/mpfr/2011-10/msg00015.html - http://www.freebsd.org/cgi/query-pr.cgi?pr=161344 - */ - stdenv.lib.optional (stdenv.isSunOS or stdenv.isFreeBSD) "--disable-thread-safe" ++ - stdenv.lib.optional stdenv.is64bit "--with-pic"; } + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 47374bc2bb6..6df3b4f4d7b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4018,16 +4018,18 @@ let gmm = callPackage ../development/libraries/gmm { }; gmp = gmp5; + gmp5 = gmp51; gmpxx = appendToName "with-cxx" (gmp.override { cxx = true; }); # The GHC bootstrap binaries link against libgmp.so.3, which is in GMP 4.x. gmp4 = callPackage ../development/libraries/gmp/4.3.2.nix { }; - gmp5 = gmp51; - gmp51 = callPackage ../development/libraries/gmp/5.1.x.nix { }; + #GMP ex-satellite, so better keep it near gmp + mpfr = callPackage ../development/libraries/mpfr/default.nix { }; + gobjectIntrospection = callPackage ../development/libraries/gobject-introspection { }; goffice = callPackage ../development/libraries/goffice { @@ -4047,10 +4049,6 @@ let gperftools = callPackage ../development/libraries/gperftools { }; - #GMP ex-satellite, so better keep it near gmp - mpfr = callPackage ../development/libraries/mpfr { }; - mpfr_3_1_2 = callPackage ../development/libraries/mpfr/3.1.2.nix { }; - gst_all = { inherit (pkgs) gstreamer gnonlin gst_python qt_gstreamer; gstPluginsBase = pkgs.gst_plugins_base; From e8bd49f132fb52ca18ba88b5d8b671c16059b507 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Jun 2013 17:02:48 +0200 Subject: [PATCH 107/286] gawk: update 4.0.2 -> 4.1.0 --- 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 eba1dc2ac7f..901f53c5e5c 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-4.0.2"; + name = "gawk-4.1.0"; src = fetchurl { url = "mirror://gnu/gawk/${name}.tar.xz"; - sha256 = "04vd0axif762mf781pj3days6ilv2333b9zi9c50y5mma66g5q91"; + sha256 = "0hin2hswbbd6kd6i4zzvgciwpl5fba8d2s524z8y5qagyz3x010q"; }; patches = []; From f573b58428feaecf2abb338a1ac11d48f824459b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Jun 2013 17:03:45 +0200 Subject: [PATCH 108/286] file: minor update 5.12 -> 5.14 --- pkgs/tools/misc/file/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/misc/file/default.nix b/pkgs/tools/misc/file/default.nix index 8b141fea826..cbcbbb2bb4a 100644 --- a/pkgs/tools/misc/file/default.nix +++ b/pkgs/tools/misc/file/default.nix @@ -1,13 +1,13 @@ { stdenv, fetchurl, zlib }: stdenv.mkDerivation rec { - name = "file-5.12"; + name = "file-5.14"; buildInputs = [ zlib ]; src = fetchurl { url = "ftp://ftp.astron.com/pub/file/${name}.tar.gz"; - sha256 = "08ix4xrvan0k80n0l5lqfmc4azjv5lyhvhwdxny4r09j5smhv78r"; + sha256 = "1r3zqxr7al5yy2595hd9hxwc14iij021p46d5my3n2lhs0fs06s6"; }; meta = { From 8a0931c5c3a8f87c5e5bb7ddc5edb51d4f3e2bb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Jun 2013 17:04:15 +0200 Subject: [PATCH 109/286] pcre: minor update 8.32 -> 8.33 --- pkgs/development/libraries/pcre/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/pcre/default.nix b/pkgs/development/libraries/pcre/default.nix index 69ed4c85313..b6813070cec 100644 --- a/pkgs/development/libraries/pcre/default.nix +++ b/pkgs/development/libraries/pcre/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, unicodeSupport ? true, cplusplusSupport ? true }: stdenv.mkDerivation rec { - name = "pcre-8.32"; + name = "pcre-8.33"; src = fetchurl { url = "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/${name}.tar.bz2"; - sha256 = "a913fb9bd058ef380a2d91847c3c23fcf98e92dc3b47cd08a53c021c5cde0f55"; + sha256 = "0y04pkrxjvhi30qpnb9ijgn6cjgv3k3lhq2zmw21r0b695x9a0y6"; }; # The compiler on Darwin crashes with an internal error while building the From 15f96c840f5ce71da5cb556d1aa76654e6b12dae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Jun 2013 17:04:52 +0200 Subject: [PATCH 110/286] binutils: minor update 2.23.1 -> .2 --- 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 ad3b4ae2b27..35707f55abe 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -1,12 +1,12 @@ { stdenv, fetchurl, noSysDirs, zlib, cross ? null, gold ? true, bison ? null, flex2535 ? null, bc ? null, dejagnu ? null }: -let basename = "binutils-2.23.1"; in +let basename = "binutils-2.23.2"; in stdenv.mkDerivation rec { name = basename + stdenv.lib.optionalString (cross != null) "-${cross.config}"; src = fetchurl { url = "mirror://gnu/binutils/${basename}.tar.bz2"; - sha256 = "06bs5v5ndb4g5qx96d52lc818gkbskd1m0sz57314v887sqfbcia"; + sha256 = "15qhbkz3r266xaa52slh857qn3abw7rb2x2jnhpfrafpzrb4x4gy"; }; patches = [ From c1ef3d28546bee3b53718fc3435eab852f7b1d38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Jun 2013 17:06:08 +0200 Subject: [PATCH 111/286] texinfo5: add missing xz, use version 5.* by default --- pkgs/development/tools/misc/texinfo/5.1.nix | 4 ++-- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/misc/texinfo/5.1.nix b/pkgs/development/tools/misc/texinfo/5.1.nix index cca368f619a..cbb10830188 100644 --- a/pkgs/development/tools/misc/texinfo/5.1.nix +++ b/pkgs/development/tools/misc/texinfo/5.1.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, ncurses, perl }: +{ stdenv, fetchurl, ncurses, perl, xz }: stdenv.mkDerivation rec { name = "texinfo-5.1"; @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { sha256 = "0864v5i488x3mb3v5p6nhy2kw0mqkzpa3b0453iibj81zlpq078q"; }; - buildInputs = [ ncurses perl ]; + buildInputs = [ ncurses perl xz ]; preInstall = '' installFlags="TEXMF=$out/texmf"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6df3b4f4d7b..b73d01f7e09 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3541,7 +3541,7 @@ let texinfo413 = callPackage ../development/tools/misc/texinfo/4.13a.nix { }; texinfo49 = callPackage ../development/tools/misc/texinfo/4.9.nix { }; texinfo5 = callPackage ../development/tools/misc/texinfo/5.1.nix { }; - texinfo = texinfo413; + texinfo = texinfo5; texi2html = callPackage ../development/tools/misc/texi2html { }; From 9ce21dab8d7f02a806929eabf98de9380cea0ce6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Jun 2013 17:07:11 +0200 Subject: [PATCH 112/286] libssh: non-critical security update CVE-2013-0176 --- pkgs/development/libraries/libssh/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/libssh/default.nix b/pkgs/development/libraries/libssh/default.nix index c2b812744c9..a57e2f8d3b8 100644 --- a/pkgs/development/libraries/libssh/default.nix +++ b/pkgs/development/libraries/libssh/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, cmake, zlib, libgcrypt }: stdenv.mkDerivation rec { - name = "libssh-0.5.3"; + name = "libssh-0.5.4"; src = fetchurl { - url = "https://red.libssh.org/attachments/download/38/${name}.tar.gz"; - sha256 = "1w6s217vjq0w3v5i0c5ql6m0ki1yz05g9snah3azxfkl9k4schpd"; + url = "https://red.libssh.org/attachments/download/41/libssh-0.5.4.tar.gz"; + sha256 = "106a9nzmr8q5kw809p5zdhmjrqv7p6609ai5c1n7xi7pxg52af2z"; }; buildInputs = [ zlib libgcrypt ]; From 62759ea9804e409322a4f026e21e471881d15bfb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Jun 2013 17:10:14 +0200 Subject: [PATCH 113/286] libarchive: update 3.0.4 -> 3.1.2, homepage move --- pkgs/development/libraries/libarchive/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/libarchive/default.nix b/pkgs/development/libraries/libarchive/default.nix index 851601fe963..e0f2ba77de2 100644 --- a/pkgs/development/libraries/libarchive/default.nix +++ b/pkgs/development/libraries/libarchive/default.nix @@ -2,11 +2,11 @@ , sharutils }: stdenv.mkDerivation rec { - name = "libarchive-3.0.4"; + name = "libarchive-3.1.2"; src = fetchurl { - url = "https://github.com/downloads/libarchive/libarchive/${name}.tar.gz"; - sha256 = "76e8d7c7b100ec4071e48c1b7d3f3ea1d22b39db3e45b7189f75b5ff4df90fac"; + url = "${meta.homepage}/downloads/${name}.tar.gz"; + sha256 = "0pixqnrcf35dnqgv0lp7qlcw7k13620qkhgxr288v7p4iz6ym1zb"; }; buildInputs = [ sharutils libxml2 zlib bzip2 openssl xz ] ++ @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { compressions formats including (but not limited to) tar, shar, cpio, zip, and compressed with gzip, bzip2, lzma, xz, .. ''; - homepage = http://libarchive.github.com/; + homepage = http://libarchive.org; license = stdenv.lib.licenses.bsd3; platforms = with stdenv.lib.platforms; all; maintainers = with stdenv.lib.maintainers; [ jcumming ]; From 0a44a091217ecd335cd10c06c1ddd29ad599f18c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 29 Jun 2013 17:11:27 +0200 Subject: [PATCH 114/286] stdenv: default builder fixes (merge #554) With a minor fix. I did some huge rebuilds with this on x86_64-linux, found no problems. --- pkgs/stdenv/generic/setup.sh | 50 ++++++++++++++++++++++++------------ 1 file changed, 33 insertions(+), 17 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 534a1bb27af..2938bec30de 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -289,6 +289,9 @@ stripDirs() { if [ -n "${dirs}" ]; then header "stripping (with flags $stripFlags) in $dirs" + for dir in $dirs; do + test -L "$dir" || chmod -R +rw "$dir" + done find $dirs -type f -print0 | xargs -0 ${xargsFlags:--r} strip $stripFlags || true stopNest fi @@ -639,7 +642,7 @@ patchELF() { find "$prefix" \( \ \( -type f -a -name "*.so*" \) -o \ \( -type f -a -perm +0100 \) \ - \) -print -exec patchelf --shrink-rpath {} \; + \) -print -exec patchelf --shrink-rpath '{}' \; fi stopNest } @@ -708,16 +711,22 @@ fixupPhase() { fi if [ -z "$dontGzipMan" ]; then + echo "gzipping man pages" GLOBIGNORE=.:..:*.gz:*.bz2 - for f in $out/share/man/*/* $out/share/man/*/*/*; do - if [ -f $f ]; then - if gzip -c $f > $f.gz; then - rm $f + for f in "$out"/share/man/*/* "$out"/share/man/*/*/*; do + if [ -f "$f" -a ! -L "$f" ]; then + if gzip -c "$f" > "$f".gz; then + rm "$f" else - rm $f.gz + rm "$f".gz fi fi done + for f in "$out"/share/man/*/* "$out"/share/man/*/*/*; do + if [ -L "$f" -a -f `readlink -f "$f"`.gz ]; then + ln -sf `readlink "$f"`.gz "$f" + fi + done unset GLOBIGNORE fi @@ -743,23 +752,23 @@ fixupPhase() { fi if [ -n "$propagatedBuildInputs" ]; then - mkdir -p "$out/nix-support" - echo "$propagatedBuildInputs" > "$out/nix-support/propagated-build-inputs" + mkdir -p "$prefix/nix-support" + echo "$propagatedBuildInputs" > "$prefix/nix-support/propagated-build-inputs" fi if [ -n "$propagatedNativeBuildInputs" ]; then - mkdir -p "$out/nix-support" - echo "$propagatedNativeBuildInputs" > "$out/nix-support/propagated-native-build-inputs" + mkdir -p "$prefix/nix-support" + echo "$propagatedNativeBuildInputs" > "$prefix/nix-support/propagated-native-build-inputs" fi if [ -n "$propagatedUserEnvPkgs" ]; then - mkdir -p "$out/nix-support" - echo "$propagatedUserEnvPkgs" > "$out/nix-support/propagated-user-env-packages" + mkdir -p "$prefix/nix-support" + echo "$propagatedUserEnvPkgs" > "$prefix/nix-support/propagated-user-env-packages" fi if [ -n "$setupHook" ]; then - mkdir -p "$out/nix-support" - substituteAll "$setupHook" "$out/nix-support/setup-hook" + mkdir -p "$prefix/nix-support" + substituteAll "$setupHook" "$prefix/nix-support/setup-hook" fi runHook postFixup @@ -844,9 +853,16 @@ genericBuild() { showPhaseHeader "$curPhase" dumpVars - # Evaluate the variable named $curPhase if it exists, otherwise the - # function named $curPhase. - eval "${!curPhase:-$curPhase}" + if [ "$curPhase" = fixupPhase ]; then + for pref in ${outputs:-out}; do + echo "fixup on \$$pref" + prefix=${!pref} eval "${!curPhase:-$curPhase}" + done + else + # Evaluate the variable named $curPhase if it exists, otherwise the + # function named $curPhase. + eval "${!curPhase:-$curPhase}" + fi if [ "$curPhase" = unpackPhase ]; then cd "${sourceRoot:-.}" From 38477f5b0b7985e0e939c2b8e791abed9888afe8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 30 Jun 2013 18:48:06 +0200 Subject: [PATCH 115/286] gcc43: minor update 4.3.4 -> .6 --- pkgs/development/compilers/gcc/4.3/default.nix | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.3/default.nix b/pkgs/development/compilers/gcc/4.3/default.nix index d17f9f19515..295c4a77f2f 100644 --- a/pkgs/development/compilers/gcc/4.3/default.nix +++ b/pkgs/development/compilers/gcc/4.3/default.nix @@ -29,7 +29,7 @@ assert langVhdl -> gnat != null; with stdenv.lib; let - version = "4.3.4"; + version = "4.3.6"; crossConfigureFlags = "--target=${cross.config}" + @@ -54,27 +54,27 @@ in stdenv.mkDerivation ({ name = "${name}-${version}" + crossNameAddon; - + builder = ./builder.sh; - + src = optional /*langC*/ true (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-core-${version}.tar.bz2"; - sha256 = "1yk80nwyw8vkpw8d3x7lkg3zrv3ngjqlvj0i8zslzgj7a27q729i"; + sha256 = "0ygrfw3hgp48hkqipbl9lw38f27npigc2sm6f01g9iswpq1igbw6"; }) ++ optional langCC (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-g++-${version}.tar.bz2"; - sha256 = "0d8pyk5c9zmph25f4fl63vd8vhljj6ildbxpz2hr594g5i6pplpq"; + sha256 = "105xz3991b57zx3146xwlpchdb2sjmlknclvi1iac2gawm4mhxhf"; }) ++ optional langFortran (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-fortran-${version}.tar.bz2"; - sha256 = "1xf2njykv1qcgxiqwj693dxjf77ss1rcxirylvnsp5hs89mdlj12"; + sha256 = "12bqvf53hvhrwjnh101vn9frb5g8cr98cra4f11dzhzs4ppydpi1"; }) ++ optional langJava (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-java-${version}.tar.bz2"; - sha256 = "1v3krhxi3zyaqfj0x8dbxvg67fjp29cr1psyf71r9zf757p3vqsw"; + sha256 = "03w6jln9gmdv149s774rlw4rzi2zhbqna54r86cd6mql8flmy7fs"; }); - + patches = [ ./pass-cxxcpp.patch ./libmudflap-cpp.patch ./siginfo_t_fix.patch ] ++ optional noSysDirs ./no-sys-dirs.patch From 2cf7a62f0c0a9151bb81defe5bac09a5f76a0554 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 30 Jun 2013 22:25:30 +0200 Subject: [PATCH 116/286] gcc: use texinfo4, fix bad mpfr reference --- pkgs/top-level/all-packages.nix | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b73d01f7e09..f2b2a3d5db2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2101,12 +2101,14 @@ let }); gcc43 = lowPrio (wrapGCC (makeOverridable (import ../development/compilers/gcc/4.3) { - inherit stdenv fetchurl texinfo gmp mpfr noSysDirs; + inherit stdenv fetchurl gmp mpfr noSysDirs; + texinfo = texinfo4; profiledCompiler = true; })); gcc43_realCross = makeOverridable (import ../development/compilers/gcc/4.3) { - inherit stdenv fetchurl texinfo gmp mpfr noSysDirs; + inherit stdenv fetchurl gmp mpfr noSysDirs; + texinfo = texinfo4; binutilsCross = binutilsCross; libcCross = libcCross; profiledCompiler = false; @@ -2117,8 +2119,9 @@ let gcc44_realCross = lib.addMetaAttrs { platforms = []; } (makeOverridable (import ../development/compilers/gcc/4.4) { - inherit stdenv fetchurl texinfo gmp mpfr /* ppl cloogppl */ noSysDirs + inherit stdenv fetchurl gmp mpfr /* ppl cloogppl */ noSysDirs gettext which; + texinfo = texinfo4; binutilsCross = binutilsCross; libcCross = libcCross; profiledCompiler = false; @@ -2137,8 +2140,9 @@ let gcc45_realCross = lib.addMetaAttrs { platforms = []; } (makeOverridable (import ../development/compilers/gcc/4.5) { - inherit fetchurl stdenv texinfo gmp mpfr mpc libelf zlib + inherit fetchurl stdenv gmp mpfr mpc libelf zlib ppl cloogppl gettext which noSysDirs; + texinfo = texinfo4; binutilsCross = binutilsCross; libcCross = libcCross; profiledCompiler = false; @@ -2225,15 +2229,17 @@ let })); gcc44 = lowPrio (wrapGCC (makeOverridable (import ../development/compilers/gcc/4.4) { - inherit fetchurl stdenv texinfo gmp mpfr /* ppl cloogppl */ + inherit fetchurl stdenv gmp mpfr /* ppl cloogppl */ gettext which noSysDirs; + texinfo = texinfo4; profiledCompiler = true; })); gcc45_real = lowPrio (wrapGCC (makeOverridable (import ../development/compilers/gcc/4.5) { - inherit fetchurl stdenv texinfo gmp mpfr mpc libelf zlib perl + inherit fetchurl stdenv gmp mpfr mpc libelf zlib perl ppl cloogppl gettext which noSysDirs; + texinfo = texinfo4; # bootstrapping a profiled compiler does not work in the sheevaplug: # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43944 profiledCompiler = !stdenv.isArm; @@ -2483,7 +2489,8 @@ let }); ghdl = wrapGCC (import ../development/compilers/gcc/4.3 { - inherit stdenv fetchurl texinfo gmp mpfr noSysDirs gnat; + inherit stdenv fetchurl gmp mpfr noSysDirs gnat; + texinfo = texinfo4; name = "ghdl"; langVhdl = true; langCC = false; @@ -2494,8 +2501,9 @@ let # Not officially supported version for ghdl ghdl_gcc44 = lowPrio (wrapGCC (import ../development/compilers/gcc/4.4 { - inherit stdenv fetchurl texinfo gmp mpfr noSysDirs gnat gettext which + inherit stdenv fetchurl gmp mpfr noSysDirs gnat gettext which ppl cloogppl; + texinfo = texinfo4; name = "ghdl"; langVhdl = true; langCC = false; @@ -2642,7 +2650,6 @@ let julia = callPackage ../development/compilers/julia { liblapack = liblapack.override {shared = true;}; - mpfr = mpfr_3_1_2; fftw = fftw.override {pthreads = true;}; fftwSinglePrec = fftwSinglePrec.override {pthreads = true;}; }; @@ -3542,6 +3549,7 @@ let texinfo49 = callPackage ../development/tools/misc/texinfo/4.9.nix { }; texinfo5 = callPackage ../development/tools/misc/texinfo/5.1.nix { }; texinfo = texinfo5; + texinfo4 = texinfo413; texi2html = callPackage ../development/tools/misc/texi2html { }; @@ -9453,7 +9461,8 @@ let inherit fetchurl stdenv; inherit cups ghostscript glibc patchelf; gcc = import ../development/compilers/gcc/4.4 { - inherit stdenv fetchurl texinfo gmp mpfr noSysDirs gettext which; + inherit stdenv fetchurl gmp mpfr noSysDirs gettext which; + texinfo = texinfo4; profiledCompiler = true; }; }; From 73183e5c709d8c2e16ccc9161fe93f6139bedc85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 30 Jun 2013 22:28:17 +0200 Subject: [PATCH 117/286] gcc44: minor update 4.4.6 -> .7 --- pkgs/development/compilers/gcc/4.4/default.nix | 2 +- pkgs/development/compilers/gcc/4.4/sources.nix | 14 +++++++------- pkgs/development/compilers/gcc/4.4/update-gcc.sh | 4 ++-- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.4/default.nix b/pkgs/development/compilers/gcc/4.4/default.nix index 60e7baa7781..4d896a14e8f 100644 --- a/pkgs/development/compilers/gcc/4.4/default.nix +++ b/pkgs/development/compilers/gcc/4.4/default.nix @@ -31,7 +31,7 @@ assert langVhdl -> gnat != null; with stdenv.lib; -let version = "4.4.6"; +let version = "4.4.7"; javaEcj = fetchurl { # The `$(top_srcdir)/ecj.jar' file is automatically picked up at # `configure' time. diff --git a/pkgs/development/compilers/gcc/4.4/sources.nix b/pkgs/development/compilers/gcc/4.4/sources.nix index 357cc2634ed..5517e7c3b92 100644 --- a/pkgs/development/compilers/gcc/4.4/sources.nix +++ b/pkgs/development/compilers/gcc/4.4/sources.nix @@ -1,26 +1,26 @@ /* Automatically generated by `update-gcc.sh', do not edit. - For GCC 4.4.6. */ + For GCC 4.4.7. */ { fetchurl, optional, version, langC, langCC, langFortran, langJava, langAda }: -assert version == "4.4.6"; +assert version == "4.4.7"; optional /* langC */ true (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-core-${version}.tar.bz2"; - sha256 = "c2959820de3e42eee6b1d381586992f26430f0083b9a51db31d706080fc9b44a"; + sha256 = "c4663b7023909a4a075d3c2b2e17f6e082a9625aebfd0ce7f1d7817e44bf5542"; }) ++ optional langCC (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-g++-${version}.tar.bz2"; - sha256 = "6d5d2dacab9569472e4caa291abe94017a9b19574b9b0d866de7b04702634ddf"; + sha256 = "1882ff29be51eeb3fb349cbcda9df200a5c3cd20c97dd1d593101e0998b3c469"; }) ++ optional langFortran (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-fortran-${version}.tar.bz2"; - sha256 = "2b9998716a16b80f4cf843ce81da1cf58ce116e0b85422e3004ce4454e8ff923"; + sha256 = "545a1e8e97d9364de4408c6a91830f9051ce24b4fbfbfdc56e72c7b4be17ebdd"; }) ++ optional langJava (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-java-${version}.tar.bz2"; - sha256 = "7c8c12eac21d2a5c605ea4d9b7aa52e482354205b801bc93d62603b6f0956b35"; + sha256 = "3c31ddd80f945b797d8d4ed7761426c26343781c361ec1b33bcea9874cc4c6c0"; }) ++ optional langAda (fetchurl { url = "mirror://gcc/releases/gcc-${version}/gcc-ada-${version}.tar.bz2"; - sha256 = "771ef0e90abf61208ce84689bed15391ad249287e36a28e816d6a044035af0c6"; + sha256 = "fb9f30b85d48838390554b948d137487f0db09ad5f8ba73ca4d7ca35765c6ed8"; }) ++ [] diff --git a/pkgs/development/compilers/gcc/4.4/update-gcc.sh b/pkgs/development/compilers/gcc/4.4/update-gcc.sh index 6b0bbb99330..03297fbadd6 100755 --- a/pkgs/development/compilers/gcc/4.4/update-gcc.sh +++ b/pkgs/development/compilers/gcc/4.4/update-gcc.sh @@ -21,7 +21,7 @@ options["g++"]="langCC" options["fortran"]="langFortran" options["java"]="langJava" options["ada"]="langAda" -options["go"]="langGo" +#options["go"]="langGo" cat > "$out"< "$out"< Date: Mon, 1 Jul 2013 09:20:05 +0200 Subject: [PATCH 118/286] libofa: pull debian patches to fix build with new gcc --- .../libraries/libofa/curl-types.patch | 13 ------- pkgs/development/libraries/libofa/default.nix | 17 +++++--- .../libraries/libofa/gcc-4.x.patch | 12 ------ .../libofa/libofa-0.9.3-gcc-4.3.patch | 36 ----------------- .../libraries/libofa/libofa-0.9.3-gcc-4.patch | 39 ------------------- 5 files changed, 12 insertions(+), 105 deletions(-) delete mode 100644 pkgs/development/libraries/libofa/curl-types.patch delete mode 100644 pkgs/development/libraries/libofa/gcc-4.x.patch delete mode 100644 pkgs/development/libraries/libofa/libofa-0.9.3-gcc-4.3.patch delete mode 100644 pkgs/development/libraries/libofa/libofa-0.9.3-gcc-4.patch diff --git a/pkgs/development/libraries/libofa/curl-types.patch b/pkgs/development/libraries/libofa/curl-types.patch deleted file mode 100644 index acd8d9aeabb..00000000000 --- a/pkgs/development/libraries/libofa/curl-types.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -rc libofa-0.9.3/examples/protocol.cpp libofa-0.9.3-new/examples/protocol.cpp -*** libofa-0.9.3/examples/protocol.cpp 2006-05-10 14:05:42.000000000 -0400 ---- libofa-0.9.3-new/examples/protocol.cpp 2011-11-06 09:24:05.653283203 -0500 -*************** -*** 12,18 **** - #include - #include - #include -- #include - #include - - using namespace std; ---- 12,17 ---- diff --git a/pkgs/development/libraries/libofa/default.nix b/pkgs/development/libraries/libofa/default.nix index 6b1ceee40f1..2e2640e8636 100644 --- a/pkgs/development/libraries/libofa/default.nix +++ b/pkgs/development/libraries/libofa/default.nix @@ -1,17 +1,24 @@ { stdenv, fetchurl, expat, curl, fftw }: +let + version = "0.9.3"; + deb_patch = "5"; +in stdenv.mkDerivation rec { - name = "libofa-0.9.3"; - - propagatedBuildInputs = [ expat curl fftw ]; - - patches = [ ./libofa-0.9.3-gcc-4.patch ./libofa-0.9.3-gcc-4.3.patch ./gcc-4.x.patch ./curl-types.patch ]; + name = "libofa-${version}"; src = fetchurl { url = "http://musicip-libofa.googlecode.com/files/${name}.tar.gz"; sha256 = "184ham039l7lwhfgg0xr2vch2xnw1lwh7sid432mh879adhlc5h2"; }; + patches = fetchurl { + url = "mirror://debian/pool/main/libo/libofa/libofa_${version}-${deb_patch}.debian.tar.gz"; + sha256 = "1rfkyz13cm8izm90c1xflp4rvsa24aqs6qpbbbqqcbmvzsj6j9yn"; + }; + + propagatedBuildInputs = [ expat curl fftw ]; + meta = { homepage = http://code.google.com/musicip-libofa/; description = "LibOFA - Library Open Fingerprint Architecture"; diff --git a/pkgs/development/libraries/libofa/gcc-4.x.patch b/pkgs/development/libraries/libofa/gcc-4.x.patch deleted file mode 100644 index 50f72bb428c..00000000000 --- a/pkgs/development/libraries/libofa/gcc-4.x.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/examples/example.cpp b/examples/example.cpp -index ef978d5..7d58a0f 100644 ---- a/examples/example.cpp -+++ b/examples/example.cpp -@@ -10,6 +10,7 @@ - #include "protocol.h" - - #include -+#include - - AudioData* loadWaveFile(char *file); - AudioData* loadDataUsingLAME(char *file); diff --git a/pkgs/development/libraries/libofa/libofa-0.9.3-gcc-4.3.patch b/pkgs/development/libraries/libofa/libofa-0.9.3-gcc-4.3.patch deleted file mode 100644 index 7682e371051..00000000000 --- a/pkgs/development/libraries/libofa/libofa-0.9.3-gcc-4.3.patch +++ /dev/null @@ -1,36 +0,0 @@ -Fix build with gcc >=4.3 -diff -ur libofa-0.9.3.orig/examples/example.cpp libofa-0.9.3/examples/example.cpp ---- libofa-0.9.3.orig/examples/example.cpp 2006-05-10 21:05:37.000000000 +0300 -+++ libofa-0.9.3/examples/example.cpp 2008-04-16 15:51:49.000000000 +0300 -@@ -9,6 +9,8 @@ - - #include "protocol.h" - -+#include -+ - AudioData* loadWaveFile(char *file); - AudioData* loadDataUsingLAME(char *file); - -Vain hakemistossa libofa-0.9.3/examples: example.cpp.orig -diff -ur libofa-0.9.3.orig/examples/protocol.cpp libofa-0.9.3/examples/protocol.cpp ---- libofa-0.9.3.orig/examples/protocol.cpp 2006-05-10 21:05:42.000000000 +0300 -+++ libofa-0.9.3/examples/protocol.cpp 2008-04-16 15:51:49.000000000 +0300 -@@ -8,6 +8,7 @@ - -------------------------------------------------------------------*/ - #include - #include -+#include - #include - #include - #include -diff -ur libofa-0.9.3.orig/lib/signal_op.cpp libofa-0.9.3/lib/signal_op.cpp ---- libofa-0.9.3.orig/lib/signal_op.cpp 2006-05-10 21:01:12.000000000 +0300 -+++ libofa-0.9.3/lib/signal_op.cpp 2008-04-16 15:51:49.000000000 +0300 -@@ -12,6 +12,7 @@ - // DATE CREATED: 1/12/06 - - -+#include - #include - #include "signal_op.h" - #include "AFLIB/aflibConverter.h" diff --git a/pkgs/development/libraries/libofa/libofa-0.9.3-gcc-4.patch b/pkgs/development/libraries/libofa/libofa-0.9.3-gcc-4.patch deleted file mode 100644 index 920c383c657..00000000000 --- a/pkgs/development/libraries/libofa/libofa-0.9.3-gcc-4.patch +++ /dev/null @@ -1,39 +0,0 @@ ---- a/lib/JAMA/tnt_math_utils.h 2006-06-17 01:46:22.000000000 +0300 -+++ b/lib/JAMA/tnt_math_utils.h 2006-06-17 01:47:02.000000000 +0300 -@@ -20,11 +20,20 @@ - namespace TNT - { - /** -+ @returns the absolute value of a real (no-complex) scalar. -+*/ -+template -+Real abs(const Real &a) -+{ -+ return (a > 0 ? a : -a); -+} -+/** - @returns hypotenuse of real (non-complex) scalars a and b by - avoiding underflow/overflow - using (a * sqrt( 1 + (b/a) * (b/a))), rather than - sqrt(a*a + b*b). - */ -+ - template - Real hypot(const Real &a, const Real &b) - { -@@ -56,15 +65,6 @@ - } - */ - --/** -- @returns the absolute value of a real (no-complex) scalar. --*/ --template --Real abs(const Real &a) --{ -- return (a > 0 ? a : -a); --} -- - } - #endif - /* MATH_UTILS_H */ From 480bcf9f83768c4b6e17c16c53bddb1133d3d0d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 8 Jul 2013 09:14:23 +0200 Subject: [PATCH 119/286] gcj: add 47 and 48, make 47 default gcj48 doesn't build yet --- pkgs/top-level/all-packages.nix | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f2b2a3d5db2..3f8d7690001 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2389,7 +2389,7 @@ let profiledCompiler = false; }); - gcj = gcj45; + gcj = gcj47; gcj44 = wrapGCC (gcc44.gcc.override { name = "gcj"; @@ -2433,6 +2433,34 @@ let libXrandr xproto renderproto xextproto inputproto randrproto; }); + gcj47 = wrapGCC (gcc47.gcc.override { + name = "gcj"; + langJava = true; + langFortran = false; + langCC = true; + langC = false; + profiledCompiler = false; + inherit zip unzip zlib boehmgc gettext pkgconfig perl; + inherit gtk; + inherit (gnome) libart_lgpl; + inherit (xlibs) libX11 libXt libSM libICE libXtst libXi libXrender + libXrandr xproto renderproto xextproto inputproto randrproto; + }); + + gcj48 = wrapGCC (gcc48.gcc.override { + name = "gcj"; + langJava = true; + langFortran = false; + langCC = false; + langC = false; + profiledCompiler = false; + inherit zip unzip zlib boehmgc gettext pkgconfig perl; + inherit gtk; + inherit (gnome) libart_lgpl; + inherit (xlibs) libX11 libXt libSM libICE libXtst libXi libXrender + libXrandr xproto renderproto xextproto inputproto randrproto; + }); + gnat = gnat45; gnat44 = wrapGCC (gcc44.gcc.override { From 5be89ac73399de1f1aea8371f5e21f493b3d4d45 Mon Sep 17 00:00:00 2001 From: James Cook Date: Sun, 7 Jul 2013 14:56:15 -0700 Subject: [PATCH 120/286] openjdk: Don't statically link C++ runtime, close #730. This fixes a build error (https://github.com/NixOS/nixpkgs/issues/707). Thanks to http://mail.openjdk.java.net/pipermail/build-dev/2012-January/005349.html --- pkgs/development/compilers/openjdk/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/compilers/openjdk/default.nix b/pkgs/development/compilers/openjdk/default.nix index 0be36379f33..d7e42d38948 100644 --- a/pkgs/development/compilers/openjdk/default.nix +++ b/pkgs/development/compilers/openjdk/default.nix @@ -108,6 +108,7 @@ stdenv.mkDerivation rec { "DEVTOOLS_PATH=" "UNIXCOMMAND_PATH=" "BOOTDIR=${jdk}" + "STATIC_CXX=false" ]; configurePhase = '' From de71c8bdb000a1dd3fe83bda7ae4a1935a149698 Mon Sep 17 00:00:00 2001 From: James Cook Date: Wed, 10 Jul 2013 23:26:06 -0700 Subject: [PATCH 121/286] qca2: Patch for gcc 4.7+ (close #738). Thanks to http://lists.pld-linux.org/mailman/pipermail/pld-cvs-commit/Week-of-Mon-20120917/347917.html --- pkgs/development/libraries/qca2/default.nix | 2 ++ pkgs/development/libraries/qca2/gcc47.patch | 12 ++++++++++++ 2 files changed, 14 insertions(+) create mode 100644 pkgs/development/libraries/qca2/gcc47.patch diff --git a/pkgs/development/libraries/qca2/default.nix b/pkgs/development/libraries/qca2/default.nix index 1da9ef193b5..952bdfa29ce 100644 --- a/pkgs/development/libraries/qca2/default.nix +++ b/pkgs/development/libraries/qca2/default.nix @@ -21,6 +21,8 @@ stdenv.mkDerivation rec { EMSA3_SHA512 ///< SHA512, with EMSA3 (ie PKCS#1 Version 1.5) encoding' ''; + patches = [ ./gcc47.patch ]; + configureFlags = "--no-separate-debug-info"; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/qca2/gcc47.patch b/pkgs/development/libraries/qca2/gcc47.patch new file mode 100644 index 00000000000..08711884a57 --- /dev/null +++ b/pkgs/development/libraries/qca2/gcc47.patch @@ -0,0 +1,12 @@ +# Thanks to http://lists.pld-linux.org/mailman/pipermail/pld-cvs-commit/Week-of-Mon-20120917/347917.html +--- qca-2.0.3/src/botantools/botan/botan/secmem.h.orig 2007-04-19 23:26:13.000000000 +0200 ++++ qca-2.0.3/src/botantools/botan/botan/secmem.h 2012-09-16 23:28:43.767480490 +0200 +@@ -214,7 +214,7 @@ + + SecureVector(u32bit n = 0) { MemoryRegion::init(true, n); } + SecureVector(const T in[], u32bit n) +- { MemoryRegion::init(true); set(in, n); } ++ { MemoryRegion::init(true); this->set(in, n); } + SecureVector(const MemoryRegion& in) + { MemoryRegion::init(true); set(in); } + SecureVector(const MemoryRegion& in1, const MemoryRegion& in2) From dafb31a8e181971ceadb10b3780eb37790e4cb0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 13 Jul 2013 16:22:44 +0200 Subject: [PATCH 122/286] Revert "e2fsprogs: Fix manpages", no more need for this This reverts commit 7f4e47383281875c9712e94666917a22ca63e897. See #523 and #529. --- pkgs/tools/filesystems/e2fsprogs/default.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/pkgs/tools/filesystems/e2fsprogs/default.nix b/pkgs/tools/filesystems/e2fsprogs/default.nix index 712cd32d9c3..b855fce17d0 100644 --- a/pkgs/tools/filesystems/e2fsprogs/default.nix +++ b/pkgs/tools/filesystems/e2fsprogs/default.nix @@ -25,8 +25,6 @@ stdenv.mkDerivation rec { postInstall = "make install-libs"; - dontGzipMan = true; # See issue #523 - meta = { homepage = http://e2fsprogs.sourceforge.net/; description = "Tools for creating and checking ext2/ext3/ext4 filesystems"; From dc8d794208ddca5c544e9102126c5ab93e93b6ea Mon Sep 17 00:00:00 2001 From: James Cook Date: Sun, 14 Jul 2013 17:08:26 -0700 Subject: [PATCH 123/286] strigi: patch to compile on stdenv-updates (close #755) This patch exports a class with STRIGI_EXPORT that wasn't exported before. --- pkgs/development/libraries/strigi/default.nix | 2 ++ .../libraries/strigi/export_bufferedstream.patch | 12 ++++++++++++ 2 files changed, 14 insertions(+) create mode 100644 pkgs/development/libraries/strigi/export_bufferedstream.patch diff --git a/pkgs/development/libraries/strigi/default.nix b/pkgs/development/libraries/strigi/default.nix index fc8dc123032..6b8b611d3f7 100644 --- a/pkgs/development/libraries/strigi/default.nix +++ b/pkgs/development/libraries/strigi/default.nix @@ -20,6 +20,8 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake pkgconfig perl ]; + patches = [ ./export_bufferedstream.patch ]; + enableParallelBuilding = true; meta = { diff --git a/pkgs/development/libraries/strigi/export_bufferedstream.patch b/pkgs/development/libraries/strigi/export_bufferedstream.patch new file mode 100644 index 00000000000..4c6b34fe1be --- /dev/null +++ b/pkgs/development/libraries/strigi/export_bufferedstream.patch @@ -0,0 +1,12 @@ +diff -u -r strigi-0.7.8/libstreams/include/strigi/bufferedstream.h strigi-0.7.8_new/libstreams/include/strigi/bufferedstream.h +--- strigi-0.7.8/libstreams/include/strigi/bufferedstream.h 2013-02-05 13:34:57.000000000 -0800 ++++ strigi-0.7.8_new/libstreams/include/strigi/bufferedstream.h 2013-07-14 17:01:54.000000000 -0700 +@@ -34,7 +34,7 @@ + * BufferedStream will do the rest. + */ + template +-class BufferedStream : public StreamBase { ++class STRIGI_EXPORT BufferedStream : public StreamBase { + private: + StreamBuffer buffer; + bool finishedWritingToBuffer; From d8dd23e285275bddff292299b9283a7f7f6a393b Mon Sep 17 00:00:00 2001 From: James Cook Date: Tue, 9 Jul 2013 21:34:11 -0700 Subject: [PATCH 124/286] luit: configure --disable-selective-werror Compiling luit failed with "implicit declaration of function 'posix_openpt'". Following suggestion at https://bugs.freedesktop.org/show_bug.cgi?id=47792 to fix it. --- pkgs/servers/x11/xorg/default.nix | 2 +- pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index 3a523469248..d7b0eb0ed6f 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -926,7 +926,7 @@ let url = mirror://xorg/X11R7.7/src/everything/luit-1.1.1.tar.bz2; sha256 = "0dn694mk56x6hdk6y9ylx4f128h5jcin278gnw2gb807rf3ygc1h"; }; - buildInputs = [pkgconfig libfontenc ]; + buildInputs = [pkgconfig libfontenc ]; configureFlags = "--disable-selective-werror"; })) // {inherit libfontenc ;}; makedepend = (stdenv.mkDerivation ((if overrides ? makedepend then overrides.makedepend else x: x) { diff --git a/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl b/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl index 04ee5f10961..1d294845f7f 100755 --- a/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl +++ b/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl @@ -177,6 +177,12 @@ while (<>) { $extraAttrs{$pkg} = " configureFlags = \"--with-fontrootdir=\$(out)/lib/X11/fonts\"; "; } + if ($tarball =~ /\/luit-/) { + # See https://bugs.freedesktop.org/show_bug.cgi?id=47792 + # Once the bug is fixed upstream, this can be removed. + $extraAttrs{$pkg} = " configureFlags = \"--disable-selective-werror\"; "; + } + sub process { my $requires = shift; my $s = shift; From b5553b7cec004afc53cdf2e0b71119aa1bd9d929 Mon Sep 17 00:00:00 2001 From: James Cook Date: Tue, 23 Jul 2013 20:30:31 -0700 Subject: [PATCH 125/286] luit: fix build with newer gcc (close #734) --- pkgs/servers/x11/xorg/default.nix | 2 +- pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl | 6 ------ pkgs/servers/x11/xorg/overrides.nix | 6 ++++++ 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index d7b0eb0ed6f..3a523469248 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -926,7 +926,7 @@ let url = mirror://xorg/X11R7.7/src/everything/luit-1.1.1.tar.bz2; sha256 = "0dn694mk56x6hdk6y9ylx4f128h5jcin278gnw2gb807rf3ygc1h"; }; - buildInputs = [pkgconfig libfontenc ]; configureFlags = "--disable-selective-werror"; + buildInputs = [pkgconfig libfontenc ]; })) // {inherit libfontenc ;}; makedepend = (stdenv.mkDerivation ((if overrides ? makedepend then overrides.makedepend else x: x) { diff --git a/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl b/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl index 1d294845f7f..04ee5f10961 100755 --- a/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl +++ b/pkgs/servers/x11/xorg/generate-expr-from-tarballs.pl @@ -177,12 +177,6 @@ while (<>) { $extraAttrs{$pkg} = " configureFlags = \"--with-fontrootdir=\$(out)/lib/X11/fonts\"; "; } - if ($tarball =~ /\/luit-/) { - # See https://bugs.freedesktop.org/show_bug.cgi?id=47792 - # Once the bug is fixed upstream, this can be removed. - $extraAttrs{$pkg} = " configureFlags = \"--disable-selective-werror\"; "; - } - sub process { my $requires = shift; my $s = shift; diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix index 22e0096ad65..65e788aa2a1 100644 --- a/pkgs/servers/x11/xorg/overrides.nix +++ b/pkgs/servers/x11/xorg/overrides.nix @@ -85,6 +85,12 @@ in propagatedBuildInputs = [ xorg.libSM ]; }; + # See https://bugs.freedesktop.org/show_bug.cgi?id=47792 + # Once the bug is fixed upstream, this can be removed. + luit = attrs: attrs // { + configureFlags = "--disable-selective-werror"; + }; + compositeproto = attrs: attrs // { propagatedBuildInputs = [ xorg.fixesproto ]; }; From 0b8f1b1448539d4166573769931de48488af7a4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 27 Jul 2013 21:27:07 +0200 Subject: [PATCH 126/286] mesa: bugfix update, but still can't compile R600 --- pkgs/development/libraries/mesa/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix index de130d465c2..dc533776da0 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -3,7 +3,7 @@ , libdrm, xorg, wayland, udev, llvm, libffi , libvdpau , enableTextureFloats ? false # Texture floats are patented, see docs/patents.txt -, enableR600LlvmCompiler ? false # we would need currently unreleased LLVM or patches +, enableR600LlvmCompiler ? false # current llvm-3.3 + mesa-9.1.5 don't compile this , enableExtraFeatures ? false # add ~15 MB to mesa_drivers }: @@ -23,7 +23,7 @@ else */ let - version = "9.1.3"; + version = "9.1.5"; driverLink = "/run/opengl-driver" + stdenv.lib.optionalString stdenv.isi686 "-32"; in stdenv.mkDerivation { @@ -31,7 +31,7 @@ stdenv.mkDerivation { src = fetchurl { url = "ftp://ftp.freedesktop.org/pub/mesa/${version}/MesaLib-${version}.tar.bz2"; - sha256="0rnpaambxv5cd6kbfyvv4b8x2rw1xj13a67xbkzmndfh08iaqpcd"; + sha256="1zclw6rzcj9bra3i9p8ai6ill3422kjbyxrp4nmpva4hzld0vsl9"; }; prePatch = "patchShebangs ."; From 70edf159970cd83df8ef49301346a07f4d4bf684 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 7 Aug 2013 15:45:21 +0200 Subject: [PATCH 127/286] patchPhase: Handle xz compression --- pkgs/stdenv/generic/setup.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 2938bec30de..a50596985ec 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -543,6 +543,9 @@ patchPhase() { *.bz2) uncompress="bzip2 -d" ;; + *.xz) + uncompress="xz -d" + ;; *.lzma) uncompress="lzma -d" ;; From bef090400e1773ab26eaefdc8f60167c96710f40 Mon Sep 17 00:00:00 2001 From: bbenoist Date: Tue, 20 Aug 2013 10:17:00 +0200 Subject: [PATCH 128/286] cmake: Update to 2.8.11.2 --- pkgs/development/tools/build-managers/cmake/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix index d4e5fa00a51..67b7358057a 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 = "11"; + minorVersion = "11.2"; version = "${majorVersion}.${minorVersion}"; in @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "${meta.homepage}files/v${majorVersion}/cmake-${version}.tar.gz"; - sha256 = "1rgfgzigmc0b2z5330r3ncf003k4bhqwfxbskv0q5ylp2xkd7l10"; + sha256 = "0qh5dhd7ff08n2h569j7g9m92gb3bz14wvhwjhwl7lgx794cnamk"; }; enableParallelBuilding = true; From e13720c3c4045a7d80021d6eaabddddb6eeaadf4 Mon Sep 17 00:00:00 2001 From: bbenoist Date: Tue, 20 Aug 2013 10:26:54 +0200 Subject: [PATCH 129/286] cmake: Fix CTest custom commands This commit is related to: - https://github.com/NixOS/nixpkgs/issues/762 - http://public.kitware.com/Bug/view.php?id=13887 And fixes a bug present in recent CMake versions. The fix should be integrated in the next CMake release. --- .../tools/build-managers/cmake/762-13887.patch | 17 +++++++++++++++++ .../tools/build-managers/cmake/default.nix | 8 ++++++-- 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 pkgs/development/tools/build-managers/cmake/762-13887.patch diff --git a/pkgs/development/tools/build-managers/cmake/762-13887.patch b/pkgs/development/tools/build-managers/cmake/762-13887.patch new file mode 100644 index 00000000000..3ef27a09b5c --- /dev/null +++ b/pkgs/development/tools/build-managers/cmake/762-13887.patch @@ -0,0 +1,17 @@ +diff --git a/Source/CTest/cmCTestTestHandler.cxx b/Source/CTest/cmCTestTestHandler.cxx +index e7491bb..57b4348 100644 +--- a/Source/CTest/cmCTestTestHandler.cxx ++++ b/Source/CTest/cmCTestTestHandler.cxx +@@ -1303,10 +1303,9 @@ int cmCTestTestHandler::ExecuteCommands(std::vector& vec) + for ( it = vec.begin(); it != vec.end(); ++it ) + { + int retVal = 0; +- std::string cmd = cmSystemTools::ConvertToOutputPath(it->c_str()); +- cmCTestLog(this->CTest, HANDLER_VERBOSE_OUTPUT, "Run command: " << cmd ++ cmCTestLog(this->CTest, HANDLER_VERBOSE_OUTPUT, "Run command: " << *it + << std::endl); +- if ( !cmSystemTools::RunSingleCommand(cmd.c_str(), 0, &retVal, 0, ++ if ( !cmSystemTools::RunSingleCommand((*it).c_str(), 0, &retVal, 0, + cmSystemTools::OUTPUT_MERGE + /*this->Verbose*/) || retVal != 0 ) + { diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix index 67b7358057a..35ae214266d 100644 --- a/pkgs/development/tools/build-managers/cmake/default.nix +++ b/pkgs/development/tools/build-managers/cmake/default.nix @@ -24,9 +24,13 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; patches = + # See https://github.com/NixOS/nixpkgs/issues/762 + # and http://public.kitware.com/Bug/view.php?id=13887 + # Remove this patch when a CMake release contains the corresponding fix + [ ./762-13887.patch ] # Don't search in non-Nix locations such as /usr, but do search in - # Nixpkgs' Glibc. - optional (stdenv ? glibc) ./search-path.patch; + # Nixpkgs' Glibc. + ++ optional (stdenv ? glibc) ./search-path.patch; buildInputs = [ curl expat zlib bzip2 libarchive ] ++ optional useNcurses ncurses From 27905ce17e1b1aed55edbff5856082b8c1b51fc7 Mon Sep 17 00:00:00 2001 From: Gergely Risko Date: Mon, 26 Aug 2013 11:59:51 +0200 Subject: [PATCH 130/286] pkgs/build-support/cabal: set LANG="en_US.UTF-8" for the Haddock run Haskell packages that contain non-ascii characters in their .cabal file or somewhere else in their haddock documentation fail to compile under nixpkgs and usually flagged with noHaddock = true. I wanted to do the same for modularArithmentic, when I realized that we just have to set the locale to some UTF-8 compatible locale in build-support/cabal to fix this issue correctly. --- pkgs/build-support/cabal/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index 6ede3f56923..d57afb7bf9d 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -147,7 +147,11 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; ./Setup build export GHC_PACKAGE_PATH=$(${ghc.GHCPackages}) - [ -n "$noHaddock" ] || ./Setup haddock + if [ -n "$noHaddock" ]; then + export LANG="en_US.UTF-8" + ./Setup haddock + unset LANG + fi eval "$postBuild" ''; From 8bccfe4d2b101488222025a682bced49cfe32770 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 26 Aug 2013 12:20:12 +0200 Subject: [PATCH 131/286] haskell-bytestring-progress: re-enable haddock documentation --- .../libraries/haskell/bytestring-progress/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/development/libraries/haskell/bytestring-progress/default.nix b/pkgs/development/libraries/haskell/bytestring-progress/default.nix index e9bb268b9fc..c73932b3760 100644 --- a/pkgs/development/libraries/haskell/bytestring-progress/default.nix +++ b/pkgs/development/libraries/haskell/bytestring-progress/default.nix @@ -5,7 +5,6 @@ cabal.mkDerivation (self: { version = "1.0.3"; sha256 = "1v9cl7d4fcchbdrpbgjj4ilg79cj241vzijiifdsgkq30ikv2yxs"; buildDepends = [ terminalProgressBar time ]; - noHaddock = true; meta = { homepage = "http://github.com/acw/bytestring-progress"; description = "A library for tracking the consumption of a lazy ByteString"; From f735d9801d39ca273f118c31ee6efdae1c81babf Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 26 Aug 2013 12:20:12 +0200 Subject: [PATCH 132/286] haskell-diagrams: re-enable haddock documentation --- pkgs/development/libraries/haskell/diagrams/diagrams.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/development/libraries/haskell/diagrams/diagrams.nix b/pkgs/development/libraries/haskell/diagrams/diagrams.nix index 84d3d9bbf48..bed30e67ea3 100644 --- a/pkgs/development/libraries/haskell/diagrams/diagrams.nix +++ b/pkgs/development/libraries/haskell/diagrams/diagrams.nix @@ -7,7 +7,6 @@ cabal.mkDerivation (self: { buildDepends = [ diagramsContrib diagramsCore diagramsLib diagramsSvg ]; - noHaddock = true; jailbreak = true; meta = { homepage = "http://projects.haskell.org/diagrams"; From 95042a0923ecca83f308b5b247e5b8156129feda Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 26 Aug 2013 12:20:12 +0200 Subject: [PATCH 133/286] haskell-multirec: re-enable haddock documentation --- pkgs/development/libraries/haskell/multirec/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/development/libraries/haskell/multirec/default.nix b/pkgs/development/libraries/haskell/multirec/default.nix index a7d7459b455..61de0cace5b 100644 --- a/pkgs/development/libraries/haskell/multirec/default.nix +++ b/pkgs/development/libraries/haskell/multirec/default.nix @@ -4,7 +4,6 @@ cabal.mkDerivation (self: { pname = "multirec"; version = "0.7.3"; sha256 = "0k1wbjsvkl08nwjikflc8yyalk654mf8bvi1rhm28i4na52myi5y"; - noHaddock = true; meta = { homepage = "http://www.cs.uu.nl/wiki/GenericProgramming/Multirec"; description = "Generic programming for families of recursive datatypes"; From 1b40ae751a444a4a39dff7edc8794f5d44b5cd7d Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 26 Aug 2013 12:20:12 +0200 Subject: [PATCH 134/286] haskell-wxc: re-enable haddock documentation --- pkgs/development/libraries/haskell/wxHaskell/wxc.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/development/libraries/haskell/wxHaskell/wxc.nix b/pkgs/development/libraries/haskell/wxHaskell/wxc.nix index 74ca4f91d70..b89b39acb50 100644 --- a/pkgs/development/libraries/haskell/wxHaskell/wxc.nix +++ b/pkgs/development/libraries/haskell/wxHaskell/wxc.nix @@ -6,7 +6,6 @@ cabal.mkDerivation (self: { sha256 = "1bh20i1rb8ng0ni1v98nm8qv5wni19dvxwf5i3ijxhrxqdq4i7p6"; buildDepends = [ wxdirect ]; extraLibraries = [ libX11 mesa wxGTK ]; - noHaddock = true; postInstall = '' cp -v dist/build/libwxc.so.${self.version} $out/lib/libwxc.so ''; From fb83f8605f3d8a6449fccd53759023f58627fe3b Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 26 Aug 2013 12:39:33 +0200 Subject: [PATCH 135/286] pkgs/build-support/cabal: add support for running specific tests only via 'testTarget' The dns packages requires this feature, because it ships two test programs: one of them requires network access (so we cannot run it), but the other test does not. Setting testTarget appropriately allows us to run only one of the two suites. --- pkgs/build-support/cabal/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index d57afb7bf9d..e8161e2e818 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -80,6 +80,9 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; # build-depends Cabal fields stated in test-suite stanzas testDepends = []; + # target(s) passed to the cabal test phase as an argument + testTarget = ""; + # build-tools Cabal field buildTools = []; @@ -159,7 +162,7 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; checkPhase = stdenv.lib.optional self.doCheck '' eval "$preCheck" - ./Setup test + ./Setup test ${self.testTarget} eval "$postCheck" ''; From 884a8fc7b591c31ef16979af3f1049b9b9617a6a Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 26 Aug 2013 12:40:27 +0200 Subject: [PATCH 136/286] haskell-dns: run only the 'spec' test suite, the 'network' test suite won't succeed on Hydra --- pkgs/development/libraries/haskell/dns/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/haskell/dns/default.nix b/pkgs/development/libraries/haskell/dns/default.nix index e80f4379aa7..85f3a5628b6 100644 --- a/pkgs/development/libraries/haskell/dns/default.nix +++ b/pkgs/development/libraries/haskell/dns/default.nix @@ -14,7 +14,7 @@ cabal.mkDerivation (self: { attoparsec attoparsecConduit binary blazeBuilder conduit hspec iproute mtl network networkConduit random ]; - doCheck = false; + testTarget = "spec"; meta = { description = "DNS library in Haskell"; license = self.stdenv.lib.licenses.bsd3; From 81a647696e9d75830f0c2e6acf6f4f36baade858 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 26 Aug 2013 14:25:51 +0200 Subject: [PATCH 137/286] xz: Update to 5.0.5 --- pkgs/tools/compression/xz/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/compression/xz/default.nix b/pkgs/tools/compression/xz/default.nix index 26c1597f2aa..6d59bd927cf 100644 --- a/pkgs/tools/compression/xz/default.nix +++ b/pkgs/tools/compression/xz/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { - name = "xz-5.0.4"; + name = "xz-5.0.5"; src = fetchurl { url = "http://tukaani.org/xz/${name}.tar.bz2"; - sha256 = "14nf55b47335aakswqk0kqv1qsh4269rnb757dmkkbd1sdhb1naw"; + sha256 = "1404i59bp6rzxya0br1q9njdv32z4sggyfrkjr7vq695hk94hv0n"; }; doCheck = true; From 2145471304a75f79950ef913c603cf2e2bf51664 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 26 Aug 2013 14:28:56 +0200 Subject: [PATCH 138/286] bash: Update to 4.2-p45 --- pkgs/shells/bash/bash-4.2-patches.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/shells/bash/bash-4.2-patches.nix b/pkgs/shells/bash/bash-4.2-patches.nix index 52392f4b32c..ac6e9e97f18 100644 --- a/pkgs/shells/bash/bash-4.2-patches.nix +++ b/pkgs/shells/bash/bash-4.2-patches.nix @@ -43,4 +43,7 @@ patch: [ (patch "040" "0v5a98ybibwsd4iyh18gy0kc51mx8qn9w2wfpjaiycn7yg5gjrdj") (patch "041" "1szmm8xv41hvbzgxfwrj6dg85wa7zy3781nnil428rlzpm8ikk05") (patch "042" "017kpdqy6v9sgi2a931wyzpix86n9mkalpm6n9cb45v58lgmraps") +(patch "043" "0mswgjk3z80qm1mb93jmbql27nbczxk86cw5byf0m29y1y2869nw") +(patch "044" "1rk6jywzfvg1crvhib1zk37rsps73minhr7l4vcb3vfdkin2vlqh") +(patch "045" "0vcqn9rb26bahhrarbwhpa0ny0nrf4vyrzh97d44lfcxypqfzdyx") ] From 1f60a7c4bcdbab38260681c77c007d28793d4e4d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 26 Aug 2013 14:50:45 +0200 Subject: [PATCH 139/286] less: Update to 458 For some crazy reason, less is a stdenv dependency. --- pkgs/tools/misc/less/default.nix | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/pkgs/tools/misc/less/default.nix b/pkgs/tools/misc/less/default.nix index d038abbfc81..3183fe2ca38 100644 --- a/pkgs/tools/misc/less/default.nix +++ b/pkgs/tools/misc/less/default.nix @@ -1,13 +1,22 @@ -{stdenv, fetchurl, ncurses}: - -stdenv.mkDerivation { - name = "less-451"; - +{ stdenv, fetchurl, ncurses }: + +stdenv.mkDerivation rec { + name = "less-458"; + src = fetchurl { - url = http://www.greenwoodsoftware.com/less/less-451.tar.gz; - sha256 = "9fe8287c647afeafb4149c5dedaeacfd20971ed7c26c7553794bb750536b5f57"; + url = "http://www.greenwoodsoftware.com/less/${name}.tar.gz"; + sha256 = "1b7wn1nk8qlzx20jmn9l6zcbw81n9g0w9zzhhzab6m6yks0wfdp5"; + }; + + # Look for ‘sysless’ in /etc. + configureFlags = "--sysconfdir=/etc"; + + buildInputs = [ ncurses ]; + + meta = { + homepage = http://www.greenwoodsoftware.com/less/; + description = "A more advanced file pager than ‘more’"; + platforms = stdenv.lib.platforms.linux; + maintainers = [ stdenv.lib.maintainers.eelco ]; }; - - buildInputs = [ncurses]; - } From 8adb1d003e1f20ba814dba97059bf2ad41bcd2db Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 26 Aug 2013 14:52:22 +0200 Subject: [PATCH 140/286] ed: Update to 1.9 --- pkgs/applications/editors/ed/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/ed/default.nix b/pkgs/applications/editors/ed/default.nix index 3e22cfd0412..88b539d29f5 100644 --- a/pkgs/applications/editors/ed/default.nix +++ b/pkgs/applications/editors/ed/default.nix @@ -1,11 +1,11 @@ { fetchurl, stdenv }: stdenv.mkDerivation rec { - name = "ed-1.7"; + name = "ed-1.9"; src = fetchurl { url = "mirror://gnu/ed/${name}.tar.gz"; - sha256 = "0c908wb5pm48rjrrfbm5dhrqzys8f1dbvi90dn0vgwjzk80l2hl9"; + sha256 = "122syihsx2hwzj75mkf5a9ssiky2xby748kp4cc00wzhmp7p5cym"; }; /* FIXME: Tests currently fail on Darwin: From 8f3b31464b3de633d38dc4bdd654ab7a212d09a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 27 Aug 2013 10:49:12 +0200 Subject: [PATCH 141/286] dbus_cplusplus: fix build with gcc>=4.7, via Gentoo patch --- pkgs/development/libraries/dbus-cplusplus/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/libraries/dbus-cplusplus/default.nix b/pkgs/development/libraries/dbus-cplusplus/default.nix index 0a4b80d3f3e..2bd4f814985 100644 --- a/pkgs/development/libraries/dbus-cplusplus/default.nix +++ b/pkgs/development/libraries/dbus-cplusplus/default.nix @@ -10,6 +10,12 @@ stdenv.mkDerivation rec { sha256 = "0qafmy2i6dzx4n1dqp6pygyy6gjljnb7hwjcj2z11c1wgclsq4dw"; }; + patches = [( fetchurl { + url = http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/dbus-c%2B%2B/files/dbus-c%2B%2B-0.9.0-gcc-4.7.patch; + name = "gcc-4.7.patch"; + sha256 = "0rwcz9pvc13b3yfr0lkifnfz0vb5q6dg240bzgf37ni4s8rpc72g"; + })]; + buildInputs = [ dbus glib gtkmm pkgconfig expat ]; configureFlags = "--disable-ecore"; From b78df59fde1c6f3fd1c3b34e24e9e251c4c0c384 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 27 Aug 2013 11:38:20 +0200 Subject: [PATCH 142/286] coin3d: fix build with newer gcc --- pkgs/development/libraries/coin3d/default.nix | 9 +++++ .../libraries/coin3d/gcc-4.8.patch | 38 +++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 pkgs/development/libraries/coin3d/gcc-4.8.patch diff --git a/pkgs/development/libraries/coin3d/default.nix b/pkgs/development/libraries/coin3d/default.nix index b477a88ed53..5eb93621f41 100644 --- a/pkgs/development/libraries/coin3d/default.nix +++ b/pkgs/development/libraries/coin3d/default.nix @@ -9,6 +9,15 @@ stdenv.mkDerivation rec { sha256 = "05ylhrcglm81dajbk132l1w892634z2i97x10fm64y1ih72phd2q"; }; + patches = [ + (fetchurl { + url = http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-libs/coin/files/coin-3.1.3-gcc-4.7.patch; + name = "gcc-4.7.patch"; + sha256 = "076dyc52swk8qc7ylps53fg6iqmd52x8s7m18i80x49dd109yw20"; + }) + ./gcc-4.8.patch # taken from FC-17 source rpm + ]; + buildInputs = [ mesa ]; meta = { diff --git a/pkgs/development/libraries/coin3d/gcc-4.8.patch b/pkgs/development/libraries/coin3d/gcc-4.8.patch new file mode 100644 index 00000000000..be5b8b03b63 --- /dev/null +++ b/pkgs/development/libraries/coin3d/gcc-4.8.patch @@ -0,0 +1,38 @@ +From 9f5d96a2b9a71ab539237d2dab4c54fc46fc5c5b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Ralf=20Cors=C3=A9pius?= +Date: Thu, 18 Apr 2013 19:17:06 +0200 +Subject: [PATCH 10/10] GCC-4.8.0 fixes + +--- + src/fonts/freetype.cpp | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/fonts/freetype.cpp b/src/fonts/freetype.cpp +index 760b88b..e705d3a 100644 +--- a/src/fonts/freetype.cpp ++++ b/src/fonts/freetype.cpp +@@ -32,18 +32,18 @@ + + 20050613 mortene. */ + +-#include "fonts/freetype.h" +- + #ifdef HAVE_CONFIG_H + #include "config.h" + #endif /* HAVE_CONFIG_H */ + +-#include ++#include + #include + + #include "glue/freetype.h" + #include "glue/GLUWrapper.h" + ++#include "fonts/freetype.h" ++ + /* ************************************************************************* */ + + #ifdef __cplusplus +-- +1.8.1.4 + From 2fa5f01bb9c9aee3ad88c1c6fa7c740b21e1a9e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 27 Aug 2013 12:06:47 +0200 Subject: [PATCH 143/286] wesnoth: fix build, minor update, parallel builds Yes, games are the most important things in nixpkgs... not that I actually plan to play it anytime soon ;-) --- pkgs/games/wesnoth/default.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/games/wesnoth/default.nix b/pkgs/games/wesnoth/default.nix index b8e53b0cefb..f279127b62b 100644 --- a/pkgs/games/wesnoth/default.nix +++ b/pkgs/games/wesnoth/default.nix @@ -4,20 +4,21 @@ stdenv.mkDerivation rec { pname = "wesnoth"; - version = "1.10.5"; + version = "1.10.7"; name = "${pname}-${version}"; src = fetchurl { url = "mirror://sourceforge/sourceforge/${pname}/${name}.tar.bz2"; - sha256 = "1rvlr8c3vzhgd33vzc1hfhiil6d7hc3px8r8p79vmp3kwi3d49zn"; + sha256 = "0gi5fzij48hmhhqxc370jxvxig5q3d70jiz56rjn8yx514s5lfwa"; }; buildInputs = [ SDL SDL_image SDL_mixer SDL_net SDL_ttf pango gettext zlib boost fribidi cmake freetype libpng pkgconfig lua dbus fontconfig libtool ]; - # Make the package build with the gcc currently available in Nixpkgs. - NIX_CFLAGS_COMPILE = "-Wno-ignored-qualifiers"; + cmakeFlags = [ "-DENABLE_STRICT_COMPILATION=FALSE" ]; # newer gcc problems http://gna.org/bugs/?21030 + + enableParallelBuilding = true; meta = with stdenv.lib; { description = "The Battle for Wesnoth, a free, turn-based strategy game with a fantasy theme"; From 2c217cc0b19ff4f6d78e6469d77ff2cd5b92c9c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 27 Aug 2013 14:51:35 +0200 Subject: [PATCH 144/286] perl: disable tests on Darwin, refactor stdenv.lib usage There was a mysterious error, which I don't have resources to investigate: Removing test lib/Net/hostent.t sed: -i: No such file or directory --- .../interpreters/perl/5.16/default.nix | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index c838bb35ab5..60bfacf419b 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -6,6 +6,10 @@ let in +with { + inherit (stdenv.lib) optional optionalString; +}; + stdenv.mkDerivation rec { name = "perl-5.16.3"; @@ -18,8 +22,8 @@ stdenv.mkDerivation rec { [ # Do not look in /usr etc. for dependencies. ./no-sys-dirs.patch ] - ++ stdenv.lib.optional stdenv.isSunOS ./ld-shared.patch - ++ stdenv.lib.optional stdenv.isDarwin ./no-libutil.patch; + ++ optional stdenv.isSunOS ./ld-shared.patch + ++ optional stdenv.isDarwin ./no-libutil.patch; # Build a thread-safe Perl with a dynamic libperls.o. We need the # "installstyle" option to ensure that modules are put under @@ -35,7 +39,7 @@ stdenv.mkDerivation rec { "-Dlocincpth=${libc}/include" "-Dloclibpth=${libc}/lib" ] - ++ stdenv.lib.optional (stdenv ? glibc) "-Dusethreads"; + ++ optional (stdenv ? glibc) "-Dusethreads"; configureScript = "${stdenv.shell} ./Configure"; @@ -47,12 +51,12 @@ stdenv.mkDerivation rec { '' configureFlags="$configureFlags -Dprefix=$out -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3" - ${stdenv.lib.optionalString stdenv.isArm '' + ${optionalString stdenv.isArm '' configureFlagsArray=(-Dldflags="-lm -lrt") ''} ''; - preBuild = stdenv.lib.optionalString (!(stdenv ? gcc && stdenv.gcc.nativeTools)) + preBuild = 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)'" @@ -60,7 +64,7 @@ stdenv.mkDerivation rec { setupHook = ./setup-hook.sh; - doCheck = true; + doCheck = !stdenv.isDarwin; # some network-related tests don't work, mostly probably due to our sandboxing testsToSkip = '' @@ -68,12 +72,12 @@ stdenv.mkDerivation rec { dist/IO/t/{io_multihomed.t,io_sock.t} \ t/porting/{maintainers.t,regen.t} \ cpan/Socket/t/get{name,addr}info.t \ - '' + stdenv.lib.optionalString stdenv.isFreeBSD '' + '' + optionalString stdenv.isFreeBSD '' cpan/CPANPLUS/t/04_CPANPLUS-Module.t \ cpan/CPANPLUS/t/20_CPANPLUS-Dist-MM.t \ '' + " "; - postPatch = '' + postPatch = optionalString (!stdenv.isDarwin) /* this failed on Darwin, no idea why */ '' for test in ${testsToSkip}; do echo "Removing test" $test rm "$test" From 0e1a1748f4ad4736a62b73cc72ad2e96ed4a0a18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 27 Aug 2013 15:41:00 +0200 Subject: [PATCH 145/286] mu: fix build by using older texinfo --- pkgs/top-level/all-packages.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4fa44808e22..0a23116252c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5130,7 +5130,9 @@ let mtdev = callPackage ../development/libraries/mtdev { }; - mu = callPackage ../tools/networking/mu { }; + mu = callPackage ../tools/networking/mu { + texinfo = texinfo4; + }; muparser = callPackage ../development/libraries/muparser { }; From 604d201b7c480002cf74f1a8f3fbccebca7a9cfc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 27 Aug 2013 16:16:11 +0200 Subject: [PATCH 146/286] v8: fix build with newer gcc --- pkgs/development/libraries/v8/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/v8/default.nix b/pkgs/development/libraries/v8/default.nix index 3fc3138ef52..13c2990c73d 100644 --- a/pkgs/development/libraries/v8/default.nix +++ b/pkgs/development/libraries/v8/default.nix @@ -26,7 +26,7 @@ stdenv.mkDerivation { ln -sv ${gyp}/bin/gyp build/gyp/gyp ''; - nativeBuildInputs = stdenv.lib.optional (system == "i686-linux") which; + nativeBuildInputs = [ which ]; buildInputs = [ readline python ]; buildFlags = [ @@ -35,6 +35,9 @@ stdenv.mkDerivation { "${arch}.release" ]; + # http://code.google.com/p/v8/issues/detail?id=2149 + NIX_CFLAGS_COMPILE = "-Wno-unused-local-typedefs -Wno-aggressive-loop-optimizations"; + enableParallelBuilding = true; installPhase = '' From 1778200519a18ae00751ab3015d0e665373c32f6 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 29 Aug 2013 10:40:50 +0200 Subject: [PATCH 147/286] perl: re-enable the postPatch hook on Darwin The problem was that sed(1) variants other than GNU sed require a backup suffix to the -i option. --- pkgs/development/interpreters/perl/5.16/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index 60bfacf419b..4cf809c66ed 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -77,12 +77,12 @@ stdenv.mkDerivation rec { cpan/CPANPLUS/t/20_CPANPLUS-Dist-MM.t \ '' + " "; - postPatch = optionalString (!stdenv.isDarwin) /* this failed on Darwin, no idea why */ '' + postPatch = '' for test in ${testsToSkip}; do echo "Removing test" $test rm "$test" pat=`echo "$test" | sed 's,/,\\\\/,g'` # just escape slashes - sed "/^$pat/d" -i MANIFEST + sed "/^$pat/d" -i.bak MANIFEST done ''; From 71f191bdbaa8b1b9bf6f09c3aa294640b42a0f4d Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 29 Aug 2013 12:06:39 +0200 Subject: [PATCH 148/286] perl: revert "re-enable the postPatch hook on Darwin" This reverts commit 1778200519a18ae00751ab3015d0e665373c32f6. Apparently, the sed -i syntax is different from what I thought, because now the build fails on Darwin, saying: sed: -i.bak: No such file or directory See http://hydra.nixos.org/build/5829944/nixlog/1/raw for more details. --- pkgs/development/interpreters/perl/5.16/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index 4cf809c66ed..60bfacf419b 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -77,12 +77,12 @@ stdenv.mkDerivation rec { cpan/CPANPLUS/t/20_CPANPLUS-Dist-MM.t \ '' + " "; - postPatch = '' + postPatch = optionalString (!stdenv.isDarwin) /* this failed on Darwin, no idea why */ '' for test in ${testsToSkip}; do echo "Removing test" $test rm "$test" pat=`echo "$test" | sed 's,/,\\\\/,g'` # just escape slashes - sed "/^$pat/d" -i.bak MANIFEST + sed "/^$pat/d" -i MANIFEST done ''; From 1cddbc4bb498341591ed5bc2e7142384036dfdcf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 29 Aug 2013 13:56:06 +0200 Subject: [PATCH 149/286] ctemplate: minor update to fix build with gcc>=4.7 --- pkgs/development/libraries/libctemplate/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libctemplate/default.nix b/pkgs/development/libraries/libctemplate/default.nix index 3af7e7e4387..36652f7abc7 100644 --- a/pkgs/development/libraries/libctemplate/default.nix +++ b/pkgs/development/libraries/libctemplate/default.nix @@ -12,11 +12,11 @@ stdenv.mkDerivation rec { }; pname = "ctemplate"; - version = "2.0"; + version = "2.2"; name = "${pname}-${version}"; src = fetchurl { url = "http://ctemplate.googlecode.com/files/${name}.tar.gz"; - sha256 = "0scdqqbp8fy9jiak60dj1051gbyb8xmlm4rdz4h1myxifjagwbfa"; + sha256 = "0vv8gvyndppm9m5s1i5k0jvwcz41l1vfgg04r7nssdpzyz0cpwq4"; }; } From fa7dcd19318be6ba325f617cd07b6e2fffb42302 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 29 Aug 2013 14:04:47 +0200 Subject: [PATCH 150/286] ois: fix build with gcc>=4.7 via a Gentoo patch --- pkgs/development/libraries/ois/default.nix | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/ois/default.nix b/pkgs/development/libraries/ois/default.nix index abf6c7112a5..67df3645eb9 100644 --- a/pkgs/development/libraries/ois/default.nix +++ b/pkgs/development/libraries/ois/default.nix @@ -1,4 +1,4 @@ -x@{builderDefsPackage +x@{builderDefsPackage, fetchurl , autoconf, automake, libtool, m4 , libX11, xproto, libXi, inputproto , libXaw, libXmu, libXt @@ -30,10 +30,17 @@ rec { inherit (sourceInfo) name version; inherit buildInputs; - phaseNames = ["doConfigure" "doMakeInstall"]; + phaseNames = ["doPatch" "doConfigure" "doMakeInstall"]; + + patches = [(fetchurl { + url = http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-games/ois/files/ois-1.3-gcc47.patch; + sha256 = "026jw06n42bcrmg0sbdhzc4cqxsnf7fw30a2z9cigd9x282zhii8"; + name = "gcc47.patch"; + })]; + patchFlags = "-p0"; configureCommand = ''sh bootstrap; sh configure''; - + meta = { description = "Object-oriented C++ input system"; maintainers = with a.lib.maintainers; From e7741a007bf91d9aa0c8423deb60b8c01c1ea76a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 29 Aug 2013 14:15:07 +0200 Subject: [PATCH 151/286] krb5: minor security update CVE-2002-2443 --- pkgs/development/libraries/kerberos/krb5.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/kerberos/krb5.nix b/pkgs/development/libraries/kerberos/krb5.nix index 2de50c4a304..647a6b03113 100644 --- a/pkgs/development/libraries/kerberos/krb5.nix +++ b/pkgs/development/libraries/kerberos/krb5.nix @@ -2,7 +2,7 @@ let pname = "krb5"; - version = "1.11.1"; + version = "1.11.3"; name = "${pname}-${version}"; webpage = http://web.mit.edu/kerberos/; in @@ -12,7 +12,7 @@ stdenv.mkDerivation (rec { src = fetchurl { url = "${webpage}/dist/krb5/1.11/${name}-signed.tar"; - sha256 = "0s07sbwrj3c61gc29g016csim04azb9h74rf5595fxzqlzv0y8rs"; + sha256 = "1daiaxgkxcryqs37w28v4x1vajqmay4l144d1zd9c2d7jjxr9gcs"; }; buildInputs = [ perl ncurses yacc ]; From fca031e04ba255ac75b76b63def636e8c735f986 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 29 Aug 2013 14:42:14 +0200 Subject: [PATCH 152/286] sonic_visualizer: fix build on newer gcc via a Gentoo patch --- pkgs/applications/audio/sonic-visualiser/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/applications/audio/sonic-visualiser/default.nix b/pkgs/applications/audio/sonic-visualiser/default.nix index aeb90c09455..6e15478ff63 100644 --- a/pkgs/applications/audio/sonic-visualiser/default.nix +++ b/pkgs/applications/audio/sonic-visualiser/default.nix @@ -14,6 +14,11 @@ stdenv.mkDerivation rec { url = "http://code.soundsoftware.ac.uk/attachments/download/194/${name}.tar.gz"; sha256 = "00igf7j6s8xfyxnlkbqma0yby9pknxqzy8cmh0aw95ix80cw56fq"; }; + patches = [(fetchurl { + url = http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-sound/sonic-visualiser/files/sonic-visualiser-1.9-gcc47.patch; + sha256 = "0dhh111crvjvhcjqp7j9jqnvs8zmd6xrcirmzqrrnca1h0vbpkay"; + name = "gcc47.patch"; + })]; buildInputs = [ libsndfile qt4 fftw /* should be fftw3f ??*/ bzip2 librdf rubberband From d5e22f4b600bd56356fae7f63d5bee04ed93d829 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 29 Aug 2013 14:59:25 +0200 Subject: [PATCH 153/286] slibGuile: fix build via using older texinfo --- pkgs/top-level/all-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0a23116252c..45d7fe6c9cd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5458,6 +5458,7 @@ let slibGuile = callPackage ../development/libraries/slib { scheme = guile_1_8; + texinfo = texinfo4; # otherwise erros: must be after `@defun' to use `@defunx' }; smpeg = callPackage ../development/libraries/smpeg { }; From 646eaa23a12ac074ee35135939dde635506b1bae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 29 Aug 2013 15:19:06 +0200 Subject: [PATCH 154/286] xorg.xmodmap: fix build via a Gentoo patch --- pkgs/servers/x11/xorg/overrides.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix index 65e788aa2a1..6589c2ff419 100644 --- a/pkgs/servers/x11/xorg/overrides.nix +++ b/pkgs/servers/x11/xorg/overrides.nix @@ -191,6 +191,13 @@ in buildInputs = attrs.buildInputs ++ [args.intltool]; }; + xmodmap = attrs: attrs // { + patches = [(args.fetchurl { + url = http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-apps/xmodmap/files/xmodmap-1.0.7-_GNU_SOURCE.patch; + sha256 = "0q3zhy0wy1kkbpagzav8869fais4lw5q5vybgjj7wkmak06c5648"; + name = "new-gcc.patch"; + })]; + }; xorgserver = with xorg; attrs: attrs // { configureFlags = [ "--enable-xcsecurity" # enable SECURITY extension From c9f79922829c8b81d518a789431d0bee71f6a2ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 29 Aug 2013 15:19:42 +0200 Subject: [PATCH 155/286] stumpwm: fix build via using older texinfo --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 45d7fe6c9cd..a7135ac54d2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8489,7 +8489,7 @@ let stalonetray = callPackage ../applications/window-managers/stalonetray {}; stumpwm = builderDefsPackage (import ../applications/window-managers/stumpwm) { - inherit texinfo; + texinfo = texinfo4; # otherwise error: @itemx must follow @item clisp = clisp_2_44_1; }; From 9f541bcdde9cbc718a3ce7bb4fb900a9d671def8 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 30 Aug 2013 10:42:40 +0200 Subject: [PATCH 156/286] pkgs/build-support/cabal: fix the logic of the 'noHaddock' flag that was broken in 27905ce17e1b1aed55edbff5856082b8c1b51fc7 --- pkgs/build-support/cabal/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index e8161e2e818..7f4d431c007 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -150,7 +150,7 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; ./Setup build export GHC_PACKAGE_PATH=$(${ghc.GHCPackages}) - if [ -n "$noHaddock" ]; then + if [ -z "$noHaddock" ]; then export LANG="en_US.UTF-8" ./Setup haddock unset LANG From bf3b9ccee35faf7d0e306b0a522edde280817c68 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sat, 31 Aug 2013 11:00:08 +0200 Subject: [PATCH 157/286] pkgs/build-support/cabal: unconditionally set $LANG to "en_US.UTF-8" during Haskell builds Haskell tools like Haddock require a locale to be configured, so do some regression test suites. --- pkgs/build-support/cabal/default.nix | 12 ++++++------ pkgs/top-level/haskell-packages.nix | 1 + 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index 7f4d431c007..a1dc68e6484 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -1,6 +1,6 @@ # generic builder for Cabal packages -{ stdenv, fetchurl, lib, pkgconfig, ghc, Cabal, jailbreakCabal +{ stdenv, fetchurl, lib, pkgconfig, ghc, Cabal, jailbreakCabal, glibcLocales , enableLibraryProfiling ? false , enableCheckPhase ? true }: @@ -112,6 +112,10 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; (stdenv.lib.enableFeature self.enableSplitObjs "split-objs") ] ++ stdenv.lib.optional (stdenv.lib.versionOlder "7" ghc.ghcVersion) (stdenv.lib.enableFeature self.doCheck "tests"); + # GHC needs the locale configured during the Haddock phase. + LANG = "en_US.UTF-8"; + LOCALE_ARCHIVE = lib.optionalString stdenv.isLinux "${glibcLocales}/lib/locale/locale-archive"; + # compiles Setup and configures configurePhase = '' eval "$preConfigure" @@ -150,11 +154,7 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; ./Setup build export GHC_PACKAGE_PATH=$(${ghc.GHCPackages}) - if [ -z "$noHaddock" ]; then - export LANG="en_US.UTF-8" - ./Setup haddock - unset LANG - fi + test -n "$noHaddock" || ./Setup haddock eval "$postBuild" ''; diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 07623af281f..44b61666749 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -105,6 +105,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y); cabal = callPackage ../build-support/cabal { enableLibraryProfiling = enableLibraryProfiling; enableCheckPhase = pkgs.stdenv.lib.versionOlder "7.4" self.ghc.ghcVersion; + glibcLocales = if pkgs.stdenv.isLinux then pkgs.glibcLocales else null; }; # A variant of the cabal build driver that disables unit testing. From ed507d70bc645461b78180b256b074955b30fc55 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sat, 31 Aug 2013 11:01:04 +0200 Subject: [PATCH 158/286] haskell-modular-arithmetic: re-enable the Haddock phase for this package --- .../development/libraries/haskell/modular-arithmetic/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/development/libraries/haskell/modular-arithmetic/default.nix b/pkgs/development/libraries/haskell/modular-arithmetic/default.nix index 7d53d81f7bb..c4a77630e6a 100644 --- a/pkgs/development/libraries/haskell/modular-arithmetic/default.nix +++ b/pkgs/development/libraries/haskell/modular-arithmetic/default.nix @@ -4,7 +4,6 @@ cabal.mkDerivation (self: { pname = "modular-arithmetic"; version = "1.0.1.1"; sha256 = "14n83kjmz8mqjivjhwxk1zckms5z3gn77yq2hsw2yybzff2vkdkd"; - noHaddock = true; meta = { description = "A type for integers modulo some constant"; license = self.stdenv.lib.licenses.bsd3; From 9475e4d50ac6f2d008d8067b18ca6c469fdf953c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 2 Sep 2013 15:45:29 +0200 Subject: [PATCH 159/286] llvm (merge amend): fix evaluation Regular binutils now include gold. --- pkgs/development/compilers/llvm/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/llvm/default.nix b/pkgs/development/compilers/llvm/default.nix index abd3277d919..9337f965c96 100644 --- a/pkgs/development/compilers/llvm/default.nix +++ b/pkgs/development/compilers/llvm/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, perl, groff, cmake, python, libffi, binutils_gold }: +{ stdenv, fetchurl, perl, groff, cmake, python, libffi, binutils }: let version = "3.3"; in @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { cmakeFlags = with stdenv; [ "-DCMAKE_BUILD_TYPE=Release" "-DLLVM_ENABLE_FFI=ON" - "-DLLVM_BINUTILS_INCDIR=${binutils_gold}/include" + "-DLLVM_BINUTILS_INCDIR=${binutils}/include" ] ++ lib.optional (!isDarwin) [ "-DBUILD_SHARED_LIBS=ON" ]; enableParallelBuilding = true; From c074433fc6f1d4ed9fed7a137ec495ad4e27968d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 2 Sep 2013 15:54:12 +0200 Subject: [PATCH 160/286] binutils: add support for x86_64 in i686 builds (close #857) Also some style refactoring around repeating "stdenv.lib.optional*". The author of the idea is @errge. --- .../tools/misc/binutils/default.nix | 26 +++++++++++-------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index e15a4502e52..179f28cfea9 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -3,8 +3,11 @@ , deterministic ? false }: let basename = "binutils-2.23.2"; in + +with { inherit (stdenv.lib) optional optionals optionalString; }; + stdenv.mkDerivation rec { - name = basename + stdenv.lib.optionalString (cross != null) "-${cross.config}"; + name = basename + optionalString (cross != null) "-${cross.config}"; src = fetchurl { url = "mirror://gnu/binutils/${basename}.tar.bz2"; @@ -21,18 +24,18 @@ stdenv.mkDerivation rec { # That requires upstream changes for things to work. So we can patch it to # get the old behaviour by now. ./dtneeded.patch - ] ++ (stdenv.lib.optional deterministic ./deterministic.patch); + ] ++ optional deterministic ./deterministic.patch; buildInputs = [ zlib ] - ++ stdenv.lib.optional gold bison; + ++ optional gold bison; inherit noSysDirs; preConfigure = '' # Clear the default library search path. if test "$noSysDirs" = "1"; then - echo 'NATIVE_LIB_DIRS=' >> ld/configure.tgt + echo 'NATIVE_LIB_DIRS=' >> ld/configure.tgt fi # Use symlinks instead of hard links to save space ("strip" in the @@ -46,15 +49,16 @@ stdenv.mkDerivation rec { # to the bootstrap-tools libgcc (as uses to happen on arm/mips) NIX_CFLAGS_COMPILE = "-static-libgcc"; - configureFlags = "--disable-werror" # needed for dietlibc build - + stdenv.lib.optionalString (stdenv.system == "mips64el-linux") - " --enable-fix-loongson2f-nop" - + stdenv.lib.optionalString (cross != null) " --target=${cross.config}" - + stdenv.lib.optionalString gold " --enable-gold --enable-plugins" - + stdenv.lib.optionalString deterministic " --enable-deterministic-archives"; + configureFlags = [ "--disable-werror" ] # needed for dietlibc build + ++ optional (stdenv.system == "mips64el-linux") "--enable-fix-loongson2f-nop" + ++ optional (cross != null) "--target=${cross.config}" + ++ optionals gold [ "--enable-gold" "--enable-plugins" ] + ++ optional deterministic "--enable-deterministic-archives" + ++ optional (stdenv.system == "i686-linux") "--enable-targets=x86_64-linux-gnu" + ; enableParallelBuilding = true; - + meta = { description = "GNU Binutils, tools for manipulating binaries (linker, assembler, etc.)"; From 53a6b55945e3c4935b4642cd9548e5f346acecdc Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 6 Sep 2013 23:52:43 +0200 Subject: [PATCH 161/286] haskell-diagrams: revert "re-enable haddock documentation" This reverts commit f735d9801d39ca273f118c31ee6efdae1c81babf. --- pkgs/development/libraries/haskell/diagrams/diagrams.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/haskell/diagrams/diagrams.nix b/pkgs/development/libraries/haskell/diagrams/diagrams.nix index 107ef9ae85a..efa63bdc0b7 100644 --- a/pkgs/development/libraries/haskell/diagrams/diagrams.nix +++ b/pkgs/development/libraries/haskell/diagrams/diagrams.nix @@ -7,6 +7,7 @@ cabal.mkDerivation (self: { buildDepends = [ diagramsContrib diagramsCore diagramsLib diagramsSvg ]; + noHaddock = true; jailbreak = true; meta = { homepage = "http://projects.haskell.org/diagrams"; From 7ca2ab26c690787c5f004205c274525368b11862 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sun, 8 Sep 2013 22:55:54 +0200 Subject: [PATCH 162/286] all-packages.nix: update to bison 3.x by default Let's see what happens. --- 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 c9537715be9..216969cb1dd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3414,8 +3414,8 @@ let })); bison2 = callPackage ../development/tools/parsing/bison/2.x.nix { }; - bison3 = lowPrio (callPackage ../development/tools/parsing/bison/3.x.nix { }); - bison = bison2; + bison3 = callPackage ../development/tools/parsing/bison/3.x.nix { }; + bison = bison3; buildbot = callPackage ../development/tools/build-managers/buildbot { inherit (pythonPackages) twisted jinja2 sqlalchemy sqlalchemy_migrate; From 701937b085d35caa87b63384b53fcb69b0d636de Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 9 Sep 2013 10:34:37 +0200 Subject: [PATCH 163/286] binutils: remove unused flex2535, bc, and dejagnu arguments --- 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 179f28cfea9..39fc28e4942 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, noSysDirs, zlib -, cross ? null, gold ? true, bison ? null, flex2535 ? null, bc ? null, dejagnu ? null +, cross ? null, gold ? true, bison ? null , deterministic ? false }: let basename = "binutils-2.23.2"; in From 2c5851b633f386a1388a5436b42225b0dcbc454a Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 9 Sep 2013 10:38:27 +0200 Subject: [PATCH 164/286] Break an infinite recursion between flex and bison. Flex needs bison, but bison's test suite also needs flex, so we use an untested build of bison to bootstrap flex first. --- pkgs/top-level/all-packages.nix | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 216969cb1dd..3cde58bd2ad 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3552,16 +3552,25 @@ let flex = flex2535; - flex2535 = callPackage ../development/tools/parsing/flex/flex-2.5.35.nix { }; + flex2535 = callPackage ../development/tools/parsing/flex/flex-2.5.35.nix { + # Break infinite recursion: bison's test suite needs flex, so we + # use an untested bison build to build flex first. + yacc = bison.override { flex = null; }; + }; - flex2534 = callPackage ../development/tools/parsing/flex/flex-2.5.34.nix { }; + flex2534 = callPackage ../development/tools/parsing/flex/flex-2.5.34.nix { + yacc = bison.override { flex = null; }; + }; - flex2533 = callPackage ../development/tools/parsing/flex/flex-2.5.33.nix { }; + flex2533 = callPackage ../development/tools/parsing/flex/flex-2.5.33.nix { + yacc = bison.override { flex = null; }; + }; # Note: 2.5.4a is much older than 2.5.35 but happens first when sorting # alphabetically, hence the low priority. flex254a = lowPrio (import ../development/tools/parsing/flex/flex-2.5.4a.nix { - inherit fetchurl stdenv yacc; + inherit fetchurl stdenv; + yacc = bison.override { flex = null; }; }); m4 = gnum4; From 6451264e63917fdccdca3a4ad7ce0d9dd6d106ad Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 9 Sep 2013 10:39:56 +0200 Subject: [PATCH 165/286] Drop obsolete versions of flex: we only used the latest one, 2.5.35. --- .../flex/{flex-2.5.35.nix => default.nix} | 0 .../tools/parsing/flex/flex-2.5.33.nix | 20 ------------------- .../tools/parsing/flex/flex-2.5.34.nix | 19 ------------------ .../tools/parsing/flex/flex-2.5.4a.nix | 12 ----------- pkgs/top-level/all-packages.nix | 19 +----------------- pkgs/top-level/release-small.nix | 1 - pkgs/top-level/release.nix | 1 - 7 files changed, 1 insertion(+), 71 deletions(-) rename pkgs/development/tools/parsing/flex/{flex-2.5.35.nix => default.nix} (100%) delete mode 100644 pkgs/development/tools/parsing/flex/flex-2.5.33.nix delete mode 100644 pkgs/development/tools/parsing/flex/flex-2.5.34.nix delete mode 100644 pkgs/development/tools/parsing/flex/flex-2.5.4a.nix diff --git a/pkgs/development/tools/parsing/flex/flex-2.5.35.nix b/pkgs/development/tools/parsing/flex/default.nix similarity index 100% rename from pkgs/development/tools/parsing/flex/flex-2.5.35.nix rename to pkgs/development/tools/parsing/flex/default.nix diff --git a/pkgs/development/tools/parsing/flex/flex-2.5.33.nix b/pkgs/development/tools/parsing/flex/flex-2.5.33.nix deleted file mode 100644 index 9be98689aea..00000000000 --- a/pkgs/development/tools/parsing/flex/flex-2.5.33.nix +++ /dev/null @@ -1,20 +0,0 @@ -# !!! this should be moved to default.nix eventually (but I delay -# doing that since it would cause a rebuild of lots of stuff). - -{stdenv, fetchurl, yacc, m4}: - -assert yacc != null && m4 != null; - -stdenv.mkDerivation { - name = "flex-2.5.33"; - src = fetchurl { - url = mirror://sourceforge/flex/flex-2.5.33.tar.bz2; - md5 = "343374a00b38d9e39d1158b71af37150"; - }; - buildInputs = [yacc]; - propagatedBuildInputs = [m4]; - - meta = { - description = "A fast lexical analyser generator"; - }; -} diff --git a/pkgs/development/tools/parsing/flex/flex-2.5.34.nix b/pkgs/development/tools/parsing/flex/flex-2.5.34.nix deleted file mode 100644 index d56cf0c88a2..00000000000 --- a/pkgs/development/tools/parsing/flex/flex-2.5.34.nix +++ /dev/null @@ -1,19 +0,0 @@ -# This should be moved to default.nix eventually (?) - -{stdenv, fetchurl, yacc, m4}: - -assert yacc != null && m4 != null; - -stdenv.mkDerivation { - name = "flex-2.5.34"; - src = fetchurl { - url = mirror://sourceforge/flex/flex-2.5.34.tar.bz2; - sha256 = "1c8e64f32508841b0441ddfb139c4cfd25fee3728cadb63f5f351c6eb9b224a6"; - }; - buildInputs = [yacc]; - propagatedBuildInputs = [m4]; - - meta = { - description = "A fast lexical analyser generator"; - }; -} diff --git a/pkgs/development/tools/parsing/flex/flex-2.5.4a.nix b/pkgs/development/tools/parsing/flex/flex-2.5.4a.nix deleted file mode 100644 index 13bb6834979..00000000000 --- a/pkgs/development/tools/parsing/flex/flex-2.5.4a.nix +++ /dev/null @@ -1,12 +0,0 @@ -{stdenv, fetchurl, yacc}: - -assert yacc != null; - -stdenv.mkDerivation { - name = "flex-2.5.4a"; - src = fetchurl { - url = mirror://sourceforge/flex/flex-2.5.4a.tar.gz; - md5 = "bd8753d0b22e1f4ec87a553a73021adf"; - }; - buildInputs = [yacc]; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3cde58bd2ad..c7e371e7fd7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3550,29 +3550,12 @@ let checkstyle = callPackage ../development/tools/analysis/checkstyle { }; - flex = flex2535; - - flex2535 = callPackage ../development/tools/parsing/flex/flex-2.5.35.nix { + flex = callPackage ../development/tools/parsing/flex { # Break infinite recursion: bison's test suite needs flex, so we # use an untested bison build to build flex first. yacc = bison.override { flex = null; }; }; - flex2534 = callPackage ../development/tools/parsing/flex/flex-2.5.34.nix { - yacc = bison.override { flex = null; }; - }; - - flex2533 = callPackage ../development/tools/parsing/flex/flex-2.5.33.nix { - yacc = bison.override { flex = null; }; - }; - - # Note: 2.5.4a is much older than 2.5.35 but happens first when sorting - # alphabetically, hence the low priority. - flex254a = lowPrio (import ../development/tools/parsing/flex/flex-2.5.4a.nix { - inherit fetchurl stdenv; - yacc = bison.override { flex = null; }; - }); - m4 = gnum4; global = callPackage ../development/tools/misc/global { }; diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix index 28d503d85fe..caf1bd60665 100644 --- a/pkgs/top-level/release-small.nix +++ b/pkgs/top-level/release-small.nix @@ -46,7 +46,6 @@ with import ./release-lib.nix { inherit supportedSystems; }; file = all; findutils = all; flex = all; - flex2535 = all; gcc = all; gcc33 = linux; gcc34 = linux; diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix index 1aae2ce4ee2..a9a45b9d57a 100644 --- a/pkgs/top-level/release.nix +++ b/pkgs/top-level/release.nix @@ -106,7 +106,6 @@ let file = all; findutils = all; flex = all; - flex2535 = all; fontforge = linux; fuse = linux; gajim = linux; From 445aa49c716c6373eca8b2395a10a2481718069e Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Wed, 11 Sep 2013 10:55:23 +0200 Subject: [PATCH 166/286] bison: prefer the tar.gz variant of the sources Apparently, the bootstrapping stdenv cannot unpack xz-compressed tarfiles. --- pkgs/development/tools/parsing/bison/3.x.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/parsing/bison/3.x.nix b/pkgs/development/tools/parsing/bison/3.x.nix index 9b1499c1537..ffc68a68f5f 100644 --- a/pkgs/development/tools/parsing/bison/3.x.nix +++ b/pkgs/development/tools/parsing/bison/3.x.nix @@ -4,8 +4,8 @@ stdenv.mkDerivation rec { name = "bison-3.0"; src = fetchurl { - url = "mirror://gnu/bison/${name}.tar.xz"; - sha256 = "1j14fqgi9wzqgsy4fhkcdrv4hv6rrvhvn84axs520w9b022mbb79"; + url = "mirror://gnu/bison/${name}.tar.gz"; + sha256 = "1ll22hcfslyl9n3pgvvphzdp18w9cyic8m0qimfnb8mrs1syrdz5"; }; nativeBuildInputs = [ m4 ] ++ stdenv.lib.optionals doCheck [perl flex]; From b962caede7767bf4420fcb55224d02a46b6d5b30 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sun, 15 Sep 2013 22:05:16 +0200 Subject: [PATCH 167/286] bison-3.x: fix build for good this time - Bison 3.x no longer compiles without Perl. - Don't try to run the test suite unless flex is available. --- pkgs/development/tools/parsing/bison/3.x.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/parsing/bison/3.x.nix b/pkgs/development/tools/parsing/bison/3.x.nix index ffc68a68f5f..e80f903db12 100644 --- a/pkgs/development/tools/parsing/bison/3.x.nix +++ b/pkgs/development/tools/parsing/bison/3.x.nix @@ -8,10 +8,10 @@ stdenv.mkDerivation rec { sha256 = "1ll22hcfslyl9n3pgvvphzdp18w9cyic8m0qimfnb8mrs1syrdz5"; }; - nativeBuildInputs = [ m4 ] ++ stdenv.lib.optionals doCheck [perl flex]; + nativeBuildInputs = [ m4 perl ] ++ stdenv.lib.optionals doCheck [ flex ]; propagatedBuildInputs = [ m4 ]; - doCheck = true; + doCheck = flex != null; meta = { homepage = "http://www.gnu.org/software/bison/"; From 5bb361dde360e152ced6560727feb0d653707da3 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 16 Sep 2013 10:59:26 +0200 Subject: [PATCH 168/286] gstreamer: builds only with bison 2.x --- pkgs/top-level/all-packages.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 95ff09d7b7b..a08b99818ef 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4286,7 +4286,9 @@ let gstFfmpeg = pkgs.gst_ffmpeg; }; - gstreamer = callPackage ../development/libraries/gstreamer/gstreamer {}; + gstreamer = callPackage ../development/libraries/gstreamer/gstreamer { + bison = bison2; + }; gst_plugins_base = callPackage ../development/libraries/gstreamer/gst-plugins-base {}; From c8b32a6c88b97639463fa81b74513ea0f52e60e6 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 16 Sep 2013 10:59:39 +0200 Subject: [PATCH 169/286] all-packages.nix: string trailing whitespace --- 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 a08b99818ef..82bb73f4d8e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -266,7 +266,7 @@ let buildEnv = import ../build-support/buildenv { inherit (pkgs) runCommand perl; }; - + buildFHSChrootEnv = import ../build-support/build-fhs-chrootenv { inherit stdenv glibc glibcLocales gcc coreutils diffutils findutils; inherit gnused gnugrep gnutar gzip bzip2 bashInteractive xz shadow gawk; @@ -9169,7 +9169,7 @@ let stardust = callPackage ../games/stardust {}; steam = callPackage_i686 ../games/steam {}; - + steamChrootEnv = callPackage_i686 ../games/steam/chrootenv.nix { zenity = gnome2.zenity; }; From a08837e9575620d519765e1783318e78e214c574 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 16 Sep 2013 11:01:11 +0200 Subject: [PATCH 170/286] cln: update to version 1.3.3 to fix build with gcc 4.8.x. --- pkgs/development/libraries/cln/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/cln/default.nix b/pkgs/development/libraries/cln/default.nix index 66629b0561b..f536e746d0e 100644 --- a/pkgs/development/libraries/cln/default.nix +++ b/pkgs/development/libraries/cln/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, gmp }: stdenv.mkDerivation rec { - name = "cln-1.3.1"; + name = "cln-1.3.3"; src = fetchurl { url = "${meta.homepage}${name}.tar.bz2"; - sha256 = "1sd8jy5vnmww537zq6g6i586ffslm7fjliz04krv6scapgklq6ca"; + sha256 = "04i6kdjwm4cr5pa70pilifnpvsh430rrlapkgw1x8c5vxkijxz2p"; }; buildInputs = [ gmp ]; From 613cf7923710a4af5ae992979d020a16cb2625be Mon Sep 17 00:00:00 2001 From: "Jason \\\"Don\\\" O'Conal" Date: Sat, 7 Sep 2013 10:38:36 +1000 Subject: [PATCH 171/286] esniper: fix build on darwin --- pkgs/applications/networking/esniper/default.nix | 15 +++++++-------- pkgs/tools/networking/curl/default.nix | 11 +++++++---- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/pkgs/applications/networking/esniper/default.nix b/pkgs/applications/networking/esniper/default.nix index 8208da621af..50a2764d375 100644 --- a/pkgs/applications/networking/esniper/default.nix +++ b/pkgs/applications/networking/esniper/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation { name = "esniper-2.28.0"; src = fetchurl { - url = "mirror://sourceforge/esniper/esniper-2-28-0.tgz"; + url = "mirror://sourceforge/esniper/esniper-2-28-0.tgz"; sha256 = "c2b0ccb757616b32f2d6cf54a4a5e367405fa7bcd6e6ed11835fe4f8a06a016b"; }; - buildInputs = [openssl curl]; + buildInputs = [ openssl curl ]; # Add support for CURL_CA_BUNDLE variable. patches = [ ./find-ca-bundle.patch ]; @@ -19,12 +19,11 @@ stdenv.mkDerivation { chmod 555 "$out/bin/snipe" ''; - meta = { + meta = with stdenv.lib; { description = "Simple, lightweight tool for sniping eBay auctions"; - homepage = "http://esnipe.rsourceforge.net"; - license = "GPLv2"; - - platforms = stdenv.lib.platforms.all; - maintainers = [ stdenv.lib.maintainers.simons ]; + homepage = http://esnipe.rsourceforge.net; + license = licenses.gpl2; + maintainers = with maintainers; [ lovek323 simons ]; + platforms = platforms.all; }; } diff --git a/pkgs/tools/networking/curl/default.nix b/pkgs/tools/networking/curl/default.nix index 74b0d026161..9902c1f1238 100644 --- a/pkgs/tools/networking/curl/default.nix +++ b/pkgs/tools/networking/curl/default.nix @@ -27,11 +27,13 @@ stdenv.mkDerivation rec { optional zlibSupport zlib ++ optional gssSupport gss ++ optional c-aresSupport c-ares ++ - optional sslSupport openssl; + optional sslSupport openssl ++ + optional scpSupport libssh2; preConfigure = '' sed -e 's|/usr/bin|/no-such-path|g' -i.bak configure ''; + configureFlags = [ ( if sslSupport then "--with-ssl=${openssl}" else "--without-ssl" ) ( if scpSupport then "--with-libssh2=${libssh2}" else "--without-libssh2" ) @@ -67,9 +69,10 @@ stdenv.mkDerivation rec { inherit sslSupport openssl; }; - meta = { - homepage = "http://curl.haxx.se/"; + meta = with stdenv.lib; { description = "A command line tool for transferring files with URL syntax"; - platforms = stdenv.lib.platforms.all; + homepage = http://curl.haxx.se/; + maintainers = with maintainers; [ lovek323 ]; + platforms = platforms.all; }; } From 2c7c65595d4ef4ce35529dd919a8224cdeafd873 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 11 Sep 2013 09:25:10 +0200 Subject: [PATCH 172/286] Revert "binutils: minor update 2.23.1 -> .2" This reverts commit 15f96c840f5ce71da5cb556d1aa76654e6b12dae. See #909. Conflicts (trivial, auto-resolved): pkgs/development/tools/misc/binutils/default.nix --- 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 39fc28e4942..300922384bd 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -2,7 +2,7 @@ , cross ? null, gold ? true, bison ? null , deterministic ? false }: -let basename = "binutils-2.23.2"; in +let basename = "binutils-2.23.1"; in with { inherit (stdenv.lib) optional optionals optionalString; }; @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { src = fetchurl { url = "mirror://gnu/binutils/${basename}.tar.bz2"; - sha256 = "15qhbkz3r266xaa52slh857qn3abw7rb2x2jnhpfrafpzrb4x4gy"; + sha256 = "06bs5v5ndb4g5qx96d52lc818gkbskd1m0sz57314v887sqfbcia"; }; patches = [ From 7c8ba7557c27c7d636e902dcfd1d4fdd6a64b493 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 20 Sep 2013 19:27:22 +0200 Subject: [PATCH 173/286] ghc-7.6.3: cosmetic change to force a re-build --- pkgs/development/compilers/ghc/7.6.3.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkgs/development/compilers/ghc/7.6.3.nix b/pkgs/development/compilers/ghc/7.6.3.nix index dc3a912a34a..69ce79496c9 100644 --- a/pkgs/development/compilers/ghc/7.6.3.nix +++ b/pkgs/development/compilers/ghc/7.6.3.nix @@ -24,9 +24,7 @@ stdenv.mkDerivation rec { sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure ''; - configureFlags = [ - "--with-gcc=${stdenv.gcc}/bin/gcc" - ]; + configureFlags = "--with-gcc='${stdenv.gcc}/bin/gcc'"; # required, because otherwise all symbols from HSffi.o are stripped, and # that in turn causes GHCi to abort From 82ad48477c44d62e6a0867be7cdff93658b5d3f0 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 20 Sep 2013 21:45:16 +0200 Subject: [PATCH 174/286] Fix gfortran 4.7 build: texinfo 5.1 is not supported. --- pkgs/top-level/all-packages.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 82bb73f4d8e..f16e3db38f7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2428,6 +2428,7 @@ let gcc47_real = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.7 { inherit noSysDirs; + texinfo = texinfo4; # I'm not sure if profiling with enableParallelBuilding helps a lot. # We can enable it back some day. This makes the *gcc* builds faster now. profiledCompiler = false; @@ -2445,7 +2446,7 @@ let gcc47_debug = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.7 { stripped = false; - + texinfo = texinfo4; inherit noSysDirs; cross = null; libcCross = null; From c3edfa427e7ae0efca7a2843a2ebc0dad5a23484 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 20 Sep 2013 21:45:42 +0200 Subject: [PATCH 175/286] gfortran: update to 4.8.1 --- pkgs/top-level/all-packages.nix | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f16e3db38f7..af73216027e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2489,7 +2489,7 @@ let stdenv = allStdenvs.stdenvNative; }); - gfortran = gfortran47; + gfortran = gfortran48; gfortran43 = wrapGCC (gcc43.gcc.override { name = "gfortran"; @@ -2515,6 +2515,14 @@ let profiledCompiler = false; }); + gfortran48 = wrapGCC (gcc48.gcc.override { + name = "gfortran"; + langFortran = true; + langCC = false; + langC = false; + profiledCompiler = false; + }); + gcj = gcj47; gcj44 = wrapGCC (gcc44.gcc.override { From f998111d2c14a18a0435517855f46d1e2190c6e7 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sat, 21 Sep 2013 09:51:35 +0200 Subject: [PATCH 176/286] ghc-7.6.3: undo commit 7c8ba75 The change was supposed to trigger a re-build to fix a broken GHC binary on the Hydra build farm, but now it turns out that the cause for the errors we're seeing isn't GHC: all kinds of (non-Haskell) packages are broken. --- pkgs/development/compilers/ghc/7.6.3.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/compilers/ghc/7.6.3.nix b/pkgs/development/compilers/ghc/7.6.3.nix index 69ce79496c9..fb711f20251 100644 --- a/pkgs/development/compilers/ghc/7.6.3.nix +++ b/pkgs/development/compilers/ghc/7.6.3.nix @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure ''; - configureFlags = "--with-gcc='${stdenv.gcc}/bin/gcc'"; + configureFlags = "--with-gcc=${stdenv.gcc}/bin/gcc"; # required, because otherwise all symbols from HSffi.o are stripped, and # that in turn causes GHCi to abort From 8d6b23a60a4630c4f4473ef4979a859830fc9e8d Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sun, 22 Sep 2013 16:27:44 +0200 Subject: [PATCH 177/286] gnum4: update to version 1.4.17 --- pkgs/development/tools/misc/gnum4/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/tools/misc/gnum4/default.nix b/pkgs/development/tools/misc/gnum4/default.nix index d1b0d0e376e..a69c7f41751 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.16"; +stdenv.mkDerivation rec { + name = "gnum4-1.4.17"; src = fetchurl { - url = mirror://gnu/m4/m4-1.4.16.tar.bz2; - sha256 = "035r7ma272j2cwni2961jp22k6bn3n9xwn3b3qbcn2yrvlghql22"; + url = "mirror://gnu/m4/${name}.tar.bz2"; + sha256 = "0w0da1chh12mczxa5lnwzjk9czi3dq6gnnndbpa6w4rj76b1yklf"; }; doCheck = !stdenv.isDarwin From ee3dc2d0c9807b135d05b2356f6c23cad99206de Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sun, 22 Sep 2013 16:32:26 +0200 Subject: [PATCH 178/286] gnum4: fix download URL --- pkgs/development/tools/misc/gnum4/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/tools/misc/gnum4/default.nix b/pkgs/development/tools/misc/gnum4/default.nix index a69c7f41751..db5b8cbef77 100644 --- a/pkgs/development/tools/misc/gnum4/default.nix +++ b/pkgs/development/tools/misc/gnum4/default.nix @@ -4,7 +4,7 @@ stdenv.mkDerivation rec { name = "gnum4-1.4.17"; src = fetchurl { - url = "mirror://gnu/m4/${name}.tar.bz2"; + url = "mirror://gnu/m4/m4-1.4.17.tar.bz2"; sha256 = "0w0da1chh12mczxa5lnwzjk9czi3dq6gnnndbpa6w4rj76b1yklf"; }; From e4f6e4b15d082dece20abd4d274d035f599d4cc2 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sun, 22 Sep 2013 16:35:54 +0200 Subject: [PATCH 179/286] gnum4: drop obsolete patches --- pkgs/development/tools/misc/gnum4/default.nix | 2 +- .../tools/misc/gnum4/no-gets.patch | 26 ------------------- .../tools/misc/gnum4/readlink-EINVAL.patch | 18 ------------- 3 files changed, 1 insertion(+), 45 deletions(-) delete mode 100644 pkgs/development/tools/misc/gnum4/no-gets.patch delete 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 db5b8cbef77..75e8e2dfe4f 100644 --- a/pkgs/development/tools/misc/gnum4/default.nix +++ b/pkgs/development/tools/misc/gnum4/default.nix @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { && !stdenv.isSunOS; # XXX: `test-setlocale2.sh' fails # Upstream is aware of it; it may be in the next release. - patches = [ ./s_isdir.patch ./readlink-EINVAL.patch ./no-gets.patch ]; + patches = [ ./s_isdir.patch ]; meta = { homepage = http://www.gnu.org/software/m4/; diff --git a/pkgs/development/tools/misc/gnum4/no-gets.patch b/pkgs/development/tools/misc/gnum4/no-gets.patch deleted file mode 100644 index 456c08b56c3..00000000000 --- a/pkgs/development/tools/misc/gnum4/no-gets.patch +++ /dev/null @@ -1,26 +0,0 @@ -http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-devel/m4/files/m4-1.4.16-no-gets.patch?revision=1.1 - -https://bugs.gentoo.org/424978 - -hack until m4 pulls a newer gnulib version - -From 66712c23388e93e5c518ebc8515140fa0c807348 Mon Sep 17 00:00:00 2001 -From: Eric Blake -Date: Thu, 29 Mar 2012 13:30:41 -0600 -Subject: [PATCH] stdio: don't assume gets any more - -Gnulib intentionally does not have a gets module, and now that C11 -and glibc have dropped it, we should be more proactive about warning -any user on a platform that still has a declaration of this dangerous -interface. - ---- a/lib/stdio.in.h -+++ b/lib/stdio.in.h -@@ -125,7 +125,6 @@ - so any use of gets warrants an unconditional warning. Assume it is - always declared, since it is required by C89. */ - #undef gets --_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); - - #if @GNULIB_FOPEN@ - # if @REPLACE_FOPEN@ diff --git a/pkgs/development/tools/misc/gnum4/readlink-EINVAL.patch b/pkgs/development/tools/misc/gnum4/readlink-EINVAL.patch deleted file mode 100644 index dd371584a79..00000000000 --- a/pkgs/development/tools/misc/gnum4/readlink-EINVAL.patch +++ /dev/null @@ -1,18 +0,0 @@ -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 46a7b1ea0a8cfc636207f1f66ac2a95662dd064a Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 23 Sep 2013 11:14:27 +0200 Subject: [PATCH 180/286] gettext: fix minor errors after merge --- pkgs/development/libraries/gettext/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/gettext/default.nix b/pkgs/development/libraries/gettext/default.nix index 19a3a0f18b3..eea4e45a946 100644 --- a/pkgs/development/libraries/gettext/default.nix +++ b/pkgs/development/libraries/gettext/default.nix @@ -70,11 +70,11 @@ stdenv.mkDerivation (rec { }; } -// optionalAttrs stdenv.isDarwin { +// stdenv.lib.optionalAttrs stdenv.isDarwin { makeFlags = "CFLAGS=-D_FORTIFY_SOURCE=0"; } -// optionalAttrs stdenv.isCygwin { +// stdenv.lib.optionalAttrs stdenv.isCygwin { patchPhase = # Make sure `error.c' gets compiled and is part of `libgettextlib.la'. # This fixes: From 2456150c1e88e6b2909a2ce3385c3b709246739a Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 23 Sep 2013 11:14:42 +0200 Subject: [PATCH 181/286] gettext: strip trailing whitespace --- pkgs/development/libraries/gettext/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/gettext/default.nix b/pkgs/development/libraries/gettext/default.nix index eea4e45a946..4d400a6ea7d 100644 --- a/pkgs/development/libraries/gettext/default.nix +++ b/pkgs/development/libraries/gettext/default.nix @@ -2,7 +2,7 @@ stdenv.mkDerivation (rec { name = "gettext-0.18.2"; - + src = fetchurl { url = "mirror://gnu/gettext/${name}.tar.gz"; sha256 = "516a6370b3b3f46e2fc5a5e222ff5ecd76f3089bc956a7587a6e4f89de17714c"; @@ -31,9 +31,9 @@ stdenv.mkDerivation (rec { ''; buildInputs = [ xz ] ++ stdenv.lib.optional (!stdenv.isLinux) libiconv; - + enableParallelBuilding = true; - + crossAttrs = { buildInputs = stdenv.lib.optional (stdenv.gccCross.libc ? libiconv) stdenv.gccCross.libc.libiconv.crossDrv; From 0adae9f822e93b0a7507619426119173d2ec001d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 24 Sep 2013 23:06:49 +0200 Subject: [PATCH 182/286] llvm: add support for R600 It will be useful for mesa >= 9.2.* Also, I want to restart the build on Hydra, as it succeeds for me. --- pkgs/development/compilers/llvm/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/compilers/llvm/default.nix b/pkgs/development/compilers/llvm/default.nix index 9337f965c96..a7129f5cef3 100644 --- a/pkgs/development/compilers/llvm/default.nix +++ b/pkgs/development/compilers/llvm/default.nix @@ -25,7 +25,8 @@ stdenv.mkDerivation rec { "-DCMAKE_BUILD_TYPE=Release" "-DLLVM_ENABLE_FFI=ON" "-DLLVM_BINUTILS_INCDIR=${binutils}/include" - ] ++ lib.optional (!isDarwin) [ "-DBUILD_SHARED_LIBS=ON" ]; + "-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=R600" # for mesa + ] ++ lib.optional (!isDarwin) "-DBUILD_SHARED_LIBS=ON"; enableParallelBuilding = true; From 8ff38552042a6d7c6572d2013ef9e6715caef770 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sat, 28 Sep 2013 10:36:34 +0200 Subject: [PATCH 183/286] texinfo: update to version 5.2 --- pkgs/development/tools/misc/texinfo/{5.1.nix => 5.2.nix} | 4 ++-- pkgs/top-level/all-packages.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) rename pkgs/development/tools/misc/texinfo/{5.1.nix => 5.2.nix} (93%) diff --git a/pkgs/development/tools/misc/texinfo/5.1.nix b/pkgs/development/tools/misc/texinfo/5.2.nix similarity index 93% rename from pkgs/development/tools/misc/texinfo/5.1.nix rename to pkgs/development/tools/misc/texinfo/5.2.nix index cbb10830188..31f81cbf3af 100644 --- a/pkgs/development/tools/misc/texinfo/5.1.nix +++ b/pkgs/development/tools/misc/texinfo/5.2.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, ncurses, perl, xz }: stdenv.mkDerivation rec { - name = "texinfo-5.1"; + name = "texinfo-5.2"; src = fetchurl { url = "mirror://gnu/texinfo/${name}.tar.xz"; - sha256 = "0864v5i488x3mb3v5p6nhy2kw0mqkzpa3b0453iibj81zlpq078q"; + sha256 = "1njfwh2z34r2c4r0iqa7v24wmjzvsfyz4vplzry8ln3479lfywal"; }; buildInputs = [ ncurses perl xz ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 46466f0de1f..5ed8d312747 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3767,9 +3767,9 @@ let texinfo413 = callPackage ../development/tools/misc/texinfo/4.13a.nix { }; texinfo49 = callPackage ../development/tools/misc/texinfo/4.9.nix { }; - texinfo5 = callPackage ../development/tools/misc/texinfo/5.1.nix { }; - texinfo = texinfo5; + texinfo5 = callPackage ../development/tools/misc/texinfo/5.2.nix { }; texinfo4 = texinfo413; + texinfo = texinfo5; texi2html = callPackage ../development/tools/misc/texi2html { }; From b15c3e49e59a0dc8516480589ee0da385c9ca5d6 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sat, 28 Sep 2013 10:37:05 +0200 Subject: [PATCH 184/286] texinfo: remove obsolete version 4.9 --- pkgs/development/tools/misc/texinfo/4.9.nix | 10 ---------- pkgs/top-level/all-packages.nix | 1 - 2 files changed, 11 deletions(-) delete mode 100644 pkgs/development/tools/misc/texinfo/4.9.nix diff --git a/pkgs/development/tools/misc/texinfo/4.9.nix b/pkgs/development/tools/misc/texinfo/4.9.nix deleted file mode 100644 index fd42093e561..00000000000 --- a/pkgs/development/tools/misc/texinfo/4.9.nix +++ /dev/null @@ -1,10 +0,0 @@ -{stdenv, fetchurl, ncurses}: - -stdenv.mkDerivation { - name = "texinfo-4.9"; - src = fetchurl { - url = mirror://gnu/texinfo/texinfo-4.9.tar.bz2; - sha256 = "0h7q9h405m88fjj067brzniiv8306ryl087pgjpmbpd2jci9h6g7"; - }; - buildInputs = [ncurses]; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5ed8d312747..8b2050b3f8d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3766,7 +3766,6 @@ let tcptrack = callPackage ../development/tools/misc/tcptrack { }; texinfo413 = callPackage ../development/tools/misc/texinfo/4.13a.nix { }; - texinfo49 = callPackage ../development/tools/misc/texinfo/4.9.nix { }; texinfo5 = callPackage ../development/tools/misc/texinfo/5.2.nix { }; texinfo4 = texinfo413; texinfo = texinfo5; From 2fb919fb5a1ccd2f7b59bd1b7ecc509b6b6ac796 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 3 Oct 2013 18:09:34 +0200 Subject: [PATCH 185/286] gmp: update to version 5.1.3 --- pkgs/development/libraries/gmp/5.1.x.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/gmp/5.1.x.nix b/pkgs/development/libraries/gmp/5.1.x.nix index eed78855802..a25eabbee86 100644 --- a/pkgs/development/libraries/gmp/5.1.x.nix +++ b/pkgs/development/libraries/gmp/5.1.x.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, m4, cxx ? true }: stdenv.mkDerivation rec { - name = "gmp-5.1.2"; + name = "gmp-5.1.3"; src = fetchurl { # we need to use bz2, others aren't in bootstrapping stdenv urls = [ "mirror://gnu/gmp/${name}.tar.bz2" "ftp://ftp.gmplib.org/pub/${name}/${name}.tar.bz2" ]; - sha256 = "13qv3ihk3ykbh2fkb4z8m0q188y3hq1amsj25fn5hgpgckmdx690"; + sha256 = "0q5i39pxrasgn9qdxzpfbwhh11ph80p57x6hf48m74261d97j83m"; }; nativeBuildInputs = [ m4 ]; From 3996256c264afa2e73291c7af46969a1a6011f10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 8 Oct 2013 20:47:04 +0200 Subject: [PATCH 186/286] gfortan: remove unused versions, use 4.7 by default 4.8 still doesn't build, so let's use 4.7 in the meantime. --- pkgs/top-level/all-packages.nix | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 08282811d14..ce04004a9db 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2512,23 +2512,7 @@ let stdenv = allStdenvs.stdenvNative; }); - gfortran = gfortran48; - - gfortran43 = wrapGCC (gcc43.gcc.override { - name = "gfortran"; - langFortran = true; - langCC = false; - langC = false; - profiledCompiler = false; - }); - - gfortran44 = wrapGCC (gcc44.gcc.override { - name = "gfortran"; - langFortran = true; - langCC = false; - langC = false; - profiledCompiler = false; - }); + gfortran = gfortran47; # 48 has problems building ATM gfortran47 = wrapGCC (gcc47.gcc.override { name = "gfortran"; From e855ac5070fa594e1db5ebdf1ea9caef65163c4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 8 Oct 2013 20:52:19 +0200 Subject: [PATCH 187/286] gcc: don't use profiling on darwin Darwin seems to have problems on Hydra, maybe because of this. --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ce04004a9db..711f1989407 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2480,7 +2480,7 @@ let inherit noSysDirs; # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion - profiledCompiler = with stdenv; (isi686 || isx86_64); + profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); # When building `gcc.crossDrv' (a "Canadian cross", with host == target # and host != build), `cross' must be null but the cross-libc must still From 59a5f6307dbd0cd1d97fc34aba5fc2723f129235 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 8 Oct 2013 20:58:34 +0200 Subject: [PATCH 188/286] pcre: disable tests for freeBSDs, as we're running out of stack --- pkgs/development/libraries/pcre/default.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/pcre/default.nix b/pkgs/development/libraries/pcre/default.nix index b6813070cec..a8a89a4569c 100644 --- a/pkgs/development/libraries/pcre/default.nix +++ b/pkgs/development/libraries/pcre/default.nix @@ -18,7 +18,9 @@ stdenv.mkDerivation rec { ${if !cplusplusSupport then "--disable-cpp" else ""} '' + stdenv.lib.optionalString stdenv.isDarwin "CXXFLAGS=-O0"; - doCheck = !stdenv.isCygwin; # XXX: test failure on Cygwin + doCheck = with stdenv; !(isCygwin || isFreeBSD); + # XXX: test failure on Cygwin + # we are running out of stack on both freeBSDs on Hydra meta = { homepage = "http://www.pcre.org/"; From bff31016071e451f8bc8fe2c15196d885687180b Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Thu, 10 Oct 2013 11:55:19 +0200 Subject: [PATCH 189/286] gnutar: update to version 1.27 --- 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 446c8933d5b..173b983d877 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.26"; + name = "gnutar-1.27"; src = fetchurl { - url = "mirror://gnu/tar/tar-1.26.tar.bz2"; - sha256 = "0hbdkzmchq9ycr2x1pxqdcgdbaxksh8c6ac0jf75jajhcks6jlss"; + url = "mirror://gnu/tar/tar-1.27.tar.bz2"; + sha256 = "0yrwmx2f721ahpnki4fnzvnmrd3md3bq417icb4wrjky7k3caf12"; }; patches = [ ./gets-undeclared.patch ]; From e3b9ec93a0b6a5a568544328664612d376d929b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Thu, 10 Oct 2013 13:42:50 +0200 Subject: [PATCH 190/286] vigra: fix build with newer gcc via update This fixes libreoffice build on my machine. --- pkgs/development/libraries/vigra/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/vigra/default.nix b/pkgs/development/libraries/vigra/default.nix index 83b921dd49b..5130abc9a96 100644 --- a/pkgs/development/libraries/vigra/default.nix +++ b/pkgs/development/libraries/vigra/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, cmake, libtiff, libpng, libjpeg, doxygen, python, fftw, fftwSinglePrec, hdf5, boost, numpy }: stdenv.mkDerivation rec { - name = "vigra-1.8.0"; + name = "vigra-1.9.0"; src = fetchurl { url = "${meta.homepage}/${name}-src.tar.gz"; - sha256 = "0542qy1bqaq73l7i8aqdhwdbhd6m1wldsn1w2sfyf8yf4398ffpw"; + sha256 = "00fg64da6dj9k42d90dz6y7x91xw1xqppcla14im74m4afswrgcg"; }; buildInputs = [ cmake fftw fftwSinglePrec libtiff libpng libjpeg python boost From 296e2857f7770c3140135e43742214fffa044ad4 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Wed, 9 Oct 2013 14:05:08 +0200 Subject: [PATCH 191/286] inkscape: remove unused patch --- .../graphics/inkscape/libpng-1.5.patch | 47 ------------------- 1 file changed, 47 deletions(-) delete mode 100644 pkgs/applications/graphics/inkscape/libpng-1.5.patch diff --git a/pkgs/applications/graphics/inkscape/libpng-1.5.patch b/pkgs/applications/graphics/inkscape/libpng-1.5.patch deleted file mode 100644 index 4c8a7ee5f9b..00000000000 --- a/pkgs/applications/graphics/inkscape/libpng-1.5.patch +++ /dev/null @@ -1,47 +0,0 @@ -Source: upstream revisions 10061 and 10707 - ---- a/src/sp-image.cpp 2011-02-21 07:59:34 +0000 -+++ b/src/sp-image.cpp 2011-02-21 08:57:28 +0000 -@@ -387,9 +387,13 @@ - - #if defined(PNG_iCCP_SUPPORTED) - { -- char* name = 0; -+ png_charp name = 0; - int compression_type = 0; -- char* profile = 0; -+#if (PNG_LIBPNG_VER < 10500) -+ png_charp profile = 0; -+#else -+ png_bytep profile = 0; -+#endif - png_uint_32 proflen = 0; - if ( png_get_iCCP(pngPtr, infoPtr, &name, &compression_type, &profile, &proflen) ) { - // g_message("Found an iCCP chunk named [%s] with %d bytes and comp %d", name, proflen, compression_type); - ---- a/src/extension/internal/pdfinput/svg-builder.cpp 2011-10-27 04:55:51 +0000 -+++ b/src/extension/internal/pdfinput/svg-builder.cpp 2011-10-29 20:34:00 +0000 -@@ -1481,7 +1481,7 @@ - return NULL; - } - // Set error handler -- if (setjmp(png_ptr->jmpbuf)) { -+ if (setjmp(png_jmpbuf(png_ptr))) { - png_destroy_write_struct(&png_ptr, &info_ptr); - return NULL; - } - ---- a/src/helper/png-write.cpp 2011-08-07 10:53:12 +0000 -+++ b/src/helper/png-write.cpp 2011-10-29 20:34:00 +0000 -@@ -166,8 +166,8 @@ - /* Set error handling. REQUIRED if you aren't supplying your own - * error hadnling functions in the png_create_write_struct() call. - */ -- if (setjmp(png_ptr->jmpbuf)) { -- /* If we get here, we had a problem reading the file */ -+ if (setjmp(png_jmpbuf(png_ptr))) { -+ // If we get here, we had a problem reading the file - fclose(fp); - png_destroy_write_struct(&png_ptr, &info_ptr); - return false; - From 1772bcebc1cda290fb6079391dcef3a3e0f2912d Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Wed, 9 Oct 2013 14:05:53 +0200 Subject: [PATCH 192/286] inkscape: fix typo in upstream sources. fixes stdenv-updates --- pkgs/applications/graphics/inkscape/default.nix | 4 ++++ .../graphics/inkscape/spuriouscomma.patch | 11 +++++++++++ 2 files changed, 15 insertions(+) create mode 100644 pkgs/applications/graphics/inkscape/spuriouscomma.patch diff --git a/pkgs/applications/graphics/inkscape/default.nix b/pkgs/applications/graphics/inkscape/default.nix index 37905f8a73f..478a0ff7e50 100644 --- a/pkgs/applications/graphics/inkscape/default.nix +++ b/pkgs/applications/graphics/inkscape/default.nix @@ -13,6 +13,10 @@ stdenv.mkDerivation rec { patches = [ ./configure-python-libs.patch ]; + postPatch = '' + patch -p0 < ${./spuriouscomma.patch} + ''; + propagatedBuildInputs = [ # Python is used at run-time to execute scripts, e.g., those from # the "Effects" menu. diff --git a/pkgs/applications/graphics/inkscape/spuriouscomma.patch b/pkgs/applications/graphics/inkscape/spuriouscomma.patch new file mode 100644 index 00000000000..bc538068f9e --- /dev/null +++ b/pkgs/applications/graphics/inkscape/spuriouscomma.patch @@ -0,0 +1,11 @@ +--- src/widgets/desktop-widget.h~ 2011-07-08 13:25:09.000000000 -0500 ++++ src/widgets/desktop-widget.h 2013-02-15 16:04:45.806910365 -0600 +@@ -239,7 +239,7 @@ + private: + GtkWidget *tool_toolbox; + GtkWidget *aux_toolbox; +- GtkWidget *commands_toolbox,; ++ GtkWidget *commands_toolbox; + GtkWidget *snap_toolbox; + + static void init(SPDesktopWidget *widget); From ef3cc83d1e2cd391f1d75c4ba642a45d91738775 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Wed, 9 Oct 2013 08:15:39 +0200 Subject: [PATCH 193/286] zsnes: patches for modern gcc & libpng builds fine on stdenv-updates now needs gcc 4.8+, so keep this commit on stdenv-updates until merge --- pkgs/misc/emulators/zsnes/default.nix | 32 +++----- .../emulators/zsnes/zsnes-1.51-libpng15.patch | 12 +++ pkgs/misc/emulators/zsnes/zsnes.patch | 80 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 +- 4 files changed, 106 insertions(+), 22 deletions(-) create mode 100644 pkgs/misc/emulators/zsnes/zsnes-1.51-libpng15.patch create mode 100644 pkgs/misc/emulators/zsnes/zsnes.patch diff --git a/pkgs/misc/emulators/zsnes/default.nix b/pkgs/misc/emulators/zsnes/default.nix index 0b34fc0f9fe..a2896e70d17 100644 --- a/pkgs/misc/emulators/zsnes/default.nix +++ b/pkgs/misc/emulators/zsnes/default.nix @@ -2,33 +2,27 @@ stdenv.mkDerivation { name = "zsnes-1.51"; - + src = fetchurl { url = mirror://sourceforge/zsnes/zsnes151src.tar.bz2; sha256 = "08s64qsxziv538vmfv38fg1rfrz5k95dss5zdkbfxsbjlbdxwmi8"; }; - buildInputs = [ nasm SDL zlib libpng ncurses mesa ]; - + # copied from arch linux, fixes gcc-4.8 compatibility + patches = [ ./zsnes.patch ]; + + postPatch = '' + patch -p0 < ${./zsnes-1.51-libpng15.patch} + ''; + preConfigure = '' cd src - - # Fix for undefined strncasecmp() - echo '#include ' > tmp.cpp - cat tmp.cpp tools/strutil.h > tools/strutil.h.new - mv tools/strutil.h.new tools/strutil.h - - # Fix for undefined system() - echo '#include ' > tmp.cpp - cat tmp.cpp tools/depbuild.cpp > tools/depbuild.cpp.new - mv tools/depbuild.cpp.new tools/depbuild.cpp - - # Fix for lots of undefined strcmp, strncmp etc. - echo '#include ' > tmp.cpp - cat tmp.cpp parsegen.cpp > parsegen.cpp.new - mv parsegen.cpp.new parsegen.cpp ''; - + + buildInputs = [ nasm SDL zlib libpng ncurses mesa ]; + + configureFlags = "--enable-release"; + meta = { description = "A Super Nintendo Entertainment System Emulator"; license = "GPLv2+"; diff --git a/pkgs/misc/emulators/zsnes/zsnes-1.51-libpng15.patch b/pkgs/misc/emulators/zsnes/zsnes-1.51-libpng15.patch new file mode 100644 index 00000000000..b32c3096754 --- /dev/null +++ b/pkgs/misc/emulators/zsnes/zsnes-1.51-libpng15.patch @@ -0,0 +1,12 @@ +Use existing png_set_IHDR() and stop accessing PNG structure members directly + +--- src/zip/zpng.c ++++ src/zip/zpng.c +@@ -129,7 +129,6 @@ + png_set_IHDR(png_ptr, info_ptr, width, height, 8, + PNG_COLOR_TYPE_RGB, PNG_INTERLACE_NONE, + PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT); +- info_ptr->color_type = PNG_COLOR_TYPE_RGB; + + //Allocate an array of scanline pointers + row_pointers = (png_bytep*)malloc(height*sizeof(png_bytep)); diff --git a/pkgs/misc/emulators/zsnes/zsnes.patch b/pkgs/misc/emulators/zsnes/zsnes.patch new file mode 100644 index 00000000000..d5d681ae67a --- /dev/null +++ b/pkgs/misc/emulators/zsnes/zsnes.patch @@ -0,0 +1,80 @@ +diff -aur zsnes_1_51//src/Makefile.in zsnes_1_51_new//src/Makefile.in +--- zsnes_1_51//src/Makefile.in 2007-01-24 21:54:12.000000000 +0100 ++++ zsnes_1_51_new//src/Makefile.in 2010-09-06 00:03:04.715810431 +0200 +@@ -95,7 +95,7 @@ + %.o: %.cpp + @CXX@ @CXXFLAGS@ -o $@ -c $< + %.o %.h: %.psr $(PSR) +- ./$(PSR) @PSRFLAGS@ -gcc @CC@ -compile -flags "@CFLAGS@ -O1" -cheader $*.h -fname $* $*.o $< ++ ./$(PSR) @PSRFLAGS@ -gcc "@CC@" -compile -flags "@CFLAGS@ -O1 -D_FORTIFY_SOURCE=0" -cheader $*.h -fname $* $*.o $< + + default: main + all: main tools +@@ -133,7 +133,7 @@ + + include makefile.dep + makefile.dep: $(TOOL_D)/depbuild Makefile +- $(TOOL_D)/depbuild @CC@ "@CFLAGS@" @NASMPATH@ "@NFLAGS@" $(Z_OBJS) > makefile.dep ++ $(TOOL_D)/depbuild "@CC@" "@CFLAGS@" "@NASMPATH@" "@NFLAGS@" $(Z_OBJS) > makefile.dep + + Makefile: Makefile.in config.status + ./config.status +diff -aur zsnes_1_51//src/parsegen.cpp zsnes_1_51_new//src/parsegen.cpp +--- zsnes_1_51//src/parsegen.cpp 2007-10-31 05:30:26.000000000 +0100 ++++ zsnes_1_51_new//src/parsegen.cpp 2010-09-05 15:48:36.903333444 +0200 +@@ -19,6 +19,9 @@ + Config file handler creator by Nach (C) 2005-2007 + */ + ++#include ++#include ++ + #if !defined(__GNUC__) && !defined(_MSC_VER) + #error You are using an unsupported compiler + #endif +@@ -1822,7 +1825,7 @@ + } + } + +-int main(size_t argc, const char *const *const argv) ++int main(int argc, const char *const *const argv) + { + const char *cheader_file = 0; + bool compile = false; +diff -aur zsnes_1_51//src/tools/depbuild.cpp zsnes_1_51_new//src/tools/depbuild.cpp +--- zsnes_1_51//src/tools/depbuild.cpp 2006-12-27 12:04:05.000000000 +0100 ++++ zsnes_1_51_new//src/tools/depbuild.cpp 2010-09-05 15:48:36.903333444 +0200 +@@ -183,7 +183,7 @@ + } + } + +-int main(size_t argc, const char *const *const argv) ++int main(int argc, const char *const *const argv) + { + if (argc < 5) + { +diff -aur zsnes_1_51//src/tools/strutil.h zsnes_1_51_new//src/tools/strutil.h +--- zsnes_1_51//src/tools/strutil.h 2006-12-27 12:04:05.000000000 +0100 ++++ zsnes_1_51_new//src/tools/strutil.h 2010-09-05 15:48:36.903333444 +0200 +@@ -15,6 +15,9 @@ + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + ++#include ++#include ++ + /* + This is part of a toolkit used to assist in ZSNES development + */ +diff -u -r zsnes_1_51/src/tools/depbuild.cpp zsnes_1_51-fix/src/tools/depbuild.cpp +--- zsnes_1_51/src/tools/depbuild.cpp 2006-12-27 12:04:05.000000000 +0100 ++++ zsnes_1_51-fix/src/tools/depbuild.cpp 2012-07-14 16:20:17.759886250 +0200 +@@ -26,6 +26,8 @@ + #include + using namespace std; + ++#include ++ + #include "fileutil.h" + #include "strutil.h" + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 711f1989407..a1cd316ac97 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10130,9 +10130,7 @@ let znc = callPackage ../applications/networking/znc { }; - zsnes = callPackage_i686 ../misc/emulators/zsnes { - libpng = libpng12; - }; + zsnes = callPackage_i686 ../misc/emulators/zsnes { }; misc = import ../misc/misc.nix { inherit pkgs stdenv; }; From b0f13e99c365983bfd46032d1a15147ff041345a Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Wed, 9 Oct 2013 11:48:54 +0200 Subject: [PATCH 194/286] wine: doesn't build with bison3 --- pkgs/top-level/all-packages.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a1cd316ac97..7d129ac55a5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10080,7 +10080,9 @@ let VisualBoyAdvance = callPackage ../misc/emulators/VisualBoyAdvance { }; # Wine cannot be built in 64-bit; use a 32-bit build instead. - wine = callPackage_i686 ../misc/emulators/wine { }; + wine = callPackage_i686 ../misc/emulators/wine { + bison = bison2; + }; # winetricks is a shell script with no binary components. Safe to just use the current platforms # build instead of the i686 specific build. From 134776e5e97aa92a7bf9e4d9be9bf4b0c2e6060a Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 18 Oct 2013 11:13:17 +0200 Subject: [PATCH 195/286] gnutar: drop obsolete gets-undeclared.patch --- pkgs/tools/archivers/gnutar/default.nix | 2 -- .../archivers/gnutar/gets-undeclared.patch | 26 ------------------- 2 files changed, 28 deletions(-) delete mode 100644 pkgs/tools/archivers/gnutar/gets-undeclared.patch diff --git a/pkgs/tools/archivers/gnutar/default.nix b/pkgs/tools/archivers/gnutar/default.nix index 173b983d877..8735702dd33 100644 --- a/pkgs/tools/archivers/gnutar/default.nix +++ b/pkgs/tools/archivers/gnutar/default.nix @@ -8,8 +8,6 @@ stdenv.mkDerivation rec { sha256 = "0yrwmx2f721ahpnki4fnzvnmrd3md3bq417icb4wrjky7k3caf12"; }; - patches = [ ./gets-undeclared.patch ]; - # May have some issues with root compilation because the bootstrap tool # cannot be used as a login shell for now. FORCE_UNSAFE_CONFIGURE = stdenv.lib.optionalString (stdenv.system == "armv7l-linux" || stdenv.isSunOS) "1"; diff --git a/pkgs/tools/archivers/gnutar/gets-undeclared.patch b/pkgs/tools/archivers/gnutar/gets-undeclared.patch deleted file mode 100644 index 301a09dde12..00000000000 --- a/pkgs/tools/archivers/gnutar/gets-undeclared.patch +++ /dev/null @@ -1,26 +0,0 @@ -This patch is needed to allow builds with newer versions of -the GNU libc (2.16+). - -This is a backport of this patch: - -commit 66712c23388e93e5c518ebc8515140fa0c807348 -Author: Eric Blake -Date: Thu Mar 29 13:30:41 2012 -0600 - - stdio: don't assume gets any more - ---- tar-1.26/gnu/stdio.in.h 2012-07-02 14:28:45.000000000 +0200 -+++ tar-1.26/gnu/stdio.in.h 2012-07-02 14:28:50.000000000 +0200 -@@ -160,12 +160,6 @@ _GL_WARN_ON_USE (fflush, "fflush is not - "use gnulib module fflush for portable POSIX compliance"); - #endif - --/* It is very rare that the developer ever has full control of stdin, -- so any use of gets warrants an unconditional warning. Assume it is -- always declared, since it is required by C89. */ --#undef gets --_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); -- - #if @GNULIB_FOPEN@ - # if @REPLACE_FOPEN@ - # if !(defined __cplusplus && defined GNULIB_NAMESPACE) From e9163ad4c95ff58f0480079d646fa4fb31bcf05a Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 18 Oct 2013 18:39:04 +0200 Subject: [PATCH 196/286] ghc: configure RPATH that allows ghc's shared libraries to find each other Prior to this patch, libHSrts.so didn't know how to load libffi.so. See issue #1081 for further details. --- pkgs/development/compilers/ghc/7.4.2.nix | 1 + pkgs/development/compilers/ghc/7.6.3.nix | 1 + pkgs/development/compilers/ghc/head.nix | 1 + 3 files changed, 3 insertions(+) diff --git a/pkgs/development/compilers/ghc/7.4.2.nix b/pkgs/development/compilers/ghc/7.4.2.nix index 51f3f7f9df4..0bc2a855306 100644 --- a/pkgs/development/compilers/ghc/7.4.2.nix +++ b/pkgs/development/compilers/ghc/7.4.2.nix @@ -22,6 +22,7 @@ stdenv.mkDerivation rec { preConfigure = '' echo "${buildMK}" > mk/build.mk sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure + export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}" ''; configureFlags=[ diff --git a/pkgs/development/compilers/ghc/7.6.3.nix b/pkgs/development/compilers/ghc/7.6.3.nix index fb711f20251..427d21660b8 100644 --- a/pkgs/development/compilers/ghc/7.6.3.nix +++ b/pkgs/development/compilers/ghc/7.6.3.nix @@ -22,6 +22,7 @@ stdenv.mkDerivation rec { preConfigure = '' echo "${buildMK}" > mk/build.mk sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure + export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}" ''; configureFlags = "--with-gcc=${stdenv.gcc}/bin/gcc"; diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix index c9cd71fc2b5..37bcde17232 100644 --- a/pkgs/development/compilers/ghc/head.nix +++ b/pkgs/development/compilers/ghc/head.nix @@ -22,6 +22,7 @@ stdenv.mkDerivation rec { preConfigure = '' echo "${buildMK}" > mk/build.mk sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure + export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}" ''; configureFlags = "--with-gcc=${stdenv.gcc}/bin/gcc"; From ea6f711e8ec7208626a084edb81a78ee455a0b67 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 18 Oct 2013 18:46:00 +0200 Subject: [PATCH 197/286] isl: update download url This patch fixes issue #1091. --- pkgs/development/libraries/isl/default.nix | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/pkgs/development/libraries/isl/default.nix b/pkgs/development/libraries/isl/default.nix index 9097df78de3..9242af95e27 100644 --- a/pkgs/development/libraries/isl/default.nix +++ b/pkgs/development/libraries/isl/default.nix @@ -4,11 +4,8 @@ stdenv.mkDerivation rec { name = "isl-0.11.1"; # CLooG 0.16.3 fails to build with ISL 0.08. src = fetchurl { - urls = [ - "http://www.kotnet.org/~skimo/isl/${name}.tar.bz2" - "ftp://ftp.linux.student.kuleuven.be/pub/people/skimo/isl/${name}.tar.bz2" - ]; - sha256 = "095f4b54c88ca13a80d2b025d9c551f89ea7ba6f6201d701960bfe5c1466a98d"; + url = "http://pkgs.fedoraproject.org/repo/pkgs/gcc/isl-0.11.1.tar.bz2/bce1586384d8635a76d2f017fb067cd2/isl-0.11.1.tar.bz2"; + sha256 = "13d9cqa5rzhbjq0xf0b2dyxag7pqa72xj9dhsa03m8ccr1a4npq9"; }; buildInputs = [ gmp ]; From 82bc91a548ad91241f42cefc528c5d5bffed2f5a Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sat, 19 Oct 2013 13:48:33 +0200 Subject: [PATCH 198/286] build-support/cabal: add an option to enable shared library support enableSharedLibraries configures Cabal to build of shared libraries. This option requires that all dependencies of the package have been compiled for use in shared libraries, too. enableSharedExecutables configures Cabal to prefer shared libraries when linking executables. This patch partly fixes issue #1084. --- pkgs/build-support/cabal/default.nix | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index a1dc68e6484..6794a7a4be1 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -2,6 +2,8 @@ { stdenv, fetchurl, lib, pkgconfig, ghc, Cabal, jailbreakCabal, glibcLocales , enableLibraryProfiling ? false +, enableSharedLibraries ? false +, enableSharedExecutables ? false , enableCheckPhase ? true }: @@ -42,8 +44,12 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; # if that is not desired (for applications), name can be set to # fname. name = if self.isLibrary then - if enableLibraryProfiling then + if enableLibraryProfiling && self.enableSharedLibraries then + "haskell-${self.pname}-ghc${ghc.ghc.version}-${self.version}-profiling-shared" + else if enableLibraryProfiling && !self.enableSharedLibraries then "haskell-${self.pname}-ghc${ghc.ghc.version}-${self.version}-profiling" + else if !enableLibraryProfiling && self.enableSharedLibraries then + "haskell-${self.pname}-ghc${ghc.ghc.version}-${self.version}-shared" else "haskell-${self.pname}-ghc${ghc.ghc.version}-${self.version}" else @@ -107,8 +113,18 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; # and run any regression test suites the package might have doCheck = enableCheckPhase; + # pass the '--enable-shared' flag to cabal in the configure + # stage to enable building shared libraries + inherit enableSharedLibraries; + + # pass the '--enable-executable-dynamic' flag to cabal in + # the configure stage to enable linking shared libraries + inherit enableSharedExecutables; + extraConfigureFlags = [ (stdenv.lib.enableFeature enableLibraryProfiling "library-profiling") + (stdenv.lib.enableFeature self.enableSharedLibraries "shared") + (stdenv.lib.enableFeature self.enableSharedExecutables "executable-dynamic") (stdenv.lib.enableFeature self.enableSplitObjs "split-objs") ] ++ stdenv.lib.optional (stdenv.lib.versionOlder "7" ghc.ghcVersion) (stdenv.lib.enableFeature self.doCheck "tests"); From 3ec00b51f802393aeb889e3f85bb9deaeb8bfe84 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sat, 19 Oct 2013 15:10:27 +0200 Subject: [PATCH 199/286] gcc: update to 4.8.x branch to 4.8.2 --- pkgs/development/compilers/gcc/4.8/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 1435277c105..3e4a9bb030c 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -52,7 +52,7 @@ assert langGo -> langCC; with stdenv.lib; with builtins; -let version = "4.8.1"; +let version = "4.8.2"; # Whether building a cross-compiler for GNU/Hurd. crossGNU = cross != null && cross.config == "i586-pc-gnu"; @@ -200,7 +200,7 @@ stdenv.mkDerivation ({ src = fetchurl { url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2"; - sha256 = "04sqn0ds17ys8l6zn7vyyvjz1a7hsk4zb0381vlw9wnr7az48nsl"; + sha256 = "1j6dwgby4g3p3lz7zkss32ghr45zpdidrg8xvazvn91lqxv25p09"; }; inherit patches; From 312d081b6a8daf375ebace1c4d3a5af11449c806 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sun, 20 Oct 2013 14:56:31 +0200 Subject: [PATCH 200/286] pkgs/build-support/cabal: move current postFixup hook into installPhase to free up the postFixup hook for users to override Builds tend to override pre and post hooks for each phase, so we should not use them to perform regular build commands that cannot be omitted. --- pkgs/build-support/cabal/default.nix | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index 6794a7a4be1..fb3b6b99c4f 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -203,13 +203,11 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; GHC_PACKAGE_PATH=$installedPkgConf ghc-pkg --global register $pkgConf --force fi - eval "$postInstall" - ''; - - postFixup = '' if test -f $out/nix-support/propagated-native-build-inputs; then ln -s $out/nix-support/propagated-native-build-inputs $out/nix-support/propagated-user-env-packages fi + + eval "$postInstall" ''; # We inherit stdenv and ghc so that they can be used From 911ca85240db2e2064ade45bb6464aa542523b80 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sun, 20 Oct 2013 14:58:05 +0200 Subject: [PATCH 201/286] pkgs/build-support/cabal: stabilize shared linking support We cannot pass the --{enable,disable}-executable-dynamic flags to GHC versions prior to 7.4.x. Building shared libraries via --{enable,disable}-shared is possible in theory with GHC 6.12.x or later, but doesn't work in practice because our GHC 6.10.x builds don't provide shared versions of their base libraries. This could probably be fixed, but it's probably not worth the effort. --- pkgs/build-support/cabal/default.nix | 48 ++++++++++++++++++---------- pkgs/top-level/haskell-packages.nix | 13 ++++++-- 2 files changed, 42 insertions(+), 19 deletions(-) diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index fb3b6b99c4f..9b6d8c4e80e 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -4,11 +4,26 @@ , enableLibraryProfiling ? false , enableSharedLibraries ? false , enableSharedExecutables ? false -, enableCheckPhase ? true +, enableCheckPhase ? stdenv.lib.versionOlder "7.4" ghc.version }: -# The Cabal library shipped with GHC versions older than 7.x doesn't accept the --enable-tests configure flag. -assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; +let + enableFeature = stdenv.lib.enableFeature; + versionOlder = stdenv.lib.versionOlder; + optional = stdenv.lib.optional; + optionals = stdenv.lib.optionals; + optionalString = stdenv.lib.optionalString; + filter = stdenv.lib.filter; +in + +# Cabal shipped with GHC 6.12.4 or earlier doesn't know the "--enable-tests configure" flag. +assert enableCheckPhase -> versionOlder "7" ghc.version; + +# GHC prior to 7.4.x doesn't know the "--enable-executable-dynamic" flag. +assert enableSharedExecutables -> versionOlder "7.4" ghc.version; + +# Our GHC 6.10.x builds do not provide sharable versions of their core libraries. +assert enableSharedLibraries -> versionOlder "6.12" ghc.version; { mkDerivation = @@ -25,8 +40,8 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; # in the interest of keeping hashes stable. postprocess = x : (removeAttrs x internalAttrs) // { - buildInputs = stdenv.lib.filter (y : ! (y == null)) x.buildInputs; - propagatedBuildInputs = stdenv.lib.filter (y : ! (y == null)) x.propagatedBuildInputs; + buildInputs = filter (y : ! (y == null)) x.buildInputs; + propagatedBuildInputs = filter (y : ! (y == null)) x.propagatedBuildInputs; doCheck = enableCheckPhase && x.doCheck; }; @@ -69,7 +84,7 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; # but often propagatedBuildInputs is preferable anyway buildInputs = [ghc Cabal] ++ self.extraBuildInputs; extraBuildInputs = self.buildTools ++ - (stdenv.lib.optionals self.doCheck self.testDepends) ++ + (optionals self.doCheck self.testDepends) ++ (if self.pkgconfigDepends == [] then [] else [pkgconfig]) ++ (if self.isLibrary then [] else self.buildDepends ++ self.extraLibraries ++ self.pkgconfigDepends); @@ -105,8 +120,8 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; jailbreak = false; # pass the '--enable-split-objs' flag to cabal in the configure stage - enableSplitObjs = !( stdenv.isDarwin # http://hackage.haskell.org/trac/ghc/ticket/4013 - || stdenv.lib.versionOlder "7.6.99" ghc.ghcVersion # -fsplit-ojbs is broken in 7.7 snapshot + enableSplitObjs = !( stdenv.isDarwin # http://hackage.haskell.org/trac/ghc/ticket/4013 + || versionOlder "7.6.99" ghc.version # -fsplit-ojbs is broken in 7.7 snapshot ); # pass the '--enable-tests' flag to cabal in the configure stage @@ -122,21 +137,22 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; inherit enableSharedExecutables; extraConfigureFlags = [ - (stdenv.lib.enableFeature enableLibraryProfiling "library-profiling") - (stdenv.lib.enableFeature self.enableSharedLibraries "shared") - (stdenv.lib.enableFeature self.enableSharedExecutables "executable-dynamic") - (stdenv.lib.enableFeature self.enableSplitObjs "split-objs") - ] ++ stdenv.lib.optional (stdenv.lib.versionOlder "7" ghc.ghcVersion) (stdenv.lib.enableFeature self.doCheck "tests"); + (enableFeature self.enableSplitObjs "split-objs") + (enableFeature enableLibraryProfiling "library-profiling") + (enableFeature self.enableSharedLibraries "shared") + (optional (versionOlder "7.4" ghc.version) (enableFeature self.enableSharedExecutables "executable-dynamic")) + (optional (versionOlder "7" ghc.version) (enableFeature self.doCheck "tests")) + ]; # GHC needs the locale configured during the Haddock phase. LANG = "en_US.UTF-8"; - LOCALE_ARCHIVE = lib.optionalString stdenv.isLinux "${glibcLocales}/lib/locale/locale-archive"; + LOCALE_ARCHIVE = optionalString stdenv.isLinux "${glibcLocales}/lib/locale/locale-archive"; # compiles Setup and configures configurePhase = '' eval "$preConfigure" - ${lib.optionalString self.jailbreak "${jailbreakCabal}/bin/jailbreak-cabal ${self.pname}.cabal"} + ${optionalString self.jailbreak "${jailbreakCabal}/bin/jailbreak-cabal ${self.pname}.cabal"} for i in Setup.hs Setup.lhs; do test -f $i && ghc --make $i @@ -175,7 +191,7 @@ assert enableCheckPhase -> stdenv.lib.versionOlder "7" ghc.ghcVersion; eval "$postBuild" ''; - checkPhase = stdenv.lib.optional self.doCheck '' + checkPhase = optional self.doCheck '' eval "$preCheck" ./Setup test ${self.testTarget} diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 5954fe56797..adb46777001 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -58,7 +58,12 @@ # # For most packages, however, we keep only one version, and use default.nix. -{pkgs, newScope, ghc, prefFun, enableLibraryProfiling ? false, modifyPrio ? (x : x)}: +{ pkgs, newScope, ghc, prefFun, modifyPrio ? (x : x) +, enableLibraryProfiling ? false +, enableSharedLibraries ? true +, enableSharedExecutables ? false +, enableCheckPhase ? pkgs.stdenv.lib.versionOlder "7.4" ghc.version +}: # We redefine callPackage to take into account the new scope. The optional # modifyPrio argument can be set to lowPrio to make all Haskell packages have @@ -105,8 +110,10 @@ let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x # packages. It isn't the Cabal library, which is spelled "Cabal". cabal = callPackage ../build-support/cabal { - enableLibraryProfiling = enableLibraryProfiling; - enableCheckPhase = pkgs.stdenv.lib.versionOlder "7.4" self.ghc.ghcVersion; + inherit enableLibraryProfiling; + inherit enableSharedLibraries; + inherit enableSharedExecutables; + inherit enableCheckPhase; glibcLocales = if pkgs.stdenv.isLinux then pkgs.glibcLocales else null; }; From fae8fd8ef16d4f24b8e189e5d7bb89310863bcea Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sun, 20 Oct 2013 15:40:22 +0200 Subject: [PATCH 202/286] ghc-wrapper: rename 'ghcVersion' attribute to 'version' for consistency --- pkgs/development/compilers/ghc/wrapper.nix | 3 +-- pkgs/development/compilers/uhc/default.nix | 2 +- pkgs/development/libraries/haskell/ghc-mod/default.nix | 2 +- pkgs/development/tools/documentation/haddock/2.7.2.nix | 2 +- pkgs/development/tools/documentation/haddock/2.9.2.nix | 2 +- 5 files changed, 5 insertions(+), 6 deletions(-) diff --git a/pkgs/development/compilers/ghc/wrapper.nix b/pkgs/development/compilers/ghc/wrapper.nix index 24deb89c2ec..bcfbd49b98a 100644 --- a/pkgs/development/compilers/ghc/wrapper.nix +++ b/pkgs/development/compilers/ghc/wrapper.nix @@ -82,6 +82,5 @@ stdenv.mkDerivation { ''; inherit ghc GHCGetPackages GHCPackages; - inherit (ghc) meta; - ghcVersion = ghc.version; + inherit (ghc) meta version; } diff --git a/pkgs/development/compilers/uhc/default.nix b/pkgs/development/compilers/uhc/default.nix index fa66306721d..31f45086ba0 100644 --- a/pkgs/development/compilers/uhc/default.nix +++ b/pkgs/development/compilers/uhc/default.nix @@ -4,7 +4,7 @@ # this check won't be needed anymore after ghc-wrapper is fixed # to show ghc-builtin packages in "ghc-pkg list" output. -let binaryIsBuiltIn = builtins.compareVersions "7.2.1" ghc.ghcVersion != 1; +let binaryIsBuiltIn = builtins.compareVersions "7.2.1" ghc.version != 1; in stdenv.mkDerivation { name = "uhc-svn-git20120502"; diff --git a/pkgs/development/libraries/haskell/ghc-mod/default.nix b/pkgs/development/libraries/haskell/ghc-mod/default.nix index 977a15d28e0..accce6f5c86 100644 --- a/pkgs/development/libraries/haskell/ghc-mod/default.nix +++ b/pkgs/development/libraries/haskell/ghc-mod/default.nix @@ -30,7 +30,7 @@ cabal.mkDerivation (self: { #!/bin/sh COMMAND=\$1 shift - eval exec $out/ghc-mod \$COMMAND \$( ${self.ghc.GHCGetPackages} ${self.ghc.ghcVersion} | tr " " "\n" | tail -n +2 | paste -d " " - - | sed 's/.*/-g "&"/' | tr "\n" " ") "\$@" + eval exec $out/ghc-mod \$COMMAND \$( ${self.ghc.GHCGetPackages} ${self.ghc.version} | tr " " "\n" | tail -n +2 | paste -d " " - - | sed 's/.*/-g "&"/' | tr "\n" " ") "\$@" EOF chmod +x $out/bin/ghc-mod ''; diff --git a/pkgs/development/tools/documentation/haddock/2.7.2.nix b/pkgs/development/tools/documentation/haddock/2.7.2.nix index 8dd3460b6f8..fd31a96b291 100644 --- a/pkgs/development/tools/documentation/haddock/2.7.2.nix +++ b/pkgs/development/tools/documentation/haddock/2.7.2.nix @@ -10,7 +10,7 @@ cabal.mkDerivation (self : { doCheck = false; postInstall = '' - wrapProgram $out/bin/haddock --add-flags "\$(${self.ghc.GHCGetPackages} ${self.ghc.ghcVersion} \"\$(dirname \$0)\" \"--optghc=-package-conf --optghc=\")" + wrapProgram $out/bin/haddock --add-flags "\$(${self.ghc.GHCGetPackages} ${self.ghc.version} \"\$(dirname \$0)\" \"--optghc=-package-conf --optghc=\")" ''; meta = { diff --git a/pkgs/development/tools/documentation/haddock/2.9.2.nix b/pkgs/development/tools/documentation/haddock/2.9.2.nix index 61e457426de..fcae14d789e 100644 --- a/pkgs/development/tools/documentation/haddock/2.9.2.nix +++ b/pkgs/development/tools/documentation/haddock/2.9.2.nix @@ -10,7 +10,7 @@ cabal.mkDerivation (self : { doCheck = false; postInstall = '' - wrapProgram $out/bin/haddock --add-flags "\$(${self.ghc.GHCGetPackages} ${self.ghc.ghcVersion} \"\$(dirname \$0)\" \"--optghc=-package-conf --optghc=\")" + wrapProgram $out/bin/haddock --add-flags "\$(${self.ghc.GHCGetPackages} ${self.ghc.version} \"\$(dirname \$0)\" \"--optghc=-package-conf --optghc=\")" ''; meta = { From f7bec094e62a64580fdcd7a46283cea0c94c70a9 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sun, 20 Oct 2013 20:18:19 +0200 Subject: [PATCH 203/286] haskell-packages.nix: whoops, don't enable shared libraries just yet --- pkgs/top-level/haskell-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index adb46777001..d05769b10e7 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -60,7 +60,7 @@ { pkgs, newScope, ghc, prefFun, modifyPrio ? (x : x) , enableLibraryProfiling ? false -, enableSharedLibraries ? true +, enableSharedLibraries ? false , enableSharedExecutables ? false , enableCheckPhase ? pkgs.stdenv.lib.versionOlder "7.4" ghc.version }: From 649b477cc37b70884f7a0c7b1da6559833bbfd82 Mon Sep 17 00:00:00 2001 From: Petr Rockai Date: Sun, 27 Oct 2013 15:36:50 +0100 Subject: [PATCH 204/286] isl: Avoid a spurious symbol reference that breaks GCC build (#778). --- pkgs/development/libraries/isl/default.nix | 1 + pkgs/development/libraries/isl/fix-gcc-build.diff | 12 ++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 pkgs/development/libraries/isl/fix-gcc-build.diff diff --git a/pkgs/development/libraries/isl/default.nix b/pkgs/development/libraries/isl/default.nix index 9242af95e27..7711d4f170f 100644 --- a/pkgs/development/libraries/isl/default.nix +++ b/pkgs/development/libraries/isl/default.nix @@ -9,6 +9,7 @@ stdenv.mkDerivation rec { }; buildInputs = [ gmp ]; + patches = [ ./fix-gcc-build.diff ]; meta = { homepage = http://www.kotnet.org/~skimo/isl/; diff --git a/pkgs/development/libraries/isl/fix-gcc-build.diff b/pkgs/development/libraries/isl/fix-gcc-build.diff new file mode 100644 index 00000000000..6fbd1f9d478 --- /dev/null +++ b/pkgs/development/libraries/isl/fix-gcc-build.diff @@ -0,0 +1,12 @@ +diff -ru isl-0.11.1/include/isl/int.h isl-0.11.1.new/include/isl/int.h +--- isl-0.11.1/include/isl/int.h 2012-11-29 09:47:32.000000000 +0100 ++++ isl-0.11.1.new/include/isl/int.h 2013-10-27 15:35:31.348553812 +0100 +@@ -14,7 +14,7 @@ + #include + #include + #if defined(__cplusplus) +-#include ++#include + #endif + + #if defined(__cplusplus) From d21d47e228e32f0adf9f41634025bc4f168484cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Tue, 29 Oct 2013 20:14:45 +0100 Subject: [PATCH 205/286] gfortran: use 4.8 and remove 4.7 (close #1038) Thanks to @mornfall. --- pkgs/top-level/all-packages.nix | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a7328a98fc7..ba552ea6b3c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2552,15 +2552,7 @@ let stdenv = allStdenvs.stdenvNative; }); - gfortran = gfortran47; # 48 has problems building ATM - - gfortran47 = wrapGCC (gcc47.gcc.override { - name = "gfortran"; - langFortran = true; - langCC = false; - langC = false; - profiledCompiler = false; - }); + gfortran = gfortran48; gfortran48 = wrapGCC (gcc48.gcc.override { name = "gfortran"; From cf9a57daf389642966e7a83e125ef3a255ff24e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 30 Oct 2013 07:53:38 +0100 Subject: [PATCH 206/286] gcj: use 4.8 and drop all others See/complain on discussion #699. --- pkgs/top-level/all-packages.nix | 58 +-------------------------------- 1 file changed, 1 insertion(+), 57 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ba552ea6b3c..cde66122156 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2562,63 +2562,7 @@ let profiledCompiler = false; }); - gcj = gcj47; - - gcj44 = wrapGCC (gcc44.gcc.override { - name = "gcj"; - langJava = true; - langFortran = false; - langCC = true; - langC = false; - profiledCompiler = false; - inherit zip unzip zlib boehmgc gettext pkgconfig; - inherit gtk; - inherit (gnome) libart_lgpl; - inherit (xlibs) libX11 libXt libSM libICE libXtst libXi libXrender - libXrandr xproto renderproto xextproto inputproto randrproto; - }); - - gcj45 = wrapGCC (gcc45.gcc.override { - name = "gcj"; - langJava = true; - langFortran = false; - langCC = true; - langC = false; - profiledCompiler = false; - inherit zip unzip zlib boehmgc gettext pkgconfig perl; - inherit gtk; - inherit (gnome) libart_lgpl; - inherit (xlibs) libX11 libXt libSM libICE libXtst libXi libXrender - libXrandr xproto renderproto xextproto inputproto randrproto; - }); - - gcj46 = wrapGCC (gcc46.gcc.override { - name = "gcj"; - langJava = true; - langFortran = false; - langCC = true; - langC = false; - profiledCompiler = false; - inherit zip unzip zlib boehmgc gettext pkgconfig perl; - inherit gtk; - inherit (gnome) libart_lgpl; - inherit (xlibs) libX11 libXt libSM libICE libXtst libXi libXrender - libXrandr xproto renderproto xextproto inputproto randrproto; - }); - - gcj47 = wrapGCC (gcc47.gcc.override { - name = "gcj"; - langJava = true; - langFortran = false; - langCC = true; - langC = false; - profiledCompiler = false; - inherit zip unzip zlib boehmgc gettext pkgconfig perl; - inherit gtk; - inherit (gnome) libart_lgpl; - inherit (xlibs) libX11 libXt libSM libICE libXtst libXi libXrender - libXrandr xproto renderproto xextproto inputproto randrproto; - }); + gcj = gcj48; gcj48 = wrapGCC (gcc48.gcc.override { name = "gcj"; From 7ff9622310c483817aa1fc38abbfbe107fd58f10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 30 Oct 2013 21:40:41 +0100 Subject: [PATCH 207/286] xbase: fix build with new gcc via a Gentoo patch --- pkgs/development/libraries/xbase/default.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/xbase/default.nix b/pkgs/development/libraries/xbase/default.nix index 847ca6510e5..81447276db7 100644 --- a/pkgs/development/libraries/xbase/default.nix +++ b/pkgs/development/libraries/xbase/default.nix @@ -9,7 +9,13 @@ stdenv.mkDerivation { }; prePatch = "find . -type f -not -name configure -print0 | xargs -0 chmod -x"; - patches = [ ./xbase-fixes.patch ]; + patches = [ + ./xbase-fixes.patch + (fetchurl { + url = "http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-db/xbase/files/xbase-3.1.2-gcc47.patch?revision=1.1"; + sha256 = "1kpcrkkcqdwl609yd0qxlvp743icz3vni13993sz6fkgn5lah8yl"; + }) + ]; meta = { homepage = http://linux.techass.com/projects/xdb/; From 16e224b93a5c521e1278e88e8d4e5b82128e3565 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 30 Oct 2013 21:59:03 +0100 Subject: [PATCH 208/286] gnuplot: fix build via using texinfo4 --- pkgs/top-level/all-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cde66122156..69ad9a99adc 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -996,6 +996,7 @@ let gnuplot = callPackage ../tools/graphics/gnuplot { texLive = null; lua = null; + texinfo = texinfo4; # build errors with gnuplot-4.6.3 # use gccApple to compile on darwin, seems to resolve a malloc error stdenv = if stdenv.isDarwin From b60d44a00a9218eccf1190bcc6bbb6ec929358d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 30 Oct 2013 22:04:34 +0100 Subject: [PATCH 209/286] release: remove gcjXX references to fix tarball --- pkgs/top-level/release-python.nix | 2 -- pkgs/top-level/release-small.nix | 2 +- pkgs/top-level/release.nix | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/pkgs/top-level/release-python.nix b/pkgs/top-level/release-python.nix index 2453712584a..05a3ea5fb81 100644 --- a/pkgs/top-level/release-python.nix +++ b/pkgs/top-level/release-python.nix @@ -372,8 +372,6 @@ let gajim = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; }; gav = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; }; gcj = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; }; - gcj44 = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; }; - gcj46 = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; }; gcl = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; }; gdb = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; }; gdbCross = { type = "job"; systems = ["x86_64-linux"]; schedulingPriority = 4; }; diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix index 488feb6f3b1..8a91954fdf5 100644 --- a/pkgs/top-level/release-small.nix +++ b/pkgs/top-level/release-small.nix @@ -51,7 +51,7 @@ with import ./release-lib.nix { inherit supportedSystems; }; gcc34 = linux; gcc42 = linux; gcc44 = linux; - gcj44 = linux; + gcj = linux; ghdl = linux; glibc = linux; glibcLocales = linux; diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix index 4d205f6882a..a3d42f6b68b 100644 --- a/pkgs/top-level/release.nix +++ b/pkgs/top-level/release.nix @@ -115,7 +115,7 @@ let gcc34 = linux; gcc42 = linux; gcc44 = linux; - gcj44 = linux; + gcj = linux; ghdl = linux; ghostscript = linux; ghostscriptX = linux; From b035c33fe8b216091241b678dee292398caa0302 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 2 Nov 2013 11:53:04 +0100 Subject: [PATCH 210/286] perl: avoid --no-cpp-precomp on darwin, (close #1160) Taken from https://trac.macports.org/ticket/38913 vcunat renamed the patch --- .../interpreters/perl/5.16/cpp-precomp.patch | 11 +++++++++++ pkgs/development/interpreters/perl/5.16/default.nix | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/interpreters/perl/5.16/cpp-precomp.patch diff --git a/pkgs/development/interpreters/perl/5.16/cpp-precomp.patch b/pkgs/development/interpreters/perl/5.16/cpp-precomp.patch new file mode 100644 index 00000000000..231853fe51a --- /dev/null +++ b/pkgs/development/interpreters/perl/5.16/cpp-precomp.patch @@ -0,0 +1,11 @@ +--- a/hints/darwin.sh 2013-05-08 11:13:45.000000000 -0600 ++++ b/hints/darwin.sh 2013-05-08 11:15:04.000000000 -0600 +@@ -129,7 +129,7 @@ + + # Avoid Apple's cpp precompiler, better for extensions + if [ "X`echo | ${cc} -no-cpp-precomp -E - 2>&1 >/dev/null`" = "X" ]; then +- cppflags="${cppflags} -no-cpp-precomp" ++ #cppflags="${cppflags} -no-cpp-precomp" + + # This is necessary because perl's build system doesn't + # apply cppflags to cc compile lines as it should. diff --git a/pkgs/development/interpreters/perl/5.16/default.nix b/pkgs/development/interpreters/perl/5.16/default.nix index 60bfacf419b..a8c17545303 100644 --- a/pkgs/development/interpreters/perl/5.16/default.nix +++ b/pkgs/development/interpreters/perl/5.16/default.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { ./no-sys-dirs.patch ] ++ optional stdenv.isSunOS ./ld-shared.patch - ++ optional stdenv.isDarwin ./no-libutil.patch; + ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ] ; # Build a thread-safe Perl with a dynamic libperls.o. We need the # "installstyle" option to ensure that modules are put under From cee92097c99a67cb57125cddea51e903c1ffaa8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 15 Nov 2013 12:06:14 +0100 Subject: [PATCH 211/286] emacs23: fix build via using older texinfo --- pkgs/top-level/all-packages.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e07fba1b138..16a0d173691 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7589,6 +7589,7 @@ let # TODO: these packages don't build on Darwin. gconf = null /* if stdenv.isDarwin then null else gnome.GConf */; librsvg = null /* if stdenv.isDarwin then null else librsvg */; + texinfo = texinfo4; }; emacs24 = callPackage ../applications/editors/emacs-24 { From 29c11ef8a52e791d83170c9cb7b9e8ff00e48bdc Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 2 Dec 2013 13:00:02 +0100 Subject: [PATCH 212/286] gnutar: update to version 1.27.1 --- pkgs/tools/archivers/gnutar/default.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/archivers/gnutar/default.nix b/pkgs/tools/archivers/gnutar/default.nix index 8735702dd33..6428fbaa9dc 100644 --- a/pkgs/tools/archivers/gnutar/default.nix +++ b/pkgs/tools/archivers/gnutar/default.nix @@ -1,11 +1,12 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { - name = "gnutar-1.27"; + name = "gnutar-${version}"; + version = "1.27.1"; src = fetchurl { - url = "mirror://gnu/tar/tar-1.27.tar.bz2"; - sha256 = "0yrwmx2f721ahpnki4fnzvnmrd3md3bq417icb4wrjky7k3caf12"; + url = "mirror://gnu/tar/tar-${version}.tar.bz2"; + sha256 = "1iip0fk0wqhxb0jcwphz43r4fxkx1y7mznnhmlvr618jhp7b63wv"; }; # May have some issues with root compilation because the bootstrap tool From 7bf209db50be1ce57298320e596e8c8fd817c927 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Sat, 30 Nov 2013 11:03:35 +0100 Subject: [PATCH 213/286] patchShebangs: rewrite ".../bin/env python" to /nix/store/.../python Currently "/usr/bin/env python" is rewritten to "/nix/store/.../env python". That doesn't really improve anything because the interpreter still have to be located in $PATH at runtime. The result is that many nix package expressions do .../bin/env fixup themselves. Instead of everyone having to do this patching locally, add the functionality to the standard environment patchShebangs function so that everyone can benefit. --- pkgs/stdenv/generic/setup.sh | 45 ++++++++++++++++++++++++++++++++---- 1 file changed, 41 insertions(+), 4 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index a50596985ec..3cc84c9db5e 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -655,20 +655,57 @@ patchShebangs() { # Rewrite all script interpreter file names (`#! /path') under the # specified directory tree to paths found in $PATH. E.g., # /bin/sh will be rewritten to /nix/store/-some-bash/bin/sh. + # /usr/bin/env gets special treatment so that ".../bin/env python" is + # rewritten to /nix/store//bin/python. # Interpreters that are already in the store are left untouched. header "patching script interpreter paths" local dir="$1" local f + local oldPath + local newPath + local arg0 + local args + local oldInterpreterLine + local newInterpreterLine + for f in $(find "$dir" -type f -perm +0100); do - local oldPath=$(sed -ne '1 s,^#![ ]*\([^ ]*\).*$,\1,p' "$f") + if [ $(head -1 "$f" | head -c +2) != '#!' ]; then + # missing shebang => not a script + continue + fi + + oldInterpreterLine=$(head -1 "$f" | tail -c +3) + read oldPath arg0 args <<< "$oldInterpreterLine" + + if $(echo "$oldPath" | grep -q "/bin/env$"); then + # Check for unsupported 'env' functionality: + # - options: something starting with a '-' + # - environment variables: foo=bar + if $(echo "$arg0" | grep -q -- "^-.*\|.*=.*"); then + echo "unsupported interpreter directive \"$oldInterpreterLine\" (set dontPatchShebangs=1 and handle shebang patching yourself)" + exit 1 + fi + newPath="$(command -v "$arg0")" + else + if [ "$oldPath" = "" ]; then + # If no interpreter is specified linux will use /bin/sh. Set + # oldpath="/bin/sh" so that we get /nix/store/.../sh. + oldPath="/bin/sh" + fi + newPath="$(command -v "$(basename "$oldPath")")" + args="$arg0 $args" + fi + + newInterpreterLine="$newPath $args" + if [ -n "$oldPath" -a "${oldPath:0:${#NIX_STORE}}" != "$NIX_STORE" ]; then - local newPath=$(type -P $(basename $oldPath) || true) if [ -n "$newPath" -a "$newPath" != "$oldPath" ]; then - echo "$f: interpreter changed from $oldPath to $newPath" - sed -i -e "1 s,$oldPath,$newPath," "$f" + echo "$f: interpreter directive changed from \"$oldInterpreterLine\" to \"$newInterpreterLine\"" + sed -i -e "1 s|.*|#\!$newInterpreterLine|" "$f" fi fi done + stopNest } From 88c7b4c7fee42c1ae5167fd1e7806d600e4451e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Tue, 3 Dec 2013 16:58:49 +0100 Subject: [PATCH 214/286] Fix bug introduced in previous commit When building e.g. perl for the first time there is no perl in PATH yet, so command -v perl will fail. This brings back the previous behaviour of silently not patching shebangs for which there is no available command in PATH. --- pkgs/stdenv/generic/setup.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 3cc84c9db5e..1ed905db363 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -685,14 +685,14 @@ patchShebangs() { echo "unsupported interpreter directive \"$oldInterpreterLine\" (set dontPatchShebangs=1 and handle shebang patching yourself)" exit 1 fi - newPath="$(command -v "$arg0")" + newPath="$(command -v "$arg0" || true)" else if [ "$oldPath" = "" ]; then # If no interpreter is specified linux will use /bin/sh. Set # oldpath="/bin/sh" so that we get /nix/store/.../sh. oldPath="/bin/sh" fi - newPath="$(command -v "$(basename "$oldPath")")" + newPath="$(command -v "$(basename "$oldPath")" || true)" args="$arg0 $args" fi From 4e385fcda73dd437152d42aefdde4bcb79d23c78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Sat, 7 Dec 2013 21:13:06 +0100 Subject: [PATCH 215/286] stdenv/patchShebangs: fix shebang check patchShebangs has a bug that shows itself on files that have the executable bit set but have no shebang (i.e. a blank/empty first line). The shell would then evaluate this: if [ != '#!' ]; then # not evaluated fi With proper quoting we get the correct behaviour: if [ "" != '#!' ]; then # this will be evaluated fi --- pkgs/stdenv/generic/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 1ed905db363..84d499696c9 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -669,7 +669,7 @@ patchShebangs() { local newInterpreterLine for f in $(find "$dir" -type f -perm +0100); do - if [ $(head -1 "$f" | head -c +2) != '#!' ]; then + if [ "$(head -1 "$f" | head -c +2)" != '#!' ]; then # missing shebang => not a script continue fi From 3227c1d215ce1897bb72ab72333fa1bdd0cd1154 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Sun, 8 Dec 2013 20:11:40 +0100 Subject: [PATCH 216/286] ncurses: fix includedir setting ${out} in configureFlags isn't expanded, so ncursesw5-config ends up expanding ${out} at *runtime*. Here is the relevant ncursesw5-config snippet showing how includedir gets its value at runtime. bindir="${exec_prefix}/bin" includedir="${out}/include" libdir="${exec_prefix}/lib" datadir="${prefix}/share" mandir="${prefix}/man" When running in a plain shell you get this: $ ncursesw5-config --cflags -I/include/ncursesw -I/include And when run in a nix-build shell for e.g. gpsd: $ ncursesw5-config --cflags -I/nix/store/HASH-gpsd-3.10/include/ncursesw -I/nix/store/HASH-gpsd-3.10/include This is clearly wrong. Q: How come this has gone undetected for years? A: It seems few packages use ncursesw5-config to get the compiler flags. For example, our python curses module builds its own compiler flags. Fix this by moving the --includedir setting to preConfigure where shell variables are expanded. --- pkgs/development/libraries/ncurses/5_4.nix | 6 +++++- pkgs/development/libraries/ncurses/default.nix | 8 ++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/ncurses/5_4.nix b/pkgs/development/libraries/ncurses/5_4.nix index 1cf08bd30c6..fd35a1d4887 100644 --- a/pkgs/development/libraries/ncurses/5_4.nix +++ b/pkgs/development/libraries/ncurses/5_4.nix @@ -19,10 +19,14 @@ stdenv.mkDerivation (rec { }; configureFlags = '' - --with-shared --includedir=''${out}/include --without-debug + --with-shared --without-debug ${if unicode then "--enable-widec" else ""}${if cxx then "" else "--without-cxx-binding"} ''; + preConfigure = '' + export configureFlags="$configureFlags --includedir=$out/include" + ''; + selfNativeBuildInput = true; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 8d20a7339b7..9ba21e99a78 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -18,12 +18,16 @@ stdenv.mkDerivation (rec { sha256 = "0fsn7xis81za62afan0vvm38bvgzg5wfmv1m86flqcj0nj7jjilh"; }; + patches = [ ./patch-ac ]; + configureFlags = '' - --with-shared --includedir=''${out}/include --without-debug + --with-shared --without-debug ${if unicode then "--enable-widec" else ""}${if cxx then "" else "--without-cxx-binding"} ''; - patches = [ ./patch-ac ]; + preConfigure = '' + export configureFlags="$configureFlags --includedir=$out/include" + ''; selfNativeBuildInput = true; From 8b11fb8fcbb6d03680edfaaef32463693bcb04b9 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 16 Dec 2013 21:20:49 +0100 Subject: [PATCH 217/286] pkgs/build-support/cabal: clean up the code that sets rpath for shared executables --- pkgs/build-support/cabal/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index d99faf41f88..8984feac167 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -156,7 +156,7 @@ assert !enableStaticLibraries -> versionOlder "7.7" ghc.version; (optional (versionOlder "7" ghc.version) (enableFeature self.enableStaticLibraries "library-vanilla")) (optional (versionOlder "7.4" ghc.version) (enableFeature self.enableSharedExecutables "executable-dynamic")) (optional (versionOlder "7" ghc.version) (enableFeature self.doCheck "tests")) - ] ++ optional self.enableSharedExecutables "--ghc-option=-optl=-Wl,-rpath=$ORIGIN/../lib/${ghc.ghc.name}/${self.pname}-${self.version}"; + ]; # GHC needs the locale configured during the Haddock phase. LANG = "en_US.UTF-8"; @@ -187,6 +187,10 @@ assert !enableStaticLibraries -> versionOlder "7.7" ghc.version; done done + ${optionalString self.enableSharedExecutables '' + configureFlags+=" --ghc-option=-optl=-Wl,-rpath=$out/lib/${ghc.ghc.name}/${self.pname}-${self.version}"; + ''} + echo "configure flags: $extraConfigureFlags $configureFlags" ./Setup configure --verbose --prefix="$out" --libdir='$prefix/lib/$compiler' --libsubdir='$pkgid' $extraConfigureFlags $configureFlags From f0ebdd42968f81cff4e156ff3f3cc4692a6ec8ee Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 16 Dec 2013 21:21:31 +0100 Subject: [PATCH 218/286] pkgs/build-support/cabal: add 'buildTarget' attribute to allow passing flags to "./Setup build" --- pkgs/build-support/cabal/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/build-support/cabal/default.nix b/pkgs/build-support/cabal/default.nix index 8984feac167..cfa6175744f 100644 --- a/pkgs/build-support/cabal/default.nix +++ b/pkgs/build-support/cabal/default.nix @@ -107,6 +107,9 @@ assert !enableStaticLibraries -> versionOlder "7.7" ghc.version; # build-depends Cabal field buildDepends = []; + # target(s) passed to the cabal build phase as an argument + buildTarget = ""; + # build-depends Cabal fields stated in test-suite stanzas testDepends = []; @@ -201,7 +204,7 @@ assert !enableStaticLibraries -> versionOlder "7.7" ghc.version; buildPhase = '' eval "$preBuild" - ./Setup build + ./Setup build ${self.buildTarget} export GHC_PACKAGE_PATH=$(${ghc.GHCPackages}) test -n "$noHaddock" || ./Setup haddock From 42560c78bbf3fdc1e4c45bb6b2d14f02e732bd5c Mon Sep 17 00:00:00 2001 From: Daniel Oertwig Date: Mon, 16 Dec 2013 18:47:20 +0100 Subject: [PATCH 219/286] libxml2 w/o python --with-python=no on all systems When building libxml2 without python enabled, pass "--with-python=no" to configure on all systems, not only on FreeBSD. Omitting mentioned configure option results in building libxml2 WITH python enabled. In this case, configure is looking for python by itself in system paths. With a rootless configuration, python includes from the host are accessed. If those files (Python.h) are not available, building libxml2 fails. --- pkgs/development/libraries/libxml2/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libxml2/default.nix b/pkgs/development/libraries/libxml2/default.nix index b86df4969c2..b235c746e1a 100644 --- a/pkgs/development/libraries/libxml2/default.nix +++ b/pkgs/development/libraries/libxml2/default.nix @@ -41,7 +41,7 @@ stdenv.mkDerivation (rec { preInstall = ''substituteInPlace python/libxml2mod.la --replace "${python}" "$out"''; installFlags = ''pythondir="$(out)/lib/${python.libPrefix}/site-packages"''; -} // stdenv.lib.optionalAttrs (!pythonSupport && stdenv.isFreeBSD) { +} // stdenv.lib.optionalAttrs (!pythonSupport) { configureFlags = "--with-python=no"; # otherwise build impurity bites us }) From 3e052e242f8749ede2113deaa68c9994c9939e82 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Tue, 17 Dec 2013 12:18:07 +0100 Subject: [PATCH 220/286] gfortran48: disable parallel make to avoid apparent race condition See as an example of a failed build. --- pkgs/development/compilers/gcc/4.8/default.nix | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 3e4a9bb030c..3d42ae2ca3f 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -484,11 +484,15 @@ stdenv.mkDerivation ({ passthru = { inherit langC langCC langAda langFortran langVhdl langGo enableMultilib version; }; - /* From gccinstall.info: - "parallel make is currently not supported since collisions in profile - collecting may occur" - */ - enableParallelBuilding = !profiledCompiler; + /* gccinstall.info says that "parallel make is currently not supported since + collisions in profile collecting may occur". + + Parallel make of gfortran is disabled because of an apparent race + condition concerning the generation of "bconfig.h". Please try and + re-enable parallel make for a later release of gfortran to check whether + the error has been fixed. + */ + enableParallelBuilding = !profiledCompiler && !langFortran; meta = { homepage = http://gcc.gnu.org/; From 9319597b650f69b0ec336bd049bc02b34e4a01c6 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Tue, 5 Nov 2013 16:56:56 +0100 Subject: [PATCH 221/286] gccgo: add 4.8 --- pkgs/top-level/all-packages.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6caacf37e72..a2290a3dc78 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2680,6 +2680,13 @@ let langGo = true; }); + gccgo48 = wrapGCC (gcc48_real.gcc.override { + name = "gccgo"; + langCC = true; #required for go. + langC = true; + langGo = true; + }); + ghdl = wrapGCC (import ../development/compilers/gcc/4.3 { inherit stdenv fetchurl gmp mpfr noSysDirs gnat; texinfo = texinfo4; From fd8d833a8674853219413746369ae0c48de576e6 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Tue, 5 Nov 2013 16:57:11 +0100 Subject: [PATCH 222/286] switch default gccgo to 4.8 --- pkgs/top-level/all-packages.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a2290a3dc78..3c3751e465e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2670,8 +2670,7 @@ let inherit fetchurl stdenv; }); - # gccgo46 does not work. I set 4.7 then. - gccgo = gccgo47; + gccgo = gccgo48; gccgo47 = wrapGCC (gcc47_real.gcc.override { name = "gccgo"; From 95f443fda46758ca11c7a63646d07a51fafc030c Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Sat, 7 Dec 2013 20:10:55 +0100 Subject: [PATCH 223/286] all-packages: remove gcc47 dependencies now gcc48 is default I checked these and they built fine --- pkgs/top-level/all-packages.nix | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3c3751e465e..deed3b7d68e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -535,9 +535,7 @@ let bochs = callPackage ../applications/virtualization/bochs { }; - boomerang = callPackage ../development/tools/boomerang { - stdenv = overrideGCC stdenv gcc47; - }; + boomerang = callPackage ../development/tools/boomerang { }; bootchart = callPackage ../tools/system/bootchart { }; @@ -1064,7 +1062,7 @@ let gtmess = callPackage ../applications/networking/instant-messengers/gtmess { }; - gummiboot = callPackage ../tools/misc/gummiboot { stdenv = overrideGCC stdenv gcc47; }; + gummiboot = callPackage ../tools/misc/gummiboot { }; gupnp = callPackage ../development/libraries/gupnp { inherit (gnome) libsoup; @@ -2249,7 +2247,7 @@ let clangUnwrapped = callPackage ../development/compilers/llvm/clang.nix { stdenv = if stdenv.isDarwin then stdenvAdapters.overrideGCC stdenv gccApple - else stdenvAdapters.overrideGCC stdenv gcc47; + else stdenv; }; clang = wrapClang clangUnwrapped; @@ -4411,9 +4409,7 @@ let gnet = callPackage ../development/libraries/gnet { }; - gnu-efi = callPackage ../development/libraries/gnu-efi { - stdenv = overrideGCC stdenv gcc47; - }; + gnu-efi = callPackage ../development/libraries/gnu-efi { }; gnutls = callPackage ../development/libraries/gnutls { guileBindings = config.gnutls.guile or true; From 50253a3e84a9a21a6fd29173d04928a31f53c691 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Wed, 25 Dec 2013 13:13:02 +0100 Subject: [PATCH 224/286] ncurses: install *.pc files (for pkg-config) To make e.g. "pkg-config --cflags ncursesw" work. The ncurses expression, when built in unicode/wide char mode, provides backward compatibility symlinks from lib.so to libw.so. Provide similar symlinks for the *.pc files: .pc -> w.pc. --- pkgs/development/libraries/ncurses/default.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 9ba21e99a78..553aa95d834 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -21,12 +21,20 @@ stdenv.mkDerivation (rec { patches = [ ./patch-ac ]; configureFlags = '' - --with-shared --without-debug + --with-shared --without-debug --enable-pc-files ${if unicode then "--enable-widec" else ""}${if cxx then "" else "--without-cxx-binding"} ''; + # PKG_CONFIG_LIBDIR is where the *.pc files will be installed. If this + # directory doesn't exist, the configure script will disable installation of + # *.pc files. The configure script usually (on LSB distros) pick $(path of + # pkg-config)/../lib/pkgconfig. On NixOS that path doesn't exist and is not + # the place we want to put *.pc files from other packages anyway. So we must + # tell it explicitly where to install with PKG_CONFIG_LIBDIR. preConfigure = '' export configureFlags="$configureFlags --includedir=$out/include" + export PKG_CONFIG_LIBDIR="$out/lib/pkgconfig" + mkdir -p "$PKG_CONFIG_LIBDIR" ''; selfNativeBuildInput = true; @@ -50,6 +58,7 @@ stdenv.mkDerivation (rec { echo "INPUT(-l''${lib}w)" > $out/lib/lib$lib.so ln -svf lib''${lib}w.a $out/lib/lib$lib.a ln -svf lib''${lib}w.so.5 $out/lib/lib$lib.so.5 + ln -svf ''${lib}w.pc $out/lib/pkgconfig/$lib.pc fi done; ln -svf . $out/include/ncursesw From 2b2c55e34a767c3d156e4d98ddfcb1785eaa84c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Thu, 26 Dec 2013 18:42:10 +0100 Subject: [PATCH 225/286] ncurses: add ncurses5-config -> ncursesw5-config symlink We already have backward compatibility symlinks for ncurses libraries and pkg-config files (when built in unicode/wide mode). The last bit is to add a symlink from ncurses5-config to ncursesw5-config, which is what this commit does. --- pkgs/development/libraries/ncurses/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 553aa95d834..2e5db48b7df 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -62,6 +62,7 @@ stdenv.mkDerivation (rec { fi done; ln -svf . $out/include/ncursesw + ln -svf ncursesw5-config $out/bin/ncurses5-config '' else ""; meta = { From 34a7256820fe8c504ff519377c8ab2a9ac068ebb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 27 Dec 2013 12:43:04 +0100 Subject: [PATCH 226/286] coreutils: fix build (race condition) --- pkgs/tools/misc/coreutils/default.nix | 2 ++ pkgs/tools/misc/coreutils/help2man.patch | 40 ++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 pkgs/tools/misc/coreutils/help2man.patch diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix index ebd68ee9cf6..e5f9eb1be2c 100644 --- a/pkgs/tools/misc/coreutils/default.nix +++ b/pkgs/tools/misc/coreutils/default.nix @@ -18,6 +18,8 @@ let sha256 = "064f512185iysqqcvhnhaf3bfmzrvcgs7n405qsyp99zmfyl9amd"; }; + patches = [ ./help2man.patch ]; + nativeBuildInputs = [ perl ]; buildInputs = [ gmp ] ++ optional aclSupport acl diff --git a/pkgs/tools/misc/coreutils/help2man.patch b/pkgs/tools/misc/coreutils/help2man.patch new file mode 100644 index 00000000000..9f3cbaa40ff --- /dev/null +++ b/pkgs/tools/misc/coreutils/help2man.patch @@ -0,0 +1,40 @@ +Although the above man pages depend on src/md5sum.c as a shared +source, the build of the man pages directly requires their own +executables to exist. + +* man/local.mk (man/sha1sum.1): Change the dependency from +'src/md5sum' to 'src/sha1sum'. +(man/sha224sum.1): s/md5sum/sha224sum/ +(man/sha256sum.1): s/md5sum/sha256sum/ +(man/sha384sum.1): s/md5sum/sha384sum/ +(man/sha512sum.1): s/md5sum/sha512sum/ + +Reported by Pádraig Brady in +http://lists.gnu.org/archive/html/coreutils/2013-11/msg00006.html +--- + man/local.mk | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/man/local.mk b/man/local.mk +index 266b780..45dbcb9 100644 +--- a/man/local.mk ++++ b/man/local.mk +@@ -131,11 +131,11 @@ man/rm.1: src/rm + man/rmdir.1: src/rmdir + man/runcon.1: src/runcon + man/seq.1: src/seq +-man/sha1sum.1: src/md5sum +-man/sha224sum.1: src/md5sum +-man/sha256sum.1: src/md5sum +-man/sha384sum.1: src/md5sum +-man/sha512sum.1: src/md5sum ++man/sha1sum.1: src/sha1sum ++man/sha224sum.1: src/sha224sum ++man/sha256sum.1: src/sha256sum ++man/sha384sum.1: src/sha384sum ++man/sha512sum.1: src/sha512sum + man/shred.1: src/shred + man/shuf.1: src/shuf + man/sleep.1: src/sleep +-- +1.8.3.1 From 3f4b14d7937509a431ca7fa61f4b21b3b53fd6f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 27 Dec 2013 21:03:16 +0100 Subject: [PATCH 227/286] stdenv/setup.sh: add SHELL to makeFlags (close #1354) --- pkgs/stdenv/generic/setup.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 84d499696c9..96168da7753 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -109,6 +109,8 @@ runHook preHook # Check that the pre-hook initialised SHELL. if [ -z "$SHELL" ]; then echo "SHELL not set"; exit 1; fi +# see https://github.com/NixOS/nixpkgs/pull/1354#issuecomment-31260409 +makeFlags="${makeFlags} SHELL=${SHELL}" # Hack: run gcc's setup hook. envHooks=() From d978c35ff966b64e7c2e5f251e4ed35a24a3e80d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 28 Dec 2013 08:17:14 +0100 Subject: [PATCH 228/286] stdenv/setup.sh: fix previous change... for the case that there is no makefile. CC #1354 --- pkgs/stdenv/generic/setup.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 96168da7753..b7940a069ce 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -109,9 +109,6 @@ runHook preHook # Check that the pre-hook initialised SHELL. if [ -z "$SHELL" ]; then echo "SHELL not set"; exit 1; fi -# see https://github.com/NixOS/nixpkgs/pull/1354#issuecomment-31260409 -makeFlags="${makeFlags} SHELL=${SHELL}" - # Hack: run gcc's setup hook. envHooks=() crossEnvHooks=() @@ -617,6 +614,9 @@ buildPhase() { return fi + # see https://github.com/NixOS/nixpkgs/pull/1354#issuecomment-31260409 + makeFlags="${makeFlags} SHELL=${SHELL}" + echo "make flags: $makeFlags ${makeFlagsArray[@]} $buildFlags ${buildFlagsArray[@]}" make ${makefile:+-f $makefile} \ ${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}} \ From 2265bab69d888abc8e82d31b0ee3fdee409102ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 28 Dec 2013 17:29:38 +0100 Subject: [PATCH 229/286] llvm: fix heavily parallel builds --- pkgs/development/compilers/llvm/default.nix | 6 ++++-- pkgs/development/compilers/llvm/no-rule-aarch64.patch | 8 ++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 pkgs/development/compilers/llvm/no-rule-aarch64.patch diff --git a/pkgs/development/compilers/llvm/default.nix b/pkgs/development/compilers/llvm/default.nix index a7129f5cef3..62ce2cdab14 100644 --- a/pkgs/development/compilers/llvm/default.nix +++ b/pkgs/development/compilers/llvm/default.nix @@ -10,8 +10,10 @@ stdenv.mkDerivation rec { sha256 = "0y3mfbb5qzcpw3v5qncn69x1hdrrrfirgs82ypi2annhf0g6nxk8"; }; - # The default rlimits are too low for shared libraries. - patches = [ ./more-memory-for-bugpoint.patch ]; + patches = [ + ./more-memory-for-bugpoint.patch # The default rlimits are too low for shared libraries. + ./no-rule-aarch64.patch # http://llvm.org/bugs/show_bug.cgi?id=16625 + ]; # libffi was propagated before, but it wasn't even being used, so # unless something needs it just an input is fine. diff --git a/pkgs/development/compilers/llvm/no-rule-aarch64.patch b/pkgs/development/compilers/llvm/no-rule-aarch64.patch new file mode 100644 index 00000000000..ea7214febe5 --- /dev/null +++ b/pkgs/development/compilers/llvm/no-rule-aarch64.patch @@ -0,0 +1,8 @@ +--- llvm/lib/Target/AArch64/Utils/CMakeLists.txt 2013/05/18 04:32:15 182189 ++++ llvm/lib/Target/AArch64/Utils/CMakeLists.txt 2013/05/18 08:17:47 182190 +@@ -3,3 +3,5 @@ + add_llvm_library(LLVMAArch64Utils + AArch64BaseInfo.cpp + ) ++ ++add_dependencies(LLVMAArch64Utils AArch64CommonTableGen) From c24cd76ef6831951fb53e02fd9ef0500925663eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 30 Dec 2013 09:13:13 +0100 Subject: [PATCH 230/286] libgcrypt on i686-linux: disable tests (fail on Hydra) I don't know what causes the problem. The tests do pass on my non-chrooted Fedora build machine. --- pkgs/development/libraries/libgcrypt/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libgcrypt/default.nix b/pkgs/development/libraries/libgcrypt/default.nix index 997e9cfc5b8..c53b5479b7b 100644 --- a/pkgs/development/libraries/libgcrypt/default.nix +++ b/pkgs/development/libraries/libgcrypt/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation (rec { propagatedBuildInputs = [ libgpgerror ]; - doCheck = true; + doCheck = stdenv.system != "i686-linux"; # "basic" test fails after stdenv+glibc-2.18 # For some reason the tests don't find `libgpg-error.so'. checkPhase = '' From c6b92053c9e38238a29ed78b7ba1e3e5f569fe83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 1 Jan 2014 15:50:02 +0100 Subject: [PATCH 231/286] glibc: pull a bug work-around from Arch This should work around some of our build problems, e.g. http://hydra.nixos.org/build/7575893/nixlog/1/tail-reload Cf. #1446 --- pkgs/development/libraries/glibc/2.18/common.nix | 2 ++ .../libraries/glibc/2.18/strstr-sse42-hack.patch | 14 ++++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 pkgs/development/libraries/glibc/2.18/strstr-sse42-hack.patch diff --git a/pkgs/development/libraries/glibc/2.18/common.nix b/pkgs/development/libraries/glibc/2.18/common.nix index 9e58b2163c6..518615b1739 100644 --- a/pkgs/development/libraries/glibc/2.18/common.nix +++ b/pkgs/development/libraries/glibc/2.18/common.nix @@ -67,6 +67,8 @@ stdenv.mkDerivation ({ ./cve-2013-4332.patch ./cve-2013-4458.patch ./cve-2013-4788.patch + + ./strstr-sse42-hack.patch ]; postPatch = '' diff --git a/pkgs/development/libraries/glibc/2.18/strstr-sse42-hack.patch b/pkgs/development/libraries/glibc/2.18/strstr-sse42-hack.patch new file mode 100644 index 00000000000..cdf4c025316 --- /dev/null +++ b/pkgs/development/libraries/glibc/2.18/strstr-sse42-hack.patch @@ -0,0 +1,14 @@ +https://bugs.archlinux.org/task/36556 +diff --git a/sysdeps/x86_64/multiarch/strstr.c b/sysdeps/x86_64/multiarch/strstr.c +index cd63b68..03d8b9a 100644 +--- a/sysdeps/x86_64/multiarch/strstr.c ++++ b/sysdeps/x86_64/multiarch/strstr.c +@@ -86,7 +86,7 @@ + /* Simple replacement of movdqu to address 4KB boundary cross issue. + If EOS occurs within less than 16B before 4KB boundary, we don't + cross to next page. */ +-static __m128i ++static inline __m128i + __m128i_strloadu (const unsigned char * p, __m128i zero) + { + if (__builtin_expect ((int) ((size_t) p & 0xfff) > 0xff0, 0)) From 86802e68ffd1981af92303a7a8a91a2723ca84ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 3 Jan 2014 10:33:03 +0100 Subject: [PATCH 232/286] gcc-4.{7,8}: hacky fix for parallel builds The hash of stdenv is unchanged, as we use profiled compiler, which has parallel builds disabled (conditional patch). --- .../development/compilers/gcc/4.7/default.nix | 17 +++++++--- .../development/compilers/gcc/4.8/default.nix | 21 ++++++------ .../compilers/gcc/4.8/parallel-bconfig.patch | 32 +++++++++++++++++++ 3 files changed, 56 insertions(+), 14 deletions(-) create mode 100644 pkgs/development/compilers/gcc/4.8/parallel-bconfig.patch diff --git a/pkgs/development/compilers/gcc/4.7/default.nix b/pkgs/development/compilers/gcc/4.7/default.nix index 951288dc024..6c71a0d640f 100644 --- a/pkgs/development/compilers/gcc/4.7/default.nix +++ b/pkgs/development/compilers/gcc/4.7/default.nix @@ -54,7 +54,18 @@ let version = "4.7.3"; # Whether building a cross-compiler for GNU/Hurd. crossGNU = cross != null && cross.config == "i586-pc-gnu"; + /* gccinstall.info says that "parallel make is currently not supported since + collisions in profile collecting may occur". + + Parallel make of gfortran is disabled because of an apparent race + condition concerning the generation of "bconfig.h". Please try and + re-enable parallel make for a later release of gfortran to check whether + the error has been fixed. + */ + enableParallelBuilding = !profiledCompiler && !langFortran; + patches = [] + ++ optional enableParallelBuilding ../4.8/parallel-bconfig.patch ++ optional stdenv.isArm [ ./arm-eabi.patch ] ++ optional (cross != null) ./libstdc++-target.patch # ++ optional noSysDirs ./no-sys-dirs.patch @@ -481,11 +492,7 @@ stdenv.mkDerivation ({ passthru = { inherit langC langCC langAda langFortran langVhdl langGo enableMultilib version; }; - /* From gccinstall.info: - "parallel make is currently not supported since collisions in profile - collecting may occur" - */ - enableParallelBuilding = !profiledCompiler; + inherit enableParallelBuilding; meta = { homepage = http://gcc.gnu.org/; diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 3d42ae2ca3f..67c50d420f5 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -57,7 +57,18 @@ let version = "4.8.2"; # Whether building a cross-compiler for GNU/Hurd. crossGNU = cross != null && cross.config == "i586-pc-gnu"; + /* gccinstall.info says that "parallel make is currently not supported since + collisions in profile collecting may occur". + + Parallel make of gfortran is disabled because of an apparent race + condition concerning the generation of "bconfig.h". Please try and + re-enable parallel make for a later release of gfortran to check whether + the error has been fixed. + */ + enableParallelBuilding = !profiledCompiler && !langFortran; + patches = [] + ++ optional enableParallelBuilding ./parallel-bconfig.patch ++ optional stdenv.isArm [ ./arm-eabi.patch ] ++ optional (cross != null) ./libstdc++-target.patch # ++ optional noSysDirs ./no-sys-dirs.patch @@ -484,15 +495,7 @@ stdenv.mkDerivation ({ passthru = { inherit langC langCC langAda langFortran langVhdl langGo enableMultilib version; }; - /* gccinstall.info says that "parallel make is currently not supported since - collisions in profile collecting may occur". - - Parallel make of gfortran is disabled because of an apparent race - condition concerning the generation of "bconfig.h". Please try and - re-enable parallel make for a later release of gfortran to check whether - the error has been fixed. - */ - enableParallelBuilding = !profiledCompiler && !langFortran; + inherit enableParallelBuilding; meta = { homepage = http://gcc.gnu.org/; diff --git a/pkgs/development/compilers/gcc/4.8/parallel-bconfig.patch b/pkgs/development/compilers/gcc/4.8/parallel-bconfig.patch new file mode 100644 index 00000000000..bc56ac698f5 --- /dev/null +++ b/pkgs/development/compilers/gcc/4.8/parallel-bconfig.patch @@ -0,0 +1,32 @@ +Hacky work-around for highly parallel builds. +http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57125 + +diff --git a/gcc/Makefile.in b/gcc/Makefile.in +index aad927c..182f666 100644 +--- a/gcc/Makefile.in ++++ b/gcc/Makefile.in +@@ -3908,21 +3908,21 @@ build/gengtype-lex.o: $(BCONFIG_H) + + gengtype-parse.o build/gengtype-parse.o : gengtype-parse.c gengtype.h \ + $(SYSTEM_H) +-gengtype-parse.o: $(CONFIG_H) ++gengtype-parse.o: $(CONFIG_H) $(BCONFIG_H) + CFLAGS-gengtype-parse.o += -DGENERATOR_FILE + build/gengtype-parse.o: $(BCONFIG_H) + + gengtype-state.o build/gengtype-state.o: gengtype-state.c $(SYSTEM_H) \ + gengtype.h errors.h double-int.h version.h $(HASHTAB_H) $(OBSTACK_H) \ + $(XREGEX_H) +-gengtype-state.o: $(CONFIG_H) ++gengtype-state.o: $(CONFIG_H) $(BCONFIG_H) + CFLAGS-gengtype-state.o += -DGENERATOR_FILE + build/gengtype-state.o: $(BCONFIG_H) + + gengtype.o build/gengtype.o : gengtype.c $(SYSTEM_H) gengtype.h \ + rtl.def insn-notes.def errors.h double-int.h version.h $(HASHTAB_H) \ + $(OBSTACK_H) $(XREGEX_H) +-gengtype.o: $(CONFIG_H) ++gengtype.o: $(CONFIG_H) $(BCONFIG_H) + CFLAGS-gengtype.o += -DGENERATOR_FILE + build/gengtype.o: $(BCONFIG_H) + From f4f0d2ecb96ee731cd1091c052afa50f0353bb94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Fri, 3 Jan 2014 13:55:41 +0100 Subject: [PATCH 233/286] stdenv/setup.sh: fix breakage when shebang contains '\' Some programs, e.g. guile-config, has a shebang that ends in '\': #!/usr/bin/guile-1.8 \ -e main -s !# ;;;; guile-config --- utility for linking programs with Guile ;;;; Jim Blandy --- September 1997 This currently breaks patchShebangs: $ read oldPath arg0 args <<< 'shebang \'; echo $? 1 $ echo $oldPath shebang $ echo $arg0 $ echo $args (And setup.sh/patchShebangs is run with 'set -e' so any command that return non-zero aborts the build.) Fix by telling 'read' to not interpret backslashes (with the -r flag): $ read -r oldPath arg0 args <<< 'shebang \'; echo $? 0 $ echo $oldPath shebang $ echo $arg0 \ $ echo $args Also needed: escape the escape characters so that sed doesn't interpret them. --- pkgs/stdenv/generic/setup.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index b7940a069ce..58647f1508d 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -677,7 +677,7 @@ patchShebangs() { fi oldInterpreterLine=$(head -1 "$f" | tail -c +3) - read oldPath arg0 args <<< "$oldInterpreterLine" + read -r oldPath arg0 args <<< "$oldInterpreterLine" if $(echo "$oldPath" | grep -q "/bin/env$"); then # Check for unsupported 'env' functionality: @@ -703,7 +703,9 @@ patchShebangs() { if [ -n "$oldPath" -a "${oldPath:0:${#NIX_STORE}}" != "$NIX_STORE" ]; then if [ -n "$newPath" -a "$newPath" != "$oldPath" ]; then echo "$f: interpreter directive changed from \"$oldInterpreterLine\" to \"$newInterpreterLine\"" - sed -i -e "1 s|.*|#\!$newInterpreterLine|" "$f" + # escape the escape chars so that sed doesn't interpret them + escapedInterpreterLine=$(echo "$newInterpreterLine" | sed 's|\\|\\\\|g') + sed -i -e "1 s|.*|#\!$escapedInterpreterLine|" "$f" fi fi done From f78534ca0f8ec63d79370eb2367605579efba088 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 4 Jan 2014 12:37:17 +0100 Subject: [PATCH 234/286] gcc-4.7: fix the parallel-bconfig patch I'm sorry I forgot to test the 4.8 patch against 4.7. Now it's ported. --- .../development/compilers/gcc/4.7/default.nix | 2 +- .../gcc/4.7/parallel-bconfig-4.7.patch | 30 +++++++++++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/compilers/gcc/4.7/parallel-bconfig-4.7.patch diff --git a/pkgs/development/compilers/gcc/4.7/default.nix b/pkgs/development/compilers/gcc/4.7/default.nix index 6c71a0d640f..34ea93cf5f0 100644 --- a/pkgs/development/compilers/gcc/4.7/default.nix +++ b/pkgs/development/compilers/gcc/4.7/default.nix @@ -65,7 +65,7 @@ let version = "4.7.3"; enableParallelBuilding = !profiledCompiler && !langFortran; patches = [] - ++ optional enableParallelBuilding ../4.8/parallel-bconfig.patch + ++ optional enableParallelBuilding ./parallel-bconfig-4.7.patch ++ optional stdenv.isArm [ ./arm-eabi.patch ] ++ optional (cross != null) ./libstdc++-target.patch # ++ optional noSysDirs ./no-sys-dirs.patch diff --git a/pkgs/development/compilers/gcc/4.7/parallel-bconfig-4.7.patch b/pkgs/development/compilers/gcc/4.7/parallel-bconfig-4.7.patch new file mode 100644 index 00000000000..bdf0fa4931a --- /dev/null +++ b/pkgs/development/compilers/gcc/4.7/parallel-bconfig-4.7.patch @@ -0,0 +1,30 @@ +diff --git a/gcc/Makefile.in b/gcc/Makefile.in +index 0f6735a..ba93e9b 100644 +--- a/gcc/Makefile.in ++++ b/gcc/Makefile.in +@@ -3904,21 +3904,21 @@ build/genflags.o : genflags.c $(RTL_BASE_H) $(OBSTACK_H) $(BCONFIG_H) \ + $(SYSTEM_H) coretypes.h $(GTM_H) errors.h $(READ_MD_H) gensupport.h + build/gengenrtl.o : gengenrtl.c $(BCONFIG_H) $(SYSTEM_H) rtl.def + gengtype-lex.o build/gengtype-lex.o : gengtype-lex.c gengtype.h $(SYSTEM_H) +-gengtype-lex.o: $(CONFIG_H) ++gengtype-lex.o: $(CONFIG_H) $(BCONFIG_H) + build/gengtype-lex.o: $(BCONFIG_H) + gengtype-parse.o build/gengtype-parse.o : gengtype-parse.c gengtype.h \ + $(SYSTEM_H) +-gengtype-parse.o: $(CONFIG_H) ++gengtype-parse.o: $(CONFIG_H) $(BCONFIG_H) + build/gengtype-parse.o: $(BCONFIG_H) + gengtype-state.o build/gengtype-state.o: gengtype-state.c $(SYSTEM_H) \ + gengtype.h errors.h double-int.h version.h $(HASHTAB_H) $(OBSTACK_H) \ + $(XREGEX_H) +-gengtype-state.o: $(CONFIG_H) ++gengtype-state.o: $(CONFIG_H) $(BCONFIG_H) + build/gengtype-state.o: $(BCONFIG_H) + gengtype.o build/gengtype.o : gengtype.c $(SYSTEM_H) gengtype.h \ + rtl.def insn-notes.def errors.h double-int.h version.h $(HASHTAB_H) \ + $(OBSTACK_H) $(XREGEX_H) +-gengtype.o: $(CONFIG_H) ++gengtype.o: $(CONFIG_H) $(BCONFIG_H) + build/gengtype.o: $(BCONFIG_H) + build/genmddeps.o: genmddeps.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h \ + errors.h $(READ_MD_H) From 5c33b7350ba8709ea8033adb4bde55f7e4505da4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 5 Jan 2014 09:42:07 +0100 Subject: [PATCH 235/286] webkitgtk, kde.qtcurve: build with default gcc (not 4.7) --- pkgs/top-level/all-packages.nix | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f0fd7946560..c3334ca96f4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5837,7 +5837,6 @@ let }; webkitgtk = callPackage ../development/libraries/webkitgtk { - stdenv = overrideGCC stdenv gcc47; libsoup = libsoup_2_44; harfbuzz = harfbuzz.override { withIcu = true; @@ -9769,9 +9768,7 @@ let psi = callPackage ../applications/networking/instant-messengers/psi { }; - qtcurve = callPackage ../misc/themes/qtcurve { - stdenv = overrideGCC stdenv gcc47; - }; + qtcurve = callPackage ../misc/themes/qtcurve { }; quassel = callPackage ../applications/networking/irc/quassel { }; From 0a2ae78216d6afda43f59b96a4cf264cc3ef2993 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 5 Jan 2014 09:43:12 +0100 Subject: [PATCH 236/286] asympote: fix build --- pkgs/tools/graphics/asymptote/default.nix | 6 +++--- pkgs/top-level/all-packages.nix | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/tools/graphics/asymptote/default.nix b/pkgs/tools/graphics/asymptote/default.nix index e9f61228bed..b4bb49758a4 100644 --- a/pkgs/tools/graphics/asymptote/default.nix +++ b/pkgs/tools/graphics/asymptote/default.nix @@ -1,7 +1,7 @@ a @ { freeglut,ghostscriptX,imagemagick,fftw, boehmgc,mesa,ncurses,readline,gsl,libsigsegv, - python,zlib, perl, texLive, texinfo, lzma, + python,zlib, perl, texLive, texinfo, xz, noDepEntry, fullDepEntry, fetchUrlFromSrcInfo, lib, @@ -20,7 +20,7 @@ let buildInputs = with a; [ freeglut ghostscriptX imagemagick fftw boehmgc mesa ncurses readline gsl libsigsegv python zlib - perl texLive texinfo lzma + perl texLive texinfo xz ]; in rec { @@ -54,7 +54,7 @@ rec { ''; extractTexinfoTex = a.fullDepEntry '' - lzma -d < ${a.texinfo.src} | tar --wildcards -x texinfo-'*'/doc/texinfo.tex + xz -d < ${a.texinfo.src} | tar --wildcards -x texinfo-'*'/doc/texinfo.tex cp texinfo-*/doc/texinfo.tex doc/ '' ["minInit" "addInputs" "doUnpack"]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c3334ca96f4..0fb7e10c33c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -429,9 +429,9 @@ let asymptote = builderDefsPackage ../tools/graphics/asymptote { inherit freeglut ghostscriptX imagemagick fftw boehmgc mesa ncurses readline gsl libsigsegv python zlib perl - texinfo lzma; + texinfo xz; texLive = texLiveAggregationFun { - paths = [ texLive texLiveExtra ]; + paths = [ texLive texLiveExtra texLiveCMSuper ]; }; }; From d494ed15e774fb0774f145f4a8d5b7de49b102b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 5 Jan 2014 10:42:55 +0100 Subject: [PATCH 237/286] celestia: fix build (inspired by Arch) --- pkgs/applications/science/astronomy/celestia/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/applications/science/astronomy/celestia/default.nix b/pkgs/applications/science/astronomy/celestia/default.nix index d7814aa5b78..6f9de9d981f 100644 --- a/pkgs/applications/science/astronomy/celestia/default.nix +++ b/pkgs/applications/science/astronomy/celestia/default.nix @@ -65,6 +65,8 @@ stdenv.mkDerivation { ) ''; + installPhase = ''make DESTDIR="$out" MKDIR_P="mkdir -p" install''; + enableParallelBuilding = true; meta = { From 72478f1c8e94385fff388fe6193683e3ef41a1a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 5 Jan 2014 11:03:30 +0100 Subject: [PATCH 238/286] gnome2.libgnomeprint: fix build by using bison2 --- pkgs/desktops/gnome-2/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/gnome-2/default.nix b/pkgs/desktops/gnome-2/default.nix index c2e1c062e9e..50fd8344c82 100644 --- a/pkgs/desktops/gnome-2/default.nix +++ b/pkgs/desktops/gnome-2/default.nix @@ -1,4 +1,4 @@ -{ callPackage, self, stdenv, gettext, gvfs, libunique, overrides ? {} }: +{ callPackage, self, stdenv, gettext, gvfs, libunique, bison2, overrides ? {} }: let overridden = set // overrides; set = with overridden; { # Backward compatibility. gtkdoc = self.gtk_doc; @@ -19,7 +19,9 @@ let overridden = set // overrides; set = with overridden; { libglade = callPackage ./platform/libglade { }; - libgnomeprint = callPackage ./platform/libgnomeprint { }; + libgnomeprint = callPackage ./platform/libgnomeprint { + bison = bison2; + }; libgnomeprintui = callPackage ./platform/libgnomeprintui { }; From 552143224a8c0475b116d185a3b67d4cf5e0dfcd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 5 Jan 2014 11:19:07 +0100 Subject: [PATCH 239/286] net_snmp: fix build by autoreconfing --- pkgs/servers/monitoring/net-snmp/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/monitoring/net-snmp/default.nix b/pkgs/servers/monitoring/net-snmp/default.nix index a9d1578495a..ad44860e7bd 100644 --- a/pkgs/servers/monitoring/net-snmp/default.nix +++ b/pkgs/servers/monitoring/net-snmp/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, file, openssl, perl }: +{ stdenv, fetchurl, autoreconfHook, file, openssl, perl }: stdenv.mkDerivation rec { name = "net-snmp-5.7.2"; @@ -26,7 +26,7 @@ stdenv.mkDerivation rec { "--with-persistent-directory=/var/lib/net-snmp" ]; - buildInputs = [ file openssl perl ]; + buildInputs = [ autoreconfHook file openssl perl ]; enableParallelBuilding = true; From 3dd298060a2d7c4ecaf82373a4cfb73aa02ad533 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 5 Jan 2014 11:22:04 +0100 Subject: [PATCH 240/286] gource: fix build with newer gcc versions (-fpermissive) --- pkgs/applications/version-management/gource/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/applications/version-management/gource/default.nix b/pkgs/applications/version-management/gource/default.nix index 886ed9a7199..1bbc595d040 100644 --- a/pkgs/applications/version-management/gource/default.nix +++ b/pkgs/applications/version-management/gource/default.nix @@ -13,6 +13,8 @@ stdenv.mkDerivation { buildInputs = [glew SDL ftgl pkgconfig libpng libjpeg pcre SDL_image mesa]; + NIX_CFLAGS_COMPILE = "-fpermissive"; # fix build with newer gcc versions + meta = { homepage = "http://code.google.com/p/gource/"; description = "software version control visualization tool"; From 900c7d29e768fb9f1513f67d8929c5c7243cc77f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 5 Jan 2014 11:29:15 +0100 Subject: [PATCH 241/286] ipsecTools: fix build with newer gcc versions (warnings) --- pkgs/os-specific/linux/ipsec-tools/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/os-specific/linux/ipsec-tools/default.nix b/pkgs/os-specific/linux/ipsec-tools/default.nix index b28320c0625..f1faa5c4884 100644 --- a/pkgs/os-specific/linux/ipsec-tools/default.nix +++ b/pkgs/os-specific/linux/ipsec-tools/default.nix @@ -18,6 +18,9 @@ stdenv.mkDerivation rec { patches = [ ./dont-create-localstatedir-during-install.patch ]; + # fix build with newer gcc versions + preConfigure = ''substituteInPlace configure --replace "-Werror" "" ''; + configureFlags = '' --sysconfdir=/etc --localstatedir=/var --with-kernel-headers=${linuxHeaders}/include From 44391881109e4268e00b200267ff0c8459615473 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 5 Jan 2014 11:42:22 +0100 Subject: [PATCH 242/286] libmsn: fix build with >=gcc-4.7 by a debian patch --- pkgs/development/libraries/libmsn/default.nix | 1 + .../libraries/libmsn/fix-ftbfs-gcc4.7.diff | 16 ++++++++++++++++ 2 files changed, 17 insertions(+) create mode 100644 pkgs/development/libraries/libmsn/fix-ftbfs-gcc4.7.diff diff --git a/pkgs/development/libraries/libmsn/default.nix b/pkgs/development/libraries/libmsn/default.nix index 4ec5e62ea04..77fe3403de7 100644 --- a/pkgs/development/libraries/libmsn/default.nix +++ b/pkgs/development/libraries/libmsn/default.nix @@ -6,5 +6,6 @@ stdenv.mkDerivation rec { url = "mirror://sourceforge/libmsn/${name}.tar.bz2"; sha256 = "338369c7455b123e84b9a7a858ac0ed2b1dc32e6529f460fdc01d28869a20fde"; }; + patches = [ ./fix-ftbfs-gcc4.7.diff ]; buildInputs = [ cmake openssl ]; } diff --git a/pkgs/development/libraries/libmsn/fix-ftbfs-gcc4.7.diff b/pkgs/development/libraries/libmsn/fix-ftbfs-gcc4.7.diff new file mode 100644 index 00000000000..46aeab31c84 --- /dev/null +++ b/pkgs/development/libraries/libmsn/fix-ftbfs-gcc4.7.diff @@ -0,0 +1,16 @@ +Fix g++ 4.7 build failure + +Kudos to Matthias Klose for the patch + +Index: libmsn-4.2/msn/util.cpp +=================================================================== +--- libmsn-4.2.orig/msn/util.cpp 2009-07-22 19:57:10.000000000 +0000 ++++ libmsn-4.2/msn/util.cpp 2012-04-16 20:52:18.068767213 +0000 +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + #include + #include + #include From 80396084b979bbe45ea191fedf8345587d002e3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 5 Jan 2014 11:48:09 +0100 Subject: [PATCH 243/286] kde.krusader: fix build with newer gcc versions (-fpermissive) --- pkgs/applications/misc/krusader/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/applications/misc/krusader/default.nix b/pkgs/applications/misc/krusader/default.nix index bd86501c30e..83c21da0e54 100644 --- a/pkgs/applications/misc/krusader/default.nix +++ b/pkgs/applications/misc/krusader/default.nix @@ -7,6 +7,7 @@ stdenv.mkDerivation rec { sha256 = "1q1m4cjzz2m41pdpxnwrsiczc7990785b700lv64midjjgjnr7j6"; }; buildInputs = [ gettext kdelibs kde_baseapps ]; + NIX_CFLAGS_COMPILE = "-fpermissive"; # fix build with newer gcc versions meta = { description = "Norton/Total Commander clone for KDE"; license = "GPL"; From d91e03d422f35d043a234213e7aff4320684453c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 5 Jan 2014 13:09:22 +0100 Subject: [PATCH 244/286] k3d: fix build with newer gcc versions (-fpermissive) --- pkgs/applications/graphics/k3d/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/graphics/k3d/default.nix b/pkgs/applications/graphics/k3d/default.nix index 8920d243dbf..9f31d94ac7f 100644 --- a/pkgs/applications/graphics/k3d/default.nix +++ b/pkgs/applications/graphics/k3d/default.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { preConfigure = '' export LD_LIBRARY_PATH="$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/build/lib" - export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$(echo ${gtkglext}/include/gtkglext-*) -I$(echo ${gtkglext}/lib/gtkglext-*/include)" + export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -fpermissive -I$(echo ${gtkglext}/include/gtkglext-*) -I$(echo ${gtkglext}/lib/gtkglext-*/include)" ''; buildInputs = [ From 0f3155f2460d216b5c130dfdaa5b5fe7092ea8c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 5 Jan 2014 15:20:48 +0100 Subject: [PATCH 245/286] mlton: fix build by updating --- pkgs/development/compilers/mlton/default.nix | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/pkgs/development/compilers/mlton/default.nix b/pkgs/development/compilers/mlton/default.nix index a5ff613a9b4..47c4404a818 100644 --- a/pkgs/development/compilers/mlton/default.nix +++ b/pkgs/development/compilers/mlton/default.nix @@ -1,23 +1,26 @@ { stdenv, fetchurl, gmp }: +let + version = "20130715"; +in stdenv.mkDerivation rec { - name = "mlton-20100608"; + name = "mlton-${version}"; binSrc = if stdenv.system == "i686-linux" then (fetchurl { - url = "http://sourceforge.net/projects/mlton/files/mlton/20100608/${name}-1.x86-linux.static.tgz"; - sha256 = "16qg8df9hg2pmnsblkgxp6bgm7334rsqkxqzskv5fl21wivmnwfw"; + url = "http://sourceforge.net/projects/mlton/files/mlton/${version}/${name}-1.x86-linux.tgz"; + sha256 = "1kxjjmnw4xk2d9hpvz43w9dvyhb3025k4zvjx785c33nrwkrdn4j"; }) else if stdenv.system == "x86_64-linux" then (fetchurl { - url = "http://sourceforge.net/projects/mlton/files/mlton/20100608/${name}-1.amd64-linux.static.tgz"; - sha256 = "0i6ic8f6prl0cigrmf6bj9kqz3plzappxn17lz1rg2v832nfbw9r"; + url = "http://sourceforge.net/projects/mlton/files/mlton/${version}/${name}-1.amd64-linux.tgz"; + sha256 = "0fyhwxb4nmpirjbjcvk9f6w67gmn2gkz7xcgz0xbfih9kc015ygn"; }) else throw "Architecture not supported"; codeSrc = fetchurl { - url = "http://sourceforge.net/projects/mlton/files/mlton/20100608/${name}.src.tgz"; - sha256 = "0cqb3k6ld9965hyyfyayi510f205vqzd5qqm3crh13nasvq2rjzj"; + url = "http://sourceforge.net/projects/mlton/files/mlton/${version}/${name}.src.tgz"; + sha256 = "0v1x2hrh9hiqkvnbq11kf34v4i5a2x0ffxbzqaa8skyl26nmfn11"; }; srcs = [ binSrc codeSrc ]; From 10c15d586175a0f636f2a75556a9b17040634b13 Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Sun, 5 Jan 2014 18:51:57 +0100 Subject: [PATCH 246/286] zsnes: manual header magic is no longer needed with the gcc-4.8 patch --- pkgs/misc/emulators/zsnes/default.nix | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/pkgs/misc/emulators/zsnes/default.nix b/pkgs/misc/emulators/zsnes/default.nix index 6ee57e0cddf..c3bced29200 100644 --- a/pkgs/misc/emulators/zsnes/default.nix +++ b/pkgs/misc/emulators/zsnes/default.nix @@ -19,25 +19,8 @@ stdenv.mkDerivation { preConfigure = '' cd src - sed -i "/^STRIP/d" configure - - # Fix for undefined strncasecmp() - echo '#include ' > tmp.cpp - cat tmp.cpp tools/strutil.h > tools/strutil.h.new - mv tools/strutil.h.new tools/strutil.h - - # Fix for undefined system() - echo '#include ' > tmp.cpp - cat tmp.cpp tools/depbuild.cpp > tools/depbuild.cpp.new - mv tools/depbuild.cpp.new tools/depbuild.cpp - - # Fix for lots of undefined strcmp, strncmp etc. - echo '#include ' > tmp.cpp - cat tmp.cpp parsegen.cpp > parsegen.cpp.new - mv parsegen.cpp.new parsegen.cpp ''; - configureFlags = "--enable-release"; From 340b6ab649e5d75e7cc75ee7a2181b83fb567088 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 09:40:35 +0100 Subject: [PATCH 247/286] openssl: Update to 1.0.1f CVE-2013-6449, CVE-2013-6450, CVE-2013-4353. --- pkgs/development/libraries/openssl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix index 55beb8bbc53..7d7ccacd14a 100644 --- a/pkgs/development/libraries/openssl/default.nix +++ b/pkgs/development/libraries/openssl/default.nix @@ -2,7 +2,7 @@ , withCryptodev ? false, cryptodevHeaders }: let - name = "openssl-1.0.1e"; + name = "openssl-1.0.1f"; opensslCrossSystem = stdenv.lib.attrByPath [ "openssl" "system" ] (throw "openssl needs its platform name cross building" null) @@ -41,7 +41,7 @@ stdenv.mkDerivation { "http://www.openssl.org/source/${name}.tar.gz" "http://openssl.linux-mirror.org/source/${name}.tar.gz" ]; - sha256 = "1qqskk39jh85fvdn3ycmdqjdf67c0b97dwmmbcysl4gzr3l1akzp"; + sha256 = "0nnbr70dg67raqsqvlypzxa1v5xsv9gp91f9pavyckfn2w5sihkc"; }; patches = patchesCross false; From 369185288a0fed4bc9fcb6183e70907b413a86b0 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 09:43:39 +0100 Subject: [PATCH 248/286] stdenv: Revert special-casing of fixupPhase Treating fixupPhase specially is really ugly. Also, it collides with the work in the multiple-outputs branch (which already has support for fixing up all outputs). Partial revert of 0a44a091217ecd335cd10c06c1ddd29ad599f18c. --- pkgs/stdenv/generic/setup.sh | 29 +++++++++++------------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 58647f1508d..2ed2f5d3dd8 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -796,23 +796,23 @@ fixupPhase() { fi if [ -n "$propagatedBuildInputs" ]; then - mkdir -p "$prefix/nix-support" - echo "$propagatedBuildInputs" > "$prefix/nix-support/propagated-build-inputs" + mkdir -p "$out/nix-support" + echo "$propagatedBuildInputs" > "$out/nix-support/propagated-build-inputs" fi if [ -n "$propagatedNativeBuildInputs" ]; then - mkdir -p "$prefix/nix-support" - echo "$propagatedNativeBuildInputs" > "$prefix/nix-support/propagated-native-build-inputs" + mkdir -p "$out/nix-support" + echo "$propagatedNativeBuildInputs" > "$out/nix-support/propagated-native-build-inputs" fi if [ -n "$propagatedUserEnvPkgs" ]; then - mkdir -p "$prefix/nix-support" - echo "$propagatedUserEnvPkgs" > "$prefix/nix-support/propagated-user-env-packages" + mkdir -p "$out/nix-support" + echo "$propagatedUserEnvPkgs" > "$out/nix-support/propagated-user-env-packages" fi if [ -n "$setupHook" ]; then - mkdir -p "$prefix/nix-support" - substituteAll "$setupHook" "$prefix/nix-support/setup-hook" + mkdir -p "$out/nix-support" + substituteAll "$setupHook" "$out/nix-support/setup-hook" fi runHook postFixup @@ -897,16 +897,9 @@ genericBuild() { showPhaseHeader "$curPhase" dumpVars - if [ "$curPhase" = fixupPhase ]; then - for pref in ${outputs:-out}; do - echo "fixup on \$$pref" - prefix=${!pref} eval "${!curPhase:-$curPhase}" - done - else - # Evaluate the variable named $curPhase if it exists, otherwise the - # function named $curPhase. - eval "${!curPhase:-$curPhase}" - fi + # Evaluate the variable named $curPhase if it exists, otherwise the + # function named $curPhase. + eval "${!curPhase:-$curPhase}" if [ "$curPhase" = unpackPhase ]; then cd "${sourceRoot:-.}" From 890461d8af65d803a4250b98129588965381ff75 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 09:48:23 +0100 Subject: [PATCH 249/286] stdenv: Update comment --- pkgs/stdenv/generic/setup.sh | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 2ed2f5d3dd8..14ebe842344 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -916,12 +916,9 @@ genericBuild() { stopNest } -for i in "${postHooks[@]}"; do - $i -done - -# Execute the post-hook. +# Execute the post-hooks. +for i in "${postHooks[@]}"; do $i; done runHook postHook From 2a0047bbef427e7c4c42323778f85e995afdb71d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 09:49:45 +0100 Subject: [PATCH 250/286] stdenv: Fix indentation --- pkgs/stdenv/generic/setup.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 14ebe842344..58868e8706a 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -289,7 +289,7 @@ stripDirs() { if [ -n "${dirs}" ]; then header "stripping (with flags $stripFlags) in $dirs" for dir in $dirs; do - test -L "$dir" || chmod -R +rw "$dir" + test -L "$dir" || chmod -R +rw "$dir" done find $dirs -type f -print0 | xargs -0 ${xargsFlags:--r} strip $stripFlags || true stopNest @@ -768,7 +768,7 @@ fixupPhase() { done for f in "$out"/share/man/*/* "$out"/share/man/*/*/*; do if [ -L "$f" -a -f `readlink -f "$f"`.gz ]; then - ln -sf `readlink "$f"`.gz "$f" + ln -sf `readlink "$f"`.gz "$f" fi done unset GLOBIGNORE From bdf34e9059bcfd2039b0c202226287dc3bc495d7 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 10:26:35 +0100 Subject: [PATCH 251/286] gcc: Don't use attrByPath --- .../development/compilers/gcc/4.8/default.nix | 52 +++++++++---------- 1 file changed, 24 insertions(+), 28 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 67c50d420f5..8bd3ee14554 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -102,12 +102,12 @@ let version = "4.8.2"; /* Platform flags */ platformFlags = let - gccArch = stdenv.lib.attrByPath [ "platform" "gcc" "arch" ] null stdenv; - gccCpu = stdenv.lib.attrByPath [ "platform" "gcc" "cpu" ] null stdenv; - gccAbi = stdenv.lib.attrByPath [ "platform" "gcc" "abi" ] null stdenv; - gccFpu = stdenv.lib.attrByPath [ "platform" "gcc" "fpu" ] null stdenv; - gccFloat = stdenv.lib.attrByPath [ "platform" "gcc" "float" ] null stdenv; - gccMode = stdenv.lib.attrByPath [ "platform" "gcc" "mode" ] null stdenv; + gccArch = stdenv.platform.gcc.arch or null; + gccCpu = stdenv.platform.gcc.cpu or null; + gccAbi = stdenv.platform.gcc.abi or null; + gccFpu = stdenv.platform.gcc.fpu or null; + gccFloat = stdenv.platform.gcc.float or null; + gccMode = stdenv.platform.gcc.mode or null; withArch = if gccArch != null then " --with-arch=${gccArch}" else ""; withCpu = if gccCpu != null then " --with-cpu=${gccCpu}" else ""; withAbi = if gccAbi != null then " --with-abi=${gccAbi}" else ""; @@ -115,22 +115,22 @@ let version = "4.8.2"; withFloat = if gccFloat != null then " --with-float=${gccFloat}" else ""; withMode = if gccMode != null then " --with-mode=${gccMode}" else ""; in - (withArch + + withArch + withCpu + withAbi + withFpu + withFloat + - withMode); + withMode; /* Cross-gcc settings */ crossMingw = (cross != null && cross.libc == "msvcrt"); crossConfigureFlags = let - gccArch = stdenv.lib.attrByPath [ "gcc" "arch" ] null cross; - gccCpu = stdenv.lib.attrByPath [ "gcc" "cpu" ] null cross; - gccAbi = stdenv.lib.attrByPath [ "gcc" "abi" ] null cross; - gccFpu = stdenv.lib.attrByPath [ "gcc" "fpu" ] null cross; - gccFloat = stdenv.lib.attrByPath [ "gcc" "float" ] null cross; - gccMode = stdenv.lib.attrByPath [ "gcc" "mode" ] null cross; + gccArch = stdenv.cross.gcc.arch or null; + gccCpu = stdenv.cross.gcc.cpu or null; + gccAbi = stdenv.cross.gcc.abi or null; + gccFpu = stdenv.cross.gcc.fpu or null; + gccFloat = stdenv.cross.gcc.float or null; + gccMode = stdenv.cross.gcc.mode or null; withArch = if gccArch != null then " --with-arch=${gccArch}" else ""; withCpu = if gccCpu != null then " --with-cpu=${gccCpu}" else ""; withAbi = if gccAbi != null then " --with-abi=${gccAbi}" else ""; @@ -193,8 +193,7 @@ let version = "4.8.2"; " --enable-nls" + " --disable-decimal-float") # No final libdecnumber (it may work only in 386) ); - stageNameAddon = if crossStageStatic then "-stage-static" else - "-stage-final"; + stageNameAddon = if crossStageStatic then "-stage-static" else "-stage-final"; crossNameAddon = if cross != null then "-${cross.config}" + stageNameAddon else ""; bootstrap = cross == null && !stdenv.isArm && !stdenv.isMips; @@ -379,11 +378,11 @@ stdenv.mkDerivation ({ else "install"; crossAttrs = let - xgccArch = stdenv.lib.attrByPath [ "gcc" "arch" ] null stdenv.cross; - xgccCpu = stdenv.lib.attrByPath [ "gcc" "cpu" ] null stdenv.cross; - xgccAbi = stdenv.lib.attrByPath [ "gcc" "abi" ] null stdenv.cross; - xgccFpu = stdenv.lib.attrByPath [ "gcc" "fpu" ] null stdenv.cross; - xgccFloat = stdenv.lib.attrByPath [ "gcc" "float" ] null stdenv.cross; + xgccArch = stdenv.cross.gcc.arch or null; + xgccCpu = stdenv.cross.gcc.cpu or null; + xgccAbi = stdenv.cross.gcc.abi or null; + xgccFpu = stdenv.cross.gcc.fpu or null; + xgccFloat = stdenv.cross.gcc.float or null; xwithArch = if xgccArch != null then " --with-arch=${xgccArch}" else ""; xwithCpu = if xgccCpu != null then " --with-cpu=${xgccCpu}" else ""; xwithAbi = if xgccAbi != null then " --with-abi=${xgccAbi}" else ""; @@ -443,8 +442,7 @@ stdenv.mkDerivation ({ AR = "ar"; LD = "ld"; # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210 - CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" - else "gcc"; + CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" else "gcc"; # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find # the library headers and binaries, regarless of the language being @@ -468,8 +466,7 @@ stdenv.mkDerivation ({ # On GNU/Hurd glibc refers to Mach & Hurd # headers. - ++ optionals (libcCross != null && - hasAttr "propagatedBuildInputs" libcCross) + ++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" ) libcCross.propagatedBuildInputs))); LIBRARY_PATH = concatStrings @@ -492,8 +489,8 @@ stdenv.mkDerivation ({ " -L${libpthreadCross}/lib -Wl,${libpthreadCross.TARGET_LDFLAGS}") else null; - passthru = { inherit langC langCC langAda langFortran langVhdl - langGo enableMultilib version; }; + passthru = + { inherit langC langCC langAda langFortran langVhdl langGo enableMultilib version; }; inherit enableParallelBuilding; @@ -526,7 +523,6 @@ stdenv.mkDerivation ({ installTargets = "install-gcc install-target-libgcc"; } - # Strip kills static libs of other archs (hence cross != null) // optionalAttrs (!stripped || cross != null) { dontStrip = true; NIX_STRIP_DEBUG = 0; } ) From f1efeb4b3c459c7cdc77d4bfda55fb82d71477d7 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 10:28:07 +0100 Subject: [PATCH 252/286] Get rid of tabs --- pkgs/development/compilers/gcc/4.8/builder.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.8/builder.sh b/pkgs/development/compilers/gcc/4.8/builder.sh index dc6fdd93561..b781fa6c7ef 100644 --- a/pkgs/development/compilers/gcc/4.8/builder.sh +++ b/pkgs/development/compilers/gcc/4.8/builder.sh @@ -33,7 +33,7 @@ if test "$noSysDirs" = "1"; then # The path to the Glibc binaries such as `crti.o'. glibc_libdir="$(cat $NIX_GCC/nix-support/orig-libc)/lib" - + else # Hack: support impure environments. extraFlags="-isystem /usr/include" @@ -50,10 +50,10 @@ if test "$noSysDirs" = "1"; then # bootstrap compiler are optimized and (optionally) contain # debugging information (info "(gccinstall) Building"). if test -n "$dontStrip"; then - extraFlags="-O2 -g $extraFlags" + extraFlags="-O2 -g $extraFlags" else - # Don't pass `-g' at all; this saves space while building. - extraFlags="-O2 $extraFlags" + # Don't pass `-g' at all; this saves space while building. + extraFlags="-O2 $extraFlags" fi EXTRA_FLAGS="$extraFlags" @@ -213,7 +213,7 @@ postInstall() { # previous gcc. rm -rf $out/libexec/gcc/*/*/install-tools rm -rf $out/lib/gcc/*/*/install-tools - + # More dependencies with the previous gcc or some libs (gccbug stores the build command line) rm -rf $out/bin/gccbug # Take out the bootstrap-tools from the rpath, as it's not needed at all having $out From c3d31749fbdaaf6bdc697318bf0825da0d34488e Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 10:36:15 +0100 Subject: [PATCH 253/286] Remove gcc 4.7 There is really no reason to keep it around, given that it was never the default in Nixpkgs. --- .../compilers/gcc/4.7/arm-eabi.patch | 230 -------- pkgs/development/compilers/gcc/4.7/builder.sh | 245 -------- .../development/compilers/gcc/4.7/default.nix | 533 ------------------ .../compilers/gcc/4.7/gfortran-driving.patch | 20 - .../compilers/gcc/4.7/gnat-cflags.patch | 33 -- .../gcc/4.7/java-jvgenmain-link.patch | 17 - .../compilers/gcc/4.7/libstdc++-target.patch | 32 -- .../compilers/gcc/4.7/no-sys-dirs.patch | 41 -- .../gcc/4.7/parallel-bconfig-4.7.patch | 30 - .../linux/make-bootstrap-tools-crosspi.nix | 2 +- pkgs/top-level/all-packages.nix | 53 +- 11 files changed, 7 insertions(+), 1229 deletions(-) delete mode 100644 pkgs/development/compilers/gcc/4.7/arm-eabi.patch delete mode 100644 pkgs/development/compilers/gcc/4.7/builder.sh delete mode 100644 pkgs/development/compilers/gcc/4.7/default.nix delete mode 100644 pkgs/development/compilers/gcc/4.7/gfortran-driving.patch delete mode 100644 pkgs/development/compilers/gcc/4.7/gnat-cflags.patch delete mode 100644 pkgs/development/compilers/gcc/4.7/java-jvgenmain-link.patch delete mode 100644 pkgs/development/compilers/gcc/4.7/libstdc++-target.patch delete mode 100644 pkgs/development/compilers/gcc/4.7/no-sys-dirs.patch delete mode 100644 pkgs/development/compilers/gcc/4.7/parallel-bconfig-4.7.patch diff --git a/pkgs/development/compilers/gcc/4.7/arm-eabi.patch b/pkgs/development/compilers/gcc/4.7/arm-eabi.patch deleted file mode 100644 index 63b017062b5..00000000000 --- a/pkgs/development/compilers/gcc/4.7/arm-eabi.patch +++ /dev/null @@ -1,230 +0,0 @@ -Index: gcc-4_7-branch/libstdc++-v3/configure.host -=================================================================== ---- gcc-4_7-branch/libstdc++-v3/configure.host (revision 194579) -+++ gcc-4_7-branch/libstdc++-v3/configure.host (revision 194580) -@@ -340,7 +340,7 @@ - fi - esac - case "${host}" in -- arm*-*-linux-*eabi) -+ arm*-*-linux-*eabi*) - port_specific_symbol_files="\$(srcdir)/../config/os/gnu-linux/arm-eabi-extra.ver" - ;; - esac -Index: gcc-4_7-branch/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc -=================================================================== ---- gcc-4_7-branch/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc (revision 194579) -+++ gcc-4_7-branch/libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc (revision 194580) -@@ -1,5 +1,5 @@ - // { dg-options "-std=gnu++0x -funsigned-char -fshort-enums" } --// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } -+// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi* } } - - // 2007-05-03 Benjamin Kosnik - // -Index: gcc-4_7-branch/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc -=================================================================== ---- gcc-4_7-branch/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc (revision 194579) -+++ gcc-4_7-branch/libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc (revision 194580) -@@ -1,5 +1,5 @@ - // { dg-options "-std=gnu++0x -funsigned-char -fshort-enums" } --// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } -+// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi* } } - - // 2007-05-03 Benjamin Kosnik - // -Index: gcc-4_7-branch/libjava/configure.ac -=================================================================== ---- gcc-4_7-branch/libjava/configure.ac (revision 194579) -+++ gcc-4_7-branch/libjava/configure.ac (revision 194580) -@@ -931,7 +931,7 @@ - # on Darwin -single_module speeds up loading of the dynamic libraries. - extra_ldflags_libjava=-Wl,-single_module - ;; --arm*linux*eabi) -+arm*-*-linux*eabi*) - # Some of the ARM unwinder code is actually in libstdc++. We - # could in principle replicate it in libgcj, but it's better to - # have a dependency on libstdc++. -Index: gcc-4_7-branch/libjava/configure -=================================================================== ---- gcc-4_7-branch/libjava/configure (revision 194579) -+++ gcc-4_7-branch/libjava/configure (revision 194580) -@@ -20542,7 +20542,7 @@ - # on Darwin -single_module speeds up loading of the dynamic libraries. - extra_ldflags_libjava=-Wl,-single_module - ;; --arm*linux*eabi) -+arm*-*-linux*eabi*) - # Some of the ARM unwinder code is actually in libstdc++. We - # could in principle replicate it in libgcj, but it's better to - # have a dependency on libstdc++. -Index: gcc-4_7-branch/libgcc/config.host -=================================================================== ---- gcc-4_7-branch/libgcc/config.host (revision 194579) -+++ gcc-4_7-branch/libgcc/config.host (revision 194580) -@@ -327,7 +327,7 @@ - arm*-*-linux*) # ARM GNU/Linux with ELF - tmake_file="${tmake_file} arm/t-arm t-fixedpoint-gnu-prefix" - case ${host} in -- arm*-*-linux-*eabi) -+ arm*-*-linux-*eabi*) - tmake_file="${tmake_file} arm/t-elf arm/t-bpabi arm/t-linux-eabi t-slibgcc-libgcc" - tm_file="$tm_file arm/bpabi-lib.h" - unwind_header=config/arm/unwind-arm.h -Index: gcc-4_7-branch/gcc/doc/install.texi -=================================================================== ---- gcc-4_7-branch/gcc/doc/install.texi (revision 194579) -+++ gcc-4_7-branch/gcc/doc/install.texi (revision 194580) -@@ -3222,7 +3222,7 @@ - @heading @anchor{arm-x-eabi}arm-*-eabi - ARM-family processors. Subtargets that use the ELF object format - require GNU binutils 2.13 or newer. Such subtargets include: --@code{arm-*-netbsdelf}, @code{arm-*-*linux-gnueabi} -+@code{arm-*-netbsdelf}, @code{arm-*-*linux-gnueabi*} - and @code{arm-*-rtemseabi}. - - @html -Index: gcc-4_7-branch/gcc/testsuite/gcc.target/arm/synchronize.c -=================================================================== ---- gcc-4_7-branch/gcc/testsuite/gcc.target/arm/synchronize.c (revision 194579) -+++ gcc-4_7-branch/gcc/testsuite/gcc.target/arm/synchronize.c (revision 194580) -@@ -1,4 +1,4 @@ --/* { dg-final { scan-assembler "__sync_synchronize|dmb|mcr" { target arm*-*-linux-*eabi } } } */ -+/* { dg-final { scan-assembler "__sync_synchronize|dmb|mcr" { target arm*-*-linux-*eabi* } } } */ - - void *foo (void) - { -Index: gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.jason/enum6.C -=================================================================== ---- gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.jason/enum6.C (revision 194579) -+++ gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.jason/enum6.C (revision 194580) -@@ -7,10 +7,10 @@ - // enum-size attributes should only be emitted if there are values of - // enum type that can escape the compilation unit, gcc cannot currently - // detect this; if this facility is added then this linker option should --// not be needed. arm-*-linux*eabi should be a good approximation to -+// not be needed. arm-*-linux*eabi* should be a good approximation to - // those platforms where the EABI supplement defines enum values to be - // 32 bits wide. --// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } -+// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi* } } - - #include - -Index: gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.other/enum4.C -=================================================================== ---- gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.other/enum4.C (revision 194579) -+++ gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.other/enum4.C (revision 194580) -@@ -9,10 +9,10 @@ - // enum-size attributes should only be emitted if there are values of - // enum type that can escape the compilation unit, gcc cannot currently - // detect this; if this facility is added then this linker option should --// not be needed. arm-*-linux*eabi should be a good approximation to -+// not be needed. arm-*-linux*eabi* should be a good approximation to - // those platforms where the EABI supplement defines enum values to be - // 32 bits wide. --// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } -+// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi* } } - - enum E { - a = -312 -Index: gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.law/enum9.C -=================================================================== ---- gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.law/enum9.C (revision 194579) -+++ gcc-4_7-branch/gcc/testsuite/g++.old-deja/g++.law/enum9.C (revision 194580) -@@ -7,10 +7,10 @@ - // enum-size attributes should only be emitted if there are values of - // enum type that can escape the compilation unit, gcc cannot currently - // detect this; if this facility is added then this linker option should --// not be needed. arm-*-linux*eabi should be a good approximation to -+// not be needed. arm-*-linux*eabi* should be a good approximation to - // those platforms where the EABI supplement defines enum values to be - // 32 bits wide. --// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } -+// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi* } } - - // GROUPS passed enums - extern "C" int printf (const char *, ...); -Index: gcc-4_7-branch/gcc/testsuite/lib/target-supports.exp -=================================================================== ---- gcc-4_7-branch/gcc/testsuite/lib/target-supports.exp (revision 194579) -+++ gcc-4_7-branch/gcc/testsuite/lib/target-supports.exp (revision 194580) -@@ -3818,7 +3818,7 @@ - } - } "" - }] -- } elseif { [istarget arm*-*-linux-gnueabi] } { -+ } elseif { [istarget arm*-*-linux-gnueabi*] } { - return [check_runtime sync_longlong_runtime { - #include - int main () -@@ -3860,7 +3860,7 @@ - || [istarget i?86-*-*] - || [istarget x86_64-*-*] - || [istarget alpha*-*-*] -- || [istarget arm*-*-linux-gnueabi] -+ || [istarget arm*-*-linux-gnueabi*] - || [istarget bfin*-*linux*] - || [istarget hppa*-*linux*] - || [istarget s390*-*-*] -@@ -3890,7 +3890,7 @@ - || [istarget i?86-*-*] - || [istarget x86_64-*-*] - || [istarget alpha*-*-*] -- || [istarget arm*-*-linux-gnueabi] -+ || [istarget arm*-*-linux-gnueabi*] - || [istarget hppa*-*linux*] - || [istarget s390*-*-*] - || [istarget powerpc*-*-*] -Index: gcc-4_7-branch/gcc/testsuite/gfortran.dg/enum_9.f90 -=================================================================== ---- gcc-4_7-branch/gcc/testsuite/gfortran.dg/enum_9.f90 (revision 194579) -+++ gcc-4_7-branch/gcc/testsuite/gfortran.dg/enum_9.f90 (revision 194580) -@@ -1,6 +1,6 @@ - ! { dg-do run } - ! { dg-options "-fshort-enums" } --! { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } -+! { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi* } } - ! Program to test enumerations when option -fshort-enums is given - - program main -Index: gcc-4_7-branch/gcc/testsuite/gfortran.dg/enum_10.f90 -=================================================================== ---- gcc-4_7-branch/gcc/testsuite/gfortran.dg/enum_10.f90 (revision 194579) -+++ gcc-4_7-branch/gcc/testsuite/gfortran.dg/enum_10.f90 (revision 194580) -@@ -1,7 +1,7 @@ - ! { dg-do run } - ! { dg-additional-sources enum_10.c } - ! { dg-options "-fshort-enums -w" } --! { dg-options "-fshort-enums -w -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } } -+! { dg-options "-fshort-enums -w -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi* } } - ! Make sure short enums are indeed interoperable with the - ! corresponding C type. - -Index: gcc-4_7-branch/gcc/ada/gcc-interface/Makefile.in -=================================================================== ---- gcc-4_7-branch/gcc/ada/gcc-interface/Makefile.in (revision 194579) -+++ gcc-4_7-branch/gcc/ada/gcc-interface/Makefile.in (revision 194580) -@@ -1866,7 +1866,7 @@ - LIBRARY_VERSION := $(LIB_VERSION) - endif - --ifeq ($(strip $(filter-out arm% linux-gnueabi,$(arch) $(osys)-$(word 4,$(targ)))),) -+ifeq ($(strip $(filter-out arm%-linux,$(arch)-$(osys)) $(if $(findstring eabi,$(word 4,$(targ))),,$(word 4,$(targ)))),) - LIBGNAT_TARGET_PAIRS = \ - a-intnam.ads zip != null && unzip != null - && zlib != null && boehmgc != null - && perl != null; # for `--enable-java-home' -assert langAda -> gnatboot != null; -assert langVhdl -> gnat != null; - -# LTO needs libelf and zlib. -assert libelf != null -> zlib != null; - -# Make sure we get GNU sed. -assert stdenv.isDarwin -> gnused != null; - -# The go frontend is written in c++ -assert langGo -> langCC; - -with stdenv.lib; -with builtins; - -let version = "4.7.3"; - - # Whether building a cross-compiler for GNU/Hurd. - crossGNU = cross != null && cross.config == "i586-pc-gnu"; - - /* gccinstall.info says that "parallel make is currently not supported since - collisions in profile collecting may occur". - - Parallel make of gfortran is disabled because of an apparent race - condition concerning the generation of "bconfig.h". Please try and - re-enable parallel make for a later release of gfortran to check whether - the error has been fixed. - */ - enableParallelBuilding = !profiledCompiler && !langFortran; - - patches = [] - ++ optional enableParallelBuilding ./parallel-bconfig-4.7.patch - ++ optional stdenv.isArm [ ./arm-eabi.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 - # target libraries and tools. - ++ optional langAda ./gnat-cflags.patch - ++ optional langFortran ./gfortran-driving.patch; - - javaEcj = fetchurl { - # The `$(top_srcdir)/ecj.jar' file is automatically picked up at - # `configure' time. - - # XXX: Eventually we might want to take it from upstream. - url = "ftp://sourceware.org/pub/java/ecj-4.3.jar"; - sha256 = "0jz7hvc0s6iydmhgh5h2m15yza7p2rlss2vkif30vm9y77m97qcx"; - }; - - # Antlr (optional) allows the Java `gjdoc' tool to be built. We want a - # binary distribution here to allow the whole chain to be bootstrapped. - javaAntlr = fetchurl { - url = http://www.antlr.org/download/antlr-3.1.3.jar; - sha256 = "1f41j0y4kjydl71lqlvr73yagrs2jsg1fjymzjz66mjy7al5lh09"; - }; - - xlibs = [ - libX11 libXt libSM libICE libXtst libXrender libXrandr libXi - xproto renderproto xextproto inputproto randrproto - ]; - - javaAwtGtk = langJava && gtk != null; - - /* Platform flags */ - platformFlags = let - gccArch = stdenv.lib.attrByPath [ "platform" "gcc" "arch" ] null stdenv; - gccCpu = stdenv.lib.attrByPath [ "platform" "gcc" "cpu" ] null stdenv; - gccAbi = stdenv.lib.attrByPath [ "platform" "gcc" "abi" ] null stdenv; - gccFpu = stdenv.lib.attrByPath [ "platform" "gcc" "fpu" ] null stdenv; - gccFloat = stdenv.lib.attrByPath [ "platform" "gcc" "float" ] null stdenv; - gccMode = stdenv.lib.attrByPath [ "platform" "gcc" "mode" ] null stdenv; - withArch = if gccArch != null then " --with-arch=${gccArch}" else ""; - withCpu = if gccCpu != null then " --with-cpu=${gccCpu}" else ""; - withAbi = if gccAbi != null then " --with-abi=${gccAbi}" else ""; - withFpu = if gccFpu != null then " --with-fpu=${gccFpu}" else ""; - withFloat = if gccFloat != null then " --with-float=${gccFloat}" else ""; - withMode = if gccMode != null then " --with-mode=${gccMode}" else ""; - in - (withArch + - withCpu + - withAbi + - withFpu + - withFloat + - withMode); - - /* Cross-gcc settings */ - crossMingw = (cross != null && cross.libc == "msvcrt"); - crossConfigureFlags = let - gccArch = stdenv.lib.attrByPath [ "gcc" "arch" ] null cross; - gccCpu = stdenv.lib.attrByPath [ "gcc" "cpu" ] null cross; - gccAbi = stdenv.lib.attrByPath [ "gcc" "abi" ] null cross; - gccFpu = stdenv.lib.attrByPath [ "gcc" "fpu" ] null cross; - gccFloat = stdenv.lib.attrByPath [ "gcc" "float" ] null cross; - gccMode = stdenv.lib.attrByPath [ "gcc" "mode" ] null cross; - withArch = if gccArch != null then " --with-arch=${gccArch}" else ""; - withCpu = if gccCpu != null then " --with-cpu=${gccCpu}" else ""; - withAbi = if gccAbi != null then " --with-abi=${gccAbi}" else ""; - withFpu = if gccFpu != null then " --with-fpu=${gccFpu}" else ""; - withFloat = if gccFloat != null then " --with-float=${gccFloat}" else ""; - withMode = if gccMode != null then " --with-mode=${gccMode}" else ""; - in - "--target=${cross.config}" + - withArch + - withCpu + - withAbi + - withFpu + - withFloat + - withMode + - (if crossMingw && crossStageStatic then - " --with-headers=${libcCross}/include" + - " --with-gcc" + - " --with-gnu-as" + - " --with-gnu-ld" + - " --with-gnu-ld" + - " --disable-shared" + - " --disable-nls" + - " --disable-debug" + - " --enable-sjlj-exceptions" + - " --enable-threads=win32" + - " --disable-win32-registry" - else if crossStageStatic then - " --disable-libssp --disable-nls" + - " --without-headers" + - " --disable-threads " + - " --disable-libmudflap " + - " --disable-libgomp " + - " --disable-libquadmath" + - " --disable-shared" + - " --disable-decimal-float" # libdecnumber requires libc - else - " --with-headers=${libcCross}/include" + - " --enable-__cxa_atexit" + - " --enable-long-long" + - (if crossMingw then - " --enable-threads=win32" + - " --enable-sjlj-exceptions" + - " --enable-hash-synchronization" + - " --disable-libssp" + - " --disable-nls" + - " --with-dwarf2" + - # I think noone uses shared gcc libs in mingw, so we better do the same. - # In any case, mingw32 g++ linking is broken by default with shared libs, - # unless adding "-lsupc++" to any linking command. I don't know why. - " --disable-shared" + - (if cross.config == "x86_64-w64-mingw32" then - # To keep ABI compatibility with upstream mingw-w64 - " --enable-fully-dynamic-string" - else "") - else (if cross.libc == "uclibc" then - # In uclibc cases, libgomp needs an additional '-ldl' - # and as I don't know how to pass it, I disable libgomp. - " --disable-libgomp" else "") + - " --enable-threads=posix" + - " --enable-nls" + - " --disable-decimal-float") # No final libdecnumber (it may work only in 386) - ); - stageNameAddon = if crossStageStatic then "-stage-static" else - "-stage-final"; - crossNameAddon = if cross != null then "-${cross.config}" + stageNameAddon else ""; - - bootstrap = cross == null && !stdenv.isArm && !stdenv.isMips; - -in - -# We need all these X libraries when building AWT with GTK+. -assert gtk != null -> (filter (x: x == null) xlibs) == []; - -stdenv.mkDerivation ({ - name = "${name}${if stripped then "" else "-debug"}-${version}" + crossNameAddon; - - builder = ./builder.sh; - - src = fetchurl { - url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2"; - sha256 = "1hx9h64ivarlzi4hxvq42as5m9vlr5cyzaaq4gzj4i619zmkfz1g"; - }; - - inherit patches; - - postPatch = - if (stdenv.isGNU - || (libcCross != null # e.g., building `gcc.crossDrv' - && libcCross ? crossConfig - && libcCross.crossConfig == "i586-pc-gnu") - || (crossGNU && libcCross != null)) - then - # On GNU/Hurd glibc refers to Hurd & Mach headers and libpthread is not - # in glibc, so add the right `-I' flags to the default spec string. - assert libcCross != null -> libpthreadCross != null; - let - libc = if libcCross != null then libcCross else stdenv.glibc; - gnu_h = "gcc/config/gnu.h"; - extraCPPDeps = - libc.propagatedBuildInputs - ++ stdenv.lib.optional (libpthreadCross != null) libpthreadCross - ++ stdenv.lib.optional (libpthread != null) libpthread; - extraCPPSpec = - concatStrings (intersperse " " - (map (x: "-I${x}/include") extraCPPDeps)); - extraLibSpec = - if libpthreadCross != null - then "-L${libpthreadCross}/lib ${libpthreadCross.TARGET_LDFLAGS}" - else "-L${libpthread}/lib"; - in - '' echo "augmenting \`CPP_SPEC' in \`${gnu_h}' with \`${extraCPPSpec}'..." - sed -i "${gnu_h}" \ - -es'|CPP_SPEC *"\(.*\)$|CPP_SPEC "${extraCPPSpec} \1|g' - - echo "augmenting \`LIB_SPEC' in \`${gnu_h}' with \`${extraLibSpec}'..." - sed -i "${gnu_h}" \ - -es'|LIB_SPEC *"\(.*\)$|LIB_SPEC "${extraLibSpec} \1|g' - - echo "setting \`NATIVE_SYSTEM_HEADER_DIR' and \`STANDARD_INCLUDE_DIR' to \`${libc}/include'..." - sed -i "${gnu_h}" \ - -es'|#define STANDARD_INCLUDE_DIR.*$|#define STANDARD_INCLUDE_DIR "${libc}/include"|g' - '' - else if cross != null || stdenv.gcc.libc != null then - # On NixOS, use the right path to the dynamic linker instead of - # `/lib/ld*.so'. - let - libc = if libcCross != null then libcCross else stdenv.gcc.libc; - in - '' echo "fixing the \`GLIBC_DYNAMIC_LINKER' and \`UCLIBC_DYNAMIC_LINKER' macros..." - for header in "gcc/config/"*-gnu.h "gcc/config/"*"/"*.h - do - grep -q LIBC_DYNAMIC_LINKER "$header" || continue - echo " fixing \`$header'..." - sed -i "$header" \ - -e 's|define[[:blank:]]*\([UCG]\+\)LIBC_DYNAMIC_LINKER\([0-9]*\)[[:blank:]]"\([^\"]\+\)"$|define \1LIBC_DYNAMIC_LINKER\2 "${libc}\3"|g' - done - '' - else null; - - inherit noSysDirs staticCompiler langJava crossStageStatic - libcCross crossMingw; - - nativeBuildInputs = [ texinfo which gettext ] - ++ (optional (perl != null) perl) - ++ (optional javaAwtGtk pkgconfig); - - buildInputs = [ gmp mpfr mpc libelf ] - ++ (optional (ppl != null) ppl) - ++ (optional (cloog != null) cloog) - ++ (optional (zlib != null) zlib) - ++ (optionals langJava [ boehmgc zip unzip ]) - ++ (optionals javaAwtGtk ([ gtk libart_lgpl ] ++ xlibs)) - ++ (optionals (cross != null) [binutilsCross]) - ++ (optionals langAda [gnatboot]) - ++ (optionals langVhdl [gnat]) - - # The builder relies on GNU sed (for instance, Darwin's `sed' fails with - # "-i may not be used with stdin"), and `stdenvNative' doesn't provide it. - ++ (optional stdenv.isDarwin gnused) - ; - - NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isSunOS "-lm -ldl"; - - preConfigure = '' - configureFlagsArray=( - ${stdenv.lib.optionalString (ppl != null && ppl ? dontDisableStatic && ppl.dontDisableStatic) - "'--with-host-libstdcxx=-lstdc++ -lgcc_s'"} - ${stdenv.lib.optionalString (ppl != null && stdenv.isSunOS) - "\"--with-host-libstdcxx=-Wl,-rpath,\$prefix/lib/amd64 -lstdc++\" - \"--with-boot-ldflags=-L../prev-x86_64-pc-solaris2.11/libstdc++-v3/src/.libs\""} - ); - ${stdenv.lib.optionalString (stdenv.isSunOS && stdenv.is64bit) - '' - export NIX_LDFLAGS=`echo $NIX_LDFLAGS | sed -e s~$prefix/lib~$prefix/lib/amd64~g` - export LDFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $LDFLAGS_FOR_TARGET" - export CXXFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CXXFLAGS_FOR_TARGET" - export CFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CFLAGS_FOR_TARGET" - ''} - ''; - - # 'iant' at #go-nuts@freenode, gccgo maintainer, said that - # they have a bug in 4.7.1 if adding "--disable-static" - dontDisableStatic = langGo || staticCompiler; - - configureFlags = " - ${if stdenv.isSunOS then - " --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " + - # On Illumos/Solaris GNU as is preferred - " --with-gnu-as --without-gnu-ld " - else ""} - --enable-lto - ${if enableMultilib then "" else "--disable-multilib"} - ${if enableShared then "" else "--disable-shared"} - ${if enablePlugin then "--enable-plugin" else "--disable-plugin"} - ${if ppl != null then "--with-ppl=${ppl} --disable-ppl-version-check" else ""} - ${if cloog != null then - "--with-cloog=${cloog} --disable-cloog-version-check --enable-cloog-backend=isl" - else ""} - ${if langJava then - "--with-ecj-jar=${javaEcj} " + - - # Follow Sun's layout for the convenience of IcedTea/OpenJDK. See - # . - "--enable-java-home --with-java-home=\${prefix}/lib/jvm/jre " - else ""} - ${if javaAwtGtk then "--enable-java-awt=gtk" else ""} - ${if langJava && javaAntlr != null then "--with-antlr-jar=${javaAntlr}" else ""} - --with-gmp=${gmp} - --with-mpfr=${mpfr} - --with-mpc=${mpc} - ${if libelf != null then "--with-libelf=${libelf}" else ""} - --disable-libstdcxx-pch - --without-included-gettext - --with-system-zlib - --enable-languages=${ - concatStrings (intersperse "," - ( optional langC "c" - ++ optional langCC "c++" - ++ optional langFortran "fortran" - ++ optional langJava "java" - ++ optional langAda "ada" - ++ optional langVhdl "vhdl" - ++ optional langGo "go" - ) - ) - } - ${if (stdenv ? glibc && cross == null) - then " --with-native-system-header-dir=${stdenv.glibc}/include" - else ""} - ${if langAda then " --enable-libada" else ""} - ${if cross == null && stdenv.isi686 then "--with-arch=i686" else ""} - ${if cross != null then crossConfigureFlags else ""} - ${if !bootstrap then "--disable-bootstrap" else ""} - ${if cross == null then platformFlags else ""} - "; - - targetConfig = if cross != null then cross.config else null; - - buildFlags = if bootstrap then - (if profiledCompiler then "profiledbootstrap" else "bootstrap") - else ""; - - installTargets = - if stripped - then "install-strip" - else "install"; - - crossAttrs = let - xgccArch = stdenv.lib.attrByPath [ "gcc" "arch" ] null stdenv.cross; - xgccCpu = stdenv.lib.attrByPath [ "gcc" "cpu" ] null stdenv.cross; - xgccAbi = stdenv.lib.attrByPath [ "gcc" "abi" ] null stdenv.cross; - xgccFpu = stdenv.lib.attrByPath [ "gcc" "fpu" ] null stdenv.cross; - xgccFloat = stdenv.lib.attrByPath [ "gcc" "float" ] null stdenv.cross; - xwithArch = if xgccArch != null then " --with-arch=${xgccArch}" else ""; - xwithCpu = if xgccCpu != null then " --with-cpu=${xgccCpu}" else ""; - xwithAbi = if xgccAbi != null then " --with-abi=${xgccAbi}" else ""; - xwithFpu = if xgccFpu != null then " --with-fpu=${xgccFpu}" else ""; - xwithFloat = if xgccFloat != null then " --with-float=${xgccFloat}" else ""; - in { - AR = "${stdenv.cross.config}-ar"; - LD = "${stdenv.cross.config}-ld"; - CC = "${stdenv.cross.config}-gcc"; - CXX = "${stdenv.cross.config}-gcc"; - AR_FOR_TARGET = "${stdenv.cross.config}-ar"; - LD_FOR_TARGET = "${stdenv.cross.config}-ld"; - CC_FOR_TARGET = "${stdenv.cross.config}-gcc"; - NM_FOR_TARGET = "${stdenv.cross.config}-nm"; - CXX_FOR_TARGET = "${stdenv.cross.config}-g++"; - # If we are making a cross compiler, cross != null - NIX_GCC_CROSS = if cross == null then "${stdenv.gccCross}" else ""; - dontStrip = true; - configureFlags = '' - ${if enableMultilib then "" else "--disable-multilib"} - ${if enableShared then "" else "--disable-shared"} - ${if ppl != null then "--with-ppl=${ppl.crossDrv}" else ""} - ${if cloog != null then "--with-cloog=${cloog.crossDrv} --enable-cloog-backend=isl" else ""} - ${if langJava then "--with-ecj-jar=${javaEcj.crossDrv}" else ""} - ${if javaAwtGtk then "--enable-java-awt=gtk" else ""} - ${if langJava && javaAntlr != null then "--with-antlr-jar=${javaAntlr.crossDrv}" else ""} - --with-gmp=${gmp.crossDrv} - --with-mpfr=${mpfr.crossDrv} - --disable-libstdcxx-pch - --without-included-gettext - --with-system-zlib - --enable-languages=${ - concatStrings (intersperse "," - ( optional langC "c" - ++ optional langCC "c++" - ++ optional langFortran "fortran" - ++ optional langJava "java" - ++ optional langAda "ada" - ++ optional langVhdl "vhdl" - ++ optional langGo "go" - ) - ) - } - ${if langAda then " --enable-libada" else ""} - --target=${stdenv.cross.config} - ${xwithArch} - ${xwithCpu} - ${xwithAbi} - ${xwithFpu} - ${xwithFloat} - ''; - buildFlags = ""; - }; - - - # Needed for the cross compilation to work - AR = "ar"; - LD = "ld"; - # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210 - CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" - else "gcc"; - - # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find - # the library headers and binaries, regarless of the language being - # compiled. - - # Note: When building the Java AWT GTK+ peer, the build system doesn't - # honor `--with-gmp' et al., e.g., when building - # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just - # add them to $CPATH and $LIBRARY_PATH in this case. - # - # Likewise, the LTO code doesn't find zlib. - - CPATH = concatStrings - (intersperse ":" (map (x: x + "/include") - (optionals (zlib != null) [ zlib ] - ++ optionals langJava [ boehmgc ] - ++ optionals javaAwtGtk xlibs - ++ optionals javaAwtGtk [ gmp mpfr ] - ++ optional (libpthread != null) libpthread - ++ optional (libpthreadCross != null) libpthreadCross - - # On GNU/Hurd glibc refers to Mach & Hurd - # headers. - ++ optionals (libcCross != null && - hasAttr "propagatedBuildInputs" libcCross) - libcCross.propagatedBuildInputs))); - - LIBRARY_PATH = concatStrings - (intersperse ":" (map (x: x + "/lib") - (optionals (zlib != null) [ zlib ] - ++ optionals langJava [ boehmgc ] - ++ optionals javaAwtGtk xlibs - ++ optionals javaAwtGtk [ gmp mpfr ] - ++ optional (libpthread != null) libpthread))); - - EXTRA_TARGET_CFLAGS = - if cross != null && libcCross != null - then "-idirafter ${libcCross}/include" - else null; - - EXTRA_TARGET_LDFLAGS = - if cross != null && libcCross != null - then "-B${libcCross}/lib -Wl,-L${libcCross}/lib" + - (optionalString (libpthreadCross != null) - " -L${libpthreadCross}/lib -Wl,${libpthreadCross.TARGET_LDFLAGS}") - else null; - - passthru = { inherit langC langCC langAda langFortran langVhdl - langGo enableMultilib version; }; - - inherit enableParallelBuilding; - - meta = { - homepage = http://gcc.gnu.org/; - license = "GPLv3+"; # runtime support libraries are typically LGPLv3+ - 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++, - Objective-C, Fortran, OpenMP for C/C++/Fortran, Java, and Ada, as well - as libraries for these languages (libstdc++, libgcj, libgomp,...). - - GCC development is a part of the GNU Project, aiming to improve the - compiler used in the GNU system including the GNU/Linux variant. - ''; - - maintainers = [ - stdenv.lib.maintainers.ludo - stdenv.lib.maintainers.viric - stdenv.lib.maintainers.shlevy - ]; - - # Volunteers needed for the {Cyg,Dar}win ports of *PPL. - # gnatboot is not available out of linux platforms, so we disable the darwin build - # for the gnat (ada compiler). - platforms = stdenv.lib.platforms.linux ++ optionals (langAda == false && libelf == null) [ "i686-darwin" ]; - }; -} - -// optionalAttrs (cross != null && cross.libc == "msvcrt" && crossStageStatic) { - makeFlags = [ "all-gcc" "all-target-libgcc" ]; - installTargets = "install-gcc install-target-libgcc"; -} - - -# Strip kills static libs of other archs (hence cross != null) -// optionalAttrs (!stripped || cross != null) { dontStrip = true; NIX_STRIP_DEBUG = 0; } -) diff --git a/pkgs/development/compilers/gcc/4.7/gfortran-driving.patch b/pkgs/development/compilers/gcc/4.7/gfortran-driving.patch deleted file mode 100644 index 70708886b40..00000000000 --- a/pkgs/development/compilers/gcc/4.7/gfortran-driving.patch +++ /dev/null @@ -1,20 +0,0 @@ -This patch fixes interaction with Libtool. -See , for details. - ---- a/gcc/fortran/gfortranspec.c -+++ b/gcc/fortran/gfortranspec.c -@@ -461,8 +461,15 @@ For more information about these matters, see the file named COPYING\n\n")); - { - fprintf (stderr, _("Driving:")); - for (i = 0; i < g77_newargc; i++) -+ { -+ if (g77_new_decoded_options[i].opt_index == OPT_l) -+ /* Make sure no white space is inserted after `-l'. */ -+ fprintf (stderr, " -l%s", -+ g77_new_decoded_options[i].canonical_option[1]); -+ else - fprintf (stderr, " %s", - g77_new_decoded_options[i].orig_option_with_args_text); -+ } - fprintf (stderr, "\n"); - } diff --git a/pkgs/development/compilers/gcc/4.7/gnat-cflags.patch b/pkgs/development/compilers/gcc/4.7/gnat-cflags.patch deleted file mode 100644 index bf2acf065e9..00000000000 --- a/pkgs/development/compilers/gcc/4.7/gnat-cflags.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff --git a/libada/Makefile.in b/libada/Makefile.in -index f5057a0..337e0c6 100644 ---- a/libada/Makefile.in -+++ b/libada/Makefile.in -@@ -55,7 +55,7 @@ GCC_WARN_CFLAGS = $(LOOSE_WARN) - WARN_CFLAGS = @warn_cflags@ - - TARGET_LIBGCC2_CFLAGS= --GNATLIBCFLAGS= -g -O2 -+GNATLIBCFLAGS= -g -O2 $(CFLAGS) - GNATLIBCFLAGS_FOR_C = $(GNATLIBCFLAGS) $(TARGET_LIBGCC2_CFLAGS) -fexceptions \ - -DIN_RTS @have_getipinfo@ - ---- a/gcc/ada/gcc-interface/Makefile.in -+++ b/gcc/ada/gcc-interface/Makefile.in -@@ -105,7 +105,7 @@ ADAFLAGS = -W -Wall -gnatpg -gnata - SOME_ADAFLAGS =-gnata - FORCE_DEBUG_ADAFLAGS = -g - GNATLIBFLAGS = -gnatpg -nostdinc --GNATLIBCFLAGS = -g -O2 -+GNATLIBCFLAGS = -g -O2 $(CFLAGS_FOR_TARGET) - # Pretend that _Unwind_GetIPInfo is available for the target by default. This - # should be autodetected during the configuration of libada and passed down to - # here, but we need something for --disable-libada and hope for the best. -@@ -193,7 +193,7 @@ RTSDIR = rts$(subst /,_,$(MULTISUBDIR)) - # Link flags used to build gnat tools. By default we prefer to statically - # link with libgcc to avoid a dependency on shared libgcc (which is tricky - # to deal with as it may conflict with the libgcc provided by the system). --GCC_LINK_FLAGS=-static-libgcc -+GCC_LINK_FLAGS=-static-libgcc $(CFLAGS_FOR_TARGET) - - # End of variables for you to override. - diff --git a/pkgs/development/compilers/gcc/4.7/java-jvgenmain-link.patch b/pkgs/development/compilers/gcc/4.7/java-jvgenmain-link.patch deleted file mode 100644 index 2612e8bfbbb..00000000000 --- a/pkgs/development/compilers/gcc/4.7/java-jvgenmain-link.patch +++ /dev/null @@ -1,17 +0,0 @@ -The `jvgenmain' executable must be linked against `vec.o', among others, -since it uses its vector API. - ---- gcc-4.3.3/gcc/java/Make-lang.in 2008-12-05 00:00:19.000000000 +0100 -+++ gcc-4.3.3/gcc/java/Make-lang.in 2009-07-03 16:11:41.000000000 +0200 -@@ -109,9 +109,9 @@ jcf-dump$(exeext): $(JCFDUMP_OBJS) $(LIB - $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JCFDUMP_OBJS) \ - $(CPPLIBS) $(ZLIB) $(LDEXP_LIB) $(LIBS) - --jvgenmain$(exeext): $(JVGENMAIN_OBJS) $(LIBDEPS) -+jvgenmain$(exeext): $(JVGENMAIN_OBJS) $(LIBDEPS) $(BUILD_RTL) - rm -f $@ -- $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JVGENMAIN_OBJS) $(LIBS) -+ $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JVGENMAIN_OBJS) $(BUILD_RTL) $(LIBS) - - # - # Build hooks: diff --git a/pkgs/development/compilers/gcc/4.7/libstdc++-target.patch b/pkgs/development/compilers/gcc/4.7/libstdc++-target.patch deleted file mode 100644 index fb622b39580..00000000000 --- a/pkgs/development/compilers/gcc/4.7/libstdc++-target.patch +++ /dev/null @@ -1,32 +0,0 @@ -Patch to make the target libraries 'configure' scripts find the proper CPP. -I noticed that building the mingw32 cross compiler. -Looking at the build script for mingw in archlinux, I think that only nixos -needs this patch. I don't know why. -diff --git a/Makefile.in b/Makefile.in -index 93f66b6..d691917 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -266,6 +266,7 @@ BASE_TARGET_EXPORTS = \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(COMPILER_AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CC; \ -+ CPP="$(CC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS -E"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \ -@@ -291,11 +292,13 @@ BASE_TARGET_EXPORTS = \ - RAW_CXX_TARGET_EXPORTS = \ - $(BASE_TARGET_EXPORTS) \ - CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \ -- CXX="$(RAW_CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CXX; -+ CXX="$(RAW_CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CXX; \ -+ CXXCPP="$(RAW_CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS -E"; export CXX; - - NORMAL_TARGET_EXPORTS = \ - $(BASE_TARGET_EXPORTS) \ -- CXX="$(CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CXX; -+ CXX="$(CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CXX; \ -+ CXXCPP="$(CXX_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS -E"; export CXX; - - # Where to find GMP - HOST_GMPLIBS = @gmplibs@ diff --git a/pkgs/development/compilers/gcc/4.7/no-sys-dirs.patch b/pkgs/development/compilers/gcc/4.7/no-sys-dirs.patch deleted file mode 100644 index 79901703cb8..00000000000 --- a/pkgs/development/compilers/gcc/4.7/no-sys-dirs.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff -ru gcc-4.3.1-orig/gcc/cppdefault.c gcc-4.3.1/gcc/cppdefault.c ---- gcc-4.3.1-orig/gcc/cppdefault.c 2007-07-26 10:37:01.000000000 +0200 -+++ gcc-4.3.1/gcc/cppdefault.c 2008-06-25 17:48:23.000000000 +0200 -@@ -41,6 +41,10 @@ - # undef CROSS_INCLUDE_DIR - #endif - -+#undef LOCAL_INCLUDE_DIR -+#undef SYSTEM_INCLUDE_DIR -+#undef STANDARD_INCLUDE_DIR -+ - const struct default_include cpp_include_defaults[] - #ifdef INCLUDE_DEFAULTS - = INCLUDE_DEFAULTS; -diff -ru gcc-4.3.1-orig/gcc/gcc.c gcc-4.3.1/gcc/gcc.c ---- gcc-4.3.1-orig/gcc/gcc.c 2008-03-02 23:55:19.000000000 +0100 -+++ gcc-4.3.1/gcc/gcc.c 2008-06-25 17:52:53.000000000 +0200 -@@ -1478,10 +1478,10 @@ - /* Default prefixes to attach to command names. */ - - #ifndef STANDARD_STARTFILE_PREFIX_1 --#define STANDARD_STARTFILE_PREFIX_1 "/lib/" -+#define STANDARD_STARTFILE_PREFIX_1 "" - #endif - #ifndef STANDARD_STARTFILE_PREFIX_2 --#define STANDARD_STARTFILE_PREFIX_2 "/usr/lib/" -+#define STANDARD_STARTFILE_PREFIX_2 "" - #endif - - #ifdef CROSS_DIRECTORY_STRUCTURE /* Don't use these prefixes for a cross compiler. */ ---- gcc-4.3.1-orig/gcc/Makefile.in 2008-05-11 20:54:15.000000000 +0200 -+++ gcc-4.3.1/gcc/Makefile.in 2008-06-25 17:48:23.000000000 +0200 -@@ -3277,7 +3281,7 @@ - -DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \ - -DGPLUSPLUS_TOOL_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/$(target_noncanonical)\" \ - -DGPLUSPLUS_BACKWARD_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/backward\" \ -- -DLOCAL_INCLUDE_DIR=\"$(local_includedir)\" \ -+ -DLOCAL_INCLUDE_DIR=\"/no-such-dir\" \ - -DCROSS_INCLUDE_DIR=\"$(CROSS_SYSTEM_HEADER_DIR)\" \ - -DTOOL_INCLUDE_DIR=\"$(gcc_tooldir)/include\" \ - -DPREFIX=\"$(prefix)/\" \ diff --git a/pkgs/development/compilers/gcc/4.7/parallel-bconfig-4.7.patch b/pkgs/development/compilers/gcc/4.7/parallel-bconfig-4.7.patch deleted file mode 100644 index bdf0fa4931a..00000000000 --- a/pkgs/development/compilers/gcc/4.7/parallel-bconfig-4.7.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff --git a/gcc/Makefile.in b/gcc/Makefile.in -index 0f6735a..ba93e9b 100644 ---- a/gcc/Makefile.in -+++ b/gcc/Makefile.in -@@ -3904,21 +3904,21 @@ build/genflags.o : genflags.c $(RTL_BASE_H) $(OBSTACK_H) $(BCONFIG_H) \ - $(SYSTEM_H) coretypes.h $(GTM_H) errors.h $(READ_MD_H) gensupport.h - build/gengenrtl.o : gengenrtl.c $(BCONFIG_H) $(SYSTEM_H) rtl.def - gengtype-lex.o build/gengtype-lex.o : gengtype-lex.c gengtype.h $(SYSTEM_H) --gengtype-lex.o: $(CONFIG_H) -+gengtype-lex.o: $(CONFIG_H) $(BCONFIG_H) - build/gengtype-lex.o: $(BCONFIG_H) - gengtype-parse.o build/gengtype-parse.o : gengtype-parse.c gengtype.h \ - $(SYSTEM_H) --gengtype-parse.o: $(CONFIG_H) -+gengtype-parse.o: $(CONFIG_H) $(BCONFIG_H) - build/gengtype-parse.o: $(BCONFIG_H) - gengtype-state.o build/gengtype-state.o: gengtype-state.c $(SYSTEM_H) \ - gengtype.h errors.h double-int.h version.h $(HASHTAB_H) $(OBSTACK_H) \ - $(XREGEX_H) --gengtype-state.o: $(CONFIG_H) -+gengtype-state.o: $(CONFIG_H) $(BCONFIG_H) - build/gengtype-state.o: $(BCONFIG_H) - gengtype.o build/gengtype.o : gengtype.c $(SYSTEM_H) gengtype.h \ - rtl.def insn-notes.def errors.h double-int.h version.h $(HASHTAB_H) \ - $(OBSTACK_H) $(XREGEX_H) --gengtype.o: $(CONFIG_H) -+gengtype.o: $(CONFIG_H) $(BCONFIG_H) - build/gengtype.o: $(BCONFIG_H) - build/genmddeps.o: genmddeps.c $(BCONFIG_H) $(SYSTEM_H) coretypes.h \ - errors.h $(READ_MD_H) diff --git a/pkgs/stdenv/linux/make-bootstrap-tools-crosspi.nix b/pkgs/stdenv/linux/make-bootstrap-tools-crosspi.nix index 9b2949e3e36..c4ec02aeb3e 100644 --- a/pkgs/stdenv/linux/make-bootstrap-tools-crosspi.nix +++ b/pkgs/stdenv/linux/make-bootstrap-tools-crosspi.nix @@ -73,7 +73,7 @@ let patch = pkgs.patch.crossDrv; patchelf = pkgs.patchelf.crossDrv; replace = pkgs.replace.crossDrv; - gcc = pkgs.gcc47; + gcc = pkgs.gcc; gmp = pkgs.gmp.crossDrv; mpfr = pkgs.mpfr.crossDrv; ppl = pkgs.ppl.crossDrv; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0fb7e10c33c..5515d5fd8f6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2406,8 +2406,6 @@ let gcc46 = gcc46_real; - gcc47 = gcc47_real; - gcc48 = gcc48_real; gcc45_realCross = lib.addMetaAttrs { hydraPlatforms = []; } @@ -2435,10 +2433,9 @@ let cross = assert crossSystem != null; crossSystem; }); - gcc47_realCross = lib.addMetaAttrs { hydraPlatforms = []; } - (makeOverridable (import ../development/compilers/gcc/4.7) { - inherit fetchurl stdenv texinfo gmp mpfr mpc libelf zlib - cloog ppl gettext which noSysDirs; + gcc48_realCross = lib.addMetaAttrs { hydraPlatforms = []; } + (callPackage ../development/compilers/gcc/4.8 { + inherit noSysDirs; binutilsCross = binutilsCross; libcCross = libcCross; profiledCompiler = false; @@ -2447,7 +2444,7 @@ let cross = assert crossSystem != null; crossSystem; }); - gcc_realCross = gcc47_realCross; + gcc_realCross = gcc48_realCross; gccCrossStageStatic = let isMingw = (stdenv.cross.libc == "msvcrt"); @@ -2559,33 +2556,6 @@ let })) else throw "Multilib gcc not supported on ‘${system}’"; - gcc47_real = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.7 { - inherit noSysDirs; - texinfo = texinfo4; - # I'm not sure if profiling with enableParallelBuilding helps a lot. - # We can enable it back some day. This makes the *gcc* builds faster now. - profiledCompiler = false; - - # When building `gcc.crossDrv' (a "Canadian cross", with host == target - # and host != build), `cross' must be null but the cross-libc must still - # be passed. - cross = null; - libcCross = if crossSystem != null then libcCross else null; - libpthreadCross = - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then gnu.libpthreadCross - else null; - })); - - gcc47_debug = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.7 { - stripped = false; - texinfo = texinfo4; - inherit noSysDirs; - cross = null; - libcCross = null; - binutilsCross = null; - })); - gcc48_real = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.8 { inherit noSysDirs; @@ -2695,13 +2665,6 @@ let gccgo = gccgo48; - gccgo47 = wrapGCC (gcc47_real.gcc.override { - name = "gccgo"; - langCC = true; #required for go. - langC = true; - langGo = true; - }); - gccgo48 = wrapGCC (gcc48_real.gcc.override { name = "gccgo"; langCC = true; #required for go. @@ -8602,9 +8565,7 @@ let ogmtools = callPackage ../applications/video/ogmtools { }; - omxplayer = callPackage ../applications/video/omxplayer { - stdenv = overrideGCC stdenv gcc47; - }; + omxplayer = callPackage ../applications/video/omxplayer { }; oneteam = callPackage ../applications/networking/instant-messengers/oneteam {}; @@ -9363,9 +9324,7 @@ let d2x_rebirth = callPackage ../games/d2x-rebirth { }; - eduke32 = callPackage ../games/eduke32 { - stdenv = overrideGCC stdenv gcc47; - }; + eduke32 = callPackage ../games/eduke32 { }; egoboo = callPackage ../games/egoboo { }; From 035fb0d9c93edeb6285a99bf9094c232a1401f8f Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 10:39:15 +0100 Subject: [PATCH 254/286] Drop pointless gcc_real variables --- pkgs/top-level/all-packages.nix | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5515d5fd8f6..86591b76eb5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2371,8 +2371,6 @@ let cross = assert crossSystem != null; crossSystem; }); - gcc45 = gcc45_real; - wrapDeterministicGCCWith = gccWrapper: glibc: baseGCC: gccWrapper { nativeTools = stdenv ? gcc && stdenv.gcc.nativeTools; nativeLibc = stdenv ? gcc && stdenv.gcc.nativeLibc; @@ -2404,10 +2402,6 @@ let else null; })); - gcc46 = gcc46_real; - - gcc48 = gcc48_real; - gcc45_realCross = lib.addMetaAttrs { hydraPlatforms = []; } (makeOverridable (import ../development/compilers/gcc/4.5) { inherit fetchurl stdenv gmp mpfr mpc libelf zlib @@ -2498,7 +2492,7 @@ let profiledCompiler = true; })); - gcc45_real = lowPrio (wrapGCC (makeOverridable (import ../development/compilers/gcc/4.5) { + gcc45 = lowPrio (wrapGCC (makeOverridable (import ../development/compilers/gcc/4.5) { inherit fetchurl stdenv gmp mpfr mpc libelf zlib perl ppl cloogppl gettext which noSysDirs; @@ -2518,7 +2512,7 @@ let else null; })); - gcc46_real = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.6 { + gcc46 = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.6 { inherit noSysDirs; # bootstrapping a profiled compiler does not work in the sheevaplug: @@ -2556,7 +2550,7 @@ let })) else throw "Multilib gcc not supported on ‘${system}’"; - gcc48_real = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.8 { + gcc48 = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.8 { inherit noSysDirs; # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion @@ -2633,7 +2627,7 @@ let ppl = null; }); - gnat45 = wrapGCC (gcc45_real.gcc.override { + gnat45 = wrapGCC (gcc45.gcc.override { name = "gnat"; langCC = false; langC = true; @@ -2646,7 +2640,7 @@ let ppl = null; }); - gnat46 = wrapGCC (gcc46_real.gcc.override { + gnat46 = wrapGCC (gcc46.gcc.override { name = "gnat"; langCC = false; langC = true; @@ -2665,7 +2659,7 @@ let gccgo = gccgo48; - gccgo48 = wrapGCC (gcc48_real.gcc.override { + gccgo48 = wrapGCC (gcc48.gcc.override { name = "gccgo"; langCC = true; #required for go. langC = true; From 4b1d2a50b841e67a78f81a5e47cfdc1fe33330ab Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 10:46:59 +0100 Subject: [PATCH 255/286] Drop a bunch of old unused gcc cross/debug variants --- pkgs/top-level/all-packages.nix | 74 +-------------------------------- 1 file changed, 1 insertion(+), 73 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 86591b76eb5..2e94012056e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2347,30 +2347,6 @@ let profiledCompiler = true; })); - gcc43_realCross = makeOverridable (import ../development/compilers/gcc/4.3) { - inherit stdenv fetchurl gmp mpfr noSysDirs; - texinfo = texinfo4; - binutilsCross = binutilsCross; - libcCross = libcCross; - profiledCompiler = false; - enableMultilib = true; - crossStageStatic = false; - cross = assert crossSystem != null; crossSystem; - }; - - gcc44_realCross = lib.addMetaAttrs { hydraPlatforms = []; } - (makeOverridable (import ../development/compilers/gcc/4.4) { - inherit stdenv fetchurl gmp mpfr /* ppl cloogppl */ noSysDirs - gettext which; - texinfo = texinfo4; - binutilsCross = binutilsCross; - libcCross = libcCross; - profiledCompiler = false; - enableMultilib = false; - crossStageStatic = false; - cross = assert crossSystem != null; crossSystem; - }); - wrapDeterministicGCCWith = gccWrapper: glibc: baseGCC: gccWrapper { nativeTools = stdenv ? gcc && stdenv.gcc.nativeTools; nativeLibc = stdenv ? gcc && stdenv.gcc.nativeLibc; @@ -2402,31 +2378,6 @@ let else null; })); - gcc45_realCross = lib.addMetaAttrs { hydraPlatforms = []; } - (makeOverridable (import ../development/compilers/gcc/4.5) { - inherit fetchurl stdenv gmp mpfr mpc libelf zlib - ppl cloogppl gettext which noSysDirs; - texinfo = texinfo4; - binutilsCross = binutilsCross; - libcCross = libcCross; - profiledCompiler = false; - enableMultilib = false; - crossStageStatic = false; - cross = assert crossSystem != null; crossSystem; - }); - - gcc46_realCross = lib.addMetaAttrs { hydraPlatforms = []; } - (makeOverridable (import ../development/compilers/gcc/4.6) { - inherit fetchurl stdenv texinfo gmp mpfr mpc libelf zlib - cloog ppl gettext which noSysDirs; - binutilsCross = binutilsCross; - libcCross = libcCross; - profiledCompiler = false; - enableMultilib = false; - crossStageStatic = false; - cross = assert crossSystem != null; crossSystem; - }); - gcc48_realCross = lib.addMetaAttrs { hydraPlatforms = []; } (callPackage ../development/compilers/gcc/4.8 { inherit noSysDirs; @@ -2531,16 +2482,6 @@ let texinfo = texinfo413; })); - # A non-stripped version of GCC. - gcc46_debug = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.6 { - stripped = false; - - inherit noSysDirs; - cross = null; - libcCross = null; - binutilsCross = null; - })); - gcc46_multi = if system == "x86_64-linux" then lowPrio ( wrapGCCWith (import ../build-support/gcc-wrapper) glibc_multi (gcc46.gcc.override { @@ -2614,19 +2555,6 @@ let gnat = gnat45; - gnat44 = wrapGCC (gcc44.gcc.override { - name = "gnat"; - langCC = false; - langC = true; - langAda = true; - profiledCompiler = false; - inherit gnatboot; - # We can't use the ppl stuff, because we would have - # libstdc++ problems. - cloogppl = null; - ppl = null; - }); - gnat45 = wrapGCC (gcc45.gcc.override { name = "gnat"; langCC = false; @@ -2693,7 +2621,7 @@ let jhc = callPackage ../development/compilers/jhc { inherit (haskellPackages_ghc6123) ghc binary zlib utf8String readline fgl - regexCompat HsSyck random; + regexCompat HsSyck random; }; # Haskell and GHC From fa158513189cb51b482a3b84ba51a489b3bd3369 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 10:48:14 +0100 Subject: [PATCH 256/286] Fix indentation --- pkgs/top-level/all-packages.nix | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2e94012056e..aec3beb89b1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2278,24 +2278,26 @@ let clang = wrapClang clangUnwrapped; libcxxLLVM = callPackage ../development/compilers/llvm { stdenv = libcxxStdenv; }; + clangSelf = clangWrapSelf (callPackage ../development/compilers/llvm/clang.nix { stdenv = libcxxStdenv; llvm = libcxxLLVM; }); clangWrapSelf = build: (import ../build-support/clang-wrapper) { - clang = build; - stdenv = clangStdenv; - libc = glibc; - binutils = binutils; - shell = bash; - inherit libcxx coreutils zlib; - nativeTools = false; - nativeLibc = false; + clang = build; + stdenv = clangStdenv; + libc = glibc; + binutils = binutils; + shell = bash; + inherit libcxx coreutils zlib; + nativeTools = false; + nativeLibc = false; }; #Use this instead of stdenv to build with clang clangStdenv = lowPrio (stdenvAdapters.overrideGCC stdenv clang); + libcxxStdenv = stdenvAdapters.overrideGCC stdenv (clangWrapSelf clangUnwrapped); clean = callPackage ../development/compilers/clean { }; From 320209a618221728e022222a2aafee1af72037bb Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 13:57:42 +0100 Subject: [PATCH 257/286] Merge deterministicStdenv into the default stdenv This means that (on Linux) strip uses "--enable-deterministic-archives" and ld uses the BFD_DETERMINISTIC_OUTPUT flag. --- .../tools/misc/binutils/default.nix | 14 +- pkgs/stdenv/generic/setup-repeatable.sh | 876 ------------------ pkgs/stdenv/generic/setup.sh | 4 +- pkgs/stdenv/linux/default.nix | 8 +- pkgs/top-level/all-packages.nix | 45 - 5 files changed, 17 insertions(+), 930 deletions(-) delete mode 100644 pkgs/stdenv/generic/setup-repeatable.sh diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix index 300922384bd..af26ebe2bda 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, noSysDirs, zlib , cross ? null, gold ? true, bison ? null -, deterministic ? false }: +}: let basename = "binutils-2.23.1"; in @@ -24,7 +24,10 @@ stdenv.mkDerivation rec { # That requires upstream changes for things to work. So we can patch it to # get the old behaviour by now. ./dtneeded.patch - ] ++ optional deterministic ./deterministic.patch; + + # Make binutils output deterministic by default. + ./deterministic.patch + ]; buildInputs = [ zlib ] @@ -49,13 +52,12 @@ stdenv.mkDerivation rec { # to the bootstrap-tools libgcc (as uses to happen on arm/mips) NIX_CFLAGS_COMPILE = "-static-libgcc"; - configureFlags = [ "--disable-werror" ] # needed for dietlibc build + configureFlags = + [ "--enable-deterministic-archives" ] ++ optional (stdenv.system == "mips64el-linux") "--enable-fix-loongson2f-nop" ++ optional (cross != null) "--target=${cross.config}" ++ optionals gold [ "--enable-gold" "--enable-plugins" ] - ++ optional deterministic "--enable-deterministic-archives" - ++ optional (stdenv.system == "i686-linux") "--enable-targets=x86_64-linux-gnu" - ; + ++ optional (stdenv.system == "i686-linux") "--enable-targets=x86_64-linux-gnu"; enableParallelBuilding = true; diff --git a/pkgs/stdenv/generic/setup-repeatable.sh b/pkgs/stdenv/generic/setup-repeatable.sh deleted file mode 100644 index 3b2e0151932..00000000000 --- a/pkgs/stdenv/generic/setup-repeatable.sh +++ /dev/null @@ -1,876 +0,0 @@ -# Run the named hook, either by calling the function with that name or -# by evaluating the variable with that name. This allows convenient -# setting of hooks both from Nix expressions (as attributes / -# environment variables) and from shell scripts (as functions). -runHook() { - local hookName="$1" - case "$(type -t $hookName)" in - (function|alias|builtin) $hookName;; - (file) source $hookName;; - (keyword) :;; - (*) eval "${!hookName}";; - esac -} - - -exitHandler() { - exitCode=$? - set +e - - closeNest - - if [ -n "$showBuildStats" ]; then - times > "$NIX_BUILD_TOP/.times" - local -a times=($(cat "$NIX_BUILD_TOP/.times")) - # Print the following statistics: - # - user time for the shell - # - system time for the shell - # - user time for all child processes - # - system time for all child processes - echo "build time elapsed: " ${times[*]} - fi - - if [ $exitCode != 0 ]; then - runHook failureHook - - # If the builder had a non-zero exit code and - # $succeedOnFailure is set, create the file - # `$out/nix-support/failed' to signal failure, and exit - # normally. Otherwise, return the original exit code. - if [ -n "$succeedOnFailure" ]; then - echo "build failed with exit code $exitCode (ignored)" - mkdir -p "$out/nix-support" - echo -n $exitCode > "$out/nix-support/failed" - exit 0 - fi - - else - runHook exitHook - fi - - exit $exitCode -} - -trap "exitHandler" EXIT - - -###################################################################### -# Helper functions that might be useful in setup hooks. - - -addToSearchPathWithCustomDelimiter() { - local delimiter=$1 - local varName=$2 - local dir=$3 - if [ -d "$dir" ]; then - eval export ${varName}=${!varName}${!varName:+$delimiter}${dir} - fi -} - -PATH_DELIMITER=':' - -addToSearchPath() { - addToSearchPathWithCustomDelimiter "${PATH_DELIMITER}" "$@" -} - - -###################################################################### -# Initialisation. - -set -e - -[ -z $NIX_GCC ] && NIX_GCC=@gcc@ - - -# Wildcard expansions that don't match should expand to an empty list. -# This ensures that, for instance, "for i in *; do ...; done" does the -# right thing. -shopt -s nullglob - - -# Set up the initial path. -PATH= -for i in $NIX_GCC @initialPath@; do - if [ "$i" = / ]; then i=; fi - addToSearchPath PATH $i/bin -done - -if [ "$NIX_DEBUG" = 1 ]; then - echo "initial path: $PATH" -fi - - -# Execute the pre-hook. -export SHELL=@shell@ -if [ -z "$shell" ]; then export shell=@shell@; fi -runHook preHook - - -# Check that the pre-hook initialised SHELL. -if [ -z "$SHELL" ]; then echo "SHELL not set"; exit 1; fi - - -# Hack: run gcc's setup hook. -envHooks=() -crossEnvHooks=() -if [ -f $NIX_GCC/nix-support/setup-hook ]; then - source $NIX_GCC/nix-support/setup-hook -fi - - -# Ensure that the given directories exists. -ensureDir() { - local dir - for dir in "$@"; do - if ! [ -x "$dir" ]; then mkdir -p "$dir"; fi - done -} - -installBin() { - mkdir -p $out/bin - cp "$@" $out/bin -} - - -# Allow the caller to augment buildInputs (it's not always possible to -# do this before the call to setup.sh, since the PATH is empty at that -# point; here we have a basic Unix environment). -runHook addInputsHook - - -# Recursively find all build inputs. -findInputs() { - local pkg=$1 - local var=$2 - local propagatedBuildInputsFile=$3 - - case ${!var} in - *\ $pkg\ *) - return 0 - ;; - esac - - eval $var="'${!var} $pkg '" - - if [ -f $pkg/nix-support/setup-hook ]; then - source $pkg/nix-support/setup-hook - fi - - if [ -f $pkg/nix-support/$propagatedBuildInputsFile ]; then - for i in $(cat $pkg/nix-support/$propagatedBuildInputsFile); do - findInputs $i $var $propagatedBuildInputsFile - done - fi -} - -crossPkgs="" -for i in $buildInputs $propagatedBuildInputs; do - findInputs $i crossPkgs propagated-build-inputs -done - -nativePkgs="" -for i in $nativeBuildInputs $propagatedNativeBuildInputs; do - findInputs $i nativePkgs propagated-native-build-inputs -done - - -# Set the relevant environment variables to point to the build inputs -# found above. -addToNativeEnv() { - local pkg=$1 - - if [ -d $1/bin ]; then - addToSearchPath _PATH $1/bin - fi - - # Run the package-specific hooks set by the setup-hook scripts. - for i in "${envHooks[@]}"; do - $i $pkg - done -} - -for i in $nativePkgs; do - addToNativeEnv $i -done - -addToCrossEnv() { - local pkg=$1 - - # Some programs put important build scripts (freetype-config and similar) - # into their crossDrv bin path. Intentionally these should go after - # the nativePkgs in PATH. - if [ -d $1/bin ]; then - addToSearchPath _PATH $1/bin - fi - - # Run the package-specific hooks set by the setup-hook scripts. - for i in "${crossEnvHooks[@]}"; do - $i $pkg - done -} - -for i in $crossPkgs; do - addToCrossEnv $i -done - - -# Add the output as an rpath. -if [ "$NIX_NO_SELF_RPATH" != 1 ]; then - export NIX_LDFLAGS="-rpath $out/lib $NIX_LDFLAGS" - if [ -n "$NIX_LIB64_IN_SELF_RPATH" ]; then - export NIX_LDFLAGS="-rpath $out/lib64 $NIX_LDFLAGS" - fi - if [ -n "$NIX_LIB32_IN_SELF_RPATH" ]; then - export NIX_LDFLAGS="-rpath $out/lib32 $NIX_LDFLAGS" - fi -fi - - -# Set the TZ (timezone) environment variable, otherwise commands like -# `date' will complain (e.g., `Tue Mar 9 10:01:47 Local time zone must -# be set--see zic manual page 2004'). -export TZ=UTC - - -# Set the prefix. This is generally $out, but it can be overriden, -# for instance if we just want to perform a test build/install to a -# temporary location and write a build report to $out. -if [ -z "$prefix" ]; then - prefix="$out"; -fi - -if [ "$useTempPrefix" = 1 ]; then - prefix="$NIX_BUILD_TOP/tmp_prefix"; -fi - - -PATH=$_PATH${_PATH:+:}$PATH -if [ "$NIX_DEBUG" = 1 ]; then - echo "final path: $PATH" -fi - - -# Make GNU Make produce nested output. -export NIX_INDENT_MAKE=1 - - -# Normalize the NIX_BUILD_CORES variable. The value might be 0, which -# means that we're supposed to try and auto-detect the number of -# available CPU cores at run-time. - -if [ -z "${NIX_BUILD_CORES:-}" ]; then - NIX_BUILD_CORES="1" -elif [ "$NIX_BUILD_CORES" -le 0 ]; then - NIX_BUILD_CORES=$(nproc 2>/dev/null || true) - if expr >/dev/null 2>&1 "$NIX_BUILD_CORES" : "^[0-9][0-9]*$"; then - : - else - NIX_BUILD_CORES="1" - fi -fi -export NIX_BUILD_CORES - - -###################################################################### -# Misc. helper functions. - - -stripDirs() { - local dirs="$1" - local stripFlags="$2" - local dirsNew= - - for d in ${dirs}; do - if [ -d "$prefix/$d" ]; then - dirsNew="${dirsNew} $prefix/$d " - fi - done - dirs=${dirsNew} - - if [ -n "${dirs}" ]; then - header "stripping (with flags $stripFlags) in $dirs" - find $dirs -type f -print0 | xargs -0 ${xargsFlags:--r} strip $stripFlags || true - stopNest - fi -} - - -###################################################################### -# Textual substitution functions. - - -substitute() { - local input="$1" - local output="$2" - - local -a params=("$@") - - local n p pattern replacement varName - - local content="$(cat $input)" - - for ((n = 2; n < ${#params[*]}; n += 1)); do - p=${params[$n]} - - if [ "$p" = --replace ]; then - pattern="${params[$((n + 1))]}" - replacement="${params[$((n + 2))]}" - n=$((n + 2)) - fi - - if [ "$p" = --subst-var ]; then - varName="${params[$((n + 1))]}" - pattern="@$varName@" - replacement="${!varName}" - n=$((n + 1)) - fi - - if [ "$p" = --subst-var-by ]; then - pattern="@${params[$((n + 1))]}@" - replacement="${params[$((n + 2))]}" - n=$((n + 2)) - fi - - content="${content//"$pattern"/$replacement}" - done - - # !!! This doesn't work properly if $content is "-n". - echo -n "$content" > "$output".tmp - if [ -x "$output" ]; then chmod +x "$output".tmp; fi - mv -f "$output".tmp "$output" -} - - -substituteInPlace() { - local fileName="$1" - shift - substitute "$fileName" "$fileName" "$@" -} - - -substituteAll() { - local input="$1" - local output="$2" - - # Select all environment variables that start with a lowercase character. - for envVar in $(env | sed "s/^[^a-z].*//" | sed "s/^\([^=]*\)=.*/\1/"); do - if [ "$NIX_DEBUG" = "1" ]; then - echo "$envVar -> ${!envVar}" - fi - args="$args --subst-var $envVar" - done - - substitute "$input" "$output" $args -} - - -substituteAllInPlace() { - local fileName="$1" - shift - substituteAll "$fileName" "$fileName" "$@" -} - - -###################################################################### -# What follows is the generic builder. - - -nestingLevel=0 - -startNest() { - nestingLevel=$(($nestingLevel + 1)) - echo -en "\033[$1p" -} - -stopNest() { - nestingLevel=$(($nestingLevel - 1)) - echo -en "\033[q" -} - -header() { - startNest "$2" - echo "$1" -} - -# Make sure that even when we exit abnormally, the original nesting -# level is properly restored. -closeNest() { - while [ $nestingLevel -gt 0 ]; do - stopNest - done -} - - -# This function is useful for debugging broken Nix builds. It dumps -# all environment variables to a file `env-vars' in the build -# directory. If the build fails and the `-K' option is used, you can -# then go to the build directory and source in `env-vars' to reproduce -# the environment used for building. -dumpVars() { - if [ "$noDumpEnvVars" != 1 ]; then - export > "$NIX_BUILD_TOP/env-vars" - fi -} - - -# Utility function: return the base name of the given path, with the -# prefix `HASH-' removed, if present. -stripHash() { - strippedName=$(basename $1); - if echo "$strippedName" | grep -q '^[a-z0-9]\{32\}-'; then - strippedName=$(echo "$strippedName" | cut -c34-) - fi -} - - -unpackFile() { - curSrc="$1" - local cmd - - header "unpacking source archive $curSrc" 3 - - case "$curSrc" in - *.tar.xz | *.tar.lzma) - # Don't rely on tar knowing about .xz. - xz -d < $curSrc | tar xf - - ;; - *.tar | *.tar.* | *.tgz | *.tbz2) - # GNU tar can automatically select the decompression method - # (info "(tar) gzip"). - tar xf $curSrc - ;; - *.zip) - unzip -qq $curSrc - ;; - *) - if [ -d "$curSrc" ]; then - stripHash $curSrc - cp -prd --no-preserve=timestamps $curSrc $strippedName - else - if [ -z "$unpackCmd" ]; then - echo "source archive $curSrc has unknown type" - exit 1 - fi - runHook unpackCmd - fi - ;; - esac - - stopNest -} - - -unpackPhase() { - runHook preUnpack - - if [ -z "$srcs" ]; then - if [ -z "$src" ]; then - echo 'variable $src or $srcs should point to the source' - exit 1 - fi - srcs="$src" - fi - - # To determine the source directory created by unpacking the - # source archives, we record the contents of the current - # directory, then look below which directory got added. Yeah, - # it's rather hacky. - local dirsBefore="" - for i in *; do - if [ -d "$i" ]; then - dirsBefore="$dirsBefore $i " - fi - done - - # Unpack all source archives. - for i in $srcs; do - unpackFile $i - done - - # Find the source directory. - if [ -n "$setSourceRoot" ]; then - runHook setSourceRoot - elif [ -z "$sourceRoot" ]; then - sourceRoot= - for i in *; do - if [ -d "$i" ]; then - case $dirsBefore in - *\ $i\ *) - ;; - *) - if [ -n "$sourceRoot" ]; then - echo "unpacker produced multiple directories" - exit 1 - fi - sourceRoot="$i" - ;; - esac - fi - done - fi - - if [ -z "$sourceRoot" ]; then - echo "unpacker appears to have produced no directories" - exit 1 - fi - - echo "source root is $sourceRoot" - - # By default, add write permission to the sources. This is often - # necessary when sources have been copied from other store - # locations. - if [ "$dontMakeSourcesWritable" != 1 ]; then - chmod -R u+w "$sourceRoot" - fi - - runHook postUnpack -} - - -patchPhase() { - runHook prePatch - - for i in $patches; do - header "applying patch $i" 3 - local uncompress=cat - case $i in - *.gz) - uncompress="gzip -d" - ;; - *.bz2) - uncompress="bzip2 -d" - ;; - *.lzma) - uncompress="lzma -d" - ;; - esac - $uncompress < $i | patch ${patchFlags:--p1} - stopNest - done - - runHook postPatch -} - - -fixLibtool() { - sed -i -e 's^eval sys_lib_.*search_path=.*^^' "$1" -} - - -configurePhase() { - runHook preConfigure - - if [ -z "$configureScript" ]; then - configureScript=./configure - if ! [ -x $configureScript ]; then - echo "no configure script, doing nothing" - return - fi - fi - - if [ -z "$dontFixLibtool" ]; then - for i in $(find . -name "ltmain.sh"); do - echo "fixing libtool script $i" - fixLibtool $i - done - fi - - if [ -z "$dontAddPrefix" ]; then - configureFlags="${prefixKey:---prefix=}$prefix $configureFlags" - fi - - # Add --disable-dependency-tracking to speed up some builds. - if [ -z "$dontAddDisableDepTrack" ]; then - if grep -q dependency-tracking $configureScript; then - configureFlags="--disable-dependency-tracking $configureFlags" - fi - fi - - # By default, disable static builds. - if [ -z "$dontDisableStatic" ]; then - if grep -q enable-static $configureScript; then - configureFlags="--disable-static $configureFlags" - fi - fi - - echo "configure flags: $configureFlags ${configureFlagsArray[@]}" - $configureScript $configureFlags "${configureFlagsArray[@]}" - - runHook postConfigure -} - - -buildPhase() { - runHook preBuild - - if [ -z "$makeFlags" ] && ! [ -n "$makefile" -o -e "Makefile" -o -e "makefile" -o -e "GNUmakefile" ]; then - echo "no Makefile, doing nothing" - return - fi - - echo "make flags: $makeFlags ${makeFlagsArray[@]} $buildFlags ${buildFlagsArray[@]}" - make ${makefile:+-f $makefile} \ - ${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}} \ - $makeFlags "${makeFlagsArray[@]}" \ - $buildFlags "${buildFlagsArray[@]}" - - runHook postBuild -} - - -checkPhase() { - runHook preCheck - - echo "check flags: $makeFlags ${makeFlagsArray[@]} $checkFlags ${checkFlagsArray[@]}" - make ${makefile:+-f $makefile} \ - ${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}} \ - $makeFlags "${makeFlagsArray[@]}" \ - ${checkFlags:-VERBOSE=y} "${checkFlagsArray[@]}" ${checkTarget:-check} - - runHook postCheck -} - - -patchELF() { - # Patch all ELF executables and shared libraries. - header "patching ELF executables and libraries" - if [ -e "$prefix" ]; then - find "$prefix" \( \ - \( -type f -a -name "*.so*" \) -o \ - \( -type f -a -perm +0100 \) \ - \) -print -exec patchelf --shrink-rpath {} \; - fi - stopNest -} - - -patchShebangs() { - # Rewrite all script interpreter file names (`#! /path') under the - # specified directory tree to paths found in $PATH. E.g., - # /bin/sh will be rewritten to /nix/store/-some-bash/bin/sh. - # Interpreters that are already in the store are left untouched. - header "patching script interpreter paths" - local dir="$1" - local f - for f in $(find "$dir" -type f -perm +0100); do - local oldPath=$(sed -ne '1 s,^#![ ]*\([^ ]*\).*$,\1,p' "$f") - if [ -n "$oldPath" -a "${oldPath:0:${#NIX_STORE}}" != "$NIX_STORE" ]; then - local newPath=$(type -P $(basename $oldPath) || true) - if [ -n "$newPath" -a "$newPath" != "$oldPath" ]; then - echo "$f: interpreter changed from $oldPath to $newPath" - sed -i -e "1 s,$oldPath,$newPath," "$f" - fi - fi - done - stopNest -} - - -installPhase() { - runHook preInstall - - mkdir -p "$prefix" - - installTargets=${installTargets:-install} - echo "install flags: $installTargets $makeFlags ${makeFlagsArray[@]} $installFlags ${installFlagsArray[@]}" - make ${makefile:+-f $makefile} $installTargets \ - $makeFlags "${makeFlagsArray[@]}" \ - $installFlags "${installFlagsArray[@]}" - - runHook postInstall -} - - -# The fixup phase performs generic, package-independent, Nix-related -# stuff, like running patchelf and setting the -# propagated-build-inputs. It should rarely be overriden. -fixupPhase() { - runHook preFixup - - # Put man/doc/info under $out/share. - forceShare=${forceShare:=man doc info} - if [ -n "$forceShare" ]; then - for d in $forceShare; do - if [ -d "$prefix/$d" ]; then - if [ -d "$prefix/share/$d" ]; then - echo "both $d/ and share/$d/ exists!" - else - echo "fixing location of $d/ subdirectory" - mkdir -p $prefix/share - if [ -w $prefix/share ]; then - mv -v $prefix/$d $prefix/share - ln -sv share/$d $prefix - fi - fi - fi - done; - fi - - if [ -z "$dontGzipMan" ]; then - GLOBIGNORE=.:..:*.gz:*.bz2 - for f in $out/share/man/*/* $out/share/man/*/*/*; do - if [ -f $f ]; then - if gzip -c -n $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... - if [ -z "$dontStrip" ]; then - stripDebugList=${stripDebugList:-lib lib32 lib64 libexec bin sbin} - if [ -n "$stripDebugList" ]; then - stripDirs "$stripDebugList" "${stripDebugFlags:--S --enable-deterministic-archives}" - fi - - stripAllList=${stripAllList:-} - if [ -n "$stripAllList" ]; then - stripDirs "$stripAllList" "${stripAllFlags:--s --enable-deterministic-archives}" - fi - fi - - if [ "$havePatchELF" = 1 -a -z "$dontPatchELF" ]; then - patchELF "$prefix" - fi - - if [ -z "$dontPatchShebangs" ]; then - patchShebangs "$prefix" - fi - - if [ -n "$propagatedBuildInputs" ]; then - mkdir -p "$out/nix-support" - echo "$propagatedBuildInputs" > "$out/nix-support/propagated-build-inputs" - fi - - if [ -n "$propagatedNativeBuildInputs" ]; then - mkdir -p "$out/nix-support" - echo "$propagatedNativeBuildInputs" > "$out/nix-support/propagated-native-build-inputs" - fi - - if [ -n "$propagatedUserEnvPkgs" ]; then - mkdir -p "$out/nix-support" - echo "$propagatedUserEnvPkgs" > "$out/nix-support/propagated-user-env-packages" - fi - - if [ -n "$setupHook" ]; then - mkdir -p "$out/nix-support" - substituteAll "$setupHook" "$out/nix-support/setup-hook" - fi - - runHook postFixup -} - - -installCheckPhase() { - runHook preInstallCheck - - echo "installcheck flags: $makeFlags ${makeFlagsArray[@]} $installCheckFlags ${installCheckFlagsArray[@]}" - make ${makefile:+-f $makefile} \ - ${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}} \ - $makeFlags "${makeFlagsArray[@]}" \ - $installCheckFlags "${installCheckFlagsArray[@]}" ${installCheckTarget:-installcheck} - - runHook postInstallCheck -} - - -distPhase() { - runHook preDist - - echo "dist flags: $distFlags ${distFlagsArray[@]}" - make ${makefile:+-f $makefile} $distFlags "${distFlagsArray[@]}" ${distTarget:-dist} - - if [ "$dontCopyDist" != 1 ]; then - mkdir -p "$out/tarballs" - - # Note: don't quote $tarballs, since we explicitly permit - # wildcards in there. - cp -pvd ${tarballs:-*.tar.gz} $out/tarballs - fi - - runHook postDist -} - - -showPhaseHeader() { - local phase="$1" - case $phase in - unpackPhase) header "unpacking sources";; - patchPhase) header "patching sources";; - configurePhase) header "configuring";; - buildPhase) header "building";; - checkPhase) header "running tests";; - installPhase) header "installing";; - fixupPhase) header "post-installation fixup";; - installCheckPhase) header "running install tests";; - *) header "$phase";; - esac -} - - -genericBuild() { - header "building $out" - - if [ -n "$buildCommand" ]; then - eval "$buildCommand" - return - fi - - if [ -z "$phases" ]; then - phases="$prePhases unpackPhase patchPhase $preConfigurePhases \ - configurePhase $preBuildPhases buildPhase checkPhase \ - $preInstallPhases installPhase fixupPhase installCheckPhase \ - $preDistPhases distPhase $postPhases"; - fi - - for curPhase in $phases; do - if [ "$curPhase" = buildPhase -a -n "$dontBuild" ]; then continue; fi - if [ "$curPhase" = checkPhase -a -z "$doCheck" ]; then continue; fi - if [ "$curPhase" = installPhase -a -n "$dontInstall" ]; then continue; fi - if [ "$curPhase" = fixupPhase -a -n "$dontFixup" ]; then continue; fi - if [ "$curPhase" = installCheckPhase -a -z "$doInstallCheck" ]; then continue; fi - if [ "$curPhase" = distPhase -a -z "$doDist" ]; then continue; fi - - if [ -n "$tracePhases" ]; then - echo - echo "@ phase-started $out $curPhase" - fi - - showPhaseHeader "$curPhase" - dumpVars - - # Evaluate the variable named $curPhase if it exists, otherwise the - # function named $curPhase. - eval "${!curPhase:-$curPhase}" - - if [ "$curPhase" = unpackPhase ]; then - cd "${sourceRoot:-.}" - fi - - if [ -n "$tracePhases" ]; then - echo - echo "@ phase-succeeded $out $curPhase" - fi - - stopNest - done - - stopNest -} - - -# Execute the post-hook. -runHook postHook - - -# Execute the global user hook (defined through the Nixpkgs -# configuration option ‘stdenv.userHook’). This can be used to set -# global compiler optimisation flags, for instance. -runHook userHook - - -dumpVars diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 58868e8706a..4a5e3bac8fc 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -291,7 +291,7 @@ stripDirs() { for dir in $dirs; do test -L "$dir" || chmod -R +rw "$dir" done - find $dirs -type f -print0 | xargs -0 ${xargsFlags:--r} strip $stripFlags || true + find $dirs -type f -print0 | xargs -0 ${xargsFlags:--r} strip $commonStripFlags $stripFlags || true stopNest fi } @@ -759,7 +759,7 @@ fixupPhase() { GLOBIGNORE=.:..:*.gz:*.bz2 for f in "$out"/share/man/*/* "$out"/share/man/*/*/*; do if [ -f "$f" -a ! -L "$f" ]; then - if gzip -c "$f" > "$f".gz; then + if gzip -c -n "$f" > "$f".gz; then rm "$f" else rm "$f".gz diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index 3e71ac46739..b1e903ac610 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -268,7 +268,13 @@ rec { stdenvLinux = import ../generic rec { inherit system config; - preHook = commonPreHook; + preHook = + '' + # Make "strip" produce deterministic output, by setting + # timestamps etc. to a fixed value. + commonStripFlags="--enable-deterministic-archives" + ${commonPreHook} + ''; initialPath = ((import ../common-path.nix) {pkgs = stdenvLinuxBoot4Pkgs;}) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index aec3beb89b1..38791ec46df 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2349,37 +2349,6 @@ let profiledCompiler = true; })); - wrapDeterministicGCCWith = gccWrapper: glibc: baseGCC: gccWrapper { - nativeTools = stdenv ? gcc && stdenv.gcc.nativeTools; - nativeLibc = stdenv ? gcc && stdenv.gcc.nativeLibc; - nativePrefix = if stdenv ? gcc then stdenv.gcc.nativePrefix else ""; - gcc = baseGCC; - libc = glibc; - shell = bash; - binutils = binutils_deterministic; - inherit stdenv coreutils zlib; - }; - - wrapDeterministicGCC = wrapDeterministicGCCWith (import ../build-support/gcc-wrapper) glibc; - - gcc46_deterministic = lowPrio (wrapDeterministicGCC (callPackage ../development/compilers/gcc/4.6 { - inherit noSysDirs; - - # bootstrapping a profiled compiler does not work in the sheevaplug: - # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43944 - profiledCompiler = false; - - # When building `gcc.crossDrv' (a "Canadian cross", with host == target - # and host != build), `cross' must be null but the cross-libc must still - # be passed. - cross = null; - libcCross = if crossSystem != null then libcCross else null; - libpthreadCross = - if crossSystem != null && crossSystem.config == "i586-pc-gnu" - then gnu.libpthreadCross - else null; - })); - gcc48_realCross = lib.addMetaAttrs { hydraPlatforms = []; } (callPackage ../development/compilers/gcc/4.8 { inherit noSysDirs; @@ -2952,15 +2921,6 @@ let ocaml = ocaml_3_08_0; }; - deterministicStdenv = lowPrio ( - overrideInStdenv ( - stdenvAdapters.overrideGCC - (stdenvAdapters.overrideSetup stdenv ../stdenv/generic/setup-repeatable.sh ) - gcc46_deterministic - ) - [ binutils_deterministic ] - ); - roadsend = callPackage ../development/compilers/roadsend { }; # TODO: the corresponding nix file is missing @@ -3390,11 +3350,6 @@ let inherit noSysDirs; }; - binutils_deterministic = lowPrio (callPackage ../development/tools/misc/binutils { - inherit noSysDirs; - deterministic = true; - }); - binutils_nogold = lowPrio (callPackage ../development/tools/misc/binutils { inherit noSysDirs; gold = false; From c17e263ae9138627c50a3b563d6f3861db6c6711 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 14:11:21 +0100 Subject: [PATCH 258/286] gzip: Don't depend on less No need to make stdenv bootstrap more bloated than necessary. --- pkgs/tools/compression/gzip/default.nix | 8 -------- pkgs/tools/compression/gzip/skip-some-tests.patch | 12 ------------ 2 files changed, 20 deletions(-) delete mode 100644 pkgs/tools/compression/gzip/skip-some-tests.patch diff --git a/pkgs/tools/compression/gzip/default.nix b/pkgs/tools/compression/gzip/default.nix index 3a134fea9de..eaa1fd5c513 100644 --- a/pkgs/tools/compression/gzip/default.nix +++ b/pkgs/tools/compression/gzip/default.nix @@ -8,12 +8,6 @@ stdenv.mkDerivation rec { sha256 = "0ivqnbhiwd12q8hp3qw6rpsrpw2jg5y2mymk8cn22lsx90dfvprp"; }; - patches = [ ./skip-some-tests.patch ]; - - buildInputs = [ less ]; # just for tests - - doCheck = true; - meta = { homepage = http://www.gnu.org/software/gzip/; description = "Gzip, the GNU zip compression program"; @@ -31,7 +25,5 @@ stdenv.mkDerivation rec { ''; license = "GPLv3+"; - - maintainers = [ ]; }; } diff --git a/pkgs/tools/compression/gzip/skip-some-tests.patch b/pkgs/tools/compression/gzip/skip-some-tests.patch deleted file mode 100644 index 74043a3ab56..00000000000 --- a/pkgs/tools/compression/gzip/skip-some-tests.patch +++ /dev/null @@ -1,12 +0,0 @@ -Skip test requiring more (not found in nixpkgs). ---- gzip-1.5/tests/Makefile.in.orig 2013-02-23 15:15:08.017048868 +0000 -+++ gzip-1.5/tests/Makefile.in 2013-02-23 15:15:32.756197039 +0000 -@@ -1441,8 +1440,7 @@ - zfgrep \ - zforce \ - zgrep \ - zless \ -- zmore \ - znew - - TESTS_ENVIRONMENT = \ From 320498d5297f28a636d0afe5df3cf768aa472d50 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 14:24:59 +0100 Subject: [PATCH 259/286] flex: Clean up expression --- pkgs/development/tools/parsing/flex/default.nix | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pkgs/development/tools/parsing/flex/default.nix b/pkgs/development/tools/parsing/flex/default.nix index 21180e7d185..8047080a125 100644 --- a/pkgs/development/tools/parsing/flex/default.nix +++ b/pkgs/development/tools/parsing/flex/default.nix @@ -1,17 +1,16 @@ -# This should be moved to default.nix eventually (?) - -{stdenv, fetchurl, yacc, m4}: - -assert yacc != null && m4 != null; +{ stdenv, fetchurl, bison, m4 }: stdenv.mkDerivation { name = "flex-2.5.35"; + src = fetchurl { url = mirror://sourceforge/flex/flex-2.5.35.tar.bz2; sha256 = "0ysff249mwhq0053bw3hxh58djc0gy7vjan2z1krrf9n5d5vvv0b"; }; - buildInputs = [yacc]; - propagatedNativeBuildInputs = [m4]; + + buildInputs = [ bison ]; + + propagatedNativeBuildInputs = [ m4 ]; crossAttrs = { preConfigure = '' @@ -21,6 +20,7 @@ stdenv.mkDerivation { }; meta = { + homepage = http://flex.sourceforge.net/; description = "A fast lexical analyser generator"; }; } From dfc62c908426920fba9286e66873343a8b1358b4 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 14:25:42 +0100 Subject: [PATCH 260/286] bison: Don't run the tests All this accomplishes is to make bison depend on flex, which in turn depends on bison. (So as a result, during the stdenv bootstrap, bison gets built 6 (!) times.) --- pkgs/development/tools/parsing/bison/3.x.nix | 6 ++---- pkgs/top-level/all-packages.nix | 6 +----- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/pkgs/development/tools/parsing/bison/3.x.nix b/pkgs/development/tools/parsing/bison/3.x.nix index 2e3a4f8d497..284223905f6 100644 --- a/pkgs/development/tools/parsing/bison/3.x.nix +++ b/pkgs/development/tools/parsing/bison/3.x.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, m4, perl, flex }: +{ stdenv, fetchurl, m4, perl }: stdenv.mkDerivation rec { name = "bison-3.0.2"; @@ -8,11 +8,9 @@ stdenv.mkDerivation rec { sha256 = "1vc17y6242jlwp0gdj7wsim3nvc1ws7q3j0v3065nz8g9hd9vwnd"; }; - nativeBuildInputs = [ m4 perl ] ++ stdenv.lib.optionals doCheck [ flex ]; + nativeBuildInputs = [ m4 perl ]; propagatedBuildInputs = [ m4 ]; - doCheck = flex != null; - meta = { homepage = "http://www.gnu.org/software/bison/"; description = "GNU Bison, a Yacc-compatible parser generator"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 38791ec46df..4f8bb74306a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3500,11 +3500,7 @@ let checkstyle = callPackage ../development/tools/analysis/checkstyle { }; - flex = callPackage ../development/tools/parsing/flex { - # Break infinite recursion: bison's test suite needs flex, so we - # use an untested bison build to build flex first. - yacc = bison.override { flex = null; }; - }; + flex = callPackage ../development/tools/parsing/flex { }; m4 = gnum4; From 4b31f920b64798831bc4c90f5e2f5f795db818fa Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 14:55:55 +0100 Subject: [PATCH 261/286] binutils: Get rid of a redundant copy of gold --- 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 af26ebe2bda..d79d276307e 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -43,7 +43,7 @@ stdenv.mkDerivation rec { # Use symlinks instead of hard links to save space ("strip" in the # fixup phase strips each hard link separately). - for i in binutils/Makefile.in gas/Makefile.in ld/Makefile.in; do + for i in binutils/Makefile.in gas/Makefile.in ld/Makefile.in gold/Makefile.in; do sed -i "$i" -e 's|ln |ln -s |' done ''; From 1e986d8de3a9e03671eb54be9a54f33bc147cc57 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 15:01:59 +0100 Subject: [PATCH 262/286] binutils: Use dynamic instead of shared libraries This reduces the size of binutils from 29 to 17 MiB. --- 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 d79d276307e..6db4abbf446 100644 --- a/pkgs/development/tools/misc/binutils/default.nix +++ b/pkgs/development/tools/misc/binutils/default.nix @@ -53,7 +53,7 @@ stdenv.mkDerivation rec { NIX_CFLAGS_COMPILE = "-static-libgcc"; configureFlags = - [ "--enable-deterministic-archives" ] + [ "--enable-shared" "--enable-deterministic-archives" ] ++ optional (stdenv.system == "mips64el-linux") "--enable-fix-loongson2f-nop" ++ optional (cross != null) "--target=${cross.config}" ++ optionals gold [ "--enable-gold" "--enable-plugins" ] From ffd6557dc603083d35b4bfad7b1f2dcd328b4ad0 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 17:44:03 +0100 Subject: [PATCH 263/286] patchelf: Update to 0.7 --- pkgs/development/tools/misc/patchelf/default.nix | 4 ++-- .../development/tools/misc/patchelf/unstable.nix | 16 ---------------- pkgs/top-level/all-packages.nix | 2 -- 3 files changed, 2 insertions(+), 20 deletions(-) delete mode 100644 pkgs/development/tools/misc/patchelf/unstable.nix diff --git a/pkgs/development/tools/misc/patchelf/default.nix b/pkgs/development/tools/misc/patchelf/default.nix index 857aa1cabcf..8626534c7db 100644 --- a/pkgs/development/tools/misc/patchelf/default.nix +++ b/pkgs/development/tools/misc/patchelf/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { - name = "patchelf-0.6"; + name = "patchelf-0.7"; src = fetchurl { url = "http://nixos.org/releases/patchelf/${name}/${name}.tar.bz2"; - sha256 = "fc7e7fa95f282fc37a591a802629e0e1ed07bc2a8bf162228d9a69dd76127c01"; + sha256 = "61b96f455e6ccd1c1d7d159df7199c85ff6e8f9622d795a5420e418acfb8b808"; }; meta = { diff --git a/pkgs/development/tools/misc/patchelf/unstable.nix b/pkgs/development/tools/misc/patchelf/unstable.nix deleted file mode 100644 index aa8418496ea..00000000000 --- a/pkgs/development/tools/misc/patchelf/unstable.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ stdenv, fetchurl }: - -stdenv.mkDerivation rec { - name = "patchelf-0.7pre160_1c057cd"; - - src = fetchurl { - url = http://hydra.nixos.org/build/2961500/download/2/patchelf-0.7pre160_1c057cd.tar.bz2; - sha256 = "bbc46169f6b6803410e0072cf57e631481e3d5f1dde234f4eacbccb6562c5f4f"; - }; - - 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/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4f8bb74306a..3dd58e2eb12 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3595,8 +3595,6 @@ let patchelf = callPackage ../development/tools/misc/patchelf { }; - patchelfUnstable = callPackage ../development/tools/misc/patchelf/unstable.nix { }; - peg = callPackage ../development/tools/parsing/peg { }; phantomjs = callPackage ../development/tools/phantomjs { }; From 10ab227126bfab4ad1675b6b95f8c1e7e6370b2d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 17:45:55 +0100 Subject: [PATCH 264/286] stdenv: Prepend SHELL=... to makeFlags If it's appended, the user cannot override SHELL. --- pkgs/stdenv/generic/setup.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 4a5e3bac8fc..12c5801d5eb 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -614,8 +614,8 @@ buildPhase() { return fi - # see https://github.com/NixOS/nixpkgs/pull/1354#issuecomment-31260409 - makeFlags="${makeFlags} SHELL=${SHELL}" + # See https://github.com/NixOS/nixpkgs/pull/1354#issuecomment-31260409 + makeFlags="SHELL=$SHELL $makeFlags" echo "make flags: $makeFlags ${makeFlagsArray[@]} $buildFlags ${buildFlagsArray[@]}" make ${makefile:+-f $makefile} \ From 860c681fb3e97030f43659897552b133943a636a Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 17:46:47 +0100 Subject: [PATCH 265/286] stdenv-linux: Prevent dependency on bootstrap-tools in the final binutils Binutils nowadays contains ld.gold, which depends on libstdc++. So it needs to be built with the new GCC rather than the one from bootstrap-tools. Issue #1469. --- pkgs/stdenv/linux/default.nix | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix index b1e903ac610..bedeea0915d 100644 --- a/pkgs/stdenv/linux/default.nix +++ b/pkgs/stdenv/linux/default.nix @@ -7,7 +7,7 @@ # The function defaults are for easy testing. { system ? builtins.currentSystem , allPackages ? import ../../top-level/all-packages.nix -, platform ? null, config }: +, platform ? null, config ? {} }: rec { @@ -166,12 +166,14 @@ rec { bootStdenv = stdenvLinuxBoot1; }; + binutils1 = stdenvLinuxBoot1Pkgs.binutils.override { gold = false; }; - # 3) 2nd stdenv that we will use to build only the glibc. + + # 3) 2nd stdenv that we will use to build only Glibc. stdenvLinuxBoot2 = stdenvBootFun { gcc = wrapGCC { libc = bootstrapGlibc; - binutils = stdenvLinuxBoot1Pkgs.binutils; + binutils = binutils1; coreutils = bootstrapTools; }; overrides = pkgs: { @@ -182,7 +184,7 @@ rec { # 4) These are the packages that we can build with the 2nd - # stdenv. We only need Glibc (in step 5). + # stdenv. stdenvLinuxBoot2Pkgs = allPackages { inherit system platform; bootStdenv = stdenvLinuxBoot2; @@ -194,12 +196,12 @@ rec { stdenvLinuxGlibc = stdenvLinuxBoot2Pkgs.glibc; - # 6) Construct a third stdenv identical to the 2nd, except that - # this one uses the Glibc built in step 3. It still uses - # the recent binutils and rest of the bootstrap tools, including GCC. + # 6) Construct a third stdenv identical to the 2nd, except that this + # one uses the Glibc built in step 5. It still uses the recent + # binutils and rest of the bootstrap tools, including GCC. stdenvLinuxBoot3 = stdenvBootFun { gcc = wrapGCC { - binutils = stdenvLinuxBoot1Pkgs.binutils; + binutils = binutils1; coreutils = bootstrapTools; libc = stdenvLinuxGlibc; }; @@ -231,12 +233,11 @@ rec { # 8) Construct a fourth stdenv identical to the second, except that - # this one uses the dynamically linked GCC and Binutils from step - # 5. The other tools (e.g. coreutils) are still from the - # bootstrap tools. + # this one uses the new GCC from step 7. The other tools + # (e.g. coreutils) are still from the bootstrap tools. stdenvLinuxBoot4 = stdenvBootFun { gcc = wrapGCC rec { - inherit (stdenvLinuxBoot3Pkgs) binutils; + binutils = binutils1; coreutils = bootstrapTools; libc = stdenvLinuxGlibc; gcc = stdenvLinuxBoot3Pkgs.gcc.gcc; @@ -258,9 +259,9 @@ rec { }; - # 10) Construct the final stdenv. It uses the Glibc, GCC and - # Binutils built above, and adds in dynamically linked versions - # of all other tools. + # 10) Construct the final stdenv. It uses the Glibc and GCC, and + # adds in a new binutils that doesn't depend on bootstrap-tools, + # as well as dynamically linked versions of all other tools. # # When updating stdenvLinux, make sure that the result has no # dependency (`nix-store -qR') on bootstrapTools or the @@ -281,8 +282,7 @@ rec { ++ [stdenvLinuxBoot4Pkgs.patchelf]; gcc = wrapGCC rec { - inherit (stdenvLinuxBoot3Pkgs) binutils; - inherit (stdenvLinuxBoot4Pkgs) coreutils; + inherit (stdenvLinuxBoot4Pkgs) binutils coreutils; libc = stdenvLinuxGlibc; gcc = stdenvLinuxBoot4.gcc.gcc; shell = stdenvLinuxBoot4Pkgs.bash + "/bin/bash"; From a9a3ed108472a987ba892162ce9ab4d24f383eff Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 7 Jan 2014 17:49:06 +0100 Subject: [PATCH 266/286] gzip: Don't depend on stdenv-linux. Issue #1469. --- pkgs/tools/compression/gzip/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/tools/compression/gzip/default.nix b/pkgs/tools/compression/gzip/default.nix index eaa1fd5c513..b1d127635f6 100644 --- a/pkgs/tools/compression/gzip/default.nix +++ b/pkgs/tools/compression/gzip/default.nix @@ -8,6 +8,11 @@ stdenv.mkDerivation rec { sha256 = "0ivqnbhiwd12q8hp3qw6rpsrpw2jg5y2mymk8cn22lsx90dfvprp"; }; + enableParallelBuilding = true; + + # In stdenv-linux, prevent a dependency on bootstrap-tools. + makeFlags = "SHELL=/bin/sh GREP=grep"; + meta = { homepage = http://www.gnu.org/software/gzip/; description = "Gzip, the GNU zip compression program"; From 51713fbbfcaf819f176df8f3ce75f57880aeb690 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 16 Dec 2013 17:21:03 +0100 Subject: [PATCH 267/286] gcc-wrapper: Use -isystem instead of -I This mostly matters for "gcc -MMD", which distinguishes between user and system header files. --- pkgs/build-support/gcc-wrapper/setup-hook.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/build-support/gcc-wrapper/setup-hook.sh b/pkgs/build-support/gcc-wrapper/setup-hook.sh index 513ab8053a7..298ade21d1f 100644 --- a/pkgs/build-support/gcc-wrapper/setup-hook.sh +++ b/pkgs/build-support/gcc-wrapper/setup-hook.sh @@ -1,6 +1,6 @@ addCVars () { if test -d $1/include; then - export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$1/include" + export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem $1/include" fi if test -d $1/lib64; then From e15fc83fc94adcf28b9816ecf6b907e46b9de57b Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Sat, 11 Jan 2014 07:54:35 -0600 Subject: [PATCH 268/286] Don't split paths with spaces setup.sh uses the anti-pattern `for f in $(find ...); do` in several places. `find` returns one path per line, but `for` splits its arguments by words, so paths which contain spaces are incorrectly split! The correct way is `find ... | while read f; do` --- pkgs/stdenv/generic/setup.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 12c5801d5eb..3dee8dc020b 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -575,7 +575,7 @@ configurePhase() { fi if [ -z "$dontFixLibtool" ]; then - for i in $(find . -name "ltmain.sh"); do + find . -iname "ltmain.sh" | while read i; do echo "fixing libtool script $i" fixLibtool $i done @@ -670,7 +670,7 @@ patchShebangs() { local oldInterpreterLine local newInterpreterLine - for f in $(find "$dir" -type f -perm +0100); do + find "$dir" -type f -perm +0100 | while read f; do if [ "$(head -1 "$f" | head -c +2)" != '#!' ]; then # missing shebang => not a script continue From bccc76f290a49c89ac75a8a8829d9e48210c170c Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 13 Jan 2014 17:05:07 +0100 Subject: [PATCH 269/286] pcre: update to version 8.34 --- pkgs/development/libraries/pcre/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/pcre/default.nix b/pkgs/development/libraries/pcre/default.nix index a8a89a4569c..51279701d4a 100644 --- a/pkgs/development/libraries/pcre/default.nix +++ b/pkgs/development/libraries/pcre/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, unicodeSupport ? true, cplusplusSupport ? true }: stdenv.mkDerivation rec { - name = "pcre-8.33"; + name = "pcre-8.34"; src = fetchurl { url = "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/${name}.tar.bz2"; - sha256 = "0y04pkrxjvhi30qpnb9ijgn6cjgv3k3lhq2zmw21r0b695x9a0y6"; + sha256 = "0gsqmsp0q0n3q0ba32gkjvgcsdy6nwidqa7sbxkbw817zzhkl15n"; }; # The compiler on Darwin crashes with an internal error while building the From 033374d60187442e55644002f20db7fd7111753d Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 13 Jan 2014 19:11:46 +0100 Subject: [PATCH 270/286] gcc: Fix building 4.5 and 4.6 --- pkgs/development/compilers/gcc/4.5/default.nix | 2 +- pkgs/development/compilers/gcc/4.6/default.nix | 2 +- pkgs/top-level/all-packages.nix | 10 ++++++++-- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.5/default.nix b/pkgs/development/compilers/gcc/4.5/default.nix index e63ff7947f6..9713164711f 100644 --- a/pkgs/development/compilers/gcc/4.5/default.nix +++ b/pkgs/development/compilers/gcc/4.5/default.nix @@ -212,7 +212,7 @@ stdenv.mkDerivation ({ ++ (optional (ppl != null) ppl) ++ (optional (cloogppl != null) cloogppl) ++ (optional (zlib != null) zlib) - ++ (optional (boehmgc != null) boehmgc) + ++ (optional langJava boehmgc) ++ (optionals langJava [zip unzip]) ++ (optionals javaAwtGtk ([gtk pkgconfig libart_lgpl] ++ xlibs)) ++ (optionals (cross != null) [binutilsCross]) diff --git a/pkgs/development/compilers/gcc/4.6/default.nix b/pkgs/development/compilers/gcc/4.6/default.nix index 35255d0af5b..796fc8fde53 100644 --- a/pkgs/development/compilers/gcc/4.6/default.nix +++ b/pkgs/development/compilers/gcc/4.6/default.nix @@ -434,7 +434,7 @@ stdenv.mkDerivation ({ passthru = { inherit langC langCC langAda langFortran langVhdl langGo version; }; - enableParallelBuilding = !langAda; + enableParallelBuilding = false; inherit (stdenv) is64bit; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4e322f6aef9..9c949357ae3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2437,11 +2437,14 @@ let profiledCompiler = true; })); - gcc45 = lowPrio (wrapGCC (makeOverridable (import ../development/compilers/gcc/4.5) { + gcc45 = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.5 { inherit fetchurl stdenv gmp mpfr mpc libelf zlib perl - ppl cloogppl gettext which noSysDirs; texinfo = texinfo4; + + ppl = null; + cloogppl = null; + # bootstrapping a profiled compiler does not work in the sheevaplug: # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43944 profiledCompiler = !stdenv.isArm; @@ -2460,6 +2463,9 @@ let gcc46 = lowPrio (wrapGCC (callPackage ../development/compilers/gcc/4.6 { inherit noSysDirs; + ppl = null; + cloog = null; + # bootstrapping a profiled compiler does not work in the sheevaplug: # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43944 profiledCompiler = false; From 67e391786476537e82a8f7dd2cf3daef801fce15 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Tue, 14 Jan 2014 13:36:25 +0100 Subject: [PATCH 271/286] gfortran-4.8: re-enable parallel building 86802e68ffd1981af92303a7a8a91a2723ca84ca added a patch that fixes the race condition with bconfig.h. --- pkgs/development/compilers/gcc/4.8/default.nix | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix index 8bd3ee14554..fa2e5d8f420 100644 --- a/pkgs/development/compilers/gcc/4.8/default.nix +++ b/pkgs/development/compilers/gcc/4.8/default.nix @@ -59,13 +59,8 @@ let version = "4.8.2"; /* gccinstall.info says that "parallel make is currently not supported since collisions in profile collecting may occur". - - Parallel make of gfortran is disabled because of an apparent race - condition concerning the generation of "bconfig.h". Please try and - re-enable parallel make for a later release of gfortran to check whether - the error has been fixed. */ - enableParallelBuilding = !profiledCompiler && !langFortran; + enableParallelBuilding = !profiledCompiler; patches = [] ++ optional enableParallelBuilding ./parallel-bconfig.patch From 5ad0728dfc0f1b147e5c0577ec7c2c2a76f0a538 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 14 Jan 2014 14:13:31 +0100 Subject: [PATCH 272/286] stdenv: In the fixupPhase, make the output writable first Cherry-picked from 1d11c1dc48a3849f447350681ebba9d8cb97b979 in the multiple-outputs branch. --- pkgs/stdenv/generic/setup.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 3dee8dc020b..47e90fb0560 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -288,9 +288,6 @@ stripDirs() { if [ -n "${dirs}" ]; then header "stripping (with flags $stripFlags) in $dirs" - for dir in $dirs; do - test -L "$dir" || chmod -R +rw "$dir" - done find $dirs -type f -print0 | xargs -0 ${xargsFlags:--r} strip $commonStripFlags $stripFlags || true stopNest fi @@ -735,6 +732,9 @@ installPhase() { fixupPhase() { runHook preFixup + # Make sure everything is writable so "strip" et al. work. + chmod -R u+w "$prefix" + # Put man/doc/info under $out/share. forceShare=${forceShare:=man doc info} if [ -n "$forceShare" ]; then From 7a6255e4e1747550bd811ef00a3e1bc953f11b40 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 14 Jan 2014 14:20:47 +0100 Subject: [PATCH 273/286] patchelf: Update to 0.8 This fixes a segfault in building Eclipse and the Android SDK. --- pkgs/development/tools/misc/patchelf/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/misc/patchelf/default.nix b/pkgs/development/tools/misc/patchelf/default.nix index 8626534c7db..06b5c2ef516 100644 --- a/pkgs/development/tools/misc/patchelf/default.nix +++ b/pkgs/development/tools/misc/patchelf/default.nix @@ -1,16 +1,18 @@ { stdenv, fetchurl }: stdenv.mkDerivation rec { - name = "patchelf-0.7"; + name = "patchelf-0.8"; src = fetchurl { url = "http://nixos.org/releases/patchelf/${name}/${name}.tar.bz2"; - sha256 = "61b96f455e6ccd1c1d7d159df7199c85ff6e8f9622d795a5420e418acfb8b808"; + sha256 = "c99f84d124347340c36707089ec8f70530abd56e7827c54d506eb4cc097a17e7"; }; meta = { homepage = http://nixos.org/patchelf.html; license = "GPL"; description = "A small utility to modify the dynamic linker and RPATH of ELF executables"; + maintainers = [ stdenv.lib.maintainers.eelco ]; + platforms = stdenv.lib.platforms.all; }; } From 86afcccecb02b340c157f07364b7168b4689f048 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 17 Jan 2014 12:13:20 +0100 Subject: [PATCH 274/286] sp-compat: Fix build You can't run fixupPhase before installPhase. http://hydra.nixos.org/build/8149119 --- pkgs/tools/text/sgml/opensp/compat.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/text/sgml/opensp/compat.nix b/pkgs/tools/text/sgml/opensp/compat.nix index 3e9d9152d36..16498281181 100644 --- a/pkgs/tools/text/sgml/opensp/compat.nix +++ b/pkgs/tools/text/sgml/opensp/compat.nix @@ -1,9 +1,9 @@ { stdenv, opensp }: stdenv.mkDerivation { - name = "sp-compat-${builtins.substring 7 100 opensp.name}"; + name = "sp-compat-${stdenv.lib.getVersion opensp}"; - phases = [ "fixupPhase" "installPhase" ]; + phases = [ "installPhase" "fixupPhase" ]; installPhase = '' mkdir -pv $out/bin From 48f87d5d2a0cd3670b77d01c82a089b535237c6a Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 17 Jan 2014 12:41:08 +0100 Subject: [PATCH 275/286] fixupPhase: Handle the case where $prefix doesn't exist http://hydra.nixos.org/build/8149154 --- pkgs/stdenv/generic/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 47e90fb0560..3a192b82028 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -733,7 +733,7 @@ fixupPhase() { runHook preFixup # Make sure everything is writable so "strip" et al. work. - chmod -R u+w "$prefix" + if [ -e "$prefix" ]; then chmod -R u+w "$prefix"; fi # Put man/doc/info under $out/share. forceShare=${forceShare:=man doc info} From 284833649192072959a335367374fc0a6ec667df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 17 Jan 2014 21:56:11 +0100 Subject: [PATCH 276/286] ghc-7.6.3: disable parallel building (fails on Hydra) --- pkgs/development/compilers/ghc/7.6.3.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/compilers/ghc/7.6.3.nix b/pkgs/development/compilers/ghc/7.6.3.nix index 427d21660b8..9135741e9f0 100644 --- a/pkgs/development/compilers/ghc/7.6.3.nix +++ b/pkgs/development/compilers/ghc/7.6.3.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { buildInputs = [ ghc perl gmp ncurses ]; - enableParallelBuilding = true; + enableParallelBuilding = false; # the same errors as 7.6.1 buildMK = '' libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp}/lib" From 3f9388436b5e029d0a73478659ea9e45135d0c3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 18 Jan 2014 17:06:56 +0100 Subject: [PATCH 277/286] tarball/release: change gnat44 (removed) into gnat --- pkgs/top-level/release-small.nix | 2 +- pkgs/top-level/release.nix | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix index 8a91954fdf5..213358bc8ce 100644 --- a/pkgs/top-level/release-small.nix +++ b/pkgs/top-level/release-small.nix @@ -55,7 +55,7 @@ with import ./release-lib.nix { inherit supportedSystems; }; ghdl = linux; glibc = linux; glibcLocales = linux; - gnat44 = linux; + gnat = linux; gnugrep = all; gnum4 = all; gnumake = all; diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix index 5ccdb6985f9..c0800c8cad1 100644 --- a/pkgs/top-level/release.nix +++ b/pkgs/top-level/release.nix @@ -126,7 +126,7 @@ let glibcLocales = linux; glxinfo = linux; gnash = linux; - gnat44 = linux; + gnat = linux; gnugrep = all; gnum4 = all; gnumake = all; From fe8b00e9fa6241f1ea477b1f8a480049ebed1f33 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Sat, 18 Jan 2014 11:49:59 -0500 Subject: [PATCH 278/286] gnu-efi: Fix build Signed-off-by: Shea Levy --- pkgs/development/libraries/gnu-efi/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/libraries/gnu-efi/default.nix b/pkgs/development/libraries/gnu-efi/default.nix index f741a0b4f34..07c3c668793 100644 --- a/pkgs/development/libraries/gnu-efi/default.nix +++ b/pkgs/development/libraries/gnu-efi/default.nix @@ -19,8 +19,8 @@ let version = "3.0u"; in stdenv.mkDerivation { platforms = ["x86_64-linux" "i686-linux"]; }; - buildFlags = [ - "CC=cc" + makeFlags = [ + "CC=gcc" "AS=as" "LD=ld" "AR=ar" @@ -29,12 +29,12 @@ let version = "3.0u"; in stdenv.mkDerivation { ]; buildPhase = '' - make $buildFlags - make $buildFlags -C apps clean all + make $makeFlags + make $makeFlags -C apps clean all ''; installPhase = '' - make PREFIX="$out" install + make PREFIX="$out" $makeFlags install mkdir -pv $out/share/gnu-efi install -D -m644 apps/*.efi $out/share/gnu-efi ''; From 6072a289fc946d76649696f1c4e7f024423a767e Mon Sep 17 00:00:00 2001 From: Mathijs Kwik Date: Sat, 18 Jan 2014 19:02:45 +0100 Subject: [PATCH 279/286] llvm: no-rule-aarch64.patch is only needed on 3.3 the fix just missed 3.3 but it's in 3.4 see bottom of: http://llvm.org/bugs/show_bug.cgi?id=16625 --- pkgs/development/compilers/llvm/default.nix | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/pkgs/development/compilers/llvm/default.nix b/pkgs/development/compilers/llvm/default.nix index d11105576bf..fc5b5ff8d96 100644 --- a/pkgs/development/compilers/llvm/default.nix +++ b/pkgs/development/compilers/llvm/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, perl, groff, cmake, python, libffi, binutils, version }: -with { inherit (stdenv.lib) optional; }; +with { inherit (stdenv.lib) optional optionals; }; assert version == "3.4" || version == "3.3"; @@ -14,11 +14,10 @@ stdenv.mkDerivation rec { else /*3.3*/ "0y3mfbb5qzcpw3v5qncn69x1hdrrrfirgs82ypi2annhf0g6nxk8"; }; - patches = - # The default rlimits in 3.3 are too low for shared libraries. - optional (version == "3.3") ./more-memory-for-bugpoint.patch - ++ [ ./no-rule-aarch64.patch ] # http://llvm.org/bugs/show_bug.cgi?id=16625 - ; + patches = optionals (version == "3.3") [ + ./more-memory-for-bugpoint.patch # The default rlimits in 3.3 are too low for shared libraries. + ./no-rule-aarch64.patch # http://llvm.org/bugs/show_bug.cgi?id=16625 + ]; # libffi was propagated before, but it wasn't even being used, so # unless something needs it just an input is fine. From 177667eea987898097e854a54962ff90bbf4fa35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sun, 19 Jan 2014 11:47:58 +0100 Subject: [PATCH 280/286] xxdiff, qt5: use bison2 --- pkgs/top-level/all-packages.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5ebd12b7e1c..d831463406c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3743,7 +3743,9 @@ let xc3sprog = callPackage ../development/tools/misc/xc3sprog { }; - xxdiff = callPackage ../development/tools/misc/xxdiff { }; + xxdiff = callPackage ../development/tools/misc/xxdiff { + bison = bison2; + }; yacc = bison; @@ -5378,6 +5380,7 @@ let cups = if stdenv.isLinux then cups else null; # GNOME dependencies are not used unless gtkStyle == true inherit (gnome) libgnomeui GConf gnome_vfs; + bison = bison2; # error: too few arguments to function 'int yylex(... }; qt5Full = qt5.override { From 204ec0cd43d12fd56b3a9d28396321cc56da5fd3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 20 Jan 2014 22:11:14 +0100 Subject: [PATCH 281/286] stdenv/setup.sh: add .gz extension to links to .gz man pages The links weren't broken since 0a44a09, but man showed garbage. Tested on several packages (sudo, dosfstools, xz). --- pkgs/stdenv/generic/setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 3a192b82028..4740c638633 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -768,7 +768,7 @@ fixupPhase() { done for f in "$out"/share/man/*/* "$out"/share/man/*/*/*; do if [ -L "$f" -a -f `readlink -f "$f"`.gz ]; then - ln -sf `readlink "$f"`.gz "$f" + ln -sf `readlink "$f"`.gz "$f".gz && rm "$f" fi done unset GLOBIGNORE From fea2266290d64b11a3bf02bda8764eb6e3d8b7a1 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Mon, 20 Jan 2014 20:19:53 -0500 Subject: [PATCH 282/286] llvm: Split llvmFull into separate derivations Now most packages in the llvm suite are built as separate derivations. The exceptions are: * compiler-rt must currently be built with llvm. This increases llvm's size by 6 MB * clang-tools-extra must be built with clang In addition, the top-level llvm attribute is defaulted to llvm 3.4, and llvm 3.3 must be accessed by the llvm_33 attribute. This is to make the out-of-date packages obvious in the hope that eventually all will be updated to work with 3.4 and 3.3 can be removed. I think we should keep this policy in the future (latest llvm gets top-level name, the rest are versioned until they can be removed). The llvm packages (except libc++, which exception I will try to remove on the next update) can all be accessed via the llvmPackages attribute, and there are also aliases for the packages that already existed (llvm, clang, and dragonegg). Signed-off-by: Shea Levy --- .../emacs-clang-complete-async/default.nix | 4 +- .../llvm/{default.nix => 3.3/llvm.nix} | 28 +++--- .../{ => 3.3}/more-memory-for-bugpoint.patch | 0 .../llvm/{ => 3.3}/no-rule-aarch64.patch | 0 .../llvm/3.4/clang-separate-build.patch | 8 ++ pkgs/development/compilers/llvm/3.4/clang.nix | 41 +++++++++ .../compilers/llvm/3.4/default.nix | 25 ++++++ .../compilers/llvm/{ => 3.4}/dragonegg.nix | 10 +-- pkgs/development/compilers/llvm/3.4/lld.nix | 31 +++++++ pkgs/development/compilers/llvm/3.4/lldb.nix | 44 +++++++++ .../llvm/3.4/llvm-separate-build.patch | 12 +++ pkgs/development/compilers/llvm/3.4/llvm.nix | 55 ++++++++++++ .../llvm/3.4/polly-separate-build.patch | 12 +++ pkgs/development/compilers/llvm/3.4/polly.nix | 27 ++++++ pkgs/development/compilers/llvm/full.nix | 89 ------------------- pkgs/development/libraries/libc++/default.nix | 4 +- pkgs/top-level/all-packages.nix | 25 +++--- 17 files changed, 282 insertions(+), 133 deletions(-) rename pkgs/development/compilers/llvm/{default.nix => 3.3/llvm.nix} (55%) rename pkgs/development/compilers/llvm/{ => 3.3}/more-memory-for-bugpoint.patch (100%) rename pkgs/development/compilers/llvm/{ => 3.3}/no-rule-aarch64.patch (100%) create mode 100644 pkgs/development/compilers/llvm/3.4/clang-separate-build.patch create mode 100644 pkgs/development/compilers/llvm/3.4/clang.nix create mode 100644 pkgs/development/compilers/llvm/3.4/default.nix rename pkgs/development/compilers/llvm/{ => 3.4}/dragonegg.nix (66%) create mode 100644 pkgs/development/compilers/llvm/3.4/lld.nix create mode 100644 pkgs/development/compilers/llvm/3.4/lldb.nix create mode 100644 pkgs/development/compilers/llvm/3.4/llvm-separate-build.patch create mode 100644 pkgs/development/compilers/llvm/3.4/llvm.nix create mode 100644 pkgs/development/compilers/llvm/3.4/polly-separate-build.patch create mode 100644 pkgs/development/compilers/llvm/3.4/polly.nix delete mode 100644 pkgs/development/compilers/llvm/full.nix diff --git a/pkgs/applications/editors/emacs-modes/emacs-clang-complete-async/default.nix b/pkgs/applications/editors/emacs-modes/emacs-clang-complete-async/default.nix index 6d10244a879..b23c6da6123 100644 --- a/pkgs/applications/editors/emacs-modes/emacs-clang-complete-async/default.nix +++ b/pkgs/applications/editors/emacs-modes/emacs-clang-complete-async/default.nix @@ -1,4 +1,4 @@ -{ clangStdenv, fetchgit, llvmFull }: +{ clangStdenv, fetchgit, llvm, clang }: clangStdenv.mkDerivation { name = "emacs-clang-complete-async-20130218"; @@ -8,7 +8,7 @@ clangStdenv.mkDerivation { sha256 = "1c8zqi6axbsb951azz9iqx3j52j30nd9ypv396hvids3g02cirrf"; }; - buildInputs = [ llvmFull ]; + buildInputs = [ llvm clang.clang ]; installPhase = '' mkdir -p $out/bin diff --git a/pkgs/development/compilers/llvm/default.nix b/pkgs/development/compilers/llvm/3.3/llvm.nix similarity index 55% rename from pkgs/development/compilers/llvm/default.nix rename to pkgs/development/compilers/llvm/3.3/llvm.nix index 73eb7135ca4..e40014a960c 100644 --- a/pkgs/development/compilers/llvm/default.nix +++ b/pkgs/development/compilers/llvm/3.3/llvm.nix @@ -1,27 +1,20 @@ -{ stdenv, fetchurl, perl, groff, cmake, python, libffi, binutils, version }: - -with { inherit (stdenv.lib) optional optionals; }; - -assert version == "3.4" || version == "3.3"; - -stdenv.mkDerivation rec { +{ stdenv, fetchurl, perl, groff, cmake, python, libffi, binutils }: +let + version = "3.3"; +in stdenv.mkDerivation rec { name = "llvm-${version}"; src = fetchurl { - url = "http://llvm.org/releases/${version}/llvm-${version}.src.tar.gz"; - sha256 = - if version == "3.4" then "0a169ba045r4apb9cv6ncrwl83l7yiajnzirkcdlhj1cd4nn3995" - else /*3.3*/ "0y3mfbb5qzcpw3v5qncn69x1hdrrrfirgs82ypi2annhf0g6nxk8"; + url = "http://llvm.org/releases/${version}/llvm-${version}.src.tar.gz"; + sha256 = "0y3mfbb5qzcpw3v5qncn69x1hdrrrfirgs82ypi2annhf0g6nxk8"; }; - patches = optionals (version == "3.3") [ + patches = [ ./more-memory-for-bugpoint.patch # The default rlimits in 3.3 are too low for shared libraries. ./no-rule-aarch64.patch # http://llvm.org/bugs/show_bug.cgi?id=16625 ]; - # libffi was propagated before, but it wasn't even being used, so - # unless something needs it just an input is fine. - buildInputs = [ perl groff cmake python libffi ]; # ToDo: polly, libc++; enable cxx11? + buildInputs = [ perl groff cmake python libffi ]; # hacky fix: created binaries need to be run before installation preBuild = let LD = if stdenv.isDarwin then "DYLD" else "LD"; @@ -31,9 +24,8 @@ stdenv.mkDerivation rec { "-DCMAKE_BUILD_TYPE=Release" "-DLLVM_ENABLE_FFI=ON" "-DLLVM_BINUTILS_INCDIR=${binutils}/include" - ] - ++ optional (version == "3.3") "-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=R600" # for mesa - ++ optional (!isDarwin) "-DBUILD_SHARED_LIBS=ON"; + "-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=R600" # for mesa + ] ++ stdenv.lib.optional (!isDarwin) "-DBUILD_SHARED_LIBS=ON"; enableParallelBuilding = true; diff --git a/pkgs/development/compilers/llvm/more-memory-for-bugpoint.patch b/pkgs/development/compilers/llvm/3.3/more-memory-for-bugpoint.patch similarity index 100% rename from pkgs/development/compilers/llvm/more-memory-for-bugpoint.patch rename to pkgs/development/compilers/llvm/3.3/more-memory-for-bugpoint.patch diff --git a/pkgs/development/compilers/llvm/no-rule-aarch64.patch b/pkgs/development/compilers/llvm/3.3/no-rule-aarch64.patch similarity index 100% rename from pkgs/development/compilers/llvm/no-rule-aarch64.patch rename to pkgs/development/compilers/llvm/3.3/no-rule-aarch64.patch diff --git a/pkgs/development/compilers/llvm/3.4/clang-separate-build.patch b/pkgs/development/compilers/llvm/3.4/clang-separate-build.patch new file mode 100644 index 00000000000..5fb67f169f4 --- /dev/null +++ b/pkgs/development/compilers/llvm/3.4/clang-separate-build.patch @@ -0,0 +1,8 @@ +diff -Naur clang-3.4-orig/tools/extra/CMakeLists.txt clang-3.4/tools/extra/CMakeLists.txt +--- clang-3.4-orig/tools/extra/CMakeLists.txt 2013-11-07 19:08:23.000000000 -0500 ++++ clang-3.4/tools/extra/CMakeLists.txt 2014-01-20 11:47:22.678435223 -0500 +@@ -1,3 +1,4 @@ ++include(CheckLibraryExists) + check_library_exists(edit el_init "" HAVE_LIBEDIT) + + add_subdirectory(clang-apply-replacements) diff --git a/pkgs/development/compilers/llvm/3.4/clang.nix b/pkgs/development/compilers/llvm/3.4/clang.nix new file mode 100644 index 00000000000..22a1e112b9d --- /dev/null +++ b/pkgs/development/compilers/llvm/3.4/clang.nix @@ -0,0 +1,41 @@ +{ stdenv, fetch, cmake, libxml2, libedit, llvm, version }: + +stdenv.mkDerivation { + name = "clang-${version}"; + + unpackPhase = '' + unpackFile ${fetch "clang" "06rb4j1ifbznl3gfhl98s7ilj0ns01p7y7zap4p7ynmqnc6pia92"} + mv clang-${version} clang + sourceRoot=$PWD/clang + unpackFile ${fetch "clang-tools-extra" "1d1822mwxxl9agmyacqjw800kzz5x8xr0sdmi8fgx5xfa5sii1ds"} + mv clang-tools-extra-${version} $sourceRoot/tools/extra + # !!! Hopefully won't be needed for 3.5 + unpackFile ${llvm.src} + export cmakeFlags="$cmakeFlags -DCLANG_PATH_TO_LLVM_SOURCE=$PWD/llvm-${version}" + (cd llvm-${version} && patch -Np1 -i ${./llvm-separate-build.patch}) + ''; + + patches = [ ./clang-separate-build.patch ]; + + buildInputs = [ cmake libedit libxml2 ]; + + cmakeFlags = [ + "-DCMAKE_BUILD_TYPE=Release" + "-DGCC_INSTALL_PREFIX=${stdenv.gcc.gcc}" + "-DC_INCLUDE_DIRS=${stdenv.gcc.libc}/include/" + "-DCMAKE_CXX_FLAGS=-std=c++11" + "-DCLANG_PATH_TO_LLVM_BUILD=${llvm}" + ]; + + passthru.gcc = stdenv.gcc.gcc; + + enableParallelBuilding = true; + + meta = { + description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler"; + homepage = http://llvm.org/; + license = stdenv.lib.licenses.bsd3; + maintainers = [ stdenv.lib.maintainers.shlevy ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/development/compilers/llvm/3.4/default.nix b/pkgs/development/compilers/llvm/3.4/default.nix new file mode 100644 index 00000000000..0a8a72f59a9 --- /dev/null +++ b/pkgs/development/compilers/llvm/3.4/default.nix @@ -0,0 +1,25 @@ +{ newScope, stdenv, isl, fetchurl }: +let + callPackage = newScope (self // { inherit stdenv isl version fetch; }); + + version = "3.4"; + + fetch = name: sha256: fetchurl { + url = "http://llvm.org/releases/${version}/${name}-${version}.src.tar.gz"; + inherit sha256; + }; + + self = { + llvm = callPackage ./llvm.nix {}; + + clang = callPackage ./clang.nix {}; + + lld = callPackage ./lld.nix {}; + + lldb = callPackage ./lldb.nix {}; + + polly = callPackage ./polly.nix {}; + + dragonegg = callPackage ./dragonegg.nix {}; + }; +in self diff --git a/pkgs/development/compilers/llvm/dragonegg.nix b/pkgs/development/compilers/llvm/3.4/dragonegg.nix similarity index 66% rename from pkgs/development/compilers/llvm/dragonegg.nix rename to pkgs/development/compilers/llvm/3.4/dragonegg.nix index 38d3546d981..f8ea44793de 100644 --- a/pkgs/development/compilers/llvm/dragonegg.nix +++ b/pkgs/development/compilers/llvm/3.4/dragonegg.nix @@ -1,13 +1,9 @@ -{stdenv, fetchurl, llvm, gmp, mpfr, mpc, ncurses, zlib}: +{stdenv, fetch, llvm, gmp, mpfr, mpc, ncurses, zlib, version}: stdenv.mkDerivation rec { - version = "3.4"; name = "dragonegg-${version}"; - src = fetchurl { - url = "http://llvm.org/releases/${version}/${name}.src.tar.gz"; - sha256 = "1733czbvby1ww3xkwcwmm0km0bpwhfyxvf56wb0zv5gksp3kbgrl"; - }; + src = fetch "dragonegg" "1733czbvby1ww3xkwcwmm0km0bpwhfyxvf56wb0zv5gksp3kbgrl"; # The gcc the plugin will be built for (the same used building dragonegg) GCC = "gcc"; @@ -24,7 +20,7 @@ stdenv.mkDerivation rec { homepage = http://dragonegg.llvm.org/; description = "gcc plugin that replaces gcc's optimizers and code generators by those in LLVM"; license = "GPLv2+"; - maintainers = with stdenv.lib.maintainers; [viric]; + maintainers = with stdenv.lib.maintainers; [viric shlevy]; platforms = with stdenv.lib.platforms; linux; }; } diff --git a/pkgs/development/compilers/llvm/3.4/lld.nix b/pkgs/development/compilers/llvm/3.4/lld.nix new file mode 100644 index 00000000000..22eb02a0e35 --- /dev/null +++ b/pkgs/development/compilers/llvm/3.4/lld.nix @@ -0,0 +1,31 @@ +{ stdenv, fetch, cmake, llvm, ncurses, zlib, python, version }: + +stdenv.mkDerivation { + name = "lld-${version}"; + + src = fetch "lld" "1sd4scqynryfrmcc4h0ljgwn2dgjmbbmf38z50ya6l0janpd2nxz"; + + preUnpack = '' + # !!! Hopefully won't be needed for 3.5 + unpackFile ${llvm.src} + export cmakeFlags="$cmakeFlags -DLLD_PATH_TO_LLVM_SOURCE=$PWD/llvm-${version}" + ''; + + buildInputs = [ cmake ncurses zlib python ]; + + cmakeFlags = [ + "-DCMAKE_BUILD_TYPE=Release" + "-DCMAKE_CXX_FLAGS=-std=c++11" + "-DLLD_PATH_TO_LLVM_BUILD=${llvm}" + ]; + + enableParallelBuilding = true; + + meta = { + description = "A set of modular code for creating linker tools"; + homepage = http://llvm.org/; + license = stdenv.lib.licenses.bsd3; + maintainers = [ stdenv.lib.maintainers.shlevy ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/development/compilers/llvm/3.4/lldb.nix b/pkgs/development/compilers/llvm/3.4/lldb.nix new file mode 100644 index 00000000000..7b35119a93f --- /dev/null +++ b/pkgs/development/compilers/llvm/3.4/lldb.nix @@ -0,0 +1,44 @@ +{ stdenv +, fetch +, cmake +, zlib +, ncurses +, swig +, which +, libedit +, llvm +, clang +, python +, version +}: + +stdenv.mkDerivation { + name = "lldb-${version}"; + + src = fetch "lldb" "0h8cmjrhjhigk7k2qll1pcf6jfgmbdzkzfz2i048pkfg851s0x4g"; + + patchPhase = '' + sed -i 's|/usr/bin/env||' \ + scripts/Python/finish-swig-Python-LLDB.sh \ + scripts/Python/build-swig-Python.sh + ''; + + buildInputs = [ cmake python which swig ncurses zlib libedit ]; + + cmakeFlags = [ + "-DCMAKE_BUILD_TYPE=Release" + "-DCMAKE_CXX_FLAGS=-std=c++11" + "-DLLDB_PATH_TO_LLVM_BUILD=${llvm}" + "-DLLDB_PATH_TO_CLANG_BUILD=${clang}" + ]; + + enableParallelBuilding = true; + + meta = { + description = "A next-generation high-performance debugger"; + homepage = http://llvm.org/; + license = stdenv.lib.licenses.bsd3; + maintainers = [ stdenv.lib.maintainers.shlevy ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/development/compilers/llvm/3.4/llvm-separate-build.patch b/pkgs/development/compilers/llvm/3.4/llvm-separate-build.patch new file mode 100644 index 00000000000..abfc11513cd --- /dev/null +++ b/pkgs/development/compilers/llvm/3.4/llvm-separate-build.patch @@ -0,0 +1,12 @@ +diff -Naur llvm-3.4-orig/cmake/modules/TableGen.cmake llvm-3.4/cmake/modules/TableGen.cmake +--- llvm-3.4-orig/cmake/modules/TableGen.cmake 2013-10-06 21:00:07.000000000 -0400 ++++ llvm-3.4/cmake/modules/TableGen.cmake 2014-01-20 13:06:55.273022149 -0500 +@@ -78,8 +78,6 @@ + endif() + + macro(add_tablegen target project) +- set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LLVM_TOOLS_BINARY_DIR}) +- + set(${target}_OLD_LLVM_LINK_COMPONENTS ${LLVM_LINK_COMPONENTS}) + set(LLVM_LINK_COMPONENTS ${LLVM_LINK_COMPONENTS} TableGen) + add_llvm_utility(${target} ${ARGN}) diff --git a/pkgs/development/compilers/llvm/3.4/llvm.nix b/pkgs/development/compilers/llvm/3.4/llvm.nix new file mode 100644 index 00000000000..4947bdca2a9 --- /dev/null +++ b/pkgs/development/compilers/llvm/3.4/llvm.nix @@ -0,0 +1,55 @@ +{ stdenv +, fetch +, perl +, groff +, cmake +, python +, libffi +, binutils +, libxml2 +, valgrind +, ncurses +, version +}: + +let + src = fetch "llvm" "0a169ba045r4apb9cv6ncrwl83l7yiajnzirkcdlhj1cd4nn3995"; +in stdenv.mkDerivation rec { + name = "llvm-${version}"; + + unpackPhase = '' + unpackFile ${src} + mv llvm-${version} llvm + sourceRoot=$PWD/llvm + unpackFile ${fetch "compiler-rt" "0p5b6varxdqn7q3n77xym63hhq4qqxd2981pfpa65r1w72qqjz7k"} + mv compiler-rt-${version} $sourceRoot/projects/compiler-rt + ''; + + buildInputs = [ perl groff cmake libxml2 python libffi valgrind ncurses ]; + + # hacky fix: created binaries need to be run before installation + preBuild = '' + mkdir -p $out/ + ln -sv $PWD/lib $out + ''; + postBuild = "rm -fR $out"; + + cmakeFlags = with stdenv; [ + "-DCMAKE_BUILD_TYPE=Release" + "-DLLVM_ENABLE_FFI=ON" + "-DLLVM_BINUTILS_INCDIR=${binutils}/include" + "-DCMAKE_CXX_FLAGS=-std=c++11" + ] ++ stdenv.lib.optional (!isDarwin) "-DBUILD_SHARED_LIBS=ON"; + + enableParallelBuilding = true; + + passthru.src = src; + + meta = { + description = "Collection of modular and reusable compiler and toolchain technologies"; + homepage = http://llvm.org/; + license = stdenv.lib.licenses.bsd3; + maintainers = with stdenv.lib.maintainers; [ shlevy lovek323 raskin viric ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/development/compilers/llvm/3.4/polly-separate-build.patch b/pkgs/development/compilers/llvm/3.4/polly-separate-build.patch new file mode 100644 index 00000000000..618dd4dc3b1 --- /dev/null +++ b/pkgs/development/compilers/llvm/3.4/polly-separate-build.patch @@ -0,0 +1,12 @@ +diff -Naur polly-3.4-orig/CMakeLists.txt polly-3.4/CMakeLists.txt +--- polly-3.4-orig/CMakeLists.txt 2013-11-21 06:51:46.000000000 -0500 ++++ polly-3.4/CMakeLists.txt 2014-01-20 18:49:34.907919933 -0500 +@@ -53,7 +53,7 @@ + execute_process(COMMAND "${LLVM_INSTALL_ROOT}/bin/llvm-config" --cxxflags + OUTPUT_VARIABLE LLVM_CXX_FLAGS + OUTPUT_STRIP_TRAILING_WHITESPACE) +- set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} ${LLVM_CXX_FLAGS}) ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${LLVM_CXX_FLAGS}") + endif(NOT DEFINED LLVM_MAIN_SRC_DIR) + + set(POLLY_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}) diff --git a/pkgs/development/compilers/llvm/3.4/polly.nix b/pkgs/development/compilers/llvm/3.4/polly.nix new file mode 100644 index 00000000000..61721ffad67 --- /dev/null +++ b/pkgs/development/compilers/llvm/3.4/polly.nix @@ -0,0 +1,27 @@ +{ stdenv, fetch, cmake, isl, python, gmp, llvm, version }: + +stdenv.mkDerivation { + name = "polly-${version}"; + + src = fetch "polly" "1rqflmgzg1vzjm0r32c5ck8x3q0qm3g0hh8ggbjazh6x7nvmy6lz"; + + patches = [ ./polly-separate-build.patch ]; + + buildInputs = [ cmake isl python gmp ]; + + cmakeFlags = [ + "-DCMAKE_BUILD_TYPE=Release" + "-DCMAKE_CXX_FLAGS=-std=c++11" + "-DLLVM_INSTALL_ROOT=${llvm}" + ]; + + enableParallelBuilding = true; + + meta = { + description = "A polyhedral optimizer for llvm"; + homepage = http://llvm.org/; + license = stdenv.lib.licenses.bsd3; + maintainers = [ stdenv.lib.maintainers.shlevy ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/development/compilers/llvm/full.nix b/pkgs/development/compilers/llvm/full.nix deleted file mode 100644 index 9c63502d8cd..00000000000 --- a/pkgs/development/compilers/llvm/full.nix +++ /dev/null @@ -1,89 +0,0 @@ -{ stdenv -, fetchurl -, perl, groff -, cmake -, libxml2 -, python -, libffi -, zlib -, ncurses -, isl -, gmp -, doxygen -, binutils -, swig -, which -, libedit -, valgrind -}: - -let - version = "3.4"; - - fetch = name: sha256: fetchurl { - url = "http://llvm.org/releases/${version}/${name}-${version}.src.tar.gz"; - inherit sha256; - }; - - inherit (stdenv.lib) concatStrings mapAttrsToList; -in stdenv.mkDerivation { - name = "llvm-full-${version}"; - - unpackPhase = '' - unpackFile ${fetch "llvm" "0a169ba045r4apb9cv6ncrwl83l7yiajnzirkcdlhj1cd4nn3995"} - mv llvm-${version} llvm - sourceRoot=$PWD/llvm - ${concatStrings (mapAttrsToList (name: { location, sha256 }: '' - unpackFile ${fetch name sha256} - mv ${name}-${version} $sourceRoot/${location} - '') { - clang = { location = "tools/clang"; sha256 = "06rb4j1ifbznl3gfhl98s7ilj0ns01p7y7zap4p7ynmqnc6pia92"; }; - clang-tools-extra = { location = "tools/clang/tools/extra"; sha256 = "1d1822mwxxl9agmyacqjw800kzz5x8xr0sdmi8fgx5xfa5sii1ds"; }; - compiler-rt = { location = "projects/compiler-rt"; sha256 = "0p5b6varxdqn7q3n77xym63hhq4qqxd2981pfpa65r1w72qqjz7k"; }; - lld = { location = "tools/lld"; sha256 = "1sd4scqynryfrmcc4h0ljgwn2dgjmbbmf38z50ya6l0janpd2nxz"; }; - lldb = { location = "tools/lldb"; sha256 = "0h8cmjrhjhigk7k2qll1pcf6jfgmbdzkzfz2i048pkfg851s0x4g"; }; - polly = { location = "tools/polly"; sha256 = "1rqflmgzg1vzjm0r32c5ck8x3q0qm3g0hh8ggbjazh6x7nvmy6lz"; }; - })} - sed -i 's|/usr/bin/env||' \ - $sourceRoot/tools/lldb/scripts/Python/finish-swig-Python-LLDB.sh \ - $sourceRoot/tools/lldb/scripts/Python/build-swig-Python.sh - ''; - - buildInputs = [ perl - groff - cmake - libxml2 - python - libffi - zlib - ncurses - isl - gmp - doxygen - swig - which - libedit - valgrind - ]; - - cmakeFlags = [ - "-DCMAKE_BUILD_TYPE=Release" - "-DLLVM_ENABLE_FFI=ON" - "-DGCC_INSTALL_PREFIX=${stdenv.gcc.gcc}" - "-DC_INCLUDE_DIRS=${stdenv.gcc.libc}/include/" - "-DLLVM_BINUTILS_INCDIR=${binutils}/include" - "-DCMAKE_CXX_FLAGS=-std=c++11" - ]; - - passthru.gcc = stdenv.gcc.gcc; - - enableParallelBuilding = true; - - meta = { - description = "Collection of modular and reusable compiler and toolchain technologies"; - homepage = http://llvm.org/; - license = stdenv.lib.licenses.bsd3; - maintainers = [ stdenv.lib.maintainers.shlevy ]; - platforms = stdenv.lib.platforms.all; - }; -} diff --git a/pkgs/development/libraries/libc++/default.nix b/pkgs/development/libraries/libc++/default.nix index 964d3727f8f..70da4462486 100644 --- a/pkgs/development/libraries/libc++/default.nix +++ b/pkgs/development/libraries/libc++/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, fetchsvn, cmake, libcxxabi }: +{ stdenv, fetchurl, fetchsvn, cmake, libcxxabi, python }: let version = "3.4"; @@ -11,7 +11,7 @@ in stdenv.mkDerivation rec { sha256 = "1sqd5qhqj7qnn9zjxx9bv7ky4f7xgmh9sbgd53y1kszhg41217xx"; }; - buildInputs = [ cmake libcxxabi ]; + buildInputs = [ cmake libcxxabi python ]; cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" "-DLIBCXX_LIBCXXABI_INCLUDE_PATHS=${libcxxabi}/include" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 897fae64af5..d58fda4e52f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2298,12 +2298,9 @@ let ccl = builderDefsPackage ../development/compilers/ccl {}; - clang = wrapClang llvmFull; + clang = wrapClang llvmPackages.clang; - llvmFullSelf = clangWrapSelf (llvmFull.override { - - stdenv = libcxxStdenv; - }); + clangSelf = clangWrapSelf llvmPackagesSelf.clang; clangWrapSelf = build: (import ../build-support/clang-wrapper) { clang = build; @@ -2318,7 +2315,7 @@ let #Use this instead of stdenv to build with clang clangStdenv = lowPrio (stdenvAdapters.overrideGCC stdenv clang); - libcxxStdenv = stdenvAdapters.overrideGCC stdenv (clangWrapSelf llvmFull); + libcxxStdenv = stdenvAdapters.overrideGCC stdenv (clangWrapSelf llvmPackages.clang); clean = callPackage ../development/compilers/clean { }; @@ -2751,6 +2748,7 @@ let julia = callPackage ../development/compilers/julia { liblapack = liblapack.override {shared = true;}; + llvm = llvm_33; }; lazarus = builderDefsPackage (import ../development/compilers/fpc/lazarus.nix) { @@ -2761,17 +2759,14 @@ let lessc = callPackage ../development/compilers/lessc { }; - llvm = llvm_33; - llvm_34 = callPackage ../development/compilers/llvm { - version = "3.4"; + llvm = llvmPackages.llvm; + llvm_33 = callPackage ../development/compilers/llvm/3.3/llvm.nix { stdenv = if stdenv.isDarwin then stdenvAdapters.overrideGCC stdenv gccApple else stdenv; }; - llvm_33 = llvm_34.override { version = "3.3"; }; - llvmFull = callPackage ../development/compilers/llvm/full.nix { - isl = isl_0_12; - }; + llvmPackages = recurseIntoAttrs (import ../development/compilers/llvm/3.4 { inherit newScope stdenv fetchurl; isl = isl_0_12; }); + llvmPackagesSelf = recurseIntoAttrs (import ../development/compilers/llvm/3.4 { inherit newScope fetchurl; isl = isl_0_12; stdenv = libcxxStdenv; }); mentorToolchains = recurseIntoAttrs ( callPackage_i686 ../development/compilers/mentor {} @@ -3961,7 +3956,7 @@ let dssi = callPackage ../development/libraries/dssi {}; - dragonegg = callPackage ../development/compilers/llvm/dragonegg.nix { llvm = llvmFull; }; + dragonegg = llvmPackages.dragonegg; dxflib = callPackage ../development/libraries/dxflib {}; @@ -5084,7 +5079,7 @@ let mesaSupported = lib.elem system lib.platforms.mesaPlatforms; - mesa_original = callPackage ../development/libraries/mesa { }; + mesa_original = callPackage ../development/libraries/mesa { llvm = llvm_33; }; mesa_noglu = if stdenv.isDarwin then darwinX11AndOpenGL // { driverLink = mesa_noglu; } else mesa_original; From 407c60fdf9d5b6ad97e5b2d24e779815e28d7f3f Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Mon, 20 Jan 2014 20:33:02 -0500 Subject: [PATCH 283/286] Fix tarball Signed-off-by: Shea Levy --- pkgs/development/compilers/llvm/3.4/clang.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/compilers/llvm/3.4/clang.nix b/pkgs/development/compilers/llvm/3.4/clang.nix index 22a1e112b9d..6f174a411cb 100644 --- a/pkgs/development/compilers/llvm/3.4/clang.nix +++ b/pkgs/development/compilers/llvm/3.4/clang.nix @@ -21,11 +21,11 @@ stdenv.mkDerivation { cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" - "-DGCC_INSTALL_PREFIX=${stdenv.gcc.gcc}" - "-DC_INCLUDE_DIRS=${stdenv.gcc.libc}/include/" "-DCMAKE_CXX_FLAGS=-std=c++11" "-DCLANG_PATH_TO_LLVM_BUILD=${llvm}" - ]; + ] ++ + (stdenv.lib.optional (stdenv.gcc.libc != null) "-DC_INCLUDE_DIRS=${stdenv.gcc.libc}/include") ++ + (stdenv.lib.optional (stdenv.gcc.gcc != null) "-DGCC_INSTALL_PREFIX=${stdenv.gcc.gcc}"); passthru.gcc = stdenv.gcc.gcc; From 744e9fd81add772c0d6e3a710203799031a09c23 Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Mon, 20 Jan 2014 20:42:49 -0500 Subject: [PATCH 284/286] Don't include llvm self-built packages in nix-env -qa/nix-env -i Signed-off-by: Shea Levy --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d58fda4e52f..1313ad12ba1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2766,7 +2766,7 @@ let else stdenv; }; llvmPackages = recurseIntoAttrs (import ../development/compilers/llvm/3.4 { inherit newScope stdenv fetchurl; isl = isl_0_12; }); - llvmPackagesSelf = recurseIntoAttrs (import ../development/compilers/llvm/3.4 { inherit newScope fetchurl; isl = isl_0_12; stdenv = libcxxStdenv; }); + llvmPackagesSelf = import ../development/compilers/llvm/3.4 { inherit newScope fetchurl; isl = isl_0_12; stdenv = libcxxStdenv; }; mentorToolchains = recurseIntoAttrs ( callPackage_i686 ../development/compilers/mentor {} From 8ad41b92cfd604e4f5ab487ad0f1784f1fc9773c Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 21 Jan 2014 09:59:50 +0100 Subject: [PATCH 285/286] nixUnstable: Update to 1.7pre3327_0e2ca26 Also fixes disappeared tarball. --- pkgs/tools/package-management/nix/unstable.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/package-management/nix/unstable.nix b/pkgs/tools/package-management/nix/unstable.nix index aad734cd619..a340d51fd7d 100644 --- a/pkgs/tools/package-management/nix/unstable.nix +++ b/pkgs/tools/package-management/nix/unstable.nix @@ -5,11 +5,11 @@ }: stdenv.mkDerivation rec { - name = "nix-1.7pre3319_f4013b6"; + name = "nix-1.7pre3327_0e2ca26"; src = fetchurl { - url = "http://hydra.nixos.org/build/7848540/download/5/${name}.tar.xz"; - sha256 = "0f9095aabe3399436a75162c046fdc1e4d0c1e9a98f7d8ffcd3d910b19c8c265"; + url = "http://hydra.nixos.org/build/8316406/download/5/${name}.tar.xz"; + sha256 = "52cc082f4ce8ec3c316f032c0201cc76980df2845b15714e71acb2ef7715f1de"; }; nativeBuildInputs = [ perl pkgconfig ]; From 28d51a31eeff92677132c84436c0a3536a34bea7 Mon Sep 17 00:00:00 2001 From: Sander van der Burg Date: Tue, 21 Jan 2014 12:10:53 +0100 Subject: [PATCH 286/286] Stick titanium CLI to version 3.2.0, otherwise the latest beta version gets installed --- pkgs/top-level/node-packages-generated.nix | 922 +++++++++++---------- pkgs/top-level/node-packages.json | 2 +- 2 files changed, 497 insertions(+), 427 deletions(-) diff --git a/pkgs/top-level/node-packages-generated.nix b/pkgs/top-level/node-packages-generated.nix index 07bfa153125..9aec47445b5 100644 --- a/pkgs/top-level/node-packages-generated.nix +++ b/pkgs/top-level/node-packages-generated.nix @@ -616,14 +616,14 @@ by-spec."async"."~0.2.9" = self.by-version."async"."0.2.9"; by-spec."aws-sdk"."*" = - self.by-version."aws-sdk"."2.0.0-rc7"; - by-version."aws-sdk"."2.0.0-rc7" = lib.makeOverridable self.buildNodePackage { - name = "aws-sdk-2.0.0-rc7"; + self.by-version."aws-sdk"."2.0.0-rc8"; + by-version."aws-sdk"."2.0.0-rc8" = lib.makeOverridable self.buildNodePackage { + name = "aws-sdk-2.0.0-rc8"; src = [ (fetchurl { - url = "http://registry.npmjs.org/aws-sdk/-/aws-sdk-2.0.0-rc7.tgz"; - name = "aws-sdk-2.0.0-rc7.tgz"; - sha1 = "4b367185bd093f2681aea2cfb1e3e85a06fa04cd"; + url = "http://registry.npmjs.org/aws-sdk/-/aws-sdk-2.0.0-rc8.tgz"; + name = "aws-sdk-2.0.0-rc8.tgz"; + sha1 = "30583789843db95ecd090b0d73f42be09fbd6cf3"; }) ]; buildInputs = @@ -636,16 +636,16 @@ ]; passthru.names = [ "aws-sdk" ]; }; - "aws-sdk" = self.by-version."aws-sdk"."2.0.0-rc7"; + "aws-sdk" = self.by-version."aws-sdk"."2.0.0-rc8"; by-spec."aws-sdk".">=1.2.0 <2" = - self.by-version."aws-sdk"."1.17.2"; - by-version."aws-sdk"."1.17.2" = lib.makeOverridable self.buildNodePackage { - name = "aws-sdk-1.17.2"; + self.by-version."aws-sdk"."1.17.3"; + by-version."aws-sdk"."1.17.3" = lib.makeOverridable self.buildNodePackage { + name = "aws-sdk-1.17.3"; src = [ (fetchurl { - url = "http://registry.npmjs.org/aws-sdk/-/aws-sdk-1.17.2.tgz"; - name = "aws-sdk-1.17.2.tgz"; - sha1 = "1e9c6ae5baa6f3eca29cece19f199040cd01cd30"; + url = "http://registry.npmjs.org/aws-sdk/-/aws-sdk-1.17.3.tgz"; + name = "aws-sdk-1.17.3.tgz"; + sha1 = "fd0ee0e0222b6a2dc313fa59788ae595fe55dffe"; }) ]; buildInputs = @@ -973,7 +973,7 @@ self.by-version."bower-config"."0.5.0" self.by-version."bower-endpoint-parser"."0.2.1" self.by-version."bower-json"."0.4.0" - self.by-version."bower-logger"."0.2.1" + self.by-version."bower-logger"."0.2.2" self.by-version."bower-registry-client"."0.1.6" self.by-version."cardinal"."0.4.4" self.by-version."chalk"."0.2.1" @@ -997,7 +997,7 @@ self.by-version."request"."2.27.0" self.by-version."request-progress"."0.3.1" self.by-version."retry"."0.6.0" - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" self.by-version."semver"."2.1.0" self.by-version."stringify-object"."0.1.7" self.by-version."sudo-block"."0.2.1" @@ -1129,7 +1129,24 @@ passthru.names = [ "bower-logger" ]; }; by-spec."bower-logger"."~0.2.1" = - self.by-version."bower-logger"."0.2.1"; + self.by-version."bower-logger"."0.2.2"; + by-version."bower-logger"."0.2.2" = lib.makeOverridable self.buildNodePackage { + name = "bower-logger-0.2.2"; + src = [ + (fetchurl { + url = "http://registry.npmjs.org/bower-logger/-/bower-logger-0.2.2.tgz"; + name = "bower-logger-0.2.2.tgz"; + sha1 = "39be07e979b2fc8e03a94634205ed9422373d381"; + }) + ]; + buildInputs = + (self.nativeDeps."bower-logger" or []); + deps = [ + ]; + peerDependencies = [ + ]; + passthru.names = [ "bower-logger" ]; + }; by-spec."bower-registry-client"."~0.1.4" = self.by-version."bower-registry-client"."0.1.6"; by-version."bower-registry-client"."0.1.6" = lib.makeOverridable self.buildNodePackage { @@ -1150,7 +1167,7 @@ self.by-version."lru-cache"."2.3.1" self.by-version."request"."2.27.0" self.by-version."request-replay"."0.2.0" - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" self.by-version."mkdirp"."0.3.5" ]; peerDependencies = [ @@ -1226,7 +1243,7 @@ deps = [ self.by-version."hat"."0.0.3" self.by-version."connect"."2.12.0" - self.by-version."request"."2.31.0" + self.by-version."request"."2.33.0" ]; peerDependencies = [ ]; @@ -1279,7 +1296,7 @@ (fetchurl { url = "http://registry.npmjs.org/bson/-/bson-0.2.5.tgz"; name = "bson-0.2.5.tgz"; - sha1 = "835b266883fc91e00e440efa2a905e9ac8c6c9f9"; + sha1 = "500d26d883ddc8e02f2c88011627636111c105c5"; }) ]; buildInputs = @@ -1350,14 +1367,14 @@ passthru.names = [ "buffers" ]; }; by-spec."buffertools"."*" = - self.by-version."buffertools"."2.0.0"; - by-version."buffertools"."2.0.0" = lib.makeOverridable self.buildNodePackage { - name = "buffertools-2.0.0"; + self.by-version."buffertools"."2.0.1"; + by-version."buffertools"."2.0.1" = lib.makeOverridable self.buildNodePackage { + name = "buffertools-2.0.1"; src = [ (fetchurl { - url = "http://registry.npmjs.org/buffertools/-/buffertools-2.0.0.tgz"; - name = "buffertools-2.0.0.tgz"; - sha1 = "925a0333a6b089e86a58c0c25c9dda8d515b25e8"; + url = "http://registry.npmjs.org/buffertools/-/buffertools-2.0.1.tgz"; + name = "buffertools-2.0.1.tgz"; + sha1 = "4611e6430687e7876330285dd1ae7e7e47b47288"; }) ]; buildInputs = @@ -1368,7 +1385,7 @@ ]; passthru.names = [ "buffertools" ]; }; - "buffertools" = self.by-version."buffertools"."2.0.0"; + "buffertools" = self.by-version."buffertools"."2.0.1"; by-spec."buffertools".">=1.1.1 <2.0.0" = self.by-version."buffertools"."1.1.1"; by-version."buffertools"."1.1.1" = lib.makeOverridable self.buildNodePackage { @@ -1680,8 +1697,6 @@ ]; passthru.names = [ "cheerio" ]; }; - by-spec."cheerio"."~0.12.1" = - self.by-version."cheerio"."0.12.4"; by-spec."cheerio"."~0.13.0" = self.by-version."cheerio"."0.13.1"; by-version."cheerio"."0.13.1" = lib.makeOverridable self.buildNodePackage { @@ -1822,14 +1837,14 @@ passthru.names = [ "class-extend" ]; }; by-spec."clean-css"."2.0.x" = - self.by-version."clean-css"."2.0.6"; - by-version."clean-css"."2.0.6" = lib.makeOverridable self.buildNodePackage { - name = "clean-css-2.0.6"; + self.by-version."clean-css"."2.0.7"; + by-version."clean-css"."2.0.7" = lib.makeOverridable self.buildNodePackage { + name = "clean-css-2.0.7"; src = [ (fetchurl { - url = "http://registry.npmjs.org/clean-css/-/clean-css-2.0.6.tgz"; - name = "clean-css-2.0.6.tgz"; - sha1 = "89f98241ec4026500db7ea3b2e725f9ffaa01ed3"; + url = "http://registry.npmjs.org/clean-css/-/clean-css-2.0.7.tgz"; + name = "clean-css-2.0.7.tgz"; + sha1 = "b973f1370019ad9b05c456ffc4950a6b95cb38f0"; }) ]; buildInputs = @@ -1842,7 +1857,7 @@ passthru.names = [ "clean-css" ]; }; by-spec."clean-css"."~2.0.0" = - self.by-version."clean-css"."2.0.6"; + self.by-version."clean-css"."2.0.7"; by-spec."cli"."0.4.x" = self.by-version."cli"."0.4.5"; by-version."cli"."0.4.5" = lib.makeOverridable self.buildNodePackage { @@ -2175,6 +2190,25 @@ ]; passthru.names = [ "colour" ]; }; + by-spec."columnify"."0.1.2" = + self.by-version."columnify"."0.1.2"; + by-version."columnify"."0.1.2" = lib.makeOverridable self.buildNodePackage { + name = "columnify-0.1.2"; + src = [ + (fetchurl { + url = "http://registry.npmjs.org/columnify/-/columnify-0.1.2.tgz"; + name = "columnify-0.1.2.tgz"; + sha1 = "ab1a1f1e37b26ba4b87c6920fb717fe51c827042"; + }) + ]; + buildInputs = + (self.nativeDeps."columnify" or []); + deps = [ + ]; + peerDependencies = [ + ]; + passthru.names = [ "columnify" ]; + }; by-spec."combined-stream"."~0.0.4" = self.by-version."combined-stream"."0.0.4"; by-version."combined-stream"."0.0.4" = lib.makeOverridable self.buildNodePackage { @@ -2578,7 +2612,7 @@ buildInputs = (self.nativeDeps."connect-jade-static" or []); deps = [ - self.by-version."jade"."1.1.4" + self.by-version."jade"."1.1.5" ]; peerDependencies = [ ]; @@ -2658,7 +2692,7 @@ buildInputs = (self.nativeDeps."constantinople" or []); deps = [ - self.by-version."uglify-js"."2.4.8" + self.by-version."uglify-js"."2.4.11" ]; peerDependencies = [ ]; @@ -2870,7 +2904,7 @@ buildInputs = (self.nativeDeps."couch-login" or []); deps = [ - self.by-version."request"."2.31.0" + self.by-version."request"."2.33.0" ]; peerDependencies = [ ]; @@ -3295,15 +3329,15 @@ ]; passthru.names = [ "debuglog" ]; }; - by-spec."decompress"."~0.1.0" = - self.by-version."decompress"."0.1.5"; - by-version."decompress"."0.1.5" = lib.makeOverridable self.buildNodePackage { - name = "decompress-0.1.5"; + by-spec."decompress"."~0.1.5" = + self.by-version."decompress"."0.1.6"; + by-version."decompress"."0.1.6" = lib.makeOverridable self.buildNodePackage { + name = "decompress-0.1.6"; src = [ (fetchurl { - url = "http://registry.npmjs.org/decompress/-/decompress-0.1.5.tgz"; - name = "decompress-0.1.5.tgz"; - sha1 = "0925d42a2164bead83f0822a7a2b4ad02e99c76c"; + url = "http://registry.npmjs.org/decompress/-/decompress-0.1.6.tgz"; + name = "decompress-0.1.6.tgz"; + sha1 = "4db64844d80b615b888ca129d12f8accd1e27286"; }) ]; buildInputs = @@ -3312,10 +3346,10 @@ self.by-version."adm-zip"."0.4.3" self.by-version."mkdirp"."0.3.5" self.by-version."mout"."0.6.0" - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" self.by-version."stream-combiner"."0.0.4" self.by-version."tar"."0.1.19" - self.by-version."temp"."0.6.0" + self.by-version."tempfile"."0.1.2" ]; peerDependencies = [ ]; @@ -3665,24 +3699,24 @@ passthru.names = [ "domutils" ]; }; by-spec."download"."~0.1.6" = - self.by-version."download"."0.1.7"; - by-version."download"."0.1.7" = lib.makeOverridable self.buildNodePackage { - name = "download-0.1.7"; + self.by-version."download"."0.1.10"; + by-version."download"."0.1.10" = lib.makeOverridable self.buildNodePackage { + name = "download-0.1.10"; src = [ (fetchurl { - url = "http://registry.npmjs.org/download/-/download-0.1.7.tgz"; - name = "download-0.1.7.tgz"; - sha1 = "d2a941a878a6d2fdaba60588ffffadab32b788b4"; + url = "http://registry.npmjs.org/download/-/download-0.1.10.tgz"; + name = "download-0.1.10.tgz"; + sha1 = "732065fc96259abd47543c2711467bcf7ed66af5"; }) ]; buildInputs = (self.nativeDeps."download" or []); deps = [ - self.by-version."decompress"."0.1.5" + self.by-version."decompress"."0.1.6" self.by-version."each-async"."0.1.1" self.by-version."mkdirp"."0.3.5" - self.by-version."request"."2.25.0" - self.by-version."through2"."0.1.0" + self.by-version."request"."2.31.0" + self.by-version."through2"."0.4.0" ]; peerDependencies = [ ]; @@ -3921,14 +3955,14 @@ }; "escape-html" = self.by-version."escape-html"."1.0.1"; by-spec."escodegen"."*" = - self.by-version."escodegen"."1.0.1"; - by-version."escodegen"."1.0.1" = lib.makeOverridable self.buildNodePackage { - name = "escodegen-1.0.1"; + self.by-version."escodegen"."1.1.0"; + by-version."escodegen"."1.1.0" = lib.makeOverridable self.buildNodePackage { + name = "escodegen-1.1.0"; src = [ (fetchurl { - url = "http://registry.npmjs.org/escodegen/-/escodegen-1.0.1.tgz"; - name = "escodegen-1.0.1.tgz"; - sha1 = "84c92c4a07440271b90e6b78e620973bf721226e"; + url = "http://registry.npmjs.org/escodegen/-/escodegen-1.1.0.tgz"; + name = "escodegen-1.1.0.tgz"; + sha1 = "c663923f6e20aad48d0c0fa49f31c6d4f49360cf"; }) ]; buildInputs = @@ -3967,6 +4001,27 @@ }; by-spec."escodegen"."1.0.x" = self.by-version."escodegen"."1.0.1"; + by-version."escodegen"."1.0.1" = lib.makeOverridable self.buildNodePackage { + name = "escodegen-1.0.1"; + src = [ + (fetchurl { + url = "http://registry.npmjs.org/escodegen/-/escodegen-1.0.1.tgz"; + name = "escodegen-1.0.1.tgz"; + sha1 = "84c92c4a07440271b90e6b78e620973bf721226e"; + }) + ]; + buildInputs = + (self.nativeDeps."escodegen" or []); + deps = [ + self.by-version."esprima"."1.0.4" + self.by-version."estraverse"."1.5.0" + self.by-version."esutils"."1.0.0" + self.by-version."source-map"."0.1.31" + ]; + peerDependencies = [ + ]; + passthru.names = [ "escodegen" ]; + }; by-spec."esprima"."1.0.x" = self.by-version."esprima"."1.0.4"; by-version."esprima"."1.0.4" = lib.makeOverridable self.buildNodePackage { @@ -4174,7 +4229,7 @@ self.by-version."node-swt"."0.1.1" self.by-version."node-wsfederation"."0.1.1" self.by-version."debug"."0.5.0" - self.by-version."express"."3.4.7" + self.by-version."express"."3.4.8" ]; peerDependencies = [ ]; @@ -4200,14 +4255,14 @@ passthru.names = [ "exit" ]; }; by-spec."express"."*" = - self.by-version."express"."3.4.7"; - by-version."express"."3.4.7" = lib.makeOverridable self.buildNodePackage { - name = "express-3.4.7"; + self.by-version."express"."3.4.8"; + by-version."express"."3.4.8" = lib.makeOverridable self.buildNodePackage { + name = "express-3.4.8"; src = [ (fetchurl { - url = "http://registry.npmjs.org/express/-/express-3.4.7.tgz"; - name = "express-3.4.7.tgz"; - sha1 = "3b939c47d2aa44dfecf77d50da2123c5bd313366"; + url = "http://registry.npmjs.org/express/-/express-3.4.8.tgz"; + name = "express-3.4.8.tgz"; + sha1 = "aa7a8986de07053337f4bc5ed9a6453d9cc8e2e1"; }) ]; buildInputs = @@ -4230,7 +4285,7 @@ ]; passthru.names = [ "express" ]; }; - "express" = self.by-version."express"."3.4.7"; + "express" = self.by-version."express"."3.4.8"; by-spec."express"."2.5.11" = self.by-version."express"."2.5.11"; by-version."express"."2.5.11" = lib.makeOverridable self.buildNodePackage { @@ -4315,7 +4370,7 @@ passthru.names = [ "express" ]; }; by-spec."express"."3.x" = - self.by-version."express"."3.4.7"; + self.by-version."express"."3.4.8"; by-spec."express"."~3.1.1" = self.by-version."express"."3.1.2"; by-version."express"."3.1.2" = lib.makeOverridable self.buildNodePackage { @@ -4347,9 +4402,9 @@ passthru.names = [ "express" ]; }; by-spec."express"."~3.4" = - self.by-version."express"."3.4.7"; + self.by-version."express"."3.4.8"; by-spec."express"."~3.4.4" = - self.by-version."express"."3.4.7"; + self.by-version."express"."3.4.8"; by-spec."express-form"."*" = self.by-version."express-form"."0.10.1"; by-version."express-form"."0.10.1" = lib.makeOverridable self.buildNodePackage { @@ -4369,7 +4424,7 @@ self.by-version."async"."0.2.9" ]; peerDependencies = [ - self.by-version."express"."3.4.7" + self.by-version."express"."3.4.8" ]; passthru.names = [ "express-form" ]; }; @@ -4597,7 +4652,7 @@ deps = [ self.by-version."lodash"."2.1.0" self.by-version."iconv-lite"."0.2.11" - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" self.by-version."glob"."3.2.8" self.by-version."minimatch"."0.2.14" self.by-version."findup-sync"."0.1.2" @@ -4738,14 +4793,14 @@ passthru.names = [ "follow-redirects" ]; }; by-spec."forEachAsync"."~2.2" = - self.by-version."forEachAsync"."2.2.0"; - by-version."forEachAsync"."2.2.0" = lib.makeOverridable self.buildNodePackage { - name = "forEachAsync-2.2.0"; + self.by-version."forEachAsync"."2.2.1"; + by-version."forEachAsync"."2.2.1" = lib.makeOverridable self.buildNodePackage { + name = "forEachAsync-2.2.1"; src = [ (fetchurl { - url = "http://registry.npmjs.org/forEachAsync/-/forEachAsync-2.2.0.tgz"; - name = "forEachAsync-2.2.0.tgz"; - sha1 = "093b32ce868cb69f5166dcf331fae074adc71cee"; + url = "http://registry.npmjs.org/forEachAsync/-/forEachAsync-2.2.1.tgz"; + name = "forEachAsync-2.2.1.tgz"; + sha1 = "e3723f00903910e1eb4b1db3ad51b5c64a319fec"; }) ]; buildInputs = @@ -4757,25 +4812,6 @@ ]; passthru.names = [ "forEachAsync" ]; }; - by-spec."foreach"."~2.0.1" = - self.by-version."foreach"."2.0.4"; - by-version."foreach"."2.0.4" = lib.makeOverridable self.buildNodePackage { - name = "foreach-2.0.4"; - src = [ - (fetchurl { - url = "http://registry.npmjs.org/foreach/-/foreach-2.0.4.tgz"; - name = "foreach-2.0.4.tgz"; - sha1 = "cc5d0d8ae1d46cc9a555c2682f910977859935df"; - }) - ]; - buildInputs = - (self.nativeDeps."foreach" or []); - deps = [ - ]; - peerDependencies = [ - ]; - passthru.names = [ "foreach" ]; - }; by-spec."forever"."*" = self.by-version."forever"."0.10.11"; by-version."forever"."0.10.11" = lib.makeOverridable self.buildNodePackage { @@ -5098,7 +5134,7 @@ self.by-version."ncp"."0.4.2" self.by-version."mkdirp"."0.3.5" self.by-version."jsonfile"."1.0.1" - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" ]; peerDependencies = [ ]; @@ -5163,7 +5199,7 @@ buildInputs = (self.nativeDeps."fstream" or []); deps = [ - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" self.by-version."mkdirp"."0.3.5" self.by-version."graceful-fs"."2.0.1" self.by-version."inherits"."2.0.1" @@ -5271,7 +5307,7 @@ ]; passthru.names = [ "generator-karma" ]; }; - by-spec."generator-mocha"."~0.1.1" = + by-spec."generator-mocha".">=0.1.0" = self.by-version."generator-mocha"."0.1.3"; by-version."generator-mocha"."0.1.3" = lib.makeOverridable self.buildNodePackage { name = "generator-mocha-0.1.3"; @@ -5293,21 +5329,22 @@ passthru.names = [ "generator-mocha" ]; }; by-spec."generator-webapp"."*" = - self.by-version."generator-webapp"."0.4.6"; - by-version."generator-webapp"."0.4.6" = lib.makeOverridable self.buildNodePackage { - name = "generator-webapp-0.4.6"; + self.by-version."generator-webapp"."0.4.7"; + by-version."generator-webapp"."0.4.7" = lib.makeOverridable self.buildNodePackage { + name = "generator-webapp-0.4.7"; src = [ (fetchurl { - url = "http://registry.npmjs.org/generator-webapp/-/generator-webapp-0.4.6.tgz"; - name = "generator-webapp-0.4.6.tgz"; - sha1 = "6f51516b615aaf807e221a8ac713845fd680648f"; + url = "http://registry.npmjs.org/generator-webapp/-/generator-webapp-0.4.7.tgz"; + name = "generator-webapp-0.4.7.tgz"; + sha1 = "a42b663cbe289358046038229603e8557b6881e5"; }) ]; buildInputs = (self.nativeDeps."generator-webapp" or []); deps = [ - self.by-version."yeoman-generator"."0.14.2" - self.by-version."cheerio"."0.12.4" + self.by-version."yeoman-generator"."0.16.0" + self.by-version."cheerio"."0.13.1" + self.by-version."chalk"."0.4.0" ]; peerDependencies = [ self.by-version."yo"."1.1.2" @@ -5315,7 +5352,7 @@ ]; passthru.names = [ "generator-webapp" ]; }; - "generator-webapp" = self.by-version."generator-webapp"."0.4.6"; + "generator-webapp" = self.by-version."generator-webapp"."0.4.7"; by-spec."getmac"."~1.0.6" = self.by-version."getmac"."1.0.6"; by-version."getmac"."1.0.6" = lib.makeOverridable self.buildNodePackage { @@ -5707,7 +5744,7 @@ buildInputs = (self.nativeDeps."grunt-contrib-cssmin" or []); deps = [ - self.by-version."clean-css"."2.0.6" + self.by-version."clean-css"."2.0.7" self.by-version."grunt-lib-contrib"."0.6.1" ]; peerDependencies = [ @@ -5785,28 +5822,29 @@ }; "grunt-contrib-requirejs" = self.by-version."grunt-contrib-requirejs"."0.4.1"; by-spec."grunt-contrib-uglify"."*" = - self.by-version."grunt-contrib-uglify"."0.2.7"; - by-version."grunt-contrib-uglify"."0.2.7" = lib.makeOverridable self.buildNodePackage { - name = "grunt-contrib-uglify-0.2.7"; + self.by-version."grunt-contrib-uglify"."0.3.1"; + by-version."grunt-contrib-uglify"."0.3.1" = lib.makeOverridable self.buildNodePackage { + name = "grunt-contrib-uglify-0.3.1"; src = [ (fetchurl { - url = "http://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.7.tgz"; - name = "grunt-contrib-uglify-0.2.7.tgz"; - sha1 = "e6bda51e0c40a1459f6cead423c65efd725a1bf7"; + url = "http://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.3.1.tgz"; + name = "grunt-contrib-uglify-0.3.1.tgz"; + sha1 = "6ce6836d8e8d4078ae2f2758f46d417241516f51"; }) ]; buildInputs = (self.nativeDeps."grunt-contrib-uglify" or []); deps = [ - self.by-version."uglify-js"."2.4.8" + self.by-version."uglify-js"."2.4.11" self.by-version."grunt-lib-contrib"."0.6.1" + self.by-version."chalk"."0.4.0" ]; peerDependencies = [ self.by-version."grunt"."0.4.2" ]; passthru.names = [ "grunt-contrib-uglify" ]; }; - "grunt-contrib-uglify" = self.by-version."grunt-contrib-uglify"."0.2.7"; + "grunt-contrib-uglify" = self.by-version."grunt-contrib-uglify"."0.3.1"; by-spec."grunt-karma"."*" = self.by-version."grunt-karma"."0.7.2"; by-version."grunt-karma"."0.7.2" = lib.makeOverridable self.buildNodePackage { @@ -5825,7 +5863,7 @@ ]; peerDependencies = [ self.by-version."grunt"."0.4.2" - self.by-version."karma"."0.11.12" + self.by-version."karma"."0.11.13" ]; passthru.names = [ "grunt-karma" ]; }; @@ -5866,7 +5904,7 @@ buildInputs = (self.nativeDeps."grunt-sed" or []); deps = [ - self.by-version."replace"."0.2.7" + self.by-version."replace"."0.2.8" ]; peerDependencies = [ self.by-version."grunt"."0.4.2" @@ -5889,7 +5927,7 @@ (self.nativeDeps."guifi-earth" or []); deps = [ self.by-version."coffee-script"."1.6.3" - self.by-version."jade"."1.1.4" + self.by-version."jade"."1.1.5" self.by-version."q"."1.0.0" self.by-version."xml2js"."0.4.1" self.by-version."msgpack"."0.2.1" @@ -5941,15 +5979,15 @@ ]; passthru.names = [ "handlebars" ]; }; - by-spec."handlebars"."1.2.x" = - self.by-version."handlebars"."1.2.1"; - by-version."handlebars"."1.2.1" = lib.makeOverridable self.buildNodePackage { - name = "handlebars-1.2.1"; + by-spec."handlebars"."1.3.x" = + self.by-version."handlebars"."1.3.0"; + by-version."handlebars"."1.3.0" = lib.makeOverridable self.buildNodePackage { + name = "handlebars-1.3.0"; src = [ (fetchurl { - url = "http://registry.npmjs.org/handlebars/-/handlebars-1.2.1.tgz"; - name = "handlebars-1.2.1.tgz"; - sha1 = "0a9016379064f8957779bdc2812869120aba9d98"; + url = "http://registry.npmjs.org/handlebars/-/handlebars-1.3.0.tgz"; + name = "handlebars-1.3.0.tgz"; + sha1 = "9e9b130a93e389491322d975cf3ec1818c37ce34"; }) ]; buildInputs = @@ -6529,9 +6567,9 @@ (self.nativeDeps."ibrik" or []); deps = [ self.by-version."coffee-script-redux"."2.0.0-beta4" - self.by-version."istanbul"."0.2.3" + self.by-version."istanbul"."0.2.4" self.by-version."optimist"."0.6.0" - self.by-version."escodegen"."1.0.1" + self.by-version."escodegen"."1.1.0" self.by-version."mkdirp"."0.3.5" self.by-version."which"."1.0.5" self.by-version."estraverse"."1.5.0" @@ -6561,25 +6599,6 @@ }; by-spec."iconv-lite"."~0.2.11" = self.by-version."iconv-lite"."0.2.11"; - by-spec."indexof"."~0.0.1" = - self.by-version."indexof"."0.0.1"; - by-version."indexof"."0.0.1" = lib.makeOverridable self.buildNodePackage { - name = "indexof-0.0.1"; - src = [ - (fetchurl { - url = "http://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz"; - name = "indexof-0.0.1.tgz"; - sha1 = "82dc336d232b9062179d05ab3293a66059fd435d"; - }) - ]; - buildInputs = - (self.nativeDeps."indexof" or []); - deps = [ - ]; - peerDependencies = [ - ]; - passthru.names = [ "indexof" ]; - }; by-spec."inherits"."1" = self.by-version."inherits"."1.0.0"; by-version."inherits"."1.0.0" = lib.makeOverridable self.buildNodePackage { @@ -6665,7 +6684,7 @@ deps = [ self.by-version."promzard"."0.2.1" self.by-version."read"."1.0.5" - self.by-version."read-package-json"."1.1.5" + self.by-version."read-package-json"."1.1.6" self.by-version."semver"."2.2.1" self.by-version."glob"."3.2.8" ]; @@ -6808,8 +6827,8 @@ self.by-version."nconf"."0.6.9" self.by-version."fs-walk"."0.0.1" self.by-version."async"."0.2.9" - self.by-version."express"."3.4.7" - self.by-version."jade"."1.1.4" + self.by-version."express"."3.4.8" + self.by-version."jade"."1.1.5" self.by-version."passport"."0.1.18" self.by-version."passport-http"."0.2.2" self.by-version."js-yaml"."3.0.1" @@ -6825,44 +6844,6 @@ passthru.names = [ "ironhorse" ]; }; "ironhorse" = self.by-version."ironhorse"."0.0.9"; - by-spec."is"."~0.2.6" = - self.by-version."is"."0.2.7"; - by-version."is"."0.2.7" = lib.makeOverridable self.buildNodePackage { - name = "is-0.2.7"; - src = [ - (fetchurl { - url = "http://registry.npmjs.org/is/-/is-0.2.7.tgz"; - name = "is-0.2.7.tgz"; - sha1 = "3b34a2c48f359972f35042849193ae7264b63562"; - }) - ]; - buildInputs = - (self.nativeDeps."is" or []); - deps = [ - ]; - peerDependencies = [ - ]; - passthru.names = [ "is" ]; - }; - by-spec."is-object"."~0.1.2" = - self.by-version."is-object"."0.1.2"; - by-version."is-object"."0.1.2" = lib.makeOverridable self.buildNodePackage { - name = "is-object-0.1.2"; - src = [ - (fetchurl { - url = "http://registry.npmjs.org/is-object/-/is-object-0.1.2.tgz"; - name = "is-object-0.1.2.tgz"; - sha1 = "00efbc08816c33cfc4ac8251d132e10dc65098d7"; - }) - ]; - buildInputs = - (self.nativeDeps."is-object" or []); - deps = [ - ]; - peerDependencies = [ - ]; - passthru.names = [ "is-object" ]; - }; by-spec."is-promise"."~1" = self.by-version."is-promise"."1.0.0"; by-version."is-promise"."1.0.0" = lib.makeOverridable self.buildNodePackage { @@ -6923,14 +6904,14 @@ passthru.names = [ "isbinaryfile" ]; }; by-spec."istanbul"."*" = - self.by-version."istanbul"."0.2.3"; - by-version."istanbul"."0.2.3" = lib.makeOverridable self.buildNodePackage { - name = "istanbul-0.2.3"; + self.by-version."istanbul"."0.2.4"; + by-version."istanbul"."0.2.4" = lib.makeOverridable self.buildNodePackage { + name = "istanbul-0.2.4"; src = [ (fetchurl { - url = "http://registry.npmjs.org/istanbul/-/istanbul-0.2.3.tgz"; - name = "istanbul-0.2.3.tgz"; - sha1 = "bbce67c1d540610e7021becda51d7cbbbecc68cc"; + url = "http://registry.npmjs.org/istanbul/-/istanbul-0.2.4.tgz"; + name = "istanbul-0.2.4.tgz"; + sha1 = "faaaa400f2cf652c3dc8b3d9484b44a5528e3a04"; }) ]; buildInputs = @@ -6938,7 +6919,7 @@ deps = [ self.by-version."esprima"."1.0.4" self.by-version."escodegen"."1.0.1" - self.by-version."handlebars"."1.2.1" + self.by-version."handlebars"."1.3.0" self.by-version."mkdirp"."0.3.5" self.by-version."nopt"."2.1.2" self.by-version."fileset"."0.1.5" @@ -6953,7 +6934,7 @@ ]; passthru.names = [ "istanbul" ]; }; - "istanbul" = self.by-version."istanbul"."0.2.3"; + "istanbul" = self.by-version."istanbul"."0.2.4"; by-spec."istanbul"."~0.1.45" = self.by-version."istanbul"."0.1.46"; by-version."istanbul"."0.1.46" = lib.makeOverridable self.buildNodePackage { @@ -6985,14 +6966,14 @@ passthru.names = [ "istanbul" ]; }; by-spec."jade"."*" = - self.by-version."jade"."1.1.4"; - by-version."jade"."1.1.4" = lib.makeOverridable self.buildNodePackage { - name = "jade-1.1.4"; + self.by-version."jade"."1.1.5"; + by-version."jade"."1.1.5" = lib.makeOverridable self.buildNodePackage { + name = "jade-1.1.5"; src = [ (fetchurl { - url = "http://registry.npmjs.org/jade/-/jade-1.1.4.tgz"; - name = "jade-1.1.4.tgz"; - sha1 = "7097f9f17577fa4a1f0b399925dba1752b91cbdc"; + url = "http://registry.npmjs.org/jade/-/jade-1.1.5.tgz"; + name = "jade-1.1.5.tgz"; + sha1 = "e884d3d3565807e280f5ba760f68addb176627a3"; }) ]; buildInputs = @@ -7010,7 +6991,7 @@ ]; passthru.names = [ "jade" ]; }; - "jade" = self.by-version."jade"."1.1.4"; + "jade" = self.by-version."jade"."1.1.5"; by-spec."jade"."0.26.3" = self.by-version."jade"."0.26.3"; by-version."jade"."0.26.3" = lib.makeOverridable self.buildNodePackage { @@ -7054,7 +7035,7 @@ passthru.names = [ "jade" ]; }; by-spec."jade".">= 0.0.1" = - self.by-version."jade"."1.1.4"; + self.by-version."jade"."1.1.5"; by-spec."jade"."~0.35.0" = self.by-version."jade"."0.35.0"; by-version."jade"."0.35.0" = lib.makeOverridable self.buildNodePackage { @@ -7433,14 +7414,14 @@ passthru.names = [ "junk" ]; }; by-spec."karma"."*" = - self.by-version."karma"."0.11.12"; - by-version."karma"."0.11.12" = lib.makeOverridable self.buildNodePackage { - name = "karma-0.11.12"; + self.by-version."karma"."0.11.13"; + by-version."karma"."0.11.13" = lib.makeOverridable self.buildNodePackage { + name = "karma-0.11.13"; src = [ (fetchurl { - url = "http://registry.npmjs.org/karma/-/karma-0.11.12.tgz"; - name = "karma-0.11.12.tgz"; - sha1 = "a3474cb3b5e305c7182729a5d98f259c09d2af77"; + url = "http://registry.npmjs.org/karma/-/karma-0.11.13.tgz"; + name = "karma-0.11.13.tgz"; + sha1 = "f63da4f9d14669c6b3d2d9feb7f4406c4cd004c0"; }) ]; buildInputs = @@ -7454,7 +7435,7 @@ self.by-version."http-proxy"."0.10.4" self.by-version."optimist"."0.6.0" self.by-version."coffee-script"."1.6.3" - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" self.by-version."q"."0.9.7" self.by-version."colors"."0.6.2" self.by-version."lodash"."2.4.1" @@ -7469,15 +7450,15 @@ ]; passthru.names = [ "karma" ]; }; - "karma" = self.by-version."karma"."0.11.12"; + "karma" = self.by-version."karma"."0.11.13"; by-spec."karma".">=0.11.11" = - self.by-version."karma"."0.11.12"; + self.by-version."karma"."0.11.13"; by-spec."karma".">=0.9" = - self.by-version."karma"."0.11.12"; + self.by-version."karma"."0.11.13"; by-spec."karma".">=0.9.3" = - self.by-version."karma"."0.11.12"; + self.by-version."karma"."0.11.13"; by-spec."karma"."~0.11.0" = - self.by-version."karma"."0.11.12"; + self.by-version."karma"."0.11.13"; by-spec."karma-chrome-launcher"."*" = self.by-version."karma-chrome-launcher"."0.1.2"; by-version."karma-chrome-launcher"."0.1.2" = lib.makeOverridable self.buildNodePackage { @@ -7494,7 +7475,7 @@ deps = [ ]; peerDependencies = [ - self.by-version."karma"."0.11.12" + self.by-version."karma"."0.11.13" ]; passthru.names = [ "karma-chrome-launcher" ]; }; @@ -7518,7 +7499,7 @@ self.by-version."dateformat"."1.0.7-1.2.3" ]; peerDependencies = [ - self.by-version."karma"."0.11.12" + self.by-version."karma"."0.11.13" ]; passthru.names = [ "karma-coverage" ]; }; @@ -7540,7 +7521,7 @@ self.by-version."xmlbuilder"."0.4.2" ]; peerDependencies = [ - self.by-version."karma"."0.11.12" + self.by-version."karma"."0.11.13" ]; passthru.names = [ "karma-junit-reporter" ]; }; @@ -7561,7 +7542,7 @@ deps = [ ]; peerDependencies = [ - self.by-version."karma"."0.11.12" + self.by-version."karma"."0.11.13" self.by-version."mocha"."1.17.0" ]; passthru.names = [ "karma-mocha" ]; @@ -7583,7 +7564,7 @@ deps = [ ]; peerDependencies = [ - self.by-version."karma"."0.11.12" + self.by-version."karma"."0.11.13" self.by-version."requirejs"."2.1.10" ]; passthru.names = [ "karma-requirejs" ]; @@ -7609,7 +7590,7 @@ self.by-version."saucelabs"."0.1.1" ]; peerDependencies = [ - self.by-version."karma"."0.11.12" + self.by-version."karma"."0.11.13" ]; passthru.names = [ "karma-sauce-launcher" ]; }; @@ -7837,9 +7818,9 @@ (self.nativeDeps."less" or []); deps = [ self.by-version."mime"."1.2.11" - self.by-version."request"."2.31.0" + self.by-version."request"."2.33.0" self.by-version."mkdirp"."0.3.5" - self.by-version."clean-css"."2.0.6" + self.by-version."clean-css"."2.0.7" self.by-version."source-map"."0.1.31" ]; peerDependencies = [ @@ -8766,7 +8747,7 @@ (self.nativeDeps."mocha-unfunk-reporter" or []); deps = [ self.by-version."jsesc"."0.4.3" - self.by-version."unfunk-diff"."0.0.1" + self.by-version."unfunk-diff"."0.0.2" self.by-version."miniwrite"."0.1.3" self.by-version."ministyle"."0.1.3" ]; @@ -9589,9 +9570,9 @@ self.by-version."semver"."2.1.0" self.by-version."sprintf"."0.1.3" self.by-version."temp"."0.6.0" - self.by-version."wrench"."1.5.4" + self.by-version."wrench"."1.5.6" self.by-version."uglify-js"."2.3.6" - self.by-version."xmldom"."0.1.17" + self.by-version."xmldom"."0.1.18" ]; peerDependencies = [ ]; @@ -9640,8 +9621,8 @@ self.by-version."nopt"."2.1.2" self.by-version."npmlog"."0.0.6" self.by-version."osenv"."0.0.3" - self.by-version."request"."2.31.0" - self.by-version."rimraf"."2.2.5" + self.by-version."request"."2.33.0" + self.by-version."rimraf"."2.2.6" self.by-version."semver"."2.2.1" self.by-version."tar"."0.1.19" self.by-version."which"."1.0.5" @@ -9651,7 +9632,7 @@ passthru.names = [ "node-gyp" ]; }; "node-gyp" = self.by-version."node-gyp"."0.12.2"; - by-spec."node-gyp"."~0.12.0" = + by-spec."node-gyp"."~0.12.2" = self.by-version."node-gyp"."0.12.2"; by-spec."node-inspector"."*" = self.by-version."node-inspector"."0.7.0-1"; @@ -9668,11 +9649,11 @@ (self.nativeDeps."node-inspector" or []); deps = [ self.by-version."socket.io"."0.9.16" - self.by-version."express"."3.4.7" + self.by-version."express"."3.4.8" self.by-version."async"."0.2.9" self.by-version."glob"."3.2.8" - self.by-version."rc"."0.3.2" - self.by-version."strong-data-uri"."0.1.0" + self.by-version."rc"."0.3.3" + self.by-version."strong-data-uri"."0.1.1" self.by-version."debug"."0.7.4" ]; peerDependencies = [ @@ -9898,14 +9879,14 @@ passthru.names = [ "nodemailer" ]; }; by-spec."nodemon"."*" = - self.by-version."nodemon"."1.0.8"; - by-version."nodemon"."1.0.8" = lib.makeOverridable self.buildNodePackage { - name = "nodemon-1.0.8"; + self.by-version."nodemon"."1.0.13"; + by-version."nodemon"."1.0.13" = lib.makeOverridable self.buildNodePackage { + name = "nodemon-1.0.13"; src = [ (fetchurl { - url = "http://registry.npmjs.org/nodemon/-/nodemon-1.0.8.tgz"; - name = "nodemon-1.0.8.tgz"; - sha1 = "fa737c8f0f331ee77c23f993ce3205615f0d27f9"; + url = "http://registry.npmjs.org/nodemon/-/nodemon-1.0.13.tgz"; + name = "nodemon-1.0.13.tgz"; + sha1 = "7ff62ddf0ba03b572fbc22901b33d53531034410"; }) ]; buildInputs = @@ -9918,7 +9899,7 @@ ]; passthru.names = [ "nodemon" ]; }; - "nodemon" = self.by-version."nodemon"."1.0.8"; + "nodemon" = self.by-version."nodemon"."1.0.13"; by-spec."nomnom"."1.6.x" = self.by-version."nomnom"."1.6.2"; by-version."nomnom"."1.6.2" = lib.makeOverridable self.buildNodePackage { @@ -9988,9 +9969,9 @@ name = "nopt-1.0.10"; src = [ (fetchurl { - url = "https://github.com/Filirom1/nopt/tarball/master#pull-request-in-progress"; + url = "http://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz"; name = "nopt-1.0.10.tgz"; - sha256 = "94daa53a0ab7668be12931b7b551c924c913d1efef7f2a05e60704c9b90a7bad"; + sha1 = "6ddd21bd2a31417b92727dd585f8a6f37608ebee"; }) ]; buildInputs = @@ -10031,14 +10012,14 @@ passthru.names = [ "normalize-package-data" ]; }; by-spec."npm"."*" = - self.by-version."npm"."1.3.23"; - by-version."npm"."1.3.23" = lib.makeOverridable self.buildNodePackage { - name = "npm-1.3.23"; + self.by-version."npm"."1.3.24"; + by-version."npm"."1.3.24" = lib.makeOverridable self.buildNodePackage { + name = "npm-1.3.24"; src = [ (fetchurl { - url = "http://registry.npmjs.org/npm/-/npm-1.3.23.tgz"; - name = "npm-1.3.23.tgz"; - sha1 = "8463ddbc060169b48890d639c4be9c839b8a0f3d"; + url = "http://registry.npmjs.org/npm/-/npm-1.3.24.tgz"; + name = "npm-1.3.24.tgz"; + sha1 = "d68273a343562aa969320a218f528930356d99de"; }) ]; buildInputs = @@ -10051,7 +10032,7 @@ self.by-version."graceful-fs"."2.0.1" self.by-version."minimatch"."0.2.14" self.by-version."nopt"."2.1.2" - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" self.by-version."request"."2.30.0" self.by-version."which"."1.0.5" self.by-version."tar"."0.1.19" @@ -10068,7 +10049,7 @@ self.by-version."npmlog"."0.0.6" self.by-version."ansi"."0.2.1" self.by-version."npm-registry-client"."0.3.3" - self.by-version."read-package-json"."1.1.5" + self.by-version."read-package-json"."1.1.6" self.by-version."read-installed"."0.2.5" self.by-version."glob"."3.2.8" self.by-version."init-package-json"."0.0.14" @@ -10090,14 +10071,15 @@ self.by-version."ansicolors"."0.3.2" self.by-version."ansistyles"."0.1.3" self.by-version."path-is-inside"."1.0.0" + self.by-version."columnify"."0.1.2" ]; peerDependencies = [ ]; passthru.names = [ "npm" ]; }; - "npm" = self.by-version."npm"."1.3.23"; + "npm" = self.by-version."npm"."1.3.24"; by-spec."npm"."~1.3.14" = - self.by-version."npm"."1.3.23"; + self.by-version."npm"."1.3.24"; by-spec."npm-registry-client"."0.2.27" = self.by-version."npm-registry-client"."0.2.27"; by-version."npm-registry-client"."0.2.27" = lib.makeOverridable self.buildNodePackage { @@ -10112,13 +10094,13 @@ buildInputs = (self.nativeDeps."npm-registry-client" or []); deps = [ - self.by-version."request"."2.31.0" + self.by-version."request"."2.33.0" self.by-version."graceful-fs"."2.0.1" self.by-version."semver"."2.0.11" self.by-version."slide"."1.1.5" self.by-version."chownr"."0.0.1" self.by-version."mkdirp"."0.3.5" - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" self.by-version."retry"."0.6.0" self.by-version."couch-login"."0.1.19" self.by-version."npmlog"."0.0.6" @@ -10127,7 +10109,7 @@ ]; passthru.names = [ "npm-registry-client" ]; }; - by-spec."npm-registry-client"."~0.3.2" = + by-spec."npm-registry-client"."~0.3.3" = self.by-version."npm-registry-client"."0.3.3"; by-version."npm-registry-client"."0.3.3" = lib.makeOverridable self.buildNodePackage { name = "npm-registry-client-0.3.3"; @@ -10141,13 +10123,13 @@ buildInputs = (self.nativeDeps."npm-registry-client" or []); deps = [ - self.by-version."request"."2.31.0" + self.by-version."request"."2.33.0" self.by-version."graceful-fs"."2.0.1" self.by-version."semver"."2.2.1" self.by-version."slide"."1.1.5" self.by-version."chownr"."0.0.1" self.by-version."mkdirp"."0.3.5" - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" self.by-version."retry"."0.6.0" self.by-version."couch-login"."0.1.19" self.by-version."npmlog"."0.0.6" @@ -10257,7 +10239,7 @@ ]; passthru.names = [ "npmconf" ]; }; - by-spec."npmconf"."~0.1.2" = + by-spec."npmconf"."~0.1.12" = self.by-version."npmconf"."0.1.12"; by-version."npmconf"."0.1.12" = lib.makeOverridable self.buildNodePackage { name = "npmconf-0.1.12"; @@ -10284,7 +10266,7 @@ ]; passthru.names = [ "npmconf" ]; }; - by-spec."npmconf"."~0.1.7" = + by-spec."npmconf"."~0.1.2" = self.by-version."npmconf"."0.1.12"; by-spec."npmlog"."*" = self.by-version."npmlog"."0.0.6"; @@ -10407,23 +10389,20 @@ ]; passthru.names = [ "object-additions" ]; }; - by-spec."object-keys"."~0.2.0" = - self.by-version."object-keys"."0.2.0"; - by-version."object-keys"."0.2.0" = lib.makeOverridable self.buildNodePackage { - name = "object-keys-0.2.0"; + by-spec."object-keys"."~0.4.0" = + self.by-version."object-keys"."0.4.0"; + by-version."object-keys"."0.4.0" = lib.makeOverridable self.buildNodePackage { + name = "object-keys-0.4.0"; src = [ (fetchurl { - url = "http://registry.npmjs.org/object-keys/-/object-keys-0.2.0.tgz"; - name = "object-keys-0.2.0.tgz"; - sha1 = "cddec02998b091be42bf1035ae32e49f1cb6ea67"; + url = "http://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz"; + name = "object-keys-0.4.0.tgz"; + sha1 = "28a6aae7428dd2c3a92f3d95f21335dd204e0336"; }) ]; buildInputs = (self.nativeDeps."object-keys" or []); deps = [ - self.by-version."foreach"."2.0.4" - self.by-version."indexof"."0.0.1" - self.by-version."is"."0.2.7" ]; peerDependencies = [ ]; @@ -10894,7 +10873,7 @@ self.by-version."ncp"."0.4.2" self.by-version."npmconf"."0.0.24" self.by-version."mkdirp"."0.3.5" - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" self.by-version."which"."1.0.5" ]; peerDependencies = [ @@ -11126,14 +11105,14 @@ passthru.names = [ "proto-list" ]; }; by-spec."protobufjs".">= 1.1.4" = - self.by-version."protobufjs"."2.0.3"; - by-version."protobufjs"."2.0.3" = lib.makeOverridable self.buildNodePackage { - name = "protobufjs-2.0.3"; + self.by-version."protobufjs"."2.0.4"; + by-version."protobufjs"."2.0.4" = lib.makeOverridable self.buildNodePackage { + name = "protobufjs-2.0.4"; src = [ (self.patchSource fetchurl { - url = "http://registry.npmjs.org/protobufjs/-/protobufjs-2.0.3.tgz"; - name = "protobufjs-2.0.3.tgz"; - sha1 = "a33bfa95cee12b182ef08c6f3e0a0b296167a67f"; + url = "http://registry.npmjs.org/protobufjs/-/protobufjs-2.0.4.tgz"; + name = "protobufjs-2.0.4.tgz"; + sha1 = "109de55527459ce5bc91d72f1fd86b5a9c7f1058"; }) ]; buildInputs = @@ -11529,14 +11508,14 @@ }; "rbytes" = self.by-version."rbytes"."1.0.0"; by-spec."rc"."~0.3.0" = - self.by-version."rc"."0.3.2"; - by-version."rc"."0.3.2" = lib.makeOverridable self.buildNodePackage { - name = "rc-0.3.2"; + self.by-version."rc"."0.3.3"; + by-version."rc"."0.3.3" = lib.makeOverridable self.buildNodePackage { + name = "rc-0.3.3"; src = [ (fetchurl { - url = "http://registry.npmjs.org/rc/-/rc-0.3.2.tgz"; - name = "rc-0.3.2.tgz"; - sha1 = "cd8f895690f764621ccec110516b225286e8f69f"; + url = "http://registry.npmjs.org/rc/-/rc-0.3.3.tgz"; + name = "rc-0.3.3.tgz"; + sha1 = "2eac52d221dfdf5ba512def3ea27500a68dc3c07"; }) ]; buildInputs = @@ -11551,7 +11530,7 @@ passthru.names = [ "rc" ]; }; by-spec."rc"."~0.3.1" = - self.by-version."rc"."0.3.2"; + self.by-version."rc"."0.3.3"; by-spec."read"."1" = self.by-version."read"."1.0.5"; by-version."read"."1.0.5" = lib.makeOverridable self.buildNodePackage { @@ -11594,7 +11573,7 @@ deps = [ self.by-version."semver"."2.2.1" self.by-version."slide"."1.1.5" - self.by-version."read-package-json"."1.1.5" + self.by-version."read-package-json"."1.1.6" self.by-version."graceful-fs"."1.2.3" ]; peerDependencies = [ @@ -11617,7 +11596,7 @@ deps = [ self.by-version."semver"."2.2.1" self.by-version."slide"."1.1.5" - self.by-version."read-package-json"."1.1.5" + self.by-version."read-package-json"."1.1.6" self.by-version."graceful-fs"."2.0.1" ]; peerDependencies = [ @@ -11625,14 +11604,14 @@ passthru.names = [ "read-installed" ]; }; by-spec."read-package-json"."1" = - self.by-version."read-package-json"."1.1.5"; - by-version."read-package-json"."1.1.5" = lib.makeOverridable self.buildNodePackage { - name = "read-package-json-1.1.5"; + self.by-version."read-package-json"."1.1.6"; + by-version."read-package-json"."1.1.6" = lib.makeOverridable self.buildNodePackage { + name = "read-package-json-1.1.6"; src = [ (fetchurl { - url = "http://registry.npmjs.org/read-package-json/-/read-package-json-1.1.5.tgz"; - name = "read-package-json-1.1.5.tgz"; - sha1 = "f6a7a5820cc958ff02495badc55f7fe49a7677a1"; + url = "http://registry.npmjs.org/read-package-json/-/read-package-json-1.1.6.tgz"; + name = "read-package-json-1.1.6.tgz"; + sha1 = "a851dbbaca48ff78a87f890f0a9fdf43b1759d5a"; }) ]; buildInputs = @@ -11647,8 +11626,8 @@ ]; passthru.names = [ "read-package-json" ]; }; - by-spec."read-package-json"."~1.1.4" = - self.by-version."read-package-json"."1.1.5"; + by-spec."read-package-json"."~1.1.6" = + self.by-version."read-package-json"."1.1.6"; by-spec."readable-stream"."1.0" = self.by-version."readable-stream"."1.0.24"; by-version."readable-stream"."1.0.24" = lib.makeOverridable self.buildNodePackage { @@ -11689,6 +11668,8 @@ ]; passthru.names = [ "readable-stream" ]; }; + by-spec."readable-stream"."~1.0.17" = + self.by-version."readable-stream"."1.0.24"; by-spec."readable-stream"."~1.0.2" = self.by-version."readable-stream"."1.0.24"; by-spec."readable-stream"."~1.1.8" = @@ -11875,14 +11856,14 @@ passthru.names = [ "regexp-clone" ]; }; by-spec."replace"."~0.2.4" = - self.by-version."replace"."0.2.7"; - by-version."replace"."0.2.7" = lib.makeOverridable self.buildNodePackage { - name = "replace-0.2.7"; + self.by-version."replace"."0.2.8"; + by-version."replace"."0.2.8" = lib.makeOverridable self.buildNodePackage { + name = "replace-0.2.8"; src = [ (fetchurl { - url = "http://registry.npmjs.org/replace/-/replace-0.2.7.tgz"; - name = "replace-0.2.7.tgz"; - sha1 = "e22d08a9e2e6764337bb530166a4dd89c2558fda"; + url = "http://registry.npmjs.org/replace/-/replace-0.2.8.tgz"; + name = "replace-0.2.8.tgz"; + sha1 = "05fadc9800bf0e91459c229e867bdd9eac1a6d3d"; }) ]; buildInputs = @@ -11897,14 +11878,14 @@ passthru.names = [ "replace" ]; }; by-spec."request"."2" = - self.by-version."request"."2.31.0"; - by-version."request"."2.31.0" = lib.makeOverridable self.buildNodePackage { - name = "request-2.31.0"; + self.by-version."request"."2.33.0"; + by-version."request"."2.33.0" = lib.makeOverridable self.buildNodePackage { + name = "request-2.33.0"; src = [ (fetchurl { - url = "http://registry.npmjs.org/request/-/request-2.31.0.tgz"; - name = "request-2.31.0.tgz"; - sha1 = "4c8ac967c9a4b9410cb4ba1a61fdb644267eeeff"; + url = "http://registry.npmjs.org/request/-/request-2.33.0.tgz"; + name = "request-2.33.0.tgz"; + sha1 = "5167878131726070ec633752ea230a2379dc65ff"; }) ]; buildInputs = @@ -11915,7 +11896,7 @@ self.by-version."forever-agent"."0.5.0" self.by-version."node-uuid"."1.4.1" self.by-version."mime"."1.2.11" - self.by-version."tough-cookie"."0.9.15" + self.by-version."tough-cookie"."0.12.1" self.by-version."form-data"."0.1.2" self.by-version."tunnel-agent"."0.3.0" self.by-version."http-signature"."0.10.0" @@ -11928,9 +11909,9 @@ passthru.names = [ "request" ]; }; by-spec."request"."2 >=2.20.0" = - self.by-version."request"."2.31.0"; + self.by-version."request"."2.33.0"; by-spec."request"."2 >=2.25.0" = - self.by-version."request"."2.31.0"; + self.by-version."request"."2.33.0"; by-spec."request"."2.16.2" = self.by-version."request"."2.16.2"; by-version."request"."2.16.2" = lib.makeOverridable self.buildNodePackage { @@ -12011,9 +11992,9 @@ passthru.names = [ "request" ]; }; by-spec."request".">=2.12.0" = - self.by-version."request"."2.31.0"; + self.by-version."request"."2.33.0"; by-spec."request"."~2" = - self.by-version."request"."2.31.0"; + self.by-version."request"."2.33.0"; by-spec."request"."~2.21.0" = self.by-version."request"."2.21.0"; by-version."request"."2.21.0" = lib.makeOverridable self.buildNodePackage { @@ -12138,6 +12119,37 @@ ]; passthru.names = [ "request" ]; }; + by-spec."request"."~2.31.0" = + self.by-version."request"."2.31.0"; + by-version."request"."2.31.0" = lib.makeOverridable self.buildNodePackage { + name = "request-2.31.0"; + src = [ + (fetchurl { + url = "http://registry.npmjs.org/request/-/request-2.31.0.tgz"; + name = "request-2.31.0.tgz"; + sha1 = "4c8ac967c9a4b9410cb4ba1a61fdb644267eeeff"; + }) + ]; + buildInputs = + (self.nativeDeps."request" or []); + deps = [ + self.by-version."qs"."0.6.6" + self.by-version."json-stringify-safe"."5.0.0" + self.by-version."forever-agent"."0.5.0" + self.by-version."node-uuid"."1.4.1" + self.by-version."mime"."1.2.11" + self.by-version."tough-cookie"."0.9.15" + self.by-version."form-data"."0.1.2" + self.by-version."tunnel-agent"."0.3.0" + self.by-version."http-signature"."0.10.0" + self.by-version."oauth-sign"."0.3.0" + self.by-version."hawk"."1.0.0" + self.by-version."aws-sign2"."0.5.0" + ]; + peerDependencies = [ + ]; + passthru.names = [ "request" ]; + }; by-spec."request-progress"."~0.3.0" = self.by-version."request-progress"."0.3.1"; by-version."request-progress"."0.3.1" = lib.makeOverridable self.buildNodePackage { @@ -12293,26 +12305,26 @@ passthru.names = [ "restify" ]; }; by-spec."rethinkdb"."*" = - self.by-version."rethinkdb"."1.11.0-1"; - by-version."rethinkdb"."1.11.0-1" = lib.makeOverridable self.buildNodePackage { - name = "rethinkdb-1.11.0-1"; + self.by-version."rethinkdb"."1.11.0-3"; + by-version."rethinkdb"."1.11.0-3" = lib.makeOverridable self.buildNodePackage { + name = "rethinkdb-1.11.0-3"; src = [ (fetchurl { - url = "http://registry.npmjs.org/rethinkdb/-/rethinkdb-1.11.0-1.tgz"; - name = "rethinkdb-1.11.0-1.tgz"; - sha1 = "beab3376b9efa9ecf7f2fbf39c58ce80c8bd5dfd"; + url = "http://registry.npmjs.org/rethinkdb/-/rethinkdb-1.11.0-3.tgz"; + name = "rethinkdb-1.11.0-3.tgz"; + sha1 = "6db00acf53b6fa75b0183b01fa2d7cb24f027881"; }) ]; buildInputs = (self.nativeDeps."rethinkdb" or []); deps = [ - self.by-version."protobufjs"."2.0.3" + self.by-version."protobufjs"."2.0.4" ]; peerDependencies = [ ]; passthru.names = [ "rethinkdb" ]; }; - "rethinkdb" = self.by-version."rethinkdb"."1.11.0-1"; + "rethinkdb" = self.by-version."rethinkdb"."1.11.0-3"; by-spec."retry"."0.6.0" = self.by-version."retry"."0.6.0"; by-version."retry"."0.6.0" = lib.makeOverridable self.buildNodePackage { @@ -12373,14 +12385,14 @@ passthru.names = [ "rimraf" ]; }; by-spec."rimraf"."2" = - self.by-version."rimraf"."2.2.5"; - by-version."rimraf"."2.2.5" = lib.makeOverridable self.buildNodePackage { - name = "rimraf-2.2.5"; + self.by-version."rimraf"."2.2.6"; + by-version."rimraf"."2.2.6" = lib.makeOverridable self.buildNodePackage { + name = "rimraf-2.2.6"; src = [ (fetchurl { - url = "http://registry.npmjs.org/rimraf/-/rimraf-2.2.5.tgz"; - name = "rimraf-2.2.5.tgz"; - sha1 = "4e5c4f667b121afa806d0c5b58920996f9478aa0"; + url = "http://registry.npmjs.org/rimraf/-/rimraf-2.2.6.tgz"; + name = "rimraf-2.2.6.tgz"; + sha1 = "c59597569b14d956ad29cacc42bdddf5f0ea4f4c"; }) ]; buildInputs = @@ -12392,9 +12404,9 @@ passthru.names = [ "rimraf" ]; }; by-spec."rimraf"."2.x.x" = - self.by-version."rimraf"."2.2.5"; + self.by-version."rimraf"."2.2.6"; by-spec."rimraf"."~2" = - self.by-version."rimraf"."2.2.5"; + self.by-version."rimraf"."2.2.6"; by-spec."rimraf"."~2.0.2" = self.by-version."rimraf"."2.0.3"; by-version."rimraf"."2.0.3" = lib.makeOverridable self.buildNodePackage { @@ -12438,11 +12450,11 @@ passthru.names = [ "rimraf" ]; }; by-spec."rimraf"."~2.2.0" = - self.by-version."rimraf"."2.2.5"; + self.by-version."rimraf"."2.2.6"; by-spec."rimraf"."~2.2.2" = - self.by-version."rimraf"."2.2.5"; + self.by-version."rimraf"."2.2.6"; by-spec."rimraf"."~2.2.5" = - self.by-version."rimraf"."2.2.5"; + self.by-version."rimraf"."2.2.6"; by-spec."s3http"."*" = self.by-version."s3http"."0.0.4"; by-version."s3http"."0.0.4" = lib.makeOverridable self.buildNodePackage { @@ -12457,7 +12469,7 @@ buildInputs = (self.nativeDeps."s3http" or []); deps = [ - self.by-version."aws-sdk"."1.17.2" + self.by-version."aws-sdk"."1.17.3" self.by-version."commander"."2.0.0" self.by-version."http-auth"."2.0.7" self.by-version."express"."3.4.4" @@ -12754,6 +12766,25 @@ by-spec."send"."0.1.4" = self.by-version."send"."0.1.4"; by-spec."sequence"."*" = + self.by-version."sequence"."3.0.0"; + by-version."sequence"."3.0.0" = lib.makeOverridable self.buildNodePackage { + name = "sequence-3.0.0"; + src = [ + (fetchurl { + url = "http://registry.npmjs.org/sequence/-/sequence-3.0.0.tgz"; + name = "sequence-3.0.0.tgz"; + sha1 = "5957d3e03c70e270b2009a8c8bdaa97338a6e170"; + }) + ]; + buildInputs = + (self.nativeDeps."sequence" or []); + deps = [ + ]; + peerDependencies = [ + ]; + passthru.names = [ "sequence" ]; + }; + by-spec."sequence"."2.x" = self.by-version."sequence"."2.2.1"; by-version."sequence"."2.2.1" = lib.makeOverridable self.buildNodePackage { name = "sequence-2.2.1"; @@ -12772,8 +12803,6 @@ ]; passthru.names = [ "sequence" ]; }; - by-spec."sequence".">= 2.2.1" = - self.by-version."sequence"."2.2.1"; by-spec."sha"."~1.2.1" = self.by-version."sha"."1.2.3"; by-version."sha"."1.2.3" = lib.makeOverridable self.buildNodePackage { @@ -12836,14 +12865,14 @@ passthru.names = [ "shelljs" ]; }; by-spec."should"."*" = - self.by-version."should"."2.1.1"; - by-version."should"."2.1.1" = lib.makeOverridable self.buildNodePackage { - name = "should-2.1.1"; + self.by-version."should"."3.0.1"; + by-version."should"."3.0.1" = lib.makeOverridable self.buildNodePackage { + name = "should-3.0.1"; src = [ (fetchurl { - url = "http://registry.npmjs.org/should/-/should-2.1.1.tgz"; - name = "should-2.1.1.tgz"; - sha1 = "c648b13a8b464465c2f838ea0c93f12e4ae06c6b"; + url = "http://registry.npmjs.org/should/-/should-3.0.1.tgz"; + name = "should-3.0.1.tgz"; + sha1 = "b30fff8968b4701e2ea499de91d9b0ea4d37623e"; }) ]; buildInputs = @@ -12854,7 +12883,7 @@ ]; passthru.names = [ "should" ]; }; - "should" = self.by-version."should"."2.1.1"; + "should" = self.by-version."should"."3.0.1"; by-spec."sigmund"."~1.0.0" = self.by-version."sigmund"."1.0.0"; by-version."sigmund"."1.0.0" = lib.makeOverridable self.buildNodePackage { @@ -13537,14 +13566,14 @@ passthru.names = [ "strip-ansi" ]; }; by-spec."strong-data-uri"."~0.1.0" = - self.by-version."strong-data-uri"."0.1.0"; - by-version."strong-data-uri"."0.1.0" = lib.makeOverridable self.buildNodePackage { - name = "strong-data-uri-0.1.0"; + self.by-version."strong-data-uri"."0.1.1"; + by-version."strong-data-uri"."0.1.1" = lib.makeOverridable self.buildNodePackage { + name = "strong-data-uri-0.1.1"; src = [ (fetchurl { - url = "http://registry.npmjs.org/strong-data-uri/-/strong-data-uri-0.1.0.tgz"; - name = "strong-data-uri-0.1.0.tgz"; - sha1 = "a41235806b8c3bf0f6f324dc57dfe85bbab681a0"; + url = "http://registry.npmjs.org/strong-data-uri/-/strong-data-uri-0.1.1.tgz"; + name = "strong-data-uri-0.1.1.tgz"; + sha1 = "8660241807461d1d2dd247c70563f2f33e66c8ab"; }) ]; buildInputs = @@ -13557,14 +13586,14 @@ passthru.names = [ "strong-data-uri" ]; }; by-spec."stylus"."*" = - self.by-version."stylus"."0.42.0"; - by-version."stylus"."0.42.0" = lib.makeOverridable self.buildNodePackage { - name = "stylus-0.42.0"; + self.by-version."stylus"."0.42.1"; + by-version."stylus"."0.42.1" = lib.makeOverridable self.buildNodePackage { + name = "stylus-0.42.1"; src = [ (fetchurl { - url = "http://registry.npmjs.org/stylus/-/stylus-0.42.0.tgz"; - name = "stylus-0.42.0.tgz"; - sha1 = "5dc4d50dd205dbb7e6af6bf7f19546da24148e44"; + url = "http://registry.npmjs.org/stylus/-/stylus-0.42.1.tgz"; + name = "stylus-0.42.1.tgz"; + sha1 = "8e5bfec922e8d0037748cd05281d53ca602b6e4f"; }) ]; buildInputs = @@ -13580,7 +13609,7 @@ ]; passthru.names = [ "stylus" ]; }; - "stylus" = self.by-version."stylus"."0.42.0"; + "stylus" = self.by-version."stylus"."0.42.1"; by-spec."stylus"."0.27.2" = self.by-version."stylus"."0.27.2"; by-version."stylus"."0.27.2" = lib.makeOverridable self.buildNodePackage { @@ -13723,14 +13752,14 @@ passthru.names = [ "superagent" ]; }; by-spec."supertest"."*" = - self.by-version."supertest"."0.8.3"; - by-version."supertest"."0.8.3" = lib.makeOverridable self.buildNodePackage { - name = "supertest-0.8.3"; + self.by-version."supertest"."0.9.0"; + by-version."supertest"."0.9.0" = lib.makeOverridable self.buildNodePackage { + name = "supertest-0.9.0"; src = [ (fetchurl { - url = "http://registry.npmjs.org/supertest/-/supertest-0.8.3.tgz"; - name = "supertest-0.8.3.tgz"; - sha1 = "7af32af5bd74514f3fabc444facc9858ae438593"; + url = "http://registry.npmjs.org/supertest/-/supertest-0.9.0.tgz"; + name = "supertest-0.9.0.tgz"; + sha1 = "955efa32ad01fb9eecfc6f7c3122699a5843bba4"; }) ]; buildInputs = @@ -13743,7 +13772,7 @@ ]; passthru.names = [ "supertest" ]; }; - "supertest" = self.by-version."supertest"."0.8.3"; + "supertest" = self.by-version."supertest"."0.9.0"; by-spec."swig"."0.14.x" = self.by-version."swig"."0.14.0"; by-version."swig"."0.14.0" = lib.makeOverridable self.buildNodePackage { @@ -13865,6 +13894,26 @@ self.by-version."temp"."0.6.0"; by-spec."temp"."~0.6.0" = self.by-version."temp"."0.6.0"; + by-spec."tempfile"."~0.1.2" = + self.by-version."tempfile"."0.1.2"; + by-version."tempfile"."0.1.2" = lib.makeOverridable self.buildNodePackage { + name = "tempfile-0.1.2"; + src = [ + (fetchurl { + url = "http://registry.npmjs.org/tempfile/-/tempfile-0.1.2.tgz"; + name = "tempfile-0.1.2.tgz"; + sha1 = "81d4e51f35856592f3b51d568135791af3b038e0"; + }) + ]; + buildInputs = + (self.nativeDeps."tempfile" or []); + deps = [ + self.by-version."uuid"."1.4.1" + ]; + peerDependencies = [ + ]; + passthru.names = [ "tempfile" ]; + }; by-spec."text-table"."~0.1.1" = self.by-version."text-table"."0.1.1"; by-version."text-table"."0.1.1" = lib.makeOverridable self.buildNodePackage { @@ -13941,22 +13990,22 @@ ]; passthru.names = [ "through" ]; }; - by-spec."through2"."~0.1.0" = - self.by-version."through2"."0.1.0"; - by-version."through2"."0.1.0" = lib.makeOverridable self.buildNodePackage { - name = "through2-0.1.0"; + by-spec."through2"."~0.4.0" = + self.by-version."through2"."0.4.0"; + by-version."through2"."0.4.0" = lib.makeOverridable self.buildNodePackage { + name = "through2-0.4.0"; src = [ (fetchurl { - url = "http://registry.npmjs.org/through2/-/through2-0.1.0.tgz"; - name = "through2-0.1.0.tgz"; - sha1 = "54e756cc6a543c72bb5adf55e8a248686b84c9cc"; + url = "http://registry.npmjs.org/through2/-/through2-0.4.0.tgz"; + name = "through2-0.4.0.tgz"; + sha1 = "4c9a96e385ef082a86cce5b915ef512119bc5225"; }) ]; buildInputs = (self.nativeDeps."through2" or []); deps = [ self.by-version."readable-stream"."1.0.24" - self.by-version."xtend"."2.0.6" + self.by-version."xtend"."2.1.2" ]; peerDependencies = [ ]; @@ -14020,15 +14069,15 @@ ]; passthru.names = [ "tinycolor" ]; }; - by-spec."titanium"."*" = - self.by-version."titanium"."3.2.1-beta"; - by-version."titanium"."3.2.1-beta" = lib.makeOverridable self.buildNodePackage { - name = "titanium-3.2.1-beta"; + by-spec."titanium"."3.2.0" = + self.by-version."titanium"."3.2.0"; + by-version."titanium"."3.2.0" = lib.makeOverridable self.buildNodePackage { + name = "titanium-3.2.0"; src = [ (fetchurl { - url = "http://registry.npmjs.org/titanium/-/titanium-3.2.1-beta.tgz"; - name = "titanium-3.2.1-beta.tgz"; - sha1 = "3d92e09ea627584f11bec903052c6501f85ee8fa"; + url = "http://registry.npmjs.org/titanium/-/titanium-3.2.0.tgz"; + name = "titanium-3.2.0.tgz"; + sha1 = "97b25af99e99d4543f5cc2c7025b2c2f6199de6e"; }) ]; buildInputs = @@ -14048,13 +14097,13 @@ self.by-version."sprintf"."0.1.3" self.by-version."temp"."0.6.0" self.by-version."winston"."0.6.2" - self.by-version."wrench"."1.5.4" + self.by-version."wrench"."1.5.6" ]; peerDependencies = [ ]; passthru.names = [ "titanium" ]; }; - "titanium" = self.by-version."titanium"."3.2.1-beta"; + "titanium" = self.by-version."titanium"."3.2.0"; by-spec."tmp"."~0.0.20" = self.by-version."tmp"."0.0.23"; by-version."tmp"."0.0.23" = lib.makeOverridable self.buildNodePackage { @@ -14094,6 +14143,26 @@ ]; passthru.names = [ "touch" ]; }; + by-spec."tough-cookie".">=0.12.0" = + self.by-version."tough-cookie"."0.12.1"; + by-version."tough-cookie"."0.12.1" = lib.makeOverridable self.buildNodePackage { + name = "tough-cookie-0.12.1"; + src = [ + (fetchurl { + url = "http://registry.npmjs.org/tough-cookie/-/tough-cookie-0.12.1.tgz"; + name = "tough-cookie-0.12.1.tgz"; + sha1 = "8220c7e21abd5b13d96804254bd5a81ebf2c7d62"; + }) + ]; + buildInputs = + (self.nativeDeps."tough-cookie" or []); + deps = [ + self.by-version."punycode"."1.2.3" + ]; + peerDependencies = [ + ]; + passthru.names = [ "tough-cookie" ]; + }; by-spec."tough-cookie"."~0.9.15" = self.by-version."tough-cookie"."0.9.15"; by-version."tough-cookie"."0.9.15" = lib.makeOverridable self.buildNodePackage { @@ -14357,14 +14426,14 @@ by-spec."uglify-js"."~2.3.6" = self.by-version."uglify-js"."2.3.6"; by-spec."uglify-js"."~2.4.0" = - self.by-version."uglify-js"."2.4.8"; - by-version."uglify-js"."2.4.8" = lib.makeOverridable self.buildNodePackage { - name = "uglify-js-2.4.8"; + self.by-version."uglify-js"."2.4.11"; + by-version."uglify-js"."2.4.11" = lib.makeOverridable self.buildNodePackage { + name = "uglify-js-2.4.11"; src = [ (fetchurl { - url = "http://registry.npmjs.org/uglify-js/-/uglify-js-2.4.8.tgz"; - name = "uglify-js-2.4.8.tgz"; - sha1 = "70e33bd9bce9a27b896fd4fead4c7da434fcca09"; + url = "http://registry.npmjs.org/uglify-js/-/uglify-js-2.4.11.tgz"; + name = "uglify-js-2.4.11.tgz"; + sha1 = "ff2c824be664b715c1054e890b4b9027ed45b5c5"; }) ]; buildInputs = @@ -14532,14 +14601,14 @@ by-spec."underscore.string"."~2.3.3" = self.by-version."underscore.string"."2.3.3"; by-spec."unfunk-diff"."~0.0.1" = - self.by-version."unfunk-diff"."0.0.1"; - by-version."unfunk-diff"."0.0.1" = lib.makeOverridable self.buildNodePackage { - name = "unfunk-diff-0.0.1"; + self.by-version."unfunk-diff"."0.0.2"; + by-version."unfunk-diff"."0.0.2" = lib.makeOverridable self.buildNodePackage { + name = "unfunk-diff-0.0.2"; src = [ (fetchurl { - url = "http://registry.npmjs.org/unfunk-diff/-/unfunk-diff-0.0.1.tgz"; - name = "unfunk-diff-0.0.1.tgz"; - sha1 = "fd01490b7e53bc268f069f222fda10704c8f1265"; + url = "http://registry.npmjs.org/unfunk-diff/-/unfunk-diff-0.0.2.tgz"; + name = "unfunk-diff-0.0.2.tgz"; + sha1 = "8560d6b5cb3dcb1ed4d541e7fe59cea514697578"; }) ]; buildInputs = @@ -14567,7 +14636,7 @@ buildInputs = (self.nativeDeps."ungit" or []); deps = [ - self.by-version."express"."3.4.7" + self.by-version."express"."3.4.8" self.by-version."superagent"."0.15.7" self.by-version."lodash"."2.3.0" self.by-version."temp"."0.6.0" @@ -14575,12 +14644,12 @@ self.by-version."moment"."2.4.0" self.by-version."async"."0.2.9" self.by-version."ssh2"."0.2.16" - self.by-version."rc"."0.3.2" + self.by-version."rc"."0.3.3" self.by-version."uuid"."1.4.1" self.by-version."winston"."0.7.2" self.by-version."passport"."0.1.17" self.by-version."passport-local"."0.1.6" - self.by-version."npm"."1.3.23" + self.by-version."npm"."1.3.24" self.by-version."semver"."2.2.1" self.by-version."forever-monitor"."1.1.0" self.by-version."open"."0.0.4" @@ -14729,7 +14798,7 @@ self.by-version."i"."0.3.2" self.by-version."mkdirp"."0.3.5" self.by-version."ncp"."0.4.2" - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" ]; peerDependencies = [ ]; @@ -14760,6 +14829,8 @@ ]; passthru.names = [ "uuid" ]; }; + by-spec."uuid"."~1.4.0" = + self.by-version."uuid"."1.4.1"; by-spec."validator"."0.4.x" = self.by-version."validator"."0.4.28"; by-version."validator"."0.4.28" = lib.makeOverridable self.buildNodePackage { @@ -14934,7 +15005,7 @@ buildInputs = (self.nativeDeps."walk" or []); deps = [ - self.by-version."forEachAsync"."2.2.0" + self.by-version."forEachAsync"."2.2.1" ]; peerDependencies = [ ]; @@ -15113,7 +15184,7 @@ buildInputs = (self.nativeDeps."winser" or []); deps = [ - self.by-version."sequence"."2.2.1" + self.by-version."sequence"."3.0.0" self.by-version."commander"."2.1.0" ]; peerDependencies = [ @@ -15283,14 +15354,14 @@ passthru.names = [ "wrench" ]; }; by-spec."wrench"."~1.5.0" = - self.by-version."wrench"."1.5.4"; - by-version."wrench"."1.5.4" = lib.makeOverridable self.buildNodePackage { - name = "wrench-1.5.4"; + self.by-version."wrench"."1.5.6"; + by-version."wrench"."1.5.6" = lib.makeOverridable self.buildNodePackage { + name = "wrench-1.5.6"; src = [ (fetchurl { - url = "http://registry.npmjs.org/wrench/-/wrench-1.5.4.tgz"; - name = "wrench-1.5.4.tgz"; - sha1 = "2e8d9d3db3568cc1c001a4c8dceca772e5d21643"; + url = "http://registry.npmjs.org/wrench/-/wrench-1.5.6.tgz"; + name = "wrench-1.5.6.tgz"; + sha1 = "247b7dfe5d7d4374d5e449761fba634190d9b871"; }) ]; buildInputs = @@ -15302,7 +15373,7 @@ passthru.names = [ "wrench" ]; }; by-spec."wrench"."~1.5.4" = - self.by-version."wrench"."1.5.4"; + self.by-version."wrench"."1.5.6"; by-spec."ws"."0.4.x" = self.by-version."ws"."0.4.31"; by-version."ws"."0.4.31" = lib.makeOverridable self.buildNodePackage { @@ -15469,14 +15540,14 @@ passthru.names = [ "xmlbuilder" ]; }; by-spec."xmldom"."~0.1.16" = - self.by-version."xmldom"."0.1.17"; - by-version."xmldom"."0.1.17" = lib.makeOverridable self.buildNodePackage { - name = "xmldom-0.1.17"; + self.by-version."xmldom"."0.1.18"; + by-version."xmldom"."0.1.18" = lib.makeOverridable self.buildNodePackage { + name = "xmldom-0.1.18"; src = [ (fetchurl { - url = "http://registry.npmjs.org/xmldom/-/xmldom-0.1.17.tgz"; - name = "xmldom-0.1.17.tgz"; - sha1 = "c5debadc069f0a3967ddfbc01395a4d7cb0d4282"; + url = "http://registry.npmjs.org/xmldom/-/xmldom-0.1.18.tgz"; + name = "xmldom-0.1.18.tgz"; + sha1 = "cb0ca87d81106ea4e75f632c9fff044d9cd3394a"; }) ]; buildInputs = @@ -15525,22 +15596,21 @@ ]; passthru.names = [ "xoauth2" ]; }; - by-spec."xtend"."~2.0.6" = - self.by-version."xtend"."2.0.6"; - by-version."xtend"."2.0.6" = lib.makeOverridable self.buildNodePackage { - name = "xtend-2.0.6"; + by-spec."xtend"."~2.1.1" = + self.by-version."xtend"."2.1.2"; + by-version."xtend"."2.1.2" = lib.makeOverridable self.buildNodePackage { + name = "xtend-2.1.2"; src = [ (fetchurl { - url = "http://registry.npmjs.org/xtend/-/xtend-2.0.6.tgz"; - name = "xtend-2.0.6.tgz"; - sha1 = "5ea657a6dba447069c2e59c58a1138cb0c5e6cee"; + url = "http://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz"; + name = "xtend-2.1.2.tgz"; + sha1 = "6efecc2a4dad8e6962c4901b337ce7ba87b5d28b"; }) ]; buildInputs = (self.nativeDeps."xtend" or []); deps = [ - self.by-version."is-object"."0.1.2" - self.by-version."object-keys"."0.2.0" + self.by-version."object-keys"."0.4.0" ]; peerDependencies = [ ]; @@ -15581,7 +15651,7 @@ deps = [ self.by-version."cheerio"."0.12.4" self.by-version."request"."2.25.0" - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" self.by-version."tar"."0.1.19" self.by-version."diff"."1.0.8" self.by-version."mime"."1.2.11" @@ -15619,7 +15689,7 @@ (self.nativeDeps."yeoman-generator" or []); deps = [ self.by-version."cheerio"."0.12.4" - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" self.by-version."diff"."1.0.8" self.by-version."mime"."1.2.11" self.by-version."underscore.string"."2.3.3" @@ -15636,7 +15706,7 @@ self.by-version."findup-sync"."0.1.2" self.by-version."chalk"."0.3.0" self.by-version."text-table"."0.2.0" - self.by-version."download"."0.1.7" + self.by-version."download"."0.1.10" self.by-version."request"."2.27.0" self.by-version."file-utils"."0.1.5" ]; @@ -15659,7 +15729,7 @@ (self.nativeDeps."yeoman-generator" or []); deps = [ self.by-version."cheerio"."0.13.1" - self.by-version."rimraf"."2.2.5" + self.by-version."rimraf"."2.2.6" self.by-version."diff"."1.0.8" self.by-version."mime"."1.2.11" self.by-version."underscore.string"."2.3.3" @@ -15676,7 +15746,7 @@ self.by-version."findup-sync"."0.1.2" self.by-version."chalk"."0.4.0" self.by-version."text-table"."0.2.0" - self.by-version."download"."0.1.7" + self.by-version."download"."0.1.10" self.by-version."request"."2.30.0" self.by-version."file-utils"."0.1.5" self.by-version."class-extend"."0.1.1" diff --git a/pkgs/top-level/node-packages.json b/pkgs/top-level/node-packages.json index 2f9adca15f3..0e6d45bb551 100644 --- a/pkgs/top-level/node-packages.json +++ b/pkgs/top-level/node-packages.json @@ -114,5 +114,5 @@ , "rethinkdb" , "bower2nix" , "fetch-bower" -, "titanium" +, { "titanium": "3.2.0" } ]