Final fixes:

- All QEMU reproducibility issues resolved
- Added SPDX licensing
- Couple other small issues
- Fix guile reproducbility
This commit is contained in:
fosslinux 2022-03-07 18:58:20 +11:00
parent 9543a47f1b
commit b760b3eb2b
78 changed files with 287 additions and 56 deletions

View file

@ -1,4 +1,5 @@
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later

View file

@ -1,4 +1,5 @@
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later

View file

@ -1,4 +1,5 @@
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later

View file

@ -1,6 +1,7 @@
# SPDX-FileCopyrightText: 2021 Paul Dersey <pdersey@gmail.com>
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2021 Bastian Bittorf <bb@npl.de>
# SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later

View file

@ -1,4 +1,4 @@
# SPDX-FileCopyrightText: 2021 fosslinux <fosslinux@aussies.space>
# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later

View file

@ -1,4 +1,4 @@
# SPDX-FileCopyrightText: 2021 fosslinux <fosslinux@aussies.space>
# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later

View file

@ -1,6 +1,6 @@
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2021 Paul Dersey <pdersey@gmail.com>
# SPDX-FileCopyrightText: 2021 fosslinux <fosslinux@aussies.space>
# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
# SPDX-License-Identifier: GPL-3.0-or-later

View file

@ -1,4 +1,4 @@
# SPDX-FileCopyrightText: 2021 fosslinux <fosslinux@aussies.space>
# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later

View file

@ -1,5 +1,6 @@
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2021 Michael Schierl <schierlm@gmx.de>
# SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later
@ -33,6 +34,7 @@ src_configure() {
PKG_CONFIG_PATH="${PREFIX}/lib/musl/pkgconfig" ./configure \
--prefix="${PREFIX}" \
--libdir="${PREFIX}/lib/musl" \
--build=i386-unknown-linux-musl \
--disable-shared \
--disable-jit
}

View file

@ -1,10 +1,13 @@
# SPDX-FileCopyrightText: 2021 fosslinux <fosslinux@aussies.space>
# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later
src_prepare() {
default
# Remove two useless manpages that code in hostname
rm doc/man5/x509v3_config.pod doc/man5/config.pod
# Remove a bunch of pregenerated files
# thanks for making these easy to find :)
find . -name build.info -exec grep 'GENERATE\[' {} \; | sed 's/.*\[//' | sed 's/\].*$//' | xargs -I{} find . -name {} -delete

View file

@ -1,4 +1,4 @@
# SPDX-FileCopyrightText: 2021 fosslinux <fosslinux@aussies.space>
# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later

View file

@ -0,0 +1,49 @@
SPDX-FileCopyrightText: 2021 fosslinux <fosslinux@aussies.space>
SPDX-License-Identifier: Artistic-1.0
Set some things that cannot be overriden in the perl Configure script to
generate with correct values for live-bootstrap.
NOTE: this patch CANNOT be applied to a non-live-bootstrap environment.
--- ../perl-5f2dc80/regen-configure/U/threads/archname.U 2022-02-27 21:30:03.155396204 +1100
+++ ../perl-5f2dc80/regen-configure/U/threads/archname.U 2022-02-27 21:30:49.392396204 +1100
@@ -79,7 +79,7 @@
?X: Very GCCian.
*) archname=`echo $targetarch|sed 's,^[^-]*-,,'` ;;
esac
-myarchname="$tarch"
+myarchname="i686-linux"
case "$archname" in
'') dflt="$tarch";;
*) dflt="$archname";;
--- ../perl-5f2dc80/regen-configure/U/modified/Oldconfig.U 2022-02-27 21:31:26.911396204 +1100
+++ ../perl-5f2dc80/regen-configure/U/modified/Oldconfig.U 2022-02-27 21:32:31.846396204 +1100
@@ -117,16 +117,13 @@
?X: on some machines to avoid the error message when uname is not found; e.g.
?X: old SUN-OS 3.2 would not execute hostname in (uname -a || hostname). Sigh!
?X: Now not using a subshell but instead $test.
-myuname=`$uname -a 2>/dev/null`
-$test -z "$myuname" && myuname=`hostname 2>/dev/null`
# Downcase everything to avoid ambiguity.
# Remove slashes and single quotes so we can use parts of this in
# directory and file names.
# Remove newlines so myuname is sane to use elsewhere.
# tr '[A-Z]' '[a-z]' would not work in EBCDIC
# because the A-Z/a-z are not consecutive.
-myuname=`echo $myuname | $sed -e "s,['/],,g" | \
- ./tr '[A-Z]' '[a-z]' | $tr $trnl ' '`
+myuname="linux (none) 4.9.10-gnu_1 #1 mon jan 1 00:00:01 1970 i686 gnulinux"
?X: Save the value we just computed to reset myuname after we get done here.
newmyuname="$myuname"
dflt=n
@@ -336,7 +333,7 @@
?X: Note the hostname on the second one, which will fool Configure
?X: into using the SysV case!
gnu) osname=gnu
- osvers="$3" ;;
+ osvers="4.9.10-gnu_1" ;;
?X: HP-UX uname -a gives something like
?X: HP-UX foobar B.10.20 A 9000/735 2016483812 two-user license
?X: Preserve the full 10.20 string instead of the previous plain '10'.

