summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2020-03-17 00:04:17 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-03-21 22:39:01 +0000
commit23c467ae7e73a56b7903c1450c24f9d2d2f02324 (patch)
treefa5dd50727f406a245a3a4de0665a31706bd3cb2 /meta/recipes-core
parent9b7daa66506fbecbd4abde05f9d61d8031b5444c (diff)
downloadpoky-23c467ae7e73a56b7903c1450c24f9d2d2f02324.tar.gz
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>
Diffstat (limited to 'meta/recipes-core')
-rw-r--r--meta/recipes-core/musl/musl_git.bb10
1 files changed, 7 insertions, 3 deletions
diff --git a/meta/recipes-core/musl/musl_git.bb b/meta/recipes-core/musl/musl_git.bb
index 2a15a78cd5..82379fd1c5 100644
--- a/meta/recipes-core/musl/musl_git.bb
+++ b/meta/recipes-core/musl/musl_git.bb
@@ -29,6 +29,7 @@ DEPENDS = "virtual/${TARGET_PREFIX}binutils \
29 libssp-nonshared \ 29 libssp-nonshared \
30 " 30 "
31GLIBC_LDSO = "${@get_glibc_loader(d)}" 31GLIBC_LDSO = "${@get_glibc_loader(d)}"
32MUSL_LDSO_ARCH = "${@get_musl_loader_arch(d)}"
32 33
33export CROSS_COMPILE="${TARGET_PREFIX}" 34export CROSS_COMPILE="${TARGET_PREFIX}"
34 35
@@ -48,7 +49,7 @@ CONFIGUREOPTS = " \
48 --bindir=${bindir} \ 49 --bindir=${bindir} \
49 --libdir=${libdir} \ 50 --libdir=${libdir} \
50 --includedir=${includedir} \ 51 --includedir=${includedir} \
51 --syslibdir=${base_libdir} \ 52 --syslibdir=/lib \
52" 53"
53 54
54do_configure() { 55do_configure() {
@@ -61,8 +62,9 @@ do_compile() {
61 62
62do_install() { 63do_install() {
63 oe_runmake install DESTDIR='${D}' 64 oe_runmake install DESTDIR='${D}'
64 65 install -d ${D}${bindir} ${D}${base_libdir} ${D}${sysconfdir}
65 install -d ${D}${bindir} 66 echo "${base_libdir}" > ${D}${sysconfdir}/ld-musl-${MUSL_LDSO_ARCH}.path
67 echo "${libdir}" >> ${D}${sysconfdir}/ld-musl-${MUSL_LDSO_ARCH}.path
66 rm -f ${D}${bindir}/ldd ${D}${GLIBC_LDSO} 68 rm -f ${D}${bindir}/ldd ${D}${GLIBC_LDSO}
67 lnr ${D}${libdir}/libc.so ${D}${bindir}/ldd 69 lnr ${D}${libdir}/libc.so ${D}${bindir}/ldd
68 lnr ${D}${libdir}/libc.so ${D}${GLIBC_LDSO} 70 lnr ${D}${libdir}/libc.so ${D}${GLIBC_LDSO}
@@ -70,6 +72,7 @@ do_install() {
70 72
71PACKAGES =+ "${PN}-glibc-compat" 73PACKAGES =+ "${PN}-glibc-compat"
72 74
75FILES_${PN} += "/lib/ld-musl-${MUSL_LDSO_ARCH}.so.1 ${sysconfdir}/ld-musl-${MUSL_LDSO_ARCH}.path"
73FILES_${PN}-glibc-compat += "${GLIBC_LDSO}" 76FILES_${PN}-glibc-compat += "${GLIBC_LDSO}"
74FILES_${PN}-staticdev = "${libdir}/libc.a" 77FILES_${PN}-staticdev = "${libdir}/libc.a"
75FILES_${PN}-dev =+ "${libdir}/libcrypt.a ${libdir}/libdl.a ${libdir}/libm.a \ 78FILES_${PN}-dev =+ "${libdir}/libcrypt.a ${libdir}/libdl.a ${libdir}/libm.a \
@@ -83,3 +86,4 @@ RPROVIDES_${PN} += "ldd libsegfault rtld(GNU_HASH)"
83 86
84LEAD_SONAME = "libc.so" 87LEAD_SONAME = "libc.so"
85INSANE_SKIP_${PN}-dev = "staticdev" 88INSANE_SKIP_${PN}-dev = "staticdev"
89INSANE_SKIP_${PN} = "libdir"