]> code.ossystems Code Review - openembedded-core.git/blob
c1026913af734573a8c76a2bef6ff0c3da7f589d
[openembedded-core.git] /
1 From fd1b50c5ff9c288040abf5e78815151327d32e0e Mon Sep 17 00:00:00 2001
2 From: Ilya Yanok <yanok@emcraft.com>
3 Date: Mon, 20 Jun 2011 12:45:37 +0000
4 Subject: config.mk: move LDSCRIPT processing to the top-level Makefile
5
6 Upstream-Status: Applied
7
8 LDSCRIPT is used only from the top-level Makefile and only when the
9 system is configured so we can move LDSCRIPT and CONFIG_SYS_LDSCRIPT
10 related logic into the top level Makefile and under configured condition
11 to avoid errors when building tools from unconfigured tree.
12
13 Signed-off-by: Ilya Yanok <yanok@emcraft.com>
14 Acked-by: Mike Frysinger <vapier@gentoo.org>
15 ---
16  Makefile  |   30 ++++++++++++++++++++++++++++++
17  config.mk |    8 --------
18  2 files changed, 30 insertions(+), 8 deletions(-)
19
20 diff --git a/Makefile b/Makefile
21 index ece91ab..358c410 100644
22 --- a/Makefile
23 +++ b/Makefile
24 @@ -163,6 +163,36 @@ endif
25  # load other configuration
26  include $(TOPDIR)/config.mk
27  
28 +# If board code explicitly specified LDSCRIPT or CONFIG_SYS_LDSCRIPT, use
29 +# that (or fail if absent).  Otherwise, search for a linker script in a
30 +# standard location.
31 +
32 +ifndef LDSCRIPT
33 +       #LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot.lds.debug
34 +       ifdef CONFIG_SYS_LDSCRIPT
35 +               # need to strip off double quotes
36 +               LDSCRIPT := $(subst ",,$(CONFIG_SYS_LDSCRIPT))
37 +       endif
38 +endif
39 +
40 +ifndef LDSCRIPT
41 +       ifeq ($(CONFIG_NAND_U_BOOT),y)
42 +               LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot-nand.lds
43 +               ifeq ($(wildcard $(LDSCRIPT)),)
44 +                       LDSCRIPT := $(TOPDIR)/$(CPUDIR)/u-boot-nand.lds
45 +               endif
46 +       endif
47 +       ifeq ($(wildcard $(LDSCRIPT)),)
48 +               LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot.lds
49 +       endif
50 +       ifeq ($(wildcard $(LDSCRIPT)),)
51 +               LDSCRIPT := $(TOPDIR)/$(CPUDIR)/u-boot.lds
52 +       endif
53 +       ifeq ($(wildcard $(LDSCRIPT)),)
54 +$(error could not find linker script)
55 +       endif
56 +endif
57 +
58  #########################################################################
59  # U-Boot objects....order is important (i.e. start must be first)
60  
61 diff --git a/config.mk b/config.mk
62 index fa46ff1..59c4c93 100644
63 --- a/config.mk
64 +++ b/config.mk
65 @@ -153,14 +153,6 @@ endif
66  RELFLAGS= $(PLATFORM_RELFLAGS)
67  DBGFLAGS= -g # -DDEBUG
68  OPTFLAGS= -Os #-fomit-frame-pointer
69 -ifndef LDSCRIPT
70 -#LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot.lds.debug
71 -ifeq ($(CONFIG_NAND_U_BOOT),y)
72 -LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot-nand.lds
73 -else
74 -LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot.lds
75 -endif
76 -endif
77  OBJCFLAGS += --gap-fill=0xff
78  
79  gccincdir := $(shell $(CC) -print-file-name=include)
80 -- 
81 1.7.5.4
82