[U-Boot-Users] build breakage for make -jN

It looks like the following commit has broken the build a bit:
ae6d1056d2c2e4d1266413c0ae8a6d5529ecde4b - Fix Makefile dependencies issues; allow silent build
make distclean ; make MPC8544DS_config ; make -j4
I get:
board/freescale/mpc8544ds/libmpc8544ds.a(mpc8544ds.o): In function `ft_board_setup': /local/home/galak/git/master/u-boot/board/freescale/mpc8544ds/ mpc8544ds.c:514: undefined reference to `ft_cpu_setup' /local/home/galak/git/master/u-boot/board/freescale/mpc8544ds/ mpc8544ds.c:516: undefined reference to `fdt_path_offset' /local/home/galak/git/master/u-boot/board/freescale/mpc8544ds/ mpc8544ds.c:520: undefined reference to `fdt_getprop' /local/home/galak/git/master/u-boot/board/freescale/mpc8544ds/ mpc8544ds.c:527: undefined reference to `fdt_getprop' /local/home/galak/git/master/u-boot/board/freescale/mpc8544ds/ mpc8544ds.c:534: undefined reference to `fdt_getprop' /local/home/galak/git/master/u-boot/board/freescale/mpc8544ds/ mpc8544ds.c:541: undefined reference to `fdt_getprop' common/libcommon.a(cmd_bootm.o): In function `do_bootm_linux': /local/home/galak/git/master/u-boot/common/cmd_bootm.c:748: undefined reference to `fdt_check_header' /local/home/galak/git/master/u-boot/common/cmd_bootm.c:799: undefined reference to `fdt_check_header' /local/home/galak/git/master/u-boot/common/cmd_bootm.c:849: undefined reference to `fdt_check_header' /local/home/galak/git/master/u-boot/common/cmd_bootm.c:965: undefined reference to `fdt_open_into' common/libcommon.a(cmd_fdt.o): In function `fdt_valid': /local/home/galak/git/master/u-boot/common/cmd_fdt.c:339: undefined reference to `fdt_check_header' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:344: undefined reference to `fdt_strerror' common/libcommon.a(cmd_fdt.o): In function `do_fdt': /local/home/galak/git/master/u-boot/common/cmd_fdt.c:87: undefined reference to `fdt_open_into' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:89: undefined reference to `fdt_strerror' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:137: undefined reference to `fdt_open_into' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:139: undefined reference to `fdt_strerror' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:165: undefined reference to `fdt_path_offset' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:174: undefined reference to `fdt_add_subnode' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:176: undefined reference to `fdt_strerror' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:210: undefined reference to `fdt_path_offset' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:220: undefined reference to `fdt_setprop' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:222: undefined reference to `fdt_strerror' common/libcommon.a(cmd_fdt.o): In function `fdt_print': /local/home/galak/git/master/u-boot/common/cmd_fdt.c:573: undefined reference to `fdt_path_offset' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:587: undefined reference to `fdt_getprop' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:609: undefined reference to `fdt_next_tag' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:612: undefined reference to `fdt_get_name' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:636: undefined reference to `fdt_offset_ptr' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:638: undefined reference to `fdt_string' common/libcommon.a(cmd_fdt.o): In function `do_fdt': /local/home/galak/git/master/u-boot/common/cmd_fdt.c:271: undefined reference to `fdt_path_offset' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:276: undefined reference to `fdt_strerror' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:285: undefined reference to `fdt_delprop' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:287: undefined reference to `fdt_strerror' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:292: undefined reference to `fdt_del_node' /local/home/galak/git/master/u-boot/common/cmd_fdt.c:294: undefined reference to `fdt_strerror' common/libcommon.a(cmd_fdt.o): In function `fdt_print': /local/home/galak/git/master/u-boot/common/cmd_fdt.c:643: undefined reference to `fdt_strerror' common/libcommon.a(fdt_support.o): In function `fdt_fixup_memory': /local/home/galak/git/master/u-boot/common/fdt_support.c:500: undefined reference to `fdt_check_header' /local/home/galak/git/master/u-boot/common/fdt_support.c:502: undefined reference to `fdt_strerror' /local/home/galak/git/master/u-boot/common/fdt_support.c:507: undefined reference to `fdt_path_offset' /local/home/galak/git/master/u-boot/common/fdt_support.c:509: undefined reference to `fdt_add_subnode' /local/home/galak/git/master/u-boot/common/fdt_support.c:511: undefined reference to `fdt_strerror' /local/home/galak/git/master/u-boot/common/fdt_support.c:515: undefined reference to `fdt_setprop' /local/home/galak/git/master/u-boot/common/fdt_support.c:518: undefined reference to `fdt_strerror' /local/home/galak/git/master/u-boot/common/fdt_support.c:523: undefined reference to `fdt_getprop' /local/home/galak/git/master/u-boot/common/fdt_support.c:543: undefined reference to `fdt_getprop' /local/home/galak/git/master/u-boot/common/fdt_support.c:563: undefined reference to `fdt_setprop' /local/home/galak/git/master/u-boot/common/fdt_support.c:565: undefined reference to `fdt_strerror' common/libcommon.a(fdt_support.o): In function `do_fixup_by_compat': /local/home/galak/git/master/u-boot/common/fdt_support.c:481: undefined reference to `fdt_get_property' /local/home/galak/git/master/u-boot/common/fdt_support.c:482: undefined reference to `fdt_setprop' /local/home/galak/git/master/u-boot/common/fdt_support.c:483: undefined reference to `fdt_node_offset_by_compatible' common/libcommon.a(fdt_support.o): In function `fdt_find_and_setprop': /local/home/galak/git/master/u-boot/common/fdt_support.c:63: undefined reference to `fdt_path_offset' /local/home/galak/git/master/u-boot/common/fdt_support.c:68: undefined reference to `fdt_get_property' /local/home/galak/git/master/u-boot/common/fdt_support.c:71: undefined reference to `fdt_setprop' common/libcommon.a(fdt_support.o): In function `do_fixup_by_path': /local/home/galak/git/master/u-boot/common/fdt_support.c:428: undefined reference to `fdt_strerror' common/libcommon.a(fdt_support.o): In function `fdt_fixup_ethernet': /local/home/galak/git/master/u-boot/common/fdt_support.c:580: undefined reference to `fdt_path_offset' /local/home/galak/git/master/u-boot/common/fdt_support.c:583: undefined reference to `fdt_getprop' /local/home/galak/git/master/u-boot/common/fdt_support.c:592: undefined reference to `fdt_getprop' common/libcommon.a(fdt_support.o): In function `do_fixup_by_prop': /local/home/galak/git/master/u-boot/common/fdt_support.c:454: undefined reference to `fdt_get_property' /local/home/galak/git/master/u-boot/common/fdt_support.c:455: undefined reference to `fdt_setprop' /local/home/galak/git/master/u-boot/common/fdt_support.c:456: undefined reference to `fdt_node_offset_by_prop_value' common/libcommon.a(fdt_support.o): In function `fdt_chosen': /local/home/galak/git/master/u-boot/common/fdt_support.c:119: undefined reference to `fdt_check_header' /local/home/galak/git/master/u-boot/common/fdt_support.c:137: undefined reference to `fdt_del_mem_rsv' /local/home/galak/git/master/u-boot/common/fdt_support.c:127: undefined reference to `fdt_num_mem_rsv' /local/home/galak/git/master/u-boot/common/fdt_support.c:135: undefined reference to `fdt_get_mem_rsv' /local/home/galak/git/master/u-boot/common/fdt_support.c:142: undefined reference to `fdt_add_mem_rsv' /local/home/galak/git/master/u-boot/common/fdt_support.c:144: undefined reference to `fdt_strerror' /local/home/galak/git/master/u-boot/common/fdt_support.c:152: undefined reference to `fdt_path_offset' /local/home/galak/git/master/u-boot/common/fdt_support.c:161: undefined reference to `fdt_add_subnode' /local/home/galak/git/master/u-boot/common/fdt_support.c:163: undefined reference to `fdt_strerror' /local/home/galak/git/master/u-boot/common/fdt_support.c:176: undefined reference to `fdt_getprop' /local/home/galak/git/master/u-boot/common/fdt_support.c:178: undefined reference to `fdt_setprop' /local/home/galak/git/master/u-boot/common/fdt_support.c:181: undefined reference to `fdt_strerror' /local/home/galak/git/master/u-boot/common/fdt_support.c:186: undefined reference to `fdt_getprop' /local/home/galak/git/master/u-boot/common/fdt_support.c:189: undefined reference to `fdt_setprop' /local/home/galak/git/master/u-boot/common/fdt_support.c:192: undefined reference to `fdt_strerror' /local/home/galak/git/master/u-boot/common/fdt_support.c:196: undefined reference to `fdt_setprop' /local/home/galak/git/master/u-boot/common/fdt_support.c:199: undefined reference to `fdt_strerror' /local/home/galak/git/master/u-boot/common/fdt_support.c:205: undefined reference to `fdt_getprop' common/libcommon.a(fdt_support.o): In function `fdt_fixup_stdout': /local/home/galak/git/master/u-boot/common/fdt_support.c:85: undefined reference to `fdt_path_offset' /local/home/galak/git/master/u-boot/common/fdt_support.c:88: undefined reference to `fdt_getprop' /local/home/galak/git/master/u-boot/common/fdt_support.c:94: undefined reference to `fdt_setprop' /local/home/galak/git/master/u-boot/common/fdt_support.c:104: undefined reference to `fdt_strerror' make: *** [u-boot] Error 1
- k

