mirror of
https://github.com/reactos/CMake.git
synced 2024-12-04 09:54:15 +00:00
96afb12087
This converts the CMake license to a pure 3-clause OSI-approved BSD License. We drop the previous license clause requiring modified versions to be plainly marked. We also update the CMake copyright to cover the full development time range.
88 lines
3.1 KiB
C++
88 lines
3.1 KiB
C++
/*============================================================================
|
|
CMake - Cross Platform Makefile Generator
|
|
Copyright 2000-2009 Kitware, Inc., Insight Software Consortium
|
|
|
|
Distributed under the OSI-approved BSD License (the "License");
|
|
see accompanying file Copyright.txt for details.
|
|
|
|
This software is distributed WITHOUT ANY WARRANTY; without even the
|
|
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
See the License for more information.
|
|
============================================================================*/
|
|
#ifndef cmSetTestsPropertiesCommand_h
|
|
#define cmSetTestsPropertiesCommand_h
|
|
|
|
#include "cmCommand.h"
|
|
|
|
class cmSetTestsPropertiesCommand : public cmCommand
|
|
{
|
|
public:
|
|
virtual cmCommand* Clone()
|
|
{
|
|
return new cmSetTestsPropertiesCommand;
|
|
}
|
|
|
|
/**
|
|
* This is called when the command is first encountered in
|
|
* the input file.
|
|
*/
|
|
virtual bool InitialPass(std::vector<std::string> const& args,
|
|
cmExecutionStatus &status);
|
|
|
|
/**
|
|
* The name of the command as specified in CMakeList.txt.
|
|
*/
|
|
virtual const char* GetName() { return "set_tests_properties";}
|
|
|
|
/**
|
|
* Succinct documentation.
|
|
*/
|
|
virtual const char* GetTerseDocumentation()
|
|
{
|
|
return "Set a property of the tests.";
|
|
}
|
|
|
|
/**
|
|
* Longer documentation.
|
|
*/
|
|
virtual const char* GetFullDocumentation()
|
|
{
|
|
return
|
|
" set_tests_properties(test1 [test2...] PROPERTIES prop1 value1 prop2"
|
|
" value2)\n"
|
|
"Set a property for the tests. If the property is not found, CMake "
|
|
"will report an error. The properties include:\n"
|
|
"WILL_FAIL: If set to true, this will invert the pass/fail flag of the"
|
|
" test.\n"
|
|
"PASS_REGULAR_EXPRESSION: If set, the test output will be checked "
|
|
"against the specified regular expressions and at least one of the"
|
|
" regular "
|
|
"expressions has to match, otherwise the test will fail.\n"
|
|
" Example: PASS_REGULAR_EXPRESSION \"TestPassed;All ok\"\n"
|
|
"FAIL_REGULAR_EXPRESSION: If set, if the output will match to one of "
|
|
"specified regular expressions, the test will fail.\n"
|
|
" Example: PASS_REGULAR_EXPRESSION \"[^a-z]Error;ERROR;Failed\"\n"
|
|
"Both PASS_REGULAR_EXPRESSION and FAIL_REGULAR_EXPRESSION expect a "
|
|
"list of regular expressions.\n"
|
|
"PROCESSORS: Denotes the number of processors that this test will "
|
|
"require. This is typically used for MPI tests, and should be used in "
|
|
"conjunction with the ctest_test PARALLEL_LEVEL option.\n"
|
|
"COST: Set this to a floating point value. Tests in a test set will be "
|
|
"run in descending order of cost.\n"
|
|
"RUN_SERIAL: If set to true, this test will not run in parallel with "
|
|
"any other tests. This should be used in conjunction with "
|
|
"the ctest_test PARALLEL_LEVEL option.\n";
|
|
}
|
|
|
|
cmTypeMacro(cmSetTestsPropertiesCommand, cmCommand);
|
|
|
|
static bool SetOneTest(const char *tname,
|
|
std::vector<std::string> &propertyPairs,
|
|
cmMakefile *mf,
|
|
std::string &errors);
|
|
};
|
|
|
|
|
|
|
|
#endif
|