~angelsl/ubuntu/wily/gcc-5/mips-cross

« back to all changes in this revision

Viewing changes to debian/patches/gcc-multiarch.diff

  • Committer: angelsl
  • Date: 2015-10-30 03:30:35 UTC
  • Revision ID: angelsl-20151030033035-rmug41zm8hyjgisg
Original import

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# DP: - Remaining multiarch patches, not yet submitted upstream.
 
2
# DP: - Add MULTIARCH_DIRNAME definitions for multilib configurations,
 
3
# DP:   which are used for the non-multilib builds.
 
4
 
 
5
2013-06-12  Matthias Klose  <doko@ubuntu.com>
 
6
 
 
7
        * config/i386/t-linux64: Set MULTIARCH_DIRNAME.
 
8
        * config/i386/t-kfreebsd: Set MULTIARCH_DIRNAME.
 
9
        * config.gcc (i[34567]86-*-linux* | x86_64-*-linux*): Prepend
 
10
        i386/t-linux to $tmake_file;
 
11
        set default ABI to N64 for mips64el.
 
12
        * config/mips/t-linux64: Set MULTIARCH_DIRNAME.
 
13
        * config/rs6000/t-linux64: Set MULTIARCH_DIRNAME.
 
14
        * config/s390/t-linux64: Set MULTIARCH_DIRNAME.
 
15
        * config/sparc/t-linux64: Set MULTIARCH_DIRNAME.
 
16
        * src/gcc/config/mips/mips.h: (/usr)/lib as default path.
 
17
 
 
18
Index: b/src/gcc/config/sh/t-linux
 
19
===================================================================
 
20
--- a/src/gcc/config/sh/t-linux
 
21
+++ b/src/gcc/config/sh/t-linux
 
22
@@ -1,2 +1,4 @@
 
23
 MULTILIB_DIRNAMES= 
 
24
 MULTILIB_MATCHES = 
 
25
+
 
26
+MULTILIB_OSDIRNAMES = sh4-linux-gnu:sh4-linux-gnu sh4_nofpu-linux-gnu:sh4-linux-gnu
 
27
Index: b/src/gcc/config/sparc/t-linux64
 
28
===================================================================
 
29
--- a/src/gcc/config/sparc/t-linux64
 
30
+++ b/src/gcc/config/sparc/t-linux64
 
31
@@ -27,3 +27,5 @@ MULTILIB_OPTIONS = m64/m32
 
32
 MULTILIB_DIRNAMES = 64 32
 
33
 MULTILIB_OSDIRNAMES = ../lib64$(call if_multiarch,:sparc64-linux-gnu)
 
34
 MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:sparc-linux-gnu)
 
35
+
 
36
+MULTIARCH_DIRNAME = $(call if_multiarch,sparc$(if $(findstring 64,$(target)),64)-linux-gnu)
 
37
Index: b/src/gcc/config/s390/t-linux64
 
38
===================================================================
 
39
--- a/src/gcc/config/s390/t-linux64
 
40
+++ b/src/gcc/config/s390/t-linux64
 
41
@@ -9,3 +9,5 @@ MULTILIB_OPTIONS = m64/m31
 
42
 MULTILIB_DIRNAMES = 64 32
 
43
 MULTILIB_OSDIRNAMES = ../lib64$(call if_multiarch,:s390x-linux-gnu)
 
44
 MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:s390-linux-gnu)
 
45
+
 
46
+MULTIARCH_DIRNAME = $(call if_multiarch,s390$(if $(findstring s390x,$(target)),x)-linux-gnu)
 
47
Index: b/src/gcc/config/rs6000/t-linux64
 
48
===================================================================
 
49
--- a/src/gcc/config/rs6000/t-linux64
 
50
+++ b/src/gcc/config/rs6000/t-linux64
 
51
@@ -31,6 +31,8 @@ MULTILIB_EXTRA_OPTS :=
 
52
 MULTILIB_OSDIRNAMES := m64=../lib64$(call if_multiarch,:powerpc64-linux-gnu)
 
53
 MULTILIB_OSDIRNAMES += m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:powerpc-linux-gnu)
 
54
 
 
55
+MULTIARCH_DIRNAME = $(call if_multiarch,powerpc$(if $(findstring 64,$(target)),64)-linux-gnu)
 
56
+
 
57
 rs6000-linux.o: $(srcdir)/config/rs6000/rs6000-linux.c
 
58
        $(COMPILE) $<
 
59
        $(POSTCOMPILE)
 
60
Index: b/src/gcc/config/i386/t-linux64
 
61
===================================================================
 
62
--- a/src/gcc/config/i386/t-linux64
 
63
+++ b/src/gcc/config/i386/t-linux64
 
64
@@ -36,3 +36,13 @@ MULTILIB_DIRNAMES   = $(patsubst m%, %,
 
65
 MULTILIB_OSDIRNAMES = m64=../lib64$(call if_multiarch,:x86_64-linux-gnu)
 
66
 MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:i386-linux-gnu)
 
67
 MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-linux-gnux32)
 
68
+
 
69
+ifneq (,$(findstring x86_64,$(target)))
 
70
+  ifneq (,$(findstring biarchx32.h,$(tm_include_list)))
 
71
+  MULTIARCH_DIRNAME = $(call if_multiarch,x86_64-linux-gnux32)
 
72
+  else
 
73
+  MULTIARCH_DIRNAME = $(call if_multiarch,x86_64-linux-gnu)
 
74
+  endif
 
75
+else
 
76
+  MULTIARCH_DIRNAME = $(call if_multiarch,i386-linux-gnu)
 
77
+endif
 
78
Index: b/src/gcc/config/i386/t-kfreebsd
 
79
===================================================================
 
