summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2025-05-08 12:13:17 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2025-05-12 22:01:56 +0100
commit1cae6faf9d8f62a88e331503cec808fc6535fdcb (patch)
tree4df642206638d1125575b27b51e618ce3c37a45a
parent77c0cff6a7ba8b5ce26cbb0f569bf3b0c164443d (diff)
downloadpoky-1cae6faf9d8f62a88e331503cec808fc6535fdcb.tar.gz
libcxx: Fix cflags and ldflags for using compiler runtime
-stdlib is needed in both cxxflags and ldflags since c++ compiler will use these to chose the right c++ headers and libraries during link -rtlib and -unwindlib are only needed during linking Use LLVM_HOST_TRIPLE during cross compiling compiler-rt for target this is used by cmake to compute target and compiler triples Fix LLVM_RUNTIME_TARGETS to use HOST_ARCH, it does not need cross compile triple which HOST_SYS is passing here (From OE-Core rev: d1ae4087c548a78e90687b64764f621b070e3ec5) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/clang/libcxx_git.bb8
1 files changed, 4 insertions, 4 deletions
diff --git a/meta/recipes-devtools/clang/libcxx_git.bb b/meta/recipes-devtools/clang/libcxx_git.bb
index f5987199ec..c99617c228 100644
--- a/meta/recipes-devtools/clang/libcxx_git.bb
+++ b/meta/recipes-devtools/clang/libcxx_git.bb
@@ -51,8 +51,8 @@ CC = "${CCACHE}${HOST_PREFIX}clang ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
51CXX = "${CCACHE}${HOST_PREFIX}clang++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" 51CXX = "${CCACHE}${HOST_PREFIX}clang++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
52BUILD_CC = "${CCACHE}clang ${BUILD_CC_ARCH}" 52BUILD_CC = "${CCACHE}clang ${BUILD_CC_ARCH}"
53BUILD_CXX = "${CCACHE}clang++ ${BUILD_CC_ARCH}" 53BUILD_CXX = "${CCACHE}clang++ ${BUILD_CC_ARCH}"
54CFLAGS += "${COMPILER_RT}" 54LDFLAGS += "${COMPILER_RT} ${UNWINDLIB} ${LIBCPLUSPLUS}"
55CXXFLAGS += "${COMPILER_RT} ${LIBCPLUSPLUS}" 55CXXFLAGS += "${LIBCPLUSPLUS}"
56 56
57OECMAKE_SOURCEPATH = "${S}/llvm" 57OECMAKE_SOURCEPATH = "${S}/llvm"
58EXTRA_OECMAKE += "\ 58EXTRA_OECMAKE += "\
@@ -71,7 +71,7 @@ EXTRA_OECMAKE += "\
71 -DLIBCXX_CXX_ABI_LIBRARY_PATH=${B}/lib${LLVM_LIBDIR_SUFFIX} \ 71 -DLIBCXX_CXX_ABI_LIBRARY_PATH=${B}/lib${LLVM_LIBDIR_SUFFIX} \
72 -S ${S}/runtimes \ 72 -S ${S}/runtimes \
73 -DLLVM_ENABLE_RUNTIMES='libcxx;libcxxabi;libunwind' \ 73 -DLLVM_ENABLE_RUNTIMES='libcxx;libcxxabi;libunwind' \
74 -DLLVM_RUNTIME_TARGETS=${HOST_SYS} \ 74 -DLLVM_RUNTIME_TARGETS=${HOST_ARCH} \
75 -DLLVM_LIBDIR_SUFFIX=${LLVM_LIBDIR_SUFFIX} \ 75 -DLLVM_LIBDIR_SUFFIX=${LLVM_LIBDIR_SUFFIX} \
76 -DLLVM_APPEND_VC_REV=OFF \ 76 -DLLVM_APPEND_VC_REV=OFF \
77 -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON \ 77 -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON \
@@ -81,7 +81,7 @@ EXTRA_OECMAKE:append:class-target = " \
81 -DCMAKE_AR=${STAGING_BINDIR_TOOLCHAIN}/${AR} \ 81 -DCMAKE_AR=${STAGING_BINDIR_TOOLCHAIN}/${AR} \
82 -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${NM} \ 82 -DCMAKE_NM=${STAGING_BINDIR_TOOLCHAIN}/${NM} \
83 -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${RANLIB} \ 83 -DCMAKE_RANLIB=${STAGING_BINDIR_TOOLCHAIN}/${RANLIB} \
84 -DLLVM_DEFAULT_TARGET_TRIPLE=${HOST_SYS} \ 84 -DLLVM_HOST_TRIPLE=${TARGET_SYS} \
85 -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ 85 -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
86" 86"
87 87