Merge pull request #238 from fosslinux/some-fixes

Pre-GCC10 changeset
This commit is contained in:
Andrius Štikonas 2023-02-06 09:31:52 +00:00 committed by GitHub
commit 80085c00be
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 123 additions and 84 deletions

View File

@ -26,8 +26,8 @@ b2eab85c4a22060cc18945f6cb24cdf928fee370fff3fe12482e866a1cace586 automake-1.6.3
75c5f2c2f636c4d763eef650ffdf638ff372444dce74e5c9bfe7c5ec824c2a26 automake-1.8.5_0.tar.bz2
42fe9a42c457193e7bebf31b71eb28bc71e179ed9f2c78be242a5f6b03bbbbfe automake-1.9.6_0.tar.bz2
b2729f1d776d26fbf7781aeeb569e2550c484fb9d2722dd207542480de0d4879 bash-5.1_0.tar.bz2
c336e6ce463024af39e9db954bf781bee3d80c2c39d76f491b5261288485b77f binutils-2.14_0.tar.bz2
12d2aea83a512ff3971103aa9e5925c40536b5273c20267458f819658a7cf567 binutils-2.38_0.tar.bz2
a8c6912289e4f22416a014a59e4b78f7487e32d821e8d322cdafe290b12d7cb5 binutils-2.14_0.tar.bz2
9e5ed38a9abb8ba107321b1fe56fc6f8ebed22855daddb50416cf2ba2b14b9df binutils-2.38_0.tar.bz2
78035718b7ad659ba83f120405ad591f8ab0afb01f09805da7b3ab793d22a12c bison-2.3_0.tar.bz2
87dae598915deabe95a4ee75ec6cfed3a6e6da1a655c3ad90ee60ec07a7d87fa bison-3.4.1_0.tar.bz2
ae452f08ad9f7ab01f2a9bd882170e71ee6200a06f044f4aadb446cc68700016 bison-3.4.1_1.tar.bz2
@ -95,22 +95,22 @@ a04ac45d76a5432aa1f1492ec8787dd2834212568f95f65b17f7640892504458 python-2.0.1_0
bd94e4a3a5d1af32056f096d01982ed36498f75fdc06cff3aa8db8a4917cf0b0 python-2.0.1_1.tar.bz2
9817dd53e93c270836ee7b452a91dc0ceffdb766e572d87ae3cec8b5d2b8e5bf python-2.3.7_0.tar.bz2
fb79e89cca947ef64a6a2217e2940d196eea8e6f08ba39495809cbda29cfc94f python-2.3.7_1.tar.bz2
8d9164d477e25f5246f2ca900510d177a52ee19048b4fb8c8d0124d97a04e7c1 python-2.5.6_0.tar.bz2
55ba3a0385f3c255130c63cb9115b4106654616b84edbf20f55f9eb0543e4e89 python-3.1.5_0.tar.bz2
b980a12b7c6d2db906e0b89505bdf8f9a84753d2ff8c40dd71781c259c1cad33 python-3.1.5_1.tar.bz2
e0fad962606d883371463bc3de640210450c5291d62fe79a842ef275a2794310 python-3.11.1_0.tar.bz2
3f4deccf834b8cfb860c79248028fbc467ad59cf3cb7c7087e4eac2efec17f99 python-3.3.7_0.tar.bz2
d7e35b8dd5782e58e95b470ac9b748e8ed5eb7302a6608b9df695c8b2808f53f python-3.4.10_0.tar.bz2
48a91c0989c1ff8f666dc3677e04a12e1edd4579abc5c6303e8d7a286d385cc4 python-3.8.16_0.tar.bz2
de91c470e975d9a20d6d427600ed2862c8ca21a31fbaf5c056af7ce930fe04af python-2.5.6_0.tar.bz2
c97b05d20c257b2916235a75b031710799e1a3be52b0604a7c30c857374de6e3 python-3.11.1_0.tar.bz2
8ef30e614c73110210615233a14436585a9510af7e69865cc0a5ec7603f3458d python-3.1.5_0.tar.bz2
fae3711f59bc00492fcca8a9d0055a9d9cddde0e0c521c50c3c312c42d80539e python-3.1.5_1.tar.bz2
24e5c201274012347b7bc93cd1ce55320623766aa963c78e496e7602fea7c6b2 python-3.3.7_0.tar.bz2
cb8876ca5efcb397ee261e757b5415fe3ecdf8c37f19dbc35d6a15459bce612c python-3.4.10_0.tar.bz2
cc3cccfdeac242fb47a59b583d76cfa7e7049de0a37ff593722233c840021afc python-3.8.16_0.tar.bz2
8a0248fbf8fe1764580698415cc3628585d4dd054ddf63040f400e18cbaef7a4 sed-4.0.9_0.tar.bz2
177553732a080e25ba5778525743543e9da012122f4ad0d314a425ca87a3c2bd sed-4.8_0.tar.bz2
40040522e886fbd2634a115651089658d30935ff47f0649b08988cbade8ef418 tar-1.34_0.tar.bz2
5e7fdb405574717e3759144fab500954817ab8852d2da6111d43cb9fe77f01ac tcc-0.9.27_0.tar.bz2
6ae5088089614a95958db950172775b80041f8f9b245060ce2912b8eac88d045 tcc-0.9.27_1.tar.bz2
8d426edf2e5f4e15f413ea804d34fc48b8e2f25aa63764fa1aa89d2fa8931074 tcc-0.9.27_0.tar.bz2
1ec4d08220131bef47442006e781f9d698c4a353e05352b7c6dc2398c3a1ae56 tcc-0.9.27_1.tar.bz2
9de3d8e470f5e5ce773790ea4058d057cceda5cfca9c61411fda754a25c29210 tcc-0.9.27_2.tar.bz2
7fb6d95e08fa90ef5d75cd26f650984b18a96bd65465d4be1a50bb097bb30075 tcc-0.9.27_3.tar.bz2
4e27d5af7c7b9c6a38aebbedd09cc62ef7bc9d491afb3fd4c95de6b843423590 texinfo-6.7_0.tar.bz2
1b0befc770a21ae39e31930830142370a753b3b2e3158d4b335001e44ba96193 util-linux-2.19.1_0.tar.bz2
058ed60defd254a65046477b5db6431b9aad4455faa1b245952c18e5215ca0e7 util-linux-2.19.1_0.tar.bz2
284d176b39312795bf155b794fc3c02070ff788d19307e926429fa3299faf283 which-2.21_0.tar.bz2
08b846acf75e7777d5b671fe8e1d086fbc95208e4ccac4c214120fcd9df02cba xz-5.0.5_0.tar.bz2
db1439202155e771b37cfdefde179ebbe88a6f25ba4527dc2b979c0cb15b930e zlib-1.2.13_0.tar.bz2

