summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOleksandr Ocheretnyi <oocheret@cisco.com>2020-04-13 00:05:33 +0300
committerKhem Raj <raj.khem@gmail.com>2020-07-02 08:59:26 -0700
commit6f59a9e87640119d132b466a4dfc0cfa0cfe4a7d (patch)
tree06bba35a5cdf700a7a1e4e36ba933908b7aaf8e3
parent3054a52c8aeed7730324bae8e594b1430c0e605e (diff)
downloadmeta-clang-6f59a9e87640119d132b466a4dfc0cfa0cfe4a7d.tar.gz
clang: usrmerge workaround
 * issue:     the openembedded-core build procedure relies on changed default dynamic loader path when the usrmerge distro feature turned on. As we can find the GCC which is used as default toolchain uses SYSTEMLIBS_DIR macro variable set to /usr/(lib|lib64) at build time and hardcodes the binaries with that default loader path.  * solution:     change the default dynamic loader location with --dyld-prefix clang option to conform the loader location (as GCC does) to openembedded-core build procedure. Signed-off-by: Oleksandr Ocheretnyi <oocheret@cisco.com>
-rw-r--r--classes/clang.bbclass2
1 files changed, 2 insertions, 0 deletions
diff --git a/classes/clang.bbclass b/classes/clang.bbclass
index d0e7658..a00eef6 100644
--- a/classes/clang.bbclass
+++ b/classes/clang.bbclass
@@ -43,6 +43,8 @@ TUNE_CCARGS_remove_toolchain-clang_powerpc = "-mno-spe"
43TUNE_CCARGS_append_toolchain-clang = " -Qunused-arguments" 43TUNE_CCARGS_append_toolchain-clang = " -Qunused-arguments"
44TUNE_CCARGS_append_toolchain-clang_libc-musl_powerpc64 = " -mlong-double-64" 44TUNE_CCARGS_append_toolchain-clang_libc-musl_powerpc64 = " -mlong-double-64"
45TUNE_CCARGS_append_toolchain-clang_libc-musl_powerpc64le = " -mlong-double-64" 45TUNE_CCARGS_append_toolchain-clang_libc-musl_powerpc64le = " -mlong-double-64"
46# usrmerge workaround
47TUNE_CCARGS_append_toolchain-clang = "${@bb.utils.contains("DISTRO_FEATURES", "usrmerge", " --dyld-prefix=/usr", "", d)}"
46 48
47LDFLAGS_append_toolchain-clang_class-nativesdk_x86-64 = " -Wl,-dynamic-linker,${base_libdir}/ld-linux-x86-64.so.2" 49LDFLAGS_append_toolchain-clang_class-nativesdk_x86-64 = " -Wl,-dynamic-linker,${base_libdir}/ld-linux-x86-64.so.2"
48LDFLAGS_append_toolchain-clang_class-nativesdk_x86 = " -Wl,-dynamic-linker,${base_libdir}/ld-linux.so.2" 50LDFLAGS_append_toolchain-clang_class-nativesdk_x86 = " -Wl,-dynamic-linker,${base_libdir}/ld-linux.so.2"