diff options
author | Khem Raj <raj.khem@gmail.com> | 2021-05-26 11:35:02 -0700 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2023-09-08 09:08:54 -0700 |
commit | 154a4444c65d9e2a42a0f05118b37e1a22774b9e (patch) | |
tree | b48b83ed705fa5b4ab38d2f7fe6d175801d04615 | |
parent | dc1fced67f67223682ebcc821ae537c05e7b059a (diff) | |
download | meta-clang-154a4444c65d9e2a42a0f05118b37e1a22774b9e.tar.gz |
compiler-rt-sanitizers: Use packageconfig to use static libcxx
sanitizers can link libc++/libc++abi statically or dynamically, we
default to use dynamic version but leave the option to enable static
linking if so needed
Use virtual/crypt to represent crypt implementation which becomes libc
independent
Fix dependencies for native recipes
Signed-off-by: Khem Raj <raj.khem@gmail.com>
(cherry picked from commit f4bb299c409128801e68c30187381fadeb0a451d)
-rw-r--r-- | recipes-devtools/clang/compiler-rt-sanitizers_git.bb | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/recipes-devtools/clang/compiler-rt-sanitizers_git.bb b/recipes-devtools/clang/compiler-rt-sanitizers_git.bb index f1327de..38558d7 100644 --- a/recipes-devtools/clang/compiler-rt-sanitizers_git.bb +++ b/recipes-devtools/clang/compiler-rt-sanitizers_git.bb | |||
@@ -15,14 +15,13 @@ LIC_FILES_CHKSUM = "file://compiler-rt/LICENSE.TXT;md5=d846d1d65baf322d4c485d6ee | |||
15 | 15 | ||
16 | TUNE_CCARGS_remove = "-no-integrated-as" | 16 | TUNE_CCARGS_remove = "-no-integrated-as" |
17 | 17 | ||
18 | RUNTIME = "llvm" | 18 | DEPENDS += "ninja-native virtual/crypt" |
19 | 19 | DEPENDS_append_class-native = " clang-native libxcrypt-native" | |
20 | DEPENDS += "ninja-native clang-cross-${TARGET_ARCH} virtual/${MLPREFIX}libc virtual/${TARGET_PREFIX}compilerlibs" | ||
21 | DEPENDS_append_libc-glibc = " libxcrypt" | ||
22 | DEPENDS_append_class-nativesdk = " clang-native nativesdk-libxcrypt" | 20 | DEPENDS_append_class-nativesdk = " clang-native nativesdk-libxcrypt" |
23 | 21 | ||
24 | PACKAGECONFIG ??= "" | 22 | PACKAGECONFIG ??= "" |
25 | PACKAGECONFIG[crt] = "-DCOMPILER_RT_BUILD_CRT:BOOL=ON,-DCOMPILER_RT_BUILD_CRT:BOOL=OFF" | 23 | PACKAGECONFIG[crt] = "-DCOMPILER_RT_BUILD_CRT:BOOL=ON,-DCOMPILER_RT_BUILD_CRT:BOOL=OFF" |
24 | PACKAGECONFIG[static-libcxx] = "-DSANITIZER_USE_STATIC_CXX_ABI=ON -DSANITIZER_USE_STATIC_LLVM_UNWINDER=ON,," | ||
26 | 25 | ||
27 | HF = "${@ bb.utils.contains('TUNE_CCARGS_MFLOAT', 'hard', 'hf', '', d)}" | 26 | HF = "${@ bb.utils.contains('TUNE_CCARGS_MFLOAT', 'hard', 'hf', '', d)}" |
28 | HF[vardepvalue] = "${HF}" | 27 | HF[vardepvalue] = "${HF}" |
@@ -34,8 +33,6 @@ EXTRA_OECMAKE += "-DCOMPILER_RT_STANDALONE_BUILD=OFF \ | |||
34 | -DCOMPILER_RT_DEFAULT_TARGET_TRIPLE=${HOST_ARCH}${HF}${HOST_VENDOR}-${HOST_OS} \ | 33 | -DCOMPILER_RT_DEFAULT_TARGET_TRIPLE=${HOST_ARCH}${HF}${HOST_VENDOR}-${HOST_OS} \ |
35 | -DCOMPILER_RT_BUILD_BUILTINS=OFF \ | 34 | -DCOMPILER_RT_BUILD_BUILTINS=OFF \ |
36 | -DSANITIZER_CXX_ABI_LIBNAME=${@bb.utils.contains("RUNTIME", "llvm", "libc++", "libstdc++", d)} \ | 35 | -DSANITIZER_CXX_ABI_LIBNAME=${@bb.utils.contains("RUNTIME", "llvm", "libc++", "libstdc++", d)} \ |
37 | -DSANITIZER_USE_STATIC_CXX_ABI=ON \ | ||
38 | -DSANITIZER_USE_STATIC_LLVM_UNWINDER=ON \ | ||
39 | -DCOMPILER_RT_BUILD_XRAY=ON \ | 36 | -DCOMPILER_RT_BUILD_XRAY=ON \ |
40 | -DCOMPILER_RT_BUILD_SANITIZERS=ON \ | 37 | -DCOMPILER_RT_BUILD_SANITIZERS=ON \ |
41 | -DCOMPILER_RT_BUILD_LIBFUZZER=ON \ | 38 | -DCOMPILER_RT_BUILD_LIBFUZZER=ON \ |