|
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