summaryrefslogtreecommitdiffstats
path: root/contrib/crossrpms/patches/gcc-core-4.1.1-rtems-20060626.diff
blob: b9ba776edb09f629a05c9a8a30f778e57941d88a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
--- 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