View File

@ -1,5 +1,6 @@
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2021 Paul Dersey <pdersey@gmail.com>
# SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later
@ -119,7 +120,6 @@ src_configure() {
--build=i386-unknown-linux-gnu \
--host=i386-unknown-linux-gnu \
--target=i386-unknown-linux-gnu \
--with-sysroot="${PREFIX}" \
--disable-64-bit-bfd \
--prefix="${PREFIX}" \
--libdir="${LIBDIR}" \

View File

@ -0,0 +1,43 @@
SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space>
SPDX-License-Identifier: GPL-2.0-or-later
usr/<target> is an old, obselete location. Patch it out - we don't
want things there.
diff --color -ru binutils/Makefile.am binutils/Makefile.am
--- binutils/Makefile.am 2023-02-01 16:50:53.438231898 +1100
+++ binutils/Makefile.am 2023-02-01 16:51:30.269712861 +1100
@@ -7,7 +7,7 @@
SUBDIRS = doc po
-tooldir = $(exec_prefix)/$(target_alias)
+tooldir = $(exec_prefix)
## These aren't set by automake, because they appear in
## bfd/acinclude.m4, which is included by binutils/acinclude.m4, and
diff --color -ru gas/Makefile.am gas/Makefile.am
--- gas/Makefile.am 2023-02-01 16:50:53.494232626 +1100
+++ gas/Makefile.am 2023-02-01 16:51:33.857759722 +1100
@@ -7,7 +7,7 @@
SUBDIRS = doc po
-tooldir = $(exec_prefix)/$(target_alias)
+tooldir = $(exec_prefix)
YACC = `if [ -f ../bison/bison ] ; then echo ../bison/bison -y -L../bison/bison ; else echo @YACC@ ; fi`
LEX = `if [ -f ../flex/flex ] ; then echo ../flex/flex ; else echo @LEX@ ; fi`
diff --color -ru ld/Makefile.am ld/Makefile.am
--- ld/Makefile.am 2023-02-01 16:50:53.555233423 +1100
+++ ld/Makefile.am 2023-02-01 16:51:38.506820435 +1100
@@ -7,7 +7,7 @@
SUBDIRS = po
-tooldir = $(exec_prefix)/$(target_alias)
+tooldir = $(exec_prefix)
YACC = `if [ -f ../bison/bison ]; then echo ../bison/bison -y -L$(srcdir)/../bison/; else echo @YACC@; fi`
YFLAGS = -d

View File

@ -22,7 +22,8 @@ get_files() {
fs="${fs} $(echo .[0-z]*)"
fi
for f in ${fs}; do
if [ -d "${f}" ]; then
# Archive symlinks to directories as symlinks
if [ -d "${f}" ] && ! [ -h "${f}" ]; then
cd "${f}"
get_files "${prefix}/${f}"
cd ..

View File

@ -10,8 +10,7 @@ set -e
# shellcheck disable=SC2154
PREFIX="${prefix}"
# shellcheck disable=SC2034
LIBDIR="${prefix}/lib/i386-unknown-linux-musl"
LIBDIR="${PREFIX}/lib/mes"
# shellcheck disable=SC2154
SOURCES="${sysa}"
DISTFILES="${sysa}/distfiles"
@ -105,6 +104,9 @@ build flex-2.5.11
# Rebuild tcc with some patches
build tcc-0.9.27 tcc-mes-pass2.sh
# shellcheck disable=SC2034
LIBDIR="${PREFIX}/lib/i386-unknown-linux-musl"
build musl-1.1.24
# Rebuild tcc using musl

View File

@ -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"
}

View File

@ -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"
}

