diff options
author | Hiroshi Hatake <hatake@clear-code.com> | 2019-12-16 17:41:45 +0900 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2019-12-16 09:40:41 -0800 |
commit | be7a567a8eab50e6a0a10b3409850ddd0d529a6f (patch) | |
tree | 0d1cdeec3db628b2d15dc0167a667c79a2b1ef69 | |
parent | bfd6f33325d4fe1ae0680d55d0ce5ff95533bbe2 (diff) | |
download | meta-clang-be7a567a8eab50e6a0a10b3409850ddd0d529a6f.tar.gz |
Compute LLVM_LIBDIR_SUFFIX correctly on multiarch environment
Co-authored-by: INAJIMA Daisuke <inajima@soum.co.jp>
-rw-r--r-- | recipes-devtools/clang/clang.inc | 18 | ||||
-rw-r--r-- | recipes-devtools/clang/compiler-rt_git.bb | 1 | ||||
-rw-r--r-- | recipes-devtools/clang/libcxx_git.bb | 2 |
3 files changed, 20 insertions, 1 deletions
diff --git a/recipes-devtools/clang/clang.inc b/recipes-devtools/clang/clang.inc index 4c028b4..b631c0e4 100644 --- a/recipes-devtools/clang/clang.inc +++ b/recipes-devtools/clang/clang.inc | |||
@@ -18,4 +18,22 @@ CLANGMD5SUM = "ff42885ed2ab98f1ecb8c1fc41205343" | |||
18 | LLDMD5SUM = "ae7dc7c027b1fa89b5b013d391d3ee2b" | 18 | LLDMD5SUM = "ae7dc7c027b1fa89b5b013d391d3ee2b" |
19 | LLDBMD5SUM = "2e0d44968471fcde980034dbb826bea9" | 19 | LLDBMD5SUM = "2e0d44968471fcde980034dbb826bea9" |
20 | 20 | ||
21 | def get_libdir_suffix(d, arch_var): | ||
22 | import re | ||
23 | multilibs = (d.getVar("MULTILIB_VARIANTS") or "").split() | ||
24 | if multilibs: | ||
25 | a = d.getVar(arch_var, True) | ||
26 | if re.match('(i.86|athlon)$', a): return '32' | ||
27 | elif re.match('x86.64$', a): return '64' | ||
28 | elif re.match('(arm|armbe)$', a): return '32' | ||
29 | elif re.match('(aarch64|aarch64_be)$', a): return '64' | ||
30 | elif re.match('mips(isa|)32(r6|)(el|)$', a): return '32' | ||
31 | elif re.match('mips(isa|)64(r6|)(el|)$', a): return '64' | ||
32 | elif re.match('p(pc|owerpc)', a): return '32' | ||
33 | elif re.match('p(pc|owerpc)64', a): return '64' | ||
34 | else: | ||
35 | return '' | ||
36 | |||
37 | LLVM_LIBDIR_SUFFIX="${@get_libdir_suffix(d, 'TARGET_ARCH')}" | ||
38 | |||
21 | require common.inc | 39 | require common.inc |
diff --git a/recipes-devtools/clang/compiler-rt_git.bb b/recipes-devtools/clang/compiler-rt_git.bb index e76a560..f331a07 100644 --- a/recipes-devtools/clang/compiler-rt_git.bb +++ b/recipes-devtools/clang/compiler-rt_git.bb | |||
@@ -31,6 +31,7 @@ EXTRA_OECMAKE += "-DCOMPILER_RT_STANDALONE_BUILD=OFF \ | |||
31 | -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ranlib \ | 31 | -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ranlib \ |
32 | -DCMAKE_AR=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ar \ | 32 | -DCMAKE_AR=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ar \ |
33 | -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-nm \ | 33 | -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-nm \ |
34 | -DLLVM_LIBDIR_SUFFIX=${LLVM_LIBDIR_SUFFIX} \ | ||
34 | -G Ninja ${S}/llvm \ | 35 | -G Ninja ${S}/llvm \ |
35 | " | 36 | " |
36 | 37 | ||
diff --git a/recipes-devtools/clang/libcxx_git.bb b/recipes-devtools/clang/libcxx_git.bb index 2d530c5..01d9260 100644 --- a/recipes-devtools/clang/libcxx_git.bb +++ b/recipes-devtools/clang/libcxx_git.bb | |||
@@ -51,7 +51,7 @@ EXTRA_OECMAKE += "\ | |||
51 | -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${NM} \ | 51 | -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${NM} \ |
52 | -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${RANLIB} \ | 52 | -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${RANLIB} \ |
53 | -DLLVM_ENABLE_PROJECTS='libcxx;libcxxabi;libunwind' \ | 53 | -DLLVM_ENABLE_PROJECTS='libcxx;libcxxabi;libunwind' \ |
54 | -DLLVM_LIBDIR_SUFFIX=${@d.getVar('baselib').replace('lib', '')} \ | 54 | -DLLVM_LIBDIR_SUFFIX=${LLVM_LIBDIR_SUFFIX} \ |
55 | -G Ninja \ | 55 | -G Ninja \ |
56 | ${S}/llvm \ | 56 | ${S}/llvm \ |
57 | " | 57 | " |