Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 16 Jun 2012 14:18:16 +0100
From:      Chris Rees <crees@FreeBSD.org>
To:        Matthew Seaman <matthew@freebsd.org>
Cc:        freebsd-ports <freebsd-ports@freebsd.org>
Subject:   Re: [CFT] UNIQUENAME patches
Message-ID:  <CADLo83-Pr5Qqa6oUFKmfbLuuDOCiDQoiLVvjPfvJ1fT8ou0h9g@mail.gmail.com>
In-Reply-To: <4FD8AFEC.6070605@FreeBSD.org>
References:  <4FD8AFEC.6070605@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 13 June 2012 16:21, Matthew Seaman <matthew@freebsd.org> wrote:
>
> Dear all,
>
> After recent mention in this list that UNIQUENAME is not actually a
> unique name for each port and how obviously non-sensical that is, plus
> how it causes various problems with OPTIONS processing and how having a
> proper UNIQUENAME will facilitate the new sub-package functionality
> currently on the drawing board.
>
> So, here are some patches:
>
> =A0 http://people.freebsd.org/~matthew/uniquename/uniquenames.diff
>
> There's also some data on the effect these have on OPTIONSFILE and
> UNIQUENAME values per port in
>
> =A0 http://people.freebsd.org/~matthew/uniquename/before/*
> =A0 http://people.freebsd.org/~matthew/uniquename/after/*
>
> Summarizing the changes:
>
> =A0 * UNIQUENAME is now unique per port, and is primarily derived from
> =A0 =A0 the port directory name.
>
> =A0 * Where the port directory name isn't unique (eg. accessibility/orca
> =A0 =A0 vs graphics/orca) there is a new UNIQUEPREFIX variable to
> =A0 =A0 distinguish the affected ports. =A0This is set for all the LANG
> =A0 =A0 specific category ports (arabic, chinese, french, german, hebrew,
> =A0 =A0 hungarian, japanese, korean, polish, portuguese, russian,
> =A0 =A0 ukranian, vietnamese) to the standard 2 character abbreviation fo=
r
> =A0 =A0 that LANG. =A0Otherwise it is only set for the specific ports whe=
re
> =A0 =A0 there is a directory name collision, usually based on the categor=
y
> =A0 =A0 names.
>
> =A0 * To avoid accidental non-uniqueness, UNIQUENAME should be treated
> =A0 =A0 as a read-only variable by port maintainers. =A0UNIQUEPREFIX shou=
ld
> =A0 =A0 only be set where necessary to resolve conflicts. =A0All instance=
s of
> =A0 =A0 ports setting UNIQUENAME have been removed: in the majority of
> =A0 =A0 cases, this turned out to be a no-op as the new UNIQUENAME turned
> =A0 =A0 out to be the same as what most ports were previously overriding
> =A0 =A0 it to.

That's great-- though rather than patching colliding-only ports, can't
we just add the category to it?

.for cat in ${CATEGORIES}
UNIQUEPREFIX?=3D ${cat}
.endfor

(copying the code from PKGCATEGORY; might be better off moving the
PKGCATEGORY code up higher and just using that).

Chris



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