From 8ea0680462c506e01244d3fd3d35e6b2f805ada6 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 19 Sep 2018 20:52:42 -0700 Subject: musl: Add aliases for glibc provided libraries This is a step towards running pebuilt applications for glibc on musl There are many realworld applications which are not always built from source, especially provided by third party Package the glibc symlinks into new package musl-glibc-compat Signed-off-by: Khem Raj Signed-off-by: Ross Burton --- meta/recipes-core/musl/musl_git.bb | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/meta/recipes-core/musl/musl_git.bb b/meta/recipes-core/musl/musl_git.bb index be31718e3a..f0556533b5 100644 --- a/meta/recipes-core/musl/musl_git.bb +++ b/meta/recipes-core/musl/musl_git.bb @@ -2,6 +2,7 @@ # Released under the MIT license (see COPYING.MIT for the terms) require musl.inc +inherit linuxloader SRCREV = "0fa1e638e87cf257e9f96b4019b2076afd674a19" @@ -26,6 +27,7 @@ DEPENDS = "virtual/${TARGET_PREFIX}binutils \ bsd-headers \ libssp-nonshared \ " +GLIBC_LDSO = "${@get_glibc_loader(d)}" export CROSS_COMPILE="${TARGET_PREFIX}" @@ -62,12 +64,26 @@ do_install() { install -d ${D}${bindir} rm -f ${D}${bindir}/ldd lnr ${D}${libdir}/libc.so ${D}${bindir}/ldd + lnr ${D}${libdir}/libc.so ${D}${GLIBC_LDSO} for l in crypt dl m pthread resolv rt util xnet do ln -sf libc.so ${D}${libdir}/lib$l.so done + for i in libc.so.6 libcrypt.so.1 libdl.so.2 libm.so.6 libpthread.so.0 libresolv.so.2 librt.so.1 libutil.so.1; do + ln -sf libc.so ${D}${libdir}/$i + done } +PACKAGES =+ "${PN}-glibc-compat" + +FILES_${PN}-glibc-compat += "\ + ${libdir}/libc.so.6 ${libdir}/libcrypt.so.1 \ + ${libdir}/libdl.so.2 ${libdir}/libm.so.6 \ + ${libdir}/libpthread.so.0 ${libdir}/libresolv.so.2 \ + ${libdir}/librt.so.1 ${libdir}/libutil.so.1 \ + ${GLIBC_LDSO} \ + " + RDEPENDS_${PN}-dev += "linux-libc-headers-dev bsd-headers-dev libssp-nonshared-staticdev" RPROVIDES_${PN}-dev += "libc-dev virtual-libc-dev" RPROVIDES_${PN} += "ldd libsegfault rtld(GNU_HASH)" -- cgit 1.2.3-korg