From: Andreas Huber (ahd6974-spamgroupstrap_at_[hidden])
Date: 2005-01-22 06:44:43


Jody Hagins wrote:
> I apologize in advance. I can not figure out how to get tests to
> build
> and run correctly from within subdirectories.

I'm definitely no bjam expert, but maybe I can help because I had
recently had to delve into building and testing myself.

> The --builddir option
> does not seem to be honored, and the Jamfiles are so "simple" that I
> haven't a clue as to what is happening.

One example of how to run tests would be the following (this assumes
MSVC7.1):
1. Make sure bjam is in your PATH
2. Open a command prompt
3. Change the current directory to libs\optional\test
4. Type the following

bjam "-sTOOLS=vc-7_1"

That's it (at least it works for me), this builds and runs all the
tests. No need to specify --builddir or other such options. If you want
to use other compilers and/or know more about bjam then these are good
places to start:

http://www.boost.org/more/getting_started.html
http://www.boost.org/tools/build/v1/build_system.htm

> To be honest, I have made several attempts at using bjam, but the only
> thing I can get to work is a toplevel make of everything. So, for all
> my own stuff, I have been using a mirror hierarchy and Makefiles
> (since
> that is what I have been using for the last 2 decades).
>
> However, I now want to get some code ready for submission (I have
> moved type_id and in the process have written a dynamic library
> wrapper as
> well). Unfortunately, I can not get my tests to integrate very well
> within boost. Thus, I humbly ask for any pointers and/or assistance
> in
> this regard.

How do you want to integrate? Do you want to run your tests as a part of
all the other tests? I wouldn't know how to do that but I think you
don't need to if you want to prepare a submission. IMO, all that's
necessary is that your tests and examples build/run from their
respective subdirectories.

HTH,

-- 
Andreas Huber
When replying by private email, please remove the words spam and trap
from the address shown in the header.