Variant name darwin_9-1 is not valid

Ryan Schmidt ryandesign at macports.org
Fri Aug 21 07:36:05 PDT 2009


On Aug 21, 2009, at 01:40, Joshua Root wrote:

> On 2009-8-21 08:18, Ryan Schmidt wrote:
>
>>> From: noreply at macports.org
>>> Date: August 20, 2009 14:45:19 CDT
>>> To: ryandesign at macports.org,
>>> Subject: [55880] akonadi Lint Report
>>>
>>> Change: http://trac.macports.org/changeset/55880
>>> Portfile: akonadi
>>>
>>> Error: Variant name darwin_9-1 is not valid; use [A-Za-z0-9_]+ only
>>
>> akonadi uses the kde4 portgroup.
>> The kde4 portgroup defines a platform darwin 9 variant.
>> So does akonadi.
>> They do not play well with one another.
>> Apparently one of them turns into the invalidly-named darwin_9-1.
>> Do we think this is a base bug / missing feature?
>
> Already fixed in 1.8. Should probably just use variant_isset in the
> portgroup for the time being.
>
> <http://trac.macports.org/changeset/52540>


> On Aug 21, 2009, at 01:48, jmr at macports.org wrote:
>
>> Revision: 55908
>>           http://trac.macports.org/changeset/55908
>> Author:   jmr at macports.org
>> Date:     2009-08-20 23:47:57 -0700 (Thu, 20 Aug 2009)
>> Log Message:
>> -----------
>> kde4 portgroup: avoid declaring platform variants, which can't be  
>> multiply defined in MacPorts 1.7

Can they be multiply defined in 1.8? All that r52540 changed was that  
a duplicate platform variant will use an underscore to create a new  
variant name instead of a dash. So that removes the lint error I  
received, but would it actually make both platform darwin 9 variants  
in the same port function now?

In 1.7.1 if I do "port info" for this port:


PortSystem 1.0

name multiple
version 1.0

platform darwin 8 {
	ui_msg "I am darwin 8"
}

platform darwin 8 {
	ui_msg "I am also darwin 8"
}


then I see:


I am darwin 8
I am darwin 8
multiple @1.0
Variants:    darwin_8, universal


I never see "I am also darwin 8".

And, really, I wouldn't expect that to work. If it still doesn't in  
trunk, then perhaps we just need to document the fact that portgroups  
may not define platform variants.

Curiously, non-platform variants behave differently. I would have  
expected them to be the same but when I "port info +foo" this:


PortSystem 1.0

name multiple
version 1.0

variant foo {
	ui_msg "I am foo"
}

variant foo {
	ui_msg "I am also foo"
}


I get:


I am also foo
multiple @1.0
Variants:    +foo, universal




More information about the macports-dev mailing list