2022-05-09 19:55:26 +01:00
|
|
|
# SPDX-FileCopyrightText: 2021-2022 Andrius Štikonas <andrius@stikonas.eu>
|
2023-02-02 10:45:12 +00:00
|
|
|
# SPDX-FileCopyrightText: 2022-23 fosslinux <fosslinux@aussies.space>
|
2021-02-08 06:23:31 +00:00
|
|
|
#
|
|
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
|
2021-02-03 00:16:39 +00:00
|
|
|
src_prepare() {
|
2021-05-03 23:48:06 +01:00
|
|
|
default
|
2021-04-15 01:45:06 +01:00
|
|
|
|
|
|
|
touch config.h
|
2021-02-03 00:16:39 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
src_compile() {
|
|
|
|
# We first have to recompile using tcc-0.9.26 as tcc-0.9.27 is not self-hosting,
|
|
|
|
# but when linked with musl it is.
|
2023-02-02 10:45:12 +00:00
|
|
|
ln -sf "${PREFIX}/lib/mes/tcc/libtcc1.a" ./libtcc1.a
|
|
|
|
|
2022-01-14 10:53:30 +00:00
|
|
|
for TCC in tcc-0.9.26 ./tcc-musl; do
|
2023-02-02 10:45:12 +00:00
|
|
|
"${TCC}" \
|
2021-02-03 00:16:39 +00:00
|
|
|
-v \
|
|
|
|
-static \
|
2022-01-14 10:53:30 +00:00
|
|
|
-o tcc-musl \
|
2021-02-03 00:16:39 +00:00
|
|
|
-D TCC_TARGET_I386=1 \
|
2023-02-02 10:45:12 +00:00
|
|
|
-D CONFIG_TCCDIR=\""${LIBDIR}/tcc"\" \
|
|
|
|
-D CONFIG_TCC_CRTPREFIX=\""${LIBDIR}"\" \
|
2021-02-03 00:16:39 +00:00
|
|
|
-D CONFIG_TCC_ELFINTERP=\"/musl/loader\" \
|
2023-02-02 10:45:12 +00:00
|
|
|
-D CONFIG_TCC_LIBPATHS=\""${LIBDIR}:${LIBDIR}/tcc"\" \
|
2023-11-28 02:34:41 +00:00
|
|
|
-D CONFIG_TCC_SYSINCLUDEPATHS=\""${PREFIX}/include"\" \
|
2023-02-02 10:45:12 +00:00
|
|
|
-D TCC_LIBGCC=\""${LIBDIR}/libc.a"\" \
|
2021-02-03 00:16:39 +00:00
|
|
|
-D CONFIG_TCC_STATIC=1 \
|
|
|
|
-D CONFIG_USE_LIBGCC=1 \
|
|
|
|
-D TCC_VERSION=\"0.9.27\" \
|
|
|
|
-D ONE_SOURCE=1 \
|
2023-02-02 10:45:12 +00:00
|
|
|
-B . \
|
2021-02-03 00:16:39 +00:00
|
|
|
tcc.c
|
|
|
|
|
|
|
|
# libtcc1.a
|
2023-02-02 10:45:12 +00:00
|
|
|
rm -f libtcc1.a
|
2021-02-03 00:16:39 +00:00
|
|
|
${TCC} -c -D HAVE_CONFIG_H=1 lib/libtcc1.c
|
2023-02-02 10:45:12 +00:00
|
|
|
${TCC} -ar cr libtcc1.a libtcc1.o
|
2021-02-03 00:16:39 +00:00
|
|
|
done
|
|
|
|
}
|
|
|
|
|
|
|
|
src_install() {
|
2023-02-02 10:45:12 +00:00
|
|
|
install -D tcc-musl "${DESTDIR}${PREFIX}/bin/tcc-musl"
|
|
|
|
ln -s tcc-musl "${DESTDIR}${PREFIX}/bin/tcc"
|
|
|
|
install -D libtcc1.a "${DESTDIR}${LIBDIR}/tcc/libtcc1.a"
|
2021-02-03 00:16:39 +00:00
|
|
|
}
|