mirror of
https://github.com/supleed2/EIE4-FYP.git
synced 2024-11-10 04:15:49 +00:00
58 lines
951 B
Makefile
58 lines
951 B
Makefile
BUILD_DIR?=../build/
|
|
|
|
include $(BUILD_DIR)/software/include/generated/variables.mak
|
|
include $(SOC_DIRECTORY)/software/common.mak
|
|
|
|
OBJECTS = donut.o helloc.o crt0.o main.o
|
|
ifdef WITH_CXX
|
|
OBJECTS += hellocpp.o leds.o audio.o
|
|
CFLAGS += -DWITH_CXX
|
|
endif
|
|
|
|
|
|
all: demo.bin
|
|
|
|
|
|
%.bin: %.elf
|
|
$(OBJCOPY) -O binary $< $@
|
|
ifneq ($(OS),Windows_NT)
|
|
chmod -x $@
|
|
endif
|
|
|
|
vpath %.a $(PACKAGES:%=../%)
|
|
|
|
demo.elf: $(OBJECTS)
|
|
$(CC) $(LDFLAGS) -T linker.ld -N -o $@ \
|
|
$(OBJECTS) \
|
|
$(PACKAGES:%=-L$(BUILD_DIR)/software/%) \
|
|
-Wl,--whole-archive \
|
|
-Wl,--gc-sections \
|
|
-Wl,-Map,$@.map \
|
|
$(LIBS:lib%=-l%)
|
|
|
|
ifneq ($(OS),Windows_NT)
|
|
chmod -x $@
|
|
endif
|
|
|
|
# pull in dependency info for *existing* .o files
|
|
-include $(OBJECTS:.o=.d)
|
|
|
|
donut.o: CFLAGS += -w
|
|
|
|
VPATH = $(BIOS_DIRECTORY):$(BIOS_DIRECTORY)/cmds:$(CPU_DIRECTORY)
|
|
|
|
|
|
%.o: %.cpp
|
|
$(compilexx)
|
|
|
|
%.o: %.c
|
|
$(compile)
|
|
|
|
%.o: %.S
|
|
$(assemble)
|
|
|
|
clean:
|
|
$(RM) $(OBJECTS) demo.elf demo.bin .*~ *~
|
|
|
|
.PHONY: all clean
|