forked from Imagelibrary/rtems
Added patch to fix GCC bug PR28400.
This commit is contained in:
65
contrib/crossrpms/patches/gcc-core-4.1.1-rtems-20060720.diff
Normal file
65
contrib/crossrpms/patches/gcc-core-4.1.1-rtems-20060720.diff
Normal file
@@ -0,0 +1,65 @@
|
||||
--- gcc-4.1.1.orig/gcc/config.gcc (revision 114982)
|
||||
+++ gcc-4.1.1/gcc/config.gcc (working copy)
|
||||
@@ -1560,7 +1560,7 @@
|
||||
tm_defines="MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64"
|
||||
use_fixproto=yes
|
||||
;;
|
||||
-mips*-*-rtems*)
|
||||
+mips-*-rtems*)
|
||||
tm_file="elfos.h ${tm_file} mips/elf.h mips/rtems.h rtems.h"
|
||||
tmake_file="mips/t-elf t-rtems mips/t-rtems"
|
||||
;;
|
||||
--- gcc-4.1.1.orig/gcc/config/c4x/rtems.h (revision 114982)
|
||||
+++ gcc-4.1.1/gcc/config/c4x/rtems.h (working copy)
|
||||
@@ -24,6 +24,5 @@
|
||||
#define TARGET_OS_CPP_BUILTINS() \
|
||||
do { \
|
||||
builtin_define ("__rtems__"); \
|
||||
- builtin_define ("__USE_INIT_FINI__"); \
|
||||
builtin_assert ("system=rtems"); \
|
||||
} while (0)
|
||||
--- gcc-4.1.1.orig/gcc/config/mips/elf.h (revision 114982)
|
||||
+++ gcc-4.1.1/gcc/config/mips/elf.h (working copy)
|
||||
@@ -48,5 +48,3 @@
|
||||
|
||||
#undef ENDFILE_SPEC
|
||||
#define ENDFILE_SPEC "crtend%O%s crtn%O%s"
|
||||
-
|
||||
-#define NO_IMPLICIT_EXTERN_C 1
|
||||
--- gcc-4.1.1.orig/gcc/config/mips/t-rtems (revision 114982)
|
||||
+++ gcc-4.1.1/gcc/config/mips/t-rtems (working copy)
|
||||
@@ -1,5 +1,16 @@
|
||||
# Custom multilibs for RTEMS
|
||||
|
||||
-MULTILIB_OPTIONS = mips1/mips3/mips32 msoft-float/msingle-float
|
||||
-MULTILIB_DIRNAMES = mips1 mips3 mips32 soft-float single
|
||||
-MULTILIB_MATCHES = msingle-float=m4650
|
||||
+# default is mips1 EB hard-float
|
||||
+MULTILIB_OPTIONS = mips1/mips3/mips32 EB/EL msoft-float
|
||||
+MULTILIB_DIRNAMES = mips1 mips3 mips32 eb el soft-float
|
||||
+MULTILIB_MATCHES = EL=mel EB=meb
|
||||
+
|
||||
+MULTILIB_EXCEPTIONS =
|
||||
+
|
||||
+# Big endian only
|
||||
+MULTILIB_EXCEPTIONS += EL*
|
||||
+MULTILIB_EXCEPTIONS += mips32/EL*
|
||||
+
|
||||
+# Little endian only
|
||||
+MULTILIB_EXCEPTIONS += mips3
|
||||
+MULTILIB_EXCEPTIONS += mips3/msoft-float
|
||||
--- gcc-4.1.1.orig/gcc/Makefile.in 2006-07-16 11:18:32.000000000 +1000
|
||||
+++ gcc-4.1.1/gcc/Makefile.in 2006-07-16 11:18:49.000000000 +1000
|
||||
@@ -3616,9 +3616,9 @@
|
||||
install-driver: installdirs xgcc$(exeext)
|
||||
-rm -f $(DESTDIR)$(bindir)/$(GCC_INSTALL_NAME)$(exeext)
|
||||
-$(INSTALL_PROGRAM) xgcc$(exeext) $(DESTDIR)$(bindir)/$(GCC_INSTALL_NAME)$(exeext)
|
||||
- -rm -f $(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-$(version)
|
||||
+ -rm -f $(DESTDIR)$(bindir)/$(target_noncanonical)-gcc-$(version)$(exeext)
|
||||
-( cd $(DESTDIR)$(bindir) && \
|
||||
- $(LN) $(GCC_INSTALL_NAME)$(exeext) $(target_noncanonical)-gcc-$(version) )
|
||||
+ $(LN) $(GCC_INSTALL_NAME)$(exeext) $(target_noncanonical)-gcc-$(version)$(exeext) )
|
||||
-if [ -f gcc-cross$(exeext) ] ; then \
|
||||
if [ -d $(DESTDIR)$(gcc_tooldir)/bin/. ] ; then \
|
||||
rm -f $(DESTDIR)$(gcc_tooldir)/bin/gcc$(exeext); \
|
||||
|
||||
Reference in New Issue
Block a user