diff options
author | Khem Raj <raj.khem@gmail.com> | 2020-03-17 00:04:17 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2020-03-21 22:39:01 +0000 |
commit | 23c467ae7e73a56b7903c1450c24f9d2d2f02324 (patch) | |
tree | fa5dd50727f406a245a3a4de0665a31706bd3cb2 /meta/recipes-core | |
parent | 9b7daa66506fbecbd4abde05f9d61d8031b5444c (diff) | |
download | poky-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.bb | 10 |
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 | " |
31 | GLIBC_LDSO = "${@get_glibc_loader(d)}" | 31 | GLIBC_LDSO = "${@get_glibc_loader(d)}" |
32 | MUSL_LDSO_ARCH = "${@get_musl_loader_arch(d)}" | ||
32 | 33 | ||
33 | export CROSS_COMPILE="${TARGET_PREFIX}" | 34 | export 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 | ||
54 | do_configure() { | 55 | do_configure() { |
@@ -61,8 +62,9 @@ do_compile() { | |||
61 | 62 | ||
62 | do_install() { | 63 | do_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 | ||
71 | PACKAGES =+ "${PN}-glibc-compat" | 73 | PACKAGES =+ "${PN}-glibc-compat" |
72 | 74 | ||
75 | FILES_${PN} += "/lib/ld-musl-${MUSL_LDSO_ARCH}.so.1 ${sysconfdir}/ld-musl-${MUSL_LDSO_ARCH}.path" | ||
73 | FILES_${PN}-glibc-compat += "${GLIBC_LDSO}" | 76 | FILES_${PN}-glibc-compat += "${GLIBC_LDSO}" |
74 | FILES_${PN}-staticdev = "${libdir}/libc.a" | 77 | FILES_${PN}-staticdev = "${libdir}/libc.a" |
75 | FILES_${PN}-dev =+ "${libdir}/libcrypt.a ${libdir}/libdl.a ${libdir}/libm.a \ | 78 | FILES_${PN}-dev =+ "${libdir}/libcrypt.a ${libdir}/libdl.a ${libdir}/libm.a \ |
@@ -83,3 +86,4 @@ RPROVIDES_${PN} += "ldd libsegfault rtld(GNU_HASH)" | |||
83 | 86 | ||
84 | LEAD_SONAME = "libc.so" | 87 | LEAD_SONAME = "libc.so" |
85 | INSANE_SKIP_${PN}-dev = "staticdev" | 88 | INSANE_SKIP_${PN}-dev = "staticdev" |
89 | INSANE_SKIP_${PN} = "libdir" | ||