diff options
| author | KonAki <konaki@anokonaki.org> | 2026-10-07 19:03:04 +0800 |
|---|---|---|
| committer | KonAki <konaki@anokonaki.org> | 2026-10-07 19:03:04 +0800 |
| commit | dfa9a616c3d89a935a4c0bf68f7801581d8b5037 (patch) | |
| tree | dbedd97ded9a227751555744fc246943af6e6c77 /Makefile | |
| parent | 5eaa99c67ca44bd48d8e2eae7f906c942d565d67 (diff) | |
Move headers to kon/ and add per-lib implementation stubs
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..9fa28b6 --- /dev/null +++ b/Makefile @@ -0,0 +1,55 @@ +PROGRAM = konengine +SRCDIR = src +KONDIR = kon +EXTDIR = ext + +OBJDIR ?= obj +EXE ?= +MODEFLAGS ?= -O2 -DNDEBUG +DEFS ?= +LDLIBS ?= -lm +MODOBJS ?= + +WARN = -std=c99 -Wall -Wextra -Wpedantic +KONFLAGS = $(WARN) $(MODEFLAGS) $(DEFS) -I$(KONDIR) -I$(EXTDIR) +COMPILE = @mkdir -p $(OBJDIR); echo "\# compile $@"; $(CC) $(KONFLAGS) -c + +BIN = $(OBJDIR)/$(PROGRAM)$(EXE) +CORE = $(OBJDIR)/engine.o $(OBJDIR)/konwinlib.o $(OBJDIR)/konsofren.o \ + $(OBJDIR)/kontime.o $(OBJDIR)/koninput.o +OBJS = $(CORE) $(MODOBJS) + +all: $(BIN) + +$(BIN): $(OBJS) + @echo "# link $@" + @$(CC) -o $@ $(OBJS) $(LDLIBS) + +$(OBJDIR)/engine.o: $(SRCDIR)/engine.c $(KONDIR)/*.h + $(COMPILE) $(SRCDIR)/engine.c -o $@ + +$(OBJDIR)/konwinlib.o: $(SRCDIR)/impl/konwinlib.c $(KONDIR)/konwinlib.h + $(COMPILE) $(SRCDIR)/impl/konwinlib.c -o $@ + +$(OBJDIR)/konsofren.o: $(SRCDIR)/impl/konsofren.c $(KONDIR)/konsofren.h + $(COMPILE) $(SRCDIR)/impl/konsofren.c -o $@ + +$(OBJDIR)/kontime.o: $(SRCDIR)/impl/kontime.c $(KONDIR)/kontime.h + $(COMPILE) $(SRCDIR)/impl/kontime.c -o $@ + +$(OBJDIR)/koninput.o: $(SRCDIR)/impl/koninput.c $(KONDIR)/koninput.h $(KONDIR)/konwinlib.h + $(COMPILE) $(SRCDIR)/impl/koninput.c -o $@ + +$(OBJDIR)/konfont.o: $(SRCDIR)/impl/konfont.c $(KONDIR)/konfont.h $(KONDIR)/konsofren.h $(EXTDIR)/stb_truetype.h + $(COMPILE) $(SRCDIR)/impl/konfont.c -o $@ + +$(OBJDIR)/kontoml.o: $(SRCDIR)/impl/kontoml.c $(KONDIR)/kontoml.h + $(COMPILE) $(SRCDIR)/impl/kontoml.c -o $@ + +run: $(BIN) + ./$(BIN) + +clean: + rm -f $(OBJS) $(BIN) + +.PHONY: all run clean |
