On Oct 31, 2008, at 1:30 PM, Beman Dawes wrote:



On Fri, Oct 31, 2008 at 12:14 PM, Mike Jackson <[EMAIL PROTECTED] > wrote: I am working through the "testing" part of the build system at this point and I have some questions about how the typical boost developer actually runs the "tests".

The tests are compiled using the build/source tree. Is it probable that boost developers actually install boost then try and compile tests against the installed boost?

Mostly I just work within an svn working copy, but once in a while do actually install boost and then build and run tests.

My usual approach is to develop using the VC++ IDE, and when whatever I'm working on runs for that single compiler, I run a script that invokes bjam for the six compilers I test against before an actual svn commit.

The IDE setup needs to be reasonably straightforward; I want to be able to specifiy a single Boost include directory, not one for each library.

My guess is that usage pattern is common, but there are probably other usage patterns too.

Actually CMake will generate the Visual Studio projects for you as part of its output. With the current modularization method you _will_ end up with an include path for each library that you compile against (at least in the build/source tree, installed is different). The visual studio solution that is generated will include _all_ the libraries including each of their tests. When it gets to a point that is workable on VS I invite you to give it a try and offer feedback as to how to improve the setup. The nice part is that the VS solution will have all the include paths set for you.




I am working through some dependency issues with compiling the actual tests. With boost modularized there are lots of missing includes. The current way I am going about adding them is probably NOT maintainable. I need to do it like the actual build system does it in that you have a "module.cmake" file that lists the dependencies. I need to work through that system and extend it for the testing cmake files.

Is there a way to (via hard links, perhaps) make it appear both (1) the headers are in a single location in the root directory as is done currently, and (2) also in an include directory within each library's directory in the lib directory hierarchy? How do Subversion and CMake do that sort of thing?

--Beman


CMake would probably just resolve the absolute path to the include directory. I don't know enough of the intricacies of hard links, SVN, Windows, Linux, OS X to be able to make a decision on that one way or another.

I have my own opinions on how I like projects setup (Header location, source location and all that) but I will code up what ever the majority of the boost community wants.

_________________________________________________________
Mike Jackson                  [EMAIL PROTECTED]
            www.bluequartz.net
_______________________________________________
Boost-cmake mailing list
Boost-cmake@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-cmake

Reply via email to