Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-11-02 02:31:46

Hi Jim.
> I've been looking for a build system to use with a couple of projects where
> I'm taking over maintenance and development. Currently both are seriously
> lacking in a build system - there's a few inadequate makefiles and manual
> intervention is necessary. A nice opportunity to investigate alternatives.
> I'm trying out Boost.Build v2, m10. I'd appreciate a pointer on a specific
> problem.
> A couple of subprojects have database access programs written in Informix
> ESQL/C. This is C with extensions, compiled using an Informix utility that
> mimics the C compiler command line - it actually preprocesses the source to
> plain C, compiles it with the platform C compiler, and at link time adds in
> various libraries depending on the C compiler options. I have extracted the
> list of libraries added and tried to replicate the utility behaviour by
> copying the qt example, but I'm not happy with this - the library set
> changes with platforms (and I need to support AIX and Linux, minimum) and
> I'm having to reverse engineer existing third-party tool internal
> behaviour. So, how can I change the name of the C/C++ compiler command -
> i.e. I want to change the compiler command from, say, gcc to c4gl, for
> compiling and linking for any subproject using the Informix stuff - but
> while keeping the underlying toolset behavior?

The simplest approach that comes to mind is:

using gcc : 3.3 ; # use regular gcc
using gcc : c4gl : /usr/bin/c4gl_compiler ;

Now, a project which uses Informix would use:

project : requirements <toolset>gcc-c4gl ;

and all files there will be compiled with your tool.

The syntax of toolset initialisation is documented at

and the "project" syntax at:



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