commit: eb607794cd01eadc6812b245dd296a8539fba1a3
parent 5f7ae7d964d7b6cb51f3b2c13b326a3aa6ebb5e2
Author: fosslinux <fosslinux@aussies.space>
Date: Thu, 2 Feb 2023 21:45:12 +1100
Clean up TCC buildcode
It was unstandard & some files were not correctly in DESTDIR
Diffstat:
4 files changed, 41 insertions(+), 63 deletions(-)
diff --git a/sysa/tcc-0.9.27/tcc-mes-pass2.sh b/sysa/tcc-0.9.27/tcc-mes-pass2.sh
@@ -1,5 +1,5 @@
# SPDX-FileCopyrightText: 2021-2022 Andrius Štikonas <andrius@stikonas.eu>
-# SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
+# SPDX-FileCopyrightText: 2022-23 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -10,24 +10,18 @@ src_prepare() {
}
src_compile() {
- export libdir=${PREFIX}/lib/mes
- export incdir=${PREFIX}/include/
- export bindir=${PREFIX}/bin
-
- mkdir -p "${libdir}/tcc"
-
# We have to compile using tcc-0.9.26 as tcc-0.9.27 is not self-hosting when built with mes
tcc-0.9.26 \
-v \
-static \
-o tcc \
-D TCC_TARGET_I386=1 \
- -D CONFIG_TCCDIR=\""${libdir}/tcc"\" \
- -D CONFIG_TCC_CRTPREFIX=\""${libdir}"\" \
+ -D CONFIG_TCCDIR=\""${LIBDIR}/tcc"\" \
+ -D CONFIG_TCC_CRTPREFIX=\""${LIBDIR}"\" \
-D CONFIG_TCC_ELFINTERP=\"/mes/loader\" \
- -D CONFIG_TCC_LIBPATHS=\""${libdir}:${libdir}/tcc"\" \
- -D CONFIG_TCC_SYSINCLUDEPATHS=\""${incdir}"\" \
- -D TCC_LIBGCC=\""${libdir}/libc.a"\" \
+ -D CONFIG_TCC_LIBPATHS=\""${LIBDIR}:${LIBDIR}/tcc"\" \
+ -D CONFIG_TCC_SYSINCLUDEPATHS=\""${PREFIX}/include"\" \
+ -D TCC_LIBGCC=\""${LIBDIR}/libc.a"\" \
-D CONFIG_TCC_STATIC=1 \
-D CONFIG_USE_LIBGCC=1 \
-D TCC_VERSION=\"0.9.27\" \
@@ -36,10 +30,10 @@ src_compile() {
# libtcc1.a
tcc-0.9.26 -c -D HAVE_CONFIG_H=1 lib/libtcc1.c
- tcc-0.9.26 -ar cr "${libdir}/tcc/libtcc1.a" libtcc1.o
+ tcc-0.9.26 -ar cr libtcc1.a libtcc1.o
}
src_install() {
- # Remove old tcc binaries
- install -D tcc "${DESTDIR}${bindir}/tcc"
+ install -D libtcc1.a "${DESTDIR}${LIBDIR}/tcc/libtcc1.a"
+ install -D tcc "${DESTDIR}${PREFIX}/bin/tcc"
}
diff --git a/sysa/tcc-0.9.27/tcc-musl-pass1.sh b/sysa/tcc-0.9.27/tcc-musl-pass1.sh
@@ -1,5 +1,5 @@
# SPDX-FileCopyrightText: 2021-2022 Andrius Štikonas <andrius@stikonas.eu>
-# SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
+# SPDX-FileCopyrightText: 2022-23 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -10,42 +10,38 @@ src_prepare() {
}
src_compile() {
- export libdir=${LIBDIR}
- export incdir=${PREFIX}/include/musl
- export bindir=${PREFIX}/bin
-
- mkdir -p "${libdir}/tcc"
-
# 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.
+ ln -sf "${PREFIX}/lib/mes/tcc/libtcc1.a" ./libtcc1.a
+
for TCC in tcc-0.9.26 ./tcc-musl; do
- ${TCC} \
+ "${TCC}" \
-v \
-static \
-o tcc-musl \
-D TCC_TARGET_I386=1 \
- -D CONFIG_TCCDIR=\""${libdir}/tcc"\" \
- -D CONFIG_TCC_CRTPREFIX=\""${libdir}"\" \
+ -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_LIBPATHS=\""${LIBDIR}:${LIBDIR}/tcc"\" \
+ -D CONFIG_TCC_SYSINCLUDEPATHS=\""${PREFIX}/include/musl"\" \
+ -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 \
+ -B . \
tcc.c
# libtcc1.a
+ rm -f libtcc1.a
${TCC} -c -D HAVE_CONFIG_H=1 lib/libtcc1.c
- ${TCC} -ar cr "${libdir}/tcc/libtcc1.a" libtcc1.o
+ ${TCC} -ar cr libtcc1.a libtcc1.o
done
}
src_install() {
- # Remove old tcc binaries
- rm "${bindir}/tcc"
- rm "${bindir}"/boot*-tcc "${bindir}/tcc-0.9.26" "${bindir}/mes-tcc"
- install -D tcc-musl "${DESTDIR}${bindir}/tcc-musl"
- ln -s tcc-musl "${DESTDIR}${bindir}/tcc"
+ 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"
}
diff --git a/sysa/tcc-0.9.27/tcc-musl-pass2.sh b/sysa/tcc-0.9.27/tcc-musl-pass2.sh
@@ -1,5 +1,5 @@
# SPDX-FileCopyrightText: 2021-2022 Andrius Štikonas <andrius@stikonas.eu>
-# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
+# SPDX-FileCopyrightText: 2021-23 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -10,23 +10,17 @@ src_prepare() {
}
src_compile() {
- export libdir=${LIBDIR}
- 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_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_LIBPATHS=\""${LIBDIR}:${LIBDIR}/tcc"\" \
+ -D CONFIG_TCC_SYSINCLUDEPATHS=\""${PREFIX}/include/musl"\" \
+ -D TCC_LIBGCC=\""${LIBDIR}/libc.a"\" \
-D CONFIG_TCC_STATIC=1 \
-D CONFIG_USE_LIBGCC=1 \
-D TCC_VERSION=\"0.9.27\" \
@@ -39,6 +33,6 @@ src_compile() {
}
src_install() {
- install -D tcc-musl "${DESTDIR}${bindir}/tcc-musl"
- install -D -m 644 libtcc1.a "${DESTDIR}${libdir}/libtcc1.a"
+ install -D tcc-musl "${DESTDIR}${PREFIX}/bin/tcc-musl"
+ install -D -m 644 libtcc1.a "${DESTDIR}${LIBDIR}/libtcc1.a"
}
diff --git a/sysa/tcc-0.9.27/tcc-musl-pass3.sh b/sysa/tcc-0.9.27/tcc-musl-pass3.sh
@@ -1,5 +1,5 @@
# SPDX-FileCopyrightText: 2021-2022 Andrius Štikonas <andrius@stikonas.eu>
-# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
+# SPDX-FileCopyrightText: 2021-23 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later
@@ -10,28 +10,22 @@ src_prepare() {
}
src_compile() {
- export libdir=${LIBDIR}
- export incdir=${PREFIX}/include
- 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_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_LIBPATHS=\""${LIBDIR}:${LIBDIR}/tcc"\" \
+ -D CONFIG_TCC_SYSINCLUDEPATHS=\""${PREFIX}/include"\" \
+ -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 \
- -I "${incdir}" \
+ -I "${PREFIX}/include" \
tcc.c
# libtcc1.a
@@ -40,6 +34,6 @@ src_compile() {
}
src_install() {
- install -D tcc-musl "${DESTDIR}${bindir}/tcc-musl"
- install -D -m 644 libtcc1.a "${DESTDIR}${libdir}/libtcc1.a"
+ install -D tcc-musl "${DESTDIR}${PREFIX}/bin/tcc-musl"
+ install -D -m 644 libtcc1.a "${DESTDIR}${LIBDIR}/libtcc1.a"
}