summaryrefslogtreecommitdiff
path: root/tool
diff options
context:
space:
mode:
Diffstat (limited to 'tool')
-rw-r--r--tool/mbed/gcc.mk37
-rw-r--r--tool/mbed/lpc11u35_501.mk49
-rw-r--r--tool/mbed/mbed.mk126
3 files changed, 125 insertions, 87 deletions
diff --git a/tool/mbed/gcc.mk b/tool/mbed/gcc.mk
index 032f7c6cae..b8c7336b45 100644
--- a/tool/mbed/gcc.mk
+++ b/tool/mbed/gcc.mk
@@ -1,4 +1,6 @@
-###############################################################################
+# based on Makefile exported form mbed.org
+# see http://mbed.org/handbook/Exporting-to-GCC-ARM-Embedded
+
GCC_BIN =
AS = $(GCC_BIN)arm-none-eabi-as
CC = $(GCC_BIN)arm-none-eabi-gcc
@@ -9,13 +11,21 @@ OBJDUMP = $(GCC_BIN)arm-none-eabi-objdump
SIZE = $(GCC_BIN)arm-none-eabi-size
CHKSUM = $(TMK_DIR)/tool/mbed/lpc-vector-checksum
-CPU = -mcpu=cortex-m0 -mthumb
-
-CC_FLAGS += $(CPU) -c -g -fno-common -fmessage-length=0 -Wall -fno-exceptions -ffunction-sections -fdata-sections
+CC_FLAGS += \
+ $(CPU) \
+ -c \
+ -g \
+ -fno-common \
+ -fmessage-length=0 \
+ -Wall \
+ -fno-exceptions \
+ -ffunction-sections \
+ -fdata-sections \
+ -fomit-frame-pointer
CC_FLAGS += -MMD -MP
-CC_SYMBOLS = -DTARGET_LPC11U35_401 -DTARGET_M0 -DTARGET_NXP -DTARGET_LPC11UXX -DTOOLCHAIN_GCC_ARM -DTOOLCHAIN_GCC -D__CORTEX_M0 -DARM_MATH_CM0 -DMBED_BUILD_TIMESTAMP=1399108688.49 -D__MBED__=1
-LD_FLAGS = -mcpu=cortex-m0 -mthumb -Wl,--gc-sections --specs=nano.specs
+LD_FLAGS = $(CPU) -Wl,--gc-sections --specs=nano.specs
+#LD_FLAGS += -u _printf_float -u _scanf_float
LD_FLAGS += -Wl,-Map=$(OBJDIR)/$(PROJECT).map,--cref
LD_SYS_LIBS = -lstdc++ -lsupc++ -lm -lc -lgcc -lnosys
@@ -25,7 +35,7 @@ else
CC_FLAGS += -DNDEBUG -Os
endif
-all: $(OBJDIR)/$(PROJECT).bin $(OBJDIR)/$(PROJECT).hex size
+all: $(OBJDIR)/$(PROJECT).bin $(OBJDIR)/$(PROJECT).hex
clean:
rm -f $(OBJDIR)/$(PROJECT).bin $(OBJDIR)/$(PROJECT).elf $(OBJDIR)/$(PROJECT).hex $(OBJDIR)/$(PROJECT).map $(OBJDIR)/$(PROJECT).lst $(OBJECTS) $(DEPS)
@@ -41,22 +51,21 @@ $(OBJDIR)/%.o: %.c
$(OBJDIR)/%.o: %.cpp
mkdir -p $(@D)
- $(CPP) $(CC_FLAGS) $(CC_SYMBOLS) -std=gnu++98 $(INCLUDE_PATHS) -o $@ $<
+ $(CPP) $(CC_FLAGS) $(CC_SYMBOLS) -std=gnu++98 -fno-rtti $(INCLUDE_PATHS) -o $@ $<
$(OBJDIR)/$(PROJECT).elf: $(OBJECTS) $(SYS_OBJECTS)
$(LD) $(LD_FLAGS) -T$(LINKER_SCRIPT) $(LIBRARY_PATHS) -o $@ $^ $(LIBRARIES) $(LD_SYS_LIBS) $(LIBRARIES) $(LD_SYS_LIBS)
- @echo ""
- @echo "*****"
- @echo "***** You must modify vector checksum value in *.bin and *.hex files."
- @echo "*****"
- @echo ""
+ $(SIZE) $@
$(OBJDIR)/$(PROJECT).bin: $(OBJDIR)/$(PROJECT).elf
@$(OBJCOPY) -O binary $< $@
- @echo "Writing vector checksum value into $@ ..."
+ifneq (,$(findstring TARGET_NXP,$(CC_SYMBOLS)))
+ @echo
+ @echo "For NXP writing vector checksum value into $@ ..."
@$(CHKSUM) $@
@echo
+endif
$(OBJDIR)/$(PROJECT).hex: $(OBJDIR)/$(PROJECT).elf
@$(OBJCOPY) -O ihex $< $@
diff --git a/tool/mbed/lpc11u35_501.mk b/tool/mbed/lpc11u35_501.mk
new file mode 100644
index 0000000000..af1aad797f
--- /dev/null
+++ b/tool/mbed/lpc11u35_501.mk
@@ -0,0 +1,49 @@
+# based on Makefile exported form mbed.org
+# see http://mbed.org/handbook/Exporting-to-GCC-ARM-Embedded
+
+CPU = -mcpu=cortex-m0 -mthumb
+
+CC_SYMBOLS = \
+ -DTARGET_LPC11U35_501 \
+ -DTARGET_M0 \
+ -DTARGET_CORTEX_M \
+ -DTARGET_NXP \
+ -DTARGET_LPC11UXX \
+ -DTARGET_MCU_LPC11U35_501 \
+ -DTOOLCHAIN_GCC_ARM \
+ -DTOOLCHAIN_GCC \
+ -D__CORTEX_M0 \
+ -DARM_MATH_CM0 \
+ -D__MBED__=1
+
+OBJECTS += \
+ $(OBJDIR)/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_GCC_ARM/startup_LPC11xx.o \
+ $(OBJDIR)/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/cmsis_nvic.o \
+ $(OBJDIR)/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/system_LPC11Uxx.o \
+ $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_MCU_LPC11U35_501/PeripheralPins.o \
+ $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/analogin_api.o \
+ $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/gpio_api.o \
+ $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/gpio_irq_api.o \
+ $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/i2c_api.o \
+ $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/pinmap.o \
+ $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/port_api.o \
+ $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/pwmout_api.o \
+ $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/serial_api.o \
+ $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/sleep.o \
+ $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/spi_api.o \
+ $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/us_ticker.o
+
+INCLUDE_PATHS += \
+ -I$(MBED_DIR)/libraries/mbed/targets \
+ -I$(MBED_DIR)/libraries/mbed/targets/cmsis \
+ -I$(MBED_DIR)/libraries/mbed/targets/cmsis/TARGET_NXP \
+ -I$(MBED_DIR)/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX \
+ -I$(MBED_DIR)/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_GCC_ARM \
+ -I$(MBED_DIR)/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_GCC_ARM/TARGET_LPC11U35_501 \
+ -I$(MBED_DIR)/libraries/mbed/targets/hal \
+ -I$(MBED_DIR)/libraries/mbed/targets/hal/TARGET_NXP \
+ -I$(MBED_DIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX \
+ -I$(MBED_DIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_MCU_LPC11U35_501 \
+ -I$(MBED_DIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_MCU_LPC11U35_501/TARGET_LPC11U35_501 \
+
+LINKER_SCRIPT = $(MBED_DIR)/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_GCC_ARM/TARGET_LPC11U35_501/LPC11U35.ld
diff --git a/tool/mbed/mbed.mk b/tool/mbed/mbed.mk
index 0f12ee2af3..242d78794f 100644
--- a/tool/mbed/mbed.mk
+++ b/tool/mbed/mbed.mk
@@ -1,99 +1,79 @@
+# based on Makefile exported form mbed.org
+# see http://mbed.org/handbook/Exporting-to-GCC-ARM-Embedded
+
OBJECTS += \
- $(OBJDIR)/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_GCC_ARM/startup_LPC11xx.o \
- $(OBJDIR)/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/cmsis_nvic.o \
- $(OBJDIR)/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/system_LPC11Uxx.o \
- $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/port_api.o \
- $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/spi_api.o \
- $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/analogin_api.o \
- $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/gpio_api.o \
- $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/gpio_irq_api.o \
- $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/serial_api.o \
- $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/i2c_api.o \
- $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/pwmout_api.o \
- $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/sleep.o \
- $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/pinmap.o \
- $(OBJDIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/us_ticker.o \
- $(OBJDIR)/libraries/mbed/common/board.o \
- $(OBJDIR)/libraries/mbed/common/mbed_interface.o \
- $(OBJDIR)/libraries/mbed/common/exit.o \
- $(OBJDIR)/libraries/mbed/common/rtc_time.o \
- $(OBJDIR)/libraries/mbed/common/us_ticker_api.o \
- $(OBJDIR)/libraries/mbed/common/pinmap_common.o \
- $(OBJDIR)/libraries/mbed/common/error.o \
- $(OBJDIR)/libraries/mbed/common/gpio.o \
- $(OBJDIR)/libraries/mbed/common/semihost_api.o \
- $(OBJDIR)/libraries/mbed/common/wait_api.o \
- $(OBJDIR)/libraries/mbed/common/RawSerial.o \
- $(OBJDIR)/libraries/mbed/common/Ticker.o \
- $(OBJDIR)/libraries/mbed/common/FilePath.o \
- $(OBJDIR)/libraries/mbed/common/I2C.o \
+ $(OBJDIR)/libraries/mbed/common/BusIn.o \
+ $(OBJDIR)/libraries/mbed/common/BusInOut.o \
+ $(OBJDIR)/libraries/mbed/common/BusOut.o \
+ $(OBJDIR)/libraries/mbed/common/CAN.o \
+ $(OBJDIR)/libraries/mbed/common/CallChain.o \
+ $(OBJDIR)/libraries/mbed/common/Ethernet.o \
$(OBJDIR)/libraries/mbed/common/FileBase.o \
- $(OBJDIR)/libraries/mbed/common/retarget.o \
- $(OBJDIR)/libraries/mbed/common/Serial.o \
- $(OBJDIR)/libraries/mbed/common/Stream.o \
+ $(OBJDIR)/libraries/mbed/common/FileLike.o \
+ $(OBJDIR)/libraries/mbed/common/FilePath.o \
$(OBJDIR)/libraries/mbed/common/FileSystemLike.o \
- $(OBJDIR)/libraries/mbed/common/CallChain.o \
- $(OBJDIR)/libraries/mbed/common/InterruptManager.o \
- $(OBJDIR)/libraries/mbed/common/SerialBase.o \
- $(OBJDIR)/libraries/mbed/common/BusInOut.o \
- $(OBJDIR)/libraries/mbed/common/SPISlave.o \
- $(OBJDIR)/libraries/mbed/common/I2CSlave.o \
$(OBJDIR)/libraries/mbed/common/FunctionPointer.o \
- $(OBJDIR)/libraries/mbed/common/Timer.o \
+ $(OBJDIR)/libraries/mbed/common/I2C.o \
+ $(OBJDIR)/libraries/mbed/common/I2CSlave.o \
+ $(OBJDIR)/libraries/mbed/common/InterruptIn.o \
+ $(OBJDIR)/libraries/mbed/common/InterruptManager.o \
+ $(OBJDIR)/libraries/mbed/common/LocalFileSystem.o \
+ $(OBJDIR)/libraries/mbed/common/RawSerial.o \
$(OBJDIR)/libraries/mbed/common/SPI.o \
+ $(OBJDIR)/libraries/mbed/common/SPISlave.o \
+ $(OBJDIR)/libraries/mbed/common/Serial.o \
+ $(OBJDIR)/libraries/mbed/common/SerialBase.o \
+ $(OBJDIR)/libraries/mbed/common/Stream.o \
+ $(OBJDIR)/libraries/mbed/common/Ticker.o \
$(OBJDIR)/libraries/mbed/common/Timeout.o \
- $(OBJDIR)/libraries/mbed/common/Ethernet.o \
+ $(OBJDIR)/libraries/mbed/common/Timer.o \
$(OBJDIR)/libraries/mbed/common/TimerEvent.o \
- $(OBJDIR)/libraries/mbed/common/CAN.o \
- $(OBJDIR)/libraries/mbed/common/BusOut.o \
- $(OBJDIR)/libraries/mbed/common/FileLike.o \
- $(OBJDIR)/libraries/mbed/common/BusIn.o \
- $(OBJDIR)/libraries/mbed/common/InterruptIn.o \
- $(OBJDIR)/libraries/mbed/common/LocalFileSystem.o \
- $(OBJDIR)/libraries/USBDevice/USBHID/USBMouse.o \
- $(OBJDIR)/libraries/USBDevice/USBHID/USBHID.o \
- $(OBJDIR)/libraries/USBDevice/USBHID/USBMouseKeyboard.o \
- $(OBJDIR)/libraries/USBDevice/USBHID/USBKeyboard.o \
- $(OBJDIR)/libraries/USBDevice/USBDevice/USBHAL_KL25Z.o \
+ $(OBJDIR)/libraries/mbed/common/assert.o \
+ $(OBJDIR)/libraries/mbed/common/board.o \
+ $(OBJDIR)/libraries/mbed/common/error.o \
+ $(OBJDIR)/libraries/mbed/common/exit.o \
+ $(OBJDIR)/libraries/mbed/common/gpio.o \
+ $(OBJDIR)/libraries/mbed/common/mbed_interface.o \
+ $(OBJDIR)/libraries/mbed/common/pinmap_common.o \
+ $(OBJDIR)/libraries/mbed/common/retarget.o \
+ $(OBJDIR)/libraries/mbed/common/rtc_time.o \
+ $(OBJDIR)/libraries/mbed/common/semihost_api.o \
+ $(OBJDIR)/libraries/mbed/common/us_ticker_api.o \
+ $(OBJDIR)/libraries/mbed/common/wait_api.o \
+ $(OBJDIR)/libraries/USBDevice/USBAudio/USBAudio.o \
$(OBJDIR)/libraries/USBDevice/USBDevice/USBDevice.o \
+ $(OBJDIR)/libraries/USBDevice/USBDevice/USBHAL_KL25Z.o \
+ $(OBJDIR)/libraries/USBDevice/USBDevice/USBHAL_LPC11U.o \
$(OBJDIR)/libraries/USBDevice/USBDevice/USBHAL_LPC17.o \
$(OBJDIR)/libraries/USBDevice/USBDevice/USBHAL_LPC40.o \
- $(OBJDIR)/libraries/USBDevice/USBDevice/USBHAL_LPC11U.o \
+ $(OBJDIR)/libraries/USBDevice/USBDevice/USBHAL_RZ_A1H.o \
$(OBJDIR)/libraries/USBDevice/USBDevice/USBHAL_STM32F4.o \
- $(OBJDIR)/libraries/USBDevice/USBAudio/USBAudio.o \
- $(OBJDIR)/libraries/USBDevice/USBSerial/USBSerial.o \
- $(OBJDIR)/libraries/USBDevice/USBSerial/USBCDC.o \
+ $(OBJDIR)/libraries/USBDevice/USBHID/USBHID.o \
+ $(OBJDIR)/libraries/USBDevice/USBHID/USBKeyboard.o \
+ $(OBJDIR)/libraries/USBDevice/USBHID/USBMouse.o \
+ $(OBJDIR)/libraries/USBDevice/USBHID/USBMouseKeyboard.o \
+ $(OBJDIR)/libraries/USBDevice/USBMIDI/USBMIDI.o \
$(OBJDIR)/libraries/USBDevice/USBMSD/USBMSD.o \
- $(OBJDIR)/libraries/USBDevice/USBMIDI/USBMIDI.o
+ $(OBJDIR)/libraries/USBDevice/USBSerial/USBCDC.o \
+ $(OBJDIR)/libraries/USBDevice/USBSerial/USBSerial.o
INCLUDE_PATHS += \
- -I$(MBED_DIR)/libraries/mbed/targets \
- -I$(MBED_DIR)/libraries/mbed/targets/hal \
- -I$(MBED_DIR)/libraries/mbed/targets/hal/TARGET_NXP \
- -I$(MBED_DIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX \
- -I$(MBED_DIR)/libraries/mbed/targets/hal/TARGET_NXP/TARGET_LPC11UXX/TARGET_LPC11U35_401 \
- -I$(MBED_DIR)/libraries/mbed/targets/cmsis \
- -I$(MBED_DIR)/libraries/mbed/targets/cmsis/TARGET_NXP \
- -I$(MBED_DIR)/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX \
- -I$(MBED_DIR)/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_GCC_ARM \
- -I$(MBED_DIR)/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_GCC_ARM/TARGET_LPC11U35_401 \
-I$(MBED_DIR)/libraries/mbed \
- -I$(MBED_DIR)/libraries/mbed/hal \
-I$(MBED_DIR)/libraries/mbed/api \
-I$(MBED_DIR)/libraries/mbed/common \
+ -I$(MBED_DIR)/libraries/mbed/hal \
-I$(MBED_DIR)/libraries/USBDevice \
- -I$(MBED_DIR)/libraries/USBDevice/USBHID \
- -I$(MBED_DIR)/libraries/USBDevice/USBDevice \
-I$(MBED_DIR)/libraries/USBDevice/USBAudio \
- -I$(MBED_DIR)/libraries/USBDevice/USBSerial \
+ -I$(MBED_DIR)/libraries/USBDevice/USBDevice \
+ -I$(MBED_DIR)/libraries/USBDevice/USBHID \
+ -I$(MBED_DIR)/libraries/USBDevice/USBMIDI \
-I$(MBED_DIR)/libraries/USBDevice/USBMSD \
- -I$(MBED_DIR)/libraries/USBDevice/USBMIDI
+ -I$(MBED_DIR)/libraries/USBDevice/USBSerial
+# TMK mbed protocol
OBJECTS += \
$(OBJDIR)/protocol/mbed/mbed_driver.o \
- $(OBJDIR)/protocol/mbed/HIDKeyboard.o \
+ $(OBJDIR)/protocol/mbed/HIDKeyboard.o
INCLUDE_PATHS += \
-I$(TMK_DIR)/protocol/mbed
-
-LINKER_SCRIPT = $(MBED_DIR)/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC11UXX/TOOLCHAIN_GCC_ARM/TARGET_LPC11U35_401/LPC11U35.ld