summaryrefslogtreecommitdiffstats
path: root/Source/cmEndIfCommand.cxx
blob: 50c2b42dc2df5fefab23c324f7c6197c83407d0a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/* Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
   file Copyright.txt or https://cmake.org/licensing for details.  */
#include "cmEndIfCommand.h"

#include <stdlib.h> // required for atof

#include "cmMakefile.h"

class cmExecutionStatus;

bool cmEndIfCommand::InitialPass(std::vector<std::string> const&,
                                 cmExecutionStatus&)
{
  const char* versionValue =
    this->Makefile->GetDefinition("CMAKE_MINIMUM_REQUIRED_VERSION");
  if (!versionValue || (atof(versionValue) <= 1.4)) {
    return true;
  }

  this->SetError("An ENDIF command was found outside of a proper "
                 "IF ENDIF structure. Or its arguments did not match "
                 "the opening IF command.");
  return false;
}