cmCMakeMinimumRequired.h 1.26 KB
Newer Older
1
2
/* Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
   file Copyright.txt or https://cmake.org/licensing for details.  */
3
4
5
#ifndef cmCMakeMinimumRequired_h
#define cmCMakeMinimumRequired_h

6
7
8
9
#include <cmConfigure.h>
#include <string>
#include <vector>

10
11
#include "cmCommand.h"

12
13
class cmExecutionStatus;

14
/** \class cmCMakeMinimumRequired
15
 * \brief cmake_minimum_required command
16
 *
17
 * cmCMakeMinimumRequired implements the cmake_minimum_required CMake command
18
19
20
21
22
23
24
 */
class cmCMakeMinimumRequired : public cmCommand
{
public:
  /**
   * This is a virtual constructor for the command.
   */
25
  cmCommand* Clone() CM_OVERRIDE { return new cmCMakeMinimumRequired; }
26
27
28
29
30

  /**
   * This is called when the command is first encountered in
   * the CMakeLists.txt file.
   */
31
32
  bool InitialPass(std::vector<std::string> const& args,
                   cmExecutionStatus& status) CM_OVERRIDE;
33

34
35
36
  /**
   * This determines if the command is invoked when in script mode.
   */
37
  bool IsScriptable() const CM_OVERRIDE { return true; }
38

39
40
41
  /**
   * The name of the command as specified in CMakeList.txt.
   */
42
  std::string GetName() const CM_OVERRIDE { return "cmake_minimum_required"; }
43

44
45
46
private:
  std::vector<std::string> UnknownArguments;
  bool EnforceUnknownArguments();
47
48
49
};

#endif