|
@@ -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
|
|