Extend build-system for SPL framework
Signed-off-by: Aneesh V <aneesh@ti.com> Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
This commit is contained in:
parent
6a11cf48a5
commit
c8f9c302c2
3
Makefile
3
Makefile
@ -104,10 +104,11 @@ $(if $(BUILD_DIR),,$(error output directory "$(saved-output)" does not exist))
|
||||
endif # ifneq ($(BUILD_DIR),)
|
||||
|
||||
OBJTREE := $(if $(BUILD_DIR),$(BUILD_DIR),$(CURDIR))
|
||||
SPLTREE := $(OBJTREE)/spl
|
||||
SRCTREE := $(CURDIR)
|
||||
TOPDIR := $(SRCTREE)
|
||||
LNDIR := $(OBJTREE)
|
||||
export TOPDIR SRCTREE OBJTREE
|
||||
export TOPDIR SRCTREE OBJTREE SPLTREE
|
||||
|
||||
MKCONFIG := $(SRCTREE)/mkconfig
|
||||
export MKCONFIG
|
||||
|
34
config.mk
34
config.mk
@ -23,19 +23,31 @@
|
||||
|
||||
#########################################################################
|
||||
|
||||
ifneq ($(OBJTREE),$(SRCTREE))
|
||||
ifeq ($(CURDIR),$(SRCTREE))
|
||||
dir :=
|
||||
else
|
||||
dir := $(subst $(SRCTREE)/,,$(CURDIR))
|
||||
endif
|
||||
|
||||
ifneq ($(OBJTREE),$(SRCTREE))
|
||||
# Create object files for SPL in a separate directory
|
||||
ifeq ($(CONFIG_SPL_BUILD),y)
|
||||
obj := $(if $(dir),$(SPLTREE)/$(dir)/,$(SPLTREE)/)
|
||||
else
|
||||
obj := $(if $(dir),$(OBJTREE)/$(dir)/,$(OBJTREE)/)
|
||||
endif
|
||||
src := $(if $(dir),$(SRCTREE)/$(dir)/,$(SRCTREE)/)
|
||||
|
||||
$(shell mkdir -p $(obj))
|
||||
else
|
||||
# Create object files for SPL in a separate directory
|
||||
ifeq ($(CONFIG_SPL_BUILD),y)
|
||||
obj := $(if $(dir),$(SPLTREE)/$(dir)/,$(SPLTREE)/)
|
||||
|
||||
$(shell mkdir -p $(obj))
|
||||
else
|
||||
obj :=
|
||||
endif
|
||||
src :=
|
||||
endif
|
||||
|
||||
@ -160,10 +172,25 @@ gccincdir := $(shell $(CC) -print-file-name=include)
|
||||
|
||||
CPPFLAGS := $(DBGFLAGS) $(OPTFLAGS) $(RELFLAGS) \
|
||||
-D__KERNEL__
|
||||
|
||||
# Enable garbage collection of un-used sections for SPL
|
||||
ifeq ($(CONFIG_SPL_BUILD),y)
|
||||
CPPFLAGS += -ffunction-sections -fdata-sections
|
||||
LDFLAGS_FINAL += --gc-sections
|
||||
endif
|
||||
|
||||
ifneq ($(CONFIG_SYS_TEXT_BASE),)
|
||||
CPPFLAGS += -DCONFIG_SYS_TEXT_BASE=$(CONFIG_SYS_TEXT_BASE)
|
||||
endif
|
||||
|
||||
ifneq ($(CONFIG_SPL_TEXT_BASE),)
|
||||
CPPFLAGS += -DCONFIG_SPL_TEXT_BASE=$(CONFIG_SPL_TEXT_BASE)
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_SPL_BUILD),y)
|
||||
CPPFLAGS += -DCONFIG_SPL_BUILD
|
||||
endif
|
||||
|
||||
ifneq ($(RESET_VECTOR_ADDRESS),)
|
||||
CPPFLAGS += -DRESET_VECTOR_ADDRESS=$(RESET_VECTOR_ADDRESS)
|
||||
endif
|
||||
@ -206,6 +233,11 @@ ifneq ($(CONFIG_SYS_TEXT_BASE),)
|
||||
LDFLAGS_u-boot += -Ttext $(CONFIG_SYS_TEXT_BASE)
|
||||
endif
|
||||
|
||||
LDFLAGS_u-boot-spl += -T $(obj)u-boot-spl.lds $(LDFLAGS_FINAL)
|
||||
ifneq ($(CONFIG_SPL_TEXT_BASE),)
|
||||
LDFLAGS_u-boot-spl += -Ttext $(CONFIG_SPL_TEXT_BASE)
|
||||
endif
|
||||
|
||||
# Location of a usable BFD library, where we define "usable" as
|
||||
# "built for ${HOST}, supports ${TARGET}". Sensible values are
|
||||
# - When cross-compiling: the root of the cross-environment
|
||||
|
Loading…
Reference in New Issue
Block a user