Merge lp:~michaelh1/crosstool-ng/aarch64-linaro-tip into lp:~linaro-toolchain-dev/crosstool-ng/linaro
- aarch64-linaro-tip
- Merge into linaro
Status: | Merged |
---|---|
Merged at revision: | 2505 |
Proposed branch: | lp:~michaelh1/crosstool-ng/aarch64-linaro-tip |
Merge into: | lp:~linaro-toolchain-dev/crosstool-ng/linaro |
Diff against target: |
1311 lines (+1139/-13) 13 files modified
config/binutils/binutils.in (+2/-2) config/cc/gcc.in (+8/-0) contrib/linaro/patches/gcc/linaro-4.7+bzr115029/gcc-multiarch-doc.patch (+66/-0) contrib/linaro/patches/gcc/linaro-4.7+bzr115029/gcc-multiarch.patch (+663/-0) contrib/linaro/patches/gcc/linaro-4.7+bzr115029/gcc-nls.patch (+75/-0) contrib/linaro/patches/gcc/linaro-4.7+bzr115029/link-with-cxx.patch (+15/-0) contrib/linaro/patches/gcc/linaro-4.7+bzr115029/multilib-defaults.patch (+12/-0) contrib/linaro/patches/gcc/linaro-4.7+bzr115029/multilib.patch (+46/-0) contrib/linaro/patches/gcc/linaro-4.7+bzr115029/multilibwithmultiarch.patch (+133/-0) contrib/linaro/patches/gcc/linaro-4.7+bzr115029/triplet.patch (+91/-0) contrib/linaro/update-aarch64.sh (+18/-3) samples/linaro-aarch64-linux-gnu/crosstool.config (+5/-4) samples/linaro-aarch64-none-elf/crosstool.config (+5/-4) |
To merge this branch: | bzr merge lp:~michaelh1/crosstool-ng/aarch64-linaro-tip |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Linaro Toolchain Builder | Pending | ||
Review via email: mp+130284@code.launchpad.net |
This proposal supersedes a proposal from 2012-10-18.
Commit message
Description of the change
config/gcc: add a Linaro GCC tip option for aarch64.
Michael Hope (michaelh1) wrote : Posted in a previous version of this proposal | # |
Michael Hope (michaelh1) wrote : Posted in a previous version of this proposal | # |
cbuild has taken a snapshot of this branch at r2506 and queued it for build.
The diff against the ancestor r2504 is available at:
http://
and will be built on the following builders:
i686-lucid
You can track the build queue at:
http://
cbuild-snapshot: crosstool-
cbuild-ancestor: lp:~linaro-toolchain-dev/crosstool-ng/linaro+bzr2504
cbuild-state: check
Michael Hope (michaelh1) wrote : | # |
cbuild has taken a snapshot of this branch at r2507 and queued it for build.
The diff against the ancestor r2504 is available at:
http://
and will be built on the following builders:
i686-lucid
You can track the build queue at:
http://
cbuild-snapshot: crosstool-
cbuild-ancestor: lp:~linaro-toolchain-dev/crosstool-ng/linaro+bzr2504
cbuild-state: check
Linaro Toolchain Builder (cbuild) wrote : | # |
cbuild successfully built this on i686-lucid-
The build results are available at:
http://
(no diff for crosstool-ng merges)
The full diff is at:
http://
The full testsuite results are at:
http://
cbuild-checked: i686-lucid-
Preview Diff
1 | === modified file 'config/binutils/binutils.in' | |||
2 | --- config/binutils/binutils.in 2012-10-03 21:28:32 +0000 | |||
3 | +++ config/binutils/binutils.in 2012-10-18 05:18:20 +0000 | |||
4 | @@ -10,7 +10,7 @@ | |||
5 | 10 | 10 | ||
6 | 11 | config BINUTILS_V_2_24_PRE | 11 | config BINUTILS_V_2_24_PRE |
7 | 12 | bool | 12 | bool |
9 | 13 | prompt "2.24~20120920+gitb05c76f (EXPERIMENTAL)" | 13 | prompt "2.24~20121016+git142208f (EXPERIMENTAL)" |
10 | 14 | depends on EXPERIMENTAL && ARCH_aarch64 | 14 | depends on EXPERIMENTAL && ARCH_aarch64 |
11 | 15 | select BINUTILS_2_22_or_later | 15 | select BINUTILS_2_22_or_later |
12 | 16 | 16 | ||
13 | @@ -62,7 +62,7 @@ | |||
14 | 62 | string | 62 | string |
15 | 63 | # Don't remove next line | 63 | # Don't remove next line |
16 | 64 | # CT_INSERT_VERSION_STRING_BELOW | 64 | # CT_INSERT_VERSION_STRING_BELOW |
18 | 65 | default "2.24~20120920+gitb05c76f" if BINUTILS_V_2_24_PRE | 65 | default "2.24~20121016+git142208f" if BINUTILS_V_2_24_PRE |
19 | 66 | default "2.22" if BINUTILS_V_2_22 | 66 | default "2.22" if BINUTILS_V_2_22 |
20 | 67 | default "2.21.53" if BINUTILS_V_2_21_53 | 67 | default "2.21.53" if BINUTILS_V_2_21_53 |
21 | 68 | default "2.21.1a" if BINUTILS_V_2_21_1a | 68 | default "2.21.1a" if BINUTILS_V_2_21_1a |
22 | 69 | 69 | ||
23 | === modified file 'config/cc/gcc.in' | |||
24 | --- config/cc/gcc.in 2012-10-12 01:58:28 +0000 | |||
25 | +++ config/cc/gcc.in 2012-10-18 05:18:20 +0000 | |||
26 | @@ -42,6 +42,13 @@ | |||
27 | 42 | depends on CC_GCC_SHOW_LINARO | 42 | depends on CC_GCC_SHOW_LINARO |
28 | 43 | select CC_GCC_4_7 | 43 | select CC_GCC_4_7 |
29 | 44 | 44 | ||
30 | 45 | config CC_V_linaro_4_7_TIP | ||
31 | 46 | bool | ||
32 | 47 | prompt "linaro-4.7+bzr115029 (EXPERIMENTAL)" | ||
33 | 48 | depends on EXPERIMENTAL && ARCH_aarch64 | ||
34 | 49 | depends on CC_GCC_SHOW_LINARO | ||
35 | 50 | select CC_GCC_4_7 | ||
36 | 51 | |||
37 | 45 | config CC_V_arm_aarch64_4_7_PRE | 52 | config CC_V_arm_aarch64_4_7_PRE |
38 | 46 | bool | 53 | bool |
39 | 47 | prompt "arm-aarch64-4.7+svn191987 (EXPERIMENTAL)" | 54 | prompt "arm-aarch64-4.7+svn191987 (EXPERIMENTAL)" |
40 | @@ -353,6 +360,7 @@ | |||
41 | 353 | # CT_INSERT_VERSION_STRING_BELOW | 360 | # CT_INSERT_VERSION_STRING_BELOW |
42 | 354 | default "arm-aarch64-4.7+svn191987" if CC_V_arm_aarch64_4_7_PRE | 361 | default "arm-aarch64-4.7+svn191987" if CC_V_arm_aarch64_4_7_PRE |
43 | 355 | default "linaro-4.7-2012.10" if CC_V_linaro_4_7_2012_10 | 362 | default "linaro-4.7-2012.10" if CC_V_linaro_4_7_2012_10 |
44 | 363 | default "linaro-4.7+bzr115029" if CC_V_linaro_4_7_TIP | ||
45 | 356 | default "4.7.0" if CC_V_4_7_0 | 364 | default "4.7.0" if CC_V_4_7_0 |
46 | 357 | default "4.6.2" if CC_V_4_6_2 | 365 | default "4.6.2" if CC_V_4_6_2 |
47 | 358 | default "4.6.1" if CC_V_4_6_1 | 366 | default "4.6.1" if CC_V_4_6_1 |
48 | 359 | 367 | ||
49 | === added directory 'contrib/linaro/patches/gcc/linaro-4.7+bzr115029' | |||
50 | === added file 'contrib/linaro/patches/gcc/linaro-4.7+bzr115029/gcc-multiarch-doc.patch' | |||
51 | --- contrib/linaro/patches/gcc/linaro-4.7+bzr115029/gcc-multiarch-doc.patch 1970-01-01 00:00:00 +0000 | |||
52 | +++ contrib/linaro/patches/gcc/linaro-4.7+bzr115029/gcc-multiarch-doc.patch 2012-10-18 05:18:20 +0000 | |||
53 | @@ -0,0 +1,66 @@ | |||
54 | 1 | # DP: Document -print-multiarch option | ||
55 | 2 | |||
56 | 3 | --- a/gcc/doc/fragments.texi | ||
57 | 4 | +++ b/gcc/doc/fragments.texi | ||
58 | 5 | @@ -129,6 +129,33 @@ | ||
59 | 6 | of options to be used for all builds. If you set this, you should | ||
60 | 7 | probably set @code{CRTSTUFF_T_CFLAGS} to a dash followed by it. | ||
61 | 8 | |||
62 | 9 | +@findex MULTILIB_OSDIRNAMES | ||
63 | 10 | +@item MULTILIB_OSDIRNAMES | ||
64 | 11 | +If @code{MULTILIB_OPTIONS} is used, this variable specifies the list | ||
65 | 12 | +of OS subdirectory names. The format is either the same as of | ||
66 | 13 | +@code{MULTILIB_DIRNAMES}, or a set of mappings. When it is the same | ||
67 | 14 | +as @code{MULTILIB_DIRNAMES}, it describes the multilib directories | ||
68 | 15 | +using OS conventions, rather than GCC conventions. When it is a set | ||
69 | 16 | +of mappings of the form @var{gccdir}=@var{osdir}, the left side gives | ||
70 | 17 | +the GCC convention and the right gives the equivalent OS defined | ||
71 | 18 | +location. If the @var{osdir} part begins with a @samp{!}, the os | ||
72 | 19 | +directory names are used exclusively. Use the mapping when there is | ||
73 | 20 | +no one-to-one equivalence between GCC levels and the OS. | ||
74 | 21 | + | ||
75 | 22 | +For multilib enabled configurations (see @code{MULTIARCH_DIRNAME}) | ||
76 | 23 | +below), the multilib name is appended to each directory name, separated | ||
77 | 24 | +by a colon (e.g. @samp{../lib:x86_64-linux-gnu}). | ||
78 | 25 | + | ||
79 | 26 | +@findex MULTIARCH_DIRNAME | ||
80 | 27 | +@item MULTIARCH_DIRNAME | ||
81 | 28 | +If @code{MULTIARCH_DIRNAME} is used, this variable specifies the | ||
82 | 29 | +multiarch name for this configuration. For multiarch enabled | ||
83 | 30 | +configurations it is used to search libraries and crt files in | ||
84 | 31 | +@file{/lib/@var{multiarch}} and @file{/usr/lib/@var{multiarch}}, and | ||
85 | 32 | +system header files in @file{/usr/include/@var{multiarch}}. | ||
86 | 33 | +@code{MULTIARCH_DIRNAME} is not used for multilib enabled | ||
87 | 34 | +configurations, but encoded in @code{MULTILIB_OSDIRNAMES} instead. | ||
88 | 35 | + | ||
89 | 36 | @findex SPECS | ||
90 | 37 | @item SPECS | ||
91 | 38 | Unfortunately, setting @code{MULTILIB_EXTRA_OPTS} is not enough, since | ||
92 | 39 | --- a/gcc/doc/invoke.texi | ||
93 | 40 | +++ b/gcc/doc/invoke.texi | ||
94 | 41 | @@ -6011,6 +6011,11 @@ | ||
95 | 42 | @file{../lib32}, or if OS libraries are present in @file{lib/@var{subdir}} | ||
96 | 43 | subdirectories it prints e.g.@: @file{amd64}, @file{sparcv9} or @file{ev6}. | ||
97 | 44 | |||
98 | 45 | +@item -print-multiarch | ||
99 | 46 | +@opindex print-multiarch | ||
100 | 47 | +Print the path to OS libraries for the selected multiarch, | ||
101 | 48 | +relative to some @file{lib} subdirectory. | ||
102 | 49 | + | ||
103 | 50 | @item -print-prog-name=@var{program} | ||
104 | 51 | @opindex print-prog-name | ||
105 | 52 | Like @option{-print-file-name}, but searches for a program such as @samp{cpp}. | ||
106 | 53 | --- a/gcc/doc/install.texi | ||
107 | 54 | +++ b/gcc/doc/install.texi | ||
108 | 55 | @@ -1036,6 +1036,11 @@ | ||
109 | 56 | conventions, etc.@: should not be built. The default is to build a | ||
110 | 57 | predefined set of them. | ||
111 | 58 | |||
112 | 59 | +@item --enable-multiarch | ||
113 | 60 | +Specify wether to enable or disable multiarch support. The default is | ||
114 | 61 | +to detect for glibc start files in a multiarch location, and enable it | ||
115 | 62 | +if the files are found. | ||
116 | 63 | + | ||
117 | 64 | Some targets provide finer-grained control over which multilibs are built | ||
118 | 65 | (e.g., @option{--disable-softfloat}): | ||
119 | 66 | @table @code | ||
120 | 0 | 67 | ||
121 | === added file 'contrib/linaro/patches/gcc/linaro-4.7+bzr115029/gcc-multiarch.patch' | |||
122 | --- contrib/linaro/patches/gcc/linaro-4.7+bzr115029/gcc-multiarch.patch 1970-01-01 00:00:00 +0000 | |||
123 | +++ contrib/linaro/patches/gcc/linaro-4.7+bzr115029/gcc-multiarch.patch 2012-10-18 05:18:20 +0000 | |||
124 | @@ -0,0 +1,663 @@ | |||
125 | 1 | # DP: Add multiarch support to GCC. | ||
126 | 2 | # DP: | ||
127 | 3 | # DP: Convert the multilib option to a target triplet, | ||
128 | 4 | # DP: add multiarch include directories and libraries path: | ||
129 | 5 | # DP: /usr/local/include/<arch>-linux-gnu | ||
130 | 6 | # DP: /usr/include/<arch>-linux-gnu | ||
131 | 7 | # DP: /usr/lib/<arch>-linux-gnu | ||
132 | 8 | # DP: to the system paths. | ||
133 | 9 | |||
134 | 10 | 2011-08-18 Matthias Klose <doko@ubuntu.com> | ||
135 | 11 | |||
136 | 12 | * doc/invoke.texi: Document -print-multiarch. | ||
137 | 13 | * Makefile.in (s-mlib): Pass MULTIARCH_DIRNAME to genmultilib. | ||
138 | 14 | * genmultilib: Add new option for the multiarch name. | ||
139 | 15 | * gcc.c (multiarch_dir): Define. | ||
140 | 16 | (for_each_path): Search for multiarch suffixes. | ||
141 | 17 | (driver_handle_option): Handle multiarch option. | ||
142 | 18 | (do_spec_1): Pass -imultiarch if defined. | ||
143 | 19 | (main): Print multiarch. | ||
144 | 20 | (set_multilib_dir): Separate multilib and multiarch names | ||
145 | 21 | from multilib_select. | ||
146 | 22 | (print_multilib_info): Ignore multiarch names in multilib_select. | ||
147 | 23 | * incpath.c (add_standard_paths): Search the multiarch include dirs. | ||
148 | 24 | * cppdeault.h (default_include): Document multiarch in multilib | ||
149 | 25 | member. | ||
150 | 26 | * cppdefault.c: [LOCAL_INCLUDE_DIR, STANDARD_INCLUDE_DIR] Add an | ||
151 | 27 | include directory for multiarch directories. | ||
152 | 28 | * common.opt: New options --print-multiarch and -imultilib. | ||
153 | 29 | * config/s390/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES. | ||
154 | 30 | * config/sparc/t-linux64: Likewise. | ||
155 | 31 | * config/powerpc/t-linux64: Likewise. | ||
156 | 32 | * config/i386/t-linux64: Likewise. | ||
157 | 33 | * config/mips/t-linux64: Likewise. | ||
158 | 34 | * config/alpha/t-linux: Define MULTIARCH_DIRNAME. | ||
159 | 35 | * config/arm/t-linux: Likewise. | ||
160 | 36 | * config/i386/t-linux: Likewise. | ||
161 | 37 | * config/pa/t-linux: Likewise. | ||
162 | 38 | * config/sparc/t-linux: Likewise. | ||
163 | 39 | * config/ia64/t-glibc: Define MULTIARCH_DIRNAME for linux target. | ||
164 | 40 | |||
165 | 41 | |||
166 | 42 | --- a/gcc/incpath.c (revision 182390) | ||
167 | 43 | +++ b/gcc/incpath.c (working copy) | ||
168 | 44 | @@ -150,8 +150,14 @@ | ||
169 | 45 | if (!filename_ncmp (p->fname, cpp_GCC_INCLUDE_DIR, len)) | ||
170 | 46 | { | ||
171 | 47 | char *str = concat (iprefix, p->fname + len, NULL); | ||
172 | 48 | - if (p->multilib && imultilib) | ||
173 | 49 | + if (p->multilib == 1 && imultilib) | ||
174 | 50 | str = concat (str, dir_separator_str, imultilib, NULL); | ||
175 | 51 | + else if (p->multilib == 2) | ||
176 | 52 | + { | ||
177 | 53 | + if (!imultiarch) | ||
178 | 54 | + continue; | ||
179 | 55 | + str = concat (str, dir_separator_str, imultiarch, NULL); | ||
180 | 56 | + } | ||
181 | 57 | add_path (str, SYSTEM, p->cxx_aware, false); | ||
182 | 58 | } | ||
183 | 59 | } | ||
184 | 60 | @@ -195,8 +201,14 @@ | ||
185 | 61 | else | ||
186 | 62 | str = update_path (p->fname, p->component); | ||
187 | 63 | |||
188 | 64 | - if (p->multilib && imultilib) | ||
189 | 65 | + if (p->multilib == 1 && imultilib) | ||
190 | 66 | str = concat (str, dir_separator_str, imultilib, NULL); | ||
191 | 67 | + else if (p->multilib == 2) | ||
192 | 68 | + { | ||
193 | 69 | + if (!imultiarch) | ||
194 | 70 | + continue; | ||
195 | 71 | + str = concat (str, dir_separator_str, imultiarch, NULL); | ||
196 | 72 | + } | ||
197 | 73 | |||
198 | 74 | add_path (str, SYSTEM, p->cxx_aware, false); | ||
199 | 75 | } | ||
200 | 76 | --- a/gcc/gcc.c (revision 182390) | ||
201 | 77 | +++ b/gcc/gcc.c (working copy) | ||
202 | 78 | @@ -1147,6 +1147,11 @@ | ||
203 | 79 | set_multilib_dir based on the compilation options. */ | ||
204 | 80 | |||
205 | 81 | static const char *multilib_os_dir; | ||
206 | 82 | + | ||
207 | 83 | +/* Subdirectory to use for locating libraries in multiarch conventions. Set by | ||
208 | 84 | + set_multilib_dir based on the compilation options. */ | ||
209 | 85 | + | ||
210 | 86 | +static const char *multiarch_dir; | ||
211 | 87 | |||
212 | 0 | 88 | ||
213 | 89 | /* Structure to keep track of the specs that have been defined so far. | ||
214 | 90 | These are accessed using %(specname) in a compiler or link | ||
215 | 91 | @@ -2072,6 +2077,7 @@ | ||
216 | 92 | struct prefix_list *pl; | ||
217 | 93 | const char *multi_dir = NULL; | ||
218 | 94 | const char *multi_os_dir = NULL; | ||
219 | 95 | + const char *multiarch_suffix = NULL; | ||
220 | 96 | const char *multi_suffix; | ||
221 | 97 | const char *just_multi_suffix; | ||
222 | 98 | char *path = NULL; | ||
223 | 99 | @@ -2089,11 +2095,14 @@ | ||
224 | 100 | } | ||
225 | 101 | if (do_multi && multilib_os_dir && strcmp (multilib_os_dir, ".") != 0) | ||
226 | 102 | multi_os_dir = concat (multilib_os_dir, dir_separator_str, NULL); | ||
227 | 103 | + if (multiarch_dir) | ||
228 | 104 | + multiarch_suffix = concat (multiarch_dir, dir_separator_str, NULL); | ||
229 | 105 | |||
230 | 106 | while (1) | ||
231 | 107 | { | ||
232 | 108 | size_t multi_dir_len = 0; | ||
233 | 109 | size_t multi_os_dir_len = 0; | ||
234 | 110 | + size_t multiarch_len = 0; | ||
235 | 111 | size_t suffix_len; | ||
236 | 112 | size_t just_suffix_len; | ||
237 | 113 | size_t len; | ||
238 | 114 | @@ -2102,16 +2111,15 @@ | ||
239 | 115 | multi_dir_len = strlen (multi_dir); | ||
240 | 116 | if (multi_os_dir) | ||
241 | 117 | multi_os_dir_len = strlen (multi_os_dir); | ||
242 | 118 | + if (multiarch_suffix) | ||
243 | 119 | + multiarch_len = strlen (multiarch_suffix); | ||
244 | 120 | suffix_len = strlen (multi_suffix); | ||
245 | 121 | just_suffix_len = strlen (just_multi_suffix); | ||
246 | 122 | |||
247 | 123 | if (path == NULL) | ||
248 | 124 | { | ||
249 | 125 | len = paths->max_len + extra_space + 1; | ||
250 | 126 | - if (suffix_len > multi_os_dir_len) | ||
251 | 127 | - len += suffix_len; | ||
252 | 128 | - else | ||
253 | 129 | - len += multi_os_dir_len; | ||
254 | 130 | + len += MAX (MAX (suffix_len, multi_os_dir_len), multiarch_len); | ||
255 | 131 | path = XNEWVEC (char, len); | ||
256 | 132 | } | ||
257 | 133 | |||
258 | 134 | @@ -2140,6 +2148,16 @@ | ||
259 | 135 | break; | ||
260 | 136 | } | ||
261 | 137 | |||
262 | 138 | + /* Now try the multiarch path. */ | ||
263 | 139 | + if (!skip_multi_dir | ||
264 | 140 | + && !pl->require_machine_suffix && multiarch_dir) | ||
265 | 141 | + { | ||
266 | 142 | + memcpy (path + len, multiarch_suffix, multiarch_len + 1); | ||
267 | 143 | + ret = callback (path, callback_info); | ||
268 | 144 | + if (ret) | ||
269 | 145 | + break; | ||
270 | 146 | + } | ||
271 | 147 | + | ||
272 | 148 | /* Now try the base path. */ | ||
273 | 149 | if (!pl->require_machine_suffix | ||
274 | 150 | && !(pl->os_multilib ? skip_multi_os_dir : skip_multi_dir)) | ||
275 | 151 | @@ -2970,6 +2970,9 @@ | ||
276 | 152 | fputs (_(" -print-libgcc-file-name Display the name of the compiler's companion library\n"), stdout); | ||
277 | 153 | fputs (_(" -print-file-name=<lib> Display the full path to library <lib>\n"), stdout); | ||
278 | 154 | fputs (_(" -print-prog-name=<prog> Display the full path to compiler component <prog>\n"), stdout); | ||
279 | 155 | + fputs (_("\ | ||
280 | 156 | + -print-multiarch Display the target's normalized GNU triplet, used as\n\ | ||
281 | 157 | + a component in the library path\n"), stdout); | ||
282 | 158 | fputs (_(" -print-multi-directory Display the root directory for versions of libgcc\n"), stdout); | ||
283 | 159 | fputs (_("\ | ||
284 | 160 | -print-multi-lib Display the mapping between command line options and\n\ | ||
285 | 161 | @@ -3228,6 +3246,7 @@ | ||
286 | 162 | case OPT_print_multi_directory: | ||
287 | 163 | case OPT_print_sysroot: | ||
288 | 164 | case OPT_print_multi_os_directory: | ||
289 | 165 | + case OPT_print_multiarch: | ||
290 | 166 | case OPT_print_sysroot_headers_suffix: | ||
291 | 167 | case OPT_time: | ||
292 | 168 | case OPT_wrapper: | ||
293 | 169 | @@ -4880,6 +4899,15 @@ | ||
294 | 170 | do_spec_1 (" ", 0, NULL); | ||
295 | 171 | } | ||
296 | 172 | |||
297 | 173 | + if (multiarch_dir) | ||
298 | 174 | + { | ||
299 | 175 | + do_spec_1 ("-imultiarch", 1, NULL); | ||
300 | 176 | + /* Make this a separate argument. */ | ||
301 | 177 | + do_spec_1 (" ", 0, NULL); | ||
302 | 178 | + do_spec_1 (multiarch_dir, 1, NULL); | ||
303 | 179 | + do_spec_1 (" ", 0, NULL); | ||
304 | 180 | + } | ||
305 | 181 | + | ||
306 | 182 | if (gcc_exec_prefix) | ||
307 | 183 | { | ||
308 | 184 | do_spec_1 ("-iprefix", 1, NULL); | ||
309 | 185 | @@ -6497,6 +6525,15 @@ | ||
310 | 186 | return (0); | ||
311 | 187 | } | ||
312 | 188 | |||
313 | 189 | + if (print_multiarch) | ||
314 | 190 | + { | ||
315 | 191 | + if (multiarch_dir == NULL) | ||
316 | 192 | + printf ("\n"); | ||
317 | 193 | + else | ||
318 | 194 | + printf ("%s\n", multiarch_dir); | ||
319 | 195 | + return (0); | ||
320 | 196 | + } | ||
321 | 197 | + | ||
322 | 198 | if (print_sysroot) | ||
323 | 199 | { | ||
324 | 200 | if (target_system_root) | ||
325 | 201 | @@ -7472,10 +7509,26 @@ | ||
326 | 202 | q++; | ||
327 | 203 | if (q < end) | ||
328 | 204 | { | ||
329 | 205 | - char *new_multilib_os_dir = XNEWVEC (char, end - q); | ||
330 | 206 | + const char *q2 = q + 1; | ||
331 | 207 | + char *new_multilib_os_dir; | ||
332 | 208 | + | ||
333 | 209 | + while (q2 < end && *q2 != ':') | ||
334 | 210 | + q2++; | ||
335 | 211 | + if (*q2 == ':') | ||
336 | 212 | + end = q2; | ||
337 | 213 | + new_multilib_os_dir = XNEWVEC (char, end - q); | ||
338 | 214 | memcpy (new_multilib_os_dir, q + 1, end - q - 1); | ||
339 | 215 | new_multilib_os_dir[end - q - 1] = '\0'; | ||
340 | 216 | - multilib_os_dir = new_multilib_os_dir; | ||
341 | 217 | + multilib_os_dir = *new_multilib_os_dir ? new_multilib_os_dir : "."; | ||
342 | 218 | + | ||
343 | 219 | + end = this_path + this_path_len; | ||
344 | 220 | + if (q2 < end && *q2 == ':') | ||
345 | 221 | + { | ||
346 | 222 | + char *new_multiarch_dir = XNEWVEC (char, end - q2); | ||
347 | 223 | + memcpy (new_multiarch_dir, q2 + 1, end - q2 - 1); | ||
348 | 224 | + new_multiarch_dir[end - q2 - 1] = '\0'; | ||
349 | 225 | + multiarch_dir = new_multiarch_dir; | ||
350 | 226 | + } | ||
351 | 227 | break; | ||
352 | 228 | } | ||
353 | 229 | } | ||
354 | 230 | @@ -7537,7 +7590,7 @@ | ||
355 | 231 | /* When --disable-multilib was used but target defines | ||
356 | 232 | MULTILIB_OSDIRNAMES, entries starting with .: are there just | ||
357 | 233 | to find multilib_os_dir, so skip them from output. */ | ||
358 | 234 | - if (this_path[0] == '.' && this_path[1] == ':') | ||
359 | 235 | + if (this_path[0] == '.' && this_path[1] == ':' && this_path[2] != ':') | ||
360 | 236 | skip = 1; | ||
361 | 237 | |||
362 | 238 | /* Check for matches with the multilib_exclusions. We don't bother | ||
363 | 239 | --- a/gcc/genmultilib (revision 182390) | ||
364 | 240 | +++ b/gcc/genmultilib (working copy) | ||
365 | 241 | @@ -84,6 +84,8 @@ | ||
366 | 242 | # This argument can be used together with MULTILIB_EXCEPTIONS and will take | ||
367 | 243 | # effect after the MULTILIB_EXCEPTIONS. | ||
368 | 244 | |||
369 | 245 | +# The optional nine argument is the multiarch name. | ||
370 | 246 | + | ||
371 | 247 | # The last option should be "yes" if multilibs are enabled. If it is not | ||
372 | 248 | # "yes", all GCC multilib dir names will be ".". | ||
373 | 249 | |||
374 | 250 | @@ -133,7 +135,8 @@ | ||
375 | 251 | exclusions=$6 | ||
376 | 252 | osdirnames=$7 | ||
377 | 253 | multilib_required=$8 | ||
378 | 254 | -enable_multilib=$9 | ||
379 | 255 | +multiarch=$9 | ||
380 | 256 | +enable_multilib=${10} | ||
381 | 257 | |||
382 | 258 | echo "static const char *const multilib_raw[] = {" | ||
383 | 259 | |||
384 | 260 | @@ -261,6 +264,9 @@ | ||
385 | 261 | # names. | ||
386 | 262 | toosdirnames= | ||
387 | 263 | defaultosdirname= | ||
388 | 264 | +if [ -n "${multiarch}" ]; then | ||
389 | 265 | + defaultosdirname=::${multiarch} | ||
390 | 266 | +fi | ||
391 | 267 | if [ -n "${osdirnames}" ]; then | ||
392 | 268 | set x ${osdirnames} | ||
393 | 269 | shift | ||
394 | 270 | @@ -268,6 +274,9 @@ | ||
395 | 271 | case "$1" in | ||
396 | 272 | .=*) | ||
397 | 273 | defaultosdirname=`echo $1 | sed 's|^.=|:|'` | ||
398 | 274 | + if [ -n "${multiarch}" ]; then | ||
399 | 275 | + defaultosdirname=${defaultosdirname}:${multiarch} | ||
400 | 276 | + fi | ||
401 | 277 | shift | ||
402 | 278 | ;; | ||
403 | 279 | *=*) | ||
404 | 280 | @@ -353,13 +362,13 @@ | ||
405 | 281 | dirout=`echo ${combo} | sed -e 's/=/-/g'` | ||
406 | 282 | fi | ||
407 | 283 | # Remove the leading and trailing slashes. | ||
408 | 284 | - dirout=`echo ${dirout} | sed -e 's|^/||' -e 's|/$||g'` | ||
409 | 285 | + dirout=`echo ${dirout} | sed -e 's|^/||' -e 's|/*:/*|:|' -e 's|/$||g'` | ||
410 | 286 | |||
411 | 287 | # Use the OS directory names rather than the option names. | ||
412 | 288 | if [ -n "${toosdirnames}" ]; then | ||
413 | 289 | osdirout=`echo ${combo} | sed ${toosdirnames}` | ||
414 | 290 | # Remove the leading and trailing slashes. | ||
415 | 291 | - osdirout=`echo ${osdirout} | sed -e 's|^/||' -e 's|/$||g'` | ||
416 | 292 | + osdirout=`echo ${osdirout} | sed -e 's|^/||' -e 's|/*:/*|:|' -e 's|/$||g'` | ||
417 | 293 | if [ "x${enable_multilib}" != xyes ]; then | ||
418 | 294 | dirout=".:${osdirout}" | ||
419 | 295 | disable_multilib=yes | ||
420 | 296 | --- a/gcc/configure.ac (revision 182390) | ||
421 | 297 | +++ b/gcc/configure.ac (working copy) | ||
422 | 298 | @@ -620,6 +620,21 @@ | ||
423 | 299 | [], [enable_multilib=yes]) | ||
424 | 300 | AC_SUBST(enable_multilib) | ||
425 | 301 | |||
426 | 302 | +# Determine whether or not multiarch is enabled. | ||
427 | 303 | +AC_ARG_ENABLE(multiarch, | ||
428 | 304 | +[AS_HELP_STRING([--enable-multiarch], | ||
429 | 305 | + [enable support for multiarch paths])], | ||
430 | 306 | +[case "${withval}" in | ||
431 | 307 | +yes|no|auto-detect) enable_multiarch=$withval;; | ||
432 | 308 | +*) AC_MSG_ERROR(bad value ${withval} given for --enable-multiarch option) ;; | ||
433 | 309 | +esac], [enable_multiarch=auto-detect]) | ||
434 | 310 | +AC_MSG_CHECKING(for multiarch configuration) | ||
435 | 311 | +AC_SUBST(enable_multiarch) | ||
436 | 312 | +AC_MSG_RESULT($enable_multiarch) | ||
437 | 313 | + | ||
438 | 314 | +# needed for setting the multiarch name on ARM | ||
439 | 315 | +AC_SUBST(with_float) | ||
440 | 316 | + | ||
441 | 317 | # Enable __cxa_atexit for C++. | ||
442 | 318 | AC_ARG_ENABLE(__cxa_atexit, | ||
443 | 319 | [AS_HELP_STRING([--enable-__cxa_atexit], [enable __cxa_atexit for C++])], | ||
444 | 320 | --- a/gcc/cppdefault.c (revision 182390) | ||
445 | 321 | +++ b/gcc/cppdefault.c (working copy) | ||
446 | 322 | @@ -60,6 +60,7 @@ | ||
447 | 323 | #endif | ||
448 | 324 | #ifdef LOCAL_INCLUDE_DIR | ||
449 | 325 | /* /usr/local/include comes before the fixincluded header files. */ | ||
450 | 326 | + { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 2 }, | ||
451 | 327 | { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 0 }, | ||
452 | 328 | #endif | ||
453 | 329 | #ifdef PREFIX_INCLUDE_DIR | ||
454 | 330 | @@ -87,6 +88,7 @@ | ||
455 | 331 | #endif | ||
456 | 332 | #ifdef NATIVE_SYSTEM_HEADER_DIR | ||
457 | 333 | /* /usr/include comes dead last. */ | ||
458 | 334 | + { NATIVE_SYSTEM_HEADER_DIR, NATIVE_SYSTEM_HEADER_COMPONENT, 0, 0, 1, 2 }, | ||
459 | 335 | { NATIVE_SYSTEM_HEADER_DIR, NATIVE_SYSTEM_HEADER_COMPONENT, 0, 0, 1, 0 }, | ||
460 | 336 | #endif | ||
461 | 337 | { 0, 0, 0, 0, 0, 0 } | ||
462 | 338 | --- a/gcc/cppdefault.h (revision 182390) | ||
463 | 339 | +++ b/gcc/cppdefault.h (working copy) | ||
464 | 340 | @@ -43,9 +43,11 @@ | ||
465 | 341 | C++. */ | ||
466 | 342 | const char add_sysroot; /* FNAME should be prefixed by | ||
467 | 343 | cpp_SYSROOT. */ | ||
468 | 344 | - const char multilib; /* FNAME should have the multilib path | ||
469 | 345 | - specified with -imultilib | ||
470 | 346 | - appended. */ | ||
471 | 347 | + const char multilib; /* FNAME should have appended | ||
472 | 348 | + - the multilib path specified with -imultilib | ||
473 | 349 | + when 1 is passed, | ||
474 | 350 | + - the multiarch path specified with | ||
475 | 351 | + -imultiarch, when 2 is passed. */ | ||
476 | 352 | }; | ||
477 | 353 | |||
478 | 354 | extern const struct default_include cpp_include_defaults[]; | ||
479 | 355 | --- a/gcc/common.opt (revision 182390) | ||
480 | 356 | +++ b/gcc/common.opt (working copy) | ||
481 | 357 | @@ -345,6 +345,9 @@ | ||
482 | 358 | -print-multi-os-directory | ||
483 | 359 | Driver Alias(print-multi-os-directory) | ||
484 | 360 | |||
485 | 361 | +-print-multiarch | ||
486 | 362 | +Driver Alias(print-multiarch) | ||
487 | 363 | + | ||
488 | 364 | -print-prog-name | ||
489 | 365 | Driver Separate Alias(print-prog-name=) | ||
490 | 366 | |||
491 | 367 | @@ -2268,6 +2271,10 @@ | ||
492 | 368 | Common Joined Var(plugindir_string) Init(0) | ||
493 | 369 | -iplugindir=<dir> Set <dir> to be the default plugin directory | ||
494 | 370 | |||
495 | 371 | +imultiarch | ||
496 | 372 | +Common Joined Separate RejectDriver Var(imultiarch) Init(0) | ||
497 | 373 | +-imultiarch <dir> Set <dir> to be the multiarch include subdirectory | ||
498 | 374 | + | ||
499 | 375 | l | ||
500 | 376 | Driver Joined Separate | ||
501 | 377 | |||
502 | 378 | @@ -2325,6 +2332,9 @@ | ||
503 | 379 | |||
504 | 380 | print-multi-os-directory | ||
505 | 381 | Driver Var(print_multi_os_directory) | ||
506 | 382 | + | ||
507 | 383 | +print-multiarch | ||
508 | 384 | +Driver Var(print_multiarch) | ||
509 | 385 | |||
510 | 386 | print-prog-name= | ||
511 | 387 | Driver JoinedOrMissing Var(print_prog_name) | ||
512 | 388 | --- a/gcc/config.gcc (revision 182390) | ||
513 | 389 | +++ b/gcc/config.gcc (working copy) | ||
514 | 390 | @@ -1508,7 +1508,7 @@ | ||
515 | 391 | ;; | ||
516 | 392 | ia64*-*-linux*) | ||
517 | 393 | tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ia64/sysv4.h ia64/linux.h" | ||
518 | 394 | - tmake_file="${tmake_file} ia64/t-ia64 t-libunwind" | ||
519 | 395 | + tmake_file="${tmake_file} ia64/t-ia64 ia64/t-glibc t-libunwind" | ||
520 | 396 | target_cpu_default="MASK_GNU_AS|MASK_GNU_LD" | ||
521 | 397 | ;; | ||
522 | 398 | ia64*-*-hpux*) | ||
523 | 399 | @@ -2012,6 +2012,7 @@ | ||
524 | 400 | ;; | ||
525 | 401 | *) | ||
526 | 402 | tm_file="${tm_file} rs6000/linux.h glibc-stdint.h" | ||
527 | 403 | + tmake_file="$tmake_file rs6000/t-linux" | ||
528 | 404 | ;; | ||
529 | 405 | esac | ||
530 | 406 | case ${target} in | ||
531 | 407 | @@ -3467,10 +3468,14 @@ | ||
532 | 408 | |||
533 | 409 | i[34567]86-*-darwin* | x86_64-*-darwin*) | ||
534 | 410 | ;; | ||
535 | 411 | - i[34567]86-*-linux* | x86_64-*-linux* | \ | ||
536 | 412 | - i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \ | ||
537 | 413 | - i[34567]86-*-gnu*) | ||
538 | 414 | + i[34567]86-*-linux* | x86_64-*-linux*) | ||
539 | 415 | ;; | ||
540 | 416 | + i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu) | ||
541 | 417 | + tmake_file="${tmake_file} i386/t-linux i386/t-kfreebsd" | ||
542 | 418 | + ;; | ||
543 | 419 | + i[34567]86-*-gnu*) | ||
544 | 420 | + tmake_file="${tmake_file} i386/t-linux i386/t-gnu" | ||
545 | 421 | + ;; | ||
546 | 422 | i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*) | ||
547 | 423 | ;; | ||
548 | 424 | i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw*) | ||
549 | 425 | --- a/gcc/Makefile.in (revision 182390) | ||
550 | 426 | +++ b/gcc/Makefile.in (working copy) | ||
551 | 427 | @@ -352,6 +352,17 @@ | ||
552 | 428 | |||
553 | 429 | enable_plugin = @enable_plugin@ | ||
554 | 430 | |||
555 | 431 | +# Multiarch support | ||
556 | 432 | +enable_multiarch = @enable_multiarch@ | ||
557 | 433 | +with_float = @with_float@ | ||
558 | 434 | +ifeq ($(enable_multiarch),yes) | ||
559 | 435 | + if_multiarch = $(1) | ||
560 | 436 | +else ifeq ($(enable_multiarch),auto-detect) | ||
561 | 437 | + if_multiarch = $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib/*/crti.o),$(1)) | ||
562 | 438 | +else | ||
563 | 439 | + if_multiarch = | ||
564 | 440 | +endif | ||
565 | 441 | + | ||
566 | 442 | CPPLIB = ../libcpp/libcpp.a | ||
567 | 443 | CPPINC = -I$(srcdir)/../libcpp/include | ||
568 | 444 | |||
569 | 445 | @@ -1845,10 +1845,11 @@ | ||
570 | 446 | "$(MULTILIB_EXCLUSIONS)" \ | ||
571 | 447 | "$(MULTILIB_OSDIRNAMES)" \ | ||
572 | 448 | "$(MULTILIB_REQUIRED)" \ | ||
573 | 449 | + "$(MULTIARCH_DIRNAME)" \ | ||
574 | 450 | "@enable_multilib@" \ | ||
575 | 451 | > tmp-mlib.h; \ | ||
576 | 452 | else \ | ||
577 | 453 | - $(SHELL) $(srcdir)/genmultilib '' '' '' '' '' '' '' '' no\ | ||
578 | 454 | + $(SHELL) $(srcdir)/genmultilib '' '' '' '' '' '' '' '' "$(MULTIARCH_DIRNAME)" no\ | ||
579 | 455 | > tmp-mlib.h; \ | ||
580 | 456 | fi | ||
581 | 457 | $(SHELL) $(srcdir)/../move-if-change tmp-mlib.h multilib.h | ||
582 | 458 | --- a/gcc/config/alpha/t-linux (revision 0) | ||
583 | 459 | +++ b/gcc/config/alpha/t-linux (revision 0) | ||
584 | 460 | @@ -0,0 +1 @@ | ||
585 | 461 | +MULTIARCH_DIRNAME = $(call if_multiarch,alpha-linux-gnu) | ||
586 | 462 | --- a/gcc/config/s390/t-linux64 (revision 182390) | ||
587 | 463 | +++ b/gcc/config/s390/t-linux64 (working copy) | ||
588 | 464 | @@ -7,4 +7,5 @@ | ||
589 | 465 | |||
590 | 466 | MULTILIB_OPTIONS = m64/m31 | ||
591 | 467 | MULTILIB_DIRNAMES = 64 32 | ||
592 | 468 | -MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) | ||
593 | 469 | +MULTILIB_OSDIRNAMES = ../lib64$(call if_multiarch,:s390x-linux-gnu) | ||
594 | 470 | +MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:s390-linux-gnu) | ||
595 | 471 | --- a/gcc/config/sparc/t-linux64 (revision 182390) | ||
596 | 472 | +++ b/gcc/config/sparc/t-linux64 (working copy) | ||
597 | 473 | @@ -26,4 +26,5 @@ | ||
598 | 474 | |||
599 | 475 | MULTILIB_OPTIONS = m64/m32 | ||
600 | 476 | MULTILIB_DIRNAMES = 64 32 | ||
601 | 477 | -MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) | ||
602 | 478 | +MULTILIB_OSDIRNAMES = ../lib64$(call if_multiarch,:sparc64-linux-gnu) | ||
603 | 479 | +MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:sparc-linux-gnu) | ||
604 | 480 | --- a/gcc/config/sparc/t-linux (revision 0) | ||
605 | 481 | +++ b/gcc/config/sparc/t-linux (revision 0) | ||
606 | 482 | @@ -0,0 +1 @@ | ||
607 | 483 | +MULTIARCH_DIRNAME = $(call if_multiarch,sparc-linux-gnu) | ||
608 | 484 | --- a/gcc/config/i386/t-kfreebsd (revision 0) | ||
609 | 485 | +++ b/gcc/config/i386/t-kfreebsd (revision 0) | ||
610 | 486 | @@ -0,0 +1,5 @@ | ||
611 | 487 | +MULTIARCH_DIRNAME = $(call if_multiarch,i386-kfreebsd-gnu) | ||
612 | 488 | + | ||
613 | 489 | +# MULTILIB_OSDIRNAMES are set in t-linux64. | ||
614 | 490 | +KFREEBSD_OS = $(filter kfreebsd%, $(word 3, $(subst -, ,$(target)))) | ||
615 | 491 | +MULTILIB_OSDIRNAMES := $(subst linux,$(KFREEBSD_OS),$(MULTILIB_OSDIRNAMES)) | ||
616 | 492 | --- a/gcc/config/i386/t-gnu (revision 0) | ||
617 | 493 | +++ b/gcc/config/i386/t-gnu (revision 0) | ||
618 | 494 | @@ -0,0 +1 @@ | ||
619 | 495 | +MULTIARCH_DIRNAME = $(call if_multiarch,i386-gnu) | ||
620 | 496 | --- a/gcc/config/i386/t-linux (revision 0) | ||
621 | 497 | +++ b/gcc/config/i386/t-linux (revision 0) | ||
622 | 498 | @@ -0,0 +1 @@ | ||
623 | 499 | +MULTIARCH_DIRNAME = $(call if_multiarch,i386-linux-gnu) | ||
624 | 500 | --- a/gcc/config/i386/t-linux64 (revision 182390) | ||
625 | 501 | +++ b/gcc/config/i386/t-linux64 (working copy) | ||
626 | 502 | @@ -34,6 +34,6 @@ | ||
627 | 503 | comma=, | ||
628 | 504 | MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG)) | ||
629 | 505 | MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS))) | ||
630 | 506 | -MULTILIB_OSDIRNAMES = m64=../lib64 | ||
631 | 507 | -MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) | ||
632 | 508 | +MULTILIB_OSDIRNAMES = m64=../lib64$(call if_multiarch,:x86_64-linux-gnu) | ||
633 | 509 | +MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:i386-linux-gnu) | ||
634 | 510 | MULTILIB_OSDIRNAMES+= mx32=../libx32 | ||
635 | 511 | --- a/gcc/config/ia64/t-glibc (revision 0) | ||
636 | 512 | +++ b/gcc/config/ia64/t-glibc (revision 0) | ||
637 | 513 | @@ -0,0 +1,3 @@ | ||
638 | 514 | +ifneq (,$(findstring linux, $(target))) | ||
639 | 515 | +MULTIARCH_DIRNAME = $(call if_multiarch,ia64-linux-gnu) | ||
640 | 516 | +endif | ||
641 | 517 | --- a/gcc/config/m68k/t-linux (revision 182390) | ||
642 | 518 | +++ b/gcc/config/m68k/t-linux (working copy) | ||
643 | 519 | @@ -19,6 +19,8 @@ | ||
644 | 520 | # Only include multilibs for 680x0 and ColdFire CPUs with an MMU. | ||
645 | 521 | M68K_MLIB_CPU += && ((CPU ~ "^m680") || (CPU ~ "^mcf")) && (FLAGS ~ "FL_MMU") | ||
646 | 522 | |||
647 | 523 | +MULTIARCH_DIRNAME = $(call if_multiarch,m68k-linux-gnu) | ||
648 | 524 | + | ||
649 | 525 | # This rule uses MULTILIB_MATCHES to generate a definition of | ||
650 | 526 | # SYSROOT_SUFFIX_SPEC. | ||
651 | 527 | sysroot-suffix.h: $(srcdir)/config/m68k/print-sysroot-suffix.sh | ||
652 | 528 | --- a/gcc/config/rs6000/t-spe (revision 182390) | ||
653 | 529 | +++ b/gcc/config/rs6000/t-spe (working copy) | ||
654 | 530 | @@ -71,3 +71,6 @@ | ||
655 | 531 | mabi=altivec/mlittle \ | ||
656 | 532 | maltivec/mlittle \ | ||
657 | 533 | maltivec/mabi=altivec/mlittle | ||
658 | 534 | + | ||
659 | 535 | +MULTIARCH_DIRNAME = powerpc-linux-gnuspe$(if $(findstring rs6000/e500-double.h, $(tm_file)),,v1) | ||
660 | 536 | + | ||
661 | 537 | --- a/gcc/config/rs6000/t-linux64 (revision 182390) | ||
662 | 538 | +++ b/gcc/config/rs6000/t-linux64 (working copy) | ||
663 | 539 | @@ -31,5 +31,7 @@ | ||
664 | 540 | MULTILIB_EXTRA_OPTS = fPIC mstrict-align | ||
665 | 541 | MULTILIB_EXCEPTIONS = m64/msoft-float | ||
666 | 542 | MULTILIB_EXCLUSIONS = m64/!m32/msoft-float | ||
667 | 543 | -MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) nof | ||
668 | 544 | +MULTILIB_OSDIRNAMES = ../lib64$(call if_multiarch,:powerpc64-linux-gnu) | ||
669 | 545 | +MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:powerpc-linux-gnu) | ||
670 | 546 | +MULTILIB_OSDIRNAMES += nof | ||
671 | 547 | MULTILIB_MATCHES = $(MULTILIB_MATCHES_FLOAT) | ||
672 | 548 | --- a/gcc/config/rs6000/t-linux (revision 0) | ||
673 | 549 | +++ b/gcc/config/rs6000/t-linux (revision 0) | ||
674 | 550 | @@ -0,0 +1 @@ | ||
675 | 551 | +MULTIARCH_DIRNAME = powerpc-linux-gnu | ||
676 | 552 | --- a/gcc/config/arm/t-linux-eabi (revision 182390) | ||
677 | 553 | +++ b/gcc/config/arm/t-linux-eabi (working copy) | ||
678 | 554 | @@ -24,3 +24,6 @@ | ||
679 | 555 | #MULTILIB_OPTIONS += mcpu=fa606te/mcpu=fa626te/mcpu=fmp626/mcpu=fa726te | ||
680 | 556 | #MULTILIB_DIRNAMES += fa606te fa626te fmp626 fa726te | ||
681 | 557 | #MULTILIB_EXCEPTIONS += *mthumb/*mcpu=fa606te *mthumb/*mcpu=fa626te *mthumb/*mcpu=fmp626 *mthumb/*mcpu=fa726te* | ||
682 | 558 | + | ||
683 | 559 | +ARM_EB = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),eb) | ||
684 | 560 | +MULTIARCH_DIRNAME = $(call if_multiarch,arm$(ARM_EB)-linux-gnueabi$(if $(filter hard,$(with_float)),hf)) | ||
685 | 561 | --- a/gcc/config/pa/t-linux (revision 0) | ||
686 | 562 | +++ b/gcc/config/pa/t-linux (revision 0) | ||
687 | 563 | @@ -0,0 +1 @@ | ||
688 | 564 | +MULTIARCH_DIRNAME = $(call if_multiarch,hppa-linux-gnu) | ||
689 | 565 | --- a/gcc/config/mips/t-linux64 (revision 182390) | ||
690 | 566 | +++ b/gcc/config/mips/t-linux64 (working copy) | ||
691 | 567 | @@ -18,4 +18,9 @@ | ||
692 | 568 | |||
693 | 569 | MULTILIB_OPTIONS = mabi=n32/mabi=32/mabi=64 | ||
694 | 570 | MULTILIB_DIRNAMES = n32 32 64 | ||
695 | 571 | -MULTILIB_OSDIRNAMES = ../lib32 ../lib ../lib64 | ||
696 | 572 | +MIPS_EL = $(if $(filter %el, $(firstword $(subst -, ,$(target)))),el) | ||
697 | 573 | +MIPS_SOFT = $(if $(filter MASK_SOFT_FLOAT_ABI, $(target_cpu_default)),soft) | ||
698 | 574 | +MULTILIB_OSDIRNAMES = \ | ||
699 | 575 | + ../lib32$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabin32$(MIPS_SOFT)) \ | ||
700 | 576 | + ../lib$(call if_multiarch,:mips$(MIPS_EL)-linux-gnu$(MIPS_SOFT)) \ | ||
701 | 577 | + ../lib64$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabi64$(MIPS_SOFT)) | ||
702 | 578 | --- a/libstdc++-v3/python/hook.in | ||
703 | 579 | +++ b/libstdc++-v3/python/hook.in | ||
704 | 580 | @@ -47,7 +47,10 @@ | ||
705 | 581 | libdir = libdir[len (prefix):] | ||
706 | 582 | |||
707 | 583 | # Compute the ".."s needed to get from libdir to the prefix. | ||
708 | 584 | - dotdots = ('..' + os.sep) * len (libdir.split (os.sep)) | ||
709 | 585 | + backdirs = len (libdir.split (os.sep)) | ||
710 | 586 | + if not os.path.basename(os.path.dirname(__file__)).startswith('lib'): | ||
711 | 587 | + backdirs += 1 # multiarch subdir | ||
712 | 588 | + dotdots = ('..' + os.sep) * backdirs | ||
713 | 589 | |||
714 | 590 | objfile = gdb.current_objfile ().filename | ||
715 | 591 | dir_ = os.path.join (os.path.dirname (objfile), dotdots, pythondir) | ||
716 | 592 | --- a/gcc/configure 2012-04-10 09:54:30 +0000 | ||
717 | 593 | +++ b/gcc/configure 2012-04-12 02:39:34 +0000 | ||
718 | 594 | @@ -764,6 +764,8 @@ | ||
719 | 595 | enable_shared | ||
720 | 596 | enable_fixed_point | ||
721 | 597 | enable_decimal_float | ||
722 | 598 | +with_float | ||
723 | 599 | +enable_multiarch | ||
724 | 600 | enable_multilib | ||
725 | 601 | ENABLE_BUILD_WITH_CXX | ||
726 | 602 | coverage_flags | ||
727 | 603 | @@ -875,6 +877,7 @@ | ||
728 | 604 | enable_build_with_cxx | ||
729 | 605 | with_stabs | ||
730 | 606 | enable_multilib | ||
731 | 607 | +enable_multiarch | ||
732 | 608 | enable___cxa_atexit | ||
733 | 609 | enable_decimal_float | ||
734 | 610 | enable_fixed_point | ||
735 | 611 | @@ -1576,6 +1579,7 @@ | ||
736 | 612 | enable detailed memory allocation stats gathering | ||
737 | 613 | --enable-build-with-cxx build with C++ compiler instead of C compiler | ||
738 | 614 | --enable-multilib enable library support for multiple ABIs | ||
739 | 615 | + --enable-multiarch enable support for multiarch paths | ||
740 | 616 | --enable-__cxa_atexit enable __cxa_atexit for C++ | ||
741 | 617 | --enable-decimal-float={no,yes,bid,dpd} | ||
742 | 618 | enable decimal float extension to C. Selecting 'bid' | ||
743 | 619 | @@ -7045,6 +7049,26 @@ | ||
744 | 620 | |||
745 | 621 | |||
746 | 622 | |||
747 | 623 | +# Determine whether or not multiarch is enabled. | ||
748 | 624 | +# Check whether --enable-multiarch was given. | ||
749 | 625 | +if test "${enable_multiarch+set}" = set; then : | ||
750 | 626 | + enableval=$enable_multiarch; case "${withval}" in | ||
751 | 627 | +yes|no|auto-detect) enable_multiarch=$withval;; | ||
752 | 628 | +*) as_fn_error "bad value ${withval} given for --enable-multiarch option" "$LINENO" 5 ;; | ||
753 | 629 | +esac | ||
754 | 630 | +else | ||
755 | 631 | + enable_multiarch=auto-detect | ||
756 | 632 | +fi | ||
757 | 633 | + | ||
758 | 634 | +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for multiarch configuration" >&5 | ||
759 | 635 | +$as_echo_n "checking for multiarch configuration... " >&6; } | ||
760 | 636 | + | ||
761 | 637 | +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_multiarch" >&5 | ||
762 | 638 | +$as_echo "$enable_multiarch" >&6; } | ||
763 | 639 | + | ||
764 | 640 | +# needed for setting the multiarch name on ARM | ||
765 | 641 | + | ||
766 | 642 | + | ||
767 | 643 | # Enable __cxa_atexit for C++. | ||
768 | 644 | # Check whether --enable-__cxa_atexit was given. | ||
769 | 645 | if test "${enable___cxa_atexit+set}" = set; then : | ||
770 | 646 | @@ -17971,7 +17995,7 @@ | ||
771 | 647 | lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 | ||
772 | 648 | lt_status=$lt_dlunknown | ||
773 | 649 | cat > conftest.$ac_ext <<_LT_EOF | ||
774 | 650 | -#line 17974 "configure" | ||
775 | 651 | +#line 17998 "configure" | ||
776 | 652 | #include "confdefs.h" | ||
777 | 653 | |||
778 | 654 | #if HAVE_DLFCN_H | ||
779 | 655 | @@ -18077,7 +18101,7 @@ | ||
780 | 656 | lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 | ||
781 | 657 | lt_status=$lt_dlunknown | ||
782 | 658 | cat > conftest.$ac_ext <<_LT_EOF | ||
783 | 659 | -#line 18080 "configure" | ||
784 | 660 | +#line 18104 "configure" | ||
785 | 661 | #include "confdefs.h" | ||
786 | 662 | |||
787 | 663 | #if HAVE_DLFCN_H | ||
788 | 664 | |||
789 | 1 | 665 | ||
790 | === added file 'contrib/linaro/patches/gcc/linaro-4.7+bzr115029/gcc-nls.patch' | |||
791 | --- contrib/linaro/patches/gcc/linaro-4.7+bzr115029/gcc-nls.patch 1970-01-01 00:00:00 +0000 | |||
792 | +++ contrib/linaro/patches/gcc/linaro-4.7+bzr115029/gcc-nls.patch 2012-10-18 05:18:20 +0000 | |||
793 | @@ -0,0 +1,75 @@ | |||
794 | 1 | diff -Naru gcc-linaro-4.7-2012.04/gcc/gcc.c gcc-linaro-4.7-2012.04-updated/gcc/gcc.c | ||
795 | 2 | --- gcc-linaro-4.7-2012.04/gcc/gcc.c 2012-04-10 17:54:47.000000000 +0800 | ||
796 | 3 | +++ gcc-linaro-4.7-2012.04-updated/gcc/gcc.c 2012-04-17 10:09:17.261047794 +0800 | ||
797 | 4 | @@ -6154,7 +6154,7 @@ | ||
798 | 5 | /* Unlock the stdio streams. */ | ||
799 | 6 | unlock_std_streams (); | ||
800 | 7 | |||
801 | 8 | - gcc_init_libintl (); | ||
802 | 9 | + gcc_init_libintl_program (argv[0]); | ||
803 | 10 | |||
804 | 11 | diagnostic_initialize (global_dc, 0); | ||
805 | 12 | if (atexit (delete_temp_files) != 0) | ||
806 | 13 | diff -Naru gcc-linaro-4.7-2012.04/gcc/intl.c gcc-linaro-4.7-2012.04-updated/gcc/intl.c | ||
807 | 14 | --- gcc-linaro-4.7-2012.04/gcc/intl.c 2012-04-10 17:54:47.000000000 +0800 | ||
808 | 15 | +++ gcc-linaro-4.7-2012.04-updated/gcc/intl.c 2012-04-17 10:41:40.129785979 +0800 | ||
809 | 16 | @@ -49,6 +49,14 @@ | ||
810 | 17 | void | ||
811 | 18 | gcc_init_libintl (void) | ||
812 | 19 | { | ||
813 | 20 | + gcc_init_libintl_program("gcc"); | ||
814 | 21 | +} | ||
815 | 22 | + | ||
816 | 23 | +#define LIBINTL_RELATIVE_DIR "../share/locale" | ||
817 | 24 | + | ||
818 | 25 | +void | ||
819 | 26 | +gcc_init_libintl_program (const char * program_name) | ||
820 | 27 | +{ | ||
821 | 28 | #ifdef HAVE_LC_MESSAGES | ||
822 | 29 | setlocale (LC_CTYPE, ""); | ||
823 | 30 | setlocale (LC_MESSAGES, ""); | ||
824 | 31 | @@ -56,7 +64,32 @@ | ||
825 | 32 | setlocale (LC_ALL, ""); | ||
826 | 33 | #endif | ||
827 | 34 | |||
828 | 35 | - (void) bindtextdomain ("gcc", LOCALEDIR); | ||
829 | 36 | + if (!access (LOCALEDIR, X_OK)) | ||
830 | 37 | + { | ||
831 | 38 | + /* If LOCALEDIR exists, use LOCALEDIR. */ | ||
832 | 39 | + (void) bindtextdomain ("gcc", LOCALEDIR); | ||
833 | 40 | + } | ||
834 | 41 | + else | ||
835 | 42 | + { | ||
836 | 43 | + /* Try relative dir, i.e. .../bin/../share/locale. */ | ||
837 | 44 | + int len1, len2; | ||
838 | 45 | + char *prefix_dir, *locale_dir; | ||
839 | 46 | + prefix_dir = make_relative_prefix(program_name,".","."); | ||
840 | 47 | + len1 = strlen (prefix_dir); | ||
841 | 48 | + len2 = strlen (LIBINTL_RELATIVE_DIR); | ||
842 | 49 | + locale_dir = xmalloc (len1 + len2 + 1); | ||
843 | 50 | + if (locale_dir != NULL) | ||
844 | 51 | + { | ||
845 | 52 | + strcpy (locale_dir, prefix_dir); | ||
846 | 53 | + strcpy (locale_dir + len1, LIBINTL_RELATIVE_DIR); | ||
847 | 54 | + (void) bindtextdomain ("gcc", locale_dir); | ||
848 | 55 | + } | ||
849 | 56 | + else | ||
850 | 57 | + (void) bindtextdomain ("gcc", LOCALEDIR); | ||
851 | 58 | + | ||
852 | 59 | + free (prefix_dir); | ||
853 | 60 | + } | ||
854 | 61 | + | ||
855 | 62 | (void) textdomain ("gcc"); | ||
856 | 63 | |||
857 | 64 | /* Opening quotation mark. */ | ||
858 | 65 | diff -Naru gcc-linaro-4.7-2012.04/gcc/intl.h gcc-linaro-4.7-2012.04-updated/gcc/intl.h | ||
859 | 66 | --- gcc-linaro-4.7-2012.04/gcc/intl.h 2012-04-10 17:54:47.000000000 +0800 | ||
860 | 67 | +++ gcc-linaro-4.7-2012.04-updated/gcc/intl.h 2012-04-17 10:09:17.261047794 +0800 | ||
861 | 68 | @@ -30,6 +30,7 @@ | ||
862 | 69 | #ifdef ENABLE_NLS | ||
863 | 70 | #include <libintl.h> | ||
864 | 71 | extern void gcc_init_libintl (void); | ||
865 | 72 | +extern void gcc_init_libintl_program (const char *); | ||
866 | 73 | extern size_t gcc_gettext_width (const char *); | ||
867 | 74 | #else | ||
868 | 75 | /* Stubs. */ | ||
869 | 0 | 76 | ||
870 | === added file 'contrib/linaro/patches/gcc/linaro-4.7+bzr115029/link-with-cxx.patch' | |||
871 | --- contrib/linaro/patches/gcc/linaro-4.7+bzr115029/link-with-cxx.patch 1970-01-01 00:00:00 +0000 | |||
872 | +++ contrib/linaro/patches/gcc/linaro-4.7+bzr115029/link-with-cxx.patch 2012-10-18 05:18:20 +0000 | |||
873 | @@ -0,0 +1,15 @@ | |||
874 | 1 | === modified file 'gcc/Makefile.in' | ||
875 | 2 | --- a/gcc/Makefile.in 2012-04-02 13:36:04 +0000 | ||
876 | 3 | +++ b/gcc/Makefile.in 2012-04-13 04:12:57 +0000 | ||
877 | 4 | @@ -229,8 +229,8 @@ | ||
878 | 5 | ifneq ($(ENABLE_BUILD_WITH_CXX),yes) | ||
879 | 6 | COMPILER = $(CC) | ||
880 | 7 | COMPILER_FLAGS = $(CFLAGS) | ||
881 | 8 | -LINKER = $(CC) | ||
882 | 9 | -LINKER_FLAGS = $(CFLAGS) | ||
883 | 10 | +LINKER = $(CXX) | ||
884 | 11 | +LINKER_FLAGS = $(CXXFLAGS) | ||
885 | 12 | else | ||
886 | 13 | COMPILER = $(CXX) | ||
887 | 14 | COMPILER_FLAGS = $(CXXFLAGS) | ||
888 | 15 | |||
889 | 0 | 16 | ||
890 | === added file 'contrib/linaro/patches/gcc/linaro-4.7+bzr115029/multilib-defaults.patch' | |||
891 | --- contrib/linaro/patches/gcc/linaro-4.7+bzr115029/multilib-defaults.patch 1970-01-01 00:00:00 +0000 | |||
892 | +++ contrib/linaro/patches/gcc/linaro-4.7+bzr115029/multilib-defaults.patch 2012-10-18 05:18:20 +0000 | |||
893 | @@ -0,0 +1,12 @@ | |||
894 | 1 | diff -Naru a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h | ||
895 | 2 | --- a/gcc/config/arm/linux-elf.h 2012-05-10 09:35:16.834673203 +0800 | ||
896 | 3 | +++ b/gcc/config/arm/linux-elf.h 2012-05-11 16:48:48.243398951 +0800 | ||
897 | 4 | @@ -48,7 +48,7 @@ | ||
898 | 5 | |||
899 | 6 | #undef MULTILIB_DEFAULTS | ||
900 | 7 | #define MULTILIB_DEFAULTS \ | ||
901 | 8 | - { "marm", "mlittle-endian", "mfloat-abi=hard", "mno-thumb-interwork" } | ||
902 | 9 | + { "mthumb", "mlittle-endian", "mfloat-abi=hard", "mno-thumb-interwork" } | ||
903 | 10 | |||
904 | 11 | /* Now we define the strings used to build the spec file. */ | ||
905 | 12 | #undef LIB_SPEC | ||
906 | 0 | 13 | ||
907 | === added file 'contrib/linaro/patches/gcc/linaro-4.7+bzr115029/multilib.patch' | |||
908 | --- contrib/linaro/patches/gcc/linaro-4.7+bzr115029/multilib.patch 1970-01-01 00:00:00 +0000 | |||
909 | +++ contrib/linaro/patches/gcc/linaro-4.7+bzr115029/multilib.patch 2012-10-18 05:18:20 +0000 | |||
910 | @@ -0,0 +1,46 @@ | |||
911 | 1 | diff -Naru a/gcc/config/arm/t-mlibs b/gcc/config/arm/t-mlibs | ||
912 | 2 | --- a/gcc/config/arm/t-mlibs 1970-01-01 08:00:00.000000000 +0800 | ||
913 | 3 | +++ b/gcc/config/arm/t-mlibs 2012-05-10 13:45:23.642306042 +0800 | ||
914 | 4 | @@ -0,0 +1,21 @@ | ||
915 | 5 | +# A set of predefined MULTILIB for different ARM targets. | ||
916 | 6 | +# Through the configure option --with-multilib-list, user can customize the | ||
917 | 7 | +# final MULTILIB implementation. | ||
918 | 8 | + | ||
919 | 9 | +comma := , | ||
920 | 10 | +space := | ||
921 | 11 | +space += | ||
922 | 12 | + | ||
923 | 13 | +MULTILIB_OPTIONS = marm | ||
924 | 14 | +MULTILIB_DIRNAMES = arm | ||
925 | 15 | +MULTILIB_OPTIONS += march=armv4t | ||
926 | 16 | +MULTILIB_DIRNAMES += armv4t | ||
927 | 17 | +MULTILIB_OPTIONS += mfloat-abi=soft | ||
928 | 18 | +MULTILIB_DIRNAMES += soft | ||
929 | 19 | + | ||
930 | 20 | +MULTILIB_EXCEPTIONS = | ||
931 | 21 | + | ||
932 | 22 | +MULTILIB_REQUIRED = marm/march=armv4t/mfloat-abi=soft | ||
933 | 23 | + | ||
934 | 24 | +MULTILIB_OSDIRNAMES = marm/march.armv4t/mfloat-abi.soft=!arm-linux-gnueabi | ||
935 | 25 | + | ||
936 | 26 | diff -Naru a/gcc/config.gcc b/gcc/config.gcc | ||
937 | 27 | --- a/gcc/config.gcc 2012-05-10 09:34:54.444323884 +0800 | ||
938 | 28 | +++ b/gcc/config.gcc 2012-05-10 09:38:46.234101983 +0800 | ||
939 | 29 | @@ -844,7 +844,7 @@ | ||
940 | 30 | case ${target} in | ||
941 | 31 | arm*-*-linux-*eabi) | ||
942 | 32 | tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h" | ||
943 | 33 | - tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi" | ||
944 | 34 | + tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi arm/t-mlibs" | ||
945 | 35 | # Define multilib configuration for arm-linux-androideabi. | ||
946 | 36 | case ${target} in | ||
947 | 37 | *-androideabi) | ||
948 | 38 | @@ -901,7 +901,7 @@ | ||
949 | 39 | case ${target} in | ||
950 | 40 | arm*-*-eabi*) | ||
951 | 41 | tm_file="$tm_file newlib-stdint.h" | ||
952 | 42 | - tmake_file="${tmake_file} arm/t-bpabi" | ||
953 | 43 | + tmake_file="${tmake_file} arm/t-bpabi arm/t-mlibs" | ||
954 | 44 | use_gcc_stdint=wrap | ||
955 | 45 | ;; | ||
956 | 46 | arm*-*-rtemseabi*) | ||
957 | 0 | 47 | ||
958 | === added file 'contrib/linaro/patches/gcc/linaro-4.7+bzr115029/multilibwithmultiarch.patch' | |||
959 | --- contrib/linaro/patches/gcc/linaro-4.7+bzr115029/multilibwithmultiarch.patch 1970-01-01 00:00:00 +0000 | |||
960 | +++ contrib/linaro/patches/gcc/linaro-4.7+bzr115029/multilibwithmultiarch.patch 2012-10-18 05:18:20 +0000 | |||
961 | @@ -0,0 +1,133 @@ | |||
962 | 1 | diff -Naru a/gcc/gcc.c b/gcc/gcc.c | ||
963 | 2 | --- a/gcc/gcc.c 2012-05-10 09:36:27.244857999 +0800 | ||
964 | 3 | +++ b/gcc/gcc.c 2012-05-11 10:45:59.293400990 +0800 | ||
965 | 4 | @@ -2154,16 +2154,6 @@ | ||
966 | 5 | break; | ||
967 | 6 | } | ||
968 | 7 | |||
969 | 8 | - /* Now try the multiarch path. */ | ||
970 | 9 | - if (!skip_multi_dir | ||
971 | 10 | - && !pl->require_machine_suffix && multiarch_dir) | ||
972 | 11 | - { | ||
973 | 12 | - memcpy (path + len, multiarch_suffix, multiarch_len + 1); | ||
974 | 13 | - ret = callback (path, callback_info); | ||
975 | 14 | - if (ret) | ||
976 | 15 | - break; | ||
977 | 16 | - } | ||
978 | 17 | - | ||
979 | 18 | /* Now try the base path. */ | ||
980 | 19 | if (!pl->require_machine_suffix | ||
981 | 20 | && !(pl->os_multilib ? skip_multi_os_dir : skip_multi_dir)) | ||
982 | 21 | @@ -2191,6 +2181,16 @@ | ||
983 | 22 | if (ret) | ||
984 | 23 | break; | ||
985 | 24 | } | ||
986 | 25 | + | ||
987 | 26 | + /* Now try the multiarch path. */ | ||
988 | 27 | + if (!skip_multi_dir | ||
989 | 28 | + && !pl->require_machine_suffix && multiarch_dir) | ||
990 | 29 | + { | ||
991 | 30 | + memcpy (path + len, multiarch_suffix, multiarch_len + 1); | ||
992 | 31 | + ret = callback (path, callback_info); | ||
993 | 32 | + if (ret) | ||
994 | 33 | + break; | ||
995 | 34 | + } | ||
996 | 35 | } | ||
997 | 36 | if (pl) | ||
998 | 37 | break; | ||
999 | 38 | @@ -7528,6 +7528,20 @@ | ||
1000 | 39 | ++p; | ||
1001 | 40 | } | ||
1002 | 41 | |||
1003 | 42 | + if (first) | ||
1004 | 43 | + { | ||
1005 | 44 | + if (this_path_len > 3 | ||
1006 | 45 | + && this_path[0] == '.' | ||
1007 | 46 | + && this_path[1] == ':' | ||
1008 | 47 | + && this_path[2] == ':') | ||
1009 | 48 | + { | ||
1010 | 49 | + char *new_multiarch_dir = XNEWVEC (char, this_path_len + 1); | ||
1011 | 50 | + | ||
1012 | 51 | + strncpy (new_multiarch_dir, this_path, this_path_len); | ||
1013 | 52 | + new_multiarch_dir[this_path_len] = '\0'; | ||
1014 | 53 | + multiarch_dir = &new_multiarch_dir[3]; | ||
1015 | 54 | + } | ||
1016 | 55 | + } | ||
1017 | 56 | if (ok && first) | ||
1018 | 57 | { | ||
1019 | 58 | if (this_path_len != 1 | ||
1020 | 59 | diff -Naru a/gcc/incpath.c b/gcc/incpath.c | ||
1021 | 60 | --- a/gcc/incpath.c 2012-05-10 09:35:14.395349562 +0800 | ||
1022 | 61 | +++ b/gcc/incpath.c 2012-05-11 11:00:08.813405495 +0800 | ||
1023 | 62 | @@ -132,7 +132,6 @@ | ||
1024 | 63 | const struct default_include *p; | ||
1025 | 64 | int relocated = cpp_relocated(); | ||
1026 | 65 | size_t len; | ||
1027 | 66 | - | ||
1028 | 67 | if (iprefix && (len = cpp_GCC_INCLUDE_DIR_len) != 0) | ||
1029 | 68 | { | ||
1030 | 69 | /* Look for directories that start with the standard prefix. | ||
1031 | 70 | @@ -150,15 +149,20 @@ | ||
1032 | 71 | if (!filename_ncmp (p->fname, cpp_GCC_INCLUDE_DIR, len)) | ||
1033 | 72 | { | ||
1034 | 73 | char *str = concat (iprefix, p->fname + len, NULL); | ||
1035 | 74 | - if (p->multilib == 1 && imultilib) | ||
1036 | 75 | - str = concat (str, dir_separator_str, imultilib, NULL); | ||
1037 | 76 | - else if (p->multilib == 2) | ||
1038 | 77 | + if (p->multilib && imultilib) | ||
1039 | 78 | + { | ||
1040 | 79 | + str = concat (str, dir_separator_str, imultilib, NULL); | ||
1041 | 80 | + add_path (str, SYSTEM, p->cxx_aware, false); | ||
1042 | 81 | + } | ||
1043 | 82 | + else | ||
1044 | 83 | + add_path (str, SYSTEM, p->cxx_aware, false); | ||
1045 | 84 | + | ||
1046 | 85 | + if (p->multilib && imultiarch) | ||
1047 | 86 | { | ||
1048 | 87 | - if (!imultiarch) | ||
1049 | 88 | - continue; | ||
1050 | 89 | + char *str = concat (iprefix, p->fname + len, NULL); | ||
1051 | 90 | str = concat (str, dir_separator_str, imultiarch, NULL); | ||
1052 | 91 | + add_path (str, SYSTEM, p->cxx_aware, false); | ||
1053 | 92 | } | ||
1054 | 93 | - add_path (str, SYSTEM, p->cxx_aware, false); | ||
1055 | 94 | } | ||
1056 | 95 | } | ||
1057 | 96 | } | ||
1058 | 97 | @@ -168,7 +172,7 @@ | ||
1059 | 98 | { | ||
1060 | 99 | if (!p->cplusplus || cxx_stdinc) | ||
1061 | 100 | { | ||
1062 | 101 | - char *str; | ||
1063 | 102 | + char *str, *str2; | ||
1064 | 103 | |||
1065 | 104 | /* Should this directory start with the sysroot? */ | ||
1066 | 105 | if (sysroot && p->add_sysroot) | ||
1067 | 106 | @@ -209,16 +213,20 @@ | ||
1068 | 107 | else | ||
1069 | 108 | str = update_path (p->fname, p->component); | ||
1070 | 109 | |||
1071 | 110 | - if (p->multilib == 1 && imultilib) | ||
1072 | 111 | - str = concat (str, dir_separator_str, imultilib, NULL); | ||
1073 | 112 | - else if (p->multilib == 2) | ||
1074 | 113 | + str2 = xstrdup(str); | ||
1075 | 114 | + if (p->multilib && imultilib) | ||
1076 | 115 | { | ||
1077 | 116 | - if (!imultiarch) | ||
1078 | 117 | - continue; | ||
1079 | 118 | - str = concat (str, dir_separator_str, imultiarch, NULL); | ||
1080 | 119 | + str = concat (str, dir_separator_str, imultilib, NULL); | ||
1081 | 120 | + add_path (str, SYSTEM, p->cxx_aware, false); | ||
1082 | 121 | } | ||
1083 | 122 | + else | ||
1084 | 123 | + add_path (str, SYSTEM, p->cxx_aware, false); | ||
1085 | 124 | |||
1086 | 125 | - add_path (str, SYSTEM, p->cxx_aware, false); | ||
1087 | 126 | + if (p->multilib && imultiarch) | ||
1088 | 127 | + { | ||
1089 | 128 | + str2 = concat (str2, dir_separator_str, imultiarch, NULL); | ||
1090 | 129 | + add_path (str2, SYSTEM, p->cxx_aware, false); | ||
1091 | 130 | + } | ||
1092 | 131 | } | ||
1093 | 132 | } | ||
1094 | 133 | } | ||
1095 | 0 | 134 | ||
1096 | === added file 'contrib/linaro/patches/gcc/linaro-4.7+bzr115029/triplet.patch' | |||
1097 | --- contrib/linaro/patches/gcc/linaro-4.7+bzr115029/triplet.patch 1970-01-01 00:00:00 +0000 | |||
1098 | +++ contrib/linaro/patches/gcc/linaro-4.7+bzr115029/triplet.patch 2012-10-18 05:18:20 +0000 | |||
1099 | @@ -0,0 +1,91 @@ | |||
1100 | 1 | === modified file 'ChangeLog.linaro' | ||
1101 | 2 | === modified file 'gcc/ada/gcc-interface/Makefile.in' | ||
1102 | 3 | --- a/gcc/ada/gcc-interface/Makefile.in 2012-02-24 16:17:01 +0000 | ||
1103 | 4 | +++ b/gcc/ada/gcc-interface/Makefile.in 2012-05-14 03:26:00 +0000 | ||
1104 | 5 | @@ -1869,7 +1869,7 @@ | ||
1105 | 6 | LIBRARY_VERSION := $(LIB_VERSION) | ||
1106 | 7 | endif | ||
1107 | 8 | |||
1108 | 9 | -ifeq ($(strip $(filter-out arm% linux-gnueabi,$(arch) $(osys)-$(word 4,$(targ)))),) | ||
1109 | 10 | +ifeq ($(strip $(filter-out arm% linux-gnueabi%,$(arch) $(osys)-$(word 4,$(targ)))),) | ||
1110 | 11 | LIBGNAT_TARGET_PAIRS = \ | ||
1111 | 12 | a-intnam.ads<a-intnam-linux.ads \ | ||
1112 | 13 | s-inmaop.adb<s-inmaop-posix.adb \ | ||
1113 | 14 | |||
1114 | 15 | === modified file 'gcc/config.gcc' | ||
1115 | 16 | --- a/gcc/config.gcc 2012-04-02 13:36:04 +0000 | ||
1116 | 17 | +++ b/gcc/config.gcc 2012-05-14 03:26:00 +0000 | ||
1117 | 18 | @@ -842,7 +842,7 @@ | ||
1118 | 19 | esac | ||
1119 | 20 | tmake_file="${tmake_file} arm/t-arm" | ||
1120 | 21 | case ${target} in | ||
1121 | 22 | - arm*-*-linux-*eabi) | ||
1122 | 23 | + arm*-*-linux-*eabi*) | ||
1123 | 24 | tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h" | ||
1124 | 25 | tmake_file="$tmake_file arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi arm/t-mlibs" | ||
1125 | 26 | # Define multilib configuration for arm-linux-androideabi. | ||
1126 | 27 | @@ -851,6 +851,11 @@ | ||
1127 | 28 | tmake_file="$tmake_file arm/t-linux-androideabi" | ||
1128 | 29 | ;; | ||
1129 | 30 | esac | ||
1130 | 31 | + case ${target} in | ||
1131 | 32 | + arm*-*-*eabihf) | ||
1132 | 33 | + with_float=${with_float:-hard} | ||
1133 | 34 | + ;; | ||
1134 | 35 | + esac | ||
1135 | 36 | # The BPABI long long divmod functions return a 128-bit value in | ||
1136 | 37 | # registers r0-r3. Correctly modeling that requires the use of | ||
1137 | 38 | # TImode. | ||
1138 | 39 | |||
1139 | 40 | === modified file 'libgcc/config.host' | ||
1140 | 41 | --- a/libgcc/config.host 2012-02-20 21:19:55 +0000 | ||
1141 | 42 | +++ b/libgcc/config.host 2012-05-14 03:26:01 +0000 | ||
1142 | 43 | @@ -327,7 +327,7 @@ | ||
1143 | 44 | arm*-*-linux*) # ARM GNU/Linux with ELF | ||
1144 | 45 | tmake_file="${tmake_file} arm/t-arm t-fixedpoint-gnu-prefix" | ||
1145 | 46 | case ${host} in | ||
1146 | 47 | - arm*-*-linux-*eabi) | ||
1147 | 48 | + arm*-*-linux-*eabi*) | ||
1148 | 49 | tmake_file="${tmake_file} arm/t-elf arm/t-bpabi arm/t-linux-eabi t-slibgcc-libgcc" | ||
1149 | 50 | tm_file="$tm_file arm/bpabi-lib.h" | ||
1150 | 51 | unwind_header=config/arm/unwind-arm.h | ||
1151 | 52 | |||
1152 | 53 | === modified file 'libjava/configure' | ||
1153 | 54 | --- a/libjava/configure 2012-02-24 15:21:12 +0000 | ||
1154 | 55 | +++ b/libjava/configure 2012-05-14 03:26:01 +0000 | ||
1155 | 56 | @@ -20542,7 +20542,7 @@ | ||
1156 | 57 | # on Darwin -single_module speeds up loading of the dynamic libraries. | ||
1157 | 58 | extra_ldflags_libjava=-Wl,-single_module | ||
1158 | 59 | ;; | ||
1159 | 60 | -arm*linux*eabi) | ||
1160 | 61 | +arm*linux*eabi*) | ||
1161 | 62 | # Some of the ARM unwinder code is actually in libstdc++. We | ||
1162 | 63 | # could in principle replicate it in libgcj, but it's better to | ||
1163 | 64 | # have a dependency on libstdc++. | ||
1164 | 65 | |||
1165 | 66 | === modified file 'libjava/configure.ac' | ||
1166 | 67 | --- a/libjava/configure.ac 2012-02-24 15:21:12 +0000 | ||
1167 | 68 | +++ b/libjava/configure.ac 2012-05-14 03:26:01 +0000 | ||
1168 | 69 | @@ -931,7 +931,7 @@ | ||
1169 | 70 | # on Darwin -single_module speeds up loading of the dynamic libraries. | ||
1170 | 71 | extra_ldflags_libjava=-Wl,-single_module | ||
1171 | 72 | ;; | ||
1172 | 73 | -arm*linux*eabi) | ||
1173 | 74 | +arm*linux*eabi*) | ||
1174 | 75 | # Some of the ARM unwinder code is actually in libstdc++. We | ||
1175 | 76 | # could in principle replicate it in libgcj, but it's better to | ||
1176 | 77 | # have a dependency on libstdc++. | ||
1177 | 78 | |||
1178 | 79 | === modified file 'libstdc++-v3/configure.host' | ||
1179 | 80 | --- a/libstdc++-v3/configure.host 2012-02-10 18:10:12 +0000 | ||
1180 | 81 | +++ b/libstdc++-v3/configure.host 2012-05-14 03:26:01 +0000 | ||
1181 | 82 | @@ -340,7 +340,7 @@ | ||
1182 | 83 | fi | ||
1183 | 84 | esac | ||
1184 | 85 | case "${host}" in | ||
1185 | 86 | - arm*-*-linux-*eabi) | ||
1186 | 87 | + arm*-*-linux-*eabi*) | ||
1187 | 88 | port_specific_symbol_files="\$(srcdir)/../config/os/gnu-linux/arm-eabi-extra.ver" | ||
1188 | 89 | ;; | ||
1189 | 90 | esac | ||
1190 | 91 | |||
1191 | 0 | 92 | ||
1192 | === modified file 'contrib/linaro/update-aarch64.sh' | |||
1193 | --- contrib/linaro/update-aarch64.sh 2012-10-03 00:11:01 +0000 | |||
1194 | +++ contrib/linaro/update-aarch64.sh 2012-10-18 05:18:20 +0000 | |||
1195 | @@ -56,27 +56,42 @@ | |||
1196 | 56 | $invoke ls "~/snapshots" | sort > snapshots.txt | 56 | $invoke ls "~/snapshots" | sort > snapshots.txt |
1197 | 57 | 57 | ||
1198 | 58 | binutils_latest=$(latest binutils-2.24~) | 58 | binutils_latest=$(latest binutils-2.24~) |
1199 | 59 | gcc_latest=$(latest gcc-arm-aarch64-4.7+svn) | ||
1200 | 60 | newlib_latest=$(latest newlib-1.21~) | ||
1201 | 61 | gdb_latest=$(latest gdb-7.6~) | ||
1202 | 62 | eglibc_latest=$(latest eglibc-2.16+svn) | ||
1203 | 63 | ports_latest=$(latest eglibc-ports-2.16+svn) | ||
1204 | 64 | |||
1205 | 65 | # HACK: override to match OpenEmbedded | ||
1206 | 66 | binutils_latest="binutils-2.24~20120920+gitb05c76f" | ||
1207 | 67 | gcc_latest="gcc-arm-aarch64-4.7+svn191987" | ||
1208 | 68 | eglibc_latest="eglibc-2.16+svn20393" | ||
1209 | 69 | ports_latest="eglibc-ports-2.16+svn20393" | ||
1210 | 70 | |||
1211 | 59 | binutils_version=$(get_version $binutils_latest) | 71 | binutils_version=$(get_version $binutils_latest) |
1212 | 60 | gcc_latest=$(latest gcc-arm-aarch64-4.7+svn) | ||
1213 | 61 | gcc_version=$(get_version $gcc_latest) | 72 | gcc_version=$(get_version $gcc_latest) |
1214 | 62 | newlib_latest=$(latest newlib-1.21~) | ||
1215 | 63 | newlib_version=$(get_version $newlib_latest) | 73 | newlib_version=$(get_version $newlib_latest) |
1216 | 64 | gdb_latest=$(latest gdb-7.6~) | ||
1217 | 65 | gdb_version=$(get_version $gdb_latest) | 74 | gdb_version=$(get_version $gdb_latest) |
1218 | 75 | eglibc_version=$(get_version $eglibc_latest) | ||
1219 | 76 | ports_version=$(get_version $ports_latest) | ||
1220 | 66 | 77 | ||
1221 | 67 | # Make tarballs of each | 78 | # Make tarballs of each |
1222 | 68 | make_tarball $binutils_latest | 79 | make_tarball $binutils_latest |
1223 | 69 | make_tarball $gcc_latest | 80 | make_tarball $gcc_latest |
1224 | 70 | make_tarball $newlib_latest | 81 | make_tarball $newlib_latest |
1225 | 71 | make_tarball $gdb_latest | 82 | make_tarball $gdb_latest |
1226 | 83 | make_tarball $eglibc_latest | ||
1227 | 84 | make_tarball $ports_latest | ||
1228 | 72 | 85 | ||
1229 | 73 | # Update the config files | 86 | # Update the config files |
1230 | 74 | sed -i -r "s#arm-aarch64-4[^ \"]*#$gcc_version#" config/cc/gcc.in | 87 | sed -i -r "s#arm-aarch64-4[^ \"]*#$gcc_version#" config/cc/gcc.in |
1231 | 75 | sed -i -r "s#2\.24~[^ \"]*#$binutils_version#" config/binutils/binutils.in | 88 | sed -i -r "s#2\.24~[^ \"]*#$binutils_version#" config/binutils/binutils.in |
1232 | 76 | sed -i -r "s#1\.21~[^ \"]*#$newlib_version#" config/libc/newlib.in | 89 | sed -i -r "s#1\.21~[^ \"]*#$newlib_version#" config/libc/newlib.in |
1233 | 77 | sed -i -r "s#7\.6~[^ \"]*#$gdb_version#" config/debug/gdb.in | 90 | sed -i -r "s#7\.6~[^ \"]*#$gdb_version#" config/debug/gdb.in |
1234 | 91 | sed -i -r "s#2\.16+[^ \"]*#$eglibc_version#" config/libc/eglibc.in | ||
1235 | 78 | 92 | ||
1236 | 79 | move_patches gcc arm-aarch64 $gcc_version | 93 | move_patches gcc arm-aarch64 $gcc_version |
1237 | 80 | move_patches binutils 2.24~ $binutils_version | 94 | move_patches binutils 2.24~ $binutils_version |
1238 | 81 | move_patches newlib 1.21~ $newlib_version | 95 | move_patches newlib 1.21~ $newlib_version |
1239 | 82 | move_patches gdb 7.3~ $gdb_version | 96 | move_patches gdb 7.3~ $gdb_version |
1240 | 97 | move_patches eglibc ports-2_16+ $ports_version | ||
1241 | 83 | 98 | ||
1242 | === modified file 'samples/linaro-aarch64-linux-gnu/crosstool.config' | |||
1243 | --- samples/linaro-aarch64-linux-gnu/crosstool.config 2012-10-15 02:35:12 +0000 | |||
1244 | +++ samples/linaro-aarch64-linux-gnu/crosstool.config 2012-10-18 05:18:20 +0000 | |||
1245 | @@ -1,7 +1,7 @@ | |||
1246 | 1 | # | 1 | # |
1247 | 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
1248 | 3 | # crosstool-NG linaro-1.13.1+bzr2485 Configuration | 3 | # crosstool-NG linaro-1.13.1+bzr2485 Configuration |
1250 | 4 | # Mon Oct 15 15:32:00 2012 | 4 | # Thu Oct 18 18:05:37 2012 |
1251 | 5 | # | 5 | # |
1252 | 6 | CT_CONFIGURE_has_xzutils=y | 6 | CT_CONFIGURE_has_xzutils=y |
1253 | 7 | CT_CONFIGURE_has_cvs=y | 7 | CT_CONFIGURE_has_cvs=y |
1254 | @@ -251,7 +251,7 @@ | |||
1255 | 251 | # CT_BINUTILS_V_2_18a is not set | 251 | # CT_BINUTILS_V_2_18a is not set |
1256 | 252 | # CT_BINUTILS_V_2_17a is not set | 252 | # CT_BINUTILS_V_2_17a is not set |
1257 | 253 | # CT_BINUTILS_V_2_16_1a is not set | 253 | # CT_BINUTILS_V_2_16_1a is not set |
1259 | 254 | CT_BINUTILS_VERSION="2.24~20120920+gitb05c76f" | 254 | CT_BINUTILS_VERSION="2.24~20121016+git142208f" |
1260 | 255 | CT_BINUTILS_2_22_or_later=y | 255 | CT_BINUTILS_2_22_or_later=y |
1261 | 256 | CT_BINUTILS_2_21_or_later=y | 256 | CT_BINUTILS_2_21_or_later=y |
1262 | 257 | CT_BINUTILS_2_20_or_later=y | 257 | CT_BINUTILS_2_20_or_later=y |
1263 | @@ -277,10 +277,11 @@ | |||
1264 | 277 | # C compiler | 277 | # C compiler |
1265 | 278 | # | 278 | # |
1266 | 279 | CT_CC="gcc" | 279 | CT_CC="gcc" |
1268 | 280 | CT_CC_VERSION="linaro-4.7-2012.10" | 280 | CT_CC_VERSION="linaro-4.7+bzr115029" |
1269 | 281 | CT_CC_gcc=y | 281 | CT_CC_gcc=y |
1270 | 282 | CT_CC_GCC_SHOW_LINARO=y | 282 | CT_CC_GCC_SHOW_LINARO=y |
1272 | 283 | CT_CC_V_linaro_4_7_2012_10=y | 283 | # CT_CC_V_linaro_4_7_2012_10 is not set |
1273 | 284 | CT_CC_V_linaro_4_7_TIP=y | ||
1274 | 284 | # CT_CC_V_arm_aarch64_4_7_PRE is not set | 285 | # CT_CC_V_arm_aarch64_4_7_PRE is not set |
1275 | 285 | # CT_CC_V_4_7_0 is not set | 286 | # CT_CC_V_4_7_0 is not set |
1276 | 286 | # CT_CC_V_4_6_2 is not set | 287 | # CT_CC_V_4_6_2 is not set |
1277 | 287 | 288 | ||
1278 | === modified file 'samples/linaro-aarch64-none-elf/crosstool.config' | |||
1279 | --- samples/linaro-aarch64-none-elf/crosstool.config 2012-10-15 02:35:12 +0000 | |||
1280 | +++ samples/linaro-aarch64-none-elf/crosstool.config 2012-10-18 05:18:20 +0000 | |||
1281 | @@ -1,7 +1,7 @@ | |||
1282 | 1 | # | 1 | # |
1283 | 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
1284 | 3 | # crosstool-NG linaro-1.13.1+bzr2485 Configuration | 3 | # crosstool-NG linaro-1.13.1+bzr2485 Configuration |
1286 | 4 | # Mon Oct 15 15:32:35 2012 | 4 | # Thu Oct 18 18:14:06 2012 |
1287 | 5 | # | 5 | # |
1288 | 6 | CT_CONFIGURE_has_xzutils=y | 6 | CT_CONFIGURE_has_xzutils=y |
1289 | 7 | CT_CONFIGURE_has_cvs=y | 7 | CT_CONFIGURE_has_cvs=y |
1290 | @@ -223,7 +223,7 @@ | |||
1291 | 223 | # CT_BINUTILS_V_2_18a is not set | 223 | # CT_BINUTILS_V_2_18a is not set |
1292 | 224 | # CT_BINUTILS_V_2_17a is not set | 224 | # CT_BINUTILS_V_2_17a is not set |
1293 | 225 | # CT_BINUTILS_V_2_16_1a is not set | 225 | # CT_BINUTILS_V_2_16_1a is not set |
1295 | 226 | CT_BINUTILS_VERSION="2.24~20120920+gitb05c76f" | 226 | CT_BINUTILS_VERSION="2.24~20121016+git142208f" |
1296 | 227 | CT_BINUTILS_2_22_or_later=y | 227 | CT_BINUTILS_2_22_or_later=y |
1297 | 228 | CT_BINUTILS_2_21_or_later=y | 228 | CT_BINUTILS_2_21_or_later=y |
1298 | 229 | CT_BINUTILS_2_20_or_later=y | 229 | CT_BINUTILS_2_20_or_later=y |
1299 | @@ -247,10 +247,11 @@ | |||
1300 | 247 | # C compiler | 247 | # C compiler |
1301 | 248 | # | 248 | # |
1302 | 249 | CT_CC="gcc" | 249 | CT_CC="gcc" |
1304 | 250 | CT_CC_VERSION="linaro-4.7-2012.10" | 250 | CT_CC_VERSION="linaro-4.7+bzr115029" |
1305 | 251 | CT_CC_gcc=y | 251 | CT_CC_gcc=y |
1306 | 252 | CT_CC_GCC_SHOW_LINARO=y | 252 | CT_CC_GCC_SHOW_LINARO=y |
1308 | 253 | CT_CC_V_linaro_4_7_2012_10=y | 253 | # CT_CC_V_linaro_4_7_2012_10 is not set |
1309 | 254 | CT_CC_V_linaro_4_7_TIP=y | ||
1310 | 254 | # CT_CC_V_arm_aarch64_4_7_PRE is not set | 255 | # CT_CC_V_arm_aarch64_4_7_PRE is not set |
1311 | 255 | # CT_CC_V_4_7_0 is not set | 256 | # CT_CC_V_4_7_0 is not set |
1312 | 256 | # CT_CC_V_4_6_2 is not set | 257 | # CT_CC_V_4_6_2 is not set |
cbuild has taken a snapshot of this branch at r2505 and queued it for build.
The diff against the ancestor r2504 is available at: builds. linaro. org/toolchain/ snapshots/ crosstool- ng-linaro- 1.13.1+ bzr2505~ michaelh1~ aarch64- linaro- tip.diff
http://
and will be built on the following builders:
i686-lucid
You can track the build queue at: ex.seabright. co.nz/helpers/ scheduler
http://
cbuild-snapshot: crosstool- ng-linaro- 1.13.1+ bzr2505~ michaelh1~ aarch64- linaro- tip
cbuild-ancestor: lp:~linaro-toolchain-dev/crosstool-ng/linaro+bzr2504
cbuild-state: check