diff options
author | Brad King <brad.king@kitware.com> | 2009-08-11 13:54:56 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2009-08-11 13:54:56 (GMT) |
commit | d2e1f2b4d6d87c171464b5dc41b00b609c90bf26 (patch) | |
tree | d0108fae5ed9b014939c0f7baee8a6ad4d6daa42 /Source/cmAddTestCommand.h | |
parent | 463b3f03bd848a345ab535d31be31d395fe66b13 (diff) | |
download | CMake-d2e1f2b4d6d87c171464b5dc41b00b609c90bf26.zip CMake-d2e1f2b4d6d87c171464b5dc41b00b609c90bf26.tar.gz CMake-d2e1f2b4d6d87c171464b5dc41b00b609c90bf26.tar.bz2 |
Introduce "generator expressions" to add_test()
This introduces a new syntax called "generator expressions" to the test
COMMAND option of the add_test(NAME) command mode. These expressions
have a syntax like $<TARGET_FILE:mytarget> and are evaluated during
build system generation. This syntax allows per-configuration target
output files to be referenced in test commands and arguments.
Diffstat (limited to 'Source/cmAddTestCommand.h')
-rw-r--r-- | Source/cmAddTestCommand.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/Source/cmAddTestCommand.h b/Source/cmAddTestCommand.h index a971fd7..0b9ca3c 100644 --- a/Source/cmAddTestCommand.h +++ b/Source/cmAddTestCommand.h @@ -79,6 +79,29 @@ public: "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." + "\n" + "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:\n" + " $<CONFIGURATION> = configuration name\n" + " $<TARGET_FILE:tgt> = main file (.exe, .so.1.2, .a)\n" + " $<TARGET_LINKER_FILE:tgt> = file used to link (.a, .lib, .so)\n" + " $<TARGET_SONAME_FILE:tgt> = file with soname (.so.3)\n" + "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:\n" + " $<TARGET_FILE_DIR:tgt>/$<TARGET_FILE_NAME:tgt>\n" + " $<TARGET_LINKER_FILE_DIR:tgt>/$<TARGET_LINKER_FILE_NAME:tgt>\n" + " $<TARGET_SONAME_FILE_DIR:tgt>/$<TARGET_SONAME_FILE_NAME:tgt>\n" + "Example usage:\n" + " add_test(NAME mytest\n" + " COMMAND testDriver --config $<CONFIGURATION>\n" + " --exe $<TARGET_FILE:myexe>)\n" + "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\"." ; } |