Move bash rebuild to sysa.

This commit is contained in:
Andrius Štikonas 2023-02-26 17:00:15 +08:00
parent 58d1206c83
commit da9a2c6c50
10 changed files with 250 additions and 221 deletions

View file

@ -1,45 +0,0 @@
# 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
src_prepare() {
# Remove bison generated files
rm y.tab.c y.tab.h
# Rebuild configure script
rm configure
autoconf-2.64
# avoid non-deterministic build:
printf '%s\n%s\n' \
'#!/bin/sh' \
'echo "#define PIPESIZE 65536"' >builtins/psize.sh
}
src_configure() {
# --build argument needed for reproducibility
# bash_cv_dev_stdin and bash_cv_dev_fd are also used to
# improve reproducibility because they make configure
# skip checking for /dev/{fd,stdin,stdout,stderr} (build
# output is affected by their availability otherwise).
./configure --prefix="${PREFIX}" \
--without-bash-malloc \
--disable-nls \
--build=i386-unknown-linux-musl \
--enable-static-link \
bash_cv_dev_stdin=absent \
bash_cv_dev_fd=whacky
}
src_install() {
# Do not install prebuilt .mo translation catalogs
install -D bash "${DESTDIR}${PREFIX}/bin/bash"
# Work around weird symlink bug
install bash "${DESTDIR}${PREFIX}/bin/sh"
# Needs special handling b/c is currently running - tar doesn't like this
rm -f "${PREFIX}/bin/bash" "${PREFIX}/bin/sh"
}

View file

@ -1 +0,0 @@
http://mirrors.kernel.org/gnu/bash/bash-5.1.tar.gz cc012bc860406dcf42f64431bcd3d2fa7560c02915a601aba9cd597a39329baa

View file

