I am trying to implement conditional includes
of sources/lib's depending on the tool set i.e
Take the following jamfile snippet
....
# common libs
lib pthread ;
# On HPUX we need to add standard libs.
lib std_v2 ;
lib stream ;
lib Csup ;
lib unwind ;
lib m ;
alias std_libs : pthread : <toolset>gcc ;
alias std_libs : pthread : <toolset>vacpp ;
alias std_libs : pthread std_v2 stream Csup unwind m : <toolset>acc ;
python-extension ecf_ext : [ glob src/*.cpp ]
/theCore//core
/site-config//boost_system
/site-config//boost_thread
/site-config//boost_serialization
/site-config//boost_filesystem
/site-config//boost_program_options
/site-config//boost_datetime
std_libs
: <variant>debug:<define>DEBUG
;
I am using alias std_libs to conditionally add additional libs on HPUX.
My site-config.jam on AIX look like:
......
project site-config
: requirements <include>$(BOOST_ROOT)
: requirements <threading>multi
;
using vacpp ;
using testing ;
Originally when I tested this on Linux, it worked a charm. However on
AIX and HPUX, I get messages like:
error: No best alternative for ./std_libs
next alternative: required properties: <threading>multi <toolset>gcc
not matched
next alternative: required properties: <threading>multi <toolset>vacpp
not matched
next alternative: required properties: <threading>multi <toolset>acc
not matched
...patience...
I don't understand why it cant make the correct choice, as it has all
the information, i.e for toolset and threading ?
Is there any better way of achieving conditional source/libs
dependent on toolset, apart from specifying on the command line ?
Any help on this matter appreciated.
Best regards,
Ta,
Avi