In OE we do not build mutlib like gcc does it by default, this ensures
that mutlilib is virtually disabled for OE, since we hardly use same gcc
to build for multiple ABIs

This fixes cases in SDK where g++ is not able to find standard c++
include headers

Signed-off-by: Khem Raj <raj.k...@gmail.com>
---
 meta/recipes-devtools/gcc/gcc-8.2.inc         |  1 +
 .../0043-riscv-Disable-multilib-for-OE.patch  | 27 +++++++++++++++++++
 2 files changed, 28 insertions(+)
 create mode 100644 
meta/recipes-devtools/gcc/gcc-8.2/0043-riscv-Disable-multilib-for-OE.patch

diff --git a/meta/recipes-devtools/gcc/gcc-8.2.inc 
b/meta/recipes-devtools/gcc/gcc-8.2.inc
index b6568a046e..b21c605e81 100644
--- a/meta/recipes-devtools/gcc/gcc-8.2.inc
+++ b/meta/recipes-devtools/gcc/gcc-8.2.inc
@@ -71,6 +71,7 @@ SRC_URI = "\
            file://0040-Re-introduce-spe-commandline-options.patch \
            file://0041-ARC-fix-spec-gen.patch \
            file://0042-powerpc-powerpc64-Add-support-for-musl-ldso.patch \
+           file://0043-riscv-Disable-multilib-for-OE.patch \
            ${BACKPORTS} \
 "
 BACKPORTS = "\
diff --git 
a/meta/recipes-devtools/gcc/gcc-8.2/0043-riscv-Disable-multilib-for-OE.patch 
b/meta/recipes-devtools/gcc/gcc-8.2/0043-riscv-Disable-multilib-for-OE.patch
new file mode 100644
index 0000000000..dc28d1bfd8
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-8.2/0043-riscv-Disable-multilib-for-OE.patch
@@ -0,0 +1,27 @@
+From ca0a6e035eef0cdbd0ef3a222c75d4b9f873c512 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.k...@gmail.com>
+Date: Fri, 28 Dec 2018 09:59:53 -0800
+Subject: [PATCH 39/39] riscv: Disable multilib for OE
+
+Upstream-Status: Inappropriate [OE-Specific]
+
+Signed-off-by: Khem Raj <raj.k...@gmail.com>
+---
+ gcc/config/riscv/t-linux | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/gcc/config/riscv/t-linux b/gcc/config/riscv/t-linux
+index 216d2776a18..e4d817621fc 100644
+--- a/gcc/config/riscv/t-linux
++++ b/gcc/config/riscv/t-linux
+@@ -1,3 +1,5 @@
+ # Only XLEN and ABI affect Linux multilib dir names, e.g. /lib32/ilp32d/
+-MULTILIB_DIRNAMES := $(patsubst rv32%,lib32,$(patsubst 
rv64%,lib64,$(MULTILIB_DIRNAMES)))
+-MULTILIB_OSDIRNAMES := $(patsubst lib%,../lib%,$(MULTILIB_DIRNAMES))
++#MULTILIB_DIRNAMES := $(patsubst rv32%,lib32,$(patsubst 
rv64%,lib64,$(MULTILIB_DIRNAMES)))
++MULTILIB_DIRNAMES := . .
++#MULTILIB_OSDIRNAMES := $(patsubst lib%,../lib%,$(MULTILIB_DIRNAMES))
++MULTILIB_OSDIRNAMES := ../$(shell basename $(base_libdir)) ../$(shell 
basename $(base_libdir))
+-- 
+2.20.1
+
-- 
2.20.1

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to