Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 12 Mar 2002 11:39:40 +0900 (JST)
From:      Masao Uebayashi <uebayasi@soum.co.jp>
To:        sobomax@FreeBSD.ORG
Cc:        knu@iDaemons.org, nobutaka@nobutaka.com, cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG, ports@FreeBSD.ORG
Subject:   Re: cvs commit: ports/graphics/autotrace Makefile ports/graphics/graphviz Makefile ports/graphics/libafterimage Makefile ports/graphics/librsvg Makefile ports/graphics/libwmf Makefile ports/graphics/sdl_ttf Makefile ports/print/ft2demos Makefile ...
Message-ID:  <20020312.113940.125120884.uebayasi@soum.co.jp>
In-Reply-To: <1015886047.1763.26.camel@notebook>
References:  <3C8D0B5D.3186A73D@FreeBSD.org> <86r8mqajfe.wl@archon.local.idaemons.org> <1015886047.1763.26.camel@notebook>

next in thread | previous in thread | raw e-mail | index | archive | help
> As I said earlier, what we really need is the feature that will track
> ABI-incompatible upgrades and when such upgrade is performed bump
> PORTREVISION of all dependent ports automagically. Actually I've already
> described prototype of such feature and instead of spending out time
> arguing whether or not we need to bump PORTREVISION on 10 out of tens or
> even hundreds ports that use freetype (waste of time IMO) in the long
> run we are better off to implement such feature and forget about it.

Good point.  If you seriously consider that making binary packages
first-class in your packaging system, (run-time) compatibility really
matters.  (Libh documentation doesn't refer to this at all, though.)

> In a nutshell idea is to assign each port with something called
> PKGABIVERSION (>=0, non-decreasing), which will need to be increased
> each time when some ABI-incompatible change is committed (e.g. shlib
> version bump) and make PKGREVISION of each port be an arithmetical sum
> of PKGABIVERSION's of all its dependencies and its own PORTREVISION.
> Actual implementation I'm leaving as an exercise for the reader, because
> I do not use portupgrade by myself and therefore have no interest in
> doing it on my own. For me `pkg_delete -r freetype2\* ; cd
> /usr/ports/x11/gnome ; make reinstall' is absolutely sufficient.

I think that versioning scheme need not be reinvented; SONAME
versioning scheme may already do this in a better way.  About SONAME,
please refer to ABIcheck documents

  http://abicheck.sourceforge.net/

which impressed me much about a week ago.

I wonder that it's not so hard to maintain a few *VERSION variables
manually if you don't feel hard to maintain PORTREVISION manually.  So
what you need else is a policy and a good testing framework.  Just an
idea...

Masao

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020312.113940.125120884.uebayasi>