Add option to build kernels and related tools during chroot and bwrap builds
The main motivations to have this are: * Detect checksum changes with chroot/bwrap builds * Avoid removing checksums from `SHA256SUMS.pkgs` when unsing `--update-checksums` * Find crashes that would otherwise be missed in `builder-hex0`
This commit is contained in:
parent
d3477570b8
commit
dd8ce0e516
|
@ -39,6 +39,7 @@ def create_configuration_file(args):
|
|||
config.write("KERNEL_BOOTSTRAP=True\n")
|
||||
else:
|
||||
config.write("KERNEL_BOOTSTRAP=False\n")
|
||||
config.write(f"BUILD_KERNELS={args.build_kernels}\n")
|
||||
|
||||
# pylint: disable=too-many-statements
|
||||
def main():
|
||||
|
@ -73,6 +74,9 @@ def main():
|
|||
parser.add_argument("--external-sources",
|
||||
help="Download sources externally from live-bootstrap.",
|
||||
action="store_true")
|
||||
parser.add_argument("--build-kernels",
|
||||
help="Also build kernels in chroot and bwrap builds.",
|
||||
action="store_true")
|
||||
parser.add_argument("--no-create-config",
|
||||
help="Do not automatically create config file",
|
||||
action="store_true")
|
||||
|
|
|
@ -45,7 +45,17 @@ cd ${pkg}
|
|||
kaem --file ${pkg}.kaem
|
||||
cd ..
|
||||
|
||||
BUILD_FIWIX=False
|
||||
|
||||
if match x${KERNEL_BOOTSTRAP} xTrue; then
|
||||
BUILD_FIWIX=True
|
||||
fi
|
||||
|
||||
if match x${BUILD_KERNELS} xTrue; then
|
||||
BUILD_FIWIX=True
|
||||
fi
|
||||
|
||||
if match x${BUILD_FIWIX} xTrue; then
|
||||
# The Fiwix kernel
|
||||
pkg="fiwix-1.4.0-lb1"
|
||||
cd ${pkg}
|
||||
|
@ -58,14 +68,16 @@ if match x${KERNEL_BOOTSTRAP} xTrue; then
|
|||
kaem --verbose --file ${pkg}.kaem
|
||||
cd ..
|
||||
|
||||
# Build the ext2 image
|
||||
make_fiwix_initrd
|
||||
|
||||
# Live boot loader for Fiwix
|
||||
pkg="kexec-fiwix"
|
||||
cd ${pkg}
|
||||
kaem --verbose --file ${pkg}.kaem
|
||||
cd ..
|
||||
fi
|
||||
|
||||
if match x${KERNEL_BOOTSTRAP} xTrue; then
|
||||
# Build the ext2 image
|
||||
make_fiwix_initrd
|
||||
|
||||
# Boot Fiwix
|
||||
kexec-fiwix
|
||||
|
|
10
sysa/run2.sh
10
sysa/run2.sh
|
@ -73,7 +73,7 @@ build ed-1.4
|
|||
|
||||
build bc-1.07.1
|
||||
|
||||
if [ "${CHROOT}" = False ]; then
|
||||
if [ "${CHROOT}" = False ] || [ "${BUILD_KERNELS}" = True ]; then
|
||||
# Save because linux deletes all distfiles to save space
|
||||
cp "${DISTFILES}"/musl-1.2.3.tar.gz "${SOURCES}"/musl-1.2.3
|
||||
fi
|
||||
|
@ -86,13 +86,15 @@ grep --no-filename '^build' "${SOURCES}"/run*.sh | grep -v musl-1.2.3 | sed "s/b
|
|||
rm -rf "${SOURCES:?}/${p:?}"
|
||||
done
|
||||
|
||||
if [ "${CHROOT}" = False ]; then
|
||||
if [ "${CHROOT}" = False ] || [ "${BUILD_KERNELS}" = True ]; then
|
||||
build kexec-tools-2.0.22
|
||||
|
||||
build linux-4.9.10
|
||||
fi
|
||||
|
||||
build musl-1.2.3 '' no-patches
|
||||
build musl-1.2.3 '' no-patches
|
||||
|
||||
if [ "${CHROOT}" = False ]; then
|
||||
create_sysb
|
||||
if [ "${KERNEL_BOOTSTRAP}" = True ]; then
|
||||
echo "Kernel bootstrapping successful."
|
||||
|
@ -101,8 +103,6 @@ if [ "${CHROOT}" = False ]; then
|
|||
go_sysb
|
||||
fi
|
||||
else
|
||||
build musl-1.2.3 '' no-patches
|
||||
|
||||
# In chroot mode transition directly into System C.
|
||||
SYSC=/sysc_image
|
||||
sys_transfer "${SYSC}" /sysc gzip patch
|
||||
|
|
Loading…
Reference in New Issue