aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKen Werner <ken.werner@linaro.org>2012-05-02 20:31:08 +0200
committerKen Werner <ken.werner@linaro.org>2012-05-02 20:31:08 +0200
commitba4a243dea9e9e9d4bddfa14af53eb6f7761a60b (patch)
tree6b0ed7ebde5b72da626535e5e9225b217859cb59
parentcd5fa2188313f5202555d87379489c79945fec94 (diff)
downloadmeta-linaro-ba4a243dea9e9e9d4bddfa14af53eb6f7761a60b.tar.gz
gcc-linaro-4.6: Fix install location of libstdc++ for qemux86-64
Signed-off-by: Ken Werner <ken.werner@linaro.org>
-rw-r--r--recipes-devtools/gcc/gcc-linaro-4.6.inc3
-rw-r--r--recipes-devtools/gcc/gcc-linaro-4.6/64bithack.patch28
2 files changed, 30 insertions, 1 deletions
diff --git a/recipes-devtools/gcc/gcc-linaro-4.6.inc b/recipes-devtools/gcc/gcc-linaro-4.6.inc
index 4315efd9..ed1fde6c 100644
--- a/recipes-devtools/gcc/gcc-linaro-4.6.inc
+++ b/recipes-devtools/gcc/gcc-linaro-4.6.inc
@@ -1,6 +1,6 @@
require recipes-devtools/gcc/gcc-common.inc
-PR = "r0"
+PR = "r1"
RELEASE = "2012.04"
BINV = "4.6.4"
@@ -17,6 +17,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
file://COPYING.RUNTIME;md5=fe60d87048567d4fe8c8a0ed2448bcc8"
SRC_URI = "https://launchpad.net/gcc-linaro/4.6/4.6-${RELEASE}/+download/gcc-${PV}-${RELEASE}.tar.bz2 \
+ file://64bithack.patch \
file://optional_libstdc.patch \
file://use-defaults.h-and-t-oe-in-B.patch \
"
diff --git a/recipes-devtools/gcc/gcc-linaro-4.6/64bithack.patch b/recipes-devtools/gcc/gcc-linaro-4.6/64bithack.patch
new file mode 100644
index 00000000..83185a85
--- /dev/null
+++ b/recipes-devtools/gcc/gcc-linaro-4.6/64bithack.patch
@@ -0,0 +1,28 @@
+This patch causes the GCC to install the libstc++ into lib as opposed to
+lib64 on X86_64 Linux targets. Usually the libstdc++ will be placed in lib64
+during the install step. Because that's where 64bit libs go for linux targets
+according to the FHS. If you don't like this but want to use linux as a target
+you have to patch the toolchain which is what 64bithack.patch attempts to do.
+One solution would be to have a distinctive OE target that doesn't support
+multilib and has 64bit libs under lib. The advantage over the current
+meta/recipes-devtools/gcc/gcc-4.6/64bithack.patch provided by oe-core is that
+multilib upport is entirely disabled and MULTILIB_OSDIRNAMES is empty. This
+prevents a broken toolchain in case --enable-multilib gets used.
+
+Upstream-Status: Inappropriate
+
+Signed-off-by: Ken Werner <ken.werner@linaro.org>
+
+Index: gcc-linaro-4.6-2012.04/gcc/config.gcc
+===================================================================
+--- gcc-linaro-4.6-2012.04.orig/gcc/config.gcc
++++ gcc-linaro-4.6-2012.04.orig/gcc/config.gcc
+@@ -1310,7 +1310,7 @@ x86_64-*-linux* | x86_64-*-kfreebsd*-gnu
+ tm_file="${tm_file} knetbsd-gnu.h"
+ ;;
+ esac
+- tmake_file="${tmake_file} i386/t-linux64 i386/t-crtstuff i386/t-crtpc i386/t-crtfm t-dfprules"
++ tmake_file="${tmake_file} i386/t-crtstuff i386/t-crtpc i386/t-crtfm t-dfprules"
+ ;;
+ i[34567]86-pc-msdosdjgpp*)
+ xm_file=i386/xm-djgpp.h