feat(boards): both systems on every board image, chosen at boot -- system=v3 or system=v4
boards/BRINGUP.md A6, FABRIC-3 SXLIII (ruled: one image, switch at boot). A STARFORTH_V4 kernel carries v3 too; system= in the boot arguments chooses, else the build's default (V4_DEFAULT: 1 for plain STARFORTH_V4 builds as before, 0 for board images). make boot_image builds both and always writes starforth.cfg / cmdline.txt with system=v3 first, and cleans its ISA's objects first -- that clean was removing build/<arch>/SER5, not the kernel's objects, until fixed here. Each ISA: v3 by default (hash unchanged), v4 with system=v4 (538/538). The SER5 image under OVMF: v3 as built, v4 after a one-word edit on it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
e729c64ba3
commit
1a4b163861
@@ -95,8 +95,15 @@ boot_image:
|
||||
echo " $(call board_field,$(TARGET),BOARD_DESC)"; \
|
||||
exit 1; \
|
||||
fi
|
||||
@# Both systems in one image, v3 unless the boot arguments say system=v4
|
||||
@# (boards/BRINGUP.md A6, ruled 2026-10-14). A clean build every time: the
|
||||
@# kernel objects are shared with `make qemu`, and make does not see a
|
||||
@# change of compile flags -- an image could otherwise carry objects built
|
||||
@# without v4, or without the bring-up console.
|
||||
@$(SUBMAKE) -f kernel/Makefile ARCH=$(call board_arch,$(TARGET)) TARGET=kernel clean
|
||||
@$(SUBMAKE) -f kernel/Makefile \
|
||||
BOARD=$(BOARD_DIR) ARCH=$(call board_arch,$(TARGET)) TARGET=kernel boot_image
|
||||
BOARD=$(BOARD_DIR) ARCH=$(call board_arch,$(TARGET)) TARGET=kernel \
|
||||
STARFORTH_V4=1 V4_DEFAULT=0 boot_image
|
||||
|
||||
boot_images:
|
||||
@for b in $(READY_BOARDS); do \
|
||||
|
||||
Reference in New Issue
Block a user