mirror of
https://github.com/Telecominfraproject/OpenCellular.git
synced 2025-12-27 18:25:05 +00:00
Define SECTION=* and SECTION_IS_* when compiling
The linker scripts are passed through the preprocessor so that they can distinguish between RO and RW images. This change makes the same macros available when compiling, so that code can contain directives like #ifdef SECTION_IS_RO or #define FW_SIZE_(section) CONFIG_##section##_SIZE #define FW_SIZE(section) FW_SIZE_(section) int size = FW_SIZE(SECTION); BUG=none BRANCH=none TEST=make buildall Nothing uses this yet, so there's no change to the images. Change-Id: I6e03cd07c134f4b86aeddd9d516b74bbdb95b8a8 Signed-off-by: Bill Richardson <wfrichar@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/301255 Reviewed-by: Randall Spangler <rspangler@chromium.org>
This commit is contained in:
committed by
chrome-bot
parent
f4b65c5d95
commit
735e5a6ee2
@@ -26,18 +26,13 @@ _dir_create := $(foreach d,$(dirs),$(shell [ -d $(out)/$(BLD)/$(d) ] || \
|
||||
_dir_y_create := $(foreach d,$(dirs-y),$(shell [ -d $(out)/$(BLD)/$(d) ] || \
|
||||
mkdir -p $(out)/RO/$(d); mkdir -p $(out)/RW/$(d)))
|
||||
|
||||
section = $(subst .,,$(suffix $(1)))
|
||||
section_is = $(subst .,,SECTION_IS_$(suffix $(1)))
|
||||
|
||||
# Decrease verbosity unless you pass V=1
|
||||
quiet = $(if $(V),,@echo ' $(2)' $(subst $(out)/,,$@) ; )$(cmd_$(1))
|
||||
silent = $(if $(V),,1>/dev/null)
|
||||
silent_err = $(if $(V),,2>/dev/null)
|
||||
|
||||
# commands to build all targets
|
||||
cmd_lds = $(CPP) -P -C -MMD -MF $@.d -MT $@ $(CPPFLAGS) \
|
||||
-D$(call section_is,$*) \
|
||||
-DSECTION=$(call section,$*) $< -o $@
|
||||
cmd_lds = $(CPP) -P -C -MMD -MF $@.d -MT $@ $(CPPFLAGS) $< -o $@
|
||||
# Allow obj_to_bin to be overridden by board or chip specific commands
|
||||
cmd_obj_to_bin ?= $(OBJCOPY) --gap-fill=0xff -O binary $^ $(out)/$*.bin.tmp
|
||||
cmd_flat_to_obj = $(CC) -T $(out)/firmware_image.lds -nostdlib $(CPPFLAGS) \
|
||||
|
||||
@@ -42,7 +42,8 @@ CFLAGS_DEFINE=-DOUTDIR=$(out)/$(BLD) -DCHIP=$(CHIP) -DBOARD_TASKFILE=$(_tsk_lst_
|
||||
-DCHIP_VARIANT_$(UC_CHIP_VARIANT) -DCHIP_FAMILY_$(UC_CHIP_FAMILY) \
|
||||
-DFINAL_OUTDIR=$(out)
|
||||
CPPFLAGS=$(CFLAGS_DEFINE) $(CFLAGS_INCLUDE) $(CFLAGS_TEST) \
|
||||
$(EXTRA_CFLAGS) $(CFLAGS_COVERAGE) $(LATE_CFLAGS_DEFINE)
|
||||
$(EXTRA_CFLAGS) $(CFLAGS_COVERAGE) $(LATE_CFLAGS_DEFINE) \
|
||||
-DSECTION_IS_$(BLD) -DSECTION=$(BLD)
|
||||
CFLAGS=$(CPPFLAGS) $(CFLAGS_CPU) $(CFLAGS_DEBUG) $(CFLAGS_WARN) $(CFLAGS_y)
|
||||
CFLAGS+= -ffunction-sections -fshort-wchar
|
||||
CFLAGS+= -fno-delete-null-pointer-checks -fconserve-stack
|
||||
|
||||
Reference in New Issue
Block a user