[U-Boot] [PATCH v9 25/38] kbuild: move include directives of board configuration files

Masahiro Yamada
2014-02-04T08:24:32Z

This commit changes the location of include directives
of board configuration files.

The purpose of this change is:
- Slim down $(TOPDIR)/config.mk
- Prevent $(TOPDIR)/Makefile from including the same
configuration file twice
- Do not include include/config.mk multiple times
because ARCH, CPU, BOARD, VENDOR, SOC are exported

Before this commit:

- include/autoconf.mk was included from $(TOPDIR)/Makefile
and $(TOPDIR)/config.mk
(This means $(TOPDIR)/Makefile included include/autoconf.mk twice)

- include/{spl,tpl}-autoconf.mk was included from $(TOPDIR)/config.mk

- include/config.mk was included from $(TOPDIR)/Makefile
and $(TOPDIR)/config.mk
(This means $(TOPDIR)/Makefile included include/config.mk twice)

After this commit:

- include/autoconf.mk is included from $(TOPDIR)/Makefile
and $(TOPDIR)/scripts/Makefile.build

- include/{spl,tpl}-autoconf.mk is included from $(TOPDIR)/spl/Makefile
and $(TOPDIR)/scripts/Makefile.build

- include/config.mk is included from $(TOPDIR)/config.mk and
$(TOPDIR)/spl/Makefile

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
---

Changes in v9: None
Changes in v8: None
Changes in v7: None
Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2: None

config.mk | 15 ---------------
scripts/Makefile.build | 11 +++++++++++
spl/Makefile | 8 ++++++++
3 files changed, 19 insertions(+), 15 deletions(-)

diff --git a/config.mk b/config.mk
index 1336ef8..5b886aa 100644
--- a/config.mk
+++ b/config.mk
@@ -13,21 +13,6 @@ PLATFORM_LDFLAGS =

#########################################################################

-# Load generated board configuration
-ifeq ($(CONFIG_TPL_BUILD),y)
-# Include TPL autoconf
-sinclude include/tpl-autoconf.mk
-else
-ifeq ($(CONFIG_SPL_BUILD),y)
-# Include SPL autoconf
-sinclude include/spl-autoconf.mk
-else
-# Include normal autoconf
-sinclude include/autoconf.mk
-endif
-endif
-sinclude $(OBJTREE)/include/config.mk
-
# Some architecture config.mk files need to know what CPUDIR is set to,
# so calculate CPUDIR before including ARCH/SOC/CPU config.mk files.
# Check if arch/$ARCH/cpu/$CPU exists, otherwise assume arch/$ARCH/cpu contains
diff --git a/scripts/Makefile.build b/scripts/Makefile.build
index 2a87984..59361f4 100644
--- a/scripts/Makefile.build
+++ b/scripts/Makefile.build
@@ -42,6 +42,17 @@ subdir-ccflags-y :=
# Read auto.conf if it exists, otherwise ignore
-include include/config/auto.conf

+# Added for U-Boot: Load U-Boot configuration
+ifeq ($(CONFIG_TPL_BUILD),y)
+ -include include/tpl-autoconf.mk
+else
+ ifeq ($(CONFIG_SPL_BUILD),y)
+ -include include/spl-autoconf.mk
+ else
+ -include include/autoconf.mk
+ endif
+endif
+
include scripts/Kbuild.include

# Added for U-Boot
diff --git a/spl/Makefile b/spl/Makefile
index e2fd866..ad5b486 100644
--- a/spl/Makefile
+++ b/spl/Makefile
@@ -40,6 +40,14 @@ else
SPL_BIN := u-boot-spl
endif

+include include/config.mk
+
+ifeq ($(CONFIG_TPL_BUILD),y)
+ -include include/tpl-autoconf.mk
+else
+ -include include/spl-autoconf.mk
+endif
+
include $(TOPDIR)/config.mk

HAVE_VENDOR_COMMON_LIB = $(if $(wildcard $(SRCTREE)/board/$(VENDOR)/common/Makefile),y,n)
--
1.8.3.2