Update to musl 1.2.4.

This commit is contained in:
Andrius Štikonas 2023-06-12 01:09:38 +01:00
parent f531e1cc5f
commit 914b84377a
18 changed files with 77 additions and 75 deletions

View file

@ -0,0 +1,8 @@
/*
* SPDX-FileCopyrightText: 2020 Timo Teräs <timo.teras@iki.fi>
*
* SPDX-License-Identifier: GPL-3.0-or-later
*/
extern void __stack_chk_fail(void);
void __attribute__((visibility ("hidden"))) __stack_chk_fail_local(void) { __stack_chk_fail(); }

View file

@ -0,0 +1 @@
/usr/lib/i386-unknown-linux-musl

View file

@ -0,0 +1,3 @@
SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
SPDX-License-Identifier: GPL-3.0-or-later

59
sysc/musl-1.2.4/musl-1.2.4.sh Executable file
View file

@ -0,0 +1,59 @@
# SPDX-FileCopyrightText: 2022 Dor Askayo <dor.askayo@gmail.com>
# SPDX-FileCopyrightText: 2022 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later
src_configure() {
./configure \
--host=i386-unknown-linux-musl \
--prefix="${PREFIX}" \
--libdir="${LIBDIR}" \
--includedir="${PREFIX}/include/"
}
src_compile() {
make "${MAKEJOBS}" CROSS_COMPILE=
# Provide libssp_nonshared.a to avoid GCC's messy libssp
# (Taken from Alpine Linux)
gcc -c __stack_chk_fail_local.c -o __stack_chk_fail_local.o
ar r libssp_nonshared.a __stack_chk_fail_local.o
}
src_install() {
default
# Install libssp_nonshared.a
install -m 644 libssp_nonshared.a "${DESTDIR}${PREFIX}/lib/"
# Make dynamic linker symlink relative in ${PREFIX}/lib
rm "${DESTDIR}/lib/ld-musl-i386.so.1"
rmdir "${DESTDIR}/lib"
mkdir -p "${DESTDIR}${PREFIX}/lib"
ln -sr "${DESTDIR}${LIBDIR}/libc.so" "${DESTDIR}${PREFIX}/lib/ld-musl-i386.so.1"
# Make startup objects available in /usr/lib
# Expected by GCC 10+
for i in crt1.o crti.o crtn.o Scrt1.o rcrt1.o; do
ln -sr "${DESTDIR}${LIBDIR}/${i}" "${DESTDIR}${PREFIX}/lib/${i}"
done
# Add symlink for ldd
mkdir -p "${DESTDIR}${PREFIX}/bin"
ln -s ../lib/ld-musl-i386.so.1 "${DESTDIR}${PREFIX}/bin/ldd"
# Add library search path configurtion
mkdir -p "${DESTDIR}/etc"
cp ld-musl-i386.path "${DESTDIR}/etc"
# Re-add /bin and /lib symlinks here so that binary package
# is self-contained and usable outside live-bootstrap
ln --symbolic --relative "${DESTDIR}/${PREFIX}/lib" "${DESTDIR}/lib"
ln --symbolic --relative "${DESTDIR}/${PREFIX}/bin" "${DESTDIR}/bin"
}
src_postprocess() {
# Stripping libc can cause some strange brokenness
:
}

1
sysc/musl-1.2.4/sources Normal file
View file

@ -0,0 +1 @@
https://musl.libc.org/releases/musl-1.2.4.tar.gz 7a35eae33d5372a7c0da1188de798726f68825513b7ae3ebe97aaaa52114f039