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

From: Mark Millard <markmi_at_dsl-only.net>
Date: Thu, 3 Nov 2016 17:28:51 -0700
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= .

===
Mark Millard
markmi at dsl-only.net
Received on Thu Nov 03 2016 - 23:30:10 UTC

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