
"Reece Dunn" wrote:
What is really needed is a project-generation toolset so you could do something like:
bjam release debug msvc-project-7.1 bjam release eclipse-3.0 # release only project files
And you end up with the requested project/solution files. I will have a go at writing such a toolset.
There are such tools out there, my employer have some internal tools doing similat things. TrollTech has a tool called QMake. You can however also find excelent "properly lisenced" tools for Boost. Check out the Make Project Creator (MPC) tool used in ACE/TAO ($ACE_ROOT/MPC/...). This tool is a set of perl scripts which in my mind does an excelent job against MSVC and GnuMake which I have tested. According to the documentation it supports many other build tools. Its imput is basically a simple declaration file like: // -*- MPC -*- // Advanced_ch_3.mpc,v 1.4 2004/06/20 19:50:31 ossama Exp project(*client) : taoexe, portableserver { requires += exceptions corba_messaging source_files { client.cpp } } project(*server) : taoexe, portableserver { requires += exceptions source_files { server.cpp } } These files has to be generated by Boost.Build (bjam), then MPC or similar can be invoked to create the target build/project/solution environment. MPC uses the input file like the one above, in addition to this there are a lot of rules that are applied based on task, target, etc. which is part of the tool or customilization of it. See attached USAGE file for some more info. If added dependency on perl is a problem, then at a minimum I suggest using MPC as a way to get a head start of what needs to be added to bjam. It would make bjam a lot more interesting :o) By the way, in my opinion - the most interesting usage of such a tool is not to build Boost, but to get users up and running on using and modifying example code. Good Luck... Bjørn