In message 8C3593F2-B970-42FA-A92B-FC9714B8A338@kernel.crashing.org you wrote:
It looks like the following commit has broken the build a bit:
ae6d1056d2c2e4d1266413c0ae8a6d5529ecde4b - Fix Makefile dependencies issues; allow silent build
make distclean ; make MPC8544DS_config ; make -j4
I get:
board/freescale/mpc8544ds/libmpc8544ds.a(mpc8544ds.o): In function `ft_board_setup': /local/home/galak/git/master/u-boot/board/freescale/mpc8544ds/ mpc8544ds.c:514: undefined reference to `ft_cpu_setup' /local/home/galak/git/master/u-boot/board/freescale/mpc8544ds/ mpc8544ds.c:516: undefined reference to `fdt_path_offset'
...
Argh... You are right.
Hm... for some reason libfdt/fdt_ro.o does not get built...
Best regards,
Wolfgang Denk

In message 20080113194740.C2191247C1@gemini.denx.de you wrote:
In message 8C3593F2-B970-42FA-A92B-FC9714B8A338@kernel.crashing.org you wrote:
It looks like the following commit has broken the build a bit:
ae6d1056d2c2e4d1266413c0ae8a6d5529ecde4b - Fix Makefile dependencies issues; allow silent build
make distclean ; make MPC8544DS_config ; make -j4
I get:
board/freescale/mpc8544ds/libmpc8544ds.a(mpc8544ds.o): In function `ft_board_setup': /local/home/galak/git/master/u-boot/board/freescale/mpc8544ds/ mpc8544ds.c:514: undefined reference to `ft_cpu_setup' /local/home/galak/git/master/u-boot/board/freescale/mpc8544ds/ mpc8544ds.c:516: undefined reference to `fdt_path_offset'
...
Argh... You are right.
Hm... for some reason libfdt/fdt_ro.o does not get built...
Actually NONE of the files in libfdt/ get compiled, because CONFIG_OF_LIBFDT is not set (yet) when this gets built. Ummm, right - there are no dependencies on building the OBJS, SUBDIRS or LIBS targets... Seems this is an old bug, that shows up only now... This patch seems to fix it - please confirm:
diff --git a/Makefile b/Makefile index eba9333..8a888b9 100644 --- a/Makefile +++ b/Makefile @@ -309,26 +309,25 @@ $(obj)u-boot.sha1: $(obj)u-boot.bin $(obj)u-boot.dis: $(obj)u-boot $(OBJDUMP) -d $< > $@
-$(obj)u-boot: depend $(obj)include/autoconf.mk \ - $(SUBDIRS) $(OBJS) $(LIBS) $(LDSCRIPT) +$(obj)u-boot: depend $(SUBDIRS) $(OBJS) $(LIBS) $(LDSCRIPT) UNDEF_SYM=`$(OBJDUMP) -x $(LIBS) |sed -n -e 's/.*(__u_boot_cmd_.*)/-u\1/p'|sort|uniq`;\ cd $(LNDIR) && $(LD) $(LDFLAGS) $$UNDEF_SYM $(__OBJS) \ --start-group $(__LIBS) --end-group $(PLATFORM_LIBS) \ -Map u-boot.map -o u-boot
-$(OBJS): +$(OBJS): $(obj)include/autoconf.mk $(MAKE) -C cpu/$(CPU) $(if $(REMOTE_BUILD),$@,$(notdir $@))
-$(LIBS): +$(LIBS): $(obj)include/autoconf.mk $(MAKE) -C $(dir $(subst $(obj),,$@))
-$(SUBDIRS): +$(SUBDIRS): $(obj)include/autoconf.mk $(MAKE) -C $@ all
-$(NAND_SPL): $(VERSION_FILE) +$(NAND_SPL): $(VERSION_FILE) $(obj)include/autoconf.mk $(MAKE) -C nand_spl/board/$(BOARDDIR) all
-$(U_BOOT_NAND): $(NAND_SPL) $(obj)u-boot.bin +$(U_BOOT_NAND): $(NAND_SPL) $(obj)u-boot.bin $(obj)include/autoconf.mk cat $(obj)nand_spl/u-boot-spl-16k.bin $(obj)u-boot.bin > $(obj)u-boot-nand.bin
$(VERSION_FILE):
Best regards,
Wolfgang Denk

