|
Boost-Build : |
From: Christopher Huang-Leaver (zeonglow_at_[hidden])
Date: 2008-01-02 11:48:27
I have been playing with Boost Build on simple projects for a while, I
though I would have a go at porting an existing complex project which use a
very strange Makefile to use boost build instead.
This is the problem, the project uses pre built dynamic libraries which are
arranged like this:
/$(src_root_path)/$(library_name)/include/
with the binaries arranged like this
/$(bin_root_path)/$(library_name)/$(lib_version)/
This runs on a UNIX platform and the paths of the shared objects are
hardcoded into the executable ( <dll-paths> true ? )
At the moment I have got it working on one example by using this as a rule
lib monkey_biz : : <name>monkey_biz.6.5
<search>$(bin_root_path)/6.5/lib_debug
<include>$(src_root_path)/monkey_biz/src ;
(the debug and release versions of the libraries are in separate places too,
but I think I can handle that!)
and repeating for every library, and adding this as a target later on. Now
while this functions, it is ugly and I know (hope?!) boost build can do
better.
What I would like to do is have a list of (module_name, module_version) ,
pass each onto a function which than creates the target as above, so that
the jamfile itself can be clear and simple. Trouble is I'm not sure where
to start. Do I need to create a generator, or a class or something else.
Any help is appreciated.
Chris
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