From 3923f7ea0b581f7a0f283e512ae8e70f63841a42 Mon Sep 17 00:00:00 2001 From: Mark Hatle Date: Thu, 18 Dec 2014 16:51:12 +0800 Subject: gcc: Disable aarch64 multilib options We want to revert to default gcc behavior to support oe-core's ability to change the libdir. (From OE-Core rev: 7ea9e87217c78a20cebcb16a23bfd412e276440f) Signed-off-by: Mark Hatle Signed-off-by: Richard Purdie --- meta/recipes-devtools/gcc/gcc-4.9.inc | 1 + .../gcc/gcc-4.9/0057-aarch64-config.patch | 32 ++++++++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 meta/recipes-devtools/gcc/gcc-4.9/0057-aarch64-config.patch (limited to 'meta/recipes-devtools/gcc') diff --git a/meta/recipes-devtools/gcc/gcc-4.9.inc b/meta/recipes-devtools/gcc/gcc-4.9.inc index 8f212b2..2568e99 100644 --- a/meta/recipes-devtools/gcc/gcc-4.9.inc +++ b/meta/recipes-devtools/gcc/gcc-4.9.inc @@ -71,6 +71,7 @@ SRC_URI = "\ file://0054-gcc-Makefile.in-fix-parallel-building-failure.patch \ file://0055-PR-rtl-optimization-61801.patch \ file://0056-top-level-reorder_gcc-bug-61144.patch \ + file://0057-aarch64-config.patch \ file://0058-gcc-r212171.patch \ file://0059-gcc-PR-rtl-optimization-63348.patch \ " diff --git a/meta/recipes-devtools/gcc/gcc-4.9/0057-aarch64-config.patch b/meta/recipes-devtools/gcc/gcc-4.9/0057-aarch64-config.patch new file mode 100644 index 0000000..f295596 --- /dev/null +++ b/meta/recipes-devtools/gcc/gcc-4.9/0057-aarch64-config.patch @@ -0,0 +1,32 @@ +Disable the MULTILIB_OSDIRNAMES and other multilib options. + +Hard coding the MULTILIB_OSDIRNAMES with ../lib64 is causing problems on +systems where the libdir is NOT set to /lib64. This is allowed by the ABI, as +long as the dynamic loader is present in /lib. + +We simply want to use the default rules in gcc to find and configure the +normal libdir. + +Signed-off-by: Mark Hatle + +Index: gcc-4.9.1/gcc/config/aarch64/t-aarch64-linux +=================================================================== +--- gcc-4.9.1.orig/gcc/config/aarch64/t-aarch64-linux ++++ gcc-4.9.1/gcc/config/aarch64/t-aarch64-linux +@@ -21,11 +21,11 @@ + LIB1ASMSRC = aarch64/lib1funcs.asm + LIB1ASMFUNCS = _aarch64_sync_cache_range + +-AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be) +-MULTILIB_OSDIRNAMES = .=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu) +-MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu) ++#AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be) ++#MULTILIB_OSDIRNAMES = .=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu) ++#MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu) + + # Disable the multilib for linux-gnu targets for the time being; focus + # on the baremetal targets. +-MULTILIB_OPTIONS = +-MULTILIB_DIRNAMES = ++#MULTILIB_OPTIONS = ++#MULTILIB_DIRNAMES = -- cgit v1.1