Hi,
I have a bunch of tests that are created with something like this:
ADD_TEST(mytest "executable_dir/${CTEST_CONFIGURATION_TYPE}/mytest.exe")
Running these with "ctest -C Debug" or "ctest -C Release" works fine.
However I want to create a ctest script to build and test my project and
it looks roughly like this:
SET(CTEST_SITE "mysite")
SET(CTEST_BUILD_NAME "mybuild")
SET(CTEST_SOURCE_DIRECTORY "src_dir")
SET(CTEST_BINARY_DIRECTORY "bin_dir")
SET(CTEST_CMAKE_GENERATOR "Visual Studio 7 .NET 2003")
SET(CTEST_BUILD_CONFIGURATION ${CTEST_CONFIGURATION_TYPE})
MESSAGE("config type = ${CTEST_CONFIGURATION_TYPE}")
CTEST_START(Nightly)
CTEST_UPDATE(SOURCE "${CTEST_SOURCE_DIRECTORY}")
CTEST_CONFIGURE(BUILD "${CTEST_BINARY_DIRECTORY}")
CTEST_BUILD(BUILD "${CTEST_BINARY_DIRECTORY}")
CTEST_TEST(BUILD "${CTEST_BINARY_DIRECTORY}")
If I run this with "ctest -C Debug -S myscript.ctest" the
CTEST_CONFIGURATION_TYPE variable is empty and the the Release config is
built instead (presumably the default) but when the tests run they look
for the executable in the Debug directory. Alternatively, if I set both
CTEST_BUILD_CONFIGURATION and CTEST_CONFIGURATION_TYPE to Debug in the
script and run as "ctest -S myscript.ctest", the build works correctly,
but the test fails because CTEST_CONFIGURATION_TYPE is empty when the
test is run.
The only way I can get this to work as expected is to set
CTEST_BUILD_CONFIGURATION to Debug in the script and also specify -C
Debug on the command line. Is there a way around this or am I doing
something wrong?
Thanks,
Mike
_______________________________________________
CMake mailing list
CMake@cmake.org
http://www.cmake.org/mailman/listinfo/cmake