The header scan (Captain Bob, 2026-11-10): 788 source files -- 351 with the
SL-1.0 header, 12 with the old name (docs/working/experiments, kept by
ruling), 31 under someone else's licence (tools/kconfig, Linux's, GPL-2.0:
kept), and 394 with none. Ruled: the SPDX form; capsules (.4th, .f18) and
proofs (.thy) left for a ruling of their own (mkcapsule's 64x16 block format,
content-addressed capsules).
253 files now begin
SPDX-License-Identifier: LicenseRef-Starship-1.0
Copyright (c) 2023-2026 Robert A. James
as a /* */ block (C, headers, assembly, linker scripts) or # lines (scripts,
Makefiles, Kconfig; below a shebang or a coding line); tools/mkcapsule.c,
which had the copyright line, gets the SPDX line only.
Not touched: docs/working/ (archive and old campaign material, as the
ruling kept the experiments); v4/system/post_cases.c (generated by
v4/tools/mkpost.py, "do not edit" -- the generator has the header).
Comments only: the kernel builds on amd64, aarch64, riscv64; make -C v4
test-32: 39 programs, 0 failures; every changed script parses.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GE3SDvQn5EoxdGufk84zz2
25 lines
1.3 KiB
Bash
Executable File
25 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
# SPDX-License-Identifier: LicenseRef-Starship-1.0
|
|
# Copyright (c) 2023-2026 Robert A. James
|
|
# build-iso.sh -- the demo's ISO: the amd64 kernel's loader on an El Torito ISO, packed as
|
|
# `make -f kernel/Makefile ARCH=amd64 qemu` packs it (kernel/Makefile, target qemu).
|
|
#
|
|
# demo/build-iso.sh <out.iso> [VAR=value ...]
|
|
#
|
|
# The VAR=value arguments go to the kernel build: EMERGENCY_CONSOLE_ENABLED=1 for a console with
|
|
# no identity drive -- one of the two answers to issue #111, not yet ruled. A nightly's
|
|
# StarshipOS.iso can be used in place of this, once the ruling says which image the demo serves.
|
|
set -euo pipefail
|
|
cd "$(dirname "$0")/.."
|
|
out=$(realpath -m "${1:?usage: demo/build-iso.sh <out.iso> [VAR=value ...]}"); shift
|
|
make --no-print-directory -f kernel/Makefile ARCH=amd64 clean
|
|
make --no-print-directory -f kernel/Makefile ARCH=amd64 all "$@"
|
|
tmp=$(mktemp -d); trap 'rm -rf "$tmp"' EXIT
|
|
dd if=/dev/zero of="$tmp/efi.img" bs=512 count=8192 2>/dev/null
|
|
mformat -i "$tmp/efi.img" ::
|
|
mmd -i "$tmp/efi.img" ::/EFI ::/EFI/BOOT
|
|
mcopy -i "$tmp/efi.img" build/amd64/kernel/starkernel_loader.efi ::/EFI/BOOT/BOOTX64.EFI
|
|
xorriso -as mkisofs -r -J -e efi.img -no-emul-boot -o "$out" "$tmp" 2>/dev/null
|
|
git checkout -q -- capsules/BLOCK_MAP.md v3/include/version.h 2>/dev/null || true # the build regenerates these
|
|
echo "demo: $out"
|