From: Kai Kang Date: Tue, 25 Jun 2024 02:02:49 +0000 (+0800) Subject: glibc: fix fortran header file conflict for arm X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d2165543e796d4558c632af24eb7b115bca45969;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git glibc: fix fortran header file conflict for arm There is a file conflict for arm when multilib enabled: | Error: Transaction test error: | file /usr/include/finclude/math-vector-fortran.h conflicts between attempted installs of lib32-libc6-dev-2.39+git0+312e159626-r0.armv7at2hf_neon and libc6-dev-2.39+git0+312e159626-r0.cortexa72 Install math-vector-fortran.h to the gfortran default search directory which is arch specific to avoid the conflict. Signed-off-by: Kai Kang Signed-off-by: Alexandre Belloni --- diff --git a/meta/recipes-core/glibc/glibc-package.inc b/meta/recipes-core/glibc/glibc-package.inc index 0c5e3b4c3de..3352f3e2f50 100644 --- a/meta/recipes-core/glibc/glibc-package.inc +++ b/meta/recipes-core/glibc/glibc-package.inc @@ -39,7 +39,7 @@ FILES:sln = "${base_sbindir}/sln" FILES:${PN}-pic = "${libdir}/*_pic.a ${libdir}/*_pic.map ${libdir}/libc_pic/*.o" FILES:libsotruss = "${libdir}/audit/sotruss-lib.so" FILES_SOLIBSDEV = "${libdir}/lib*${SOLIBSDEV}" -FILES:${PN}-dev += "${libdir}/libpthread.a ${libdir}/libdl.a ${libdir}/libutil.a ${libdir}/libanl.a ${libdir}/*_nonshared.a ${base_libdir}/*_nonshared.a ${base_libdir}/*.o ${datadir}/aclocal" +FILES:${PN}-dev += "${libdir}/libpthread.a ${libdir}/libdl.a ${libdir}/libutil.a ${libdir}/libanl.a ${libdir}/*_nonshared.a ${base_libdir}/*_nonshared.a ${base_libdir}/*.o ${datadir}/aclocal ${libdir}/gcc/${TARGET_SYS}/*/finclude" RDEPENDS:${PN}-dev = "linux-libc-headers-dev" FILES:${PN}-staticdev += "${libdir}/*.a ${base_libdir}/*.a" FILES:nscd = "${sbindir}/nscd* ${sysconfdir}/init.d/nscd ${systemd_system_unitdir}/nscd* ${nonarch_libdir}/tmpfiles.d/nscd.conf \ @@ -169,6 +169,12 @@ do_install_armmultilib () { oe_multilib_header sys/elf.h sys/procfs.h sys/ptrace.h sys/ucontext.h sys/user.h } +do_install_armmultilib:append:class-target() { + gcc_version=$($CC -dumpversion) + mkdir -p ${D}${libdir}/gcc/${TARGET_SYS}/${gcc_version}/finclude + mv ${D}${includedir}/finclude/math-vector-fortran.h ${D}${libdir}/gcc/${TARGET_SYS}/${gcc_version}/finclude/ + rmdir --ignore-fail-on-non-empty ${D}${includedir}/finclude +} LOCALESTASH = "${WORKDIR}/stashed-locale" bashscripts = "mtrace sotruss xtrace"