summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2025-03-13 00:37:43 -0700
committerKhem Raj <raj.khem@gmail.com>2025-03-21 21:30:56 -0700
commitac290a57fd9cba953e62ea2bcb7ad8a38f70b533 (patch)
tree06c7224ad5a5a5cec5229dc467f3276e67647824
parentfa7be0c92684401ea143457e96a6c9b520838fcb (diff)
downloadmeta-clang-ac290a57fd9cba953e62ea2bcb7ad8a38f70b533.tar.gz
clang-cross: Create cross binary copies instead of symlinks
This ensures that search path for subsequent tools e.g. linker assembler are searched in the same dir where <cross>-clang is installed. If its a symlink to ../clang then the reference installation dir is ../ and all cross-tools are not there so clang may fail to find assembler/linker from cross staging area and use /usr/bin/ld or /usr/bin/as which we do not want Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--recipes-devtools/clang/clang-cross_git.bb6
1 files changed, 5 insertions, 1 deletions
diff --git a/recipes-devtools/clang/clang-cross_git.bb b/recipes-devtools/clang/clang-cross_git.bb
index 59ebb65..505f3b1 100644
--- a/recipes-devtools/clang/clang-cross_git.bb
+++ b/recipes-devtools/clang/clang-cross_git.bb
@@ -13,14 +13,18 @@ require common-source.inc
13inherit cross 13inherit cross
14DEPENDS += "clang-native virtual/cross-binutils" 14DEPENDS += "clang-native virtual/cross-binutils"
15 15
16#INHIBIT_PACKAGE_STRIP = "1"
17INHIBIT_SYSROOT_STRIP = "1"
16do_install() { 18do_install() {
17 install -d ${D}${bindir} 19 install -d ${D}${bindir}
18 for tool in clang clang++ clang-tidy lld ld.lld llvm-profdata \ 20 for tool in clang-tidy lld ld.lld llvm-profdata \
19 llvm-nm llvm-ar llvm-as llvm-ranlib llvm-strip llvm-objcopy llvm-objdump llvm-readelf \ 21 llvm-nm llvm-ar llvm-as llvm-ranlib llvm-strip llvm-objcopy llvm-objdump llvm-readelf \
20 llvm-addr2line llvm-dwp llvm-size llvm-strings llvm-cov 22 llvm-addr2line llvm-dwp llvm-size llvm-strings llvm-cov
21 do 23 do
22 ln -sf ../$tool ${D}${bindir}/${TARGET_PREFIX}$tool 24 ln -sf ../$tool ${D}${bindir}/${TARGET_PREFIX}$tool
23 done 25 done
26 install -m 0755 ${STAGING_BINDIR_NATIVE}/clang ${D}${bindir}/${TARGET_PREFIX}clang
27 install -m 0755 ${STAGING_BINDIR_NATIVE}/clang ${D}${bindir}/${TARGET_PREFIX}clang++
24} 28}
25SSTATE_SCAN_FILES += "*-clang *-clang++ *-llvm-profdata *-lld *-ld.lld \ 29SSTATE_SCAN_FILES += "*-clang *-clang++ *-llvm-profdata *-lld *-ld.lld \
26 *-llvm-nm *-llvm-ar *-llvm-as *-llvm-ranlib *-llvm-strip \ 30 *-llvm-nm *-llvm-ar *-llvm-as *-llvm-ranlib *-llvm-strip \