forked from mirrors/nixpkgs
GCC 4.6: Add patch to fix GNU/Hurd builds.
svn path=/nixpkgs/trunk/; revision=32837
This commit is contained in:
parent
3214f4a844
commit
8bab00e0ad
|
@ -43,6 +43,16 @@ with stdenv.lib;
|
|||
with builtins;
|
||||
|
||||
let version = "4.6.3";
|
||||
|
||||
patches = [ ]
|
||||
++ 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 langVhdl ./ghdl-ortho-cflags.patch
|
||||
++ optional stdenv.isGNU ./hurd-sigrtmin.patch;
|
||||
|
||||
javaEcj = fetchurl {
|
||||
# The `$(top_srcdir)/ecj.jar' file is automatically picked up at
|
||||
# `configure' time.
|
||||
|
@ -137,15 +147,7 @@ stdenv.mkDerivation ({
|
|||
inherit langC langCC langFortran langJava langAda langGo;
|
||||
};
|
||||
|
||||
patches =
|
||||
[ ]
|
||||
++ 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 langVhdl ./ghdl-ortho-cflags.patch
|
||||
;
|
||||
inherit patches;
|
||||
|
||||
postPatch =
|
||||
if (stdenv.system == "i586-pc-gnu"
|
||||
|
@ -278,6 +280,7 @@ stdenv.mkDerivation ({
|
|||
else "install";
|
||||
|
||||
crossAttrs = {
|
||||
patches = patches ++ [ ./hurd-sigrtmin.patch ];
|
||||
AR = "${stdenv.cross.config}-ar";
|
||||
LD = "${stdenv.cross.config}-ld";
|
||||
CC = "${stdenv.cross.config}-gcc";
|
||||
|
|
14
pkgs/development/compilers/gcc/4.6/hurd-sigrtmin.patch
Normal file
14
pkgs/development/compilers/gcc/4.6/hurd-sigrtmin.patch
Normal file
|
@ -0,0 +1,14 @@
|
|||
GNU libc on GNU/Hurd doesn't define `__SIGRTMIN'.
|
||||
From <http://patch-tracker.debian.org/patch/series/view/gcc-4.6/4.6.3-1/hurd-fixes.diff>.
|
||||
|
||||
--- a/libgcc/generic-morestack.c 2011-12-19 21:14:52.000000000 +0100
|
||||
+++ b/libgcc/generic-morestack.c 2011-12-19 21:15:35.000000000 +0100
|
||||
@@ -507,7 +507,7 @@
|
||||
sigemptyset (&__morestack_initial_sp.mask);
|
||||
|
||||
sigfillset (&__morestack_fullmask);
|
||||
-#ifdef __GLIBC__
|
||||
+#if defined(__GLIBC__) && defined(__SIGRTMIN)
|
||||
/* In glibc, the first two real time signals are used by the NPTL
|
||||
threading library. By taking them out of the set of signals, we
|
||||
avoiding copying the signal mask in pthread_sigmask. More
|
Loading…
Reference in a new issue