portversion and distversion - why not?

Kirill Ponomarew krion at voodoo.bawue.com
Mon May 1 21:34:28 UTC 2006


On Tue, May 02, 2006 at 12:06:54AM +0400, Andrew Pantyukhin wrote:
> On 5/1/06, Kirill Ponomarew <krion at voodoo.bawue.com> wrote:
> >On Mon, May 01, 2006 at 11:32:55PM +0400, Andrew Pantyukhin wrote:
> >> Portlint says:
> >> FATAL: Makefile: either PORTVERSION or DISTVERSION must be specified, not
> >> both.
> >>
> >> Can somebody please explain why? It comes in handy
> >> to be able to define illegal distversion instead of redefining
> >> the whole distname. B.p.m was designed to handle two
> >> different variables in the first place. Should we really
> >> abstain from using this functionality?
> >
> >DISTVERSION is just conform conversion of PORTVERSION, I don't see a
> >reason to specify both.
> 
> grrr
> 
> To quote bpm:
> PORTVERSION   - Version of software.  Mandatory when no DISTVERSION is 
> given.
> DISTVERSION   - Vendor version of the distribution.
> 
> Now what's so hard to understand here? Portversion is nice
> and legal, it tries to increase from version to version, it
> follows a number of guidelines imposed by FreeBSD. Now
> distversion - is something from vendor's imagination. It can
> contain a multitude of not very nice characters, long strings,
> bad syntax; it can stay the same across releases (e.g. when
> subdir is changing), it can go back and forth...
> 
> Portversion is the version that users and the system see
> Distversion is actually _just_ for the purpose of downloading
> and building the software
> 
> Conversions between them (both directions are defined in
> bpm) are only to ease our live, they do not happen if both
> *versions are defined.
> 
> What's so fatal if we use both, huh?

Hehe, I can still remember why I committed it into bpm, DISTVERSION
was invented to remove the "bogus" port versions like '10Beta2-pre',
'20Alpha1', '30_1_20' etc, and convert them into more logical
numbers like '10.b2.p', '20.a1', '30.1.20' etc.  Therefore I don't
quite follow why to have, say, PORTVERSION=10Beta2-pre and
DISTVERSION=10Beta2-pre with each other.  DISTVERSION actually was
*not* intended for the purpose of downloading and building the
software.

-Kirill


More information about the freebsd-ports mailing list