From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Schwierzeck Date: Tue, 5 Jul 2011 18:26:19 +0200 Subject: [U-Boot] [RFC PATCH 1/4] Adapt config.mk for usage in spl/Makefile In-Reply-To: <1309883182-12854-1-git-send-email-daniel.schwierzeck@googlemail.com> References: <1309352967-5719-1-git-send-email-aneesh@ti.com> <1309883182-12854-1-git-send-email-daniel.schwierzeck@googlemail.com> Message-ID: <1309883182-12854-2-git-send-email-daniel.schwierzeck@googlemail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de [aneesh at ti.com: 1. Changed the definition of OBJTREE and the way 'obj' is defined. 2. Defined a flag to identify regular U-Boot build 3. Taking care of autoconf.mk etc for SPL due to changed OBJTREE ] [daniel.schwierzeck at googlemail.com: 1. reverted changes on implicite make rules 2. readded definition of -DCONFIG_UBOOT_SPL_BUILD in CPPFLAGS ] Signed-off-by: Aneesh V Signed-off-by: Daniel Schwierzeck --- config.mk | 28 ++++++++++++++++++++++++++++ 1 files changed, 28 insertions(+), 0 deletions(-) diff --git a/config.mk b/config.mk index 2eb7fa2..a16e761 100644 --- a/config.mk +++ b/config.mk @@ -116,8 +116,14 @@ RANLIB = $(CROSS_COMPILE)RANLIB ######################################################################### # Load generated board configuration +ifdef CONFIG_UBOOT_SPL_BUILD +# OBJTREE points to /spl/obj inside the original OBJTREE for SPL +sinclude $(OBJTREE)/../../include/autoconf.mk +sinclude $(OBJTREE)/../../include/config.mk +else sinclude $(OBJTREE)/include/autoconf.mk sinclude $(OBJTREE)/include/config.mk +endif # Some architecture config.mk files need to know what CPUDIR is set to, # so calculate CPUDIR before including ARCH/SOC/CPU config.mk files. @@ -164,13 +170,30 @@ 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 + +# Allow compiling of C and ASM code parts in different way. +# Serves also as a replacement for CONFIG_PRELOADER. +ifneq ($(CONFIG_UBOOT_SPL_BUILD),) +CPPFLAGS += -DCONFIG_UBOOT_SPL_BUILD +endif + +CONFIG_NORMAL_UBOOT = $(if $(CONFIG_UBOOT_SPL_BUILD),,y) + ifneq ($(RESET_VECTOR_ADDRESS),) CPPFLAGS += -DRESET_VECTOR_ADDRESS=$(RESET_VECTOR_ADDRESS) endif ifneq ($(OBJTREE),$(SRCTREE)) +ifdef CONFIG_UBOOT_SPL_BUILD +# OBJTREE points to /spl/obj inside the original OBJTREE for SPL +CPPFLAGS += -I$(OBJTREE)/../../include2 -I$(OBJTREE)/../../include +else CPPFLAGS += -I$(OBJTREE)/include2 -I$(OBJTREE)/include endif +endif CPPFLAGS += -I$(TOPDIR)/include CPPFLAGS += -fno-builtin -ffreestanding -nostdinc \ @@ -206,6 +229,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 -- 1.7.5.4