live-bootstrap/sysa/run.kaem

71 lines
1.7 KiB
Bash
Executable File

#!/bin/sh
# SPDX-FileCopyrightText: 2021 Andrius Štikonas <andrius@stikonas.eu>
# SPDX-FileCopyrightText: 2021 Paul Dersey <pdersey@gmail.com>
# SPDX-FileCopyrightText: 2020-2022 fosslinux <fosslinux@aussies.space>
# SPDX-FileCopyrightText: 2022 Dor Askayo <dor.askayo@gmail.com>
#
# SPDX-License-Identifier: GPL-3.0-or-later
set -ex
# checksum-transcriber utility
M2LIBC_PATH=/M2libc
M2-Mesoplanet --architecture ${ARCH} -f checksum-transcriber.c -o ${bindir}/checksum-transcriber
sha256sum -c checksum-transcriber.SHA256SUM
# simple patch tool based on before and after chunks
M2-Mesoplanet --architecture x86 -f simple-patch.c -o /x86/bin/simple-patch
# Environmental variables needed for mes
NYACC_PKG=nyacc-1.00.2
MES_VERSION=0.24.2
MES_PKG=mes-${MES_VERSION}
MES_PKG_DIR=${MES_PKG}
MES_PREFIX=${sysa}/${MES_PKG}/build/${MES_PKG_DIR}
GUILE_LOAD_PATH=${MES_PREFIX}/mes/module:${MES_PREFIX}/module:${sysa}/${MES_PKG}/build/${NYACC_PKG}/module
# mes
pkg=${MES_PKG}
cd ${pkg}
kaem --file ${pkg}.kaem
cd ..
# tcc 0.9.26
pkg="tcc-0.9.26"
cd ${pkg}
kaem --file ${pkg}.kaem
cd ..
libdir=${libdir}/mes
# tcc 0.9.27
pkg="tcc-0.9.27"
cd ${pkg}
kaem --file ${pkg}.kaem
cd ..
if match x${KERNEL_BOOTSTRAP} xTrue; then
# The Fiwix kernel
pkg="fiwix-1.4.0-lb1"
cd ${pkg}
kaem --verbose --file ${pkg}.kaem
cd ..
# ext2 file system library for Fiwix
pkg="lwext4-1.0.0-lb1"
cd ${pkg}
kaem --verbose --file ${pkg}.kaem
# Build the ext2 image
cd build/${pkg}/src
./make_fiwix_initrd
cd ../../../..
# Live boot loader for Fiwix
pkg="kexec-fiwix"
cd ${pkg}
kaem --verbose --file ${pkg}.kaem
else
exec kaem --verbose --file run-after-fiwix.kaem
fi