View File

@ -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"
}

View File

@ -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"
}

View File

@ -1,4 +1,4 @@
# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
# SPDX-FileCopyrightText: 2021-23 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later
@ -23,3 +23,11 @@ src_configure() {
--disable-wall \
ac_cv_type_loff_t=yes
}
src_install() {
default
# A weird behaviour I can't find the source of
mv "${DESTDIR}${PREFIX}/i386-unknown-linux-musl/"* "${DESTDIR}${LIBDIR}/"
rmdir "${DESTDIR}${PREFIX}/i386-unknown-linux-musl/"
}

View File

@ -1,6 +1,7 @@
# SPDX-FileCopyrightText: 2022 Dor Askayo <dor.askayo@gmail.com>
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2021 Paul Dersey <pdersey@gmail.com>
# SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later
@ -69,11 +70,10 @@ src_configure() {
--enable-install-libiberty \
--enable-deterministic-archives \
--with-system-zlib \
--build=i386-unknown-linux-gnu \
--host=i386-unknown-linux-gnu \
--target=i386-unknown-linux-gnu \
--build=i386-unknown-linux-musl \
--host=i386-unknown-linux-musl \
--target=i386-unknown-linux-musl \
--program-prefix="" \
--with-sysroot="${PREFIX}" \
--prefix="${PREFIX}" \
--libdir="${LIBDIR}" \
--srcdir=.
@ -92,4 +92,11 @@ src_install() {
for dir in libiberty bfd opcodes libctf binutils gas gprof ld; do
make -C $dir tooldir=${PREFIX} DESTDIR="${DESTDIR}" install
done
# Create triplet symlinks
pushd "${DESTDIR}${PREFIX}/bin"
for f in *; do
ln -s "${PREFIX}/bin/${f}" "i386-unknown-linux-musl-${f}"
done
popd
}