Preliminary main mbed library for nexpaq development

Committer:
nexpaq
Date:
Fri Nov 04 20:54:50 2016 +0000
Revision:
1:d96dbedaebdb
Parent:
0:6c56fb4bc5f0
Removed extra directories for other platforms

Who changed what in which revision?

UserRevisionLine numberNew contents of line
nexpaq 0:6c56fb4bc5f0 1 # This file was automagically generated by mbed.org. For more information,
nexpaq 0:6c56fb4bc5f0 2 # see http://mbed.org/handbook/Exporting-to-GCC-ARM-Embedded
nexpaq 0:6c56fb4bc5f0 3
nexpaq 0:6c56fb4bc5f0 4 # cross-platform directory manipulation
nexpaq 0:6c56fb4bc5f0 5 ifeq ($(shell echo $$OS),$$OS)
nexpaq 0:6c56fb4bc5f0 6 MAKEDIR = if not exist "$(1)" mkdir "$(1)"
nexpaq 0:6c56fb4bc5f0 7 RM = rmdir /S /Q "$(1)"
nexpaq 0:6c56fb4bc5f0 8 else
nexpaq 0:6c56fb4bc5f0 9 MAKEDIR = $(SHELL) -c "mkdir -p \"$(1)\""
nexpaq 0:6c56fb4bc5f0 10 RM = $(SHELL) -c "rm -rf \"$(1)\""
nexpaq 0:6c56fb4bc5f0 11 endif
nexpaq 0:6c56fb4bc5f0 12
nexpaq 0:6c56fb4bc5f0 13 ifeq (,$(filter .build,$(notdir $(CURDIR))))
nexpaq 0:6c56fb4bc5f0 14 .SUFFIXES:
nexpaq 0:6c56fb4bc5f0 15 OBJDIR := .build
nexpaq 0:6c56fb4bc5f0 16 mkfile_path := $(abspath $(lastword $(MAKEFILE_LIST)))
nexpaq 0:6c56fb4bc5f0 17 MAKETARGET = $(MAKE) --no-print-directory -C $(OBJDIR) -f $(mkfile_path) \
nexpaq 0:6c56fb4bc5f0 18 SRCDIR=$(CURDIR) $(MAKECMDGOALS)
nexpaq 0:6c56fb4bc5f0 19 .PHONY: $(OBJDIR) clean
nexpaq 0:6c56fb4bc5f0 20 all:
nexpaq 0:6c56fb4bc5f0 21 +@$(call MAKEDIR,$(OBJDIR))
nexpaq 0:6c56fb4bc5f0 22 +@$(MAKETARGET)
nexpaq 0:6c56fb4bc5f0 23 $(OBJDIR): all
nexpaq 0:6c56fb4bc5f0 24 Makefile : ;
nexpaq 0:6c56fb4bc5f0 25 % :: $(OBJDIR) ; :
nexpaq 0:6c56fb4bc5f0 26 clean :
nexpaq 0:6c56fb4bc5f0 27 $(call RM,$(OBJDIR))
nexpaq 0:6c56fb4bc5f0 28 {% block target_clean -%}
nexpaq 0:6c56fb4bc5f0 29 {% endblock %}
nexpaq 0:6c56fb4bc5f0 30 else
nexpaq 0:6c56fb4bc5f0 31
nexpaq 0:6c56fb4bc5f0 32 VPATH = {% for path in vpath %}{{path}} {% endfor %}
nexpaq 0:6c56fb4bc5f0 33
nexpaq 0:6c56fb4bc5f0 34 GCC_BIN =
nexpaq 0:6c56fb4bc5f0 35 PROJECT = {{name}}
nexpaq 0:6c56fb4bc5f0 36 OBJECTS = {% for f in to_be_compiled %}{{f}} {% endfor %}
nexpaq 0:6c56fb4bc5f0 37 SYS_OBJECTS = {% for f in object_files %}{{f}} {% endfor %}
nexpaq 0:6c56fb4bc5f0 38 INCLUDE_PATHS = {% for p in include_paths %}-I{{p}} {% endfor %}
nexpaq 0:6c56fb4bc5f0 39 LIBRARY_PATHS = {% for p in library_paths %}-L{{p}} {% endfor %}
nexpaq 0:6c56fb4bc5f0 40 LIBRARIES = {% for lib in libraries %}-l{{lib}} {% endfor %}
nexpaq 0:6c56fb4bc5f0 41 LINKER_SCRIPT = {{linker_script}}
nexpaq 0:6c56fb4bc5f0 42 {%- block additional_variables -%}{% endblock %}
nexpaq 0:6c56fb4bc5f0 43
nexpaq 0:6c56fb4bc5f0 44 ###############################################################################
nexpaq 0:6c56fb4bc5f0 45 AS = $(GCC_BIN)arm-none-eabi-as
nexpaq 0:6c56fb4bc5f0 46 CC = $(GCC_BIN)arm-none-eabi-gcc
nexpaq 0:6c56fb4bc5f0 47 CPP = $(GCC_BIN)arm-none-eabi-g++
nexpaq 0:6c56fb4bc5f0 48 LD = $(GCC_BIN)arm-none-eabi-gcc
nexpaq 0:6c56fb4bc5f0 49 OBJCOPY = $(GCC_BIN)arm-none-eabi-objcopy
nexpaq 0:6c56fb4bc5f0 50 OBJDUMP = $(GCC_BIN)arm-none-eabi-objdump
nexpaq 0:6c56fb4bc5f0 51 SIZE = $(GCC_BIN)arm-none-eabi-size
nexpaq 0:6c56fb4bc5f0 52 {%- block additional_executables -%}{% endblock %}
nexpaq 0:6c56fb4bc5f0 53
nexpaq 0:6c56fb4bc5f0 54 {%- block flags -%}
nexpaq 0:6c56fb4bc5f0 55
nexpaq 0:6c56fb4bc5f0 56 {% block hardfp %}
nexpaq 0:6c56fb4bc5f0 57 {% if "-mfloat-abi=softfp" in cpu_flags %}
nexpaq 0:6c56fb4bc5f0 58 ifeq ($(HARDFP),1)
nexpaq 0:6c56fb4bc5f0 59 FLOAT_ABI = hard
nexpaq 0:6c56fb4bc5f0 60 else
nexpaq 0:6c56fb4bc5f0 61 FLOAT_ABI = softfp
nexpaq 0:6c56fb4bc5f0 62 endif
nexpaq 0:6c56fb4bc5f0 63 {% endif %}
nexpaq 0:6c56fb4bc5f0 64 {%- endblock %}
nexpaq 0:6c56fb4bc5f0 65
nexpaq 0:6c56fb4bc5f0 66 CPU = {% block cpu %}{% for cf in cpu_flags %}{{cf|replace("-mfloat-abi=softfp","-mfloat-abi=$(FLOAT_ABI)")}} {% endfor %}{% endblock %}
nexpaq 0:6c56fb4bc5f0 67 CC_FLAGS = {% block cc_flags %}{{common_flags|join(" ")}} {{c_flags|join(" ")}} -MMD -MP{% endblock %}
nexpaq 0:6c56fb4bc5f0 68 CPPC_FLAGS = {% block cppc_flags %}{{common_flags|join(" ")}} {{cxx_flags|join(" ")}} -MMD -MP{% endblock %}
nexpaq 0:6c56fb4bc5f0 69 ASM_FLAGS = {% block asm_flags %}{{asm_flags|join(" ")}} {{common_flags|join(" ")}}{% endblock %}
nexpaq 0:6c56fb4bc5f0 70 CC_SYMBOLS = {% block cc_symbols %}{% for s in symbols %}-D{{s}} {% endfor %}{% endblock %}
nexpaq 0:6c56fb4bc5f0 71
nexpaq 0:6c56fb4bc5f0 72 LD_FLAGS = {%- block ld_flags -%} {{ld_flags|join(" ")}} {% endblock %}
nexpaq 0:6c56fb4bc5f0 73 LD_SYS_LIBS = {% block ld_sys_libs %}-lstdc++ -lsupc++ -lm -lc -lgcc -lnosys{% endblock %}
nexpaq 0:6c56fb4bc5f0 74 {% endblock %}
nexpaq 0:6c56fb4bc5f0 75
nexpaq 0:6c56fb4bc5f0 76 ifeq ($(DEBUG), 1)
nexpaq 0:6c56fb4bc5f0 77 CC_FLAGS += -DDEBUG -O0
nexpaq 0:6c56fb4bc5f0 78 else
nexpaq 0:6c56fb4bc5f0 79 CC_FLAGS += -DNDEBUG -Os
nexpaq 0:6c56fb4bc5f0 80 endif
nexpaq 0:6c56fb4bc5f0 81
nexpaq 0:6c56fb4bc5f0 82
nexpaq 0:6c56fb4bc5f0 83 .PHONY: all lst size
nexpaq 0:6c56fb4bc5f0 84
nexpaq 0:6c56fb4bc5f0 85 {% block target_all -%}
nexpaq 0:6c56fb4bc5f0 86 all: $(PROJECT).bin $(PROJECT).hex size
nexpaq 0:6c56fb4bc5f0 87 {% endblock %}
nexpaq 0:6c56fb4bc5f0 88
nexpaq 0:6c56fb4bc5f0 89
nexpaq 0:6c56fb4bc5f0 90 .asm.o:
nexpaq 0:6c56fb4bc5f0 91 +@$(call MAKEDIR,$(dir $@))
nexpaq 0:6c56fb4bc5f0 92 $(CC) $(CPU) -c $(ASM_FLAGS) $(CC_SYMBOLS) $(INCLUDE_PATHS) -o $@ $<
nexpaq 0:6c56fb4bc5f0 93 .s.o:
nexpaq 0:6c56fb4bc5f0 94 +@$(call MAKEDIR,$(dir $@))
nexpaq 0:6c56fb4bc5f0 95 $(CC) $(CPU) -c $(ASM_FLAGS) $(CC_SYMBOLS) $(INCLUDE_PATHS) -o $@ $<
nexpaq 0:6c56fb4bc5f0 96 .S.o:
nexpaq 0:6c56fb4bc5f0 97 +@$(call MAKEDIR,$(dir $@))
nexpaq 0:6c56fb4bc5f0 98 $(CC) $(CPU) -c $(ASM_FLAGS) $(CC_SYMBOLS) $(INCLUDE_PATHS) -o $@ $<
nexpaq 0:6c56fb4bc5f0 99
nexpaq 0:6c56fb4bc5f0 100 .c.o:
nexpaq 0:6c56fb4bc5f0 101 +@$(call MAKEDIR,$(dir $@))
nexpaq 0:6c56fb4bc5f0 102 $(CC) $(CC_FLAGS) $(CC_SYMBOLS) $(INCLUDE_PATHS) -o $@ $<
nexpaq 0:6c56fb4bc5f0 103
nexpaq 0:6c56fb4bc5f0 104 .cpp.o:
nexpaq 0:6c56fb4bc5f0 105 +@$(call MAKEDIR,$(dir $@))
nexpaq 0:6c56fb4bc5f0 106 $(CPP) $(CPPC_FLAGS) $(CC_SYMBOLS) $(INCLUDE_PATHS) -o $@ $<
nexpaq 0:6c56fb4bc5f0 107
nexpaq 0:6c56fb4bc5f0 108
nexpaq 0:6c56fb4bc5f0 109 {% block target_project_elf %}
nexpaq 0:6c56fb4bc5f0 110 $(PROJECT).elf: $(OBJECTS) $(SYS_OBJECTS) $(LINKER_SCRIPT)
nexpaq 0:6c56fb4bc5f0 111 $(LD) $(LD_FLAGS) -T$(filter %.ld, $^) $(LIBRARY_PATHS) -o $@ $(filter %.o, $^) -Wl,--start-group $(LIBRARIES) $(LD_SYS_LIBS) -Wl,--end-group
nexpaq 0:6c56fb4bc5f0 112 {% endblock %}
nexpaq 0:6c56fb4bc5f0 113
nexpaq 0:6c56fb4bc5f0 114 $(PROJECT).bin: $(PROJECT).elf
nexpaq 0:6c56fb4bc5f0 115 $(OBJCOPY) -O binary $< $@
nexpaq 0:6c56fb4bc5f0 116
nexpaq 0:6c56fb4bc5f0 117 $(PROJECT).hex: $(PROJECT).elf
nexpaq 0:6c56fb4bc5f0 118 @$(OBJCOPY) -O ihex $< $@
nexpaq 0:6c56fb4bc5f0 119
nexpaq 0:6c56fb4bc5f0 120 $(PROJECT).lst: $(PROJECT).elf
nexpaq 0:6c56fb4bc5f0 121 @$(OBJDUMP) -Sdh $< > $@
nexpaq 0:6c56fb4bc5f0 122
nexpaq 0:6c56fb4bc5f0 123 lst: $(PROJECT).lst
nexpaq 0:6c56fb4bc5f0 124
nexpaq 0:6c56fb4bc5f0 125 size: $(PROJECT).elf
nexpaq 0:6c56fb4bc5f0 126 $(SIZE) $(PROJECT).elf
nexpaq 0:6c56fb4bc5f0 127
nexpaq 0:6c56fb4bc5f0 128 DEPS = $(OBJECTS:.o=.d) $(SYS_OBJECTS:.o=.d)
nexpaq 0:6c56fb4bc5f0 129 -include $(DEPS)
nexpaq 0:6c56fb4bc5f0 130
nexpaq 0:6c56fb4bc5f0 131 {% block additional_targets %}{% endblock %}
nexpaq 0:6c56fb4bc5f0 132 endif
nexpaq 0:6c56fb4bc5f0 133