conflict between "portA +python33" and "portB +python33"
Mojca Miklavec
mojca at macports.org
Mon Apr 7 13:23:03 PDT 2014
On Mon, Apr 7, 2014 at 3:52 PM, Mojca Miklavec wrote:
> On Mon, Apr 7, 2014 at 3:44 PM, Jeremy Lavergne wrote:
>> The active_variants PortGroup can be used this way:
>> active_variants $depspec $required $forbidden
>>
>> That forbidden section is likely what you’re after, inside a variant block.
All good in theory.
In practice the port uses the cmake PortGroup which defines
"pre-configure" step and it seems that it overwrites the one from
active_variants, so adding
require_active_variants portB "" +python33
doesn't have any effect at all.
So all I can do is the following:
if {[variant_isset python33]} {
pre-fetch {
if {[active_variants portB python33]} {
ui_error "We have a problem ;)"
return -code error "Port B is installed with +python33,
that's not compatible."
}
}
}
Mojca
>> On Apr 7, 2014, at 9:24, Mojca Miklavec wrote:
>>
>>> What is the most reasonable way to declare a conflict between "portA
>>> +pythonXY" and "portB +pythonXY"? The ports themeselves don't conflict
>>> and different python variants don't conflict either (portA +python33
>>> and portB +python34 works OK).
>>>
>>> The problem is that both ports install files with the same name to
>>> $prefix/Library/Frameworks/Python.framework/Versions/X.Y/lib/pythonX.Y/site-packages
>>> when the same python variant is selected for both ports.
More information about the macports-dev
mailing list