packaging: Initial packaging
[platform/upstream/cmake.git] / Source / cmEnableLanguageCommand.cxx
1 /*============================================================================
2   CMake - Cross Platform Makefile Generator
3   Copyright 2000-2009 Kitware, Inc., Insight Software Consortium
4
5   Distributed under the OSI-approved BSD License (the "License");
6   see accompanying file Copyright.txt for details.
7
8   This software is distributed WITHOUT ANY WARRANTY; without even the
9   implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
10   See the License for more information.
11 ============================================================================*/
12 #include "cmEnableLanguageCommand.h"
13
14 // cmEnableLanguageCommand
15 bool cmEnableLanguageCommand
16 ::InitialPass(std::vector<std::string> const& args, cmExecutionStatus &)
17 {
18   bool optional = false;
19   std::vector<std::string> languages;
20   if(args.size() < 1 )
21     {
22     this->SetError
23       ("called with incorrect number of arguments");
24     return false;
25     }
26   for (std::vector<std::string>::const_iterator it = args.begin();
27        it != args.end();
28        ++it)
29     {
30     if ((*it) == "OPTIONAL")
31       {
32       optional = true;
33       }
34     else
35       {
36       languages.push_back(*it);
37       }
38     }
39
40   this->Makefile->EnableLanguage(languages, optional);
41   return true;
42 }
43