aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFathi Boudra <fathi.boudra@linaro.org>2017-11-23 09:11:43 +0000
committerLinaro Code Review <review@review.linaro.org>2017-11-23 09:11:43 +0000
commitd3a19cabcfe871aa901fb7f7272f7dbccc4b3541 (patch)
tree73b08f0125b52eaa11727614916b85ce15e9bc8d
parent2b3aad5c0de7eb70e0c0650d61652ee7c8cb82d2 (diff)
parentacc13885ee5bfae0f6710659bd8cdba3147d1af0 (diff)
Merge "gcc-linaro-7.1: add ILP32 patches for correct triplet"
-rw-r--r--meta-linaro-toolchain/recipes-devtools/gcc/gcc-linaro-7.1.inc3
-rw-r--r--meta-linaro-toolchain/recipes-devtools/gcc/gcc-linaro-7.1/add-gcc-ilp32-default-support.patch61
-rw-r--r--meta-linaro-toolchain/recipes-devtools/gcc/gcc-linaro-7.1/fix-gcc-multilib-for-ilp32-default.patch39
3 files changed, 102 insertions, 1 deletions
diff --git a/meta-linaro-toolchain/recipes-devtools/gcc/gcc-linaro-7.1.inc b/meta-linaro-toolchain/recipes-devtools/gcc/gcc-linaro-7.1.inc
index 92dc327d..602dbe79 100644
--- a/meta-linaro-toolchain/recipes-devtools/gcc/gcc-linaro-7.1.inc
+++ b/meta-linaro-toolchain/recipes-devtools/gcc/gcc-linaro-7.1.inc
@@ -55,7 +55,6 @@ SRC_URI = "\
file://0026-Avoid-using-libdir-from-.la-which-usually-points-to-.patch \
file://0027-export-CPP.patch \
file://0028-Enable-SPE-AltiVec-generation-on-powepc-linux-target.patch \
- file://0029-Disable-the-MULTILIB_OSDIRNAMES-and-other-multilib-o.patch \
file://0030-Ensure-target-gcc-headers-can-be-included.patch \
file://0031-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch \
file://0032-Don-t-search-host-directory-during-relink-if-inst_pr.patch \
@@ -74,6 +73,8 @@ SRC_URI = "\
file://0045-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch \
file://0046-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch \
file://0047-sync-gcc-stddef.h-with-musl.patch \
+ file://add-gcc-ilp32-default-support.patch \
+ file://fix-gcc-multilib-for-ilp32-default.patch \
${BACKPORTS} \
"
BACKPORTS = "\
diff --git a/meta-linaro-toolchain/recipes-devtools/gcc/gcc-linaro-7.1/add-gcc-ilp32-default-support.patch b/meta-linaro-toolchain/recipes-devtools/gcc/gcc-linaro-7.1/add-gcc-ilp32-default-support.patch
new file mode 100644
index 00000000..4c231a19
--- /dev/null
+++ b/meta-linaro-toolchain/recipes-devtools/gcc/gcc-linaro-7.1/add-gcc-ilp32-default-support.patch
@@ -0,0 +1,61 @@
+From ebfcbd5ace44eb4db1a8e0a0e0622ff053c69e31 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20D=C3=ADaz?= <daniel.diaz@linaro.org>
+Date: Wed, 11 Oct 2017 11:27:58 -0500
+Subject: [PATCH 1/2] Add gcc ilp32 default support
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This patch comes from Wookey:
+ https://people.linaro.org/~wookey/ilp32/patches/gcc-ilp32-default-support.patch
+
+Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
+---
+ gcc/config.gcc | 22 ++++++++++++++++------
+ 1 file changed, 16 insertions(+), 6 deletions(-)
+
+diff --git a/gcc/config.gcc b/gcc/config.gcc
+index e8aaf2d..72522d0 100644
+--- a/gcc/config.gcc
++++ b/gcc/config.gcc
+@@ -518,11 +518,14 @@ aarch64*-*-*)
+ tm_p_file="${tm_p_file} arm/aarch-common-protos.h"
+ case ${with_abi} in
+ "")
+- if test "x$with_multilib_list" = xilp32; then
++ case ${target} in
++ aarch64*-*-*_ilp32)
+ tm_file="aarch64/biarchilp32.h ${tm_file}"
+- else
++ ;;
++ *)
+ tm_file="aarch64/biarchlp64.h ${tm_file}"
+- fi
++ ;;
++ esac
+ ;;
+ ilp32)
+ tm_file="aarch64/biarchilp32.h ${tm_file}"
+@@ -971,9 +974,16 @@ aarch64*-*-linux*)
+ esac
+ aarch64_multilibs="${with_multilib_list}"
+ if test "$aarch64_multilibs" = "default"; then
+- # TODO: turn on ILP32 multilib build after its support is mature.
+- # aarch64_multilibs="lp64,ilp32"
+- aarch64_multilibs="lp64"
++ case $target in
++ aarch64*_ilp32*)
++ aarch64_multilibs="ilp32"
++ ;;
++ aarch64*)
++ # TODO: turn on ILP32 multilib build after its support is mature.
++ # aarch64_multilibs="lp64,ilp32"
++ aarch64_multilibs="lp64"
++ ;;
++ esac
+ fi
+ aarch64_multilibs=`echo $aarch64_multilibs | sed -e 's/,/ /g'`
+ for aarch64_multilib in ${aarch64_multilibs}; do
+--
+2.7.4
+
diff --git a/meta-linaro-toolchain/recipes-devtools/gcc/gcc-linaro-7.1/fix-gcc-multilib-for-ilp32-default.patch b/meta-linaro-toolchain/recipes-devtools/gcc/gcc-linaro-7.1/fix-gcc-multilib-for-ilp32-default.patch
new file mode 100644
index 00000000..8a71facb
--- /dev/null
+++ b/meta-linaro-toolchain/recipes-devtools/gcc/gcc-linaro-7.1/fix-gcc-multilib-for-ilp32-default.patch
@@ -0,0 +1,39 @@
+From 50a45089ace8221682852d1c8401aad7824b9ec1 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Daniel=20D=C3=ADaz?= <daniel.diaz@linaro.org>
+Date: Wed, 11 Oct 2017 11:45:15 -0500
+Subject: [PATCH 2/2] Fix gcc multilib for ilp32 default
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This comes from Wookey:
+ https://people.linaro.org/~wookey/ilp32/patches/gcc-fixup-multilib-patch-for-ilp32-default.patch
+on top of Debian's gcc-multiarch.diff.
+
+Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
+---
+ gcc/config/aarch64/t-aarch64-linux | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/gcc/config/aarch64/t-aarch64-linux b/gcc/config/aarch64/t-aarch64-linux
+index ab064ab..38b33f6 100644
+--- a/gcc/config/aarch64/t-aarch64-linux
++++ b/gcc/config/aarch64/t-aarch64-linux
+@@ -22,7 +22,12 @@ LIB1ASMSRC = aarch64/lib1funcs.asm
+ LIB1ASMFUNCS = _aarch64_sync_cache_range
+
+ AARCH_BE = $(if $(findstring TARGET_BIG_ENDIAN_DEFAULT=1, $(tm_defines)),_be)
++ifneq (,$(findstring _ilp32,$(target)))
+ MULTILIB_OSDIRNAMES = mabi.lp64=../lib64$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu)
++MULTILIB_OSDIRNAMES += mabi.ilp32=../lib$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32)
++MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu_ilp32)
++else
++MULTILIB_OSDIRNAMES = mabi.lp64=../lib$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu)
++MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32)
+ MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu)
+-
+-MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32
++endif
+--
+2.7.4
+