From 30af613b1ff04a8b01179c70b7fd0660fee7dbbb Mon Sep 17 00:00:00 2001 From: Daniel James Date: Sun, 17 Sep 2017 18:28:57 -0400 Subject: [PATCH] New package: gcompat-0.0.1 Closes: #7707 [via git-merge-pr] --- srcpkgs/gcompat/template | 47 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 srcpkgs/gcompat/template diff --git a/srcpkgs/gcompat/template b/srcpkgs/gcompat/template new file mode 100644 index 00000000000..ea224dd4648 --- /dev/null +++ b/srcpkgs/gcompat/template @@ -0,0 +1,47 @@ +# Template file for 'gcompat' +pkgname=gcompat +version=0.0.1 +revision=1 +wrksrc="${pkgname}-${pkgname}-${version}" +build_style="gnu-makefile" +short_desc="Compatibility layer to allow running glibc binaries on musl systems" +maintainer="Daniel James " +homepage="https://github.com/AdelieLinux/gcompat" +license="ISC" +distfiles="https://github.com/AdelieLinux/${pkgname}/archive/${pkgname}-${version}.tar.gz + https://raw.githubusercontent.com/AdelieLinux/${pkgname}/master/LICENSE" +checksum="138f4094977268a762415da10c05bcf87fae948faa8ff13a9b8b4ff4d64c91e6 + 9edc99844a4c06b75f200fb96a72af4b8cc2da4c6662b8610157c24d428fa5c4" +skip_extraction="LICENSE" + +# https://sourceware.org/glibc/wiki/ABIList +# https://wiki.linaro.org/RikuVoipio/LdSoTable +case "${XBPS_TARGET_MACHINE}" in + aarch64-musl) _glibc="ld-linux-aarch64.so.1" _musl="ld-musl-aarch64.so.1";; + armv5te-musl) _glibc="ld-linux.so.3" _musl="ld-musl-arm.so.1";; + armv5tel-musl) _glibc="ld-linux.so.3" _musl="ld-musl-arm.so.1";; + armv6hf-musl) _glibc="ld-linux-armhf.so.3" _musl="ld-musl-armhf.so.1";; + armv6l-musl) _glibc="ld-linux-armhf.so.3" _musl="ld-musl-armhf.so.1";; + armv7hf-musl) _glibc="ld-linux-armhf.so.3" _musl="ld-musl-armhf.so.1";; + armv7l-musl) _glibc="ld-linux-armhf.so.3" _musl="ld-musl-armhf.so.1";; + i686-musl) _glibc="ld-linux.so.2" _musl="ld-musl-x86.so.1";; + mips-musl) _glibc="ld.so.1" _musl="ld-musl-mips-sf.so.1";; + mipsel-musl) _glibc="ld.so.1" _musl="ld-musl-mipsel-sf.so.1";; + mipselhf-musl) _glibc="ld.so.1" _musl="ld-musl-mipsel.so.1";; + x86_64-musl) _glibc="ld-linux-x86-64.so.2" _musl="ld-musl-x86_64.so.1";; + *-musl) broken="Template does not yet recognize this arch, please fix" + *) broken="Only for musl libc" +esac + +make_build_args="LINKER_PATH=/usr/lib/${_musl} LOADER_NAME=${_glibc} + LIBGCOMPAT_PATH=/usr/lib/libgcompat.so.0 LOADER_PATH=/usr/lib/${LOADER_NAME}" +make_install_args="LINKER_PATH=/usr/lib/${_musl} LOADER_NAME=${_glibc} + LIBGCOMPAT_PATH=/usr/lib/libgcompat.so.0 LOADER_PATH=/usr/lib/${LOADER_NAME}" + +pre_build() { + sed -i 's/gcc/$(CC)/g' Makefile +} + +post_install() { + vlicense ${XBPS_SRCDISTDIR}/${pkgname}-${version}/LICENSE +}