@ -3,6 +3,7 @@
# SPDX-FileCopyrightText: 2022 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2021-22 fosslinux <fosslinux@aussies.space>
# SPDX-FileCopyrightText: 2021 Paul Dersey <pdersey@gmail.com>
# SPDX-FileCopyrightText: 2021 Melg Eight <public.melg8@gmail.com>
#
# SPDX-License-Identifier: GPL-3.0-or-later
@ -11,9 +12,16 @@ set -e
# shellcheck source=/dev/null
. .env
# shellcheck disable=SC2153
trap 'env - PATH=${PREFIX}/bin PS1="\w # " bash -i' EXIT
# shellcheck source=sysa/helpers.sh
. helpers.sh
trap bash EXIT
umask 0022
create_fhs() {
# Add the rest of the FHS that we will use and is not created pre-boot
rm -rf /sbin /usr/sbin
@ -56,6 +64,126 @@ else
mkdir -p "${DISTFILES}"
fi
build bash-5.1
build xz-5.0.5
build file-5.44
build libtool-2.4.7
build automake-1.15.1
build tar-1.34
build coreutils-8.32
build pkg-config-0.29.2
build make-4.2.1
build gmp-6.2.1
build autoconf-archive-2021.02.19
build mpfr-4.1.0
build mpc-1.2.1
build flex-2.5.33
build bison-2.3
build bison-3.4.2
build perl-5.10.1
build dist-3.5-236
build perl-5.32.1
build libarchive-3.5.2
build openssl-1.1.1l
build ca-certificates-3.86
build curl-7.83.0
build zlib-1.2.13
build automake-1.16.3
build autoconf-2.71
build patch-2.7.6
build gettext-0.21
build texinfo-6.7
build gcc-4.7.4
build binutils-2.38
build gperf-3.1
build libunistring-0.9.10
build libffi-3.3
build libatomic_ops-7.6.10
build gc-8.0.4
build guile-3.0.7
build which-2.21
build grep-3.7
build sed-4.8
build autogen-5.18.16 autogen-5.18.16.sh
build musl-1.2.3
build python-2.0.1 stage1.sh
build python-2.0.1 stage2.sh
build python-2.3.7 stage1.sh
build python-2.3.7 stage2.sh
build python-2.5.6
build python-3.1.5 stage1.sh
build python-3.1.5 stage2.sh
build python-3.3.7
build python-3.4.10
build python-3.8.16
build python-3.11.1
build gcc-10.4.0
if [ "$FORCE_TIMESTAMPS" = True ] ; then
echo 'Forcing all files timestamps to be 0 unix time.'
canonicalise_all_files_timestamp
fi
shopt -s extglob
if [ "$UPDATE_CHECKSUMS" = True ] ; then
pushd /usr/src/repo
sha256sum -- !(*-repodata) | tee "${SOURCES}/SHA256SUMS.pkgs"
popd
fi
echo "Bootstrapping completed."
cd "/"
exec env -i PATH="${PATH}" HOME="${HOME}" SOURCE_DATE_EPOCH="${SOURCE_DATE_EPOCH}" bash "${SOURCES}/after.sh"
exec env -i PATH="${PATH}" HOME="${HOME}" SOURCE_DATE_EPOCH="${SOURCE_DATE_EPOCH}" bash run2.sh

View file

@ -1,146 +0,0 @@
#!/bin/bash
# SPDX-FileCopyrightText: 2022 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2021-23 fosslinux <fosslinux@aussies.space>
# SPDX-FileCopyrightText: 2021 Paul Dersey <pdersey@gmail.com>
# SPDX-FileCopyrightText: 2021 Melg Eight <public.melg8@gmail.com>
#
# SPDX-License-Identifier: GPL-3.0-or-later
set -e
# shellcheck source=/dev/null
. .env
# shellcheck disable=SC2153
trap 'env - PATH=${PREFIX}/bin PS1="\w # " bash -i' EXIT
# shellcheck source=sysa/helpers.sh
. helpers.sh
trap bash EXIT
umask 0022
build xz-5.0.5
build file-5.44
build libtool-2.4.7
build automake-1.15.1
build tar-1.34
build coreutils-8.32
build pkg-config-0.29.2
build make-4.2.1
build gmp-6.2.1
build autoconf-archive-2021.02.19
build mpfr-4.1.0
build mpc-1.2.1
build flex-2.5.33
build bison-2.3
build bison-3.4.2
build perl-5.10.1
build dist-3.5-236
build perl-5.32.1
build libarchive-3.5.2
build openssl-1.1.1l
build ca-certificates-3.86
build curl-7.83.0
build zlib-1.2.13
build automake-1.16.3
build autoconf-2.71
build patch-2.7.6
build gettext-0.21
build texinfo-6.7
build gcc-4.7.4
build binutils-2.38
build gperf-3.1
build libunistring-0.9.10
build libffi-3.3
build libatomic_ops-7.6.10
build gc-8.0.4
build guile-3.0.7
build which-2.21
build grep-3.7
build sed-4.8
build autogen-5.18.16 autogen-5.18.16.sh
build musl-1.2.3
build python-2.0.1 stage1.sh
build python-2.0.1 stage2.sh
build python-2.3.7 stage1.sh
build python-2.3.7 stage2.sh
build python-2.5.6
build python-3.1.5 stage1.sh
build python-3.1.5 stage2.sh
build python-3.3.7
build python-3.4.10
build python-3.8.16
build python-3.11.1
build gcc-10.4.0
if [ "$FORCE_TIMESTAMPS" = True ] ; then
echo 'Forcing all files timestamps to be 0 unix time.'
canonicalise_all_files_timestamp
fi
shopt -s extglob
if [ "$UPDATE_CHECKSUMS" = True ] ; then
pushd /usr/src/repo
sha256sum -- !(*-repodata) | tee "${SOURCES}/SHA256SUMS.pkgs"
popd
fi
echo "Bootstrapping completed."
cd "/"
exec env -i PATH="${PATH}" HOME="${HOME}" SOURCE_DATE_EPOCH="${SOURCE_DATE_EPOCH}" bash "${SOURCES}/after.sh"