mirror of
https://github.com/reactos/CMake.git
synced 2024-11-28 14:01:21 +00:00
CMakeLists: Generate the cmCommands.cxx file.
Define the list of commands in the CMakeLists.txt file. List the sources in the CMakeLib target, but mark them as HEADER_FILE_ONLY. This has the effect that IDEs will show the files, though they will not be built again. Add a cmCommandsForBootstrap.cxx file for bootstrapping purposes. Rename the cmExportLibraryDependencies file to match the common pattern.
This commit is contained in:
parent
1cc3e9f2e7
commit
23d3d38a31
@ -127,7 +127,7 @@ set(SRCS
|
||||
cmBootstrapCommands2.cxx
|
||||
cmCacheManager.cxx
|
||||
cmCacheManager.h
|
||||
cmCommands.cxx
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/cmCommands.cxx"
|
||||
cmCommands.h
|
||||
cmCommandArgumentLexer.cxx
|
||||
cmCommandArgumentParser.cxx
|
||||
@ -298,6 +298,50 @@ set(SRCS
|
||||
cm_utf8.c
|
||||
)
|
||||
|
||||
set(COMMAND_INCLUDES "#include \"cmTargetPropCommandBase.cxx\"\n")
|
||||
list(APPEND SRCS cmTargetPropCommandBase.cxx)
|
||||
set_property(SOURCE cmTargetPropCommandBase.cxx PROPERTY HEADER_FILE_ONLY ON)
|
||||
set(NEW_COMMANDS "")
|
||||
foreach(command_file
|
||||
cmAddCompileOptionsCommand
|
||||
cmAuxSourceDirectoryCommand
|
||||
cmBuildNameCommand
|
||||
cmCMakeHostSystemInformationCommand
|
||||
cmElseIfCommand
|
||||
cmExportCommand
|
||||
cmExportLibraryDependenciesCommand
|
||||
cmFLTKWrapUICommand
|
||||
cmIncludeExternalMSProjectCommand
|
||||
cmInstallProgramsCommand
|
||||
cmLinkLibrariesCommand
|
||||
cmLoadCacheCommand
|
||||
cmOutputRequiredFilesCommand
|
||||
cmQTWrapCPPCommand
|
||||
cmQTWrapUICommand
|
||||
cmRemoveCommand
|
||||
cmRemoveDefinitionsCommand
|
||||
cmSourceGroupCommand
|
||||
cmSubdirDependsCommand
|
||||
cmTargetCompileDefinitionsCommand
|
||||
cmTargetCompileOptionsCommand
|
||||
cmTargetIncludeDirectoriesCommand
|
||||
cmUseMangledMesaCommand
|
||||
cmUtilitySourceCommand
|
||||
cmVariableRequiresCommand
|
||||
cmVariableWatchCommand
|
||||
cmWriteFileCommand
|
||||
# This one must be last because it includes windows.h and
|
||||
# windows.h #defines GetCurrentDirectory which is a member
|
||||
# of cmMakefile
|
||||
cmLoadCommandCommand
|
||||
)
|
||||
set(COMMAND_INCLUDES "${COMMAND_INCLUDES}#include \"${command_file}.cxx\"\n")
|
||||
set(NEW_COMMANDS "${NEW_COMMANDS}commands.push_back(new ${command_file});\n")
|
||||
list(APPEND SRCS ${command_file}.cxx)
|
||||
set_property(SOURCE ${command_file}.cxx PROPERTY HEADER_FILE_ONLY ON)
|
||||
endforeach()
|
||||
configure_file(cmCommands.cxx.in ${CMAKE_CURRENT_BINARY_DIR}/cmCommands.cxx @ONLY)
|
||||
|
||||
# Kdevelop only works on UNIX and not windows
|
||||
if(UNIX)
|
||||
set(SRCS ${SRCS} cmGlobalKdevelopGenerator.cxx)
|
||||
|
@ -1,86 +0,0 @@
|
||||
/*============================================================================
|
||||
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.
|
||||
============================================================================*/
|
||||
#include "cmCommands.h"
|
||||
#if defined(CMAKE_BUILD_WITH_CMAKE)
|
||||
#include "cmAddCompileOptionsCommand.cxx"
|
||||
#include "cmAuxSourceDirectoryCommand.cxx"
|
||||
#include "cmBuildNameCommand.cxx"
|
||||
#include "cmCMakeHostSystemInformationCommand.cxx"
|
||||
#include "cmElseIfCommand.cxx"
|
||||
#include "cmExportCommand.cxx"
|
||||
#include "cmExportLibraryDependencies.cxx"
|
||||
#include "cmFLTKWrapUICommand.cxx"
|
||||
#include "cmIncludeExternalMSProjectCommand.cxx"
|
||||
#include "cmInstallProgramsCommand.cxx"
|
||||
#include "cmLinkLibrariesCommand.cxx"
|
||||
#include "cmLoadCacheCommand.cxx"
|
||||
#include "cmOutputRequiredFilesCommand.cxx"
|
||||
#include "cmQTWrapCPPCommand.cxx"
|
||||
#include "cmQTWrapUICommand.cxx"
|
||||
#include "cmRemoveCommand.cxx"
|
||||
#include "cmRemoveDefinitionsCommand.cxx"
|
||||
#include "cmSourceGroupCommand.cxx"
|
||||
#include "cmSubdirDependsCommand.cxx"
|
||||
#include "cmTargetCompileDefinitionsCommand.cxx"
|
||||
#include "cmTargetCompileOptionsCommand.cxx"
|
||||
#include "cmTargetIncludeDirectoriesCommand.cxx"
|
||||
#include "cmTargetPropCommandBase.cxx"
|
||||
#include "cmUseMangledMesaCommand.cxx"
|
||||
#include "cmUtilitySourceCommand.cxx"
|
||||
#include "cmVariableRequiresCommand.cxx"
|
||||
#include "cmVariableWatchCommand.cxx"
|
||||
|
||||
#include "cmWriteFileCommand.cxx"
|
||||
|
||||
// This one must be last because it includes windows.h and
|
||||
// windows.h #defines GetCurrentDirectory which is a member
|
||||
// of cmMakefile
|
||||
#include "cmLoadCommandCommand.cxx"
|
||||
#endif
|
||||
|
||||
void GetPredefinedCommands(std::list<cmCommand*>&
|
||||
#if defined(CMAKE_BUILD_WITH_CMAKE)
|
||||
commands
|
||||
#endif
|
||||
)
|
||||
{
|
||||
#if defined(CMAKE_BUILD_WITH_CMAKE)
|
||||
commands.push_back(new cmAddCompileOptionsCommand);
|
||||
commands.push_back(new cmAuxSourceDirectoryCommand);
|
||||
commands.push_back(new cmBuildNameCommand);
|
||||
commands.push_back(new cmCMakeHostSystemInformationCommand);
|
||||
commands.push_back(new cmElseIfCommand);
|
||||
commands.push_back(new cmExportCommand);
|
||||
commands.push_back(new cmExportLibraryDependenciesCommand);
|
||||
commands.push_back(new cmFLTKWrapUICommand);
|
||||
commands.push_back(new cmIncludeExternalMSProjectCommand);
|
||||
commands.push_back(new cmInstallProgramsCommand);
|
||||
commands.push_back(new cmLinkLibrariesCommand);
|
||||
commands.push_back(new cmLoadCacheCommand);
|
||||
commands.push_back(new cmLoadCommandCommand);
|
||||
commands.push_back(new cmOutputRequiredFilesCommand);
|
||||
commands.push_back(new cmQTWrapCPPCommand);
|
||||
commands.push_back(new cmQTWrapUICommand);
|
||||
commands.push_back(new cmRemoveCommand);
|
||||
commands.push_back(new cmRemoveDefinitionsCommand);
|
||||
commands.push_back(new cmSourceGroupCommand);
|
||||
commands.push_back(new cmSubdirDependsCommand);
|
||||
commands.push_back(new cmTargetIncludeDirectoriesCommand);
|
||||
commands.push_back(new cmTargetCompileDefinitionsCommand);
|
||||
commands.push_back(new cmTargetCompileOptionsCommand);
|
||||
commands.push_back(new cmUseMangledMesaCommand);
|
||||
commands.push_back(new cmUtilitySourceCommand);
|
||||
commands.push_back(new cmVariableRequiresCommand);
|
||||
commands.push_back(new cmVariableWatchCommand);
|
||||
commands.push_back(new cmWriteFileCommand);
|
||||
#endif
|
||||
}
|
19
Source/cmCommands.cxx.in
Normal file
19
Source/cmCommands.cxx.in
Normal file
@ -0,0 +1,19 @@
|
||||
/*============================================================================
|
||||
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.
|
||||
============================================================================*/
|
||||
#include "cmCommands.h"
|
||||
|
||||
@COMMAND_INCLUDES@
|
||||
|
||||
void GetPredefinedCommands(std::list<cmCommand*>& commands)
|
||||
{
|
||||
@NEW_COMMANDS@
|
||||
}
|
16
Source/cmCommandsForBootstrap.cxx
Normal file
16
Source/cmCommandsForBootstrap.cxx
Normal file
@ -0,0 +1,16 @@
|
||||
/*============================================================================
|
||||
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.
|
||||
============================================================================*/
|
||||
#include "cmCommands.h"
|
||||
|
||||
void GetPredefinedCommands(std::list<cmCommand*>&)
|
||||
{
|
||||
}
|
@ -9,7 +9,7 @@
|
||||
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
See the License for more information.
|
||||
============================================================================*/
|
||||
#include "cmExportLibraryDependencies.h"
|
||||
#include "cmExportLibraryDependenciesCommand.h"
|
||||
#include "cmGlobalGenerator.h"
|
||||
#include "cmLocalGenerator.h"
|
||||
#include "cmGeneratedFileStream.h"
|
Loading…
Reference in New Issue
Block a user