From mboxrd@z Thu Jan 1 00:00:00 1970 From: Simon Glass Date: Tue, 16 Jun 2015 15:07:33 -0600 Subject: [U-Boot] [PATCH] If CONFIG_SANDBOX isn't defined the build fails in fw_env.c In-Reply-To: <20150616200450.GB28577@bill-the-cat> References: <1434397251-24805-1-git-send-email-pbrobinson@gmail.com> <20150616200450.GB28577@bill-the-cat> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de +Masahiro, who might have some clues Hi Tom, On 16 June 2015 at 14:04, Tom Rini wrote: > On Tue, Jun 16, 2015 at 12:24:01PM -0600, Simon Glass wrote: >> Hi Peter, >> >> On 15 June 2015 at 13:40, Peter Robinson wrote: >> > In our Fedora builds we get the below errors if we build the following using >> > a vanilla u-boot 2015.07rc2. I'm not sure if it's the best fix but it fixes >> > the build for rc2. >> > >> > make HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE="" defconfig V=1 O=builds/ >> > make HOSTCC="gcc $RPM_OPT_FLAGS" CROSS_COMPILE="" tools-all V=1 O=builds/ >> > >> > gcc -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wp,-MD,tools/env/.fw_env.o.d -Itools/env -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -idirafterinclude -idirafter../include -idirafter../arch/sandbox/include -idirafter ../tools/env -DUSE_HOSTCC -DTEXT_BASE= -c -o tools/env/fw_env.o ../tools/env/fw_env.c >> > In file included from ../include/configs/sandbox.h:130:0, >> > from include/config.h:5, >> > from ../tools/env/fw_env.h:11, >> > from ../tools/env/fw_env.c:34: >> > ../include/env_default.h:104:2: error: expected '}' before 'BOOT_TARGET_DEVICES_references_HOST_without_CONFIG_SANDBOX' >> > CONFIG_EXTRA_ENV_SETTINGS >> > ^ >> > scripts/Makefile.host:108: recipe for target 'tools/env/fw_env.o' failed >> > make[2]: *** [tools/env/fw_env.o] Error 1 >> >> Thanks for the report. I can't seem to repeat this. The build >> completes OK for me. > > I see it too. Make sure you start with an empty objdir. 'defconfig' > and 'sandbox_defconfig' both do it for me. OK, I see. The oldsilentconfig seem to do something odd. Without that it works for me. Why is it needed? (try-peter=0155f0: -- b/ index.html index.html.1 sandbox/ test/) u> !rm rm -r b/sandbox (try-peter=0155f0: -- b/ index.html index.html.1 sandbox/ test/) u> make O=b/sandbox defconfig make[1]: Entering directory `/usr/local/google/c/cosarm/src/third_party/u-boot/files/b/sandbox' HOSTCC scripts/basic/fixdep GEN ./Makefile HOSTCC scripts/kconfig/conf.o SHIPPED scripts/kconfig/zconf.tab.c SHIPPED scripts/kconfig/zconf.lex.c SHIPPED scripts/kconfig/zconf.hash.c HOSTCC scripts/kconfig/zconf.tab.o HOSTLD scripts/kconfig/conf *** Default configuration is based on 'sandbox_defconfig' # # configuration written to .config # make[1]: Leaving directory `/usr/local/google/c/cosarm/src/third_party/u-boot/files/b/sandbox' (try-peter=0155f0: -- b/ index.html index.html.1 sandbox/ test/) u> make O=b/sandbox tools-all -s /usr/local/google/c/cosarm/src/third_party/u-boot/files/tools/easylogo/easylogo.c: In function ?image_load_tga?: /usr/local/google/c/cosarm/src/third_party/u-boot/files/tools/easylogo/easylogo.c:160:8: warning: ignoring return value of ?fread?, declared with attribute warn_unused_result [-Wunused-result] fread (&header, sizeof (header), 1, file); ^ /usr/local/google/c/cosarm/src/third_party/u-boot/files/tools/easylogo/easylogo.c:196:8: warning: ignoring return value of ?fread?, declared with attribute warn_unused_result [-Wunused-result] fread (image->data, image->size, 1, file); ^ (try-peter=0155f0: -- b/ index.html index.html.1 sandbox/ test/) u> !rm rm -r b/sandbox (try-peter=0155f0: -- b/ index.html index.html.1 sandbox/ test/) u> make O=b/sandbox defconfig make[1]: Entering directory `/usr/local/google/c/cosarm/src/third_party/u-boot/files/b/sandbox' HOSTCC scripts/basic/fixdep GEN ./Makefile HOSTCC scripts/kconfig/conf.o SHIPPED scripts/kconfig/zconf.tab.c SHIPPED scripts/kconfig/zconf.lex.c SHIPPED scripts/kconfig/zconf.hash.c HOSTCC scripts/kconfig/zconf.tab.o HOSTLD scripts/kconfig/conf *** Default configuration is based on 'sandbox_defconfig' # # configuration written to .config # make[1]: Leaving directory `/usr/local/google/c/cosarm/src/third_party/u-boot/files/b/sandbox' (try-peter=0155f0: -- b/ index.html index.html.1 sandbox/ test/) u> make O=b/sandbox silentoldconfig make[1]: Entering directory `/usr/local/google/c/cosarm/src/third_party/u-boot/files/b/sandbox' GEN ./Makefile scripts/kconfig/conf --silentoldconfig Kconfig make[1]: Leaving directory `/usr/local/google/c/cosarm/src/third_party/u-boot/files/b/sandbox' (try-peter=0155f0: -- b/ index.html index.html.1 sandbox/ test/) u> make O=b/sandbox tools-all -s In file included from /usr/local/google/c/cosarm/src/third_party/u-boot/files/tools/env/fw_env.c:34:0: /usr/local/google/c/cosarm/src/third_party/u-boot/files/tools/env/fw_env.h:11:20: fatal error: config.h: No such file or directory #include ^ compilation terminated. make[2]: *** [tools/env/fw_env.o] Error 1 make[1]: *** [env] Error 2 make: *** [sub-make] Error 2 So it seems to work fine without silentoldconfig. A normal 'defconfig' creates these files: (try-peter=0155f0: -- b/ index.html index.html.1 sandbox/ test/) u> ls -l `find b/sandbox/ -type f` -rw-r----- 1 sjg eng 5666 Jun 16 15:02 b/sandbox/.config -rw-r----- 1 sjg eng 674 Jun 16 15:02 b/sandbox/Makefile -rwxr-x--- 1 sjg eng 14005 Jun 16 15:02 b/sandbox/scripts/basic/fixdep -rw-r----- 1 sjg eng 4293 Jun 16 15:02 b/sandbox/scripts/basic/.fixdep.cmd -rwxr-x--- 1 sjg eng 115167 Jun 16 15:02 b/sandbox/scripts/kconfig/conf -rw-r----- 1 sjg eng 109 Jun 16 15:02 b/sandbox/scripts/kconfig/.conf.cmd -rw-r----- 1 sjg eng 22712 Jun 16 15:02 b/sandbox/scripts/kconfig/conf.o -rw-r----- 1 sjg eng 3873 Jun 16 15:02 b/sandbox/scripts/kconfig/.conf.o.cmd -rw-r----- 1 sjg eng 12255 Jun 16 15:02 b/sandbox/scripts/kconfig/zconf.hash.c -rw-r----- 1 sjg eng 58266 Jun 16 15:02 b/sandbox/scripts/kconfig/zconf.lex.c -rw-r----- 1 sjg eng 75191 Jun 16 15:02 b/sandbox/scripts/kconfig/zconf.tab.c -rw-r----- 1 sjg eng 155336 Jun 16 15:02 b/sandbox/scripts/kconfig/zconf.tab.o -rw-r----- 1 sjg eng 5213 Jun 16 15:02 b/sandbox/scripts/kconfig/.zconf.tab.o.cmd (try-peter=0155f0: -- b/ index.html index.html.1 sandbox/ test/) u> But with silentoldconfig we get a lot more: make O=b/sandbox silentoldconfig make[1]: Entering directory `/usr/local/google/c/cosarm/src/third_party/u-boot/files/b/sandbox' GEN ./Makefile scripts/kconfig/conf --silentoldconfig Kconfig make[1]: Leaving directory `/usr/local/google/c/cosarm/src/third_party/u-boot/files/b/sandbox' (try-peter=0155f0: -- b/ index.html index.html.1 sandbox/ test/) u> ls -l `find b/sandbox/ -type f` -rw-r----- 1 sjg eng 5666 Jun 16 15:02 b/sandbox/.config -rw-r----- 1 sjg eng 1960 Jun 16 15:02 b/sandbox/include/config/auto.conf -rw-r----- 1 sjg eng 18928 Jun 16 15:02 b/sandbox/include/config/auto.conf.cmd -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/bootstage.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/bootstage/report.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/bootstage/stash/addr.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/bootstage/stash/size.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/bootstage/user/count.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cc/optimize/for/size.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cmd/bootm.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cmd/crc32.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cmd/cros/ec.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cmd/dm.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cmd/exportenv.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cmd/go.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cmd/importenv.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cmd/net.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cmd/pmic.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cmd/regulator.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cmd/sound.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cros/ec.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cros/ec/keyb.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/cros/ec/sandbox.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/default/device/tree.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/device/remove.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/eth.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/gpio.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/i2c.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/pci.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/pmic.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/pmic/sandbox.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/regulator.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/regulator/sandbox.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/rtc.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/seq/alias.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/serial.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/spi/flash.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/spi.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/stdio.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/usb.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/dm/warn.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/errno/str.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/eth/sandbox.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/eth/sandbox/raw.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/expert.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/fit.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/fit/signature.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/fit/verbose.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/have/generic/board.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/localversion/auto.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/localversion.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/netdevices.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/net.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/of/control.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/of/hostfile.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/pci.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/pci/sandbox.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/regex.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/rsa.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/rsa/software/exp.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sandbox/gpio/count.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sandbox/gpio.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sandbox.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sandbox/serial.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sandbox/spi.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sound.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sound/sandbox.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/spi/flash/sandbox.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/support/of/control.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sys/arch.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sys/board.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sys/config/name.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sys/extra/options.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sys/generic/board.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sys/hz.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sys/i2c/sandbox.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sys/malloc/clear/on/init.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sys/malloc/f.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sys/malloc/f/len.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/sys/vsnprintf.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/tpm/tis/sandbox.h -rw-r----- 1 sjg eng 84 Jun 16 15:02 b/sandbox/include/config/tristate.conf -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/unit/test.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/usb/arch/has/hcd.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/usb/emul.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/usb.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/usb/storage.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/ut/dm.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/ut/env.h -rw-r----- 1 sjg eng 0 Jun 16 15:02 b/sandbox/include/config/ut/time.h -rw-r----- 1 sjg eng 2673 Jun 16 15:02 b/sandbox/include/generated/autoconf.h -rw-r----- 1 sjg eng 674 Jun 16 15:02 b/sandbox/Makefile -rwxr-x--- 1 sjg eng 14005 Jun 16 15:02 b/sandbox/scripts/basic/fixdep -rw-r----- 1 sjg eng 4293 Jun 16 15:02 b/sandbox/scripts/basic/.fixdep.cmd -rwxr-x--- 1 sjg eng 115167 Jun 16 15:02 b/sandbox/scripts/kconfig/conf -rw-r----- 1 sjg eng 109 Jun 16 15:02 b/sandbox/scripts/kconfig/.conf.cmd -rw-r----- 1 sjg eng 22712 Jun 16 15:02 b/sandbox/scripts/kconfig/conf.o -rw-r----- 1 sjg eng 3873 Jun 16 15:02 b/sandbox/scripts/kconfig/.conf.o.cmd -rw-r----- 1 sjg eng 12255 Jun 16 15:02 b/sandbox/scripts/kconfig/zconf.hash.c -rw-r----- 1 sjg eng 58266 Jun 16 15:02 b/sandbox/scripts/kconfig/zconf.lex.c -rw-r----- 1 sjg eng 75191 Jun 16 15:02 b/sandbox/scripts/kconfig/zconf.tab.c -rw-r----- 1 sjg eng 155336 Jun 16 15:02 b/sandbox/scripts/kconfig/zconf.tab.o -rw-r----- 1 sjg eng 5213 Jun 16 15:02 b/sandbox/scripts/kconfig/.zconf.tab.o.cmd Regards, Simon