svn commit: r230622 - head

Rafal Jaworowski raj at semihalf.com
Tue Jan 31 13:20:50 UTC 2012


On 2012-01-30, at 22:56, Dimitry Andric wrote:

> On 2012-01-30 21:48, Ian Lepore wrote:
>> On Mon, 2012-01-30 at 21:08 +0100, Dimitry Andric wrote:
>>> On 2012-01-30 20:27, Rafal Jaworowski wrote:
>>> ...
>>>>>   Fix this by setting PATH to ${BPATH}:${PATH} in stage 2.3, so the
>>>>>   bootstrap tools directories are searched before the regular ones.
>>>> 
>>>> Is this supposed to work for cross building as well? I'm still encountering problems on a 7.3 host build:
>>>> 
>>>> 1. Cross world builds fine
>>>> make -j 8 buildworld TARGET_ARCH=arm
>>>> 
>>>> 2. Kernel fails w/ the aicasm
>>>> make buildkernel TARGET_ARCH=arm KERNCONF=SHEEVAPLUG
>>>> [...]
>>>> cc -O2 -pipe -nostdinc -I/usr/include -I. -I/home/raj/work/svn/base/head/sys/dev/aic7xxx/aicasm -std=gnu99  -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wno-pointer-sign -c aicasm_scan.c
>>>> cc1: warnings being treated as errors
>>>> /home/raj/work/svn/base/head/sys/dev/aic7xxx/aicasm/aicasm_scan.l:837: warning: function declaration isn't a prototype
>>> 
>>> Can you please try doing "make buildenv TARGET_ARCH=arm", then run
>>> "which lex" and "which yacc"?
>> 
>> Shouldn't lex and yacc be listed in the Makefile.inc1 bootstrap-tools
>> target for this to be fully effective?  It looks like neither is in
>> RELENG_7 and lex is only conditionally listed in RELENG_8.
> 
> It is, for head at least (but I think I will MFC this change, if it
> turns out to work correctly).  Look in Makefile.inc1, around line 1030:
> 
> .if ${BOOTSTRAPPING} < 900006
> _lex=		usr.bin/lex
> _yacc=		usr.bin/yacc
> .endif
> 
> I have assumed Rafal is building a head checkout on 7.3 release.  Since
> BOOTSTRAPPING will most likely be 703000, the lex and yacc targets are
> built during the bootstrap-tools stage.
> 
> That said, I still don't understand why the generated aicasm_scan.c file
> is still defining the input() function.  Rafal, just to be sure, can you
> please paste the file that was generated during your buildkernel?

Problem identified: the auto-gen'd aicasm files would not get updated in the preexisting kernel OBJ subdir. After wiping out the OBJ sub dir entirely make buildkernel works fine.

Do you know why would the generated aicasm* files not get a refresh in the kernel OBJ dir?

Rafal



More information about the svn-src-head mailing list