summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorKonAki <konaki@anokonaki.org>2026-10-14 01:12:42 +0800
committerKonAki <konaki@anokonaki.org>2026-10-14 01:12:42 +0800
commit6754c66ba61e5145fc40049213ac8fd6182f74a8 (patch)
treef427c279c25d2dacd5b09658172ef7105a8a7f61 /Makefile
parent0815b5fc1f7e7b98e65499dbebc05034bec6dba0 (diff)
mzscript: skip calls to missing common events, build the converters
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile23
1 files changed, 21 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index 87a934b..117d973 100644
--- a/Makefile
+++ b/Makefile
@@ -22,6 +22,9 @@ PACKFLAGS ?=
BIN = $(OBJDIR)/$(PROGRAM)$(EXE)
PACKER = $(OBJDIR)/konpack$(EXE)
MODELER = $(OBJDIR)/konmodel$(EXE)
+MZSURVEY = $(OBJDIR)/mzsurvey$(EXE)
+MZSCRIPT = $(OBJDIR)/mzscript$(EXE)
+KONS2C = $(OBJDIR)/kons2c$(EXE)
EXAMPLES = modelview sound ui platform dialog script corridor hills sectorview
EXAMPLEBINS = $(EXAMPLES:%=$(OBJDIR)/%$(EXE))
PACKFILE = $(OBJDIR)/data.kpk
@@ -69,7 +72,7 @@ $(OBJDIR)/stb_image.o: $(SRCDIR)/impl/stb_image.c $(EXTDIR)/stb_image.h
$(OBJDIR)/miniaudio.o: $(SRCDIR)/impl/miniaudio.c $(EXTDIR)/miniaudio.h
$(COMPILEEXT) $(SRCDIR)/impl/miniaudio.c -o $@
-tools: $(PACKER) $(MODELER)
+tools: $(PACKER) $(MODELER) $(MZSURVEY) $(MZSCRIPT) $(KONS2C)
# every example is its own program, built from the same modules as the engine without engine.c
examples: $(EXAMPLEBINS)
@@ -98,6 +101,22 @@ $(MODELER): tools/konmodel.c $(OBJDIR)/cgltf.o $(KONDIR)/konmodel.c $(KONDIR)/ko
@echo "# link $@"
@$(CC) $(TOOLFLAGS) -DKONMODEL_WRITER -o $@ tools/konmodel.c $(KONDIR)/konmodel.c $(KONDIR)/konassets.c $(KONDIR)/konpack.c $(SRCDIR)/impl/konsofren.c $(OBJDIR)/cgltf.o -lm
+# converters. they only read other programs' data, the engine is not linked in
+$(MZSURVEY): tools/mzsurvey.c $(KONDIR)/konjson.h
+ @mkdir -p $(OBJDIR)
+ @echo "# link $@"
+ @$(CC) $(TOOLFLAGS) -o $@ tools/mzsurvey.c
+
+$(MZSCRIPT): tools/mzscript.c $(KONDIR)/konjson.h
+ @mkdir -p $(OBJDIR)
+ @echo "# link $@"
+ @$(CC) $(TOOLFLAGS) -o $@ tools/mzscript.c
+
+$(KONS2C): tools/kons2c.c $(KONDIR)/konscript.c $(KONDIR)/konscript.h
+ @mkdir -p $(OBJDIR)
+ @echo "# link $@"
+ @$(CC) $(TOOLFLAGS) -o $@ tools/kons2c.c $(KONDIR)/konscript.c
+
pack: $(PACKER)
@find $(ASSETDIR) -type f | sort > $(OBJDIR)/assets.lst
$(PACKER) -c $(PACKFILE) $(PACKFLAGS) -b $(ASSETDIR) -l $(OBJDIR)/assets.lst
@@ -106,6 +125,6 @@ run: $(BIN)
./$(BIN)
clean:
- rm -f $(OBJDIR)/*.o $(BIN) $(PACKER) $(MODELER) $(EXAMPLEBINS) $(PACKFILE) $(OBJDIR)/assets.lst
+ rm -f $(OBJDIR)/*.o $(BIN) $(PACKER) $(MODELER) $(MZSURVEY) $(MZSCRIPT) $(KONS2C) $(EXAMPLEBINS) $(PACKFILE) $(OBJDIR)/assets.lst
.PHONY: all run clean tools pack examples