After much discussion with fellow porters, we changes the way
DISTFILES + MASTER_SITES work

the old way (DISTFILES = somefile:0 to match with MASTER_SITES0) still works
but the new way is to write

DISTFILES.sufx = somefile
which will match with MASTER_SITES.sufx

this works identically with SUPDISTFILES/PATCHFILES.

In order to work, this requires a recent make(1). bsd.port.mk will error
out with a decent error message in this case.


dpb(1) and sqlports are aware of the new method.

The idea was that MASTER_SITESn was getting cramped and hardcoded for
stuff like go, or github.

This will allow "arbitrary" allocation of names in order to use several
modules concurrently.

Basically, a port that uses several files from different locations will
no longer require people to provide a local mirror of some of the files
because the framework is inflexible.

As of now, I would say to not QUITE use it, but keep testing and checking
that things didn't break (I did a full bulk with the initial bsd.port.mk
change)

sqlports is slightly affected: since there are umpteen DISTFILES*
SUPDISTFILES* PATCHFILES* MASTER_SITES* variables, they no longer live
in the main ports view, but instead in the various _Distfiles, _fetchfiles
tables or the corresponding views (I've kept the main DISTFILES without a
sufx variables inside the main view... that's still 99% of the ports)


Eventually, if things work as planned, I hope to kill MASTER_SITES0-9
entirely.  The new way is actually less boilerplace code !

Reply via email to