Files
LithosAnanake/mk
rajamesandClaude Sonnet 4.6 b191ace026
StarshipOS Build / pi4 (push) Failing after 27s
StarshipOS Build / pi5 (push) Failing after 40s
StarshipOS Build / milkv (push) Failing after 39s
StarshipOS Build / pc (push) Failing after 35s
StarshipOS Build / qemu (push) Failing after 21s
ci: board-matrix build pipeline with Nexus Maven publish
Builds all boards (qemu, pc, pi4, pi5, milkv) in parallel. Installs
cross-compilers (aarch64-linux-gnu, riscv64-linux-gnu) and clang-18
for the aarch64 loader. Packs ISO (amd64/aarch64) and GPT image (riscv64).

On master push, publishes to Nexus starshipos-releases using Maven
coordinates org.f18:kernel:<version>-<sha>:<board> and
org.f18:starforth:<version>-<sha>:<board>.

CROSS_COMPILE wired into StarForth Makefile via mk/boards.mk so
make T=pi4 picks up aarch64-linux-gnu-gcc automatically.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-11-06 04:17:12 +00:00
..

mk/

  • Kconfig.mk — shared Kconfig bridge included by both Makefile and Makefile.starkernel. Each Makefile canonicalizes its own ARCH and sets KCONFIG_ARCH_DIR before including this file, since the hosted and kernel builds map aarch64 to different object-directory names. Config lives per-architecture under build/$(KCONFIG_ARCH_DIR)/ rather than a single root .config, because this project's QEMU acceptance workflow builds all three kernel architectures back-to-back in one script — a shared root .config would desync from whichever arch is actually being built. Provides the kconfig_bool/kconfig_int macros that let each -D knob repoint from a bare historical default to the Kconfig-fed CONFIG_* value one knob family at a time, preserving today's behavior exactly whenever no .config is present yet.

See configs/ for example defconfig files and tools/kconfig/ for the vendored Kconfig tooling this bridge drives.