Boost logo

Boost :

From: Patrick Frants (patrick_at_[hidden])
Date: 2001-09-11 09:10:17


I have looked at JAM in the past, but did not really need it then. We are now going to port our products to multiple
platforms and I suspect that boost can handle both our directory structure and other requirements gracefully. The
problem is that I am not a JAM/boost pro. So maybe some of you guys can show me the right direction

The goals are:
1. Use as few jamfiles as possible (I suspect the directory structure should allow this)
2. No intermediate libraries, because all C++ static objects need to be initialized at startup
3. No need to write out dependencies at the lowest level (MinorProject to individual .cpp files)
4. Separate intermediate files from source tree with ALL_LOCATE_TARGET

We have this directory structure:

        Executable1 # depends on MajorProject2, MajorProject7 and Executable1MainFile.cpp
        Executable2 # depends on MajorProject6, MajorProject8 and Executable2MainFile.cpp

Executables depend on a number of MajorProjects and a specific ExecutablNMainFile.cpp. Each MajorProject can be
used by multiple Executables.

The separation of MajorProjects into MinorProjects is a logical separation only.

I was thinking of a kind of jamfile at the MajorProject level that is generic. It makes that pseudotarget MajorProjectN
automatically dependent on all the .cpp files in it's MinorProjects (*/*.cpp).

Also I would like to have a toplevel jamfile like:

subinclude Executable1 ;
subinclude Executable2 ;

And in the jamfile in the Executable1 directory:

DEPENDS Executable1 : Executable1MainFile.cpp MajorProject2 MajorProject7 ;

And in the jamfile in the Executable2 directory:

DEPENDS Executable2 : Executable2MainFile.cpp MajorProject6 MajorProject8 ;

Is this possible? If not, is there another way to reach the same goals?

Patrick Frants

Patrick Frants
Senior Software Engineer
Quintiq BV
Het Wielsem 10
5201 AG 's-Hertogenbosch
Phone: +31(0)736910739 
Fax: +31(0)736910754

Boost list run by bdawes at, gregod at, cpdaniel at, john at