mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-04 20:54:45 +02:00
compiler-rt,libcxx: Use clang for native-libcxx and gcc for compiler-rt-native
compiler-rt configure calls for c++ compiler which can cause C++ runtime to not be detected on some Yocto autobuilder workers running ubuntu 24.04 therefore let it use gcc for native version Set TOOLCHAIN_NATIVE for using clang for libcxx (From OE-Core rev: d54512c1c0a98516077b77d5414af47d8c2b8c39) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
37dd8810df
commit
582664d64d
|
@ -37,6 +37,7 @@ CFLAGS += "${COMPILER_RT}"
|
|||
CXXFLAGS += "${COMPILER_RT} ${LIBCPLUSPLUS}"
|
||||
|
||||
TOOLCHAIN = "clang"
|
||||
TOOLCHAIN_NATIVE = "clang"
|
||||
|
||||
DEPENDS += "ninja-native virtual/crypt compiler-rt"
|
||||
DEPENDS:append:class-native = " clang-native libxcrypt-native libcxx-native"
|
||||
|
|
|
@ -29,14 +29,15 @@ DEPENDS += "ninja-native libgcc"
|
|||
DEPENDS:append:class-target = " virtual/cross-c++ clang-cross-${TARGET_ARCH} virtual/${MLPREFIX}libc gcc-runtime"
|
||||
DEPENDS:append:class-nativesdk = " virtual/cross-c++ clang-native clang-crosssdk-${SDK_SYS} nativesdk-gcc-runtime"
|
||||
DEPENDS:append:class-native = " clang-native"
|
||||
DEPENDS:remove:class-native = "libcxx-native compiler-rt-native"
|
||||
|
||||
# Trick clang.bbclass into not creating circular dependencies
|
||||
UNWINDLIB:class-nativesdk = "--unwindlib=libgcc"
|
||||
COMPILER_RT:class-nativesdk = "-rtlib=libgcc"
|
||||
LIBCPLUSPLUS:class-nativesdk = "-stdlib=libstdc++"
|
||||
UNWINDLIB:class-native = "--unwindlib=libgcc"
|
||||
COMPILER_RT:class-native = "-rtlib=libgcc"
|
||||
LIBCPLUSPLUS:class-native = "-stdlib=libstdc++"
|
||||
UNWINDLIB:class-native = ""
|
||||
COMPILER_RT:class-native = ""
|
||||
LIBCPLUSPLUS:class-native = ""
|
||||
UNWINDLIB:class-target = "--unwindlib=libgcc"
|
||||
COMPILER_RT:class-target = "-rtlib=libgcc"
|
||||
LIBCPLUSPLUS:class-target = "-stdlib=libstdc++"
|
||||
|
@ -52,8 +53,6 @@ HF:class-target = "${@ bb.utils.contains('TUNE_CCARGS_MFLOAT', 'hard', 'hf', '',
|
|||
|
||||
CC = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
|
||||
CXX = "${CCACHE}${HOST_PREFIX}clang++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
|
||||
BUILD_CC = "${CCACHE}clang ${BUILD_CC_ARCH}"
|
||||
BUILD_CXX = "${CCACHE}clang++ ${BUILD_CC_ARCH}"
|
||||
LDFLAGS += "${COMPILER_RT} ${UNWINDLIB}"
|
||||
CXXFLAGS += "${LIBCPLUSPLUS}"
|
||||
|
||||
|
|
|
@ -25,6 +25,7 @@ DEPENDS += "ninja-native"
|
|||
DEPENDS:append:class-target = " virtual/cross-c++ clang-cross-${TARGET_ARCH} virtual/${MLPREFIX}libc virtual/${MLPREFIX}compilerlibs"
|
||||
DEPENDS:append:class-nativesdk = " virtual/cross-c++ clang-crosssdk-${SDK_SYS} nativesdk-compiler-rt"
|
||||
DEPENDS:append:class-native = " clang-native compiler-rt-native"
|
||||
DEPENDS:remove:class-native = "libcxx-native"
|
||||
|
||||
COMPILER_RT ?= "${@bb.utils.contains("PACKAGECONFIG", "compiler-rt", "-rtlib=compiler-rt", "-rtlib=libgcc", d)}"
|
||||
UNWINDLIB ?= "${@bb.utils.contains("PACKAGECONFIG", "unwind", "-unwindlib=none", "-unwindlib=libgcc", d)}"
|
||||
|
@ -55,6 +56,7 @@ LDFLAGS += "${COMPILER_RT} ${UNWINDLIB} ${LIBCPLUSPLUS}"
|
|||
CXXFLAGS += "${LIBCPLUSPLUS}"
|
||||
|
||||
TOOLCHAIN = "clang"
|
||||
TOOLCHAIN_NATIVE = "clang"
|
||||
|
||||
OECMAKE_SOURCEPATH = "${S}/llvm"
|
||||
EXTRA_OECMAKE += "\
|
||||
|
|
Loading…
Reference in New Issue
Block a user