toolchain.mk 569 B

123456789101112131415161718192021222324252627
  1. # Compiller
  2. ifeq ($(TOOLCHAIN), arm)
  3. PREFIX = arm-none-eabi-
  4. ifdef GCC_PATH
  5. PREFIX = $(GCC_PATH)/$(PREFIX)
  6. endif
  7. endif
  8. CC = $(PREFIX)gcc
  9. CPP = $(PREFIX)g++
  10. LD = $(PREFIX)g++
  11. AS = $(PREFIX)gcc -x assembler-with-cpp
  12. CP = $(PREFIX)objcopy
  13. SZ = $(PREFIX)size
  14. HEX = $(CP) -O ihex
  15. BIN = $(CP) -O binary -S
  16. DEBUG ?= 1
  17. ifeq ($(DEBUG), 1)
  18. CFLAGS += -DDEBUG -g
  19. else
  20. CFLAGS += -DNDEBUG -Os
  21. endif
  22. CFLAGS += -MMD -MP -MF"$(@:%.o=%.d)"
  23. CPPFLAGS += -fno-threadsafe-statics
  24. LDFLAGS += -Wl,-Map=$(OBJ_DIR)/$(PROJECT).map,--cref -Wl,--gc-sections -Wl,--undefined=uxTopUsedPriority