80
--- a/src/gcc/config/i386/t-kfreebsd
 
81
+++ b/src/gcc/config/i386/t-kfreebsd
 
82
@@ -1,5 +1,9 @@
 
83
-MULTIARCH_DIRNAME = $(call if_multiarch,i386-kfreebsd-gnu)
 
84
+ifeq (,$(MULTIARCH_DIRNAME))
 
85
+  MULTIARCH_DIRNAME = $(call if_multiarch,i386-kfreebsd-gnu)
 
86
+endif
 
87
 
 
88
 # MULTILIB_OSDIRNAMES are set in t-linux64.
 
89
 KFREEBSD_OS = $(filter kfreebsd%, $(word 3, $(subst -, ,$(target))))
 
90
 MULTILIB_OSDIRNAMES := $(filter-out mx32=%,$(subst linux,$(KFREEBSD_OS),$(MULTILIB_OSDIRNAMES)))
 
91
+
 
92
+MULTIARCH_DIRNAME := $(subst linux,$(KFREEBSD_OS),$(MULTIARCH_DIRNAME))
 
93
Index: b/src/gcc/config/mips/t-linux64
 
94
===================================================================
 
95
--- a/src/gcc/config/mips/t-linux64
 
96
+++ b/src/gcc/config/mips/t-linux64
 
97
@@ -24,3 +24,13 @@ MULTILIB_OSDIRNAMES = \
 
98
        ../lib32$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabin32$(MIPS_SOFT)) \
 
99
        ../lib$(call if_multiarch,:mips$(MIPS_EL)-linux-gnu$(MIPS_SOFT)) \
 
100
        ../lib64$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabi64$(MIPS_SOFT))
 
101
+
 
102
+ifneq (,$(findstring abin32,$(target)))
 
103
+MULTIARCH_DIRNAME = $(call if_multiarch,mips64$(MIPS_EL)-linux-gnuabin32$(MIPS_SOFT))
 
104
+else
 
105
+ifneq (,$(findstring abi64,$(target)))
 
106
+MULTIARCH_DIRNAME = $(call if_multiarch,mips64$(MIPS_EL)-linux-gnuabi64$(MIPS_SOFT))
 
107
+else
 
108
+MULTIARCH_DIRNAME = $(call if_multiarch,mips$(MIPS_EL)-linux-gnu$(MIPS_SOFT))
 
109
+endif
 
110
+endif
 
111
Index: b/src/gcc/config.gcc
 
112
===================================================================
 
113
--- a/src/gcc/config.gcc
 
114
+++ b/src/gcc/config.gcc
 
115
@@ -2038,6 +2038,10 @@ mips*-*-linux*)                          # Linux MIPS, either
 
116
                        default_mips_arch=mips64r2
 
117
                        enable_mips_multilibs="yes"
 
118
                        ;;
 
119
+               mips64*-*-linux-gnuabi64 | mipsisa64*-*-linux-gnuabi64)
 
120
+                       default_mips_abi=64
 
121
+                       enable_mips_multilibs="yes"
 
122
+                       ;;
 
123
                mips64*-*-linux* | mipsisa64*-*-linux*)
 
124
                        default_mips_abi=n32
 
125
                        enable_mips_multilibs="yes"
 
126
@@ -4247,7 +4251,7 @@ case ${target} in
 
127
        i[34567]86-*-darwin* | x86_64-*-darwin*)
 
128
                ;;
 
129
        i[34567]86-*-linux* | x86_64-*-linux*)
 
130
-               tmake_file="$tmake_file i386/t-linux"
 
131
+               tmake_file="i386/t-linux $tmake_file"
 
132
                ;;
 
133
        i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu)
 
134
                tmake_file="$tmake_file i386/t-kfreebsd"
 
135
Index: b/src/gcc/config/aarch64/t-aarch64-linux
 
136
===================================================================
 
137
--- a/src/gcc/config/aarch64/t-aarch64-linux
 
138
+++ b/src/gcc/config/aarch64/t-aarch64-linux
 
139
@@ -22,7 +22,7 @@ LIB1ASMSRC   = aarch64/lib1funcs.asm
 
140
 LIB1ASMFUNCS = _aarch64_sync_cache_range
 
141
 
 
142
 AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be)
 
143
-MULTILIB_OSDIRNAMES = mabi.lp64=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu)
 
144
-MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu)
 
145
+MULTILIB_OSDIRNAMES = mabi.lp64=../lib$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu)
 
146
+MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)_ilp32-linux-gnu)
 
147
 
 
148
-MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32
 
149
+MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu)
 
150
Index: b/src/gcc/config/mips/mips.h
 
151
===================================================================
 
152
--- a/src/gcc/config/mips/mips.h
 
153
+++ b/src/gcc/config/mips/mips.h
 
154
@@ -3185,13 +3185,3 @@ extern GTY(()) struct target_globals *mi
 
155
    with arguments ARGS.  */
 
156
 #define PMODE_INSN(NAME, ARGS) \
 
157
   (Pmode == SImode ? NAME ## _si ARGS : NAME ## _di ARGS)
 
158
-
 
159
-/* If we are *not* using multilibs and the default ABI is not ABI_32 we
 
160
-   need to change these from /lib and /usr/lib.  */
 
161
-#if MIPS_ABI_DEFAULT == ABI_N32
 
162
-#define STANDARD_STARTFILE_PREFIX_1 "/lib32/"
 
163
-#define STANDARD_STARTFILE_PREFIX_2 "/usr/lib32/"
 
164
-#elif MIPS_ABI_DEFAULT == ABI_64
 
165
-#define STANDARD_STARTFILE_PREFIX_1 "/lib64/"
 
166
-#define STANDARD_STARTFILE_PREFIX_2 "/usr/lib64/"
 
167
-#endif