mirror of https://github.com/ARMmbed/mbed-os.git
53 lines
1.7 KiB
Cheetah
53 lines
1.7 KiB
Cheetah
# This file was automagically generated by mbed.org. For more information,
|
|
# see http://mbed.org/handbook/Exporting-to-GCC-ARM-Embedded
|
|
|
|
GCC_BIN =
|
|
PROJECT = {{name}}
|
|
OBJECTS = {% for f in to_be_compiled %}{{f}} {% endfor %}
|
|
SYS_OBJECTS = {% for f in object_files %}{{f}} {% endfor %}
|
|
INCLUDE_PATHS = {% for p in include_paths %}-I{{p}} {% endfor %}
|
|
LIBRARY_PATHS = {% for p in library_paths %}-L{{p}} {% endfor %}
|
|
LIBRARIES = {% for lib in libraries %}-l{{lib}} {% endfor %}
|
|
LINKER_SCRIPT = {{linker_script}}
|
|
|
|
###############################################################################
|
|
AS = $(GCC_BIN)arm-none-eabi-as
|
|
CC = $(GCC_BIN)arm-none-eabi-gcc
|
|
CPP = $(GCC_BIN)arm-none-eabi-g++
|
|
LD = $(GCC_BIN)arm-none-eabi-gcc
|
|
OBJCOPY = $(GCC_BIN)arm-none-eabi-objcopy
|
|
|
|
CPU = -mcpu=cortex-m4 -mthumb
|
|
CC_FLAGS = $(CPU) -c -g -fno-common -fmessage-length=0 -Wall -fno-exceptions -ffunction-sections -fdata-sections
|
|
CC_SYMBOLS = {% for s in symbols %}-D{{s}} {% endfor %}
|
|
|
|
LD_FLAGS = -mcpu=cortex-m4 -mthumb -Wl,--gc-sections --specs=nano.specs -u _printf_float -u _scanf_float
|
|
LD_SYS_LIBS = -lstdc++ -lsupc++ -lm -lc -lgcc -lnosys
|
|
|
|
ifeq ($(DEBUG), 1)
|
|
CC_FLAGS += -DDEBUG -O0
|
|
else
|
|
CC_FLAGS += -DNDEBUG -Os
|
|
endif
|
|
|
|
all: $(PROJECT).bin
|
|
|
|
clean:
|
|
rm -f $(PROJECT).bin $(PROJECT).elf $(OBJECTS)
|
|
|
|
.s.o:
|
|
$(AS) $(CPU) -o $@ $<
|
|
|
|
.c.o:
|
|
$(CC) $(CC_FLAGS) $(CC_SYMBOLS) -std=gnu99 $(INCLUDE_PATHS) -o $@ $<
|
|
|
|
.cpp.o:
|
|
$(CPP) $(CC_FLAGS) $(CC_SYMBOLS) -std=gnu++98 $(INCLUDE_PATHS) -o $@ $<
|
|
|
|
|
|
$(PROJECT).elf: $(OBJECTS) $(SYS_OBJECTS)
|
|
$(LD) $(LD_FLAGS) -T$(LINKER_SCRIPT) $(LIBRARY_PATHS) -o $@ $^ $(LIBRARIES) $(LD_SYS_LIBS) $(LIBRARIES) $(LD_SYS_LIBS)
|
|
|
|
$(PROJECT).bin: $(PROJECT).elf
|
|
$(OBJCOPY) -O binary $< $@
|