diff --git a/rootfs.py b/rootfs.py index cb40332..9100f1e 100755 --- a/rootfs.py +++ b/rootfs.py @@ -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") diff --git a/sysa/run.kaem b/sysa/run.kaem index eb5e7bb..f17c69b 100755 --- a/sysa/run.kaem +++ b/sysa/run.kaem @@ -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 diff --git a/sysa/run2.sh b/sysa/run2.sh index 7c46c01..53a28e3 100755 --- a/sysa/run2.sh +++ b/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