Merge topic 'split-cmake-E'

c04995b cmake: Split -E command implementation into separate source file
This commit is contained in:
Brad King 2013-10-07 15:45:15 -04:00 committed by CMake Topic Stage
commit 1d9af198a8
7 changed files with 1432 additions and 1385 deletions

View File

@ -545,7 +545,7 @@ if(APPLE)
endif()
# Build CMake executable
add_executable(cmake cmakemain.cxx)
add_executable(cmake cmakemain.cxx cmcmd.cxx cmcmd.h)
target_link_libraries(cmake CMakeLib)
# Build special executable for running programs on Windows 98.

File diff suppressed because it is too large Load Diff

View File

@ -209,11 +209,6 @@ class cmake
void AddCacheEntry(const char* key, const char* value,
const char* helpString,
int type);
/**
* Execute commands during the build process. Supports options such
* as echo, remove file etc.
*/
static int ExecuteCMakeCommand(std::vector<std::string>&);
/**
* Get the system information and write it to the file specified
@ -448,29 +443,6 @@ protected:
void GenerateGraphViz(const char* fileName) const;
static int SymlinkLibrary(std::vector<std::string>& args);
static int SymlinkExecutable(std::vector<std::string>& args);
static bool SymlinkInternal(std::string const& file,
std::string const& link);
static int ExecuteEchoColor(std::vector<std::string>& args);
static int ExecuteLinkScript(std::vector<std::string>& args);
static int WindowsCEEnvironment(const char* version,
const std::string& name);
static int VisualStudioLink(std::vector<std::string>& args, int type);
static int VisualStudioLinkIncremental(std::vector<std::string>& args,
int type,
bool verbose);
static int VisualStudioLinkNonIncremental(std::vector<std::string>& args,
int type,
bool hasManifest,
bool verbose);
static int ParseVisualStudioLinkCommand(std::vector<std::string>& args,
std::vector<cmStdString>& command,
std::string& targetName);
static bool RunCommand(const char* comment,
std::vector<cmStdString>& command,
bool verbose,
int* retCodeOut = 0);
cmVariableWatch* VariableWatch;
///! Find the full path to one of the cmake programs like ctest, cpack, etc.

View File

@ -17,6 +17,7 @@
#endif
#include "cmake.h"
#include "cmcmd.h"
#include "cmCacheManager.h"
#include "cmListFileCache.h"
#include "cmakewizard.h"
@ -510,7 +511,7 @@ int do_cmake(int ac, char** av)
}
if(command)
{
int ret = cmake::ExecuteCMakeCommand(args);
int ret = cmcmd::ExecuteCMakeCommand(args);
return ret;
}
if (wiz)

1374
Source/cmcmd.cxx Normal file

File diff suppressed because it is too large Load Diff

54
Source/cmcmd.h Normal file
View File

@ -0,0 +1,54 @@
/*============================================================================
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 cmcmd_h
#define cmcmd_h
#include "cmStandardIncludes.h"
class cmcmd
{
public:
/**
* Execute commands during the build process. Supports options such
* as echo, remove file etc.
*/
static int ExecuteCMakeCommand(std::vector<std::string>&);
protected:
static int SymlinkLibrary(std::vector<std::string>& args);
static int SymlinkExecutable(std::vector<std::string>& args);
static bool SymlinkInternal(std::string const& file,
std::string const& link);
static int ExecuteEchoColor(std::vector<std::string>& args);
static int ExecuteLinkScript(std::vector<std::string>& args);
static int WindowsCEEnvironment(const char* version,
const std::string& name);
static int VisualStudioLink(std::vector<std::string>& args, int type);
static int VisualStudioLinkIncremental(std::vector<std::string>& args,
int type,
bool verbose);
static int VisualStudioLinkNonIncremental(std::vector<std::string>& args,
int type,
bool hasManifest,
bool verbose);
static int ParseVisualStudioLinkCommand(std::vector<std::string>& args,
std::vector<cmStdString>& command,
std::string& targetName);
static bool RunCommand(const char* comment,
std::vector<cmStdString>& command,
bool verbose,
int* retCodeOut = 0);
};
#endif

View File

@ -197,6 +197,7 @@ CMAKE_CXX_SOURCES="\
cmake \
cmakemain \
cmakewizard \
cmcmd \
cmCommandArgumentLexer \
cmCommandArgumentParser \
cmCommandArgumentParserHelper \