On 2013-05-02 13:55, Steven Hartland wrote:
From: "Dimitry Andric" <dimi...@andric.com>
On 2013-05-02 11:54, Steven Hartland wrote:
From: "Dimitry Andric" <dimi...@andric.com>
...
I think what I did was the following:-
1. make buildkernel KERNCONF=MYCONF -j10 # failed due to aicasm

And this is what I cannot reproduce.  Works just fine, either with or without 
-j.

Have just confirmed this reproduces the issue with a recent head source on 
8.3-RELEASE
machine.

Note this is the other way around; the original poster was talking about
building "an older 9.0 src on a machine running HEAD".


1. rm -rf /usr/obj
2. make buildkernel KERNCONF=MYCONF -j10 # Fails with:-
cc1: warnings being treated as errors
aicasm_gram.c:1539: warning: no previous prototype for 'yyparse'

Yes, this is because r243906 removed the prototype, since newer versions
of yacc generate the prototype for yyparse themselves.

Here, lex and yacc should really be (also) built as part of the kernel's
bootstrap tools.  Currently, they are only part of the bootstrap tools
for buildworld, which explains the events below.


3. make buildworld

So here the correct versions of lex and yacc are built...


4. make buildkernel KERNCONF=MYCONF -j10 # Still fails with:-
cc1: warnings being treated as errors
aicasm_gram.c:1539: warning: no previous prototype for 'yyparse'

However, since the .c file is newer than the .y file, it does not get
regenerated...


Fix is:
1. rm -rf /usr/obj/usr/src/sys/MYCONF
2. make buildkernel KERNCONF=MYCONF -j10 # Now works

And with this, you have forced regeneration of the aicasm_gram.c file,
so now it builds correctly.

E.g., I think you might get away with just rm'ing all the generated
aicasm*.c files.
_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"

Reply via email to