forked from mirrors/nixpkgs
GCC 4.4: Fix shared library support of sparc64-linux-gnu cross-compiler.
svn path=/nixpkgs/trunk/; revision=20975
This commit is contained in:
parent
7b9ccbd457
commit
7f6b1e9abd
|
@ -120,7 +120,8 @@ stdenv.mkDerivation ({
|
|||
# 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 langVhdl ./ghdl-ortho-cflags.patch
|
||||
++ optional (cross != null && cross.arch == "sparc64") ./pr41818.patch;
|
||||
|
||||
inherit noSysDirs profiledCompiler staticCompiler langJava crossStageStatic
|
||||
libcCross;
|
||||
|
|
26
pkgs/development/compilers/gcc-4.4/pr41818.patch
Normal file
26
pkgs/development/compilers/gcc-4.4/pr41818.patch
Normal file
|
@ -0,0 +1,26 @@
|
|||
From <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41818>. This fixes compilation
|
||||
of the sparc64-linux-gnu cross-compiler with shared libraries.
|
||||
|
||||
--- trunk/Makefile.in 2010/01/07 19:21:46 155705
|
||||
+++ trunk/Makefile.in 2010/01/07 19:53:50 155706
|
||||
@@ -259,7 +259,7 @@
|
||||
# directories built for the target.
|
||||
TARGET_CONFIGARGS = @target_configargs@ --with-target-subdir="$(TARGET_SUBDIR)"
|
||||
# This is the list of variables to export in the environment when
|
||||
-# configuring subdirectories for the host system.
|
||||
+# configuring subdirectories for the target system.
|
||||
BASE_TARGET_EXPORTS = \
|
||||
$(BASE_EXPORTS) \
|
||||
AR="$(AR_FOR_TARGET)"; export AR; \
|
||||
@@ -281,7 +281,10 @@
|
||||
STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
|
||||
WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
|
||||
WINDMC="$(WINDMC_FOR_TARGET)"; export WINDMC; \
|
||||
- $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
|
||||
+@if gcc-bootstrap
|
||||
+ $(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
|
||||
+@endif gcc-bootstrap
|
||||
+ $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
|
||||
|
||||
RAW_CXX_TARGET_EXPORTS = \
|
||||
$(BASE_TARGET_EXPORTS) \
|
|
@ -1988,9 +1988,6 @@ let
|
|||
libcCross = libcCross;
|
||||
profiledCompiler = false;
|
||||
enableMultilib = false;
|
||||
# cross-building for ultrasparc in 4.4.3 will require disabling shared due to a gcc bug.
|
||||
# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41818
|
||||
enableShared = if (crossSystem.arch == "sparc64") then false else true;
|
||||
crossStageStatic = false;
|
||||
cross = assert crossSystem != null; crossSystem;
|
||||
});
|
||||
|
|
Loading…
Reference in a new issue