On Jan 13, 2008, at 2:05 PM, Wolfgang Denk wrote:
In message 20080113194740.C2191247C1@gemini.denx.de you wrote:
In message <8C3593F2-B970-42FA-A92B- FC9714B8A338@kernel.crashing.org> you wrote:
It looks like the following commit has broken the build a bit:
ae6d1056d2c2e4d1266413c0ae8a6d5529ecde4b - Fix Makefile dependencies issues; allow silent build
make distclean ; make MPC8544DS_config ; make -j4
I get:
board/freescale/mpc8544ds/libmpc8544ds.a(mpc8544ds.o): In function `ft_board_setup': /local/home/galak/git/master/u-boot/board/freescale/mpc8544ds/ mpc8544ds.c:514: undefined reference to `ft_cpu_setup' /local/home/galak/git/master/u-boot/board/freescale/mpc8544ds/ mpc8544ds.c:516: undefined reference to `fdt_path_offset'
...
Argh... You are right.
Hm... for some reason libfdt/fdt_ro.o does not get built...
Actually NONE of the files in libfdt/ get compiled, because CONFIG_OF_LIBFDT is not set (yet) when this gets built. Ummm, right - there are no dependencies on building the OBJS, SUBDIRS or LIBS targets... Seems this is an old bug, that shows up only now... This patch seems to fix it - please confirm:
The patch fixes building on my box.
- k

Dear Kumar,
in message 5E4EE769-18A0-4043-9E27-79D50A8A9234@kernel.crashing.org you wrote:
Actually NONE of the files in libfdt/ get compiled, because CONFIG_OF_LIBFDT is not set (yet) when this gets built. Ummm, right - there are no dependencies on building the OBJS, SUBDIRS or LIBS targets... Seems this is an old bug, that shows up only now... This patch seems to fix it - please confirm:
The patch fixes building on my box.
Thanks for the confirmation, checked in.
Best regards,
Wolfgang Denk
participants (2)
-
Kumar Gala
-
Wolfgang Denk