On 5/18/2010 7:55 PM, ross hennessy wrote:
I'm then calling ADD_TEST as follows -

ADD_TEST(${TESTNAME} "${CMAKE_COMMAND}" -D
WORKING_DIR=\${CMAKE_CFG_INTDIR} -P
${CMAKE_CURRENT_BINARY_DIR}/${TESTNAME}.cmake)

I forgot to mention that with CMAKE_CFG_INTDIR I also tried removing
the \ which was escaping the $ so that CMAKE_CFG_INTDIR was evaluated
at cmake time to $(OutDir), but then this didn't seem to get set by
VisualStudio when building the RUN_TESTS target either.


See the new COMMAND style call to add_test:

         add_test(NAME <name> [CONFIGURATIONS [Debug|Release|...]]
                  COMMAND <command> [arg1 [arg2 ...]])

If COMMAND specifies an executable target (created by add_executable)
       it will automatically be replaced by the location of the executable
       created at build time.  If a CONFIGURATIONS option is given then the
       test will be executed only when testing under one of the named
       configurations.

       Arguments after COMMAND may use "generator expressions" with the
       syntax "$<...>".  These expressions are evaluted during build system
       generation and produce information specific to each generated build
       configuration.  Valid expressions are:

         $<CONFIGURATION>          = configuration name
         $<TARGET_FILE:tgt>        = main file (.exe, .so.1.2, .a)
         $<TARGET_LINKER_FILE:tgt> = file used to link (.a, .lib, .so)
         $<TARGET_SONAME_FILE:tgt> = file with soname (.so.3)

where "tgt" is the name of a target. Target file expressions produce a full path, but _DIR and _NAME versions can produce the directory and
       file name components:

         $<TARGET_FILE_DIR:tgt>/$<TARGET_FILE_NAME:tgt>
         $<TARGET_LINKER_FILE_DIR:tgt>/$<TARGET_LINKER_FILE_NAME:tgt>
         $<TARGET_SONAME_FILE_DIR:tgt>/$<TARGET_SONAME_FILE_NAME:tgt>

       Example usage:

         add_test(NAME mytest
                  COMMAND testDriver --config $<CONFIGURATION>
                                     --exe $<TARGET_FILE:myexe>)

       This creates a test "mytest" whose command runs a testDriver tool
       passing the configuration name and the full path to the executable
       file produced by target "myexe".
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to