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