LIBS=$(shell pkg-config --libs libedit)
INC+=$(shell pkg-config --cflags libedit)
+# LLVM/Clang on macOS seems to need -ledit flag for linking
+UNAME_S := $(shell uname -s)
+ifeq ($(UNAME_S),Darwin)
+ LIBS += -ledit
+endif
+
OBJS=main.o init.o actions.o score.o misc.o saveresume.o
CHEAT_OBJS=cheat.o init.o actions.o score.o misc.o saveresume.o
-SOURCES=$(OBJS:.o=.c) advent.h adventure.yaml Makefile control make_dungeon.py
+SOURCES=$(OBJS:.o=.c) advent.h adventure.yaml Makefile control make_dungeon.py templates/*.tpl
.c.o:
$(CC) $(CCFLAGS) $(INC) $(DBX) -c $<
dungeon.o: dungeon.c dungeon.h
$(CC) $(CCFLAGS) $(DBX) -c dungeon.c
-dungeon.c dungeon.h: make_dungeon.py adventure.yaml
+dungeon.c dungeon.h: make_dungeon.py adventure.yaml templates/*.tpl
./make_dungeon.py
clean:
html: advent.html history.html hints.html
# README.adoc exists because that filename is magic on GitLab.
-DOCS=COPYING NEWS README.adoc TODO advent.adoc history.adoc notes.adoc hints.adoc advent.6
+DOCS=COPYING NEWS README.adoc TODO advent.adoc history.adoc notes.adoc hints.adoc advent.6 INSTALL.adoc
TESTFILES=tests/*.log tests/*.chk tests/README tests/decheck tests/Makefile
# Can't use GNU tar's --transform, needs to build under Alpine Linux.
linty: CCFLAGS += -Wmissing-prototypes
linty: CCFLAGS += -Wmissing-declarations
linty: CCFLAGS += -Wshadow
+linty: CCFLAGS += -Wnull-dereference
+linty: CCFLAGS += -Wjump-misses-init
linty: CCFLAGS += -Wfloat-equal
linty: CCFLAGS += -Wcast-align
linty: CCFLAGS += -Wwrite-strings