On Tue, Feb 27, 2007 at 04:45:23PM +1100, Peter Jeremy wrote: > I recently did a 'make index' on my amd64 system, after which 'portsdb -u' > complained: > /var/db/ports/INDEX-6:6529:lightning-xpi-_2: _2: Not in due form: > '<version>[_<revision>][,<epoch>]'. > > Looking at deskutils/lightning-xpi/Makefile, it specifies: > ONLY_FOR_ARCHS= i386 sparc64 > and only sets ARCH_PORTVERSION on those architectures. > > Taken individually, it seems reasonable that: > 1) 'portsdb -u' would require valid port names in the INDEX > 2) ARCH_PORTVERSION is only defined on architectures where the port can > be built > 3) The INDEX file is cross-architecture and so 'make index' ignores > ONLY_FOR_ARCHS > > Unfortunately, taken all together, things break. > > The underlying problem is that lightning-xpi has different versions on > i386 and sparc64 - which renders a common INDEX file impossible.
There are actually a number of these problems, it's actually not always possible to uniformize because sometimes a port will build a different upstream version of the software (e.g. ezm3 on amd64). > My temporary work-around was to define ARCH_PORTVERSION anyway so portsdb > is happy. A real fix would be nice. Yes, since the INDEX will still include ports that are excluded by ONLY_FOR_ARCHS it needs to at least return a dummy value in this case. Kris
pgpCyM9SU2Qvj.pgp
Description: PGP signature