Andrew Geissler | 0903674 | 2021-06-25 14:25:14 -0500 | [diff] [blame] | 1 | # Copyright (C) 2021 Khem Raj <raj.khem@gmail.com> |
| 2 | # Released under the MIT license (see COPYING.MIT for the terms) |
| 3 | |
| 4 | SUMMARY = "A library which provides glibc-compatible APIs for use on musl libc systems" |
| 5 | HOMEPAGE = "https://git.adelielinux.org/adelie/gcompat" |
| 6 | |
| 7 | LICENSE = "NCSA" |
| 8 | LIC_FILES_CHKSUM = "file://LICENSE;md5=eb33ef4af05a9c7602843afb7adfe792" |
| 9 | |
Andrew Geissler | 9aee500 | 2022-03-30 16:27:02 +0000 | [diff] [blame] | 10 | SRC_URI = "git://git.adelielinux.org/adelie/gcompat.git;protocol=https;branch=current \ |
Andrew Geissler | 87f5cff | 2022-09-30 13:13:31 -0500 | [diff] [blame] | 11 | file://0001-auxv-new-module.patch \ |
| 12 | " |
Andrew Geissler | 9aee500 | 2022-03-30 16:27:02 +0000 | [diff] [blame] | 13 | SRC_URI:append:powerpc = "\ |
| 14 | file://0001-make-Static-PIE-does-not-work-on-musl-ppc.patch \ |
| 15 | " |
Andrew Geissler | 0903674 | 2021-06-25 14:25:14 -0500 | [diff] [blame] | 16 | PV = "1.0.0+1.1+git${SRCPV}" |
Andrew Geissler | 87f5cff | 2022-09-30 13:13:31 -0500 | [diff] [blame] | 17 | SRCREV = "c6921a1aa454bb87671f9bd1ecfe47d80d1620aa" |
Andrew Geissler | 0903674 | 2021-06-25 14:25:14 -0500 | [diff] [blame] | 18 | |
| 19 | S = "${WORKDIR}/git" |
| 20 | |
| 21 | inherit pkgconfig linuxloader siteinfo |
| 22 | |
| 23 | DEPENDS += "musl-obstack" |
| 24 | |
| 25 | GLIBC_LDSO = "${@get_glibc_loader(d)}" |
| 26 | MUSL_LDSO = "${@get_musl_loader(d)}" |
| 27 | |
| 28 | EXTRA_OEMAKE = "LINKER_PATH=${MUSL_LDSO} \ |
| 29 | LOADER_NAME=`basename ${GLIBC_LDSO}` \ |
| 30 | " |
| 31 | |
| 32 | do_configure () { |
| 33 | : |
| 34 | } |
| 35 | |
| 36 | do_compile () { |
| 37 | oe_runmake |
| 38 | } |
| 39 | |
| 40 | do_install () { |
Patrick Williams | 03907ee | 2022-05-01 06:28:52 -0500 | [diff] [blame] | 41 | oe_runmake install 'DESTDIR=${D}${root_prefix}' |
Andrew Geissler | 0903674 | 2021-06-25 14:25:14 -0500 | [diff] [blame] | 42 | if [ "${SITEINFO_BITS}" = "64" ]; then |
Patrick Williams | 03907ee | 2022-05-01 06:28:52 -0500 | [diff] [blame] | 43 | install -d ${D}${nonarch_base_libdir}${SITEINFO_BITS} |
| 44 | ln -rs ${D}${GLIBC_LDSO} ${D}${nonarch_base_libdir}${SITEINFO_BITS}/`basename ${GLIBC_LDSO}` |
Andrew Geissler | 0903674 | 2021-06-25 14:25:14 -0500 | [diff] [blame] | 45 | fi |
Andrew Geissler | 87f5cff | 2022-09-30 13:13:31 -0500 | [diff] [blame] | 46 | install -d ${D}${libdir} |
| 47 | ln -sf ${base_libdir}/libgcompat.so.0 ${D}${libdir}/libgcompat.so |
Andrew Geissler | 0903674 | 2021-06-25 14:25:14 -0500 | [diff] [blame] | 48 | } |
| 49 | |
Patrick Williams | 03907ee | 2022-05-01 06:28:52 -0500 | [diff] [blame] | 50 | FILES:${PN} += "${nonarch_base_libdir}${SITEINFO_BITS}" |
Andrew Geissler | 0903674 | 2021-06-25 14:25:14 -0500 | [diff] [blame] | 51 | |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 52 | INSANE_SKIP:${PN} = "libdir" |
Andrew Geissler | 0903674 | 2021-06-25 14:25:14 -0500 | [diff] [blame] | 53 | |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 54 | RPROVIDES:${PN} += "musl-glibc-compat" |
Andrew Geissler | 0903674 | 2021-06-25 14:25:14 -0500 | [diff] [blame] | 55 | # |
| 56 | # We will skip parsing for non-musl systems |
| 57 | # |
| 58 | COMPATIBLE_HOST = ".*-musl.*" |
| 59 | |
| 60 | UPSTREAM_CHECK_COMMITS = "1" |