diff options
-rw-r--r-- | pkgs/development/interpreters/perl/5.20/default.nix | 9 | ||||
-rw-r--r-- | pkgs/development/interpreters/perl/5.20/perl-5.20.2-gcc5_fixes-1.patch | 127 | ||||
-rw-r--r-- | pkgs/development/libraries/gettext/default.nix | 10 | ||||
-rw-r--r-- | pkgs/development/libraries/glibc/common.nix | 2 | ||||
-rw-r--r-- | pkgs/development/libraries/glibc/glibc-locale-incompatibility.patch | 25 | ||||
-rw-r--r-- | pkgs/development/libraries/libffi/default.nix | 12 | ||||
-rw-r--r-- | pkgs/development/libraries/libpng/default.nix | 6 | ||||
-rw-r--r-- | pkgs/development/libraries/mesa/default.nix | 4 | ||||
-rw-r--r-- | pkgs/development/tools/misc/texinfo/5.2.nix | 11 | ||||
-rw-r--r-- | pkgs/development/tools/misc/texinfo/6.0.nix | 14 | ||||
-rw-r--r-- | pkgs/shells/bash/bash-4.3-patches.nix | 2 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 5 |
12 files changed, 74 insertions, 153 deletions
diff --git a/pkgs/development/interpreters/perl/5.20/default.nix b/pkgs/development/interpreters/perl/5.20/default.nix index 05d64e9c511e..659fad6bb9b0 100644 --- a/pkgs/development/interpreters/perl/5.20/default.nix +++ b/pkgs/development/interpreters/perl/5.20/default.nix @@ -21,11 +21,11 @@ in with stdenv.lib; stdenv.mkDerivation rec { - name = "perl-5.20.2"; + name = "perl-5.20.3"; src = fetchurl { url = "mirror://cpan/authors/id/S/SH/SHAY/${name}.tar.gz"; - sha256 = "17cvplgpxbm1hshxlkra2fldn4da1iap1lsnb04hdm8ply93k95i"; + sha256 = "0jlvpd5l5nk7lzfd4akdg1sw6vinbkj6izclyyr0lrbidfky691m"; }; outputs = [ "out" "man" ]; @@ -33,8 +33,6 @@ stdenv.mkDerivation rec { patches = [ # Do not look in /usr etc. for dependencies. ./no-sys-dirs.patch - # Remove in 5.20.3 - ./perl-5.20.2-gcc5_fixes-1.patch ] ++ optional stdenv.isSunOS ./ld-shared.patch ++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ] ; @@ -84,6 +82,9 @@ stdenv.mkDerivation rec { ''} '' + optionalString stdenv.isDarwin '' substituteInPlace hints/darwin.sh --replace "env MACOSX_DEPLOYMENT_TARGET=10.3" "" + '' + optionalString (!enableThreading) '' + # We need to do this because the bootstrap doesn't have a static libpthread + sed -i 's,\(libswanted.*\)pthread,\1,g' Configure ''; preBuild = optionalString (!(stdenv ? cc && stdenv.cc.nativeTools)) diff --git a/pkgs/development/interpreters/perl/5.20/perl-5.20.2-gcc5_fixes-1.patch b/pkgs/development/interpreters/perl/5.20/perl-5.20.2-gcc5_fixes-1.patch deleted file mode 100644 index 21f3ca8d7a54..000000000000 --- a/pkgs/development/interpreters/perl/5.20/perl-5.20.2-gcc5_fixes-1.patch +++ /dev/null @@ -1,127 +0,0 @@ -Submitted By: Ken Moffat <ken at linuxfromscratch dot org> -Date: 2015-04-17 -Initial Package Version: 5.20.2 -Upstream Status: Committed -Origin: Petr Pisař and Tony Cook -Description: Fixes Errno.pm and h2ph with gcc-5. - -1. cherry-picked because the change to $version will not apply, from -commit 816b056ffb99ae54642320e20dc30a59fd1effef -Author: Petr Písař <ppisar@redhat.com> -Date: Wed Feb 11 15:46:37 2015 +0100 - - Fix Errno.pm generation for gcc-5.0 - - gcc-5.0 -E interleaves now line numbers with expended macros, so that - the generated errno.c will be preprocessed to - - EBFONT => [[ - 59 - ]] - - which is hard to parse in in line-based reader. - - So use -P option with gcc >= 5.0. Global -P usage would break makedepend, - global -ftrack-macro-expansion=0 would break lib/h2ph.t. - - RT#123784 - -diff --git a/ext/Errno/Errno_pm.PL b/ext/Errno/Errno_pm.PL -index 3dadfce..c6bfa06 100644 ---- a/ext/Errno/Errno_pm.PL -+++ b/ext/Errno/Errno_pm.PL -@@ -215,20 +215,31 @@ sub write_errno_pm { - { # BeOS (support now removed) did not enter this block - # invoke CPP and read the output - -+ my $inhibit_linemarkers = ''; -+ if ($Config{gccversion} =~ /\A(\d+)\./ and $1 >= 5) { -+ # GCC 5.0 interleaves expanded macros with line numbers breaking -+ # each line into multiple lines. RT#123784 -+ $inhibit_linemarkers = ' -P'; -+ } -+ - if ($^O eq 'VMS') { -- my $cpp = "$Config{cppstdin} $Config{cppflags} $Config{cppminus}"; -+ my $cpp = "$Config{cppstdin} $Config{cppflags}" . -+ $inhibit_linemarkers . " $Config{cppminus}"; - $cpp =~ s/sys\$input//i; - open(CPPO,"$cpp errno.c |") or - die "Cannot exec $Config{cppstdin}"; - } elsif ($IsMSWin32 || $^O eq 'NetWare') { -- open(CPPO,"$Config{cpprun} $Config{cppflags} errno.c |") or -- die "Cannot run '$Config{cpprun} $Config{cppflags} errno.c'"; -+ my $cpp = "$Config{cpprun} $Config{cppflags}" . -+ $inhibit_linemarkers; -+ open(CPPO,"$cpp errno.c |") or -+ die "Cannot run '$cpp errno.c'"; - } elsif ($IsSymbian) { -- my $cpp = "gcc -E -I$ENV{SDK}\\epoc32\\include\\libc -"; -+ my $cpp = "gcc -E -I$ENV{SDK}\\epoc32\\include\\libc" . -+ $inhibit_linemarkers ." -"; - open(CPPO,"$cpp < errno.c |") - or die "Cannot exec $cpp"; - } else { -- my $cpp = default_cpp(); -+ my $cpp = default_cpp() . $inhibit_linemarkers; - open(CPPO,"$cpp < errno.c |") - or die "Cannot exec $cpp"; - } - -commit 3bea78d24634e630b610f59957e7a019205a67b2 -Author: Tony Cook <tony@develop-help.com> -Date: Mon Feb 16 15:57:00 2015 +1100 - - h2ph: correct handling of hex constants for the preamble - - Previously they were treated as identifiers resulting in code - generated like C< &0xFFF >. - - We also try to prevent compile-time warnings from large hex integers, - the user isn't responsible for the generated code, so we delay those - warnings to run-time. - -diff --git a/utils/h2ph.PL b/utils/h2ph.PL -index 9a8b14d..d082f22 100644 ---- a/utils/h2ph.PL -+++ b/utils/h2ph.PL -@@ -769,7 +769,7 @@ sub inc_dirs - sub build_preamble_if_necessary - { - # Increment $VERSION every time this function is modified: -- my $VERSION = 3; -+ my $VERSION = 4; - my $preamble = "$Dest_dir/_h2ph_pre.ph"; - - # Can we skip building the preamble file? -@@ -788,6 +788,11 @@ sub build_preamble_if_necessary - - open PREAMBLE, ">$preamble" or die "Cannot open $preamble: $!"; - print PREAMBLE "# This file was created by h2ph version $VERSION\n"; -+ # Prevent non-portable hex constants from warning. -+ # -+ # We still produce an overflow warning if we can't represent -+ # a hex constant as an integer. -+ print PREAMBLE "no warnings qw(portable);\n"; - - foreach (sort keys %define) { - if ($opt_D) { -@@ -814,6 +819,18 @@ DEFINE - # integer: - print PREAMBLE - "unless (defined &$_) { sub $_() { $1 } }\n\n"; -+ } elsif ($define{$_} =~ /^([+-]?0x[\da-f]+)U?L{0,2}$/i) { -+ # hex integer -+ # Special cased, since perl warns on hex integers -+ # that can't be represented in a UV. -+ # -+ # This way we get the warning at time of use, so the user -+ # only gets the warning if they happen to use this -+ # platform-specific definition. -+ my $code = $1; -+ $code = "hex('$code')" if length $code > 10; -+ print PREAMBLE -+ "unless (defined &$_) { sub $_() { $code } }\n\n"; - } elsif ($define{$_} =~ /^\w+$/) { - my $def = $define{$_}; - if ($isatype{$def}) { diff --git a/pkgs/development/libraries/gettext/default.nix b/pkgs/development/libraries/gettext/default.nix index 874c767046b2..3d7cfc0ca310 100644 --- a/pkgs/development/libraries/gettext/default.nix +++ b/pkgs/development/libraries/gettext/default.nix @@ -28,6 +28,12 @@ stdenv.mkDerivation (rec { "gt_cv_func_CFLocaleCopyCurrent=no" ]); + patchPhase = '' + substituteInPlace gettext-tools/projects/KDE/trigger --replace "/bin/pwd" pwd + substituteInPlace gettext-tools/projects/GNOME/trigger --replace "/bin/pwd" pwd + substituteInPlace gettext-tools/src/project-id --replace "/bin/pwd" pwd + ''; + # On cross building, gettext supposes that the wchar.h from libc # does not fulfill gettext needs, so it tries to work with its # own wchar.h file, which does not cope well with the system's @@ -90,8 +96,8 @@ stdenv.mkDerivation (rec { # Make sure `error.c' gets compiled and is part of `libgettextlib.la'. # This fixes: # gettext-0.18.1.1/gettext-tools/src/msgcmp.c:371: undefined reference to `_error_message_count' - - '' sed -i gettext-tools/gnulib-lib/Makefile.in \ + '' + sed -i gettext-tools/gnulib-lib/Makefile.in \ -e 's/am_libgettextlib_la_OBJECTS =/am_libgettextlib_la_OBJECTS = error.lo/g' ''; }) diff --git a/pkgs/development/libraries/glibc/common.nix b/pkgs/development/libraries/glibc/common.nix index cf356ccefbed..26d2f2454b45 100644 --- a/pkgs/development/libraries/glibc/common.nix +++ b/pkgs/development/libraries/glibc/common.nix @@ -61,6 +61,8 @@ stdenv.mkDerivation ({ ./security-bdf1ff05.patch ./cve-2014-8121.patch ./cve-2015-1781.patch + + ./glibc-locale-incompatibility.patch ]; postPatch = diff --git a/pkgs/development/libraries/glibc/glibc-locale-incompatibility.patch b/pkgs/development/libraries/glibc/glibc-locale-incompatibility.patch new file mode 100644 index 000000000000..8ca2ce4cd88a --- /dev/null +++ b/pkgs/development/libraries/glibc/glibc-locale-incompatibility.patch @@ -0,0 +1,25 @@ +http://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/patches/glibc-locale-incompatibility.patch + +This patch avoids an assertion failure when incompatible locale data +is encountered: + + https://sourceware.org/ml/libc-alpha/2015-09/msg00575.html + +--- glibc-2.22/locale/loadlocale.c 2015-09-22 17:16:02.321981548 +0200 ++++ glibc-2.22/locale/loadlocale.c 2015-09-22 17:17:34.814659064 +0200 +@@ -120,10 +120,11 @@ + _nl_value_type_LC_XYZ array. There are all pointers. */ + switch (category) + { +-#define CATTEST(cat) \ +- case LC_##cat: \ +- assert (cnt < (sizeof (_nl_value_type_LC_##cat) \ +- / sizeof (_nl_value_type_LC_##cat[0]))); \ ++#define CATTEST(cat) \ ++ case LC_##cat: \ ++ if (cnt >= (sizeof (_nl_value_type_LC_##cat) \ ++ / sizeof (_nl_value_type_LC_##cat[0]))) \ ++ goto puntdata; \ + break + CATTEST (NUMERIC); + CATTEST (TIME); diff --git a/pkgs/development/libraries/libffi/default.nix b/pkgs/development/libraries/libffi/default.nix index 824b909f1d91..5c981e664cb4 100644 --- a/pkgs/development/libraries/libffi/default.nix +++ b/pkgs/development/libraries/libffi/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, stdenv }: +{ fetchurl, stdenv, dejagnu, doCheck ? false }: stdenv.mkDerivation rec { name = "libffi-3.2.1"; @@ -10,11 +10,15 @@ stdenv.mkDerivation rec { patches = if stdenv.isCygwin then [ ./3.2.1-cygwin.patch ] else null; + buildInputs = stdenv.lib.optional doCheck dejagnu; + configureFlags = [ "--with-gcc-arch=generic" # no detection of -march= or -mtune= "--enable-pax_emutramp" ]; + inherit doCheck; + dontStrip = stdenv ? cross; # Don't run the native `strip' when cross-compiling. # Install headers in the right place. @@ -22,7 +26,7 @@ stdenv.mkDerivation rec { ln -s${if (stdenv.isFreeBSD || stdenv.isOpenBSD || stdenv.isDarwin) then "" else "r"}v "$out/lib/"libffi*/include "$out/include" ''; - meta = { + meta = with stdenv.lib; { description = "A foreign function call interface library"; longDescription = '' The libffi library provides a portable, high level programming @@ -40,8 +44,8 @@ stdenv.mkDerivation rec { ''; homepage = http://sourceware.org/libffi/; # See http://github.com/atgreen/libffi/blob/master/LICENSE . - license = stdenv.lib.licenses.free; + license = licenses.free; maintainers = [ ]; - platforms = stdenv.lib.platforms.all; + platforms = platforms.all; }; } diff --git a/pkgs/development/libraries/libpng/default.nix b/pkgs/development/libraries/libpng/default.nix index a2454aa02f04..4e18dcb680f9 100644 --- a/pkgs/development/libraries/libpng/default.nix +++ b/pkgs/development/libraries/libpng/default.nix @@ -3,11 +3,11 @@ assert zlib != null; let - version = "1.6.19"; - sha256 = "1s1mmkl79ghiczi2x2rbnp6y70v4c5pr8g3icxn9h5imymbmc71i"; + version = "1.6.20"; + sha256 = "12wis4rlisfnw79pj2778m42m94xpi9nq8m385hxk11lkyg9biam"; patch_src = fetchurl { url = "mirror://sourceforge/libpng-apng/libpng-${version}-apng.patch.gz"; - sha256 = "0bgqkac16yhl0zwjzq2zwkixg2l2x3a6blbk3k0wqz0lza2a6jrh"; + sha256 = "11xgal9qk6fmqdgcb37xg55f2y58wizszw54p1pyq855d2xpwfz6"; }; whenPatched = stdenv.lib.optionalString apngSupport; diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix index 11fafc8f0381..ca566fd1b11b 100644 --- a/pkgs/development/libraries/mesa/default.nix +++ b/pkgs/development/libraries/mesa/default.nix @@ -22,7 +22,7 @@ else */ let - version = "11.0.5"; + version = "11.0.8"; # this is the default search path for DRI drivers driverLink = "/run/opengl-driver" + stdenv.lib.optionalString stdenv.isi686 "-32"; in @@ -36,7 +36,7 @@ stdenv.mkDerivation { "https://launchpad.net/mesa/trunk/${version}/+download/mesa-${version}.tar.xz" "ftp://ftp.freedesktop.org/pub/mesa/${version}/mesa-${version}.tar.xz" ]; - sha256 = "9c255a2a6695fcc6ef4a279e1df0aeaf417dc142f39ee59dfb533d80494bb67a"; + sha256 = "5696e4730518b6805d2ed5def393c4293f425a2c2c01bd5ed4bdd7ad62f7ad75"; }; prePatch = "patchShebangs ."; diff --git a/pkgs/development/tools/misc/texinfo/5.2.nix b/pkgs/development/tools/misc/texinfo/5.2.nix index c43ebcd2de28..99582e0f8a3d 100644 --- a/pkgs/development/tools/misc/texinfo/5.2.nix +++ b/pkgs/development/tools/misc/texinfo/5.2.nix @@ -1,4 +1,6 @@ -{ stdenv, fetchurl, ncurses, perl, xz, interactive ? false }: +{ stdenv, fetchurl, ncurses, perl, xz, procps, interactive ? false }: + +with stdenv.lib; stdenv.mkDerivation rec { name = "texinfo-5.2"; @@ -9,7 +11,8 @@ stdenv.mkDerivation rec { }; buildInputs = [ perl xz ] - ++ stdenv.lib.optional interactive ncurses; + ++ optional interactive ncurses + ++ optional doCheck procps; # for tests preInstall = '' installFlags="TEXMF=$out/texmf-dist"; @@ -21,8 +24,8 @@ stdenv.mkDerivation rec { meta = { homepage = "http://www.gnu.org/software/texinfo/"; description = "The GNU documentation system"; - license = stdenv.lib.licenses.gpl3Plus; - platforms = stdenv.lib.platforms.all; + license = licenses.gpl3Plus; + platforms = platforms.all; longDescription = '' Texinfo is the official documentation format of the GNU project. diff --git a/pkgs/development/tools/misc/texinfo/6.0.nix b/pkgs/development/tools/misc/texinfo/6.0.nix index 670c7182150e..507ca22cd1ae 100644 --- a/pkgs/development/tools/misc/texinfo/6.0.nix +++ b/pkgs/development/tools/misc/texinfo/6.0.nix @@ -1,4 +1,6 @@ -{ stdenv, fetchurl, ncurses, perl, xz, libiconv, gawk, interactive ? false }: +{ stdenv, fetchurl, ncurses, perl, xz, libiconv, gawk, procps, interactive ? false }: + +with stdenv.lib; stdenv.mkDerivation rec { name = "texinfo-6.0"; @@ -9,17 +11,19 @@ stdenv.mkDerivation rec { }; buildInputs = [ perl xz ] - ++ stdenv.lib.optionals stdenv.isSunOS [ libiconv gawk ] - ++ stdenv.lib.optional interactive ncurses; + ++ optionals stdenv.isSunOS [ libiconv gawk ] + ++ optional interactive ncurses + ++ optional doCheck procps; # for tests - configureFlags = stdenv.lib.optionalString stdenv.isSunOS "AWK=${gawk}/bin/awk"; + configureFlags = stdenv.lib.optional stdenv.isSunOS "AWK=${gawk}/bin/awk"; preInstall = '' installFlags="TEXMF=$out/texmf-dist"; installTargets="install install-tex"; ''; - doCheck = !stdenv.isDarwin && !interactive && !stdenv.isSunOS/*flaky*/; + doCheck = interactive # simplify bootstrapping + && !stdenv.isDarwin && !stdenv.isSunOS/*flaky*/; meta = with stdenv.lib; { homepage = "http://www.gnu.org/software/texinfo/"; diff --git a/pkgs/shells/bash/bash-4.3-patches.nix b/pkgs/shells/bash/bash-4.3-patches.nix index c994ed636a96..f84ac836e941 100644 --- a/pkgs/shells/bash/bash-4.3-patches.nix +++ b/pkgs/shells/bash/bash-4.3-patches.nix @@ -42,5 +42,5 @@ patch: [ (patch "039" "1v3l3vkc3g2b6fjycqwlakr8xhiw6bmw6q0zd6bi0m0m4bnxr55b") (patch "040" "0sypv66vsldmc95gwvf7ylz1k7y37vnvdsjg8ajjr6b2j9mkkfw4") (patch "041" "06ic2gdpbi1afik3wqf9d4vh95if4bz8bmhcgr555621dsb35i2f") -(patch "042" "1bwhssay66n75fy0pxcrwbm032s6fvfg7dblzbrzzn5k38a56nmp") +(patch "042" "06a90k0p6bqc4wk2dsmapna69124an76xvlnlj3xm497vci968dc") ] diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2163fd81f78c..402d00e31794 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6670,7 +6670,10 @@ let }; glib = callPackage ../development/libraries/glib { }; - glib-tested = glib.override { doCheck = true; }; # checked version separate to break cycles + glib-tested = glib.override { # checked version separate to break cycles + doCheck = true; + libffi = libffi.override { doCheck = true; }; + }; glibmm = callPackage ../development/libraries/glibmm { }; glib_networking = callPackage ../development/libraries/glib-networking {}; |