Browse Source

optimize makefile rules

Thomas B 3 weeks ago
parent
commit
1a1c999648
1 changed files with 16 additions and 16 deletions
  1. 16
    16
      Makefile

+ 16
- 16
Makefile View File

@@ -26,13 +26,13 @@ BUILD_DIR := build
26 26
 DATA_DIR := data
27 27
 
28 28
 SRCS := $(wildcard $(SRC_DIR)/*.c)
29
+OBJS := $(SRCS:%.c=$(BUILD_DIR)/%.o)
29 30
 
30 31
 GIT := $(BUILD_DIR)/$(DATA_DIR)/git.c
31
-SRCS += $(GIT)
32
-
33
-SRCS += $(BUILD_DIR)/$(DATA_DIR)/speed_table.c
32
+OBJS += $(GIT:%.c=%.o)
34 33
 
35
-OBJS := $(SRCS:%.c=$(BUILD_DIR)/%.o)
34
+GEN_SRCS := $(BUILD_DIR)/$(DATA_DIR)/speed_table.c
35
+OBJS += $(GEN_SRCS:%.c=%.o)
36 36
 
37 37
 IMAGES := $(wildcard $(DATA_DIR)/*.png)
38 38
 SPRITES := $(IMAGES:%.png=$(BUILD_DIR)/%.c)
@@ -44,6 +44,7 @@ OBJS += $(SOUNDS:%.c=%.o)
44 44
 
45 45
 ASSETS := $(SPRITES)
46 46
 ASSETS += $(SOUNDS)
47
+ASSETS += $(GEN_SRCS)
47 48
 
48 49
 LCC := $(GBDK_HOME)/bin/lcc
49 50
 PNGA := $(GBDK_HOME)/bin/png2asset
@@ -80,8 +81,7 @@ $(info BUILD_TYPE is $(BUILD_TYPE))
80 81
 DEPS=$(OBJS:%.o=%.d)
81 82
 -include $(DEPS)
82 83
 
83
-.PHONY: all run cloc sgb_run bgb_run gbe_run flash clean compile_commands.json usage
84
-.PHONY: $(GIT) $(BUILD_DIR)/$(DATA_DIR)/speed_table.c $(BUILD_DIR)/$(DATA_DIR)/speed_table.h
84
+.PHONY: all run cloc sgb_run bgb_run gbe_run flash clean compile_commands.json usage $(GIT)
85 85
 .PRECIOUS: $(BUILD_DIR)/$(DATA_DIR)/%.c $(BUILD_DIR)/$(DATA_DIR)/%.h
86 86
 
87 87
 all: $(BIN)
@@ -103,7 +103,7 @@ $(GIT): $(DATA_DIR)/git.c
103 103
 	@echo Generating $@ from $<
104 104
 	@sed 's|GIT_VERSION|$(shell git describe --abbrev=7 --dirty --always --tags)|g' $< > $@
105 105
 
106
-$(BUILD_DIR)/$(DATA_DIR)/speed_table.c:
106
+$(GEN_SRCS): util/gen_angles.py
107 107
 	@mkdir -p $(@D)
108 108
 	@echo Generating $@
109 109
 	@util/gen_angles.py -n speed_table -d $(BUILD_DIR)/$(DATA_DIR) -s 16 -w 2 -f 0 -m 42 -t int8_t
@@ -112,19 +112,19 @@ usage: $(BUILD_DIR)/$(BIN)
112 112
 	@echo Analyzing $<
113 113
 	@$(ROMU) $(BUILD_DIR)/$(BIN:%.gb=%.map)
114 114
 
115
-run: $(BUILD_DIR)/$(BIN)
115
+run: $(BIN)
116 116
 	@echo Emulating $<
117 117
 	@$(GB_EMU) $(GB_EMUFLAGS)
118 118
 
119
-sgb_run: $(BUILD_DIR)/$(BIN)
119
+sgb_run: $(BIN)
120 120
 	@echo Emulating $<
121 121
 	@$(SGB_EMU) $(SGB_EMUFLAGS)
122 122
 
123
-bgb_run: $(BUILD_DIR)/$(BIN)
123
+bgb_run: $(BIN)
124 124
 	@echo Emulating $<
125 125
 	@$(BGB_EMU) $(BGB_EMUFLAGS)
126 126
 
127
-gbe_run: $(BUILD_DIR)/$(BIN)
127
+gbe_run: $(BIN)
128 128
 	@echo Emulating $<
129 129
 	@$(GBE_EMU) $(GBE_EMUFLAGS)
130 130
 
@@ -132,7 +132,7 @@ flash: $(BIN)
132 132
 	@echo Flashing $<
133 133
 	@$(FLASHER) $(FLASHFLAGS) $<
134 134
 
135
-$(BUILD_DIR)/$(DATA_DIR)/%.c $(BUILD_DIR)/$(DATA_DIR)/%.h: $(DATA_DIR)/%.wav
135
+$(BUILD_DIR)/$(DATA_DIR)/%.c $(BUILD_DIR)/$(DATA_DIR)/%.h: $(DATA_DIR)/%.wav util/cvtsample.py
136 136
 	@mkdir -p $(@D)
137 137
 	@echo Converting sound $<
138 138
 	@util/cvtsample.py $< "(None)" GBDK $(BUILD_DIR)/$(DATA_DIR)
@@ -161,23 +161,23 @@ $(BUILD_DIR)/$(DATA_DIR)/%.c $(BUILD_DIR)/$(DATA_DIR)/%.h: $(DATA_DIR)/%.png
161 161
 		$(PNGA) $< -o $@ -spr8x8                                                        \
162 162
 	)))))
163 163
 
164
-$(BUILD_DIR)/%.o: %.c $(ASSETS) $(SRCS)
164
+$(BUILD_DIR)/%.o: %.c $(ASSETS)
165 165
 	@mkdir -p $(@D)
166 166
 	@echo Compiling Code $<
167 167
 	$(eval BAFLAG = $(shell echo "$<" | sed -n 's/.*\.ba\([0-9]\+\).*/\-Wf-ba\1/p'))
168 168
 	@$(LCC) $(LCCFLAGS) $(BAFLAG) -c -o $@ $<
169 169
 
170
-$(BUILD_DIR)/%.o: $(BUILD_DIR)/%.c $(ASSETS) $(SRCS)
170
+$(BUILD_DIR)/%.o: $(BUILD_DIR)/%.c $(ASSETS)
171 171
 	@mkdir -p $(@D)
172 172
 	@echo Compiling Asset $<
173 173
 	@$(LCC) $(LCCFLAGS) -c -o $@ $<
174 174
 
175
-$(BUILD_DIR)/%.o: %.s $(ASSETS) $(SRCS)
175
+$(BUILD_DIR)/%.o: %.s $(ASSETS)
176 176
 	@mkdir -p $(@D)
177 177
 	@echo Assembling $<
178 178
 	@$(LCC) $(LCCFLAGS) -c -o $@ $<
179 179
 
180
-$(BUILD_DIR)/$(BIN): $(OBJS) $(SRCS)
180
+$(BUILD_DIR)/$(BIN): $(OBJS) $(GIT)
181 181
 	@echo Linking $@
182 182
 	@$(LCC) $(LCCFLAGS) -o $@ $(OBJS)
183 183
 

Loading…
Cancel
Save