Setting up MacPorts libsolv branch and Testing libsolv search

Lawrence Velázquez larryv at macports.org
Tue Jun 23 14:04:23 PDT 2015


On Jun 23, 2015, at 5:02 PM, Ryan Schmidt <ryandesign at macports.org> wrote:

> On Jun 23, 2015, at 3:24 AM, Clemens Lang wrote:
> 
>> On 23 Jun, 2015, at 01:07, Joshua Root wrote:
>> 
>>> How are you planning on handling variants? It seems to me that the only
>>> tractable approach would be to evaluate the package universe lazily,
>>> running mportopen to get data from portfiles only when it is required.
>> 
>> I've been in contact with the developer of libsolv about that and my
>> current approach would be to represent every variant separately in the
>> package universe, e.g. a port A with the variants var1, var2, var3 with a
>> conflict between var2 and var3 and an additional dependency on C in var1
>> would become
>> 
>> portA+0 (i.e. without variants)
>> Provides: portA
>> 
>> portA+var1
>> Provides: portA
>> Requires: portC
>> 
>> portA+var2
>> Provides: portA
>> Conflicts portA+var3
>> 
>> portA+var3
>> Provides: portA
>> Conflicts: portA+var2
> 
> What about portA+var1+var2 and portA+var1+var3? Exponential explosion of combinations?

Next paragraph:

> Then, after solving the dependency problem, post-processing would fold the
> results back into a single port name with multiple variant selections.

vq


More information about the macports-dev mailing list