diff --git a/Makefile b/Makefile index 91f7c92..b9805c7 100644 --- a/Makefile +++ b/Makefile @@ -151,10 +151,9 @@ -ffreestanding -fno-builtin -Wall -std=gnu99 \ -Os -ffunction-sections -fdata-sections -LDFLAGS += $(LDFLAGS_$(ARCH)) -LDFLAGS += --fatal-warnings -O1 -LDFLAGS += --gc-sections - +TF_LDFLAGS += --fatal-warnings -O1 +TF_LDFLAGS += --gc-sections +TF_LDFLAGS += $(TF_LDFLAGS_$(ARCH)) ################################################################################ # Common sources and include directories diff --git a/docs/user-guide.md b/docs/user-guide.md index 1a07954..0e9da35 100644 --- a/docs/user-guide.md +++ b/docs/user-guide.md @@ -385,6 +385,9 @@ AArch64 and facilitates the loading of `SP_MIN` and BL33 as AArch32 executable images. +* `LDFLAGS`: Extra user options appended to the linkers' command line in + addition to the one set by the build system. + * `LOAD_IMAGE_V2`: Boolean option to enable support for new version (v2) of image loading, which provides more flexibility and scalability around what images are loaded and executed during boot. Default is 0. diff --git a/lib/cpus/cpu-ops.mk b/lib/cpus/cpu-ops.mk index 218a548..ad32971 100644 --- a/lib/cpus/cpu-ops.mk +++ b/lib/cpus/cpu-ops.mk @@ -145,10 +145,10 @@ # Errata build flags ifneq (${ERRATA_A53_843419},0) -LDFLAGS_aarch64 += --fix-cortex-a53-843419 +TF_LDFLAGS_aarch64 += --fix-cortex-a53-843419 endif ifneq (${ERRATA_A53_835769},0) TF_CFLAGS_aarch64 += -mfix-cortex-a53-835769 -LDFLAGS_aarch64 += --fix-cortex-a53-835769 +TF_LDFLAGS_aarch64 += --fix-cortex-a53-835769 endif diff --git a/make_helpers/build_macros.mk b/make_helpers/build_macros.mk index 34d82c9..aee045d 100644 --- a/make_helpers/build_macros.mk +++ b/make_helpers/build_macros.mk @@ -313,8 +313,8 @@ const char version_string[] = "${VERSION_STRING}";' | \ $$(CC) $$(TF_CFLAGS) $$(CFLAGS) -xc -c - -o $(BUILD_DIR)/build_message.o endif - $$(Q)$$(LD) -o $$@ $$(LDFLAGS) -Map=$(MAPFILE) --script $(LINKERFILE) \ - $(BUILD_DIR)/build_message.o $(OBJS) + $$(Q)$$(LD) -o $$@ $$(TF_LDFLAGS) $$(LDFLAGS) -Map=$(MAPFILE) \ + --script $(LINKERFILE) $(BUILD_DIR)/build_message.o $(OBJS) $(DUMP): $(ELF) @echo " OD $$@"