Re: Use of env SRC_ENV_CONF=. . . for buildworld does not override/avoid use of /etc/src.conf : Intentional?

From: Renato Botelho <garga_at_FreeBSD.org>
Date: Fri, 4 Nov 2016 07:04:30 -0200
> On 3 Nov 2016, at 22:28, Mark Millard <markmi_at_dsl-only.net> wrote:
> 
> I just had a case of "odd" command text in a buildworld that was based on (in part) env SRC_ENV_CONF=. . .
> 
> env __MAKE_CONF=. . . does not get the kind of behavior reported below for /etc/src.conf .
> 
> Overall this means that even with an explicit env SRC_ENV_CONF=. . . one must separately prevent /etc/src.conf from contributing if the SRC_ENV_CONF file is intended to cover everything.
> 
> Looking in the log from a failure that resulted shows that .MAKE.MAKEFILES shows both the SRC_ENV_CONF expansion and also a /etc/src.conf as well (formatted to make the /etc/src.conf and such stand out: separate lines wiht whitespace before and after and with just one path on the line for such file paths):
> 
>> Script started on Thu Nov  3 16:37:26 2016
>> Command: env __MAKE_CONF=/root/src.configs/make.conf SRC_ENV_CONF=/root/src.configs/src.conf.powerpc64-xtoolchain.amd64-host WITH_META_MODE=yes MAKEOBJDIRPREFIX=/usr/obj/powerpc64vtsc_xtoolchain make -j 5 buildworld buildkernel
> . . .
>> .MAKE.MAKEFILES='/usr/src/share/mk/sys.mk /usr/src/share/mk/local.sys.env.mk /usr/src/share/mk/src.sys.env.mk
> 
>> /root/src.configs/src.conf.powerpc64-xtoolchain.amd64-host
> 
>> /usr/src/share/mk/bsd.mkopt.mk /usr/src/share/mk/bsd.suffixes.mk
> 
>> /root/src.configs/make.conf
> 
>> /usr/src/share/mk/local.sys.mk /usr/src/share/mk/src.sys.mk
> 
>> /etc/src.conf
> 
>> /usr/src/include/rpcsvc/Makefile /usr/src/share/mk/bsd.prog.mk /usr/src/share/mk/bsd.init.mk /usr/src/share/mk/bsd.opts.mk /usr/src/share/mk/bsd.cpu.mk /usr/src/share/mk/local.init.mk /usr/src/share/mk/src.init
>> .mk /usr/src/share/mk/bsd.own.mk /usr/src/share/mk/bsd.compiler.mk /usr/src/share/mk/bsd.compiler.mk /usr/src/share/mk/bsd.libnames.mk /usr/src/share/mk/src.libnames.mk /usr/src/share/mk/src.opts.mk /usr/src/share/mk/bsd.nls.mk /usr/src/share/mk/bsd.confs.mk /usr/src/share
>> /mk/bsd.files.mk /usr/src/share/mk/bsd.incs.mk /usr/src/share/mk/bsd.links.mk /usr/src/share/mk/bsd.man.mk /usr/src/share/mk/bsd.dep.mk /usr/src/share/mk/bsd.clang-analyze.mk /usr/src/share/mk/bsd.obj.mk /usr/src/share/mk/bsd.subdir.mk /usr/src/share/mk/bsd.sys.mk'
>> .PATH='. /usr/src/include/rpcsvc'
> 
> Note:
> 
>> # grep src.conf /root/src.configs/src.conf.powerpc64-xtoolchain.amd64-host
>> #
> 
> 
> The context I was under was:
> 
>> # uname -apKU
>> FreeBSD FreeBSDx64 12.0-CURRENT FreeBSD 12.0-CURRENT #2 r308247M: Thu Nov  3 04:05:55 PDT 2016     markmi_at_FreeBSDx64:/usr/obj/amd64_clang/amd64.amd64/usr/src/sys/GENERIC-NODBG  amd64 amd64 1200014 1200014
> 
> I'd just cloned and switched from a stable/11 context to head (12-CURRENT).
> 
> If this is intentional then I think the man src.conf references and such should be explicit about the /etc/make.conf vs. /etc/src.conf distinction for __MAKE_CONF= vs. SRC_ENV_CONF= .


There are 3 possible files and 3 possible variables to cover it. SRC_ENV_CONF is to /etc/src-env.conf and not to /etc/src.conf. Default values are:

__MAKE_CONF=/etc/make.conf
SRCCONF=/etc/src.conf
SRC_ENV_CONF=/etc/src-env.conf

According src.conf(5) there are few items that are supposed to be defined in /etc/src-env.conf instead of /etc/src.conf

--
Renato Botelho
Received on Fri Nov 04 2016 - 08:04:36 UTC

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