l4re-base-25.08.0

This commit is contained in:
2025-09-12 15:55:45 +02:00
commit d959eaab98
37938 changed files with 9382688 additions and 0 deletions

37
src/l4/tool/imagebuilder/qemu Executable file
View File

@@ -0,0 +1,37 @@
#!/usr/bin/env bash
L4IMAGE="${OBJ_BASE}/source/tool/bin/l4image"
MAKECONF="${OBJ_BASE}/source/tool/bin/makeconf"
# Sets MAKECONF_ARCH
if [[ -z "${ARCH}" || -z "${CPU}" ]]; then
. <("$MAKECONF" "$OBJ_BASE" ARCH CPU)
ARCH=${MAKECONF_ARCH}
CPU=${MAKECONF_CPU}
fi
L4_SYSTEM="${ARCH}_${CPU}"
if [[ ( "${ARCH}" == "amd64" || "${ARCH}" == "x86" ) && -z "${QEMU_IMAGE_TYPE}" ]] ; then
# Trigger rebuild on binary "bootstrap" if necessary
BOOTSTRAP_BIN="${OBJ_BASE}/bin/${L4_SYSTEM}/plain/bootstrap"
"$(dirname $0)/_platform_rebuild.pl" "$BOOTSTRAP_BIN" || exit 1
source <("$MAKECONF" "$OBJ_BASE" QEMU_PATH QEMU_OPTIONS MODULE_SEARCH_PATH BUILDDIR_SEARCHPATH)
export QEMU="$MAKECONF_QEMU_PATH"
export QEMU_OPTIONS="$MAKECONF_QEMU_OPTIONS"
export SEARCHPATH="${MODULE_SEARCH_PATH}:${SEARCHPATH}:${MAKECONF_MODULE_SEARCH_PATH}:${MAKECONF_BUILDDIR_SEARCHPATH}"
export L4DIR="$(realpath "${OBJ_BASE}/source")"
exec "${L4DIR}/tool/bin/qemu-x86-launch" "${MODULES_LIST}" "${ENTRY:-${E}}"
fi
if [[ -z "$TARGET_IMAGE" ]]; then
export TARGET_IMAGE="$(mktemp --tmpdir "l4re-qemu-XXXXXXXXXX.elf")"
trap 'rm $TARGET_IMAGE' EXIT
fi
"$(dirname $0)"/"${QEMU_IMAGE_TYPE:-elfimage}" || exit $?
$L4IMAGE --verbose -i "$TARGET_IMAGE" launch; exit $?