Commit 8318fbf8cc30418b621ea9f39b84b4c1a08f003a

Authored by Marian Balakowicz
1 parent ba999c531e

Fix sequoia separate object direcory building problems.

Showing 5 changed files with 62 additions and 40 deletions Side-by-side Diff

... ... @@ -2,6 +2,8 @@
2 2 Changes for U-Boot 1.1.5:
3 3 ======================================================================
4 4  
  5 +* Fix sequoia separate object direcory building problems.
  6 +
5 7 * Cleanup compile warnings. Prepare for release 1.1.5
6 8  
7 9 * Fix compile problem in include/configs/ep82xxm.h
... ... @@ -269,10 +269,10 @@
269 269 $(MAKE) -C $@ all
270 270  
271 271 $(NAND_SPL): version
272   - $(MAKE) -C nand_spl all
  272 + $(MAKE) -C nand_spl/board/$(BOARDDIR) all
273 273  
274 274 $(U_BOOT_NAND): $(NAND_SPL) $(obj)u-boot.bin
275   - cat nand_spl/u-boot-spl-16k.bin $(obj)u-boot.bin > $(obj)u-boot-nand.bin
  275 + cat $(obj)nand_spl/u-boot-spl-16k.bin $(obj)u-boot.bin > $(obj)u-boot-nand.bin
276 276  
277 277 version:
278 278 @echo -n "#define U_BOOT_VERSION \"U-Boot " > $(VERSION_FILE); \
279 279  
280 280  
281 281  
... ... @@ -1146,19 +1146,22 @@
1146 1146 @$(MKCONFIG) -a $(call xtract_4xx,$@) ppc ppc4xx PPChameleonEVB dave
1147 1147  
1148 1148 rainier_config: unconfig
1149   - @echo "#define CONFIG_RAINIER" > include/config.h
  1149 + @mkdir -p $(obj)include
  1150 + @echo "#define CONFIG_RAINIER" > $(obj)include/config.h
1150 1151 @echo "Configuring for rainier board as subset of sequoia..."
1151 1152 @$(MKCONFIG) -a sequoia ppc ppc4xx sequoia amcc
1152 1153  
1153 1154 rainier_nand_config: unconfig
1154   - @echo "#define CONFIG_RAINIER" > include/config.h
  1155 + @mkdir -p $(obj)include
  1156 + @mkdir -p $(obj)nand_spl
  1157 + @mkdir -p $(obj)board/amcc/sequoia
  1158 + @echo "#define CONFIG_RAINIER" > $(obj)include/config.h
1155 1159 @echo "Configuring for rainier board as subset of sequoia..."
1156   - @ln -s board/amcc/sequoia/Makefile nand_spl/Makefile
1157   - @echo "#define CONFIG_NAND_U_BOOT" >> include/config.h
  1160 + @echo "#define CONFIG_NAND_U_BOOT" >> $(obj)include/config.h
1158 1161 @echo "Compile NAND boot image for sequoia"
1159 1162 @$(MKCONFIG) -a sequoia ppc ppc4xx sequoia amcc
1160   - @echo "TEXT_BASE = 0x01000000" >board/amcc/sequoia/config.tmp
1161   - @echo "CONFIG_NAND_U_BOOT = y" >> include/config.mk
  1163 + @echo "TEXT_BASE = 0x01000000" > $(obj)board/amcc/sequoia/config.tmp
  1164 + @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
1162 1165  
1163 1166 sbc405_config: unconfig
1164 1167 @$(MKCONFIG) $(@:_config=) ppc ppc4xx sbc405
1165 1168  
... ... @@ -1167,12 +1170,14 @@
1167 1170 @$(MKCONFIG) $(@:_config=) ppc ppc4xx sequoia amcc
1168 1171  
1169 1172 sequoia_nand_config: unconfig
1170   - @ln -s board/amcc/sequoia/Makefile nand_spl/Makefile
1171   - @echo "#define CONFIG_NAND_U_BOOT" >include/config.h
  1173 + @mkdir -p $(obj)include
  1174 + @mkdir -p $(obj)nand_spl
  1175 + @mkdir -p $(obj)board/amcc/sequoia
  1176 + @echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h
