Brian Daniels / mbed-tools

Fork of mbed-tools by Morpheus

Committer:
screamer
Date:
Wed Mar 30 16:23:44 2016 +0000
Revision:
0:4a2e5f0422d6
Initial revision

Who changed what in which revision?

UserRevisionLine numberNew contents of line
screamer 0:4a2e5f0422d6 1 # This file was automagically generated by mbed.org. For more information,
screamer 0:4a2e5f0422d6 2 # see http://mbed.org/handbook/Exporting-to-GCC-ARM-Embedded
screamer 0:4a2e5f0422d6 3
screamer 0:4a2e5f0422d6 4 GCC_BIN =
screamer 0:4a2e5f0422d6 5 PROJECT = {{name}}
screamer 0:4a2e5f0422d6 6 OBJECTS = {% for f in to_be_compiled %}{{f}} {% endfor %}
screamer 0:4a2e5f0422d6 7 SYS_OBJECTS = {% for f in object_files %}{{f}} {% endfor %}
screamer 0:4a2e5f0422d6 8 INCLUDE_PATHS = {% for p in include_paths %}-I{{p}} {% endfor %}
screamer 0:4a2e5f0422d6 9 LIBRARY_PATHS = {% for p in library_paths %}-L{{p}} {% endfor %}
screamer 0:4a2e5f0422d6 10 LIBRARIES = {% for lib in libraries %}-l{{lib}} {% endfor %}
screamer 0:4a2e5f0422d6 11 LINKER_SCRIPT = {{linker_script}}
screamer 0:4a2e5f0422d6 12
screamer 0:4a2e5f0422d6 13 ###############################################################################
screamer 0:4a2e5f0422d6 14 AS = $(GCC_BIN)arm-none-eabi-as
screamer 0:4a2e5f0422d6 15 CC = $(GCC_BIN)arm-none-eabi-gcc
screamer 0:4a2e5f0422d6 16 CPP = $(GCC_BIN)arm-none-eabi-g++
screamer 0:4a2e5f0422d6 17 LD = $(GCC_BIN)arm-none-eabi-g++
screamer 0:4a2e5f0422d6 18 OBJCOPY = $(GCC_BIN)arm-none-eabi-objcopy
screamer 0:4a2e5f0422d6 19 OBJDUMP = $(GCC_BIN)arm-none-eabi-objdump
screamer 0:4a2e5f0422d6 20 SIZE = $(GCC_BIN)arm-none-eabi-size
screamer 0:4a2e5f0422d6 21
screamer 0:4a2e5f0422d6 22 CPU = -mcpu=cortex-m0plus -mthumb
screamer 0:4a2e5f0422d6 23 CC_FLAGS = $(CPU) -c -g -fno-common -fmessage-length=0 -Wall -fno-exceptions -ffunction-sections -fdata-sections -fomit-frame-pointer
screamer 0:4a2e5f0422d6 24 CC_FLAGS += -MMD -MP
screamer 0:4a2e5f0422d6 25 CC_SYMBOLS = {% for s in symbols %}-D{{s}} {% endfor %}
screamer 0:4a2e5f0422d6 26
screamer 0:4a2e5f0422d6 27 LD_FLAGS = $(CPU) -Wl,--gc-sections --specs=nano.specs -u _printf_float -u _scanf_float -Wl,--wrap,main
screamer 0:4a2e5f0422d6 28 LD_FLAGS += -Wl,-Map=$(PROJECT).map,--cref
screamer 0:4a2e5f0422d6 29 LD_SYS_LIBS = -lstdc++ -lsupc++ -lm -lgcc -Wl,--start-group -lc -lc -lnosys -Wl,--end-group
screamer 0:4a2e5f0422d6 30
screamer 0:4a2e5f0422d6 31 ifeq ($(DEBUG), 1)
screamer 0:4a2e5f0422d6 32 CC_FLAGS += -DDEBUG -O0
screamer 0:4a2e5f0422d6 33 else
screamer 0:4a2e5f0422d6 34 CC_FLAGS += -DNDEBUG -Os
screamer 0:4a2e5f0422d6 35 endif
screamer 0:4a2e5f0422d6 36
screamer 0:4a2e5f0422d6 37 all: $(PROJECT).bin $(PROJECT).hex
screamer 0:4a2e5f0422d6 38
screamer 0:4a2e5f0422d6 39 clean:
screamer 0:4a2e5f0422d6 40 rm -f $(PROJECT).bin $(PROJECT).elf $(PROJECT).hex $(PROJECT).map $(PROJECT).lst $(OBJECTS) $(DEPS)
screamer 0:4a2e5f0422d6 41
screamer 0:4a2e5f0422d6 42 .s.o:
screamer 0:4a2e5f0422d6 43 $(AS) $(CPU) -o $@ $<
screamer 0:4a2e5f0422d6 44
screamer 0:4a2e5f0422d6 45 .c.o:
screamer 0:4a2e5f0422d6 46 $(CC) $(CC_FLAGS) $(CC_SYMBOLS) -std=gnu99 $(INCLUDE_PATHS) -o $@ $<
screamer 0:4a2e5f0422d6 47
screamer 0:4a2e5f0422d6 48 .cpp.o:
screamer 0:4a2e5f0422d6 49 $(CPP) $(CC_FLAGS) $(CC_SYMBOLS) -std=gnu++98 -fno-rtti $(INCLUDE_PATHS) -o $@ $<
screamer 0:4a2e5f0422d6 50
screamer 0:4a2e5f0422d6 51
screamer 0:4a2e5f0422d6 52 $(PROJECT).elf: $(OBJECTS) $(SYS_OBJECTS)
screamer 0:4a2e5f0422d6 53 $(LD) $(LD_FLAGS) -T$(LINKER_SCRIPT) $(LIBRARY_PATHS) -o $@ $^ $(LIBRARIES) $(LD_SYS_LIBS) $(LIBRARIES) $(LD_SYS_LIBS)
screamer 0:4a2e5f0422d6 54 $(SIZE) $@
screamer 0:4a2e5f0422d6 55
screamer 0:4a2e5f0422d6 56 $(PROJECT).bin: $(PROJECT).elf
screamer 0:4a2e5f0422d6 57 @$(OBJCOPY) -O binary $< $@
screamer 0:4a2e5f0422d6 58
screamer 0:4a2e5f0422d6 59 $(PROJECT).hex: $(PROJECT).elf
screamer 0:4a2e5f0422d6 60 @$(OBJCOPY) -O ihex $< $@
screamer 0:4a2e5f0422d6 61
screamer 0:4a2e5f0422d6 62 $(PROJECT).lst: $(PROJECT).elf
screamer 0:4a2e5f0422d6 63 @$(OBJDUMP) -Sdh $< > $@
screamer 0:4a2e5f0422d6 64
screamer 0:4a2e5f0422d6 65 lst: $(PROJECT).lst
screamer 0:4a2e5f0422d6 66
screamer 0:4a2e5f0422d6 67 size:
screamer 0:4a2e5f0422d6 68 $(SIZE) $(PROJECT).elf
screamer 0:4a2e5f0422d6 69
screamer 0:4a2e5f0422d6 70 DEPS = $(OBJECTS:.o=.d) $(SYS_OBJECTS:.o=.d)
screamer 0:4a2e5f0422d6 71 -include $(DEPS)
screamer 0:4a2e5f0422d6 72