Merge branch 'glibc-2.25' into staging
The largest problem-causers should be fixed now (within).
This commit is contained in:
commit
2cb76ff1ff
@ -66,6 +66,8 @@ let
|
|||||||
# libuuid, slowing down program startup a lot).
|
# libuuid, slowing down program startup a lot).
|
||||||
./no-ldconfig.patch
|
./no-ldconfig.patch
|
||||||
|
|
||||||
|
./glibc-2.25-enosys.patch
|
||||||
|
|
||||||
] ++ optionals stdenv.isCygwin [
|
] ++ optionals stdenv.isCygwin [
|
||||||
./2.5.2-ctypes-util-find_library.patch
|
./2.5.2-ctypes-util-find_library.patch
|
||||||
./2.5.2-tkinter-x11.patch
|
./2.5.2-tkinter-x11.patch
|
||||||
|
@ -0,0 +1,15 @@
|
|||||||
|
https://bugs.python.org/issue29157
|
||||||
|
https://github.com/python/cpython/commit/01bdbad3e951
|
||||||
|
diff --git a/Python/random.c b/Python/random.c
|
||||||
|
index 2f83b5d..0b775ec 100644
|
||||||
|
--- a/Python/random.c
|
||||||
|
+++ b/Python/random.c
|
||||||
|
@@ -98,7 +98,7 @@ win32_urandom(unsigned char *buffer, Py_ssize_t size, int raise)
|
||||||
|
|
||||||
|
/* Issue #25003: Don't use getentropy() on Solaris (available since
|
||||||
|
* Solaris 11.3), it is blocking whereas os.urandom() should not block. */
|
||||||
|
-#elif defined(HAVE_GETENTROPY) && !defined(sun)
|
||||||
|
+#elif defined(HAVE_GETENTROPY) && !defined(sun) && !defined(linux)
|
||||||
|
#define PY_GETENTROPY 1
|
||||||
|
|
||||||
|
/* Fill buffer with size pseudo-random bytes generated by getentropy().
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl
|
{ stdenv, fetchurl, fetchpatch
|
||||||
, bzip2
|
, bzip2
|
||||||
, gdbm
|
, gdbm
|
||||||
, lzma
|
, lzma
|
||||||
@ -55,6 +55,14 @@ in stdenv.mkDerivation {
|
|||||||
substituteInPlace configure --replace '-Wl,-stack_size,1000000' ' '
|
substituteInPlace configure --replace '-Wl,-stack_size,1000000' ' '
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(fetchpatch {
|
||||||
|
name = "glibc-2.25-enosys.patch";
|
||||||
|
url = https://github.com/python/cpython/commit/035ba5da3e53e.patch;
|
||||||
|
sha256 = "1y74ir1w5cq542w27rgzgp70chhq2x047db9911mihpab8p2nj71";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
postPatch = optionalString (x11Support && (tix != null)) ''
|
postPatch = optionalString (x11Support && (tix != null)) ''
|
||||||
substituteInPlace "Lib/tkinter/tix.py" --replace "os.environ.get('TIX_LIBRARY')" "os.environ.get('TIX_LIBRARY') or '${tix}/lib'"
|
substituteInPlace "Lib/tkinter/tix.py" --replace "os.environ.get('TIX_LIBRARY')" "os.environ.get('TIX_LIBRARY') or '${tix}/lib'"
|
||||||
'';
|
'';
|
||||||
|
@ -28,7 +28,17 @@ stdenv.mkDerivation rec {
|
|||||||
src = ./config-compat.patch;
|
src = ./config-compat.patch;
|
||||||
inherit configVersion;
|
inherit configVersion;
|
||||||
})
|
})
|
||||||
|
(fetchpatch {
|
||||||
|
name = "glibc-2.25.diff";
|
||||||
|
url = "https://cgit.freedesktop.org/fontconfig/patch/?id=1ab5258f7c";
|
||||||
|
sha256 = "0x2a4qx51j3gqcp1kp4lisdzmhrkw1zw0r851d82ksgjlc0vkbaz";
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
# additionally required for the glibc-2.25 patch; avoid requiring gperf
|
||||||
|
postPatch = ''
|
||||||
|
sed s/CHAR_WIDTH/CHARWIDTH/g -i src/fcobjshash.{h,gperf}
|
||||||
|
touch src/*
|
||||||
|
'';
|
||||||
|
|
||||||
outputs = [ "bin" "dev" "lib" "out" ]; # $out contains all the config
|
outputs = [ "bin" "dev" "lib" "out" ]; # $out contains all the config
|
||||||
|
|
||||||
|
@ -10,8 +10,8 @@ cross:
|
|||||||
, preConfigure ? "", ... }@args:
|
, preConfigure ? "", ... }@args:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "2.24";
|
version = "2.25";
|
||||||
sha256 = "1ghzp41ryvsqxn4rhrm8r25wc33m2jf8zrcc1pj3jxyk8ad9a0by";
|
sha256 = "067bd9bb3390e79aa45911537d13c3721f1d9d3769931a30c2681bfee66f23a0";
|
||||||
in
|
in
|
||||||
|
|
||||||
assert cross != null -> gccCross != null;
|
assert cross != null -> gccCross != null;
|
||||||
@ -138,7 +138,7 @@ stdenv.mkDerivation ({
|
|||||||
lib.optionalString (cross != null) "-${cross.config}";
|
lib.optionalString (cross != null) "-${cross.config}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnu/glibc/glibc-${version}.tar.gz";
|
url = "mirror://gnu/glibc/glibc-${version}.tar.xz";
|
||||||
inherit sha256;
|
inherit sha256;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -81,7 +81,7 @@ in
|
|||||||
# to bootstrap-tools; on cross-arm this stripping would break objects.
|
# to bootstrap-tools; on cross-arm this stripping would break objects.
|
||||||
if [ -z "$crossConfig" ]; then
|
if [ -z "$crossConfig" ]; then
|
||||||
for i in "$out"/lib/*.a; do
|
for i in "$out"/lib/*.a; do
|
||||||
strip -S "$i"
|
[ "$i" = "$out/lib/libm.a" ] || strip -S "$i"
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -1,10 +0,0 @@
|
|||||||
{ callPackage, fetchurl, ... } @ args:
|
|
||||||
|
|
||||||
callPackage ./generic.nix (args // rec {
|
|
||||||
version = "3.4.17";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "ftp://ftp.gnutls.org/gcrypt/gnutls/v3.4/gnutls-${version}.tar.xz";
|
|
||||||
sha256 = "0bhp8cqrmw15yins65cn0zwbcpj1vmymr4wnbm151sfmf2kfhl4v";
|
|
||||||
};
|
|
||||||
})
|
|
@ -12,7 +12,8 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
buildInputs = [ coreutils ]; # bin/updatedb script needs to call sort
|
buildInputs = [ coreutils ]; # bin/updatedb script needs to call sort
|
||||||
|
|
||||||
doCheck = !stdenv.isDarwin;
|
# Since glibc-2.25 the i686 tests hang reliably right after test-sleep.
|
||||||
|
doCheck = !stdenv.isDarwin && (stdenv.system != "i686-linux");
|
||||||
|
|
||||||
outputs = [ "out" "info" ];
|
outputs = [ "out" "info" ];
|
||||||
|
|
||||||
|
@ -7511,11 +7511,7 @@ with pkgs;
|
|||||||
|
|
||||||
gnu-efi = callPackage ../development/libraries/gnu-efi { };
|
gnu-efi = callPackage ../development/libraries/gnu-efi { };
|
||||||
|
|
||||||
gnutls = gnutls34;
|
gnutls = gnutls35;
|
||||||
|
|
||||||
gnutls34 = callPackage ../development/libraries/gnutls/3.4.nix {
|
|
||||||
guileBindings = config.gnutls.guile or false;
|
|
||||||
};
|
|
||||||
|
|
||||||
gnutls35 = callPackage ../development/libraries/gnutls/3.5.nix {
|
gnutls35 = callPackage ../development/libraries/gnutls/3.5.nix {
|
||||||
guileBindings = config.gnutls.guile or false;
|
guileBindings = config.gnutls.guile or false;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user