Rebuild musl libc after building tcc-musl, and then rebuild tcc-musl

This fixes an issue with printf not printing doubles or floats
correctly, and probably other subtle issues.

tcc-musl also uses floats extensively, so rebuild it as well, to fix
some other potential issues.

Update checksums for all resulting binaries which have now changed.

Co-authored-by: fosslinux <fosslinux@aussies.space>
This commit is contained in:
Paul Dersey 2021-02-19 11:14:54 -05:00 committed by fosslinux
parent 58fb72be92
commit 756ba1702b
21 changed files with 153 additions and 79 deletions

View file

@ -1 +0,0 @@
9819c29a2c8259883b4a97d6b57f2fdac87b9807ba9594f7c063601a7fe84af9 /after/bin/tcc-musl

View file

@ -0,0 +1,2 @@
9819c29a2c8259883b4a97d6b57f2fdac87b9807ba9594f7c063601a7fe84af9 /after/bin/tcc-musl
dd2f569a10a5bce7a8d264a9a04a86be9c3c1293df64c907370a8d5088c21e65 /after/lib/musl/tcc/libtcc1.a

View file

@ -0,0 +1,2 @@
0075b156a9dc64b63150b3cc020692f2242e1b4fffebccc743651e0bda4b5ca4 /after/bin/tcc-musl
a650b13efc65073fb851e9db89728089d8845c401f85faaa09801874ab058089 /after/lib/tcc/libtcc1.a

View file

@ -0,0 +1,49 @@
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2021 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later
src_unpack() {
# Our cp does not support recursive copying
tar -c -C ../src/ -f tcc-0.9.27.tar tcc-0.9.27/
tar -xf tcc-0.9.27.tar
}
src_prepare() {
patch -Np0 -i ../../patches/ignore-duplicate-symbols.patch
}
src_compile() {
export prefix=/after
export libdir=${prefix}/lib/musl
export incdir=${prefix}/include/musl
export bindir=${prefix}/bin
mkdir -p ${libdir}/tcc
tcc-musl \
-v \
-static \
-o tcc-musl \
-D TCC_TARGET_I386=1 \
-D CONFIG_TCCDIR=\"${libdir}/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"${libdir}\" \
-D CONFIG_TCC_ELFINTERP=\"/musl/loader\" \
-D CONFIG_TCC_LIBPATHS=\"${libdir}:${libdir}/tcc\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"${incdir}\" \
-D TCC_LIBGCC=\"${libdir}/libc.a\" \
-D CONFIG_TCC_STATIC=1 \
-D CONFIG_USE_LIBGCC=1 \
-D TCC_VERSION=\"0.9.27\" \
-D ONE_SOURCE=1 \
tcc.c
# libtcc1.a
${TCC} -c -D HAVE_CONFIG_H=1 lib/libtcc1.c
${TCC} -ar cr libtcc1.a libtcc1.o
}
src_install() {
install tcc-musl ${bindir}
install -m 644 libtcc1.a ${libdir}
}