Subject: Re: Consistency in mk/defaults/mk.conf
To: Roland Illig <rillig@NetBSD.org>
From: Hubert Feyrer <firstname.lastname@example.org>
Date: 11/15/2005 21:16:39
On Tue, 15 Nov 2005, Roland Illig wrote:
>>> $ pkglint print/acroread7
>>> ERROR: print/acroread7/Makefile:54: "ACROREAD_FONTPATH" may only
>>> be set by the user, not the package.
>> That sounds useful!
> How ironically do you mean that? The exclamation mark confuses me. :)
Not at all - I think it's a good thing.
>>> Does anyone see any objections against changing type 1 definitions to type
>>> 2 definitions where that makes sense? Which ones need further discussion?
>> Yes: You're moving the default*value* from the pkg's Makefile to that named
>> file, basically spilling pkg data all over pkgsrc. I think that's not a
>> good idea.
> There are three places where this default value is mentioned.
> - The commented out assigment.
> - The block comment below.
> - The package Makefile.
> Two of these are likely to be redundant, so why can't we remove them?
> Otherwise we need to check from time to time that they still mention the same
You're right. But two of these three places are "only" comments.
I'm not sure what the right thing here is...
> Therefore I suggest something like this in print/acroread7/Makefile:
> # Additional directories to search for fonts
> # (see mk/defaults/mk.conf for the default value of this variable)
> BUILD_DEFS+= ACROREAD_FONTPATH
What are our options here?
a) move the (real) default to mk/defaults/mk.conf as you said above,
which spreads pkg data over those places
b) have only comments in mk/defaults/mk.conf, and keep all the real data
in the pkg Makefile?
I think while I agree that outdated comments are bad, spreading the pkg
data over several places sounds less appealing. To me.
Maybe others have an opinion.
>> How about simply looking for some assignment to the variable?
> I've done exactly this. Or did you mean to ignore assignments that are
> commented out? That wouldn't work, as for example #SMART_MESSAGES=yes is
> commented out, so packages redefining it could not be detected.