Commit 8318fbf8cc30418b621ea9f39b84b4c1a08f003a
1 parent
ba999c531e
Exists in
master
and in
54 other branches
Fix sequoia separate object direcory building problems.
Showing 5 changed files with 62 additions and 40 deletions Side-by-side Diff
CHANGELOG
... | ... | @@ -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 |
Makefile
... | ... | @@ -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
board/amcc/sequoia/config.mk
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 |