summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDouglas Raillard <douglas.raillard@arm.com>2017-06-22 14:44:48 +0100
committerDouglas Raillard <douglas.raillard@arm.com>2017-06-28 15:03:05 +0100
commitc2b8806fb6e4f225bfb73b5378a31a9b96b0bd60 (patch)
tree82c306c03623c2d2cce966d48d1314e4bfbadf1e
parent6bf362496933a7795273d8cac1bbdd2966dfab33 (diff)
Introduce TF_LDFLAGS
Use TF_LDFLAGS from the Makefiles, and still append LDFLAGS as well to the compiler's invocation. This allows passing extra options from the make command line using LDFLAGS. Document new LDFLAGS Makefile option. Change-Id: I88c5ac26ca12ac2b2d60a6f150ae027639991f27 Signed-off-by: Douglas Raillard <douglas.raillard@arm.com>
-rw-r--r--Makefile7
-rw-r--r--docs/user-guide.md3
-rw-r--r--lib/cpus/cpu-ops.mk4
-rw-r--r--make_helpers/build_macros.mk4
4 files changed, 10 insertions, 8 deletions
diff --git a/Makefile b/Makefile
index 91f7c927..b9805c77 100644
--- a/Makefile
+++ b/Makefile
@@ -151,10 +151,9 @@ TF_CFLAGS += $(CPPFLAGS) $(TF_CFLAGS_$(ARCH)) \
-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 1a07954a..0e9da35d 100644
--- a/docs/user-guide.md
+++ b/docs/user-guide.md
@@ -385,6 +385,9 @@ performed.
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 218a5482..ad329719 100644
--- a/lib/cpus/cpu-ops.mk
+++ b/lib/cpus/cpu-ops.mk
@@ -145,10 +145,10 @@ $(eval $(call add_define,ERRATA_A57_833471))
# 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 34d82c9a..aee045de 100644
--- a/make_helpers/build_macros.mk
+++ b/make_helpers/build_macros.mk
@@ -313,8 +313,8 @@ else
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 $$@"