diff options
author | Khem Raj <raj.khem@gmail.com> | 2023-02-05 10:49:25 -0800 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2023-02-06 11:35:04 -0800 |
commit | 3ae053a300a72e0fefbcf9220d05b6a6fbccb84c (patch) | |
tree | 06a0a5e8e922beffbcda56d3f1abe9af30109cd2 | |
parent | 48b956a77adba929337e0e596c910052c65cf9eb (diff) | |
download | meta-clang-3ae053a300a72e0fefbcf9220d05b6a6fbccb84c.tar.gz |
runtime: Enable PIC for static archives with clang runtime libs
This helps in compling shared libraries which may use e.g. static
libc++.a during link
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r-- | recipes-devtools/clang/compiler-rt-sanitizers_git.bb | 4 | ||||
-rw-r--r-- | recipes-devtools/clang/compiler-rt_git.bb | 1 | ||||
-rw-r--r-- | recipes-devtools/clang/libclc_git.bb | 1 | ||||
-rw-r--r-- | recipes-devtools/clang/libcxx_git.bb | 1 | ||||
-rw-r--r-- | recipes-devtools/clang/openmp_git.bb | 1 |
5 files changed, 8 insertions, 0 deletions
diff --git a/recipes-devtools/clang/compiler-rt-sanitizers_git.bb b/recipes-devtools/clang/compiler-rt-sanitizers_git.bb index 9d8dde2..f17582e 100644 --- a/recipes-devtools/clang/compiler-rt-sanitizers_git.bb +++ b/recipes-devtools/clang/compiler-rt-sanitizers_git.bb | |||
@@ -57,6 +57,10 @@ EXTRA_OECMAKE:append:class-nativesdk = "\ | |||
57 | -DCLANG_TABLEGEN=${STAGING_BINDIR_NATIVE}/clang-tblgen \ | 57 | -DCLANG_TABLEGEN=${STAGING_BINDIR_NATIVE}/clang-tblgen \ |
58 | " | 58 | " |
59 | 59 | ||
60 | EXTRA_OECMAKE:append:class-target = "\ | ||
61 | -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ | ||
62 | " | ||
63 | |||
60 | EXTRA_OECMAKE:append:libc-musl = " -DLIBCXX_HAS_MUSL_LIBC=ON " | 64 | EXTRA_OECMAKE:append:libc-musl = " -DLIBCXX_HAS_MUSL_LIBC=ON " |
61 | EXTRA_OECMAKE:append:powerpc = " -DCOMPILER_RT_DEFAULT_TARGET_ARCH=powerpc " | 65 | EXTRA_OECMAKE:append:powerpc = " -DCOMPILER_RT_DEFAULT_TARGET_ARCH=powerpc " |
62 | 66 | ||
diff --git a/recipes-devtools/clang/compiler-rt_git.bb b/recipes-devtools/clang/compiler-rt_git.bb index c4235a6..16780e2 100644 --- a/recipes-devtools/clang/compiler-rt_git.bb +++ b/recipes-devtools/clang/compiler-rt_git.bb | |||
@@ -72,6 +72,7 @@ EXTRA_OECMAKE:append:class-target = "\ | |||
72 | -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ranlib \ | 72 | -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ranlib \ |
73 | -DCMAKE_AR=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ar \ | 73 | -DCMAKE_AR=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-ar \ |
74 | -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-nm \ | 74 | -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${TARGET_PREFIX}llvm-nm \ |
75 | -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ | ||
75 | " | 76 | " |
76 | 77 | ||
77 | EXTRA_OECMAKE:append:class-nativesdk = "\ | 78 | EXTRA_OECMAKE:append:class-nativesdk = "\ |
diff --git a/recipes-devtools/clang/libclc_git.bb b/recipes-devtools/clang/libclc_git.bb index 6431007..cb302e7 100644 --- a/recipes-devtools/clang/libclc_git.bb +++ b/recipes-devtools/clang/libclc_git.bb | |||
@@ -21,6 +21,7 @@ EXTRA_OECMAKE += " \ | |||
21 | -DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \ | 21 | -DCMAKE_CROSSCOMPILING_EMULATOR=${WORKDIR}/qemuwrapper \ |
22 | -Dclc_comp_in:FILEPATH=${OECMAKE_SOURCEPATH}/cmake/CMakeCLCCompiler.cmake.in \ | 22 | -Dclc_comp_in:FILEPATH=${OECMAKE_SOURCEPATH}/cmake/CMakeCLCCompiler.cmake.in \ |
23 | -Dll_comp_in:FILEPATH=${OECMAKE_SOURCEPATH}/cmake/CMakeLLAsmCompiler.cmake.in \ | 23 | -Dll_comp_in:FILEPATH=${OECMAKE_SOURCEPATH}/cmake/CMakeLLAsmCompiler.cmake.in \ |
24 | -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ | ||
24 | " | 25 | " |
25 | 26 | ||
26 | do_configure:prepend () { | 27 | do_configure:prepend () { |
diff --git a/recipes-devtools/clang/libcxx_git.bb b/recipes-devtools/clang/libcxx_git.bb index e68dd5f..15c60ea 100644 --- a/recipes-devtools/clang/libcxx_git.bb +++ b/recipes-devtools/clang/libcxx_git.bb | |||
@@ -77,6 +77,7 @@ EXTRA_OECMAKE:append:class-target = " \ | |||
77 | -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${NM} \ | 77 | -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${NM} \ |
78 | -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${RANLIB} \ | 78 | -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${RANLIB} \ |
79 | -DLLVM_DEFAULT_TARGET_TRIPLE=${HOST_SYS} \ | 79 | -DLLVM_DEFAULT_TARGET_TRIPLE=${HOST_SYS} \ |
80 | -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ | ||
80 | " | 81 | " |
81 | 82 | ||
82 | EXTRA_OECMAKE:append:class-nativesdk = " \ | 83 | EXTRA_OECMAKE:append:class-nativesdk = " \ |
diff --git a/recipes-devtools/clang/openmp_git.bb b/recipes-devtools/clang/openmp_git.bb index 1708024..60efcaf 100644 --- a/recipes-devtools/clang/openmp_git.bb +++ b/recipes-devtools/clang/openmp_git.bb | |||
@@ -23,6 +23,7 @@ EXTRA_OECMAKE += "-DCMAKE_BUILD_TYPE=RelWithDebInfo \ | |||
23 | -DCLANG_TOOL=${STAGING_BINDIR_NATIVE}/clang \ | 23 | -DCLANG_TOOL=${STAGING_BINDIR_NATIVE}/clang \ |
24 | -DLINK_TOOL=${STAGING_BINDIR_NATIVE}/llvm-link \ | 24 | -DLINK_TOOL=${STAGING_BINDIR_NATIVE}/llvm-link \ |
25 | -DOPT_TOOL=${STAGING_BINDIR_NATIVE}/opt \ | 25 | -DOPT_TOOL=${STAGING_BINDIR_NATIVE}/opt \ |
26 | -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ | ||
26 | " | 27 | " |
27 | 28 | ||
28 | OECMAKE_SOURCEPATH = "${S}/openmp" | 29 | OECMAKE_SOURCEPATH = "${S}/openmp" |