summaryrefslogtreecommitdiffstats
path: root/classes
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 /classes
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 'classes')
-rw-r--r--classes/clang.bbclass24
1 files changed, 13 insertions, 11 deletions
diff --git a/classes/clang.bbclass b/classes/clang.bbclass
index 0f9e46c..0fbdd2d 100644
--- a/classes/clang.bbclass
+++ b/classes/clang.bbclass
@@ -1,31 +1,33 @@
1# Add the necessary override 1# Add the necessary override
2CCACHE_COMPILERCHECK_class-target_toolchain-clang ?= "%compiler% -v" 2CCACHE_COMPILERCHECK_toolchain-clang ?= "%compiler% -v"
3HOST_CC_ARCH_prepend_class-target_toolchain-clang = "-target ${HOST_SYS} " 3HOST_CC_ARCH_prepend_toolchain-clang = "-target ${HOST_SYS} "
4CC_class-target_toolchain-clang = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" 4CC_toolchain-clang = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
5CXX_class-target_toolchain-clang = "${CCACHE}${HOST_PREFIX}clang++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" 5CXX_toolchain-clang = "${CCACHE}${HOST_PREFIX}clang++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
6CPP_class-target_toolchain-clang = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS} -E" 6CPP_toolchain-clang = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS} -E"
7CCLD_class-target_toolchain-clang = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" 7CCLD_toolchain-clang = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
8RANLIB_class-target_toolchain-clang = "${HOST_PREFIX}llvm-ranlib" 8RANLIB_toolchain-clang = "${HOST_PREFIX}llvm-ranlib"
9AR_class-target_toolchain-clang = "${HOST_PREFIX}llvm-ar" 9AR_toolchain-clang = "${HOST_PREFIX}llvm-ar"
10NM_class-target_toolchain-clang = "${HOST_PREFIX}llvm-nm" 10NM_toolchain-clang = "${HOST_PREFIX}llvm-nm"
11 11
12LTO_toolchain-clang = "${@bb.utils.contains('DISTRO_FEATURES', 'thin-lto', '-flto=thin', '-flto -fuse-ld=lld', d)}" 12LTO_toolchain-clang = "${@bb.utils.contains('DISTRO_FEATURES', 'thin-lto', '-flto=thin', '-flto -fuse-ld=lld', d)}"
13PACKAGE_DEBUG_SPLIT_STYLE_toolchain-clang = "debug-without-src" 13PACKAGE_DEBUG_SPLIT_STYLE_toolchain-clang = "debug-without-src"
14 14
15COMPILER_RT ??= "" 15COMPILER_RT ??= ""
16COMPILER_RT_class-native = "-rtlib=libgcc ${UNWINDLIB}"
16COMPILER_RT_powerpc = "-rtlib=libgcc ${UNWINDLIB}" 17COMPILER_RT_powerpc = "-rtlib=libgcc ${UNWINDLIB}"
17COMPILER_RT_armeb = "-rtlib=libgcc ${UNWINDLIB}" 18COMPILER_RT_armeb = "-rtlib=libgcc ${UNWINDLIB}"
18COMPILER_RT_libc-klibc = "-rtlib=libgcc ${UNWINDLIB}" 19COMPILER_RT_libc-klibc = "-rtlib=libgcc ${UNWINDLIB}"
19 20
20UNWINDLIB ??= "" 21UNWINDLIB ??= ""
22UNWINDLIB_class-native = "--unwindlib=libgcc"
21UNWINDLIB_powerpc = "--unwindlib=libgcc" 23UNWINDLIB_powerpc = "--unwindlib=libgcc"
22UNWINDLIB_armeb = "--unwindlib=libgcc" 24UNWINDLIB_armeb = "--unwindlib=libgcc"
23UNWINDLIB_libc-klibc = "--unwindlib=libgcc" 25UNWINDLIB_libc-klibc = "--unwindlib=libgcc"
24 26
25LIBCPLUSPLUS ??= "" 27LIBCPLUSPLUS ??= ""
26 28
27TARGET_CXXFLAGS_append_toolchain-clang = " ${LIBCPLUSPLUS}" 29CXXFLAGS_append_toolchain-clang = " ${LIBCPLUSPLUS}"
28TUNE_CCARGS_append_toolchain-clang = " ${COMPILER_RT} ${LIBCPLUSPLUS}" 30LDFLAGS_append_toolchain-clang = " ${COMPILER_RT} ${LIBCPLUSPLUS}"
29 31
30TUNE_CCARGS_remove_toolchain-clang = "-meb" 32TUNE_CCARGS_remove_toolchain-clang = "-meb"
31TUNE_CCARGS_remove_toolchain-clang = "-mel" 33TUNE_CCARGS_remove_toolchain-clang = "-mel"