mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-08 05:43:53 +00:00
Merge "build: use toolchain identifiers in conditions" into integration
This commit is contained in:
commit
ef68521971
18 changed files with 48 additions and 48 deletions
30
Makefile
30
Makefile
|
@ -145,8 +145,8 @@ endif #(ARM_ARCH_MAJOR)
|
|||
################################################################################
|
||||
arch-features = ${ARM_ARCH_FEATURE}
|
||||
|
||||
ifneq ($(findstring clang,$(notdir $($(ARCH)-cc))),)
|
||||
ifneq ($(findstring armclang,$(notdir $($(ARCH)-cc))),)
|
||||
ifneq ($(filter %-clang,$($(ARCH)-cc-id)),)
|
||||
ifeq ($($(ARCH)-cc-id),arm-clang)
|
||||
TF_CFLAGS_aarch32 := -target arm-arm-none-eabi
|
||||
TF_CFLAGS_aarch64 := -target aarch64-arm-none-eabi
|
||||
else
|
||||
|
@ -154,7 +154,7 @@ ifneq ($(findstring clang,$(notdir $($(ARCH)-cc))),)
|
|||
TF_CFLAGS_aarch64 := -target aarch64-elf
|
||||
endif
|
||||
|
||||
else ifneq ($(findstring gcc,$(notdir $($(ARCH)-cc))),)
|
||||
else ifeq ($($(ARCH)-cc-id),gnu-gcc)
|
||||
ifeq ($(ENABLE_LTO),1)
|
||||
# Enable LTO only for aarch64
|
||||
ifeq (${ARCH},aarch64)
|
||||
|
@ -257,7 +257,7 @@ else ifeq (${W},3)
|
|||
endif #(W)
|
||||
|
||||
# Compiler specific warnings
|
||||
ifeq ($(findstring clang,$(notdir $($(ARCH)-cc))),)
|
||||
ifeq ($(filter %-clang,$($(ARCH)-cc-id)),)
|
||||
# not using clang
|
||||
WARNINGS += -Wunused-but-set-variable -Wmaybe-uninitialized \
|
||||
-Wpacked-bitfield-compat -Wshift-overflow=2 \
|
||||
|
@ -306,13 +306,13 @@ GCC_V_OUTPUT := $(shell $($(ARCH)-cc) -v 2>&1)
|
|||
TF_LDFLAGS += -z noexecstack
|
||||
|
||||
# LD = armlink
|
||||
ifneq ($(findstring armlink,$(notdir $($(ARCH)-ld))),)
|
||||
ifeq ($($(ARCH)-ld-id),arm-link)
|
||||
TF_LDFLAGS += --diag_error=warning --lto_level=O1
|
||||
TF_LDFLAGS += --remove --info=unused,unusedsymbols
|
||||
TF_LDFLAGS += $(TF_LDFLAGS_$(ARCH))
|
||||
|
||||
# LD = gcc (used when GCC LTO is enabled)
|
||||
else ifneq ($(findstring gcc,$(notdir $($(ARCH)-ld))),)
|
||||
else ifeq ($($(ARCH)-ld-id),gnu-gcc)
|
||||
# Pass ld options with Wl or Xlinker switches
|
||||
TF_LDFLAGS += $(call ld_option,-Xlinker --no-warn-rwx-segments)
|
||||
TF_LDFLAGS += -Wl,--fatal-warnings -O1
|
||||
|
@ -354,7 +354,7 @@ else
|
|||
# therefore don't add those in that case.
|
||||
# ld.lld reports section type mismatch warnings,
|
||||
# therefore don't add --fatal-warnings to it.
|
||||
ifeq ($(findstring ld.lld,$(notdir $($(ARCH)-ld))),)
|
||||
ifneq ($($(ARCH)-ld-id),llvm-lld)
|
||||
TF_LDFLAGS += $(TF_LDFLAGS_$(ARCH)) --fatal-warnings
|
||||
endif
|
||||
|
||||
|
@ -386,7 +386,7 @@ BL_COMMON_SOURCES += common/bl_common.c \
|
|||
plat/common/${ARCH}/platform_helpers.S \
|
||||
${COMPILER_RT_SRCS}
|
||||
|
||||
ifeq ($(notdir $($(ARCH)-cc)),armclang)
|
||||
ifeq ($($(ARCH)-cc-id),arm-clang)
|
||||
BL_COMMON_SOURCES += lib/${ARCH}/armclang_printf.S
|
||||
endif
|
||||
|
||||
|
@ -567,14 +567,14 @@ include ${MAKE_HELPERS_DIRECTORY}arch_features.mk
|
|||
ifeq (${SUPPORT_STACK_MEMTAG},yes)
|
||||
ifdef mem_tag_arch_support
|
||||
# Check for armclang and clang compilers
|
||||
ifneq ( ,$(filter $(notdir $($(ARCH)-cc)),armclang clang))
|
||||
ifneq ($(filter %-clang,$($(ARCH)-cc-id)),)
|
||||
# Add "memtag" architecture feature modifier if not specified
|
||||
ifeq ( ,$(findstring memtag,$(arch-features)))
|
||||
arch-features := $(arch-features)+memtag
|
||||
endif # memtag
|
||||
ifeq ($(notdir $($(ARCH)-cc)),armclang)
|
||||
ifeq ($($(ARCH)-cc-id),arm-clang)
|
||||
TF_CFLAGS += -mmemtag-stack
|
||||
else ifeq ($(notdir $($(ARCH)-cc)),clang)
|
||||
else ifeq ($($(ARCH)-cc-id),llvm-clang)
|
||||
TF_CFLAGS += -fsanitize=memtag
|
||||
endif # armclang
|
||||
endif
|
||||
|
@ -688,12 +688,12 @@ endif
|
|||
PIE_FOUND := $(findstring --enable-default-pie,${GCC_V_OUTPUT})
|
||||
ifneq ($(PIE_FOUND),)
|
||||
TF_CFLAGS += -fno-PIE
|
||||
ifneq ($(findstring gcc,$(notdir $($(ARCH)-ld))),)
|
||||
ifeq ($($(ARCH)-ld-id),gnu-gcc)
|
||||
TF_LDFLAGS += -no-pie
|
||||
endif
|
||||
endif #(PIE_FOUND)
|
||||
|
||||
ifneq ($(findstring gcc,$(notdir $($(ARCH)-ld))),)
|
||||
ifeq ($($(ARCH)-ld-id),gnu-gcc)
|
||||
PIE_LDFLAGS += -Wl,-pie -Wl,--no-dynamic-linker
|
||||
else
|
||||
PIE_LDFLAGS += -pie --no-dynamic-linker
|
||||
|
@ -1420,7 +1420,7 @@ ifeq (${DYN_DISABLE_AUTH},1)
|
|||
$(eval $(call add_define,DYN_DISABLE_AUTH))
|
||||
endif
|
||||
|
||||
ifneq ($(findstring armlink,$(notdir $($(ARCH)-ld))),)
|
||||
ifeq ($($(ARCH)-ld-id),arm-link)
|
||||
$(eval $(call add_define,USE_ARM_LINK))
|
||||
endif
|
||||
|
||||
|
@ -1452,7 +1452,7 @@ msg_start:
|
|||
|
||||
ifeq (${ERROR_DEPRECATED},0)
|
||||
# Check if deprecated declarations and cpp warnings should be treated as error or not.
|
||||
ifneq ($(findstring clang,$(notdir $($(ARCH)-cc))),)
|
||||
ifneq ($(filter %-clang,$($(ARCH)-cc-id)),)
|
||||
CPPFLAGS += -Wno-error=deprecated-declarations
|
||||
else
|
||||
CPPFLAGS += -Wno-error=deprecated-declarations -Wno-error=cpp
|
||||
|
|
|
@ -29,9 +29,9 @@ ifeq (${ENABLE_PMF},1)
|
|||
BL1_SOURCES += lib/pmf/pmf_main.c
|
||||
endif
|
||||
|
||||
ifneq ($(findstring gcc,$(notdir $($(ARCH)-ld))),)
|
||||
ifeq ($($(ARCH)-ld-id),gnu-gcc)
|
||||
BL1_LDFLAGS += -Wl,--sort-section=alignment
|
||||
else ifneq ($(findstring ld,$(notdir $($(ARCH)-ld))),)
|
||||
else ifneq ($(filter llvm-lld gnu-ld,$($(ARCH)-ld-id)),)
|
||||
BL1_LDFLAGS += --sort-section=alignment
|
||||
endif
|
||||
|
||||
|
|
|
@ -15,9 +15,9 @@ ifeq (${ARCH},aarch64)
|
|||
BL2_SOURCES += common/aarch64/early_exceptions.S
|
||||
endif
|
||||
|
||||
ifneq ($(findstring gcc,$(notdir $($(ARCH)-ld))),)
|
||||
ifeq ($($(ARCH)-ld-id),gnu-gcc)
|
||||
BL2_LDFLAGS += -Wl,--sort-section=alignment
|
||||
else ifneq ($(findstring ld,$(notdir $($(ARCH)-ld))),)
|
||||
else ifneq ($(filter llvm-lld gnu-ld,$($(ARCH)-ld-id)),)
|
||||
BL2_LDFLAGS += --sort-section=alignment
|
||||
endif
|
||||
|
||||
|
@ -52,4 +52,4 @@ endif
|
|||
|
||||
ifeq (${ENABLE_PMF},1)
|
||||
BL2_SOURCES += lib/pmf/pmf_main.c
|
||||
endif
|
||||
endif
|
||||
|
|
|
@ -14,8 +14,8 @@ endif
|
|||
|
||||
BL2U_DEFAULT_LINKER_SCRIPT_SOURCE := bl2u/bl2u.ld.S
|
||||
|
||||
ifneq ($(findstring gcc,$(notdir $($(ARCH)-ld))),)
|
||||
ifeq ($($(ARCH)-ld-id),gnu-gcc)
|
||||
BL2U_LDFLAGS += -Wl,--sort-section=alignment
|
||||
else ifneq ($(findstring ld,$(notdir $($(ARCH)-ld))),)
|
||||
else ifneq ($(filter llvm-lld gnu-ld,$($(ARCH)-ld-id)),)
|
||||
BL2U_LDFLAGS += --sort-section=alignment
|
||||
endif
|
||||
|
|
|
@ -167,9 +167,9 @@ endif
|
|||
|
||||
BL31_DEFAULT_LINKER_SCRIPT_SOURCE := bl31/bl31.ld.S
|
||||
|
||||
ifneq ($(findstring gcc,$(notdir $($(ARCH)-ld))),)
|
||||
ifeq ($($(ARCH)-ld-id),gnu-gcc)
|
||||
BL31_LDFLAGS += -Wl,--sort-section=alignment
|
||||
else ifneq ($(findstring ld,$(notdir $($(ARCH)-ld))),)
|
||||
else ifneq ($(filter llvm-lld gnu-ld,$($(ARCH)-ld-id)),)
|
||||
BL31_LDFLAGS += --sort-section=alignment
|
||||
endif
|
||||
|
||||
|
|
|
@ -57,9 +57,9 @@ endif
|
|||
|
||||
BL32_DEFAULT_LINKER_SCRIPT_SOURCE := bl32/sp_min/sp_min.ld.S
|
||||
|
||||
ifneq ($(findstring gcc,$(notdir $($(ARCH)-ld))),)
|
||||
ifeq ($($(ARCH)-ld-id),gnu-gcc)
|
||||
BL32_LDFLAGS += -Wl,--sort-section=alignment
|
||||
else ifneq ($(findstring ld,$(notdir $($(ARCH)-ld))),)
|
||||
else ifneq ($(filter llvm-lld gnu-ld,$($(ARCH)-ld-id)),)
|
||||
BL32_LDFLAGS += --sort-section=alignment
|
||||
endif
|
||||
|
||||
|
|
|
@ -24,9 +24,9 @@ BL32_SOURCES += bl32/tsp/aarch64/tsp_entrypoint.S \
|
|||
|
||||
BL32_DEFAULT_LINKER_SCRIPT_SOURCE := bl32/tsp/tsp.ld.S
|
||||
|
||||
ifneq ($(findstring gcc,$(notdir $($(ARCH)-ld))),)
|
||||
ifeq ($($(ARCH)-ld-id),gnu-gcc)
|
||||
BL32_LDFLAGS += -Wl,--sort-section=alignment
|
||||
else ifneq ($(findstring ld,$(notdir $($(ARCH)-ld))),)
|
||||
else ifneq ($(filter llvm-lld gnu-ld,$($(ARCH)-ld-id)),)
|
||||
BL32_LDFLAGS += --sort-section=alignment
|
||||
endif
|
||||
|
||||
|
|
|
@ -477,7 +477,7 @@ $(eval $(call MAKE_LIB_OBJS,$(BUILD_DIR),$(SOURCES),$(1)))
|
|||
.PHONY : lib${1}_dirs
|
||||
lib${1}_dirs: | ${BUILD_DIR} ${LIB_DIR} ${ROMLIB_DIR} ${LIBWRAPPER_DIR}
|
||||
libraries: ${LIB_DIR}/lib$(1).a
|
||||
ifneq ($(findstring armlink,$(notdir $(LD))),)
|
||||
ifeq ($($(ARCH)-ld-id),arm-link)
|
||||
LDPATHS = --userlibpath=${LIB_DIR}
|
||||
LDLIBS += --library=$(1)
|
||||
else
|
||||
|
@ -575,14 +575,14 @@ else
|
|||
const char version[] = "${VERSION}";' | \
|
||||
$($(ARCH)-cc) $$(TF_CFLAGS) $$(CFLAGS) -xc -c - -o $(BUILD_DIR)/build_message.o
|
||||
endif
|
||||
ifneq ($(findstring armlink,$(notdir $(LD))),)
|
||||
ifeq ($($(ARCH)-ld-id),arm-link)
|
||||
$$(Q)$($(ARCH)-ld) -o $$@ $$(TF_LDFLAGS) $$(LDFLAGS) $(BL_LDFLAGS) --entry=${1}_entrypoint \
|
||||
--predefine="-D__LINKER__=$(__LINKER__)" \
|
||||
--predefine="-DTF_CFLAGS=$(TF_CFLAGS)" \
|
||||
--map --list="$(MAPFILE)" --scatter=${PLAT_DIR}/scat/${1}.scat \
|
||||
$(LDPATHS) $(LIBWRAPPER) $(LDLIBS) $(BL_LIBS) \
|
||||
$(BUILD_DIR)/build_message.o $(OBJS)
|
||||
else ifneq ($(findstring gcc,$(notdir $(LD))),)
|
||||
else ifeq ($($(ARCH)-ld-id),gnu-gcc)
|
||||
$$(Q)$($(ARCH)-ld) -o $$@ $$(TF_LDFLAGS) $$(LDFLAGS) $(BL_LDFLAGS) -Wl,-Map=$(MAPFILE) \
|
||||
$(addprefix -Wl$(comma)--script$(comma),$(LINKER_SCRIPTS)) -Wl,--script,$(DEFAULT_LINKER_SCRIPT) \
|
||||
$(BUILD_DIR)/build_message.o \
|
||||
|
|
|
@ -54,7 +54,7 @@ else
|
|||
provided-march = armv${ARM_ARCH_MAJOR}.${ARM_ARCH_MINOR}-a
|
||||
endif
|
||||
|
||||
ifeq ($(findstring clang,$(notdir $($(ARCH)-cc))),)
|
||||
ifeq ($(filter %-clang,$($(ARCH)-cc-id)),)
|
||||
|
||||
# We expect from Platform to provide a correct Major/Minor value but expecting something
|
||||
# from compiler with unsupported march means we shouldn't fail without trying anything,
|
||||
|
|
|
@ -41,9 +41,9 @@ BL31_SOURCES += lib/cpus/aarch64/cortex_a53.S \
|
|||
${GIC_SOURCES}
|
||||
|
||||
# Tune compiler for Cortex-A53
|
||||
ifeq ($(notdir $($(ARCH)-cc)),armclang)
|
||||
ifeq ($($(ARCH)-cc-id),arm-clang)
|
||||
TF_CFLAGS_aarch64 += -mcpu=cortex-a53
|
||||
else ifneq ($(findstring clang,$(notdir $($(ARCH)-cc))),)
|
||||
else ifneq ($(filter %-clang,$($(ARCH)-cc-id)),)
|
||||
TF_CFLAGS_aarch64 += -mcpu=cortex-a53
|
||||
else
|
||||
TF_CFLAGS_aarch64 += -mtune=cortex-a53
|
||||
|
|
|
@ -41,9 +41,9 @@ BL31_SOURCES += lib/cpus/aarch64/cortex_a53.S \
|
|||
${GIC_SOURCES}
|
||||
|
||||
# Tune compiler for Cortex-A53
|
||||
ifeq ($(notdir $($(ARCH)-cc)),armclang)
|
||||
ifeq ($($(ARCH)-cc-id),arm-clang)
|
||||
TF_CFLAGS_aarch64 += -mcpu=cortex-a53
|
||||
else ifneq ($(findstring clang,$(notdir $($(ARCH)-cc))),)
|
||||
else ifneq ($(filter %-clang,$($(ARCH)-cc-id)),)
|
||||
TF_CFLAGS_aarch64 += -mcpu=cortex-a53
|
||||
else
|
||||
TF_CFLAGS_aarch64 += -mtune=cortex-a53
|
||||
|
|
|
@ -37,9 +37,9 @@ BL31_SOURCES += lib/cpus/aarch64/cortex_a53.S \
|
|||
${GIC_SOURCES}
|
||||
|
||||
# Tune compiler for Cortex-A53
|
||||
ifeq ($(notdir $($(ARCH)-cc)),armclang)
|
||||
ifeq ($($(ARCH)-cc-id),arm-clang)
|
||||
TF_CFLAGS_aarch64 += -mcpu=cortex-a53
|
||||
else ifneq ($(findstring clang,$(notdir $($(ARCH)-cc))),)
|
||||
else ifneq ($(filter %-clang,$($(ARCH)-cc-id)),)
|
||||
TF_CFLAGS_aarch64 += -mcpu=cortex-a53
|
||||
else
|
||||
TF_CFLAGS_aarch64 += -mtune=cortex-a53
|
||||
|
|
|
@ -41,9 +41,9 @@ BL31_SOURCES += lib/cpus/aarch64/cortex_a53.S \
|
|||
${GIC_SOURCES}
|
||||
|
||||
# Tune compiler for Cortex-A53
|
||||
ifeq ($(notdir $($(ARCH)-cc)),armclang)
|
||||
ifeq ($($(ARCH)-cc-id),arm-clang)
|
||||
TF_CFLAGS_aarch64 += -mcpu=cortex-a53
|
||||
else ifneq ($(findstring clang,$(notdir $($(ARCH)-cc))),)
|
||||
else ifneq ($(filter %-clang,$($(ARCH)-cc-id)),)
|
||||
TF_CFLAGS_aarch64 += -mcpu=cortex-a53
|
||||
else
|
||||
TF_CFLAGS_aarch64 += -mtune=cortex-a53
|
||||
|
|
|
@ -82,7 +82,7 @@ override LIBC_SRCS := $(addprefix lib/libc/, \
|
|||
INCLUDES += -Iinclude/lib/libc \
|
||||
-Iinclude/lib/libc/$(ARCH) \
|
||||
|
||||
ifneq ($(findstring armlink,$(notdir $($(ARCH)-ld))),)
|
||||
ifeq ($($(ARCH)-ld-id),arm-link)
|
||||
# o suppress warnings for section mismatches, undefined symbols
|
||||
# o use only those libraries that are specified in the input file
|
||||
# list to resolve references
|
||||
|
|
|
@ -52,9 +52,9 @@ BL31_SOURCES += lib/cpus/aarch64/cortex_a53.S \
|
|||
${LIBFDT_SRCS}
|
||||
|
||||
# Tune compiler for Cortex-A53
|
||||
ifeq ($(notdir $($(ARCH)-cc)),armclang)
|
||||
ifeq ($($(ARCH)-cc-id),arm-clang)
|
||||
TF_CFLAGS_aarch64 += -mcpu=cortex-a53
|
||||
else ifneq ($(findstring clang,$(notdir $($(ARCH)-cc))),)
|
||||
else ifneq ($(filter %-clang,$($(ARCH)-cc-id)),)
|
||||
TF_CFLAGS_aarch64 += -mcpu=cortex-a53
|
||||
else
|
||||
TF_CFLAGS_aarch64 += -mtune=cortex-a53
|
||||
|
|
|
@ -39,9 +39,9 @@ RESET_TO_BL31 := 1
|
|||
COLD_BOOT_SINGLE_CPU := 0
|
||||
|
||||
# Tune compiler for Cortex-A72
|
||||
ifeq ($(notdir $($(ARCH)-cc)),armclang)
|
||||
ifeq ($($(ARCH)-cc-id),arm-clang)
|
||||
TF_CFLAGS_aarch64 += -mcpu=cortex-a72
|
||||
else ifneq ($(findstring clang,$(notdir $($(ARCH)-cc))),)
|
||||
else ifneq ($(filter %-clang,$($(ARCH)-cc-id)),)
|
||||
TF_CFLAGS_aarch64 += -mcpu=cortex-a72
|
||||
else
|
||||
TF_CFLAGS_aarch64 += -mtune=cortex-a72
|
||||
|
|
|
@ -57,7 +57,7 @@ $(eval $(call MAKE_LD,${STM32_TF_LINKERFILE},$(STM32_LD_FILE),bl2))
|
|||
|
||||
tf-a-%.elf: $(PLAT)-%.o ${STM32_TF_LINKERFILE}
|
||||
@echo " LDS $<"
|
||||
ifneq ($(findstring gcc,$(notdir $($(ARCH)-ld))),)
|
||||
ifeq ($($(ARCH)-ld-id),gnu-gcc)
|
||||
${Q}$($(ARCH)-ld) -o $@ $(subst --,-Wl$(comma)--,${STM32_TF_ELF_LDFLAGS}) -nostartfiles -Wl,-Map=$(@:.elf=.map) -Wl,-dT ${STM32_TF_LINKERFILE} $<
|
||||
else
|
||||
${Q}$($(ARCH)-ld) -o $@ ${STM32_TF_ELF_LDFLAGS} -Map=$(@:.elf=.map) --script ${STM32_TF_LINKERFILE} $<
|
||||
|
|
|
@ -10,9 +10,9 @@ RMM_SOURCES += services/std_svc/rmmd/trp/trp_entry.S \
|
|||
|
||||
RMM_DEFAULT_LINKER_SCRIPT_SOURCE := services/std_svc/rmmd/trp/linker.ld.S
|
||||
|
||||
ifneq ($(findstring gcc,$(notdir $($(ARCH)-ld))),)
|
||||
ifeq ($($(ARCH)-ld-id),gnu-gcc)
|
||||
RMM_LDFLAGS += -Wl,--sort-section=alignment
|
||||
else ifneq ($(findstring ld,$(notdir $($(ARCH)-ld))),)
|
||||
else ifneq ($(filter llvm-lld gnu-ld,$($(ARCH)-ld-id)),)
|
||||
RMM_LDFLAGS += --sort-section=alignment
|
||||
endif
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue