Subject: Re: MAKE_PROGRAM and tools.mk
To: NetBSD Packages Technical Discussion List <tech-pkg@NetBSD.ORG>
From: Julien T. Letessier <mezis@users.sourceforge.net>
List: tech-pkg
Date: 08/28/2003 15:04:20
This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
--------------enig0E2F3CC51A4B2841E627D47D
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
Greg A. Woods wrote:
> Hmmm.... but it seems only rarely would such tools be all required
> together, at least on NetBSD (and of course linux, but maybe more often
> on the likes of Solaris and other pkgsrc target platforms).
That's why tools.mk only links the tools required by USE_GNU_TOOLS in
${TOOLS_DIR}. Besides, the pkgsrc versions of the tools will only be
pulled in if the OS doesn't have them.
> I don't have any huge objection to using all the GNU tools together to
> build stuff that needs to use one of more of them for whatever reason
> (other than the fact that generally they run slower and occupy a heck of
> a lot more VM :-), though I think it's more elegant to be explicit about
> which special tools are needed to build somethign (and on which host
> platforms). It also seems that documenting exactly what tools are
> needed, and why, and where, seems to be prudent for pkgsrc.
That's the idea -- originally tools.mk was written by Grant in response
to pkg/17776, which addressed the issue of Solaris' 'grep' not beeing
good enough.
IMO a proper use of tools.mk is the following:
.include "../../mk/tools.mk"
.if ${OPSYS} == "SunOS"
# Sun's "sed" cant' handle enough command-line arguments
USE_GNU_TOOLS+= sed
.endif
Does this seem prudent enough?
> Besides, if you've got to change all occurances of USE_GMAKE into
> USE_GNU_TOOLS+=make then you've only wasted everyone's time and energy
> for zero gain. Just leave USE_GMAKE alone and hide the magic to
> implement it in the one place it's necessary.
Well, it'd be easy enough to search-and-replace instances of USE_GMAKE
throughout pkgsrc. Leaving it alone and hiding the magic away is
cleaner, but perhaps we should add some flavor of
WARNING: USE_GMAKE is deprecated. Use tools.mk instead, see Package.txt
for details.
when a package says USE_GMAKE?
> Thanks very much for the explanation!
No problem. I didn't want you to think this shiny new wheel part of
pkgsrc was junk :)
Cheerio,
--
Julien T. Letessier
Solarpack Project
http://solarpack.sourceforge.net
() ascii ribbon campaign - against html mail & vCards
/\ - against microsoft attachments
Key fingerprint = F1A3 C564 09FE 07A6 0327 7474 0F9F 5594 F657 9673
--------------enig0E2F3CC51A4B2841E627D47D
Content-Type: application/pgp-signature
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iEYEARECAAYFAj9N/dwACgkQD59VlPZXlnM3MACgmJKsiKHuAHgHlR0WHkyKC+BJ
pyEAn0BxMvTtxyTFByuyIOgfljUHNW7q
=Fs6d
-----END PGP SIGNATURE-----
--------------enig0E2F3CC51A4B2841E627D47D--