Boost logo

Boost-Build :

From: Matthew Herrmann (matthew.herrmann_at_[hidden])
Date: 2006-05-02 20:24:49


Hi All,

I'd like to set up a facility to reference different versions of libraries in
a concise manner.

Example:

exe myapp
   : [ glob myapp/*.cpp ]
   : utilities-1-0-0
   ;

lib utilities-1-0-0
   : : : : <include>/usr/local/include/utilities-1-0-0
           <linkflags>-L/usr/local/lib/utilities-1-0-0
           <linkflags>-lutilities-1-0-0
           <define>REQUIRED_USAGE_FLAG
   ;

lib utilities-1-0-2
   : : : : <include>/usr/local/include/utilities-1-0-2
           <linkflags>-L/usr/local/lib/utilities-1-0-2
           <linkflags>-lutilities-1-0-2
           <define>REQUIRED_USAGE_FLAG
   ;
...

While I could get the above approach to work, my Jamroot will quickly
accumulate every released version of the utilities library. I'd like to be
able to pass a version parameter to the library when referring to it, which
it could interpret as a string.

I'm not sure what syntax I could use (hence the question), but hopefully this
air code explains my intention:

exe myapp
   : [ glob myapp/*.cpp ]
   : utilities<version>1-0-0
   ;

lib utilities
   : : : : <include>/usr/local/include/utilities-$(version)
           <linkflags>-L/usr/local/lib/utilities-$(version)
           <linkflags>-lutilities-$(version)
   ;

Is there such a means available? Or a "right way?" to achieve this that I've
missed?

Many thanks in advance,

-- 
Matthew Herrmann
matthew.herrmann_at_[hidden]
Vice President, Software Architecture
Zomojo Pty Ltd

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