summaryrefslogtreecommitdiffstats
path: root/recipes-devtools/clang/libcxx_git.bb
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2021-06-24 14:49:45 -0700
committerKhem Raj <raj.khem@gmail.com>2021-06-25 10:54:39 -0700
commit4d066667c3cbba3b88d2f8d6c5640f5f793d10b4 (patch)
treee121032befbe9e247be7d08de6e1cb96bc3b98c1 /recipes-devtools/clang/libcxx_git.bb
parentb9c9325d65fdcc6a1bfdb15b538c7454894ce15f (diff)
downloadmeta-clang-4d066667c3cbba3b88d2f8d6c5640f5f793d10b4.tar.gz
libcxx: Fix native build
Use libgcc with clang-native to compile it Fixes #465 Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'recipes-devtools/clang/libcxx_git.bb')
-rw-r--r--recipes-devtools/clang/libcxx_git.bb24
1 files changed, 17 insertions, 7 deletions
diff --git a/recipes-devtools/clang/libcxx_git.bb b/recipes-devtools/clang/libcxx_git.bb
index b5bda2e..bdb364e 100644
--- a/recipes-devtools/clang/libcxx_git.bb
+++ b/recipes-devtools/clang/libcxx_git.bb
@@ -12,7 +12,7 @@ inherit cmake cmake-native python3native
12 12
13PACKAGECONFIG ??= "compiler-rt exceptions ${@bb.utils.contains("RUNTIME", "llvm", "unwind unwind-shared", "", d)}" 13PACKAGECONFIG ??= "compiler-rt exceptions ${@bb.utils.contains("RUNTIME", "llvm", "unwind unwind-shared", "", d)}"
14PACKAGECONFIG_append_armv5 = " no-atomics" 14PACKAGECONFIG_append_armv5 = " no-atomics"
15 15PACKAGECONFIG_remove_class-native = "compiler-rt"
16PACKAGECONFIG[unwind] = "-DLIBCXXABI_USE_LLVM_UNWINDER=ON -DLIBCXXABI_ENABLE_STATIC_UNWINDER=ON,-DLIBCXXABI_USE_LLVM_UNWINDER=OFF,," 16PACKAGECONFIG[unwind] = "-DLIBCXXABI_USE_LLVM_UNWINDER=ON -DLIBCXXABI_ENABLE_STATIC_UNWINDER=ON,-DLIBCXXABI_USE_LLVM_UNWINDER=OFF,,"
17PACKAGECONFIG[exceptions] = "-DLIBCXXABI_ENABLE_EXCEPTIONS=ON -DDLIBCXX_ENABLE_EXCEPTIONS=ON,-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF -DLIBCXX_ENABLE_EXCEPTIONS=OFF -DCMAKE_REQUIRED_FLAGS='-fno-exceptions'," 17PACKAGECONFIG[exceptions] = "-DLIBCXXABI_ENABLE_EXCEPTIONS=ON -DDLIBCXX_ENABLE_EXCEPTIONS=ON,-DLIBCXXABI_ENABLE_EXCEPTIONS=OFF -DLIBCXX_ENABLE_EXCEPTIONS=OFF -DCMAKE_REQUIRED_FLAGS='-fno-exceptions',"
18PACKAGECONFIG[no-atomics] = "-D_LIBCXXABI_HAS_ATOMIC_BUILTINS=OFF -DCMAKE_SHARED_LINKER_FLAGS='-latomic',," 18PACKAGECONFIG[no-atomics] = "-D_LIBCXXABI_HAS_ATOMIC_BUILTINS=OFF -DCMAKE_SHARED_LINKER_FLAGS='-latomic',,"
@@ -21,10 +21,13 @@ PACKAGECONFIG[unwind-shared] = "-DLIBUNWIND_ENABLE_SHARED=ON,-DLIBUNWIND_ENABLE_
21 21
22DEPENDS += "ninja-native" 22DEPENDS += "ninja-native"
23DEPENDS_append_class-target = " clang-cross-${TARGET_ARCH} virtual/${MLPREFIX}libc virtual/${TARGET_PREFIX}compilerlibs" 23DEPENDS_append_class-target = " clang-cross-${TARGET_ARCH} virtual/${MLPREFIX}libc virtual/${TARGET_PREFIX}compilerlibs"
24DEPENDS_append_class-native = " clang-native"
24 25
25LIBCPLUSPLUS = "" 26LIBCPLUSPLUS = ""
26COMPILER_RT ?= "-rtlib=compiler-rt" 27COMPILER_RT ?= "-rtlib=compiler-rt"
27 28
29CC_append_toolchain-clang_class-native = " -unwindlib=libgcc -rtlib=libgcc"
30
28CXXFLAGS += "-stdlib=libstdc++" 31CXXFLAGS += "-stdlib=libstdc++"
29LDFLAGS += "-unwindlib=libgcc -stdlib=libstdc++" 32LDFLAGS += "-unwindlib=libgcc -stdlib=libstdc++"
30INHIBIT_DEFAULT_DEPS = "1" 33INHIBIT_DEFAULT_DEPS = "1"
@@ -51,16 +54,23 @@ EXTRA_OECMAKE += "\
51 -DLIBCXX_CXX_ABI=libcxxabi \ 54 -DLIBCXX_CXX_ABI=libcxxabi \
52 -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${S}/libcxxabi/include \ 55 -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${S}/libcxxabi/include \
53 -DLIBCXX_CXX_ABI_LIBRARY_PATH=${B}/lib${LLVM_LIBDIR_SUFFIX} \ 56 -DLIBCXX_CXX_ABI_LIBRARY_PATH=${B}/lib${LLVM_LIBDIR_SUFFIX} \
54 -DCMAKE_AR=${STAGING_BINDIR_TOOLCHAIN}/${AR} \
55 -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${NM} \
56 -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${RANLIB} \
57 -DLLVM_ENABLE_PROJECTS='libcxx;libcxxabi;libunwind' \ 57 -DLLVM_ENABLE_PROJECTS='libcxx;libcxxabi;libunwind' \
58 -DLLVM_LIBDIR_SUFFIX=${LLVM_LIBDIR_SUFFIX} \ 58 -DLLVM_LIBDIR_SUFFIX=${LLVM_LIBDIR_SUFFIX} \
59" 59"
60 60
61EXTRA_OECMAKE_append_class-native = " -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF" 61EXTRA_OECMAKE_append_class-target = " \
62 -DCMAKE_AR=${STAGING_BINDIR_TOOLCHAIN}/${AR} \
63 -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${NM} \
64 -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${RANLIB} \
65"
66EXTRA_OECMAKE_append_class-native = " -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF \
67"
62 68
63EXTRA_OECMAKE_append_class-nativesdk = " -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF" 69EXTRA_OECMAKE_append_class-nativesdk = " -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF \
70 -DCMAKE_AR=${STAGING_BINDIR_TOOLCHAIN}/${AR} \
71 -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${NM} \
72 -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${RANLIB} \
73"
64 74
65EXTRA_OECMAKE_append_libc-musl = " -DLIBCXX_HAS_MUSL_LIBC=ON " 75EXTRA_OECMAKE_append_libc-musl = " -DLIBCXX_HAS_MUSL_LIBC=ON "
66 76
@@ -84,4 +94,4 @@ PACKAGES_append_runtime-llvm = " libunwind"
84FILES_libunwind_runtime-llvm = "${libdir}/libunwind.so.*" 94FILES_libunwind_runtime-llvm = "${libdir}/libunwind.so.*"
85 95
86BBCLASSEXTEND = "native nativesdk" 96BBCLASSEXTEND = "native nativesdk"
87TOOLCHAIN = "clang" 97TOOLCHAIN_forcevariable = "clang"