
On Jan 3, 2009, at 3:45 PM, Sebastian Redl wrote:
Despite the good and generous help, I'm afraid I'm running out of time to learn how to use bjam for testing compile time failures. Here's where I'm at: error: Could not find parent for project at '.' error: Did not find Jamfile.jam or Jamroot.jam in any parent directory.
I'm afraid I don't know what a "parent for project" is. And while I could put an empty Jamfile.jam in a parent directory, I doubt that would help much. Simply put, Jam thinks of projects as hierarchical. There's the root
Howard Hinnant wrote: project, which is basically "everything that concerns the application" and there's sub-projects, such as individual libraries, or individual tools in a tool suite. In Boost, the root project is Boost itself, while every library is a sub-project. Sub-projects can be further divided, e.g. into an executable and a test suite. The root project is controlled by a Jamroot file, while sub-projects use Jamfile files. If Jam finds a Jamfile, it walks the directory hierarchy upwards, collecting parent Jamfiles, until it hits the Jamroot - or the hierarchy root and errors out. The parent projects can introduce additional names, variables, requirements and dependencies.
So basically, Jam is complaining because you used a Jamfile when your little project is already the root of all things.
Anyway, I'll try to boostify your project and post back.
That is very kind of you. I've added some tests here: http://home.roadrunner.com/~hinnant/unique_ptr03.html I've written a simple bash shell script to handle must-fail tests. The testsuite isn't complete, but it is a decent start. It is fairly self-explanatory if you have a bash shell. Just: $ ./test pass (assuming permissions translate in the zip). One may have to: $ chmod 755 test first. Oh, and you'll have to change: INCLUDE="-I/Users/hinnant/Development/boost-dev/boost-trunk -I.." to point to your boost installation. -Howard