From cda1376a97b86d6ae5c92fd931f9583430c73885 Mon Sep 17 00:00:00 2001 From: Daniel McGregor Date: Tue, 22 Jan 2019 18:55:44 -0600 Subject: clang: use nonarch_libdir/clang for all runtime files This allows the cross compiler to always find the runtime libraries in the same place, no matter the value of libdir. This is required for multilib to work correctly. Signed-off-by: Daniel McGregor --- recipes-devtools/clang/compiler-rt_git.bb | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) (limited to 'recipes-devtools/clang') diff --git a/recipes-devtools/clang/compiler-rt_git.bb b/recipes-devtools/clang/compiler-rt_git.bb index 37ae096..09b82cd 100644 --- a/recipes-devtools/clang/compiler-rt_git.bb +++ b/recipes-devtools/clang/compiler-rt_git.bb @@ -51,6 +51,12 @@ do_compile() { do_install() { DESTDIR=${D} ninja ${PARALLEL_MAKE} install-compiler-rt + + if [ -n "${LLVM_LIBDIR_SUFFIX}" ]; then + mkdir -p ${D}${nonarch_libdir} + mv ${D}${libdir}/clang ${D}${nonarch_libdir}/clang + rmdir --ignore-fail-on-non-empty ${D}${libdir} + fi } @@ -71,19 +77,18 @@ do_install_append () { rm -rf ${D}${exec_prefix}/lib/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/lib/linux/clang_rt.crt*.o } -sysroot_stage_all_append_class-target() { - sysroot_stage_dir ${D}${exec_prefix}/lib ${SYSROOT_DESTDIR}${exec_prefix}/lib -} - FILES_SOLIBSDEV = "" -FILES_${PN} += "${exec_prefix}/lib${LLVM_LIBDIR_SUFFIX}/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/lib/linux/lib*${SOLIBSDEV} \ - ${exec_prefix}/lib${LLVM_LIBDIR_SUFFIX}/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/*.txt \ - ${exec_prefix}/lib${LLVM_LIBDIR_SUFFIX}/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/share/*.txt" -FILES_${PN}-staticdev += "${exec_prefix}/lib${LLVM_LIBDIR_SUFFIX}/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/lib/linux/*.a" -FILES_${PN}-dev += "${datadir} ${exec_prefix}/lib${LLVM_LIBDIR_SUFFIX}/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/lib/linux/*.syms \ - ${exec_prefix}/lib${LLVM_LIBDIR_SUFFIX}/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/lib/linux/clang_rt.crt*.o \ +FILES_${PN} += "${nonarch_libdir}/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/lib/linux/lib*${SOLIBSDEV} \ + ${nonarch_libdir}/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/*.txt \ + ${nonarch_libdir}/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/share/*.txt" +FILES_${PN}-staticdev += "${nonarch_libdir}/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/lib/linux/*.a" +FILES_${PN}-dev += "${datadir} ${nonarch_libdir}/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/lib/linux/*.syms \ + ${nonarch_libdir}/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/include \ + ${nonarch_libdir}/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/lib/linux/clang_rt.crt*.o \ + ${nonarch_libdir}/clang/${MAJOR_VER}.${MINOR_VER}.${PATCH_VER}/lib/linux/libclang_rt.asan-preinit*.a \ " INSANE_SKIP_${PN} = "dev-so libdir" +INSANE_SKIP_${PN}-dbg = "libdir" #PROVIDES_append_class-target = "\ # virtual/${TARGET_PREFIX}compilerlibs \ @@ -102,3 +107,4 @@ ALLOW_EMPTY_${PN} = "1" ALLOW_EMPTY_${PN}-dev = "1" TOOLCHAIN_forcevariable = "clang" +SYSROOT_DIRS_append_class-target = " ${nonarch_libdir}" -- cgit v1.2.3-54-g00ecf