Re: buildkernel broken for META_MODE

From: Bryan Drewery <bdrewery_at_FreeBSD.org>
Date: Tue, 18 Apr 2017 12:41:33 -0700
On 4/10/2017 11:14 AM, Bryan Drewery wrote:
> On 4/7/2017 12:13 PM, Ngie Cooper (yaneurabeya) wrote:
>> Hi,
>> 	I ran into this error when trying to run a meta mode build (for the first time). It might be related to the recent assym* ordering changes.
>> Thanks!
>> -Ngie
>>
>> $ cat /etc/src-env.conf
>> WITH_AUTO_OBJ=  yes

Oh I missed this part^

>> WITH_META_MODE= yes
>> UPDATE_DEPENDFILE=      yes

By the way UPDATE_DEPENDFILE is not really a user variable and setting
it may break things.

>> $ pwd
>> /usr/src
>> $ svnversion
>> 316603M
>> $ svn st | grep -v \?
>> M       usr.bin/grep/tests/Makefile
>> $ env SRCCONF=/dev/null NO_FILEMON=1 script ~/bk.ts make buildkernel -j3
>> Script started on Fri Apr  7 11:52:38 2017
>> Command: time make buildkernel -j3
>> --- buildkernel ---
>> make[1]: "/usr/src/Makefile.inc1" line 146: SYSTEM_COMPILER: Determined that CC=cc matches the source tree.  Not bootstrapping a cross-compiler.
>> --- buildkernel ---
>> --------------------------------------------------------------
>>>>> Kernel build for GENERIC started on Fri Apr  7 11:52:39 PDT 2017
>> --------------------------------------------------------------
>> ===> GENERIC
>> mkdir -p /usr/obj/usr/src/sys
>> --------------------------------------------------------------
>>>>> stage 1: configuring the kernel
>> --------------------------------------------------------------
>> ...
>> Building /usr/obj/usr/obj/usr/src/sys/GENERIC/acpi_quirks.h

Aha /usr/obj/usr/obj.

That was in Renato's report as well.

The bug is WITH_AUTO_OBJ. I just confirmed that. A bunch of errors occur
when doing the first build and the opt_*.h files are not generated in
the "proper" place by config(8).

WITH_AUTO_OBJ is not really workable yet in buildworld/buildkernel. I
have patches that I will commit soon to add support for them (meaning to
work as it all does not but without a 'make obj' tree walk).


>> Building /usr/obj/usr/obj/usr/src/sys/GENERIC/feeder_eq_gen.h
>> Building /usr/obj/usr/obj/usr/src/sys/GENERIC/feeder_rate_gen.h
>> Building /usr/obj/usr/obj/usr/src/sys/GENERIC/snd_fxdiv_gen.h
>> Building /usr/obj/usr/obj/usr/src/sys/GENERIC/miidevs.h
>> Building /usr/obj/usr/obj/usr/src/sys/GENERIC/pccarddevs.h
>> Building /usr/obj/usr/obj/usr/src/sys/GENERIC/teken_state.h
>> Building /usr/obj/usr/obj/usr/src/sys/GENERIC/usbdevs.h
>> Building /usr/obj/usr/obj/usr/src/sys/GENERIC/vnode_if.h
>> Building /usr/obj/usr/obj/usr/src/sys/GENERIC/ia32_genassym.o
>> --- ia32_genassym.o ---
>> <built-in>:1:10: fatal error: 'opt_global.h' file not found
>> #include "opt_global.h"
>>          ^~~~~~~~~~~~~~
>> 1 error generated.
>> *** [ia32_genassym.o] Error code 1
>>
>> make[2]: stopped in /usr/obj/usr/src/sys/GENERIC
>> .ERROR_TARGET='ia32_genassym.o'
>> .ERROR_META_FILE='/usr/obj/usr/obj/usr/src/sys/GENERIC/ia32_genassym.o.meta'
>>
> 
> It was previously reported here too
> https://lists.freebsd.org/pipermail/freebsd-current/2016-June/061946.html.
>  It's a race.  I had forgotten about it but will look at it again.
> 

-- 
Regards,
Bryan Drewery


Received on Tue Apr 18 2017 - 17:42:00 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:11 UTC