diff options
-rw-r--r-- | meta/recipes-devtools/llvm/llvm_git.bb | 58 | ||||
-rw-r--r-- | meta/recipes-graphics/mesa/mesa.inc | 2 |
2 files changed, 17 insertions, 43 deletions
diff --git a/meta/recipes-devtools/llvm/llvm_git.bb b/meta/recipes-devtools/llvm/llvm_git.bb index 13f7fb763e..e10348a7f2 100644 --- a/meta/recipes-devtools/llvm/llvm_git.bb +++ b/meta/recipes-devtools/llvm/llvm_git.bb @@ -24,7 +24,6 @@ PV = "14.0.0" MAJOR_VERSION = "${@oe.utils.trim_version("${PV}", 1)}" LLVM_RELEASE = "${PV}" -LLVM_DIR = "llvm${LLVM_RELEASE}" BRANCH = "release/${MAJOR_VERSION}.x" SRCREV = "329fda39c507e8740978d10458451dcdb21563be" @@ -91,13 +90,6 @@ EXTRA_OECMAKE:append:class-nativesdk = "\ -DLLVM_CONFIG_PATH=${STAGING_BINDIR_NATIVE}/llvm-config${PV} \ " -do_configure:prepend() { -# Fix paths in llvm-config - sed -i "s|sys::path::parent_path(CurrentPath))\.str()|sys::path::parent_path(sys::path::parent_path(CurrentPath))).str()|g" ${S}/tools/llvm-config/llvm-config.cpp - sed -ri "s#/(bin|include|lib)(/?\")#/\1/${LLVM_DIR}\2#g" ${S}/tools/llvm-config/llvm-config.cpp - sed -ri "s#lib/${LLVM_DIR}#${baselib}/${LLVM_DIR}#g" ${S}/tools/llvm-config/llvm-config.cpp -} - # patch out build host paths for reproducibility do_compile:prepend:class-target() { sed -i -e "s,${WORKDIR},,g" ${B}/tools/llvm-config/BuildVariables.inc @@ -112,34 +104,17 @@ do_compile:class-native() { } do_install() { - DESTDIR=${LLVM_INSTALL_DIR} ninja -v install - install -D -m 0755 ${B}/bin/llvm-config ${D}${libdir}/${LLVM_DIR}/llvm-config - - install -d ${D}${bindir}/${LLVM_DIR} - cp -r ${LLVM_INSTALL_DIR}${bindir}/* ${D}${bindir}/${LLVM_DIR}/ - - install -d ${D}${includedir}/${LLVM_DIR} - cp -r ${LLVM_INSTALL_DIR}${includedir}/* ${D}${includedir}/${LLVM_DIR}/ - - install -d ${D}${libdir}/${LLVM_DIR} - - # The LLVM sources have "/lib" embedded and so we cannot completely rely on the ${libdir} variable - if [ -d ${LLVM_INSTALL_DIR}${libdir}/ ]; then - cp -r ${LLVM_INSTALL_DIR}${libdir}/* ${D}${libdir}/${LLVM_DIR}/ - elif [ -d ${LLVM_INSTALL_DIR}${prefix}/lib ]; then - cp -r ${LLVM_INSTALL_DIR}${prefix}/lib/* ${D}${libdir}/${LLVM_DIR}/ - elif [ -d ${LLVM_INSTALL_DIR}${prefix}/lib64 ]; then - cp -r ${LLVM_INSTALL_DIR}${prefix}/lib64/* ${D}${libdir}/${LLVM_DIR}/ - fi + DESTDIR=${D} ninja -v install - # Remove unnecessary cmake files - rm -rf ${D}${libdir}/${LLVM_DIR}/cmake + # llvm harcodes usr/lib as install path, so this corrects it to actual libdir + mv -T -n ${D}/${prefix}/lib ${D}/${libdir} || true - ln -s ${LLVM_DIR}/libLLVM-${MAJOR_VERSION}${SOLIBSDEV} ${D}${libdir}/libLLVM-${MAJOR_VERSION}${SOLIBSDEV} + # Remove opt-viewer: https://llvm.org/docs/Remarks.html + rm -rf ${D}${datadir}/opt-viewer + rmdir ${D}${datadir} - # We'll have to delete the libLLVM.so due to multiple reasons... - rm -rf ${D}${libdir}/${LLVM_DIR}/libLLVM.so - rm -rf ${D}${libdir}/${LLVM_DIR}/libLTO.so + # reproducibility + sed -i -e 's,${WORKDIR},,g' ${D}/${libdir}/cmake/llvm/LLVMConfig.cmake } do_install:class-native() { @@ -152,34 +127,33 @@ PACKAGES =+ "${PN}-bugpointpasses ${PN}-llvmhello ${PN}-libllvm ${PN}-liboptrema RRECOMMENDS:${PN}-dev += "${PN}-bugpointpasses ${PN}-llvmhello ${PN}-liboptremarks" FILES:${PN}-bugpointpasses = "\ - ${libdir}/${LLVM_DIR}/BugpointPasses.so \ + ${libdir}/BugpointPasses.so \ " FILES:${PN}-libllvm = "\ - ${libdir}/${LLVM_DIR}/libLLVM-${MAJOR_VERSION}.so \ ${libdir}/libLLVM-${MAJOR_VERSION}.so \ " FILES:${PN}-liblto += "\ - ${libdir}/${LLVM_DIR}/libLTO.so.* \ + ${libdir}/libLTO.so.* \ " FILES:${PN}-liboptremarks += "\ - ${libdir}/${LLVM_DIR}/libRemarks.so.* \ + ${libdir}/libRemarks.so.* \ " FILES:${PN}-llvmhello = "\ - ${libdir}/${LLVM_DIR}/LLVMHello.so \ + ${libdir}/LLVMHello.so \ " FILES:${PN}-dev += " \ - ${libdir}/${LLVM_DIR}/llvm-config \ - ${libdir}/${LLVM_DIR}/libRemarks.so \ - ${libdir}/${LLVM_DIR}/libLLVM-${PV}.so \ + ${libdir}/llvm-config \ + ${libdir}/libRemarks.so \ + ${libdir}/libLLVM-${PV}.so \ " FILES:${PN}-staticdev += "\ - ${libdir}/${LLVM_DIR}/*.a \ + ${libdir}/*.a \ " INSANE_SKIP:${PN}-libllvm += "dev-so" diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc index e8c07a4563..21fa1a6a9e 100644 --- a/meta/recipes-graphics/mesa/mesa.inc +++ b/meta/recipes-graphics/mesa/mesa.inc @@ -52,7 +52,7 @@ ANY_OF_DISTRO_FEATURES:class-target = "opengl vulkan" PLATFORMS ??= "${@bb.utils.filter('PACKAGECONFIG', 'x11 wayland', d)}" -export YOCTO_ALTERNATE_EXE_PATH = "${STAGING_LIBDIR}/llvm${MESA_LLVM_RELEASE}/llvm-config" +export YOCTO_ALTERNATE_EXE_PATH = "${STAGING_LIBDIR}/llvm-config" export YOCTO_ALTERNATE_MULTILIB_NAME = "${base_libdir}" export LLVM_CONFIG = "${STAGING_BINDIR_NATIVE}/llvm-config${MESA_LLVM_RELEASE}" export WANT_LLVM_RELEASE = "${MESA_LLVM_RELEASE}" |