Boost logo

Boost-Build :

From: jfmeinel (boost_at_[hidden])
Date: 2004-08-27 09:28:42


First, thanks for the good build system. It is significantly better
than Makefiles for cross-platform and multiple variant builds. Plus,
the default is to do out of tree builds, which I really like. However,
now that I'm trying to do a little bit more than just compile source
code, I'm having some troubles.

I have a source file that is automatically generated from a script,
and I was wondering how to incorporate that into the build processes.
Basically, it is a version.cpp, that is generated from a "version"
file and a "gen_version.py" script.

As a Makefile it would be:

---------------
a: version.cpp program.cpp
$(CC) ...

.PHONY: version.cpp # This causes it to be rebuilt each time

version.cpp: version gen_version.py
./gen_version.py
---------------

Someone mentioned that for V2 it would look like

---------------
exe a : program.cpp version.cpp ;

make version.cpp : script.py version : $(__name__).update-version ;

actions update-version
{
$(>[1]) -o $(<) $(>[2])
}
----------------

However, they didn't know how to do it with V1, saying it probably
would require a new main target rule.

I would be okay with switching to V2, except last time I tried, V2
didn't have the bindings for python extensions, which is one of the
primary reasons for me to use bjam in the first place. Also, I have to
say I went through quite a bit to get my V1 scripts to work, I don't
really want to go through all that again.

Is it possible/simple to do this in Build V1? I realize it may be
things like this that made decide to write V2 in the first place.

Thanks,
John
=:->

 


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