From mboxrd@z Thu Jan 1 00:00:00 1970 From: Simon Glass Date: Wed, 17 Jun 2015 09:06:44 -0600 Subject: [U-Boot] [PATCH] If CONFIG_SANDBOX isn't defined the build fails in fw_env.c In-Reply-To: References: <1434397251-24805-1-git-send-email-pbrobinson@gmail.com> 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 Hi Peter, On 17 June 2015 at 05:29, Masahiro Yamada wrote: > Hi. > > > 2015-06-17 3:24 GMT+09:00 Simon Glass : >> 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. >> >> CONFIG_SANDBOX is defined in arch/Kconfig. It ends up in your build >> directory in these files. >> >> b/sandbox/include/config/auto.conf:CONFIG_SANDBOX=y >> b/sandbox/include/generated/autoconf.h:#define CONFIG_SANDBOX 1 >> >> autoconf.h is the one that matters. I wonder why this is not included >> in your case? >> >> I notice that fw_env.h starts like this: >> >> /* Pull in the current config to define the default environment */ >> #ifndef __ASSEMBLY__ >> #define __ASSEMBLY__ /* get only #defines from config.h */ >> #include >> #undef __ASSEMBLY__ >> #else >> #include >> #endif >> #include >> >> Should the inclusion of autoconf.h go above the inclusion of config.h, perhaps? > > > Right. > > autoconf.h should be included earlier than any other headers. > Besides, linux/kconfig.h is preferred to generated/autoconf.h > > > I posted a patch for this problem last year. See > http://patchwork.ozlabs.org/patch/417192/ > > I do not know why it was dismissed long. > > > And then, another patch was posted and picked up. > > http://patchwork.ozlabs.org/patch/461411/ > > But, it was not good... With Masahiro's comments are you able to update your patch? Regards, Simon