View file

@ -0,0 +1,47 @@
SPDX-FileCopyrightText: 2021 fosslinux <fosslinux@aussies.space>
SPDX-License-Identifier: Artistic-1.0
Set some things that cannot be overriden in the perl Configure script to
generate with correct values for live-bootstrap.
NOTE: this patch CANNOT be applied to a non-live-bootstrap environment.
--- ../perl-5f2dc80/regen-configure/dist/U/archname.U 2022-02-26 10:51:45.343097807 +1100
+++ ../perl-5f2dc80/regen-configure/dist/U/archname.U 2022-02-26 10:51:51.742527859 +1100
@@ -72,5 +72,5 @@
rp='What is your architecture name'
. ./myread
archname="$ans"
-myarchname="$tarch"
+myarchname="i386"
--- ../perl-5f2dc80/regen-configure/dist/U/Oldconfig.U 2022-02-27 10:55:04.890396204 +1100
+++ ../perl-5f2dc80/regen-configure/dist/U/Oldconfig.U 2022-02-27 11:00:31.324396204 +1100
@@ -109,16 +109,13 @@
?LINT:extern hostarch libswanted libs
?LINT:change hostarch libswanted libs
: Determine the name of the machine
-myuname=`$uname -a 2>/dev/null`
-$test -z "$myuname" && myuname=`hostname 2>/dev/null`
?X: Special mention for Xenix, whose 'uname -a' gives us output like this:
?X: sysname=XENIX
?X: nodename=whatever
?X: release=2.3.2 .. etc...
?X: Therefore, we strip all this variable assignment junk and remove all the
?X: new lines to keep the myuname variable sane... --RAM
-myuname=`echo $myuname | $sed -e 's/^[^=]*=//' -e 's/\///g' | \
- ./tr '[A-Z]' '[a-z]' | $tr $trnl ' '`
+myuname=""
?X: Save the value we just computed to reset myuname after we get done here.
newmyuname="$myuname"
has_uname=
@@ -277,7 +274,7 @@
;;
linux) osname=linux
case "$3" in
- *) osvers="$3" ;;
+ *) osvers="4.9.10-gnu_1" ;;
esac
;;
MiNT) osname=mint

View file

@ -1,4 +1,5 @@
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later
@ -35,7 +36,9 @@ src_configure() {
-Dusedl=false \
-Ddate=':' \
-Dccflags="-U__DATE__ -U__TIME__" \
-Darchname="i386-linux"
-Darchname="i386-linux" \
-Dmyhostname="(none)" \
-Dmaildomain="(none)"
}
src_install() {

View file

@ -1,7 +1,7 @@
#!/usr/bin/bash
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2021 fosslinux <fosslinux@aussies.space>
# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
# SPDX-FileCopyrightText: 2021 Paul Dersey <pdersey@gmail.com>
#
# SPDX-License-Identifier: GPL-3.0-or-later
@ -20,13 +20,11 @@ export DESTDIR=/tmp/destdir
create_fhs() {
# Add the rest of the FHS that we will use and is not created pre-boot
rm -rf /sbin /usr/sbin
ln -s bin /usr/sbin
for d in bin lib sbin; do
ln -s "usr/${d}" "/${d}"
done
mv /usr/sbin/* /usr/bin/
rm -r /sbin /usr/sbin
ln -s bin /usr/sbin
ln -s bin /sbin
mkdir /etc /proc /run /sys /tmp /var
mount -t proc proc /proc
mount -t sysfs sysfs /sys

View file

@ -85,7 +85,7 @@ build libatomic_ops-7.6.10
build gc-8.0.4
#build guile-3.0.7
build guile-3.0.7
if [ "$FORCE_TIMESTAMPS" = True ] ; then
echo 'Forcing all files timestamps to be 0 unix time.'

View file

@ -1,4 +1,5 @@
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later