diff options
| author | Sudar Muthu <sudar@sudarmuthu.com> | 2018-09-30 20:13:29 +0530 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-09-30 20:13:29 +0530 |
| commit | fe84c591944f74c902466d813fae0d164761dc59 (patch) | |
| tree | 5c29b0153379c57c9d75e1c03b9fef987fb82015 /Teensy.mk | |
| parent | 089b535601b6411eb8055d449125888bcc666aa1 (diff) | |
| parent | 62d23d66a2f9326235022bfd8711c62e015c0bc8 (diff) | |
Merge pull request #580 from wingunder/master
Moved the PARSE_BOARD macro and added the TOOL_PREFIX variable for setting up tool chains.
Diffstat (limited to 'Teensy.mk')
| -rw-r--r-- | Teensy.mk | 124 |
1 files changed, 24 insertions, 100 deletions
@@ -38,25 +38,19 @@ ARDUINO_CORE_PATH = $(ARDUINO_DIR)/hardware/teensy/avr/cores/teensy3 BOARDS_TXT = $(ARDUINO_DIR)/hardware/$(ARDMK_VENDOR)/avr/boards.txt -ifndef PARSE_TEENSY - # result = $(call READ_BOARD_TXT, 'boardname', 'parameter') - PARSE_TEENSY = $(shell grep -v "^\#" "$(BOARDS_TXT)" | grep $(1).$(2) | cut -d = -f 2- ) -endif - - ifndef F_CPU ifndef BOARD_SUB - SPEEDS := $(call PARSE_TEENSY,"$(BOARD_TAG),menu.speed.*.build.fcpu") # Obtain sequence of supported frequencies. + SPEEDS := $(call PARSE_BOARD,"$(BOARD_TAG),menu.speed.*.build.fcpu") # Obtain sequence of supported frequencies. SPEEDS := $(shell printf "%d\n" $(SPEEDS) | sort -g) # Sort it, just in case. Printf to re-append newlines so that sort works. F_CPU := $(lastword $(SPEEDS)) # List is sorted in ascending order. Take the fastest speed. #$(info "speeds is " $(SPEEDS)) # Good for debugging else - F_CPU := $(call PARSE_TEENSY,$(BOARD_TAG),menu.speed.$(BOARD_SUB).build.fcpu) + F_CPU := $(call PARSE_BOARD,$(BOARD_TAG),menu.speed.$(BOARD_SUB).build.fcpu) endif endif # if boards.txt gets modified, look there, else hard code it -ARCHITECTURE = $(call PARSE_TEENSY,$(BOARD_TAG),build.architecture) +ARCHITECTURE = $(call PARSE_BOARD,$(BOARD_TAG),build.architecture) ifeq ($(strip $(ARCHITECTURE)),) ARCHITECTURE = arm endif @@ -72,81 +66,11 @@ endif ######################################################################## # command names -ifndef CC_NAME - CC_NAME := $(call PARSE_TEENSY,$(BOARD_TAG),build.command.gcc) - ifndef CC_NAME - CC_NAME := arm-none-eabi-gcc - else - $(call show_config_variable,CC_NAME,[COMPUTED]) - endif -endif - -ifndef CXX_NAME - CXX_NAME := $(call PARSE_TEENSY,$(BOARD_TAG),build.command.g++) - ifndef CXX_NAME - CXX_NAME := arm-none-eabi-g++ - else - $(call show_config_variable,CXX_NAME,[COMPUTED]) - endif -endif - -ifndef AS_NAME - AS_NAME := $(call PARSE_TEENSY,$(BOARD_TAG),build.command.as) - ifndef AS_NAME - AS_NAME := arm-none-eabi-gcc-as - else - $(call show_config_variable,AS_NAME,[COMPUTED]) - endif -endif - -ifndef OBJCOPY_NAME - OBJCOPY_NAME := $(call PARSE_TEENSY,$(BOARD_TAG),build.command.objcopy) - ifndef OBJCOPY_NAME - OBJCOPY_NAME := arm-none-eabi-objcopy - else - $(call show_config_variable,OBJCOPY_NAME,[COMPUTED]) - endif -endif - -ifndef OBJDUMP_NAME - OBJDUMP_NAME := $(call PARSE_TEENSY,$(BOARD_TAG),build.command.objdump) - ifndef OBJDUMP_NAME - OBJDUMP_NAME := arm-none-eabi-objdump - else - $(call show_config_variable,OBJDUMP_NAME,[COMPUTED]) - endif -endif - -ifndef AR_NAME - AR_NAME := $(call PARSE_TEENSY,$(BOARD_TAG),build.command.ar) - ifndef AR_NAME - AR_NAME := arm-none-eabi-ar - else - $(call show_config_variable,AR_NAME,[COMPUTED]) - endif -endif - -ifndef SIZE_NAME - SIZE_NAME := $(call PARSE_TEENSY,$(BOARD_TAG),build.command.size) - ifndef SIZE_NAME - SIZE_NAME := arm-none-eabi-size - else - $(call show_config_variable,SIZE_NAME,[COMPUTED]) - endif -endif - -ifndef NM_NAME - NM_NAME := $(call PARSE_TEENSY,$(BOARD_TAG),build.command.nm) - ifndef NM_NAME - NM_NAME := arm-none-eabi-gcc-nm - else - $(call show_config_variable,NM_NAME,[COMPUTED]) - endif -endif +TOOL_PREFIX = arm-none-eabi # processor stuff ifndef MCU - MCU := $(call PARSE_TEENSY,$(BOARD_TAG),build.mcu) + MCU := $(call PARSE_BOARD,$(BOARD_TAG),build.mcu) endif ifndef MCU_FLAG_NAME @@ -161,39 +85,39 @@ endif CPPFLAGS += -DLAYOUT_US_ENGLISH -D$(USB_TYPE) -CPPFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.option) +CPPFLAGS += $(call PARSE_BOARD,$(BOARD_TAG),build.option) -CXXFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.cppoption) -ifeq ("$(call PARSE_TEENSY,$(BOARD_TAG),build.gnu0x)","true") +CXXFLAGS += $(call PARSE_BOARD,$(BOARD_TAG),build.cppoption) +ifeq ("$(call PARSE_BOARD,$(BOARD_TAG),build.gnu0x)","true") CXXFLAGS_STD += -std=gnu++0x endif -ifeq ("$(call PARSE_TEENSY,$(BOARD_TAG),build.elide_constructors)", "true") +ifeq ("$(call PARSE_BOARD,$(BOARD_TAG),build.elide_constructors)", "true") CXXFLAGS += -felide-constructors endif -CXXFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.common) -CXXFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.cpu) -CXXFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.defs) -CXXFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.cpp) +CXXFLAGS += $(call PARSE_BOARD,$(BOARD_TAG),build.flags.common) +CXXFLAGS += $(call PARSE_BOARD,$(BOARD_TAG),build.flags.cpu) +CXXFLAGS += $(call PARSE_BOARD,$(BOARD_TAG),build.flags.defs) +CXXFLAGS += $(call PARSE_BOARD,$(BOARD_TAG),build.flags.cpp) -CFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.common) -CFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.cpu) -CFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.defs) +CFLAGS += $(call PARSE_BOARD,$(BOARD_TAG),build.flags.common) +CFLAGS += $(call PARSE_BOARD,$(BOARD_TAG),build.flags.cpu) +CFLAGS += $(call PARSE_BOARD,$(BOARD_TAG),build.flags.defs) -ASFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.common) -ASFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.cpu) -ASFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.defs) -ASFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.S) +ASFLAGS += $(call PARSE_BOARD,$(BOARD_TAG),build.flags.common) +ASFLAGS += $(call PARSE_BOARD,$(BOARD_TAG),build.flags.cpu) +ASFLAGS += $(call PARSE_BOARD,$(BOARD_TAG),build.flags.defs) +ASFLAGS += $(call PARSE_BOARD,$(BOARD_TAG),build.flags.S) -LDFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.cpu) +LDFLAGS += $(call PARSE_BOARD,$(BOARD_TAG),build.flags.cpu) -AMCU := $(call PARSE_TEENSY,$(BOARD_TAG),build.mcu) +AMCU := $(call PARSE_BOARD,$(BOARD_TAG),build.mcu) LDFLAGS += -Wl,--gc-sections,--relax LINKER_SCRIPTS = -T${ARDUINO_CORE_PATH}/${AMCU}.ld -OTHER_LIBS = $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.libs) +OTHER_LIBS = $(call PARSE_BOARD,$(BOARD_TAG),build.flags.libs) -CPUFLAGS = $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.cpu) +CPUFLAGS = $(call PARSE_BOARD,$(BOARD_TAG),build.flags.cpu) # usually defined as per teensy31.build.mcu=mk20dx256 but that isn't valid switch MCU := $(shell echo ${CPUFLAGS} | sed -n -e 's/.*-mcpu=\([a-zA-Z0-9_-]*\).*/\1/p') |
