Boost logo

Boost-Build :

From: David Abrahams (dave_at_[hidden])
Date: 2005-04-28 08:53:38


Vladimir Prus <ghost_at_[hidden]> writes:

> On Thursday 28 April 2005 16:45, David Abrahams wrote:
>> David Abrahams <dave_at_[hidden]> writes:
>> > Ambiguity and lack of comments make this needlessly unhelpful.
>>
>> And what could this possibly mean?
>>
>>
>> rule init-mac ( version : root : includes ? : libraries ? )
>> {
>> ...
>> alias python
>>
>> : <include>$(includes)
>>
>> ;
>>
>> alias python
>>
>> : <os>MACOSXX <toolset>darwin
>> :
>> : <framework>$(PYTHON_FRAMEWORK)
>>
>> ;
>> }
>
> I suppose this part is unfinished and what I meant is:
>
> alias python_for_extensions
> : : :
> : <include>$(includes)
>
> ;
>
> alias python
>
> : <os>MACOSXX <toolset>darwin
> :
> : <framework>$(PYTHON_FRAMEWORK)
> ;

You do something similar in the NT case, so that probably needs to be
fixed too. I checked in something that got things partially
"working," but it's such a mess that I have no clue really what's
supposed to be happening here. Also, the current testing/Jamfile.v2
doesn't take into account the py-unit-test template from the v1
Jamfile, resulting in, e.g.:

call "C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin\vcvars32.bat" > nul
cl /Zm800 -nologo -TP /Z7 /Od /Ob0 /EHsc /GR /MDd /Zc:forScope /Zc:wchar_t @"..\..\..\bin.v2\libs\python\test\select_from_python_test.test\msvc-7.1\debug\type_id_cpp.rsp" -c -Fo"..\..\..\bin.v2\libs\python\test\select_from_python_test.test\msvc-7.1\debug\type_id.obj"

type_id.cpp
..\..\..\libs\python\src\converter\type_id.cpp(121) : error C2491: 'boost::python::operator`<<'' : definition of dllimport function not allowed
..\..\..\libs\python\src\converter\type_id.cpp(128) : error C2491: 'boost::python::detail::operator`<<'' : definition of dllimport function not allowed

> At least on Linux, as I understand, extensions should include Python
> headers but don't link to Python interpreter.

Sort of. Extension .so's will pick the interpreters symbols out of
the executable itself.

> So, the python_extension rule will add
> /python//python_for_extensions to the passed sources.

And what is the python alias supposed to do, then?

-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com
 

Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk