commit: 0ae0a83a123e2f14521fabeb70f8193defd5ab25
parent fdec1c0380ea9bf1a874bc3ab5bc75d863c0992b
Author: fosslinux <fosslinux@aussies.space>
Date: Thu, 1 Apr 2021 21:28:28 +1100
Merge pull request #77 from stikonas/xz
Xz
Diffstat:
47 files changed, 635 insertions(+), 217 deletions(-)
diff --git a/SHA256SUMS.sources b/SHA256SUMS.sources
@@ -7,6 +7,13 @@ f757158a04889b265203eecd8ca92568e2a67c3b9062fa6bff7a0a6efd2244ac autoconf-2.55.
e1035aa2c21fae2a934d1ab56c774ce9d22717881dab8a1a5b16d294fb793489 autoconf-2.57.tar.bz2
f0cde70a8f135098a6a3e85869f2e1cc3f141beea766fa3d6636e086cd8b90a7 autoconf-2.59.tar.bz2
93a2ceab963618b021db153f0c881a2de82455c1dc7422be436fcd5c554085a1 autoconf-2.61.tar.bz2
+db11944057f3faf229ff5d6ce3fcd819f565455c152b72cec17ebc1cbb80136b autoconf-2.65.tar.bz2
+64ebcec9f8ac5b2487125a86a7760d2591ac9e1d3dbd59489633f9de62a57684 autoconf-2.69.tar.xz
+e98ab43bb839c31696a4202e5b6ff388b391659ef2387cf9365019fad17e1adc automake-1.10.3.tar.bz2
+4f46d1f9380c8a3506280750f630e9fc915cb1a435b724be56b499d016368718 automake-1.11.2.tar.bz2
+f834ab2145b1ee24bd85387950044f5cb418dd0af2b84c52e60c2bf29162dbfa automake-1.12.6.tar.xz
+89ce4933f59b8f0c20115c39cfe450a595cca74ede27b6881e88ec27720d1d66 automake-1.13.4.tar.xz
+af6ba39142220687c500f79b4aa2f181d9b24e4f8d8ec497cea4ba26c64bedaf automake-1.15.1.tar.xz
503cdc2b0992a4309545d17f462cb15f99bb57b7161dfc4082b2e7188f2bcc0f automake-1.4-p6.tar.gz
0dbafacaf21e135cab35d357a14bdcd981d2f2d00e1387801be8091a31b7bb81 automake-1.6.3.tar.bz2
2dddc3b51506e702647ccc6757e15c05323fa67245d2d53e81ed36a832f9be42 automake-1.7.8.tar.bz2
@@ -21,6 +28,7 @@ ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269 bzip2-1.0.8.ta
c25b36b8af6e0ad2a875daf4d6196bd0df28a62be7dd252e5f99a4d5d7288d95 coreutils-5.0.tar.bz2
1d013547889f20576460249c4210632d5314531c8477378a2e046b13a8ebeb7e coreutils-6.10.tar.gz
d5f2489c4056a31528e3ada4adacc23d498532b0af1a980f2f76158162b139d6 diffutils-2.7.tar.gz
+813cd9405aceec5cfecbe96400d01e90ddad7b512d3034487176ce5258ab0f78 findutils-4.2.33.tar.gz
bc79b890f35ca38d66ff89a6e3758226131e51ccbd10ef78d5ff150b7bd73689 flex-2.5.11.tar.gz
e87aae032bf07c26f85ac0ed3250998c37621d95f8bd748b31f15b33c45ee995 flex-2.6.4.tar.gz
5cc35def1ff4375a8b9a98c2ff79e95e80987d24f0d42fdbb7b7039b3ddb3fb0 gawk-3.0.4.tar.gz
@@ -30,6 +38,7 @@ a32032bab36208509466654df12f507600dfe0313feebbcd218c32a70bf72a16 grep-2.4.tar.g
9f233d8b78e4351fe9dd2d50d83958a0e5af36f54e9818521458a08e058691ba heirloom-devtools-070527.tar.bz2
a4adadf76b496a6bc50795702253ecfcb6f0d159b68038f31a5362009340bca2 help2man-1.36.4.tar.gz
8e8ce6175d435e7df8c9bbb0e5fd5357691cdc28c1a2d00fdd9b47b7643bec3a libtool-1.4.tar.gz
+c4e63399b12f5858d11c44cea8e92f21cd564f8548e488dadc84046b424c80fc libtool-2.2.4.tar.bz2
093c993767f563a11e41c1cf887f4e9065247129679d4c1e213d0544d16d8303 m4-1.4.7.tar.gz
64b30b41fde2ebf669e6af489883fb1df6a06ac30555a96cfa3c39ecce7267dd make-3.80.tar.gz
1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3 musl-1.1.24.tar.gz
@@ -43,3 +52,4 @@ a5e66f6ebf701b0567f569f57cae82abf5ce57af70a2b45ae71323b61f49134e perl-5.6.2.tar
c365874794187f8444e5d22998cd5888ffa47f36def4b77517a808dec27c0600 sed-4.0.9.tar.gz
404a8d72427a559c074e581bf8f7d5a73283faf249cd3faf6dc1c6faf97d07c7 sha-2-61555d.tar.gz
c6c37e888b136ccefab903c51149f4b7bd659d69d4aea21245f61053a57aa60a tar-1.12.tar.gz
+166c48d2842519bc4f96333bff9e265f8cdda44d38e40594ef3f9bbb52890490 xz-5.0.5.tar.bz2
diff --git a/parts.rst b/parts.rst
@@ -423,11 +423,6 @@ In particular we can now use full featured ``ar`` instead of ``tcc -ar``,
the GNU linker ``ld``, which allows us building shared libraries,
and the GNU assembler ``as``.
-libtool 1.4
-===========
-
-Rebuild libtool, so that it uses GNU binutils when creating shared libraries.
-
musl 1.1.24 (v3)
================
@@ -509,6 +504,29 @@ automake 1.9.6
Latest GNU Automake from 1.9 series. Slightly annoyingly depends itself but it is easy to patch
to make it buildable with 1.8.5. Then we rebuild ``automake-1.9`` with itself.
+findutils 4.2.33
+================
+
+GNU Find Utilities can be used to search for files. We are mainly interested
+in ``find`` and ``xargs`` that are often used in scripts.
+
+libtool 2.2.4
+=============
+
+Newer version of libtool which is more compatible with modern Autotools.
+
+automake 1.10.3
+===============
+
+GNU Automake from 1.10 series. ``aclocal`` is slightly patched to work
+with our ``perl``.
+
+autoconf 2.65
+=============
+
+Slightly newer version of GNU Autoconf. At this stage Autoconf is mostly
+backwards compatible but newer versions need newer ``automake``.
+
gcc 4.0.4
=========
@@ -518,6 +536,10 @@ compiler for most projects related to GNU and the Linux kernel.
Only the C frontend is built at this stage.
+At this stage we are not yet able to regenerate top-level ``Makefile.in``
+which needs GNU Autogen and hence Guile. Luckily, building GCC without
+top-level ``Makefile`` is fairly easy.
+
musl 1.2.2
==========
@@ -538,3 +560,37 @@ interactively. This new version of ``bash`` compiles without any patches,
provides new features, and is built with GNU readline support so it can be used
as an interactive shell. ``autoconf-2.61`` is used to regenerate the configure
script and ``bison`` is used to recreate some included generated files.
+
+xz 5.0.5
+========
+
+XZ Utils is a set of free software command-line lossless data compressors,
+including lzma and xz. In most cases, xz achieves higher compression rates
+than alternatives like gzip and bzip2.
+
+automake 1.11.2
+===============
+
+GNU Automake from 1.11 series. This is not the latest point release as newer ones
+need Autoconf 2.68.
+
+autoconf 2.69
+=============
+
+This the final version of GNU Autoconf that we will require. There are some newer
+versions but we won't need them.
+
+automake 1.12.6
+===============
+
+GNU Automake from 1.12 series.
+
+automake 1.13.4
+===============
+
+GNU Automake from 1.13 series.
+
+automake 1.15.1
+===============
+
+GNU Automake from 1.15 series. This is the last version that runs on Perl 5.6.
diff --git a/rootfs.sh b/rootfs.sh
@@ -258,6 +258,18 @@ get_file https://ftp.gnu.org/gnu/autoconf/autoconf-2.61.tar.bz2
# automake 1.9.6
get_file https://ftp.gnu.org/gnu/automake/automake-1.9.6.tar.bz2
+# findutils 4.2.33
+get_file https://ftp.gnu.org/gnu/findutils/findutils-4.2.33.tar.gz
+
+# libtool 2.2.4
+get_file https://ftp.gnu.org/gnu/libtool/libtool-2.2.4.tar.bz2
+
+# automake 1.10.3
+get_file https://ftp.gnu.org/gnu/automake/automake-1.10.3.tar.bz2
+
+# autoconf 2.65
+get_file https://ftp.gnu.org/gnu/autoconf/autoconf-2.65.tar.bz2
+
# gcc 4.0.4
get_file https://ftp.gnu.org/gnu/gcc/gcc-4.0.4/gcc-core-4.0.4.tar.bz2 0 gcc-4.0.4.tar.bz2
@@ -267,6 +279,24 @@ get_file https://musl.libc.org/releases/musl-1.2.2.tar.gz
# bash 5.1
get_file https://ftp.gnu.org/gnu/bash/bash-5.1.tar.gz
+# xz 5.0.5
+get_file https://tukaani.org/xz/xz-5.0.5.tar.bz2
+
+# automake 1.11.2
+get_file https://ftp.gnu.org/gnu/automake/automake-1.11.2.tar.bz2
+
+# autoconf 2.69
+get_file https://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.xz
+
+# automake 1.12.6
+get_file https://ftp.gnu.org/gnu/automake/automake-1.12.6.tar.xz
+
+# automake 1.13.4
+get_file https://ftp.gnu.org/gnu/automake/automake-1.13.4.tar.xz
+
+# automake 1.15.1
+get_file https://ftp.gnu.org/gnu/automake/automake-1.15.1.tar.xz
+
# General cleanup
find tmp -name .git -exec rm -rf \;
diff --git a/sysa/autoconf-2.61/stage2.sh b/sysa/autoconf-2.61/stage2.sh
@@ -3,7 +3,6 @@
# SPDX-License-Identifier: GPL-3.0-or-later
src_prepare() {
- sed -i -e '/AC_PROG_GREP/d' -e '/AC_PROG_SED/d' configure.ac
autoreconf-2.61 -f
# Install autoconf data files into versioned directory
diff --git a/sysa/autoconf-2.65/autoconf-2.65.sh b/sysa/autoconf-2.65/autoconf-2.65.sh
@@ -0,0 +1,29 @@
+# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+src_prepare() {
+ autoreconf-2.61 -f
+
+ # Install autoconf data files into versioned directory
+ for file in */*/Makefile.in */Makefile.in Makefile.in; do
+ sed -i '/^pkgdatadir/s:$:-@VERSION@:' $file
+ done
+}
+
+src_configure() {
+ ./configure --prefix="${PREFIX}" --program-suffix=-2.65
+}
+
+src_compile() {
+ make MAKEINFO=true
+}
+
+src_install() {
+ make install MAKEINFO=true
+
+ ln -sf "${PREFIX}/bin/autoconf-2.65" "${PREFIX}/bin/autoconf"
+ ln -sf "${PREFIX}/bin/autoheader-2.65" "${PREFIX}/bin/autoheader"
+ ln -sf "${PREFIX}/bin/autom4te-2.65" "${PREFIX}/bin/autom4te"
+ ln -sf "${PREFIX}/bin/autoreconf-2.65" "${PREFIX}/bin/autoreconf"
+}
diff --git a/sysa/autoconf-2.69/autoconf-2.69.sh b/sysa/autoconf-2.69/autoconf-2.69.sh
@@ -0,0 +1,29 @@
+# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+src_prepare() {
+ autoreconf-2.65 -f
+
+ # Install autoconf data files into versioned directory
+ for file in */*/Makefile.in */Makefile.in Makefile.in; do
+ sed -i '/^pkgdatadir/s:$:-@VERSION@:' $file
+ done
+}
+
+src_configure() {
+ ./configure --prefix="${PREFIX}" --program-suffix=-2.69
+}
+
+src_compile() {
+ make MAKEINFO=true
+}
+
+src_install() {
+ make install MAKEINFO=true
+
+ ln -sf "${PREFIX}/bin/autoconf-2.69" "${PREFIX}/bin/autoconf"
+ ln -sf "${PREFIX}/bin/autoheader-2.69" "${PREFIX}/bin/autoheader"
+ ln -sf "${PREFIX}/bin/autom4te-2.69" "${PREFIX}/bin/autom4te"
+ ln -sf "${PREFIX}/bin/autoreconf-2.69" "${PREFIX}/bin/autoreconf"
+}
diff --git a/sysa/automake-1.10.3/automake-1.10.3.sh b/sysa/automake-1.10.3/automake-1.10.3.sh
@@ -0,0 +1,21 @@
+# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+src_prepare() {
+ default_src_prepare
+
+ autoreconf-2.61 -f
+}
+
+src_configure() {
+ ./configure CC=tcc --prefix=/after
+}
+
+src_compile() {
+ make MAKEINFO=true CC=tcc
+}
+
+src_install() {
+ make install MAKEINFO=true
+}
diff --git a/sysa/automake-1.10.3/patches/aclocal_glob.patch b/sysa/automake-1.10.3/patches/aclocal_glob.patch
@@ -0,0 +1,16 @@
+SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+
+SPDX-License-Identifier: GPL-2.0-or-later
+
+Fixes aclocal-1.10 to work with our Perl
+
+--- aclocal.in 2021-03-25 19:18:10.489134059 +0000
++++ aclocal.in 2021-03-25 19:18:20.159389339 +0000
+@@ -45,6 +45,7 @@
+ use Automake::FileUtils;
+ use File::Basename;
+ use File::stat;
++use File::Glob;
+ use Cwd;
+
+ # Some globals.
diff --git a/sysa/automake-1.11.2/automake-1.11.2.sh b/sysa/automake-1.11.2/automake-1.11.2.sh
@@ -0,0 +1,21 @@
+# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+src_prepare() {
+ default_src_prepare
+
+ ./bootstrap
+}
+
+src_configure() {
+ ./configure --prefix=/after
+}
+
+src_compile() {
+ make MAKEINFO=true
+}
+
+src_install() {
+ make install MAKEINFO=true
+}
diff --git a/sysa/automake-1.11.2/patches/aclocal_glob.patch b/sysa/automake-1.11.2/patches/aclocal_glob.patch
@@ -0,0 +1,16 @@
+SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+
+SPDX-License-Identifier: GPL-2.0-or-later
+
+Fixes aclocal-1.10 to work with our Perl
+
+--- aclocal.in 2021-03-25 19:18:10.489134059 +0000
++++ aclocal.in 2021-03-25 19:18:20.159389339 +0000
+@@ -45,6 +45,7 @@
+ use Automake::FileUtils;
+ use File::Basename;
+ use File::stat;
++use File::Glob;
+ use Cwd;
+
+ # Some globals.
diff --git a/sysa/automake-1.12.6/automake-1.12.6.sh b/sysa/automake-1.12.6/automake-1.12.6.sh
@@ -0,0 +1,21 @@
+# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+src_prepare() {
+ default_src_prepare
+
+ autoreconf-2.69 -f
+}
+
+src_configure() {
+ ./configure --prefix=/after
+}
+
+src_compile() {
+ make MAKEINFO=true CC=tcc
+}
+
+src_install() {
+ make install MAKEINFO=true
+}
diff --git a/sysa/automake-1.12.6/patches/aclocal_glob.patch b/sysa/automake-1.12.6/patches/aclocal_glob.patch
@@ -0,0 +1,16 @@
+SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+
+SPDX-License-Identifier: GPL-2.0-or-later
+
+Fixes aclocal to work with our Perl
+
+--- aclocal.in 2021-03-31 18:19:50.665806225 +0100
++++ aclocal.in 2021-03-31 18:20:02.836132739 +0100
+@@ -42,6 +42,7 @@
+ use Automake::XFile;
+ use Automake::FileUtils;
+ use File::Basename;
++use File::Glob;
+ use File::Path ();
+
+ # Some globals.
diff --git a/sysa/automake-1.13.4/automake-1.13.4.sh b/sysa/automake-1.13.4/automake-1.13.4.sh
@@ -0,0 +1,21 @@
+# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+src_prepare() {
+ default_src_prepare
+
+ autoreconf-2.69 -f
+}
+
+src_configure() {
+ ./configure --prefix=/after
+}
+
+src_compile() {
+ make MAKEINFO=true CC=tcc
+}
+
+src_install() {
+ make install MAKEINFO=true
+}
diff --git a/sysa/automake-1.13.4/patches/aclocal_glob.patch b/sysa/automake-1.13.4/patches/aclocal_glob.patch
@@ -0,0 +1,16 @@
+SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+
+SPDX-License-Identifier: GPL-2.0-or-later
+
+Fixes aclocal to work with our Perl
+
+--- aclocal.in 2021-03-31 18:19:50.665806225 +0100
++++ aclocal.in 2021-03-31 18:20:02.836132739 +0100
+@@ -42,6 +42,7 @@
+ use Automake::XFile;
+ use Automake::FileUtils;
+ use File::Basename;
++use File::Glob;
+ use File::Path ();
+
+ # Some globals.
diff --git a/sysa/automake-1.15.1/automake-1.15.1.sh b/sysa/automake-1.15.1/automake-1.15.1.sh
@@ -0,0 +1,21 @@
+# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+src_prepare() {
+ default_src_prepare
+
+ ./bootstrap
+}
+
+src_configure() {
+ ./configure --prefix=/after
+}
+
+src_compile() {
+ make MAKEINFO=true CC=tcc
+}
+
+src_install() {
+ make install MAKEINFO=true
+}
diff --git a/sysa/automake-1.15.1/patches/aclocal_glob.patch b/sysa/automake-1.15.1/patches/aclocal_glob.patch
@@ -0,0 +1,16 @@
+SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+
+SPDX-License-Identifier: GPL-2.0-or-later
+
+Fixes aclocal to work with our Perl
+
+--- bin/aclocal.in 2021-03-31 18:19:50.665806225 +0100
++++ bin/aclocal.in 2021-03-31 18:20:02.836132739 +0100
+@@ -42,6 +42,7 @@
+ use Automake::XFile;
+ use Automake::FileUtils;
+ use File::Basename;
++use File::Glob;
+ use File::Path ();
+
+ # Some globals.
diff --git a/sysa/automake-1.15.1/patches/bootstrap.patch b/sysa/automake-1.15.1/patches/bootstrap.patch
@@ -0,0 +1,17 @@
+SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+
+SPDX-License-Identifier: GPL-2.0-or-later
+
+Fixes dependency of bootstrapping script
+
+--- gen-testsuite-part 2017-06-16 21:46:16.000000000 +0100
++++ gen-testsuite-part 2021-04-01 00:02:46.801098617 +0100
+@@ -64,8 +64,6 @@
+ $func->($fh);
+ close $fh
+ or die "$me: closing '$tmpfile': $!\n";
+- chmod ($perms & ~umask, $tmpfile)
+- or die "$me: cannot change perms for '$tmpfile': $!\n";
+ rename ($tmpfile, $outfile)
+ or die "$me: renaming '$tmpfile' -> '$outfile: $!\n'";
+ }
diff --git a/sysa/coreutils-6.10/coreutils-6.10.sh b/sysa/coreutils-6.10/coreutils-6.10.sh
@@ -14,8 +14,8 @@ src_prepare() {
mv getdate.tab.c getdate.c
cd ..
- catm config.h
- catm lib/configmake.h
+ touch config.h
+ touch lib/configmake.h
}
src_compile() {
diff --git a/sysa/findutils-4.2.33/checksums b/sysa/findutils-4.2.33/checksums
@@ -0,0 +1,7 @@
+924989f313c37f19d4b2474472e136509ea5a60a4dc71e5a6ff8c164ae10fc2e /after/bin/find
+4490fa824400fc7b6fc2f3654bae804dc8e39ad5fb337164582b66a0d995b66e /after/bin/locate
+166aa2887502c997f2cd7ea7eeebea3800e79011bc9985ab31a34f74caefa8cb /after/bin/updatedb
+a8d6f39cd9a1529b45ab1d9c7b0ba89ccf9ac62d843930c4a0ac7a9be0b98979 /after/bin/xargs
+4425d7195722f3d023e00fc1cc2e215f0eac361e83e6aabb97ad6b091b04be06 /after/libexec/bigram
+10cf4b0bb69151e715f3f0e107d5345fb55c8b65bb177c88f605a79240b373fb /after/libexec/code
+2403193f202677d90ac3cc4da32fe367bd73ba748b46afaf2cad1f3f1ae665db /after/libexec/frcode
diff --git a/sysa/findutils-4.2.33/findutils-4.2.33.sh b/sysa/findutils-4.2.33/findutils-4.2.33.sh
@@ -0,0 +1,12 @@
+# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+src_prepare() {
+ autoreconf-2.61 -f
+}
+
+src_configure() {
+ # Musl is not recognized, pretend to be uClibc
+ CC=tcc ./configure --prefix="${PREFIX}" CPPFLAGS="-D__UCLIBC__"
+}
diff --git a/sysa/gcc-4.0.4/checksums/pass1 b/sysa/gcc-4.0.4/checksums/pass1
@@ -1,10 +1,9 @@
-6ca1ff5a1dd835e2378a8d827c5ec8a68121c7b5c719ab56f71f9d717b8e007e /after/bin/cpp
-236bb12f3c0b6fb28dee325dfcfcf1cd87dc057aaac307e76a7124c4d071c349 /after/bin/gcc
-236bb12f3c0b6fb28dee325dfcfcf1cd87dc057aaac307e76a7124c4d071c349 /after/bin/i386-unknown-linux-gnu-gcc
-236bb12f3c0b6fb28dee325dfcfcf1cd87dc057aaac307e76a7124c4d071c349 /after/bin/i386-unknown-linux-gnu-gcc-4.0.4
-903b1dae32b217048b1a35a934836496027e6947b77f5711cb8714cd5241dda0 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/cc1
-711689a618e34a0cff2c6061e554f9a2f9d447a7623bd46ba11c2eb816932883 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/collect2
-a3fbed284b1efaf6fccfc81eddd9bad8c4cf07673b16e8885ad6f31a1569c9b4 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/install-tools/fixincl
+dab0ba7d7f68cc03646b367619c3be4ebf16c39fb217a105019d5162df42947f /after/bin/cpp
+773e7a59b9b0c6e7695ac77ebf566c547959d3991743f09bd0c6467e64e4a7c7 /after/bin/gcc
+773e7a59b9b0c6e7695ac77ebf566c547959d3991743f09bd0c6467e64e4a7c7 /after/bin/i386-unknown-linux-gnu-gcc
+773e7a59b9b0c6e7695ac77ebf566c547959d3991743f09bd0c6467e64e4a7c7 /after/bin/i386-unknown-linux-gnu-gcc-4.0.4
+df9f52d38e64514296964c5fbcd8ce2aba011d6ff47f15b6fd9158aed193dbcf /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/cc1
+9b8dc5d577de150dcb61150086481d2205aed982344cf059d51c8dc88c5ba9a4 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/collect2
de4566c661258fa626ea7076e6c57af95c01d0786bcdadb12af23852cc421a2a /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbegin.o
c7eea5e845fe2ee5538704d59c6e777d4f72b7100e78d5f86f8d95d96ab2ec20 /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbeginS.o
de4566c661258fa626ea7076e6c57af95c01d0786bcdadb12af23852cc421a2a /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbeginT.o
diff --git a/sysa/gcc-4.0.4/checksums/pass2 b/sysa/gcc-4.0.4/checksums/pass2
@@ -1,10 +1,9 @@
-22234bd8a949cfab257e10e97a3e990ebb79a75afc5f50e875586bb9367910a7 /after/bin/cpp
-a47e2b29f19aa69b4a40757accd73307f6b51bc9ebcc101aa628906d7c2d3b67 /after/bin/gcc
-a47e2b29f19aa69b4a40757accd73307f6b51bc9ebcc101aa628906d7c2d3b67 /after/bin/i386-unknown-linux-gnu-gcc
-a47e2b29f19aa69b4a40757accd73307f6b51bc9ebcc101aa628906d7c2d3b67 /after/bin/i386-unknown-linux-gnu-gcc-4.0.4
-9d4c0a3b340c1c22b81dd450ef894b02323e059c56cd3ceff423ee316f0ac0a2 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/cc1
-ada38c050d3b2e6e96da2db86dbabebbd2c4cc4bdc2ba258358af9c64e882bed /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/collect2
-7c335c92800b34be9a3add28d529657812f62ec066b4c2a2dcba28c65f6d4e34 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/install-tools/fixincl
+49099736ba74bd065e8767ed1ae5e9eaff93993ada8a9106ea38fb1d46fb9c65 /after/bin/cpp
+87f9d3a527ebcd88f23a3fbdc32ed383c76dc234a128cf8ff31ebc7b75e7a4b3 /after/bin/gcc
+87f9d3a527ebcd88f23a3fbdc32ed383c76dc234a128cf8ff31ebc7b75e7a4b3 /after/bin/i386-unknown-linux-gnu-gcc
+87f9d3a527ebcd88f23a3fbdc32ed383c76dc234a128cf8ff31ebc7b75e7a4b3 /after/bin/i386-unknown-linux-gnu-gcc-4.0.4
+f853f77a4f040eee8cda44d5b96e751e58874ac814118848994785df2e9f7490 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/cc1
+29c521d36c748731b4fa2afca2a9d94565da795312d51cf5f1032f3397537514 /after/libexec/gcc/i386-unknown-linux-gnu/4.0.4/collect2
a07db1648128987f10debb1730b4456c0423aab5bd93d68e4f2b47447a11c5d9 /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbegin.o
20a3bbbd5cd59b91660628d416d489437463b651fa15b5ea5f026b45c9e35b65 /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbeginS.o
a07db1648128987f10debb1730b4456c0423aab5bd93d68e4f2b47447a11c5d9 /after/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/crtbeginT.o
diff --git a/sysa/gcc-4.0.4/pass1.sh b/sysa/gcc-4.0.4/pass1.sh
@@ -14,8 +14,10 @@ src_prepare() {
# Needed for musl
sed -i 's/struct siginfo/siginfo_t/' gcc/config/i386/linux-unwind.h
- rm configure
- autoconf-2.13
+ # Regenerating top level Makefile requires GNU Autogen and hence Guile,
+ # but it is not essential for building gcc.
+ rm configure Makefile.in fixincludes/fixincl.x
+
for dir in intl libcpp; do
cd $dir
rm aclocal.m4
@@ -29,7 +31,7 @@ src_prepare() {
cd ..
done
cd libmudflap
- autoreconf-2.61 -f
+ AUTOMAKE=automake-1.10 ACLOCAL=aclocal-1.10 AUTOM4TE=autom4te-2.61 autoreconf-2.61 -f
cd ..
for dir in fixincludes intl libmudflap; do
@@ -42,6 +44,7 @@ src_prepare() {
# Rebuild libtool files
rm config.guess config.sub ltmain.sh
libtoolize
+ cp "${PREFIX}/"/share/automake-1.9/config.sub .
# Rebuild bison files
# Workaround for bison being too new
@@ -60,14 +63,20 @@ src_prepare() {
src_configure() {
mkdir build
cd build
- CC=tcc CFLAGS="-D HAVE_ALLOCA_H" ../configure \
- --prefix="${PREFIX}" \
- --libdir="${PREFIX}"/lib/musl \
- --build=i386-unknown-linux-gnu \
- --host=i386-unknown-linux-gnu \
- --disable-shared \
- --disable-nls \
- --disable-libmudflap
+
+ for dir in libiberty libcpp gcc; do
+ mkdir $dir
+ cd $dir
+ CC=tcc CFLAGS="-D HAVE_ALLOCA_H" ../../$dir/configure \
+ --prefix="${PREFIX}" \
+ --libdir="${PREFIX}"/lib/musl \
+ --build=i386-unknown-linux-gnu \
+ --target=i386-unknown-linux-gnu \
+ --host=i386-unknown-linux-gnu \
+ --disable-shared \
+ --program-transform-name=
+ cd ..
+ done
cd ..
sed -i 's/C_alloca/alloca/g' libiberty/alloca.c
@@ -75,11 +84,13 @@ src_configure() {
}
src_compile() {
- mkdir -p /usr/
- ln -sf "${PREFIX}"/include /usr/include
- make -C build LIBGCC2_INCLUDES=-I"${PREFIX}/include/musl"
+ ln -s . build/build-i386-unknown-linux-gnu
+ for dir in libiberty libcpp gcc; do
+ make -C build/$dir LIBGCC2_INCLUDES=-I"${PREFIX}/include/musl" STMP_FIXINC=
+ done
}
src_install() {
- make -C build install
+ mkdir -p "${PREFIX}/lib/musl/gcc/i386-unknown-linux-gnu/4.0.4/install-tools/include"
+ make -C build/gcc install STMP_FIXINC=
}
diff --git a/sysa/gcc-4.0.4/pass2.sh b/sysa/gcc-4.0.4/pass2.sh
@@ -13,8 +13,10 @@ src_prepare() {
# Needed for musl
sed -i 's/struct siginfo/siginfo_t/' gcc/config/i386/linux-unwind.h
- rm configure
- autoconf-2.13
+ # Regenerating top level Makefile requires GNU Autogen and hence Guile,
+ # but it is not essential for building gcc.
+ rm configure Makefile.in fixincludes/fixincl.x
+
for dir in intl libcpp; do
cd $dir
rm aclocal.m4
@@ -28,7 +30,7 @@ src_prepare() {
cd ..
done
cd libmudflap
- autoreconf-2.61 -f
+ AUTOMAKE=automake-1.10 ACLOCAL=aclocal-1.10 AUTOM4TE=autom4te-2.61 autoreconf-2.61 -f
cd ..
for dir in fixincludes intl libmudflap; do
@@ -41,6 +43,7 @@ src_prepare() {
# Rebuild libtool files
rm config.guess config.sub ltmain.sh
libtoolize
+ cp "${PREFIX}/"/share/automake-1.9/config.sub .
# Rebuild bison files
# Workaround for bison being too new
@@ -59,23 +62,30 @@ src_prepare() {
src_configure() {
mkdir build
cd build
- ../configure \
- --prefix="${PREFIX}" \
- --libdir="${PREFIX}"/lib/musl \
- --build=i386-unknown-linux-gnu \
- --host=i386-unknown-linux-gnu \
- --disable-shared \
- --disable-nls \
- --disable-libmudflap
+
+ for dir in libiberty libcpp gcc; do
+ mkdir $dir
+ cd $dir
+ ../../$dir/configure \
+ --prefix="${PREFIX}" \
+ --libdir="${PREFIX}"/lib/musl \
+ --build=i386-unknown-linux-gnu \
+ --target=i386-unknown-linux-gnu \
+ --host=i386-unknown-linux-gnu \
+ --disable-shared \
+ --program-transform-name=
+ cd ..
+ done
cd ..
}
src_compile() {
- mkdir -p /usr/
- ln -sf "${PREFIX}"/include /usr/include
- make -C build LIBGCC2_INCLUDES=-I"${PREFIX}/include/musl"
+ ln -s . build/build-i386-unknown-linux-gnu
+ for dir in libiberty libcpp gcc; do
+ make -C build/$dir LIBGCC2_INCLUDES=-I"${PREFIX}/include/musl" STMP_FIXINC=
+ done
}
src_install() {
- make -C build install
+ make -C build/gcc install STMP_FIXINC=
}
diff --git a/sysa/libtool-1.4/checksums/pass1 b/sysa/libtool-1.4/checksums
diff --git a/sysa/libtool-1.4/checksums/pass2 b/sysa/libtool-1.4/checksums/pass2
@@ -1,2 +0,0 @@
-23a6e91bff3d5bac9b0317b60bd1c999f94846f62085bf4d227dfa8499120d22 /after/lib/musl/libltdl.a
-c247c7c1516ed35414c8b038535969a67ce4bbfd2abdfed85a89941bca09d55d /after/lib/musl/libltdl.la
diff --git a/sysa/libtool-1.4/libtool-1.4.sh b/sysa/libtool-1.4/libtool-1.4.sh
@@ -0,0 +1,23 @@
+# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+src_prepare() {
+ default_src_prepare
+
+ AUTOCONF=autoconf-2.13 AUTOHEADER=autoheader-2.13 ACLOCAL=aclocal-1.4 AUTOMAKE=automake-1.4 ./bootstrap
+}
+
+src_configure() {
+ CC=tcc LD=true AR="tcc -ar" ./configure \
+ --prefix="${PREFIX}" \
+ --libdir="${PREFIX}/lib/musl" \
+ --disable-shared \
+ --host=i386-unknown-linux \
+ --target=i386-unknown-linux \
+ --build=i386-unknown-linux
+}
+
+src_compile() {
+ AR="tcc -ar" AR_FLAGS="cr" make
+}
diff --git a/sysa/libtool-1.4/pass1.sh b/sysa/libtool-1.4/pass1.sh
@@ -1,23 +0,0 @@
-# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
-#
-# SPDX-License-Identifier: GPL-3.0-or-later
-
-src_prepare() {
- default_src_prepare
-
- AUTOCONF=autoconf-2.13 AUTOHEADER=autoheader-2.13 ACLOCAL=aclocal-1.4 AUTOMAKE=automake-1.4 ./bootstrap
-}
-
-src_configure() {
- CC=tcc LD=true AR="tcc -ar" ./configure \
- --prefix="${PREFIX}" \
- --libdir="${PREFIX}/lib/musl" \
- --disable-shared \
- --host=i386-unknown-linux \
- --target=i386-unknown-linux \
- --build=i386-unknown-linux
-}
-
-src_compile() {
- AR="tcc -ar" AR_FLAGS="cr" make
-}
diff --git a/sysa/libtool-1.4/pass2.sh b/sysa/libtool-1.4/pass2.sh
@@ -1,19 +0,0 @@
-# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
-#
-# SPDX-License-Identifier: GPL-3.0-or-later
-
-src_prepare() {
- default_src_prepare
-
- AUTOCONF=autoconf-2.13 AUTOHEADER=autoheader-2.13 ACLOCAL=aclocal-1.4 AUTOMAKE=automake-1.4 ./bootstrap
-}
-
-src_configure() {
- CC=tcc ./configure \
- --prefix="${PREFIX}" \
- --libdir="${PREFIX}/lib/musl" \
- --disable-shared \
- --host=i386-unknown-linux \
- --target=i386-unknown-linux \
- --build=i386-unknown-linux
-}
diff --git a/sysa/libtool-2.2.4/checksums b/sysa/libtool-2.2.4/checksums
@@ -0,0 +1,2 @@
+456e988e4dce69afc7a00507aa29c89ee69fcfba1bbc6c29bc0aeba244c24539 /after/lib/musl/libltdl.a
+7fabfde77fef225b0f42c8f7d6888c94d88c3a23747076f375862e1bab6e2b3f /after/lib/musl/libltdl.la
diff --git a/sysa/libtool-2.2.4/libtool-2.2.4.sh b/sysa/libtool-2.2.4/libtool-2.2.4.sh
@@ -0,0 +1,25 @@
+# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+src_prepare() {
+ ./bootstrap
+}
+
+src_configure() {
+ CC=tcc ./configure \
+ --prefix="${PREFIX}" \
+ --libdir="${PREFIX}/lib/musl" \
+ --disable-shared \
+ --host=i386-unknown-linux \
+ --target=i386-unknown-linux \
+ --build=i386-unknown-linux
+}
+
+src_compile() {
+ make MAKEINFO=true
+}
+
+src_install() {
+ make install MAKEINFO=true
+}
diff --git a/sysa/musl-1.1.24/patches-pass3/tcc_static.patch b/sysa/musl-1.1.24/patches-pass3/tcc_static.patch
@@ -1 +0,0 @@
-../patches/tcc_static.patch
-\ No newline at end of file
diff --git a/sysa/musl-1.1.24/patches/tcc_static.patch b/sysa/musl-1.1.24/patches/tcc_static.patch
@@ -1,112 +0,0 @@
-SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
-SPDX-FileCopyrightText: 2021 fosslinux <fosslinux@aussies.space>
-
-SPDX-License-Identifier: MIT
-
-tinycc-0.9.27 does not support the use of the static keyword within an array length or index.
-diff -U3 -r src/internal/syscall.h src/internal/syscall.h
---- src/internal/syscall.h 2019-10-13 22:58:27.000000000 +0100
-+++ src/internal/syscall.h 2021-02-01 00:24:02.099200492 +0000
-@@ -331,7 +331,7 @@
- #define __sys_open_cp(...) __SYSCALL_DISP(__sys_open_cp,,__VA_ARGS__)
- #define sys_open_cp(...) __syscall_ret(__sys_open_cp(__VA_ARGS__))
-
--hidden void __procfdname(char __buf[static 15+3*sizeof(int)], unsigned);
-+hidden void __procfdname(char __buf[15+3*sizeof(int)], unsigned);
-
- hidden void *__vdsosym(const char *, const char *);
-
-diff -U3 -r src/network/lookup.h src/network/lookup.h
---- src/network/lookup.h 2019-10-13 22:58:27.000000000 +0100
-+++ src/network/lookup.h 2021-02-01 00:27:42.695155110 +0000
-@@ -43,9 +43,9 @@
- #define MAXADDRS 48
- #define MAXSERVS 2
-
--hidden int __lookup_serv(struct service buf[static MAXSERVS], const char *name, int proto, int socktype, int flags);
--hidden int __lookup_name(struct address buf[static MAXADDRS], char canon[static 256], const char *name, int family, int flags);
--hidden int __lookup_ipliteral(struct address buf[static 1], const char *name, int family);
-+hidden int __lookup_serv(struct service buf[MAXSERVS], const char *name, int proto, int socktype, int flags);
-+hidden int __lookup_name(struct address buf[MAXADDRS], char canon[256], const char *name, int family, int flags);
-+hidden int __lookup_ipliteral(struct address buf[1], const char *name, int family);
-
- hidden int __get_resolv_conf(struct resolvconf *, char *, size_t);
- hidden int __res_msend_rc(int, const unsigned char *const *, const int *, unsigned char *const *, int *, int, const struct resolvconf *);
-diff -U3 -r src/network/lookup_ipliteral.c src/network/lookup_ipliteral.c
---- src/network/lookup_ipliteral.c 2019-10-13 22:58:27.000000000 +0100
-+++ src/network/lookup_ipliteral.c 2021-02-01 00:27:59.955620933 +0000
-@@ -9,7 +9,7 @@
- #include <ctype.h>
- #include "lookup.h"
-
--int __lookup_ipliteral(struct address buf[static 1], const char *name, int family)
-+int __lookup_ipliteral(struct address buf[1], const char *name, int family)
- {
- struct in_addr a4;
- struct in6_addr a6;
-diff -U3 -r src/network/lookup_name.c src/network/lookup_name.c
---- src/network/lookup_name.c 2019-10-13 22:58:27.000000000 +0100
-+++ src/network/lookup_name.c 2021-02-01 00:28:56.117136509 +0000
-@@ -23,7 +23,7 @@
- return !*s;
- }
-
--static int name_from_null(struct address buf[static 2], const char *name, int family, int flags)
-+static int name_from_null(struct address buf[2], const char *name, int family, int flags)
- {
- int cnt = 0;
- if (name) return 0;
-@@ -41,12 +41,12 @@
- return cnt;
- }
-
--static int name_from_numeric(struct address buf[static 1], const char *name, int family)
-+static int name_from_numeric(struct address buf[1], const char *name, int family)
- {
- return __lookup_ipliteral(buf, name, family);
- }
-
--static int name_from_hosts(struct address buf[static MAXADDRS], char canon[static 256], const char *name, int family)
-+static int name_from_hosts(struct address buf[MAXADDRS], char canon[256], const char *name, int family)
- {
- char line[512];
- size_t l = strlen(name);
-@@ -130,7 +130,7 @@
- return 0;
- }
-
--static int name_from_dns(struct address buf[static MAXADDRS], char canon[static 256], const char *name, int family, const struct resolvconf *conf)
-+static int name_from_dns(struct address buf[MAXADDRS], char canon[256], const char *name, int family, const struct resolvconf *conf)
- {
- unsigned char qbuf[2][280], abuf[2][512];
- const unsigned char *qp[2] = { qbuf[0], qbuf[1] };
-@@ -166,7 +166,7 @@
- return EAI_FAIL;
- }
-
--static int name_from_dns_search(struct address buf[static MAXADDRS], char canon[static 256], const char *name, int family)
-+static int name_from_dns_search(struct address buf[MAXADDRS], char canon[256], const char *name, int family)
- {
- char search[256];
- struct resolvconf conf;
-@@ -284,7 +284,7 @@
- return b->sortkey - a->sortkey;
- }
-
--int __lookup_name(struct address buf[static MAXADDRS], char canon[static 256], const char *name, int family, int flags)
-+int __lookup_name(struct address buf[MAXADDRS], char canon[256], const char *name, int family, int flags)
- {
- int cnt = 0, i, j;
-
-diff -U3 -r src/network/lookup_serv.c src/network/lookup_serv.c
---- src/network/lookup_serv.c 2019-10-13 22:58:27.000000000 +0100
-+++ src/network/lookup_serv.c 2021-02-01 00:29:10.357520778 +0000
-@@ -9,7 +9,7 @@
- #include "lookup.h"
- #include "stdio_impl.h"
-
--int __lookup_serv(struct service buf[static MAXSERVS], const char *name, int proto, int socktype, int flags)
-+int __lookup_serv(struct service buf[MAXSERVS], const char *name, int proto, int socktype, int flags)
- {
- char line[128];
- int cnt = 0;
diff --git a/sysa/run.sh b/sysa/run.sh
@@ -87,12 +87,10 @@ build autoconf-2.13
build autoconf-2.12
-build libtool-1.4 pass1.sh checksums/pass1
+build libtool-1.4
build binutils-2.14
-build libtool-1.4 pass2.sh checksums/pass2
-
# Build musl with fewer patches
build musl-1.1.24 binutils-rebuild.sh checksums/pass3 patches-pass3
populate_device_nodes
@@ -128,6 +126,14 @@ build autoconf-2.61 stage2.sh
build automake-1.9.6 stage1.sh
build automake-1.9.6 stage2.sh
+build findutils-4.2.33
+
+build libtool-2.2.4
+
+build automake-1.10.3
+
+build autoconf-2.65
+
build gcc-4.0.4 pass1.sh checksums/pass1
build musl-1.2.2
diff --git a/sysa/run2.sh b/sysa/run2.sh
@@ -10,6 +10,18 @@ set -e
. helpers.sh
+build xz-5.0.5
+
+build automake-1.11.2
+
+build autoconf-2.69
+
+build automake-1.12.6
+
+build automake-1.13.4
+
+build automake-1.15.1
+
echo "Bootstrapping completed."
exec env - PATH=/after/bin PS1="\w # " bash -i
diff --git a/sysa/tcc-0.9.27/checksums/tcc-musl-pass1 b/sysa/tcc-0.9.27/checksums/tcc-musl-pass1
@@ -1,2 +1,2 @@
-9819c29a2c8259883b4a97d6b57f2fdac87b9807ba9594f7c063601a7fe84af9 /after/bin/tcc-musl
+6a14de323f7c1e7ae473107a607231f89cf60064c09e83a02362369917a1f483 /after/bin/tcc-musl
dd2f569a10a5bce7a8d264a9a04a86be9c3c1293df64c907370a8d5088c21e65 /after/lib/musl/tcc/libtcc1.a
diff --git a/sysa/tcc-0.9.27/checksums/tcc-musl-pass2 b/sysa/tcc-0.9.27/checksums/tcc-musl-pass2
@@ -1,2 +1,2 @@
-0075b156a9dc64b63150b3cc020692f2242e1b4fffebccc743651e0bda4b5ca4 /after/bin/tcc-musl
+c65633cb875609df7aab2225a24334b5853a0b3e097bdb3ba8a0ae80c1bf5bf0 /after/bin/tcc-musl
a650b13efc65073fb851e9db89728089d8845c401f85faaa09801874ab058089 /after/lib/tcc/libtcc1.a
diff --git a/sysa/tcc-0.9.27/checksums/tcc-musl-pass3 b/sysa/tcc-0.9.27/checksums/tcc-musl-pass3
@@ -1,2 +1,2 @@
-fd8fdc967f227f3a8ef4f51226ac8a45b6be78eb0b127d2cdf0a9df0e19451b0 /after/bin/tcc-musl
+068384be93b6654d6ad555881eaf24d221cc3edf229465f050fec30c30648047 /after/bin/tcc-musl
a650b13efc65073fb851e9db89728089d8845c401f85faaa09801874ab058089 /after/lib/tcc/libtcc1.a
diff --git a/sysa/tcc-0.9.27/checksums/tcc-patched b/sysa/tcc-0.9.27/checksums/tcc-patched
@@ -1 +1 @@
-d9dd8e605c8dfd584216e94df4759b1aeb894bdd3d99937bf0eba28cf875e25a /after/bin/tcc
+0bd8c89f8eee4b8e185b404308a79b3cd315a2143f864d7c250a8f088ae1149d /after/bin/tcc
diff --git a/sysa/tcc-0.9.27/patches/ignore-static-inside-array.patch b/sysa/tcc-0.9.27/patches/ignore-static-inside-array.patch
@@ -0,0 +1,59 @@
+SPDX-FileCopyrightText: 2018 Petr Skocik <pskocik@gmail.com>
+
+SPDX-License-Identifier: LGPL-2.0-or-later
+
+From ef668aae1ee2b8bc904c50a13bf58df613b2f0b0 Mon Sep 17 00:00:00 2001
+From: Petr Skocik <pskocik@gmail.com>
+Date: Fri, 23 Mar 2018 13:19:58 +0100
+Subject: [PATCH 1/1] Don't fail on const/restrict/static/* inside []
+
+This patch makes tcc ignore them.
+
+Normally (as per the C standard), They should
+be only applicable inside parameter arrays
+and affect (const/restrict) the pointer the
+array gets converted to.
+
+[matz: fix formatting, add volatile handling, add testcase,
+add comment about above deficiency]
+---
+ tccgen.c | 19 +++++++++++++++++--
+ tests/tests2/100_c99array-decls.c | 34 ++++++++++++++++++++++++++++++++++
+ tests/tests2/100_c99array-decls.expect | 0
+ 3 files changed, 51 insertions(+), 2 deletions(-)
+ create mode 100644 tests/tests2/100_c99array-decls.c
+ create mode 100644 tests/tests2/100_c99array-decls.expect
+
+diff --git tccgen.c tccgen.c
+index 7ed89ac..6ef40e4 100644
+--- tccgen.c
++++ tccgen.c
+@@ -4335,8 +4335,23 @@ static int post_type(CType *type, AttributeDef *ad, int storage, int td)
+ int saved_nocode_wanted = nocode_wanted;
+ /* array definition */
+ next();
+- if (tok == TOK_RESTRICT1)
+- next();
++ while (1) {
++ /* XXX The optional type-quals and static should only be accepted
++ in parameter decls. The '*' as well, and then even only
++ in prototypes (not function defs). */
++ switch (tok) {
++ case TOK_RESTRICT1: case TOK_RESTRICT2: case TOK_RESTRICT3:
++ case TOK_CONST1:
++ case TOK_VOLATILE1:
++ case TOK_STATIC:
++ case '*':
++ next();
++ continue;
++ default:
++ break;
++ }
++ break;
++ }
+ n = -1;
+ t1 = 0;
+ if (tok != ']') {
+--
+2.11.4.GIT
+
diff --git a/sysa/tcc-0.9.27/tcc-musl-pass1.sh b/sysa/tcc-0.9.27/tcc-musl-pass1.sh
@@ -7,6 +7,8 @@ src_unpack() {
}
src_prepare() {
+ # Note that tcc includes static-link and ignore-static-inside-array patches
+ # since we do not build from clean checkout.
patch -Np0 -i ../../patches/ignore-duplicate-symbols.patch
}
diff --git a/sysa/tcc-0.9.27/tcc-musl-pass2.sh b/sysa/tcc-0.9.27/tcc-musl-pass2.sh
@@ -8,6 +8,9 @@ src_unpack() {
}
src_prepare() {
+ # Note that tcc includes static-link and ignore-static-inside-array patches
+ # since we do not build from clean checkout.
+
patch -Np0 -i ../../patches/ignore-duplicate-symbols.patch
}
diff --git a/sysa/tcc-0.9.27/tcc-musl-pass3.sh b/sysa/tcc-0.9.27/tcc-musl-pass3.sh
@@ -8,6 +8,9 @@ src_unpack() {
}
src_prepare() {
+ # Note that tcc includes static-link and ignore-static-inside-array patches
+ # since we do not build from clean checkout.
+
:
}
diff --git a/sysa/tcc-0.9.27/tcc-patched.kaem b/sysa/tcc-0.9.27/tcc-patched.kaem
@@ -11,6 +11,7 @@ cd src/tcc-0.9.27
# Patch
patch -Np0 -i ../../patches/static-link.patch
+patch -Np0 -i ../../patches/ignore-static-inside-array.patch
# Compile
## We have to use 0.9.26 to recompile 0.9.27, 0.9.27 is not self-hosting for
diff --git a/sysa/xz-5.0.5/checksums b/sysa/xz-5.0.5/checksums
@@ -0,0 +1,10 @@
+31f473893f7b8edaa074de22405742fe4e2d263b57279459e27d6287e9872be1 /after/bin/lzmadec
+48f48260090d70b627a63961e63f3f55e2808f2081b295e2c1da5b37d5a9ea77 /after/bin/lzmainfo
+924e7aec8451799049ae7e60550c09d160949dfb4a29a5e26bfb2a574d2cad0d /after/bin/xz
+cd6a6721d6a434d93f28e170391057abd88f772e01094b8f2addf1eaa599f7b7 /after/bin/xzdec
+104548a69cb9ced78dd4fd08f5e8a1b6b07230ada5e6554a07368ed84191da86 /after/bin/xzdiff
+34db9e45f4ca4bc96b8280ac438ac6c4fab95e44e812e20cf86a2248bf2f7579 /after/bin/xzgrep
+2ce262d47007d17dc668e9a9a3263f7fe3f145d61971f189c21f59b25498a4e3 /after/bin/xzless
+a050699ff5484e063154d11bf05a9a4eb6c2d38bac09a975a96b42c8b45a72ef /after/bin/xzmore
+b2cc6cd3a4b497ec0d6e443ba99a5507aa335755e4327e3831f52dfccd4dfd53 /after/lib/liblzma.a
+7691b11f60a825f9556bc213997a011400ae06a812d02f67b39438b8bdba8212 /after/lib/liblzma.la
diff --git a/sysa/xz-5.0.5/patches/xz_automake.patch b/sysa/xz-5.0.5/patches/xz_automake.patch
@@ -0,0 +1,19 @@
+SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+
+SPDX-License-Identifier: Unlicense
+
+Build with Automake 1.10
+
+--- configure.ac 2021-03-25 21:25:45.309736487 +0000
++++ configure.ac 2021-03-25 21:28:06.683426486 +0000
+@@ -417,8 +417,8 @@
+ echo "Initializing Automake:"
+
+ # Automake 1.10 should still be enough but you need to omit serial-tests.
+-dnl AM_INIT_AUTOMAKE([1.10 foreign tar-v7 filename-length-max=99])
+-AM_INIT_AUTOMAKE([1.12 foreign tar-v7 filename-length-max=99 serial-tests])
++AM_INIT_AUTOMAKE([1.10 foreign tar-v7 filename-length-max=99])
++dnl AM_INIT_AUTOMAKE([1.12 foreign tar-v7 filename-length-max=99 serial-tests])
+ AC_PROG_LN_S
+
+ AC_PROG_CC_C99
diff --git a/sysa/xz-5.0.5/xz-5.0.5.sh b/sysa/xz-5.0.5/xz-5.0.5.sh
@@ -0,0 +1,18 @@
+# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
+#
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+src_prepare() {
+ default_src_prepare
+
+ autoreconf-2.65 -f
+}
+
+src_configure() {
+ ./configure \
+ --prefix="${PREFIX}" \
+ --disable-shared \
+ --target=i386-unknown-linux-gnu \
+ --host=i386-unknown-linux-gnu \
+ --build=i386-unknown-linux-gnu
+}