On Feb 4, 2011, at 16:41, Michael Dickens wrote:

> If you do "otool -L /opt/local/lib/libboost_mpi_python-mt.dylib | grep 
> Python", does it return anything?  

No, you miss the point.  You can't do that in the global context in the 
Portfile. It doesn't matter what it returns on my system, you can't do it there 
because it needs to work even if  /opt/local/lib/libboost_mpi_python-mt.dylib 
isn't present (such as when you want to install it fresh, or you are generating 
the PortIndex, ...

> Or, are you saying that you don't want this sort of hackery in a Portfile?  

Right.  It doesn't work unless someone actually has that file in place.

> I can always revert to +pythonXY variants, but then the user -must- make sure 
> to use the same XY as that used by Boost.  

Yep.  Some won't.  You can put in a verification to check that, but it needs to 
be done during an appropriate build phase, not in the global context.

> I still think I'd want to do the check to figure out which version of Python 
> is used & warn the user or something.
> 
> Anyway, I'm open to suggestions from the greater MacPorts community here. - 
> MLD
> 
> On Feb 4, 2011, at 12:54 PM, Jeremy Huddleston wrote:
>> You can't do that boost_python_lib hackery.
>> 
>> Failed to parse file graphics/vigra/Portfile: otool: can't open file: 
>> /opt/local/lib/libboost_mpi_python-mt.dylib
>> /opt/local/lib/libboost_python-mt.dylib (No such file or directory)
>> 
>> On Jan 26, 2011, at 16:45, [email protected] wrote:
>> 
>>> Revision: 75495
>>> +set python_version ""
>>> +# figure out if Boost::Python exists,
>>> +# and if so what Python version
>>> +set boost_python_lib [exec find /opt/local/lib \
>>> +                              -name "lib*boost*python*mt*dylib" \
>>> +                              -type f -maxdepth 1 | \
>>> +                           awk "{ print \$1 }"]
>>> +if {${boost_python_lib} != ""} {
>>> +    set python_version [exec otool -L ${boost_python_lib} | \
>>> +                            grep Python | awk "{ print \$1 }" | \
>>> +                            sed -e "s@.*Versions/\\(.*\\)/Python@\\1@"]
>>> +}
> 

_______________________________________________
macports-dev mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macports-dev

Reply via email to