Paul Goyette <paul%whooppee.com@localhost> writes: > On Wed, 17 Feb 2016, Greg Troxel wrote: >> Paul Goyette <paul%whooppee.com@localhost> writes: >> >>> Setting MKCTF=no in the /etc/mk.conf file seems to have no effect, but >>> if I instead set it in the environment using "env MKCTF=no make" then it >>> works, and bsd.prog.mk no longer attempts to run ${CTFCONVERT}. >> >> This seems like a bug. The value of mk.conf shouldn't affect the >> behavior of the running system, only systems that are built. Arguably >> bsd.prog.mk should check if ctfconvert exists, instead of some variable, >> or something like that. > > mk.conf gets pulled in for all builds that use share/mk as far as I > can tell. It even gets pulled in for one of my own little programs > that uses bsd.prog.mk. > > So far, tradcpp is the only package (out of more than 400 that I am > building) where MKCTF makes any difference. Everything else (so far) > works just fine, without setting MKCTF at all. > > What I found unusual was that, for tradcpp, setting MKCTF in mk.conf > didn't have effect; for that one program, it had to be set in the > process's environment. So this is only about packages that reach in /usr/share/mk. I wonder if that whole situation is a bug; packages are supposed to be isolated and reproducible. We're really running into the issue where pkgsrc treats the base system as a single thing, and has bandaids to account for variations. I wonder if the right fix is to have packages that want mk files to get them from a package, not the base system, sort of buildinky.
Attachment:
signature.asc
Description: PGP signature