mirror of
https://git.yoctoproject.org/poky
synced 2026-05-08 17:19:20 +00:00
musl: Add support for multilib
ldso is always stored in /lib regardless of multilib
add ld-musl-${MUSL_LDSO_ARCH}.path to aid ldso finding default library
loading paths, it helps when using multilib, where system libraries are
moved to lib32 or lib64 paths under / or /usr
[YOCTO #11971]
(From OE-Core rev: bfa1ea82bb2ec9d1ae6da0a442bed519a6464698)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -29,6 +29,7 @@ DEPENDS = "virtual/${TARGET_PREFIX}binutils \
|
||||
libssp-nonshared \
|
||||
"
|
||||
GLIBC_LDSO = "${@get_glibc_loader(d)}"
|
||||
MUSL_LDSO_ARCH = "${@get_musl_loader_arch(d)}"
|
||||
|
||||
export CROSS_COMPILE="${TARGET_PREFIX}"
|
||||
|
||||
@@ -48,7 +49,7 @@ CONFIGUREOPTS = " \
|
||||
--bindir=${bindir} \
|
||||
--libdir=${libdir} \
|
||||
--includedir=${includedir} \
|
||||
--syslibdir=${base_libdir} \
|
||||
--syslibdir=/lib \
|
||||
"
|
||||
|
||||
do_configure() {
|
||||
@@ -61,8 +62,9 @@ do_compile() {
|
||||
|
||||
do_install() {
|
||||
oe_runmake install DESTDIR='${D}'
|
||||
|
||||
install -d ${D}${bindir}
|
||||
install -d ${D}${bindir} ${D}${base_libdir} ${D}${sysconfdir}
|
||||
echo "${base_libdir}" > ${D}${sysconfdir}/ld-musl-${MUSL_LDSO_ARCH}.path
|
||||
echo "${libdir}" >> ${D}${sysconfdir}/ld-musl-${MUSL_LDSO_ARCH}.path
|
||||
rm -f ${D}${bindir}/ldd ${D}${GLIBC_LDSO}
|
||||
lnr ${D}${libdir}/libc.so ${D}${bindir}/ldd
|
||||
lnr ${D}${libdir}/libc.so ${D}${GLIBC_LDSO}
|
||||
@@ -70,6 +72,7 @@ do_install() {
|
||||
|
||||
PACKAGES =+ "${PN}-glibc-compat"
|
||||
|
||||
FILES_${PN} += "/lib/ld-musl-${MUSL_LDSO_ARCH}.so.1 ${sysconfdir}/ld-musl-${MUSL_LDSO_ARCH}.path"
|
||||
FILES_${PN}-glibc-compat += "${GLIBC_LDSO}"
|
||||
FILES_${PN}-staticdev = "${libdir}/libc.a"
|
||||
FILES_${PN}-dev =+ "${libdir}/libcrypt.a ${libdir}/libdl.a ${libdir}/libm.a \
|
||||
@@ -83,3 +86,4 @@ RPROVIDES_${PN} += "ldd libsegfault rtld(GNU_HASH)"
|
||||
|
||||
LEAD_SONAME = "libc.so"
|
||||
INSANE_SKIP_${PN}-dev = "staticdev"
|
||||
INSANE_SKIP_${PN} = "libdir"
|
||||
|
||||
Reference in New Issue
Block a user