build_macros: Add mechanism to prevent bin generation.

On certain platforms it does not make sense to generate
TF-A binary images. For example a platform could make use of serveral
memory areas, which are non-continuous and the resulting binary
therefore would suffer from the padding-bytes.
Typically these platforms use the ELF image.

This patch introduces a variable DISABLE_BIN_GENERATION, which
can be set to '1' in the platform makefile to prevent the binary
generation.

Signed-off-by: Christoph Müllner <christophm30@gmail.com>
Change-Id: I62948e88bab685bb055fe6167d9660d14e604462
This commit is contained in:
Christoph Müllner 2019-04-24 09:45:30 +02:00
parent b3c8ac1354
commit 9e4609f103
3 changed files with 16 additions and 0 deletions

View File

@ -369,6 +369,10 @@ Common build options
- ``DEBUG``: Chooses between a debug and release build. It can take either 0 - ``DEBUG``: Chooses between a debug and release build. It can take either 0
(release) or 1 (debug) as values. 0 is the default. (release) or 1 (debug) as values. 0 is the default.
- ``DISABLE_BIN_GENERATION``: Boolean option to disable the generation
of the binary image. If set to 1, then only the ELF image is built.
0 is the default.
- ``DYN_DISABLE_AUTH``: Provides the capability to dynamically disable Trusted - ``DYN_DISABLE_AUTH``: Provides the capability to dynamically disable Trusted
Board Boot authentication at runtime. This option is meant to be enabled only Board Boot authentication at runtime. This option is meant to be enabled only
for development platforms. ``TRUSTED_BOARD_BOOT`` flag must be set if this for development platforms. ``TRUSTED_BOARD_BOOT`` flag must be set if this

View File

@ -438,6 +438,11 @@ else
--script $(LINKERFILE) $(BUILD_DIR)/build_message.o \ --script $(LINKERFILE) $(BUILD_DIR)/build_message.o \
$(OBJS) $(LDPATHS) $(LIBWRAPPER) $(LDLIBS) $(BL_LIBS) $(OBJS) $(LDPATHS) $(LIBWRAPPER) $(LDLIBS) $(BL_LIBS)
endif endif
ifeq ($(DISABLE_BIN_GENERATION),1)
@${ECHO_BLANK_LINE}
@echo "Built $$@ successfully"
@${ECHO_BLANK_LINE}
endif
$(DUMP): $(ELF) $(DUMP): $(ELF)
$${ECHO} " OD $$@" $${ECHO} " OD $$@"
@ -451,7 +456,11 @@ $(BIN): $(ELF)
@${ECHO_BLANK_LINE} @${ECHO_BLANK_LINE}
.PHONY: bl$(1) .PHONY: bl$(1)
ifeq ($(DISABLE_BIN_GENERATION),1)
bl$(1): $(ELF) $(DUMP)
else
bl$(1): $(BIN) $(DUMP) bl$(1): $(BIN) $(DUMP)
endif
all: bl$(1) all: bl$(1)

View File

@ -62,6 +62,9 @@ DEBUG := 0
# Build platform # Build platform
DEFAULT_PLAT := fvp DEFAULT_PLAT := fvp
# Disable the generation of the binary image (ELF only).
DISABLE_BIN_GENERATION := 0
# Enable capability to disable authentication dynamically. Only meant for # Enable capability to disable authentication dynamically. Only meant for
# development platforms. # development platforms.
DYN_DISABLE_AUTH := 0 DYN_DISABLE_AUTH := 0