Thanks for the tip. I'll see how I can adapt this to my scenario.<br><br>Petr<br><br><div class="gmail_quote">On Tue, Oct 2, 2012 at 12:49 PM, David Cole <span dir="ltr"><<a href="mailto:david.cole@kitware.com" target="_blank">david.cole@kitware.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">CMake has code like this using the TEST_INCLUDE_FILE directory property to deal with this situation:<div><br></div><div>
<br></div><div># In the main CMakeLists.txt:</div><div><div># Set up test-time configuration.</div><div>
set_directory_properties(PROPERTIES</div><div> TEST_INCLUDE_FILE "${CMake_BINARY_DIR}/Tests/EnforceConfig.cmake")</div><div><br></div><div><br></div><div># In Tests/CMakeLists.txt:</div><div></div><div><div># Choose a default configuration for CTest tests.</div>
<div>set(CTestTest_CONFIG Debug)</div><div>if(NOT CMAKE_CONFIGURATION_TYPES AND CMAKE_BUILD_TYPE)</div><div> set(CTestTest_CONFIG ${CMAKE_BUILD_TYPE})</div><div>endif()</div><div><br></div><div>configure_file(${CMake_SOURCE_DIR}/Tests/<a href="http://EnforceConfig.cmake.in" target="_blank">EnforceConfig.cmake.in</a></div>
<div> ${CMake_BINARY_DIR}/Tests/EnforceConfig.cmake @ONLY)</div></div><div><br></div><div><br></div><div>$ cat Tests/<a href="http://EnforceConfig.cmake.in" target="_blank">EnforceConfig.cmake.in</a></div><div>
# Choose a configuration with which to drive CTest tests.</div>
<div>if(CTEST_CONFIGURATION_TYPE)</div><div> set(CTestTest_CONFIG "${CTEST_CONFIGURATION_TYPE}")</div><div>else()</div><div> set(CTestTest_CONFIG "@CTestTest_CONFIG@")</div><div>endif()</div><div><br>
</div><div># Choose a configuration that was built if none is given.</div><div>if(NOT CTEST_CONFIGURATION_TYPE)</div><div> set(CTEST_CMD "@CMAKE_CTEST_COMMAND@@CMAKE_EXECUTABLE_SUFFIX@")</div><div> get_filename_component(CTEST_DIR "${CTEST_CMD}" PATH)</div>
<div> get_filename_component(CTEST_EXE "${CTEST_CMD}" NAME)</div><div> foreach(cfg Release Debug MinSizeRel RelWithDebInfo)</div><div> if(NOT CTEST_CONFIGURATION_TYPE)</div><div> if(EXISTS "${CTEST_DIR}/${cfg}/${CTEST_EXE}")</div>
<div> set(CTEST_CONFIGURATION_TYPE ${cfg})</div><div> endif()</div><div> endif()</div><div> endforeach()</div><div> if(NOT CTEST_CONFIGURATION_TYPE)</div><div> set(CTEST_CONFIGURATION_TYPE NoConfig)</div>
<div> endif()</div><div> message("Guessing configuration ${CTEST_CONFIGURATION_TYPE}")</div><div>endif()</div><div><br></div><div>@TEST_HOME_ENV_CODE@</div><div><br></div><div><br></div><div>Adapt accordingly for your own project.</div>
<div><br></div><div><br></div><div>HTH,</div><div>David</div><div><br></div><br><div class="gmail_quote"><div><div class="h5">On Tue, Oct 2, 2012 at 2:28 AM, Petr Kmoch <span dir="ltr"><<a href="mailto:petr.kmoch@gmail.com" target="_blank">petr.kmoch@gmail.com</a>></span> wrote:<br>
</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5">Anyone? Any suggestions would be appreciated.<span><font color="#888888"><br><br>Petr</font></span><div>
<div><br><br><div class="gmail_quote">On Mon, Sep 24, 2012 at 5:16 PM, Petr Kmoch <span dir="ltr"><<a href="mailto:petr.kmoch@gmail.com" target="_blank">petr.kmoch@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi all,<br><br>I seem to have a problem when using add_test(... CONFIGURATIONS ...) and running 'make test' on Linux. It's skipping the test.<br>
<br>The CMakeLists.txt contains:<br>#...<br>enable_testing()<br>add_test(NAME test1 CONFIGURATIONS db COMMAND ...)<br>
#...<br><br>On Windows, I invoke CMake like this:<br>cmake -DCMAKE_CONFIGURATION_TYPES:STRING=rel\;inhouse\;db -G "Visual Studio 8 2005"<br><br>All works fine and the test is run when I "build" RUN_TESTS in 'db' configuration.<br>
<br>When I invoke CMake on Linux, like this:<br>cmake -DCMAKE_CONFIGURATION_TYPES:STRING=rel\;inhouse\;db -DCMAKE_BUILD_TYPE:STRING=db -G "Unix Makefiles"<br><br>Then after 'make test', the test is not run. I tried manually injecting a 'message(">${CTEST_CONFIGURATION_TYPE}<")' into the generated CTestTestfile.cmake file, but the output was '><' (i.e. CTEST_CONFIGURATION_TYPE is not set). Am I doing something wrong?<br>
<br>Thanks in advance for your help.<span><font color="#888888"><br><br>Petr<br>
</font></span></blockquote></div><br>
</div></div><br></div></div><span class="HOEnZb"><font color="#888888">--<br>
<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Please keep messages on-topic and check the CMake FAQ at: <a href="http://www.cmake.org/Wiki/CMake_FAQ" target="_blank">http://www.cmake.org/Wiki/CMake_FAQ</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.cmake.org/mailman/listinfo/cmake" target="_blank">http://www.cmake.org/mailman/listinfo/cmake</a><br></font></span></blockquote></div><br></div>
</blockquote></div><br>