summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormid-kid <esteve.varela@gmail.com>2021-12-19 22:27:11 +0100
committermid-kid <esteve.varela@gmail.com>2021-12-20 16:29:19 +0100
commit010d641899be44eb7fc5f458d819c332e092d03f (patch)
tree7838ca3c7546e7167e7a39478884598b448b3ccd
parent99a038284bcbbf3a0f5ee95982f761a71a72850d (diff)
Explicitly declare dependencies for generated files
These are harder to pick up automatically, and will only change when the tools are edited, anyway... Any other methods for solving this issue can always be reconsidered later down the line...
-rwxr-xr-xMakefile4
-rw-r--r--data_item.mk7
-rw-r--r--data_move.mk6
-rw-r--r--data_pokemon.mk12
4 files changed, 24 insertions, 5 deletions
diff --git a/Makefile b/Makefile
index cc39e09..5ea70d1 100755
--- a/Makefile
+++ b/Makefile
@@ -117,7 +117,7 @@ $(C_BUILDDIR)/m4a.o: CC1 := tools/agbcc/bin/old_agbcc
ALL_BUILDS := red
# Available targets
-.PHONY: all clean tidy libagbsyscall tools clean-tools $(TOOLDIRS)
+.PHONY: all clean compare tidy libagbsyscall tools clean-tools $(TOOLDIRS)
MAKEFLAGS += --no-print-directory
@@ -136,7 +136,7 @@ infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst
# Disable dependency scanning for clean/tidy/tools
# Use a separate minimal makefile for speed
# Since we don't need to reload most of this makefile
-ifeq (,$(filter-out clean,$(MAKECMDGOALS)))
+ifeq (,$(filter clean,$(MAKECMDGOALS)))
$(call infoshell, $(MAKE) -f make_tools.mk)
endif
diff --git a/data_item.mk b/data_item.mk
index 375cbf1..db010c9 100644
--- a/data_item.mk
+++ b/data_item.mk
@@ -3,7 +3,12 @@
ITEM_DIR = $(DATA_ASM_SUBDIR)/item
ITEM_DATA = $(ITEM_DIR)/item_data.inc
+# Headers included by tools/dungeonjson/dungeonjson.cpp:generate_item_data_text
+ITEM_DATA_INC = \
+ include/constants/item.h \
+ include/constants/move_id.h
+
data_item: $(ITEM_DATA);
-$(ITEM_DATA): $(ITEM_DIR)/item_data.json
+$(ITEM_DATA): $(ITEM_DIR)/item_data.json $(ITEM_DATA_INC)
$(DUNGEONJSON) item pmd-red $<
diff --git a/data_move.mk b/data_move.mk
index 48350cb..63d756d 100644
--- a/data_move.mk
+++ b/data_move.mk
@@ -3,7 +3,11 @@
MOVE_DIR = $(DATA_ASM_SUBDIR)/move
MOVE_DATA = $(MOVE_DIR)/move_data.inc
+# Headers included by tools/dungeonjson/dungeonjson.cpp:generate_move_data_text
+MOVE_DATA_INC = \
+ include/constants/type.h
+
data_move: $(MOVE_DATA);
-$(MOVE_DATA): $(MOVE_DIR)/move_data.json
+$(MOVE_DATA): $(MOVE_DIR)/move_data.json $(MOVE_DATA_INC)
$(DUNGEONJSON) move pmd-red $<
diff --git a/data_pokemon.mk b/data_pokemon.mk
index 9a81bca..c690a9c 100644
--- a/data_pokemon.mk
+++ b/data_pokemon.mk
@@ -3,7 +3,17 @@
POKEMON_DIR = $(DATA_ASM_SUBDIR)/pokemon
POKEMON_SPECIES = $(POKEMON_DIR)/species_data.inc
+# Headers included by tools/dungeonjson/dungeonjson.cpp:generate_species_data_text
+POKEMON_SPECIES_INC = \
+ include/constants/ability.h \
+ include/constants/evolve_type.h \
+ include/constants/friend_area.h \
+ include/constants/item.h \
+ include/constants/species.h \
+ include/constants/type.h \
+ include/constants/walkable_tile.h
+
data_pokemon: $(POKEMON_SPECIES);
-$(POKEMON_SPECIES): $(POKEMON_DIR)/species_data.json
+$(POKEMON_SPECIES): $(POKEMON_DIR)/species_data.json $(POKEMON_SPECIES_INC)
$(DUNGEONJSON) species pmd-red $<