diff options
author | Khem Raj <raj.khem@gmail.com> | 2012-06-28 12:19:53 -0700 |
---|---|---|
committer | Koen Kooi <koen@dominion.thruhere.net> | 2012-07-09 18:40:21 +0200 |
commit | 6b278fbb02d818b54b5a9fa2716fc49e896b72a8 (patch) | |
tree | 833783fb738ff7abf3d0e3029c9a468e73b06e28 /toolchain-layer/recipes-devtools/gcc/gcc-4.6/64bithack.patch | |
parent | 680af24d1ff95533db610176e6b01fcc9dcf6699 (diff) | |
download | meta-openembedded-6b278fbb02d818b54b5a9fa2716fc49e896b72a8.tar.gz |
gcc-4.6: Migrate recipes from OE-Core
Remove linaro patches. If one needs to use linaro
modified gcc they should use meta-linaro
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'toolchain-layer/recipes-devtools/gcc/gcc-4.6/64bithack.patch')
-rw-r--r-- | toolchain-layer/recipes-devtools/gcc/gcc-4.6/64bithack.patch | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/toolchain-layer/recipes-devtools/gcc/gcc-4.6/64bithack.patch b/toolchain-layer/recipes-devtools/gcc/gcc-4.6/64bithack.patch new file mode 100644 index 000000000..d35753a06 --- /dev/null +++ b/toolchain-layer/recipes-devtools/gcc/gcc-4.6/64bithack.patch | |||
@@ -0,0 +1,68 @@ | |||
1 | Upstream-Status: Inappropriate [embedded specific] | ||
2 | |||
3 | GCC has internal multilib handling code but it assumes a very specific rigid directory | ||
4 | layout. The build system implementation of multilib layout is very generic and allows | ||
5 | complete customisation of the library directories. | ||
6 | |||
7 | This patch is a partial solution to allow any custom directories to be passed into gcc | ||
8 | and handled correctly. It forces gcc to use the base_libdir (which is the current | ||
9 | directory, "."). We need to do this for each multilib that is configured as we don't | ||
10 | know which compiler options may be being passed into the compiler. Since we have a compiler | ||
11 | per mulitlib at this point that isn't an issue. | ||
12 | |||
13 | The one problem is the target compiler is only going to work for the default multlilib at | ||
14 | this point. Ideally we'd figure out which multilibs were being enabled with which paths | ||
15 | and be able to patch these entries with a complete set of correct paths but this we | ||
16 | don't have such code at this point. This is something the target gcc recipe should do | ||
17 | and override these platform defaults in its build config. | ||
18 | |||
19 | RP 15/8/11 | ||
20 | |||
21 | Index: gcc-4_6-branch/gcc/config/i386/t-linux64 | ||
22 | =================================================================== | ||
23 | --- gcc-4_6-branch.orig/gcc/config/i386/t-linux64 2011-06-23 15:15:29.000000000 +0100 | ||
24 | +++ gcc-4_6-branch/gcc/config/i386/t-linux64 2011-08-15 13:09:03.772415848 +0100 | ||
25 | @@ -24,8 +24,8 @@ | ||
26 | # MULTILIB_OSDIRNAMES according to what is found on the target. | ||
27 | |||
28 | MULTILIB_OPTIONS = m64/m32 | ||
29 | -MULTILIB_DIRNAMES = 64 32 | ||
30 | -MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) | ||
31 | +MULTILIB_DIRNAMES = . . | ||
32 | +MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) | ||
33 | |||
34 | LIBGCC = stmp-multilib | ||
35 | INSTALL_LIBGCC = install-multilib | ||
36 | Index: gcc-4_6-branch/gcc/config/mips/t-linux64 | ||
37 | =================================================================== | ||
38 | --- gcc-4_6-branch.orig/gcc/config/mips/t-linux64 2011-08-15 13:06:13.732415763 +0100 | ||
39 | +++ gcc-4_6-branch/gcc/config/mips/t-linux64 2011-08-15 13:09:11.452419446 +0100 | ||
40 | @@ -17,8 +17,8 @@ | ||
41 | # <http://www.gnu.org/licenses/>. | ||
42 | |||
43 | MULTILIB_OPTIONS = mabi=n32/mabi=32/mabi=64 | ||
44 | -MULTILIB_DIRNAMES = n32 32 64 | ||
45 | -MULTILIB_OSDIRNAMES = ../lib32 ../lib ../lib64 | ||
46 | +MULTILIB_DIRNAMES = . . . | ||
47 | +MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) | ||
48 | |||
49 | EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o | ||
50 | |||
51 | Index: gcc-4_6-branch/gcc/config/rs6000/t-linux64 | ||
52 | =================================================================== | ||
53 | --- gcc-4_6-branch.orig/gcc/config/rs6000/t-linux64 2011-08-15 13:06:25.272415822 +0100 | ||
54 | +++ gcc-4_6-branch/gcc/config/rs6000/t-linux64 2011-08-15 13:09:21.062415878 +0100 | ||
55 | @@ -32,11 +32,11 @@ | ||
56 | # MULTILIB_OSDIRNAMES according to what is found on the target. | ||
57 | |||
58 | MULTILIB_OPTIONS = m64/m32 msoft-float | ||
59 | -MULTILIB_DIRNAMES = 64 32 nof | ||
60 | +MULTILIB_DIRNAMES = . . . | ||
61 | MULTILIB_EXTRA_OPTS = fPIC mstrict-align | ||
62 | MULTILIB_EXCEPTIONS = m64/msoft-float | ||
63 | MULTILIB_EXCLUSIONS = m64/!m32/msoft-float | ||
64 | -MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) nof | ||
65 | +MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir)) | ||
66 | MULTILIB_MATCHES = $(MULTILIB_MATCHES_FLOAT) | ||
67 | |||
68 | softfp_wrap_start := '\#ifndef __powerpc64__' | ||