1172 1177 @echo "Compile NAND boot image for sequoia"
1173 1178 @$(MKCONFIG) -a sequoia ppc ppc4xx sequoia amcc
1174   - @echo "TEXT_BASE = 0x01000000" >board/amcc/sequoia/config.tmp
1175   - @echo "CONFIG_NAND_U_BOOT = y" >> include/config.mk
  1179 + @echo "TEXT_BASE = 0x01000000" > $(obj)board/amcc/sequoia/config.tmp
  1180 + @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
1176 1181  
1177 1182 sycamore_config: unconfig
1178 1183 @echo "Configuring for sycamore board as subset of walnut..."
... ... @@ -2244,8 +2249,7 @@
2244 2249 rm -f $(obj)board/trab/trab_fkt $(obj)board/voiceblue/eeprom
2245 2250 rm -f $(obj)board/integratorap/u-boot.lds $(obj)board/integratorcp/u-boot.lds
2246 2251 rm -f $(obj)include/bmp_logo.h
2247   - find nand_spl -lname "*" -print | xargs rm -f
2248   - rm -f nand_spl/u-boot-spl nand_spl/u-boot-spl.map
  2252 + rm -f $(obj)nand_spl/u-boot-spl $(obj)nand_spl/u-boot-spl.map
2249 2253  
2250 2254 clobber: clean
2251 2255 find $(OBJTREE) -type f \( -name .depend \
... ... @@ -2258,6 +2262,7 @@
2258 2262 rm -f $(obj)tools/crc32.c $(obj)tools/environment.c $(obj)tools/env/crc32.c
2259 2263 rm -f $(obj)tools/inca-swap-bytes $(obj)cpu/mpc824x/bedbug_603e.c
2260 2264 rm -f $(obj)include/asm/proc $(obj)include/asm/arch $(obj)include/asm
  2265 + [ ! -d $(OBJTREE)/nand_spl ] || find $(obj)nand_spl -lname "*" -print | xargs rm -f
2261 2266  
2262 2267 ifeq ($(OBJTREE),$(SRCTREE))
2263 2268 mrproper \
board/amcc/sequoia/Makefile
... ... @@ -22,7 +22,6 @@
22 22 #
23 23  
24 24 include $(TOPDIR)/config.mk
25   -include $(TOPDIR)/include/config.mk
26 25  
27 26 LIB = $(obj)lib$(BOARD).a
28 27  
board/amcc/sequoia/config.mk
... ... @@ -24,7 +24,7 @@
24 24 # AMCC 440EPx Reference Platform (Sequoia) board
25 25 #
26 26  
27   -sinclude $(TOPDIR)/board/$(BOARDDIR)/config.tmp
  27 +sinclude $(OBJTREE)/board/$(BOARDDIR)/config.tmp
28 28  
29 29 ifndef TEXT_BASE
30 30 TEXT_BASE = 0xFFFA0000
nand_spl/board/amcc/sequoia/Makefile
... ... @@ -22,9 +22,9 @@
22 22 #
23 23  
24 24 include $(TOPDIR)/config.mk
25   -include board/$(BOARDDIR)/config.mk
  25 +include $(TOPDIR)/nand_spl/board/$(BOARDDIR)/config.mk
26 26  
27   -LDSCRIPT= board/$(BOARDDIR)/u-boot.lds
  27 +LDSCRIPT= $(TOPDIR)/nand_spl/board/$(BOARDDIR)/u-boot.lds
28 28 LDFLAGS = -Bstatic -T $(LDSCRIPT) -Ttext $(TEXT_BASE) $(PLATFORM_LDFLAGS)
29 29 AFLAGS += -DCONFIG_NAND_SPL
30 30 CFLAGS += -DCONFIG_NAND_SPL
31 31  
32 32  
33 33  
34 34  
35 35  
36 36  
37 37  
38 38  
39 39  
40 40  
41 41  
42 42  
43 43  
... ... @@ -32,48 +32,64 @@
32 32 SOBJS = start.o init.o resetvec.o
33 33 COBJS = nand_boot.o ndfc.o sdram.o
34 34  
35   -SRCS := $(SOBJS:.o=.S) $(COBJS:.o=.c)
  35 +SRCS := $(addprefix $(obj),$(SOBJS:.o=.S) $(COBJS:.o=.c))
36 36 OBJS := $(addprefix $(obj),$(SOBJS) $(COBJS))
  37 +__OBJS := $(SOBJS) $(COBJS)
  38 +LNDIR := $(OBJTREE)/nand_spl/board/$(BOARDDIR)
37 39  
38   -ALL = u-boot-spl u-boot-spl.bin u-boot-spl-16k.bin
  40 +nandobj := $(OBJTREE)/nand_spl/
39 41  
  42 +ALL = $(nandobj)u-boot-spl $(nandobj)u-boot-spl.bin $(nandobj)u-boot-spl-16k.bin
  43 +
40 44 all: $(obj).depend $(ALL)
41 45  
42   -u-boot-spl-16k.bin: u-boot-spl
  46 +$(nandobj)u-boot-spl-16k.bin: $(nandobj)u-boot-spl
43 47 $(OBJCOPY) ${OBJCFLAGS} --pad-to=$(PAD_TO) -O binary $< $@
44 48  
45   -u-boot-spl.bin: u-boot-spl
  49 +$(nandobj)u-boot-spl.bin: $(nandobj)u-boot-spl
46 50 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
47 51  
48   -u-boot-spl: $(OBJS)
49   - $(LD) $(LDFLAGS) $$UNDEF_SYM $(OBJS) \
50   - -Map u-boot-spl.map -o u-boot-spl
  52 +$(nandobj)u-boot-spl: $(OBJS)
  53 + cd $(LNDIR) && $(LD) $(LDFLAGS) $$UNDEF_SYM $(__OBJS) \
  54 + -Map $(nandobj)u-boot-spl.map \
  55 + -o $(nandobj)u-boot-spl
51 56  
52 57 # create symbolic links for common files
53 58  
54 59 # from cpu directory
55   -ndfc.c:
56   - @rm -f ndfc.c
57   - ln -s ../cpu/ppc4xx/ndfc.c ndfc.c
  60 +$(obj)ndfc.c:
  61 + @rm -f $(obj)ndfc.c
  62 + ln -s $(SRCTREE)/cpu/ppc4xx/ndfc.c $(obj)ndfc.c
58 63  
59   -resetvec.S:
60   - @rm -f resetvec.S
61   - ln -s ../cpu/ppc4xx/resetvec.S resetvec.S
  64 +$(obj)resetvec.S:
  65 + @rm -f $(obj)resetvec.S
  66 + ln -s $(SRCTREE)/cpu/ppc4xx/resetvec.S $(obj)resetvec.S
62 67  
63   -start.S:
64   - @rm -f start.S
65   - ln -s ../cpu/ppc4xx/start.S start.S
  68 +$(obj)start.S:
  69 + @rm -f $(obj)start.S
  70 + ln -s $(SRCTREE)/cpu/ppc4xx/start.S $(obj)start.S
66 71  
67 72 # from board directory
68   -init.S:
69   - @rm -f init.S
70   - ln -s ../board/amcc/sequoia/init.S init.S
  73 +$(obj)init.S:
  74 + @rm -f $(obj)init.S
  75 + ln -s $(SRCTREE)/board/amcc/sequoia/init.S $(obj)init.S
71 76  
72   -sdram.c:
73   - @rm -f sdram.c
74   - ln -s ../board/amcc/sequoia/sdram.c sdram.c
  77 +$(obj)sdram.c:
  78 + @rm -f $(obj)sdram.c
  79 + ln -s $(SRCTREE)/board/amcc/sequoia/sdram.c $(obj)sdram.c
75 80  
  81 +# from nand_spl directory
  82 +$(obj)nand_boot.c:
  83 + @rm -f $(obj)nand_boot.c
  84 + ln -s $(SRCTREE)/nand_spl/nand_boot.c $(obj)nand_boot.c
  85 +
76 86 #########################################################################
  87 +
  88 +$(obj)%.o: $(obj)%.S
  89 + $(CC) $(AFLAGS) -c -o $@ $<
  90 +
  91 +$(obj)%.o: $(obj)%.c
  92 + $(CC) $(CFLAGS) -c -o $@ $<
77 93  
78 94 # defines $(obj).depend target
79 95 include $(SRCTREE)/rules.mk