Use of env SRC_ENV_CONF=. . . for buildworld does not override/avoid use of /etc/src.conf : Intentional?
Mark Millard
markmi at dsl-only.net
Fri Nov 4 00:30:10 UTC 2016
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
More information about the freebsd-current
mailing list