Boost logo

Boost-Build :

Subject: Re: [Boost-build] Adding 3rd party dependencies in jam file
From: Christian Henning (chhenning_at_[hidden])
Date: 2010-03-20 13:37:50

Johan, thanks for your reply.

> Maybe you could start out by checking the jamfiles for Boost.Regex (which can optionally use ICU) and perhaps Boost.Iostreams (which can optionally use ZLIB). If you hit upon any problems with this approach, please come back to the list with your questions.

I have been starring at the jam files for both of your mentioned
projects. It's seems to me both projects take different ways in
achieving their goals. I can see a mixture of using environment
variables, shell script magic, and makefiles. It's still quite unclear
how this can help me out.

Here is what I have:

1. Header only library. No binary has to built to use the boost::gil extension
2. Only if a user wants to compile and run the unit tests he would
have to set up all libs needed, e.g. people running regressions.

Let's take apart what I need to have.

1. Setting up paths to all image format header files. There are two ways:
a. Have one environment variable for all headers. This would assume
all header file are in folder.
b. Have one environment variable for each set of header files. I would
prefer such way since it's more extensible when adding new formats
with my extension.

2. When linking the user needs to set up paths to all library files
needed by unit tests. Also, he needs to state the name of the
binaries, e.g. libjpeg.lib. Of course the system needs to deal with
static and dynamic libraries.

3. When running the unit tests all dynamically linked libs need to be

I suppose I could create a makefile that would define all variables
and passes them to the boost build system. At least here the user
doesn't need to mess with environment variables. But how this is done
is quite unclear to me?

I know my questions is rather broad but I have never dealt with these
problems before. Some guidance would be very helpful.


Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at