Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 8 Apr 2011 16:28:18 -0400
From:      Jung-uk Kim <jkim@FreeBSD.org>
To:        freebsd-java@freebsd.org
Cc:        John Baldwin <jhb@freebsd.org>
Subject:   Re: Version number of openjdk6 port
Message-ID:  <201104081628.25082.jkim@FreeBSD.org>
In-Reply-To: <4D9F667A.90302@FreeBSD.org>
References:  <4D9F1E05.4070900@FreeBSD.org> <201104081511.47184.jkim@FreeBSD.org> <4D9F667A.90302@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday 08 April 2011 03:48 pm, John Baldwin wrote:
> On 4/8/11 3:11 PM, Jung-uk Kim wrote:
> > On Friday 08 April 2011 10:39 am, John Baldwin wrote:
> >> Please consider using a better version number for the openjdk6
> >> port. Right now it uses a version number of 'b20_7' which due to
> >> the way package version works, is considered less than 0:
> >>
> >> % pkg_version -t 0 b20_7
> >>
> >>
> >> Why does this matter?  cfengine uses 'pkg_info -E pkg_name>0' to
> >> test if a package is installed.
> >
> > Then, I would say cfengine is broken. "0" in that version match
> > string is package dependent, not major, minor, or whatever.  For
> > example:
> >
> > %pkg_info -E 'avahi>0.6.20'
> > avahi-0.6.29
> > %pkg_info -E 'openjdk6>b0'
> > openjdk6-b22_4
> > %pkg_info -E 'mplayer>1.0.r0'
> > mplayer-1.0.r20110329
>
> Hmm, I can probably workaround this then using an explicit
> comparison rule (so it doesn't use >0).  It would be nice if we had
> an official way to match a package with "any version".  Perhaps
> "pkg_info -E 'pkg-*'" if we assume that package names can never
> have dashes in them (to avoid problems, with, say, 'foo-*' matching
> both foo-1.0 and foo-bar-1.0.).  Oh, we already have those types of
> packages:
>
> xorg-7.5            X.Org complete distribution metaport
> xorg-apps-7.5_1     X.org apps meta-port
>
> The problem is how can software generically say "is any version of
> the foo package installed".  It would seem we don't support that
> currently?

The key here is package origin, not the package name itself.

%pkg_info -qO java/openjdk6
openjdk6-b22_4
%pkg_info -qO x11/xorg-apps
xorg-apps-7.5.1

It is always safe to find its origin because there may be prefixes and 
postfixes.

%pkg_info -qoX ko-openoffice.org
editors/openoffice.org-3-devel

I think this would be the worse case in the ports tree:

%pkg_info -qo apr-ipv6-devrandom-gdbm-db42-1.4.2.1.3.10
devel/apr1

Jung-uk Kim



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