Subject: Re: CVS commit: pkgsrc/pkgtools/pkglint/files
To: Roland Illig <rillig@NetBSD.org>
From: Alistair Crooks <agc@pkgsrc.org>
List: pkgsrc-changes
Date: 11/10/2005 23:35:59
On Thu, Nov 10, 2005 at 09:38:14AM +0100, Roland Illig wrote:
> Alistair Crooks wrote:
> >On Thu, Nov 10, 2005 at 07:46:24AM +0000, Roland Illig wrote:
> >
> >>Module Name:	pkgsrc
> >>Committed By:	rillig
> >>Date:		Thu Nov 10 07:46:24 UTC 2005
> >>
> >>Modified Files:
> >>	pkgsrc/pkgtools/pkglint/files: pkglint.pl
> >>
> >>Log Message:
> >>Added (currently disabled) code to scan for variable names in
> >>pkgsrc/mk/defaults/mk.conf. All those variable names are then checked as
> >>being of type Userdefined. As that file is currently too unstructured
> >>and contains too much garbage, this check cannot yet be enabled.
> >
> >
> >
> >There is no garbage in pkgsrc/mk/defaults/mk.conf - you must be thinking
> >of something else.
> 
> Roland Illig wrote:
> > http://mail-index.netbsd.org/tech-pkg/2005/11/10/0001.html
> <quote>
> Because of the similarity of the filename, I have always assumed that 
> all variables in mk/defaults/mk.conf are default values for things that 
> can be set by the pkgsrc user in mk.conf. But this is wrong. This file 
> has become a placeholder for all kinds of variables, lacking proper 
> comments explaining what each variable is meant for.
> </quote>

Quoting an assertion that you made in some earlier email does not
prove anything.

There is no garbage in that file.

> That's what I mean. In mk.conf, there's just a listing of variables. 
> Many of them lack the information about whether they are intended to be 
> set by the user or a package.

I believe that you are incorrect. Each variable in that file, which
is being subsumed by the options framework in any case, should
explicitly state its default value, if any (its default value may
be undefined).

Whilst it's very tempting to be iconoclastic and believe that the
people who did things the previous way are doddery old idiotic fools,
there are occasionally reasons for doing things in those ways.  The
doddery old fools amongst us are only too happy to answer why things
were done that way - all you have to do is ask.

> As there had been confusion in the not-so-far past about similar 
> variables like PKGREVISION (which should only be set in a package's 
> Makefile, not in any other file), PKGBASE and PKGNAME, I want to 
> separate the default definitions of user-settable variables from the 
> package-settable ones. That's all it is about.

Indeed, and your work with pkglint has been very useful, and is much
appreciated.  It still does not mean that pkgsrc/mk/defaults/mk.conf
contains garbage.

Regards,
Alistair