aboutsummaryrefslogtreecommitdiff
path: root/Teensy.mk
diff options
context:
space:
mode:
authorGeorge Harker <george@george-graphics.co.uk>2016-11-04 11:21:02 -0700
committerGeorge Harker <george@george-graphics.co.uk>2016-11-04 11:21:02 -0700
commit1d7773938c946f7dc621f57eda5efdd581547263 (patch)
treebaffd8ce8bda305684fd9373a090e9485c1521bb /Teensy.mk
parent23556d759cfaf94b7ed4a996f177412833e55387 (diff)
make it work with modern arduino and teensyduino scripts
Diffstat (limited to 'Teensy.mk')
-rw-r--r--Teensy.mk28
1 files changed, 22 insertions, 6 deletions
diff --git a/Teensy.mk b/Teensy.mk
index 3676c78..c33c7be 100644
--- a/Teensy.mk
+++ b/Teensy.mk
@@ -34,8 +34,8 @@ endif
include $(ARDMK_DIR)/Common.mk
ARDMK_VENDOR = teensy
-ARDUINO_CORE_PATH = $(ARDUINO_DIR)/hardware/teensy/cores/teensy3
-BOARDS_TXT = $(ARDUINO_DIR)/hardware/$(ARDMK_VENDOR)/boards.txt
+ARDUINO_CORE_PATH = $(ARDUINO_DIR)/hardware/teensy/avr/cores/teensy3
+BOARDS_TXT = $(ARDUINO_DIR)/hardware/$(ARDMK_VENDOR)/avr/boards.txt
ifndef F_CPU
F_CPU=96000000
@@ -152,11 +152,26 @@ ifeq ("$(call PARSE_TEENSY,$(BOARD_TAG),build.elide_constructors)", "true")
CXXFLAGS += -felide-constructors
endif
-LDFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.linkoption) $(call PARSE_TEENSY,$(BOARD_TAG),build.additionalobject)
+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)
-ifneq ("$(call PARSE_TEENSY,$(BOARD_TAG),build.linkscript)",)
- LDFLAGS += -T$(ARDUINO_CORE_PATH)/$(call PARSE_TEENSY,$(BOARD_TAG),build.linkscript)
-endif
+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)
+
+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)
+
+LDFLAGS += $(call PARSE_TEENSY,$(BOARD_TAG),build.flags.cpu)
+
+AMCU := $(call PARSE_TEENSY,$(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)
########################################################################
# some fairly odd settings so that 'make upload' works
@@ -171,3 +186,4 @@ RESET_CMD = nohup $(ARDUINO_DIR)/hardware/tools/teensy_post_compile -board=$(BOA
# automatially include Arduino.mk for the user
include $(ARDMK_DIR)/Arduino.mk
+