RFC: bsd.sites.mk - introduce some magic

Andrew Pantyukhin infofarmer at gmail.com
Wed Jul 26 13:19:04 UTC 2006


This patch introduces a very simple, but handy (imho) framework
into bsd.sites.mk:

http://people.freebsd.org/~sat/diffs/bsd.sites.macros.diff

1. (A tad) cleaner ports Makefiles:
Write MASTER_SITES=FOOBAR instead of
MASTER_SITES=${MASTER_SITE_FOOBAR} and get away
with it

2. Abbreviations
Write MASTER_SITES=SF and mean SOURCEFORGE

3. Default subdirs
With MASTER_SITES set to SF or SOURCEFORGE you
get MASTER_SITE_SUBDIR?=${PORTNAME:L} for free!

4. Multiple master_sites support
http://123/ SF http://1251/ CPAN http://789/ is handled ok.
Subdir is set to the first (non-group) default, if any.

6. Compatible
No processing is done at all unless "macros" are found. The
whole thing is wrapped in .if ${MASTER_SITES:N*/*}

7. Extensible
New abbreviations and default subdirs are a breeze to add

8. Order stays intact
"MASTER_SITES=http://123/ SF http://234/ CPAN" becomes
http://123/ <sf sites> http://234/ <cpan sites>

9. Site groups are supported
If you write SF:sf, you'll get all SF sites in "sf" site group


More information about the freebsd-ports mailing list