mirror of
https://github.com/Ai-Thinker-Open/Ai-Thinker-Open_RTL8710BX_ALIOS_SDK.git
synced 2025-03-23 04:52:56 +00:00
92 lines
3.6 KiB
Makefile
92 lines
3.6 KiB
Makefile
TOOLCHAIN_PATH ?=
|
|
TOOLCHAIN_PREFIX :=
|
|
CC := $(TOOLCHAIN_PATH)iccarm
|
|
CXX := $(TOOLCHAIN_PATH)iccarm
|
|
AS := $(TOOLCHAIN_PATH)iasmarm
|
|
AR := $(TOOLCHAIN_PATH)iarchive
|
|
LD := $(TOOLCHAIN_PATH)ilinkarm
|
|
CPP := $(TOOLCHAIN_PATH)iccarm
|
|
|
|
OPTIONS_IN_FILE_OPTION_PREFIX_DIRECT = $
|
|
OPTIONS_IN_FILE_OPTION_PREFIX = $$
|
|
OPTIONS_IN_FILE_OPTION = (file <
|
|
OPTIONS_IN_FILE_OPTION_SUFFIX = )
|
|
OBJCOPYFLAGS := --bin --output=
|
|
|
|
ADD_COMPILER_SPECIFIC_STANDARD_CFLAGS =
|
|
ADD_COMPILER_SPECIFIC_STANDARD_CXXFLAGS =
|
|
ADD_COMPILER_SPECIFIC_STANDARD_ADMFLAGS = $(1)
|
|
COMPILER_SPECIFIC_OPTIMIZED_CFLAGS := -Os
|
|
COMPILER_SPECIFIC_UNOPTIMIZED_CFLAGS := -O0
|
|
COMPILER_SPECIFIC_PEDANTIC_CFLAGS := $(COMPILER_SPECIFIC_STANDARD_CFLAGS)
|
|
COMPILER_SPECIFIC_ARFLAGS_CREATE := --create
|
|
COMPILER_SPECIFIC_ARFLAGS_ADD := --create
|
|
COMPILER_SPECIFIC_ARFLAGS_VERBOSE := -V
|
|
|
|
#debug: no optimize and log enable
|
|
COMPILER_SPECIFIC_DEBUG_CFLAGS := -DDEBUG -Dgdb $(COMPILER_SPECIFIC_UNOPTIMIZED_CFLAGS)
|
|
COMPILER_SPECIFIC_DEBUG_CXXFLAGS := -DDEBUG -Dgdb $(COMPILER_SPECIFIC_UNOPTIMIZED_CFLAGS)
|
|
COMPILER_SPECIFIC_DEBUG_ASFLAGS :=
|
|
COMPILER_SPECIFIC_DEBUG_LDFLAGS :=
|
|
|
|
#release_log: optimize but log enable
|
|
COMPILER_SPECIFIC_RELEASE_LOG_CFLAGS := -Dgdb $(COMPILER_SPECIFIC_OPTIMIZED_CFLAGS)
|
|
COMPILER_SPECIFIC_RELEASE_LOG_CXXFLAGS := -Dgdb $(COMPILER_SPECIFIC_OPTIMIZED_CFLAGS)
|
|
COMPILER_SPECIFIC_RELEASE_LOG_ASFLAGS :=
|
|
COMPILER_SPECIFIC_RELEASE_LOG_LDFLAGS :=
|
|
|
|
#release: optimize and log disable
|
|
COMPILER_SPECIFIC_RELEASE_CFLAGS := -DNDEBUG $(COMPILER_SPECIFIC_OPTIMIZED_CFLAGS)
|
|
COMPILER_SPECIFIC_RELEASE_CXXFLAGS := -DNDEBUG $(COMPILER_SPECIFIC_OPTIMIZED_CFLAGS)
|
|
COMPILER_SPECIFIC_RELEASE_ASFLAGS :=
|
|
COMPILER_SPECIFIC_RELEASE_LDFLAGS :=
|
|
|
|
# -MD -> --dependencies xx.d
|
|
COMPILER_SPECIFIC_DEPS_FLAG := -e --dlib_config=full -D_TIMESPEC_DEFINED --silent --only_stdout --no_warnings --diag_warning=Pe167,Pe144,Pe513
|
|
COMPILER_SPECIFIC_COMP_ONLY_FLAG :=
|
|
COMPILER_SPECIFIC_LINK_MAP = --map $(1)
|
|
COMPILER_SPECIFIC_LINK_FILES = $(addprefix --whole_archive , $(filter-out %alicrypto.a,$(1))) $(filter %alicrypto.a,$(1))
|
|
COMPILER_SPECIFIC_LINK_SCRIPT_DEFINE_OPTION =
|
|
COMPILER_SPECIFIC_LINK_SCRIPT =
|
|
|
|
LINKER := $(LD)
|
|
LINK_SCRIPT_SUFFIX := .icf
|
|
TOOLCHAIN_NAME := iar
|
|
|
|
ENDIAN_CFLAGS_LITTLE := --littleend
|
|
ENDIAN_CXXFLAGS_LITTLE := --littleend
|
|
ENDIAN_ASMFLAGS_LITTLE :=
|
|
ENDIAN_LDFLAGS_LITTLE := --littleend
|
|
CLIB_LDFLAGS_NANO :=
|
|
CLIB_LDFLAGS_NANO_FLOAT:=
|
|
|
|
# Chip specific flags for compiler
|
|
CPU_CFLAGS :=
|
|
CPU_CXXFLAGS :=
|
|
CPU_ASMFLAGS :=
|
|
CPU_LDFLAGS :=
|
|
|
|
# $(1) is map file, $(2) is CSV output file
|
|
#COMPILER_SPECIFIC_MAPFILE_TO_CSV = $(PYTHON) $(MAPFILE_PARSER) $(1) > $(2)
|
|
|
|
#TODO
|
|
#MAPFILE_PARSER :=$(MAKEFILES_PATH)/scripts/map_parse_armcc.py
|
|
|
|
# $(1) is map file, $(2) is CSV output file
|
|
# iar map file format is different
|
|
#COMPILER_SPECIFIC_MAPFILE_DISPLAY_SUMMARY = $(PYTHON) $(MAPFILE_PARSER) $(1)
|
|
|
|
OBJDUMP := "$(TOOLCHAIN_PATH)$(TOOLCHAIN_PREFIX)ielfdumparm$(EXECUTABLE_SUFFIX)"
|
|
OBJCOPY := "$(TOOLCHAIN_PATH)$(TOOLCHAIN_PREFIX)ielftool$(EXECUTABLE_SUFFIX)"
|
|
# -R .eh_frame -R .init -R .fini -R .comment -R .ARM.attributes -> iobjmanip --remvoe_secton
|
|
OBJCOPY_BIN_FLAGS := --bin --silent
|
|
OBJCOPY_HEX_FLAGS := --ihex --silent
|
|
|
|
#no need to strip in arm fromelf
|
|
STRIP := "$(TOOLCHAIN_PATH)ielftool"
|
|
STRIPFLAGS := --strip --silent
|
|
|
|
LINK_OUTPUT_SUFFIX :=.iarElf
|
|
BIN_OUTPUT_SUFFIX :=.bin
|
|
HEX_OUTPUT_SUFFIX :=.hex
|
|
|