troy d. straszheim wrote:
I was trying to fix asio link tests and hit a couple of snags. I put in a workaround (which I bet breaks more than it fixes) and would like some feedback from kitware. The problems i was trying to fix:
We generally build all test executables and libraries during the normal build step. Then it all compiles/links at build time and has full access to targets and flags. Everything except compile-fail and link-fail tests should eventually be combined into test driver executables for each library.
1. The test is to ensure that linking against another built library succeeds. Typically cmake handles things internally with absolute paths (not with -L). How do I send the full path of e.g. boost_system, which is hidden from me, to a ctest process (which in turn invokes a cmake process, whch invokes a make process)?
The whole idea of --build-and-test is to build a project outside the tree as if it is a user project. A user project won't know the paths unless it does a find_package(Boost). Ideally boost-cmake should provide a boost package using the method documented here: http://www.cmake.org/Wiki/CMake_2.6_Notes It is possible to provide a package directly from the build tree as well as in an install tree. Then the build-and-test step can point Boost_DIR directly at its build tree and everything will work.
2. The link tests didn't obey CMAKE_CXX_COMPILER, etc. Compile tests probably still don't...
CTest's --build-and-test mode has a '--build-options' argument. Pass the compiler through it: ... -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} ... -Brad _______________________________________________ Boost-cmake mailing list Boost-cmake@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-cmake