diff options
author | Simon Glass <sjg@chromium.org> | 2011-11-21 10:49:37 +0000 |
---|---|---|
committer | Albert ARIBAUD <albert.u.boot@aribaud.net> | 2012-03-30 07:43:28 +0200 |
commit | ee60197e64f4daa8869a88ccc20bf6896a218657 (patch) | |
tree | b8c64618b17a94be373110116022556faf189c87 | |
parent | 76e2c169a525159d48dd005a371fb05e1943c64b (diff) | |
download | u-boot-imx-ee60197e64f4daa8869a88ccc20bf6896a218657.zip u-boot-imx-ee60197e64f4daa8869a88ccc20bf6896a218657.tar.gz u-boot-imx-ee60197e64f4daa8869a88ccc20bf6896a218657.tar.bz2 |
Allow arch directory to contain .lds without requiring Makefile
The Makefile for a CPU is in arch/($ARCH)/cpu/$(CPU). We want to support
having an .lds file in arch/$(ARCH)/cpu without requiring an additional
Makefile there. This change makes it clear that we expect a Makefile in
the same directory as the link script except in this case.
Signed-off-by: Simon Glass <sjg@chromium.org>
-rw-r--r-- | Makefile | 10 | ||||
-rw-r--r-- | spl/Makefile | 3 |
2 files changed, 12 insertions, 1 deletions
@@ -174,6 +174,8 @@ include $(TOPDIR)/config.mk # that (or fail if absent). Otherwise, search for a linker script in a # standard location. +LDSCRIPT_MAKEFILE_DIR = $(dir $(LDSCRIPT)) + ifndef LDSCRIPT #LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot.lds.debug ifdef CONFIG_SYS_LDSCRIPT @@ -182,6 +184,7 @@ ifndef LDSCRIPT endif endif +# If there is no specified link script, we look in a number of places for it ifndef LDSCRIPT ifeq ($(CONFIG_NAND_U_BOOT),y) LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot-nand.lds @@ -196,6 +199,11 @@ ifndef LDSCRIPT LDSCRIPT := $(TOPDIR)/$(CPUDIR)/u-boot.lds endif ifeq ($(wildcard $(LDSCRIPT)),) + LDSCRIPT := $(TOPDIR)/arch/$(ARCH)/cpu/u-boot.lds + # We don't expect a Makefile here + LDSCRIPT_MAKEFILE_DIR = + endif + ifeq ($(wildcard $(LDSCRIPT)),) $(error could not find linker script) endif endif @@ -513,7 +521,7 @@ depend dep: $(TIMESTAMP_FILE) $(VERSION_FILE) \ $(obj)include/autoconf.mk \ $(obj)include/generated/generic-asm-offsets.h \ $(obj)include/generated/asm-offsets.h - for dir in $(SUBDIRS) $(CPUDIR) $(dir $(LDSCRIPT)) ; do \ + for dir in $(SUBDIRS) $(CPUDIR) $(LDSCRIPT_MAKEFILE_DIR) ; do \ $(MAKE) -C $$dir _depend ; done TAG_SUBDIRS = $(SUBDIRS) diff --git a/spl/Makefile b/spl/Makefile index 3262e22..680f6dd 100644 --- a/spl/Makefile +++ b/spl/Makefile @@ -81,6 +81,9 @@ ifeq ($(wildcard $(LDSCRIPT)),) LDSCRIPT := $(TOPDIR)/$(CPUDIR)/u-boot-spl.lds endif ifeq ($(wildcard $(LDSCRIPT)),) + LDSCRIPT := $(TOPDIR)/arch/$(ARCH)/cpu/u-boot.lds +endif +ifeq ($(wildcard $(LDSCRIPT)),) $(error could not find linker script) endif |