diff options
| author | XaviDCR92 <xavi.dcr@gmail.com> | 2017-08-26 17:20:15 +0200 |
|---|---|---|
| committer | XaviDCR92 <xavi.dcr@gmail.com> | 2017-08-26 17:20:15 +0200 |
| commit | 8151d005e3ec99f6da915f7cba71cb4af9517f63 (patch) | |
| tree | c48d511c915b530e1fc8b5685c05d818968c28b7 /Makefile | |
| parent | 32ce459181fc26851aef4ade093faa087b80b0de (diff) | |
| download | pocketempires-8151d005e3ec99f6da915f7cba71cb4af9517f63.tar.gz | |
*Makefile MMCU was not set for linking (text overflow occurred)
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 55 |
1 files changed, 32 insertions, 23 deletions
@@ -1,33 +1,40 @@ -PROJECT=POCKET - -CC=avr-gcc -CXX=avr-g++ -LINKER=$(CXX) +include Makefile.cfg -MCU=atmega328p -CPU_SPEED=-DF_CPU=16000000UL -ARDUINO_VERSION=ARDUINO_150 +PROJECT=POCKET INCLUDE_FOLDERS= gamebuino arduino LIBS=-L../lib -lgamebuino -larduino INCLUDE= $(foreach dir,$(INCLUDE_FOLDERS),-I$/../include/$(dir)) -CC_FLAGS=-mmcu=$(MCU) $(CPU_SPEED) -Wall -Werror -Os -c -ffunction-sections -fdata-sections -g -DEFINE = -D$(ARDUINO_VERSION) +EXE_DIR=Exe + +CC_FLAGS += -Werror -Wfatal-errors OBJ_DIR = Obj SRC_DIR = . -default: build $(PROJECT).HEX size +OBJECTS=$(addprefix $(OBJ_DIR)/,main.o Gameplay.o System.o Gfx.o Pad.o \ + Player.o Camera.o Unit.o Menu.o Building.o) + +build: libs $(EXE_DIR)/$(PROJECT).HEX + avr-size $(EXE_DIR)/$(PROJECT).ELF + +rebuild: + make clean + make build -size: - avr-size Exe/$(PROJECT).ELF +libs: + make -C Libs/libarduino/ + make -C Libs/libgamebuino + make -C Libs/petit_fatfs + make -C Libs/tinyFAT clean: rm *.elf -f - rm $(OBJ_DIR)/*.o -f -r - -build: $(addprefix $(OBJ_DIR)/,main.o Gameplay.o System.o Gfx.o Pad.o \ - Player.o Camera.o Unit.o Menu.o Building.o) + rm $(OBJ_DIR)/*.o -f + make -C $$PWD/Libs/libarduino 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) @@ -35,9 +42,11 @@ $(OBJ_DIR)/%.o: $(SRC_DIR)/%.cpp $(OBJ_DIR)/%.o: $(SRC_DIR)/%.c $(CC) $< -o $@ $(INCLUDE) $(DEFINE) $(CC_FLAGS) -$(PROJECT).ELF: - $(LINKER) $(OBJ_DIR)/*.o -o Exe/$(PROJECT).elf -mmcu=$(MCU) -g $(LIBS) $(INCLUDE) -flto -Xlinker -Map=Exe/POCKET.MAP -Wl,--gc-sections - -$(PROJECT).HEX: $(PROJECT).ELF - avr-objcopy -j.text -j.data -j.bss -O ihex Exe/$^ $@ - mv $@ Exe/ +$(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 + +$(EXE_DIR)/$(PROJECT).HEX: $(EXE_DIR)/$(PROJECT).ELF + avr-objcopy -j.text -j.data -j.bss -O ihex $^ $@ + +.PHONY: all libs clean |
