summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorXaviDCR92 <xavi.dcr@gmail.com>2017-09-08 18:39:22 +0200
committerXaviDCR92 <xavi.dcr@gmail.com>2017-09-08 18:39:22 +0200
commit786dccd2bc0946d48b8a2758ef2c607678bc8dd9 (patch)
tree47952d77e5646a993671134b50c16f32ebe35b1c /Makefile
parent72d350a37aa67936361ac8a374472b7e0227da61 (diff)
downloadpocketempires-786dccd2bc0946d48b8a2758ef2c607678bc8dd9.tar.gz
Removed Building and GameStructures modules. Restructured SW for Unit and Player, still a lot TODO
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile43
1 files changed, 29 insertions, 14 deletions
diff --git a/Makefile b/Makefile
index 148c236..abd17f8 100644
--- a/Makefile
+++ b/Makefile
@@ -13,11 +13,13 @@ OBJ_DIR = Obj
SRC_DIR = .
OBJECTS=$(addprefix $(OBJ_DIR)/,main.o Gameplay.o System.o Gfx.o Pad.o \
- Player.o Camera.o Unit.o Menu.o Building.o)
+ Player.o Camera.o Unit.o Menu.o )
+
+DEPS = $(OBJECTS:.o=.d)
build: libs $(EXE_DIR)/$(PROJECT).HEX
avr-size $(EXE_DIR)/$(PROJECT).ELF
-
+
rebuild:
make clean
make build
@@ -28,25 +30,38 @@ libs:
make -C Libs/petit_fatfs
make -C Libs/tinyFAT
+run: $(EXE_DIR)/$(PROJECT).ELF
+ $(GBSIM) $^
+
+depend: $(DEPS)
+
+$(OBJ_DIR)/%.d: $(SRC_DIR)/%.c
+ $(CC) $< $(DEFINE) $(INCLUDE) -M -MF $@
+
+$(OBJ_DIR)/%.d: $(SRC_DIR)/%.cpp
+ $(CXX) $< $(DEFINE) $(INCLUDE) -M -MF $@
+
+$(OBJ_DIR)/%.o: $(SRC_DIR)/%.cpp $(OBJ_DIR)/%.d
+ $(CXX) $< -o $@ $(INCLUDE) $(DEFINE) $(CC_FLAGS)
+
+$(OBJ_DIR)/%.o: $(SRC_DIR)/%.c $(OBJ_DIR)/%.d
+ $(CC) $< -o $@ $(INCLUDE) $(DEFINE) $(CC_FLAGS)
+
+-include $(DEPS)
+
clean:
rm *.elf -f
- rm $(OBJ_DIR)/*.o -f
+ rm $(OBJ_DIR)/*.o $(OBJ_DIR)/*.d -f
make -C $$PWD/Libs/libarduino clean
- make -C $$PWD/Libs/libgamebuino clean
+ make -C $$PWD/Libs/libgamebuino clean
make -C $$PWD/Libs/petit_fatfs clean
make -C $$PWD/Libs/tinyFAT clean
-
-$(OBJ_DIR)/%.o: $(SRC_DIR)/%.cpp
- $(CXX) $< -o $@ $(INCLUDE) $(DEFINE) $(CC_FLAGS)
-
-$(OBJ_DIR)/%.o: $(SRC_DIR)/%.c
- $(CC) $< -o $@ $(INCLUDE) $(DEFINE) $(CC_FLAGS)
-
+
$(EXE_DIR)/$(PROJECT).ELF: $(OBJECTS)
mkdir -p $(EXE_DIR)
- $(LINKER) $^ -o $@ -g $(DEFINE) $(LIBS) $(INCLUDE) -flto -Xlinker -Map=$(EXE_DIR)/POCKET.MAP -Wl,-emain -Wl,--gc-sections
-
+ $(LINKER) $^ -o $@ -g $(DEFINE) $(LIBS) $(INCLUDE) -flto -Xlinker -Map=$(EXE_DIR)/POCKET.MAP -Wl,-emain -Wl,--gc-sections
+
$(EXE_DIR)/$(PROJECT).HEX: $(EXE_DIR)/$(PROJECT).ELF
avr-objcopy -j.text -j.data -j.bss -O ihex $^ $@
-.PHONY: all libs clean
+.PHONY: all libs clean run depend