All of the below said: Per the replies, I'm just going to copy what is in the 
PlasmaClient Portfile, tweak it to work with vigra, & hope for the best. - MLD

On Feb 4, 2011, at 11:14 PM, Ryan Schmidt wrote:
> Last I checked, all ports that required boost with python support were 
> checking for the python26 variant, so that's what I used in my port as well 
> (PlasmaClient). I suggest you copy that block from there so all ports doing 
> this continue to handle it identically. Ideally we would update to using the 
> python27 variant, but it should be done for all such ports at the same time.

This method of requiring Boost (with Boost::Python) and PythonXY is fragile and 
can easily be messed up by the user without him/her realizing / knowing it -- 
the same can be said for various ports that use +x11 and +quartz (and, 
probably, others).  For example, I could do "sudo port install boost +python27" 
and then "sudo port install PlasmaClient" and the Portfile would work -- 
building or running might not work, but the Portfile won't know any better.  
And, doing so will only confuse the end-user and probably even the owners of 
the various ports.

Although the detection code I added isn't perfect, it can easily be corrected 
to work & also isn't as fragile -- it detects the correct PythonXY version to 
link to automatically.  Its fragility is if the user installs a boost w/o 
Boost::Python -after- vigra is installed -- but that's also an issue for 
PlasmaClient (and, I assume the other ports that use Boost::Python).

As always, it seems to me that there must be a better way to keep track of 
these dependencies -- but also that I have no idea how the internals of 'port' 
work & hence it won't be me to try to figure out a better implementation.
_______________________________________________
macports-dev mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macports-dev

Reply via email to