LATEST_LINK unique or not?

Brandon D. Valentine brandon at
Tue Aug 24 12:35:18 PDT 2004

On Tue, Aug 24, 2004 at 01:35:39PM +0200, Oliver Eikemeier wrote:
> FWIIW, the real `fix' would be to require uniqueness of LATEST_LINK, 
> even when NO_LATEST_LINK is set. I think we have more than one use for a 
> unique package name without version number. Should I just make a patch 
> for the tree?
> As said above: I think a global unique LATEST_LINK is beneficial, and 
> since we already have something like this in CVSROOT-ports/modules, it 
> shouldn't be too difficult.

I think this is a great idea and appreciated Kris's crackdown on it
several months ago, even setting LATEST_LINK for my ports that don't
actually build packages, thus never using LATEST_LINK, with the
anticipation that LATEST_LINK is becoming a defacto unique identifier.
So let me cheer you on here if you're suggesting that portmgr officially
require all ports to have a globally unique name.

I've always been a little uncomfortable with the name LATEST_LINK for
the globally unique identifier of a package though.  There is a
UNIQUENAME in ports right now, used currently to define OPTIONSFILE, but
nowhere else.  LATEST_LINK is currently only used to define UNIQUENAME
and then in targets which deal directly with the creation of actual
package Latest links.  I understand why these two variables interrelate
in this way given how long LATEST_LINK has been around and how briefly
UNIQUENAME has been around.  If portmgr is going to formally encourage
unique package identifiers though, I'd like to ask that they also
consider reversing this relationship.  In other words, for ports which
don't set UNIQUENAME, but do set LATEST_LINK, i.e. every port currently
in the tree, set UNIQUENAME to LATEST_LINK.  Going forward discourage
porters from using LATEST_LINK in favor of UNIQUENAME, and for ports
which define UNIQUENAME but not LATEST_LINK, set LATEST_LINK to
UNIQUENAME.  This way, if in the future if you want to change the usage
of LATEST_LINK or the architecture of the package repository the
mechanisms used to create the PKGLATESTREPOSITORY are independent of the
unique identifier of the port, which should almost never change.  It
might even be desirable at some point to do an s/LATEST_LINK/UNIQUENAME/
on the ports Makefiles.  Aesthetic concern I know, and LATEST_LINK
certainly works, but you might make the purpose behind setting this
variable more obvious to porters if it was called UNIQUENAME and you
would detangle the PKGLATESTREPOSITORY magic from the UNIQUENAME, which
really shouldn't be tied up in it.

Brandon D. Valentine
brandon at                 
Pseudo-Random Googlism:  beer is a labor of love for little snoqualmie

More information about the freebsd-ports mailing list