mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-08-05 13:27:09 +02:00
This additional features would avoid FTFBS later as the one found on rngd_darn.c:208:31: error: 'PPC_FEATURE2_DARN' undeclared (first use in this function) if (!(getauxval(AT_HWCAP2) & PPC_FEATURE2_DARN)) {
166 lines
6.4 KiB
Plaintext
166 lines
6.4 KiB
Plaintext
# Contributor: William Pitcock <nenolod@dereferenced.org>
|
|
# Maintainer: Timo Teräs <timo.teras@iki.fi>
|
|
pkgname=musl
|
|
pkgver=1.1.19
|
|
pkgrel=8
|
|
pkgdesc="the musl c library (libc) implementation"
|
|
url="http://www.musl-libc.org/"
|
|
arch="all"
|
|
license="MIT"
|
|
depends=""
|
|
depends_dev="!uclibc-dev"
|
|
makedepends="$depends_dev"
|
|
subpackages="$pkgname-dev $pkgname-dbg libc6-compat:compat:noarch"
|
|
case "$BOOTSTRAP" in
|
|
nocc) pkgname="musl-dev"; subpackages="";;
|
|
nolibc) ;;
|
|
*) subpackages="$subpackages $pkgname-utils";;
|
|
esac
|
|
source="http://www.musl-libc.org/releases/musl-$pkgver.tar.gz
|
|
0001-fix-getopt-wrongly-treating-colons-in-optstring-as-v.patch
|
|
0002-fix-nl_langinfo_l-CODESET-loc-reporting-wrong-locale.patch
|
|
0003-fix-fmaf-wrong-result.patch
|
|
0004-implement-wcsftime-padding-specifier-extensions.patch
|
|
0005-fix-wrong-result-in-casin-and-many-related-complex-f.patch
|
|
0006-powerpc-update-hwcap.h-for-linux-v4.15.patch
|
|
|
|
2000-pthread-internals-increase-DEFAULT_GUARD_SIZE-to-2-p.patch
|
|
handle-aux-at_base.patch
|
|
|
|
ldconfig
|
|
__stack_chk_fail_local.c
|
|
getconf.c
|
|
getent.c
|
|
iconv.c
|
|
"
|
|
|
|
# secfixes:
|
|
# 1.1.15-r4:
|
|
# - CVE-2016-8859
|
|
|
|
builddir="$srcdir"/musl-$pkgver
|
|
|
|
build() {
|
|
cd "$builddir"
|
|
|
|
[ "$BOOTSTRAP" = "nocc" ] && return 0
|
|
|
|
# provide minimal libssp_nonshared.a so we don't need libssp from gcc
|
|
${CROSS_COMPILE}gcc $CPPFLAGS $CFLAGS -c "$srcdir"/__stack_chk_fail_local.c -o __stack_chk_fail_local.o || return 1
|
|
${CROSS_COMPILE}ar r libssp_nonshared.a __stack_chk_fail_local.o || return 1
|
|
|
|
if [ "$BOOTSTRAP" != "nolibc" ]; then
|
|
# getconf/getent/iconv
|
|
local i
|
|
for i in getconf getent iconv ; do
|
|
${CROSS_COMPILE}gcc $CPPFLAGS $CFLAGS "$srcdir"/$i.c -o $i || return 1
|
|
done
|
|
fi
|
|
|
|
# note: not autotools
|
|
LDFLAGS="$LDFLAGS -Wl,-soname,libc.musl-${CARCH}.so.1" \
|
|
./configure \
|
|
--build=$CBUILD \
|
|
--host=$CHOST \
|
|
--prefix=/usr \
|
|
--sysconfdir=/etc \
|
|
--mandir=/usr/share/man \
|
|
--infodir=/usr/share/info \
|
|
--localstatedir=/var \
|
|
|| return 1
|
|
make || return 1
|
|
}
|
|
|
|
package() {
|
|
cd "$builddir"
|
|
|
|
if [ "$BOOTSTRAP" = "nocc" ]; then
|
|
case "$CARCH" in
|
|
aarch64*) ARCH="aarch64" ;;
|
|
arm*) ARCH="arm" ;;
|
|
x86) ARCH="i386" ;;
|
|
x86_64) ARCH="x86_64" ;;
|
|
ppc) ARCH="powerpc" ;;
|
|
ppc64*) ARCH="powerpc64" ;;
|
|
s390*) ARCH="s390x" ;;
|
|
mips64*) ARCH="mips64" ;;
|
|
mips*) ARCH="mips" ;;
|
|
esac
|
|
|
|
make ARCH="$ARCH" prefix=/usr DESTDIR="$pkgdir" install-headers || return 1
|
|
else
|
|
make DESTDIR="$pkgdir" install || return 1
|
|
|
|
cp libssp_nonshared.a "$pkgdir"/usr/lib || return 1
|
|
|
|
# make LDSO the be the real file, and libc the symlink
|
|
local LDSO=$(make -f Makefile --eval "$(echo -e 'print-ldso:\n\t@echo $$(basename $(LDSO_PATHNAME))')" print-ldso)
|
|
mv -f "$pkgdir"/usr/lib/libc.so "$pkgdir"/lib/"$LDSO" || return 1
|
|
ln -sf "$LDSO" "$pkgdir"/lib/libc.musl-${CARCH}.so.1 || return 1
|
|
ln -sf ../../lib/"$LDSO" "$pkgdir"/usr/lib/libc.so || return 1
|
|
mkdir -p "$pkgdir"/usr/bin || return 1
|
|
ln -sf ../../lib/"$LDSO" "$pkgdir"/usr/bin/ldd || return 1
|
|
fi
|
|
|
|
# remove libintl.h, currently we don't want by default any NLS
|
|
# and use GNU gettext where needed. the plan is to migrate to
|
|
# musl gettext() later on as fully as possible.
|
|
rm "$pkgdir"/usr/include/libintl.h || return 1
|
|
}
|
|
|
|
utils() {
|
|
depends="!uclibc-utils scanelf"
|
|
replaces="libiconv uclibc-utils"
|
|
license="MIT BSD GPL2+"
|
|
|
|
mkdir -p "$subpkgdir"/usr "$subpkgdir"/sbin
|
|
mv "$pkgdir"/usr/bin "$subpkgdir"/usr/ || return 1
|
|
|
|
install -D \
|
|
"$builddir"/getent \
|
|
"$builddir"/getconf \
|
|
"$builddir"/iconv \
|
|
"$subpkgdir"/usr/bin
|
|
|
|
install -D -m755 "$srcdir"/ldconfig "$subpkgdir"/sbin
|
|
}
|
|
|
|
compat() {
|
|
pkgdesc="compatibility libraries for glibc"
|
|
|
|
mkdir -p "$subpkgdir"/lib
|
|
case "$CARCH" in
|
|
armel) _ld="ld-linux.so.3" ;;
|
|
armhf | armv7) _ld="ld-linux-armhf.so.3" ;;
|
|
aarch64) _ld="ld-linux-aarch64.so.1" ;;
|
|
x86) _ld="ld-linux.so.2" ;;
|
|
x86_64) _ld="ld-linux-x86-64.so.2"
|
|
# go precompiled binary uses /lib64/ld-linux-x86-64.so.2
|
|
# so we add a symlink
|
|
ln -s lib "$subpkgdir"/lib64
|
|
;;
|
|
mips* | s390*) _ld="ld.so.1" ;;
|
|
ppc64le) _ld="ld64.so.2" ;;
|
|
esac
|
|
ln -sf "/lib/libc.musl-${CARCH}.so.1" "$subpkgdir/lib/$_ld"
|
|
|
|
for i in libc.so.6 libcrypt.so.1 libm.so.6 libpthread.so.0 librt.so.1 libutil.so.1; do
|
|
ln -sf "/lib/libc.musl-${CARCH}.so.1" "$subpkgdir/lib/$i"
|
|
done
|
|
}
|
|
|
|
sha512sums="abee52d53af4b3c14c9088866c911a24d2b6ef67dc494f38a7a09dfe77250026f77528c24c52469c89cffa8ced2f0fa95badbdcf8d4460c90faba47e3927bcc5 musl-1.1.19.tar.gz
|
|
7a6480c454ad25d156727818cf61961880e526abcb00382ed81e40256ac5b06af546837652e47187132d64c261d9f01ce91a952762afd439a8faf5825306a880 0001-fix-getopt-wrongly-treating-colons-in-optstring-as-v.patch
|
|
1c649ebd4814ee22364d8766fdf93732e0c0c54361fcfcc994be254b52e9beb276fca5031a1cef9d4f971c96dc3d3774a1738ba3a38263d8e139ea3947c9b7c3 0002-fix-nl_langinfo_l-CODESET-loc-reporting-wrong-locale.patch
|
|
b0bcfc837f888f2b1c2d65c06dcc0a2fa12da78986ba9c7c86a64123ce44c21a63c13c1cc2e93fdf564a3ca4472c29f0acabaff367914c52bf101d6d8a56ee2e 0003-fix-fmaf-wrong-result.patch
|
|
1fedaf691ac394dec3158cff7839e36383d4107b59f003b75c8fb85a5fceb2143e2bb4aae58c08d68ccdf02d5ebf8c9e5031fa6063aa5c3112b4f8c66adab3dd 0004-implement-wcsftime-padding-specifier-extensions.patch
|
|
6d7bbb493ccb7006270ace71266c0daf2c87842480f01cafb25609c9a3c77ae35934ee2a2bf00d78be8cce391204dcb9aba33e4d96dbf2a258595cf7a3939130 0005-fix-wrong-result-in-casin-and-many-related-complex-f.patch
|
|
023fc05d653f4a3be4d16a2e223bddc26be7bc31c4decf3f5b9bed78cbe7bc8687ff8c164b94541f6fda66d6c3864dd42cb10920d066f97d2891e31a366c3e8d 0006-powerpc-update-hwcap.h-for-linux-v4.15.patch
|
|
2c8e1dde1834238097b2ee8a7bfb53471a0d9cff4a5e38b55f048b567deff1cdd47c170d0578a67b1a039f95a6c5fbb8cff369c75b6a3e4d7ed171e8e86ebb8c 2000-pthread-internals-increase-DEFAULT_GUARD_SIZE-to-2-p.patch
|
|
6a7ff16d95b5d1be77e0a0fbb245491817db192176496a57b22ab037637d97a185ea0b0d19da687da66c2a2f5578e4343d230f399d49fe377d8f008410974238 handle-aux-at_base.patch
|
|
8d3a2d5315fc56fee7da9abb8b89bb38c6046c33d154c10d168fb35bfde6b0cf9f13042a3bceee34daf091bc409d699223735dcf19f382eeee1f6be34154f26f ldconfig
|
|
062bb49fa54839010acd4af113e20f7263dde1c8a2ca359b5fb2661ef9ed9d84a0f7c3bc10c25dcfa10bb3c5a4874588dff636ac43d5dbb3d748d75400756d0b __stack_chk_fail_local.c
|
|
0d80f37b34a35e3d14b012257c50862dfeb9d2c81139ea2dfa101d981d093b009b9fa450ba27a708ac59377a48626971dfc58e20a3799084a65777a0c32cbc7d getconf.c
|
|
378d70e65bcc65bb4e1415354cecfa54b0c1146dfb24474b69e418cdbf7ad730472cd09f6f103e1c99ba6c324c9560bccdf287f5889bbc3ef0bdf0e08da47413 getent.c
|
|
9d42d66fb1facce2b85dad919be5be819ee290bd26ca2db00982b2f8e055a0196290a008711cbe2b18ec9eee8d2270e3b3a4692c5a1b807013baa5c2b70a2bbf iconv.c"
|