diff options
author | Your Name <you@example.com> | 2023-05-30 18:33:10 -0400 |
---|---|---|
committer | Your Name <you@example.com> | 2023-05-30 18:33:10 -0400 |
commit | e1ef3e987a1ef87fad2e44d2023e4aa50fb28c35 (patch) | |
tree | b48a6087720d6bf69a80f0c284320320043fcdee /Makefile | |
parent | d428ae1c5b3b0ec88c1b55c56317c3750502d5f4 (diff) | |
download | dmtool-e1ef3e987a1ef87fad2e44d2023e4aa50fb28c35.tar.gz dmtool-e1ef3e987a1ef87fad2e44d2023e4aa50fb28c35.tar.bz2 dmtool-e1ef3e987a1ef87fad2e44d2023e4aa50fb28c35.zip |
Changed makefiles, added parsed files
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 99 |
1 files changed, 27 insertions, 72 deletions
@@ -1,83 +1,38 @@ LIBS=libconfuse nlohmann_json -override CXXFLAGS += -Wall -fPIC -std=c++20 `pkg-config $(LIBS) --cflags` -override LDFLAGS += `pkg-config $(LIBS) --libs` -CC=$(CXX) -SOURCES=src/armor.cc src/cmd/cmd.cc src/cmd/cmd_fsops.cc src/cmd/cmd_manipulate.cc src/cmd/cmd_query.cc src/cmd/cmd_usage.cc src/creature.cc src/dice.cc src/dmtool.cc src/entry.cc src/features/feature.cc src/item.cc src/rules.cc src/settings.cc src/spell.cc src/spellcasting.cc src/utils.cc src/weapon.cc -OBJECTS=$(SOURCES:.cc=.o) -LIBRARY= -EXECUTABLE=dmtool -PREFIX := /usr +export version = 1.0.0 +export soname_version = $(word 1, $(subst ., , $(version))) +override CXXFLAGS += -MMD -Wall -std=c++20 `pkg-config $(LIBS) --cflags` +override LDFLAGS += `pkg-config $(LIBS) --libs` +SOURCES = $(wildcard src/*.cc) $(wildcard src/*/*.cc) +OBJECTS = $(SOURCES:.cc=.o) +DEPS = $(OBJECTS:.o=.d) +EXECUTABLE = dmtool +prefix ?= /usr +exec_prefix ?= $(prefix) +bindir ?= $(exec_prefix)/bin +completions ?= `pkg-config --variable=completionsdir bash-completion` -all: $(SOURCES) $(EXECUTABLE) +$(EXECUTABLE): $(OBJECTS) + $(CXX) $(OBJECTS) -o $@ $(LDFLAGS) + +-include $(DEPS) parsed: parser/scrapeToJson.py parser/utils.py parser/verified.txt python parser/scrapeToJson.py touch parsed/ install: $(EXECUTABLE) - install -d $(DESTDIR)$(PREFIX)/share/dmtool/ - #cp -r parsed/* $(DESTDIR)$(PREFIX)/share/dmtool/ - install -d $(DESTDIR)$(PREFIX)/bin/ - install -m 755 $(EXECUTABLE) $(DESTDIR)$(PREFIX)/bin/ - install -m 644 files/dmtool.bash $(DESTDIR)`pkg-config --variable=completionsdir bash-completion`/dmtool + install -d $(DESTDIR)$(prefix)/share/dmtool/ + cp -r parsed/* $(DESTDIR)$(prefix)/share/dmtool/ + install -d $(DESTDIR)$(bindir) + install -m 755 $(EXECUTABLE) $(DESTDIR)$(bindir) + install -d $(DESTDIR)$(completions) + install -m 644 files/dmtool.bash $(DESTDIR)$(completions)/$(EXECUTABLE) install -m 644 files/dmtool.conf $(DESTDIR)/etc/dmtool.conf -$(EXECUTABLE): $(OBJECTS) - $(CXX) $(OBJECTS) -o $@ $(LDFLAGS) $(LDLIBS) - - -src/armor.o: src/armor.cc src/armor.h src/item.h src/entry.h \ - src/defines.h src/creature.h src/rules.h src/utils.h \ - src/features/feature.h -src/cmd/cmd.o: src/cmd/cmd.cc src/cmd/cmd.h src/cmd/../rules.h \ - src/cmd/../utils.h src/cmd/../entry.h src/cmd/../defines.h \ - src/cmd/../settings.h -src/cmd/cmd_fsops.o: src/cmd/cmd_fsops.cc src/cmd/cmd.h \ - src/cmd/../rules.h src/cmd/../utils.h src/cmd/../entry.h \ - src/cmd/../defines.h -src/cmd/cmd_manipulate.o: src/cmd/cmd_manipulate.cc src/cmd/cmd.h \ - src/cmd/../rules.h src/cmd/../utils.h src/cmd/../entry.h \ - src/cmd/../defines.h src/cmd/../creature.h src/cmd/../features/feature.h \ - src/cmd/../item.h src/cmd/../spellcasting.h src/cmd/../spell.h \ - src/cmd/../settings.h src/cmd/../weapon.h src/cmd/../dice.h \ - src/cmd/../armor.h -src/cmd/cmd_query.o: src/cmd/cmd_query.cc src/cmd/cmd.h \ - src/cmd/../rules.h src/cmd/../utils.h src/cmd/../entry.h \ - src/cmd/../defines.h src/cmd/../creature.h src/cmd/../features/feature.h \ - src/cmd/../item.h src/cmd/../dice.h src/cmd/../weapon.h -src/cmd/cmd_usage.o: src/cmd/cmd_usage.cc src/cmd/cmd.h \ - src/cmd/../rules.h src/cmd/../utils.h src/cmd/../entry.h \ - src/cmd/../defines.h -src/creature.o: src/creature.cc src/creature.h src/rules.h src/utils.h \ - src/entry.h src/defines.h src/features/feature.h src/item.h src/dice.h \ - src/weapon.h src/armor.h src/attack.h src/spellcasting.h src/spell.h -src/dice.o: src/dice.cc src/dice.h -src/dmtool.o: src/dmtool.cc src/cmd/cmd.h src/cmd/../rules.h \ - src/cmd/../utils.h src/cmd/../entry.h src/cmd/../defines.h -src/entry.o: src/entry.cc src/entry.h src/defines.h src/utils.h \ - src/features/feature.h src/item.h src/spell.h src/creature.h src/rules.h -src/features/feature.o: src/features/feature.cc src/features/feature.h \ - src/features/../entry.h src/features/../defines.h \ - src/features/../spellcasting.h src/features/../spell.h \ - src/features/../rules.h src/features/../utils.h src/features/../attack.h \ - src/features/../weapon.h src/features/../item.h \ - src/features/../creature.h -src/item.o: src/item.cc src/item.h src/entry.h src/defines.h src/weapon.h \ - src/rules.h src/utils.h src/armor.h -src/rules.o: src/rules.cc src/rules.h src/utils.h src/entry.h \ - src/defines.h -src/settings.o: src/settings.cc src/settings.h -src/spell.o: src/spell.cc src/spell.h src/entry.h src/defines.h \ - src/utils.h -src/spellcasting.o: src/spellcasting.cc src/spellcasting.h \ - src/features/feature.h src/features/../entry.h src/features/../defines.h \ - src/spell.h src/rules.h src/utils.h src/defines.h src/creature.h \ - src/item.h -src/utils.o: src/utils.cc src/utils.h src/entry.h src/defines.h \ - src/settings.h -src/weapon.o: src/weapon.cc src/weapon.h src/item.h src/entry.h \ - src/defines.h src/rules.h src/utils.h src/creature.h \ - src/features/feature.h src/dice.h - +.PHONY: clean clean: - $(RM) $(LIBRARY) $(EXECUTABLE) $(TEST) $(OBJECTS) + $(RM) $(OBJECTS) $(DEPS) $(EXECUTABLE) + +test: + $(foreach var,$(.VARIABLES),$(info $(var) = $($(var)))) |