aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
authorEmil A. Overbeck <emil.a.overbeck@gmail.com>2026-07-19 04:19:48 +0200
committerEmil A. Overbeck <emil.a.overbeck@gmail.com>2026-07-19 04:19:48 +0200
commit521b5da83485a956811fc510cba9f139acad8b26 (patch)
tree29b210263300479e9a565af568812c5e707d23f7 /Makefile
parentff85499d5567c36ce63e2d7903d5f872fd9aef1d (diff)
downloadforts_clone-main.tar.gz
forts_clone-main.zip
New maps and map selectormain
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile12
1 files changed, 10 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index df2eb4d..ca8a942 100644
--- a/Makefile
+++ b/Makefile
@@ -15,7 +15,7 @@ PODMAN_RUN := podman run --rm -v "$(CURDIR)":/src:Z --userns=keep-id \
localhost/$(IMAGE):latest bash -c
.DEFAULT_GOAL := build
-.PHONY: help image build reconfigure run check check-lua shell clean clean-image
+.PHONY: help image build reconfigure run check check-lua sim-check shell clean clean-image
help:
@echo "LibreForts:"
@@ -26,6 +26,8 @@ help:
@echo " make check compile + validate the Lua data (do this before"
@echo " claiming a change works)"
@echo " make check-lua validate the Lua data only"
+ @echo " make sim-check settle every map headlessly, fail if a fort"
+ @echo " collapses (SOAK=seconds)"
@echo " make reconfigure re-run meson setup, after editing meson.build"
@echo " make shell interactive shell in the dev container"
@echo " make clean remove $(BUILDDIR)"
@@ -48,7 +50,13 @@ reconfigure:
run: build
./$(BIN)
-check: build check-lua
+check: build check-lua sim-check
+
+# Settles every map headlessly and fails if a fort loses struts. Catches
+# "the fort collapses on load" without a display. SOAK=seconds.
+SOAK ?= 5
+sim-check: build
+ ./$(BUILDDIR)/sim_check $(SOAK)
# The GUI cannot run headless here, so parsing the Lua is the other half of
# "it works". Mods are validated LAYERED (base file first), because they