2009-09-28 15:43:28 +00:00
|
|
|
#=============================================================================
|
|
|
|
# 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.
|
|
|
|
#=============================================================================
|
2012-08-13 17:47:32 +00:00
|
|
|
include(CheckIncludeFile)
|
2008-02-27 21:26:35 +00:00
|
|
|
# Check if we can build support for ELF parsing.
|
2013-06-21 09:13:35 +00:00
|
|
|
if(CMAKE_CXX_PLATFORM_ID MATCHES "OpenBSD")
|
|
|
|
CHECK_INCLUDE_FILES("stdint.h;elf_abi.h" HAVE_ELF_H)
|
|
|
|
else()
|
|
|
|
CHECK_INCLUDE_FILE("elf.h" HAVE_ELF_H)
|
|
|
|
endif()
|
2012-08-13 17:47:32 +00:00
|
|
|
if(HAVE_ELF_H)
|
|
|
|
set(CMAKE_USE_ELF_PARSER 1)
|
2012-08-13 17:50:14 +00:00
|
|
|
else()
|
2012-08-13 17:47:32 +00:00
|
|
|
set(CMAKE_USE_ELF_PARSER)
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2008-02-27 21:26:35 +00:00
|
|
|
|
2012-08-13 17:47:32 +00:00
|
|
|
set(EXECUTABLE_OUTPUT_PATH ${CMake_BIN_DIR})
|
2009-12-08 16:44:28 +00:00
|
|
|
|
2005-03-04 16:38:34 +00:00
|
|
|
# configure the .h file
|
2012-08-13 17:47:32 +00:00
|
|
|
configure_file(
|
2005-03-04 19:27:32 +00:00
|
|
|
"${CMake_SOURCE_DIR}/Source/cmConfigure.cmake.h.in"
|
|
|
|
"${CMake_BINARY_DIR}/Source/cmConfigure.h"
|
|
|
|
)
|
2012-08-13 17:47:32 +00:00
|
|
|
configure_file(
|
2009-03-05 20:17:07 +00:00
|
|
|
"${CMake_SOURCE_DIR}/Source/cmVersionConfig.h.in"
|
|
|
|
"${CMake_BINARY_DIR}/Source/cmVersionConfig.h"
|
|
|
|
)
|
2012-08-13 17:47:32 +00:00
|
|
|
configure_file(
|
2006-01-02 04:31:17 +00:00
|
|
|
"${CMake_SOURCE_DIR}/Source/CPack/cmCPackConfigure.h.in"
|
|
|
|
"${CMake_BINARY_DIR}/Source/CPack/cmCPackConfigure.h"
|
|
|
|
)
|
2005-03-04 16:38:34 +00:00
|
|
|
|
2006-04-21 18:26:11 +00:00
|
|
|
# add the include path to find the .h
|
2012-08-13 17:47:32 +00:00
|
|
|
include_directories(
|
2005-03-04 19:27:32 +00:00
|
|
|
"${CMake_BINARY_DIR}/Source"
|
|
|
|
"${CMake_SOURCE_DIR}/Source"
|
2005-03-16 17:54:35 +00:00
|
|
|
${CMAKE_ZLIB_INCLUDES}
|
|
|
|
${CMAKE_EXPAT_INCLUDES}
|
2005-12-28 21:30:28 +00:00
|
|
|
${CMAKE_TAR_INCLUDES}
|
2006-08-21 16:37:40 +00:00
|
|
|
${CMAKE_COMPRESS_INCLUDES}
|
2005-03-04 19:27:32 +00:00
|
|
|
)
|
2005-03-04 16:38:34 +00:00
|
|
|
|
|
|
|
# let cmake know it is supposed to use it
|
2012-08-13 17:47:32 +00:00
|
|
|
add_definitions(-DCMAKE_BUILD_WITH_CMAKE)
|
2005-03-04 16:38:34 +00:00
|
|
|
|
2012-08-13 17:47:32 +00:00
|
|
|
option(CMAKE_REGENERATE_YACCLEX
|
2005-06-13 15:00:29 +00:00
|
|
|
"Regenerate YACC and LEXX files" OFF)
|
2012-08-13 17:47:32 +00:00
|
|
|
mark_as_advanced(CMAKE_REGENERATE_YACCLEX)
|
|
|
|
if(CMAKE_REGENERATE_YACCLEX)
|
|
|
|
set(parsersLexers cmDependsFortran cmCommandArgument cmExpr)
|
|
|
|
find_program(YACC_EXECUTABLE
|
2005-06-13 15:00:29 +00:00
|
|
|
NAMES yacc bison
|
|
|
|
PATHS /usr/bin
|
|
|
|
DOC "Yacc or Bison executable")
|
2012-08-13 17:47:32 +00:00
|
|
|
find_program(FLEX_EXECUTABLE
|
2005-06-13 15:00:29 +00:00
|
|
|
NAMES flex
|
|
|
|
PATHS /usr/bin
|
|
|
|
DOC "Flex executable")
|
2012-08-13 17:47:32 +00:00
|
|
|
mark_as_advanced(YACC_EXECUTABLE FLEX_EXECUTABLE)
|
|
|
|
if(YACC_EXECUTABLE)
|
|
|
|
set(BISON_FLAGS)
|
|
|
|
if(YACC_EXECUTABLE MATCHES "bison")
|
|
|
|
set(BISON_FLAGS "--yacc")
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2012-08-13 17:47:32 +00:00
|
|
|
set(yacc_files)
|
|
|
|
foreach(name ${parsersLexers})
|
|
|
|
set(src "${CMAKE_CURRENT_SOURCE_DIR}/${name}Parser.y")
|
|
|
|
set(dst "${CMAKE_CURRENT_BINARY_DIR}/${name}Parser.cxx")
|
|
|
|
set(hdr "${CMAKE_CURRENT_BINARY_DIR}/${name}ParserTokens.h")
|
|
|
|
add_custom_command(
|
2005-06-13 15:00:29 +00:00
|
|
|
OUTPUT "${dst}"
|
|
|
|
DEPENDS "${src}"
|
2007-10-03 19:23:54 +00:00
|
|
|
COMMAND
|
|
|
|
${YACC_EXECUTABLE}
|
|
|
|
--name-prefix=${name}_yy --defines=${hdr} -o${dst} ${src}
|
|
|
|
)
|
2012-08-13 17:47:32 +00:00
|
|
|
set(yacc_files ${yacc_files} "${dst}")
|
2012-08-13 17:50:14 +00:00
|
|
|
endforeach()
|
2012-08-13 17:47:32 +00:00
|
|
|
add_custom_target(RerunYacc DEPENDS ${yacc_files})
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2012-08-13 17:47:32 +00:00
|
|
|
if(FLEX_EXECUTABLE)
|
|
|
|
set(lex_files)
|
|
|
|
foreach(name ${parsersLexers})
|
|
|
|
set(src "${CMAKE_CURRENT_SOURCE_DIR}/${name}Lexer.in.l")
|
|
|
|
set(dst "${CMAKE_CURRENT_BINARY_DIR}/${name}Lexer.cxx")
|
|
|
|
set(hdr "${CMAKE_CURRENT_BINARY_DIR}/${name}Lexer.h")
|
|
|
|
add_custom_command(
|
2005-06-13 15:00:29 +00:00
|
|
|
OUTPUT "${dst}"
|
|
|
|
DEPENDS "${src}"
|
2007-10-03 19:23:54 +00:00
|
|
|
COMMAND
|
|
|
|
${FLEX_EXECUTABLE}
|
|
|
|
--prefix=${name}_yy --header-file=${hdr} -o${dst} ${src}
|
|
|
|
)
|
2012-08-13 17:47:32 +00:00
|
|
|
set(lex_files ${lex_files} "${dst}")
|
2012-08-13 17:50:14 +00:00
|
|
|
endforeach()
|
2012-08-13 17:47:32 +00:00
|
|
|
add_custom_target(RerunLex DEPENDS ${lex_files})
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2005-06-13 15:00:29 +00:00
|
|
|
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2008-02-27 21:26:35 +00:00
|
|
|
|
|
|
|
# Check if we can build the ELF parser.
|
2012-08-13 17:47:32 +00:00
|
|
|
if(CMAKE_USE_ELF_PARSER)
|
|
|
|
set(ELF_SRCS cmELF.h cmELF.cxx)
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2008-02-27 21:26:35 +00:00
|
|
|
|
2005-03-04 16:38:34 +00:00
|
|
|
#
|
|
|
|
# Sources for CMakeLib
|
|
|
|
#
|
2012-08-13 17:47:32 +00:00
|
|
|
set(SRCS
|
2010-06-10 19:18:21 +00:00
|
|
|
cmStandardIncludes.cxx
|
2010-08-06 15:38:05 +00:00
|
|
|
cmArchiveWrite.cxx
|
2013-06-14 12:35:52 +00:00
|
|
|
cmBootstrapCommands1.cxx
|
|
|
|
cmBootstrapCommands2.cxx
|
2005-01-18 18:41:23 +00:00
|
|
|
cmCacheManager.cxx
|
|
|
|
cmCacheManager.h
|
|
|
|
cmCommands.cxx
|
|
|
|
cmCommands.h
|
2005-06-13 15:00:29 +00:00
|
|
|
cmCommandArgumentLexer.cxx
|
|
|
|
cmCommandArgumentParser.cxx
|
|
|
|
cmCommandArgumentParserHelper.cxx
|
2008-02-07 21:14:05 +00:00
|
|
|
cmComputeComponentGraph.cxx
|
|
|
|
cmComputeComponentGraph.h
|
2008-01-27 18:42:49 +00:00
|
|
|
cmComputeLinkDepends.cxx
|
|
|
|
cmComputeLinkDepends.h
|
2008-01-22 14:13:04 +00:00
|
|
|
cmComputeLinkInformation.cxx
|
|
|
|
cmComputeLinkInformation.h
|
2008-02-06 04:10:41 +00:00
|
|
|
cmComputeTargetDepends.h
|
|
|
|
cmComputeTargetDepends.cxx
|
2011-11-16 00:37:38 +00:00
|
|
|
cmCryptoHash.cxx
|
|
|
|
cmCryptoHash.h
|
2005-01-18 18:41:23 +00:00
|
|
|
cmCustomCommand.cxx
|
|
|
|
cmCustomCommand.h
|
2010-12-07 21:23:38 +00:00
|
|
|
cmCustomCommandGenerator.cxx
|
|
|
|
cmCustomCommandGenerator.h
|
2009-07-22 18:22:45 +00:00
|
|
|
cmDefinitions.cxx
|
|
|
|
cmDefinitions.h
|
2005-01-28 22:14:49 +00:00
|
|
|
cmDepends.cxx
|
|
|
|
cmDepends.h
|
|
|
|
cmDependsC.cxx
|
|
|
|
cmDependsC.h
|
|
|
|
cmDependsFortran.cxx
|
|
|
|
cmDependsFortran.h
|
2005-02-01 15:42:52 +00:00
|
|
|
cmDependsFortranLexer.cxx
|
|
|
|
cmDependsFortranParser.cxx
|
2005-01-28 22:14:49 +00:00
|
|
|
cmDependsFortranParser.h
|
2005-03-01 17:21:34 +00:00
|
|
|
cmDependsJava.cxx
|
|
|
|
cmDependsJava.h
|
2005-01-28 22:14:49 +00:00
|
|
|
cmDependsJavaLexer.cxx
|
|
|
|
cmDependsJavaParser.cxx
|
|
|
|
cmDependsJavaParserHelper.cxx
|
|
|
|
cmDependsJavaParserHelper.h
|
2005-01-18 18:41:23 +00:00
|
|
|
cmDocumentation.cxx
|
2007-09-19 13:05:28 +00:00
|
|
|
cmDocumentationFormatter.cxx
|
|
|
|
cmDocumentationFormatterHTML.cxx
|
2008-02-19 19:33:43 +00:00
|
|
|
cmDocumentationFormatterDocbook.cxx
|
2007-09-19 13:05:28 +00:00
|
|
|
cmDocumentationFormatterMan.cxx
|
2013-09-12 14:05:46 +00:00
|
|
|
cmDocumentationFormatterRST.cxx
|
2007-09-19 13:05:28 +00:00
|
|
|
cmDocumentationFormatterText.cxx
|
|
|
|
cmDocumentationFormatterUsage.cxx
|
2007-10-22 16:49:09 +00:00
|
|
|
cmDocumentationSection.cxx
|
2011-01-17 12:55:48 +00:00
|
|
|
cmDocumentCompileDefinitions.h
|
2010-12-06 22:11:36 +00:00
|
|
|
cmDocumentGeneratorExpressions.h
|
2011-12-01 20:41:01 +00:00
|
|
|
cmDocumentLocationUndefined.h
|
2007-10-18 13:10:42 +00:00
|
|
|
cmDocumentVariables.cxx
|
2005-01-18 18:41:23 +00:00
|
|
|
cmDynamicLoader.cxx
|
|
|
|
cmDynamicLoader.h
|
2008-02-27 21:26:35 +00:00
|
|
|
${ELF_SRCS}
|
2005-10-17 20:42:47 +00:00
|
|
|
cmExprLexer.cxx
|
|
|
|
cmExprParser.cxx
|
|
|
|
cmExprParserHelper.cxx
|
2008-01-28 13:38:36 +00:00
|
|
|
cmExportBuildFileGenerator.h
|
|
|
|
cmExportBuildFileGenerator.cxx
|
|
|
|
cmExportFileGenerator.h
|
|
|
|
cmExportFileGenerator.cxx
|
|
|
|
cmExportInstallFileGenerator.h
|
|
|
|
cmExportInstallFileGenerator.cxx
|
2013-02-07 16:36:29 +00:00
|
|
|
cmExportTryCompileFileGenerator.h
|
|
|
|
cmExportTryCompileFileGenerator.cxx
|
2012-02-27 06:09:40 +00:00
|
|
|
cmExportSet.h
|
|
|
|
cmExportSet.cxx
|
2012-02-29 22:02:56 +00:00
|
|
|
cmExportSetMap.h
|
|
|
|
cmExportSetMap.cxx
|
2010-01-13 17:58:08 +00:00
|
|
|
cmExtraCodeBlocksGenerator.cxx
|
|
|
|
cmExtraCodeBlocksGenerator.h
|
2007-08-01 13:18:50 +00:00
|
|
|
cmExtraEclipseCDT4Generator.cxx
|
|
|
|
cmExtraEclipseCDT4Generator.h
|
2012-10-10 22:01:48 +00:00
|
|
|
cmExtraSublimeTextGenerator.cxx
|
|
|
|
cmExtraSublimeTextGenerator.h
|
2006-12-04 16:05:23 +00:00
|
|
|
cmFileTimeComparison.cxx
|
|
|
|
cmFileTimeComparison.h
|
2005-01-18 18:41:23 +00:00
|
|
|
cmGeneratedFileStream.cxx
|
2012-09-18 11:42:23 +00:00
|
|
|
cmGeneratorExpressionDAGChecker.cxx
|
|
|
|
cmGeneratorExpressionDAGChecker.h
|
2012-09-11 17:53:38 +00:00
|
|
|
cmGeneratorExpressionEvaluator.cxx
|
|
|
|
cmGeneratorExpressionEvaluator.h
|
|
|
|
cmGeneratorExpressionLexer.cxx
|
|
|
|
cmGeneratorExpressionLexer.h
|
|
|
|
cmGeneratorExpressionParser.cxx
|
|
|
|
cmGeneratorExpressionParser.h
|
2009-08-11 13:54:56 +00:00
|
|
|
cmGeneratorExpression.cxx
|
|
|
|
cmGeneratorExpression.h
|
2012-03-07 16:44:48 +00:00
|
|
|
cmGeneratorTarget.cxx
|
|
|
|
cmGeneratorTarget.h
|
2005-01-18 18:41:23 +00:00
|
|
|
cmGlobalGenerator.cxx
|
|
|
|
cmGlobalGenerator.h
|
2012-11-19 14:48:33 +00:00
|
|
|
cmGlobalGeneratorFactory.h
|
2005-05-12 14:49:56 +00:00
|
|
|
cmGlobalUnixMakefileGenerator3.cxx
|
|
|
|
cmGlobalUnixMakefileGenerator3.h
|
2008-02-07 21:14:05 +00:00
|
|
|
cmGraphAdjacencyList.h
|
2010-11-09 20:37:51 +00:00
|
|
|
cmGraphVizWriter.cxx
|
|
|
|
cmGraphVizWriter.h
|
2006-02-19 20:25:27 +00:00
|
|
|
cmInstallGenerator.h
|
|
|
|
cmInstallGenerator.cxx
|
2007-06-19 17:10:21 +00:00
|
|
|
cmInstallExportGenerator.cxx
|
2006-02-19 23:47:13 +00:00
|
|
|
cmInstallFilesGenerator.h
|
|
|
|
cmInstallFilesGenerator.cxx
|
2006-02-19 20:25:27 +00:00
|
|
|
cmInstallScriptGenerator.h
|
|
|
|
cmInstallScriptGenerator.cxx
|
|
|
|
cmInstallTargetGenerator.h
|
|
|
|
cmInstallTargetGenerator.cxx
|
2006-08-17 18:48:54 +00:00
|
|
|
cmInstallDirectoryGenerator.h
|
|
|
|
cmInstallDirectoryGenerator.cxx
|
2005-01-18 18:41:23 +00:00
|
|
|
cmListFileCache.cxx
|
|
|
|
cmListFileCache.h
|
|
|
|
cmListFileLexer.c
|
|
|
|
cmLocalGenerator.cxx
|
|
|
|
cmLocalGenerator.h
|
2005-05-12 14:49:56 +00:00
|
|
|
cmLocalUnixMakefileGenerator3.cxx
|
2005-01-18 18:41:23 +00:00
|
|
|
cmMakeDepend.cxx
|
|
|
|
cmMakeDepend.h
|
|
|
|
cmMakefile.cxx
|
|
|
|
cmMakefile.h
|
2006-02-15 15:34:11 +00:00
|
|
|
cmMakefileTargetGenerator.cxx
|
|
|
|
cmMakefileExecutableTargetGenerator.cxx
|
|
|
|
cmMakefileLibraryTargetGenerator.cxx
|
|
|
|
cmMakefileUtilityTargetGenerator.cxx
|
2012-07-07 17:54:16 +00:00
|
|
|
cmOSXBundleGenerator.cxx
|
|
|
|
cmOSXBundleGenerator.h
|
2011-11-20 13:04:11 +00:00
|
|
|
cmNewLineStyle.h
|
|
|
|
cmNewLineStyle.cxx
|
2008-02-21 16:41:11 +00:00
|
|
|
cmOrderDirectories.cxx
|
|
|
|
cmOrderDirectories.h
|
2008-03-01 20:20:35 +00:00
|
|
|
cmPolicies.h
|
|
|
|
cmPolicies.cxx
|
2009-02-24 15:40:18 +00:00
|
|
|
cmProcessTools.cxx
|
|
|
|
cmProcessTools.h
|
2006-12-04 16:05:23 +00:00
|
|
|
cmProperty.cxx
|
|
|
|
cmProperty.h
|
|
|
|
cmPropertyDefinition.cxx
|
|
|
|
cmPropertyDefinition.h
|
2006-12-07 14:45:32 +00:00
|
|
|
cmPropertyDefinitionMap.cxx
|
|
|
|
cmPropertyDefinitionMap.h
|
|
|
|
cmPropertyMap.cxx
|
|
|
|
cmPropertyMap.h
|
2011-08-07 10:02:46 +00:00
|
|
|
cmQtAutomoc.cxx
|
|
|
|
cmQtAutomoc.h
|
2009-03-16 14:39:56 +00:00
|
|
|
cmScriptGenerator.h
|
|
|
|
cmScriptGenerator.cxx
|
2005-01-18 18:41:23 +00:00
|
|
|
cmSourceFile.cxx
|
|
|
|
cmSourceFile.h
|
2007-06-18 15:59:23 +00:00
|
|
|
cmSourceFileLocation.cxx
|
|
|
|
cmSourceFileLocation.h
|
2005-01-18 18:41:23 +00:00
|
|
|
cmSourceGroup.cxx
|
|
|
|
cmSourceGroup.h
|
|
|
|
cmSystemTools.cxx
|
|
|
|
cmSystemTools.h
|
|
|
|
cmTarget.cxx
|
|
|
|
cmTarget.h
|
2012-02-26 20:05:17 +00:00
|
|
|
cmTargetExport.h
|
2005-04-24 19:59:51 +00:00
|
|
|
cmTest.cxx
|
|
|
|
cmTest.h
|
2009-03-16 14:40:46 +00:00
|
|
|
cmTestGenerator.cxx
|
|
|
|
cmTestGenerator.h
|
2005-01-18 18:41:23 +00:00
|
|
|
cmVariableWatch.cxx
|
|
|
|
cmVariableWatch.h
|
|
|
|
cmVersion.cxx
|
|
|
|
cmVersion.h
|
|
|
|
cmXMLParser.cxx
|
|
|
|
cmXMLParser.h
|
2009-02-05 21:31:37 +00:00
|
|
|
cmXMLSafe.cxx
|
|
|
|
cmXMLSafe.h
|
2005-01-18 18:41:23 +00:00
|
|
|
cmake.cxx
|
|
|
|
cmake.h
|
|
|
|
cmakewizard.cxx
|
|
|
|
cmakewizard.h
|
2009-12-08 20:43:55 +00:00
|
|
|
|
2011-11-16 01:22:51 +00:00
|
|
|
cm_sha2.h
|
|
|
|
cm_sha2.c
|
2009-12-08 20:43:55 +00:00
|
|
|
cm_utf8.h
|
|
|
|
cm_utf8.c
|
2005-01-18 18:41:23 +00:00
|
|
|
)
|
2001-06-12 17:30:13 +00:00
|
|
|
|
2004-10-11 15:32:14 +00:00
|
|
|
# Kdevelop only works on UNIX and not windows
|
2012-08-13 17:47:32 +00:00
|
|
|
if(UNIX)
|
|
|
|
set(SRCS ${SRCS} cmGlobalKdevelopGenerator.cxx)
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2007-07-18 14:19:33 +00:00
|
|
|
|
2011-05-27 22:12:14 +00:00
|
|
|
# Xcode only works on Apple
|
2012-08-13 17:47:32 +00:00
|
|
|
if(APPLE)
|
|
|
|
set(SRCS ${SRCS}
|
2005-03-14 18:23:14 +00:00
|
|
|
cmXCodeObject.cxx
|
2005-09-02 20:29:32 +00:00
|
|
|
cmXCode21Object.cxx
|
2005-03-14 18:23:14 +00:00
|
|
|
cmGlobalXCodeGenerator.cxx
|
2005-07-19 20:40:44 +00:00
|
|
|
cmGlobalXCodeGenerator.h
|
2005-03-14 18:23:14 +00:00
|
|
|
cmLocalXCodeGenerator.cxx
|
|
|
|
cmLocalXCodeGenerator.h)
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2004-10-11 15:32:14 +00:00
|
|
|
|
|
|
|
|
2012-08-13 17:47:32 +00:00
|
|
|
if (WIN32)
|
|
|
|
set(SRCS ${SRCS}
|
2007-11-16 12:01:58 +00:00
|
|
|
cmCallVisualStudioMacro.cxx
|
|
|
|
cmCallVisualStudioMacro.h
|
|
|
|
)
|
|
|
|
|
2012-08-13 17:47:32 +00:00
|
|
|
if(NOT UNIX)
|
|
|
|
set(SRCS ${SRCS}
|
2003-08-21 20:22:23 +00:00
|
|
|
cmGlobalBorlandMakefileGenerator.cxx
|
2006-02-01 00:34:57 +00:00
|
|
|
cmGlobalBorlandMakefileGenerator.h
|
2005-12-22 21:42:36 +00:00
|
|
|
cmGlobalMSYSMakefileGenerator.cxx
|
|
|
|
cmGlobalMinGWMakefileGenerator.cxx
|
2006-02-01 00:34:57 +00:00
|
|
|
cmGlobalNMakeMakefileGenerator.cxx
|
2003-08-21 20:22:23 +00:00
|
|
|
cmGlobalNMakeMakefileGenerator.h
|
2009-11-05 20:00:15 +00:00
|
|
|
cmGlobalJOMMakefileGenerator.cxx
|
|
|
|
cmGlobalJOMMakefileGenerator.h
|
2006-02-01 00:34:57 +00:00
|
|
|
cmGlobalVisualStudio6Generator.cxx
|
2003-08-21 20:22:23 +00:00
|
|
|
cmGlobalVisualStudio6Generator.h
|
2006-02-01 00:34:57 +00:00
|
|
|
cmGlobalVisualStudio71Generator.cxx
|
|
|
|
cmGlobalVisualStudio71Generator.h
|
|
|
|
cmGlobalVisualStudio7Generator.cxx
|
|
|
|
cmGlobalVisualStudio7Generator.h
|
|
|
|
cmGlobalVisualStudio8Generator.cxx
|
|
|
|
cmGlobalVisualStudio8Generator.h
|
2007-09-17 19:21:47 +00:00
|
|
|
cmGlobalVisualStudio9Generator.cxx
|
|
|
|
cmGlobalVisualStudio9Generator.h
|
2009-06-25 20:41:57 +00:00
|
|
|
cmVisualStudioGeneratorOptions.h
|
|
|
|
cmVisualStudioGeneratorOptions.cxx
|
|
|
|
cmVisualStudio10TargetGenerator.h
|
|
|
|
cmVisualStudio10TargetGenerator.cxx
|
|
|
|
cmLocalVisualStudio10Generator.cxx
|
|
|
|
cmLocalVisualStudio10Generator.h
|
|
|
|
cmGlobalVisualStudio10Generator.h
|
|
|
|
cmGlobalVisualStudio10Generator.cxx
|
2011-09-23 13:07:40 +00:00
|
|
|
cmGlobalVisualStudio11Generator.h
|
|
|
|
cmGlobalVisualStudio11Generator.cxx
|
2013-06-28 20:12:08 +00:00
|
|
|
cmGlobalVisualStudio12Generator.h
|
|
|
|
cmGlobalVisualStudio12Generator.cxx
|
2007-04-04 15:22:14 +00:00
|
|
|
cmGlobalVisualStudioGenerator.cxx
|
|
|
|
cmGlobalVisualStudioGenerator.h
|
2006-02-01 00:34:57 +00:00
|
|
|
cmGlobalWatcomWMakeGenerator.cxx
|
2009-07-29 15:28:55 +00:00
|
|
|
cmIDEFlagTable.h
|
2009-07-29 15:29:08 +00:00
|
|
|
cmIDEOptions.cxx
|
|
|
|
cmIDEOptions.h
|
2006-02-01 00:34:57 +00:00
|
|
|
cmLocalVisualStudio6Generator.cxx
|
2003-08-21 20:22:23 +00:00
|
|
|
cmLocalVisualStudio6Generator.h
|
2006-02-01 00:34:57 +00:00
|
|
|
cmLocalVisualStudio7Generator.cxx
|
|
|
|
cmLocalVisualStudio7Generator.h
|
2006-07-11 15:41:38 +00:00
|
|
|
cmLocalVisualStudioGenerator.cxx
|
|
|
|
cmLocalVisualStudioGenerator.h
|
2013-01-08 13:10:42 +00:00
|
|
|
cmVisualStudioSlnData.h
|
|
|
|
cmVisualStudioSlnData.cxx
|
|
|
|
cmVisualStudioSlnParser.h
|
|
|
|
cmVisualStudioSlnParser.cxx
|
2012-11-20 12:12:27 +00:00
|
|
|
cmVisualStudioWCEPlatformParser.h
|
|
|
|
cmVisualStudioWCEPlatformParser.cxx
|
2003-08-21 20:22:23 +00:00
|
|
|
cmWin32ProcessExecution.cxx
|
|
|
|
cmWin32ProcessExecution.h
|
|
|
|
)
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
|
|
|
endif ()
|
2001-06-12 17:30:13 +00:00
|
|
|
|
2012-07-20 08:53:34 +00:00
|
|
|
# Ninja support
|
2012-08-13 17:47:32 +00:00
|
|
|
set(SRCS ${SRCS}
|
2012-07-20 08:53:34 +00:00
|
|
|
cmGlobalNinjaGenerator.cxx
|
|
|
|
cmGlobalNinjaGenerator.h
|
|
|
|
cmNinjaTypes.h
|
|
|
|
cmLocalNinjaGenerator.cxx
|
|
|
|
cmLocalNinjaGenerator.h
|
|
|
|
cmNinjaTargetGenerator.cxx
|
|
|
|
cmNinjaTargetGenerator.h
|
|
|
|
cmNinjaNormalTargetGenerator.cxx
|
|
|
|
cmNinjaNormalTargetGenerator.h
|
|
|
|
cmNinjaUtilityTargetGenerator.cxx
|
|
|
|
cmNinjaUtilityTargetGenerator.h
|
|
|
|
)
|
2012-08-13 17:47:32 +00:00
|
|
|
if(WIN32 AND NOT CYGWIN AND NOT BORLAND)
|
|
|
|
set_source_files_properties(cmcldeps.cxx PROPERTIES COMPILE_DEFINITIONS _WIN32_WINNT=0x0501)
|
|
|
|
add_executable(cmcldeps cmcldeps.cxx)
|
|
|
|
target_link_libraries(cmcldeps CMakeLib)
|
2013-08-26 15:50:08 +00:00
|
|
|
install(TARGETS cmcldeps DESTINATION bin)
|
2012-08-13 17:47:32 +00:00
|
|
|
endif()
|
2011-11-11 05:00:49 +00:00
|
|
|
|
2001-06-19 19:33:37 +00:00
|
|
|
# create a library used by the command line and the GUI
|
2012-08-13 17:47:32 +00:00
|
|
|
add_library(CMakeLib ${SRCS})
|
|
|
|
target_link_libraries(CMakeLib cmsys
|
2006-08-21 16:37:40 +00:00
|
|
|
${CMAKE_EXPAT_LIBRARIES} ${CMAKE_ZLIB_LIBRARIES}
|
2008-02-06 14:35:02 +00:00
|
|
|
${CMAKE_TAR_LIBRARIES} ${CMAKE_COMPRESS_LIBRARIES}
|
2009-10-30 17:10:56 +00:00
|
|
|
${CMAKE_CURL_LIBRARIES} )
|
2006-02-01 00:34:57 +00:00
|
|
|
|
2010-08-17 20:11:33 +00:00
|
|
|
# On Apple we need CoreFoundation
|
2012-08-13 17:47:32 +00:00
|
|
|
if(APPLE)
|
|
|
|
target_link_libraries(CMakeLib "-framework CoreFoundation")
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2006-04-13 15:00:52 +00:00
|
|
|
|
2006-02-01 00:34:57 +00:00
|
|
|
# On some platforms we need the rpcrt4 library for the VS 7 generators.
|
2012-08-13 17:47:32 +00:00
|
|
|
if(CMAKE_BUILD_ON_VISUAL_STUDIO OR MINGW)
|
|
|
|
target_link_libraries(CMakeLib rpcrt4)
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2005-03-04 16:38:34 +00:00
|
|
|
|
|
|
|
#
|
|
|
|
# CTestLib
|
|
|
|
#
|
2012-08-13 17:47:32 +00:00
|
|
|
include_directories(
|
2010-07-29 14:59:27 +00:00
|
|
|
"${CMake_SOURCE_DIR}/Source/CTest"
|
2005-03-04 19:27:32 +00:00
|
|
|
${CMAKE_XMLRPC_INCLUDES}
|
2005-06-24 13:06:26 +00:00
|
|
|
${CMAKE_CURL_INCLUDES}
|
2005-03-04 19:27:32 +00:00
|
|
|
)
|
2005-03-04 16:38:34 +00:00
|
|
|
#
|
|
|
|
# Sources for CTestLib
|
|
|
|
#
|
2012-08-13 17:47:32 +00:00
|
|
|
set(CTEST_SRCS cmCTest.cxx
|
2008-07-03 13:31:33 +00:00
|
|
|
CTest/cmProcess.cxx
|
2009-09-10 15:16:08 +00:00
|
|
|
CTest/cmCTestBatchTestHandler.cxx
|
2005-06-14 18:00:45 +00:00
|
|
|
CTest/cmCTestBuildAndTestHandler.cxx
|
2005-05-02 18:15:29 +00:00
|
|
|
CTest/cmCTestBuildCommand.cxx
|
2004-09-07 14:37:39 +00:00
|
|
|
CTest/cmCTestBuildHandler.cxx
|
2005-05-02 18:15:29 +00:00
|
|
|
CTest/cmCTestConfigureCommand.cxx
|
2004-09-09 12:41:05 +00:00
|
|
|
CTest/cmCTestConfigureHandler.cxx
|
2005-06-14 18:00:45 +00:00
|
|
|
CTest/cmCTestCoverageCommand.cxx
|
2004-09-09 12:41:05 +00:00
|
|
|
CTest/cmCTestCoverageHandler.cxx
|
2012-05-01 17:35:07 +00:00
|
|
|
CTest/cmParseMumpsCoverage.cxx
|
2012-05-01 21:00:43 +00:00
|
|
|
CTest/cmParseCacheCoverage.cxx
|
2012-04-25 21:04:28 +00:00
|
|
|
CTest/cmParseGTMCoverage.cxx
|
2010-05-25 13:23:25 +00:00
|
|
|
CTest/cmParsePHPCoverage.cxx
|
2013-09-27 14:42:39 +00:00
|
|
|
CTest/cmParsePythonCoverage.cxx
|
2005-01-27 15:11:04 +00:00
|
|
|
CTest/cmCTestEmptyBinaryDirectoryCommand.cxx
|
2005-05-02 18:15:29 +00:00
|
|
|
CTest/cmCTestGenericHandler.cxx
|
2005-06-23 17:04:18 +00:00
|
|
|
CTest/cmCTestHandlerCommand.cxx
|
2009-02-11 16:31:25 +00:00
|
|
|
CTest/cmCTestLaunch.cxx
|
2005-06-14 18:00:45 +00:00
|
|
|
CTest/cmCTestMemCheckCommand.cxx
|
2005-05-02 18:15:29 +00:00
|
|
|
CTest/cmCTestMemCheckHandler.cxx
|
2008-07-03 13:31:33 +00:00
|
|
|
CTest/cmCTestMultiProcessHandler.cxx
|
2006-03-28 20:20:03 +00:00
|
|
|
CTest/cmCTestReadCustomFilesCommand.cxx
|
2005-01-27 15:11:04 +00:00
|
|
|
CTest/cmCTestRunScriptCommand.cxx
|
2009-08-19 12:58:36 +00:00
|
|
|
CTest/cmCTestRunTest.cxx
|
2005-05-02 18:15:29 +00:00
|
|
|
CTest/cmCTestScriptHandler.cxx
|
2005-01-27 15:11:04 +00:00
|
|
|
CTest/cmCTestSleepCommand.cxx
|
2005-02-17 15:51:52 +00:00
|
|
|
CTest/cmCTestStartCommand.cxx
|
2005-05-03 12:17:39 +00:00
|
|
|
CTest/cmCTestSubmitCommand.cxx
|
|
|
|
CTest/cmCTestSubmitHandler.cxx
|
|
|
|
CTest/cmCTestTestCommand.cxx
|
2005-05-02 18:15:29 +00:00
|
|
|
CTest/cmCTestTestHandler.cxx
|
|
|
|
CTest/cmCTestUpdateCommand.cxx
|
|
|
|
CTest/cmCTestUpdateHandler.cxx
|
2011-02-18 17:11:51 +00:00
|
|
|
CTest/cmCTestUploadCommand.cxx
|
|
|
|
CTest/cmCTestUploadHandler.cxx
|
2009-02-24 15:39:28 +00:00
|
|
|
|
|
|
|
CTest/cmCTestVC.cxx
|
|
|
|
CTest/cmCTestVC.h
|
2009-04-22 13:18:19 +00:00
|
|
|
CTest/cmCTestGlobalVC.cxx
|
|
|
|
CTest/cmCTestGlobalVC.h
|
2009-02-24 15:39:55 +00:00
|
|
|
CTest/cmCTestCVS.cxx
|
|
|
|
CTest/cmCTestCVS.h
|
|
|
|
CTest/cmCTestSVN.cxx
|
|
|
|
CTest/cmCTestSVN.h
|
2009-05-14 20:13:52 +00:00
|
|
|
CTest/cmCTestBZR.cxx
|
|
|
|
CTest/cmCTestBZR.h
|
2009-04-22 13:19:06 +00:00
|
|
|
CTest/cmCTestGIT.cxx
|
|
|
|
CTest/cmCTestGIT.h
|
2009-07-10 15:08:05 +00:00
|
|
|
CTest/cmCTestHG.cxx
|
|
|
|
CTest/cmCTestHG.h
|
2005-01-18 18:41:23 +00:00
|
|
|
)
|
2004-09-06 17:37:34 +00:00
|
|
|
|
2005-03-04 16:38:34 +00:00
|
|
|
# Build CTestLib
|
2012-08-13 17:47:32 +00:00
|
|
|
add_library(CTestLib ${CTEST_SRCS})
|
|
|
|
target_link_libraries(CTestLib CMakeLib ${CMAKE_CURL_LIBRARIES} ${CMAKE_XMLRPC_LIBRARIES})
|
2002-08-27 12:36:03 +00:00
|
|
|
|
2006-01-02 04:31:17 +00:00
|
|
|
#
|
|
|
|
# Sources for CPack
|
|
|
|
#
|
2012-08-13 17:47:32 +00:00
|
|
|
set(CPACK_SRCS
|
2009-10-30 17:10:56 +00:00
|
|
|
CPack/cmCPackArchiveGenerator.cxx
|
2008-07-09 17:38:56 +00:00
|
|
|
CPack/cmCPackComponentGroup.cxx
|
2007-11-05 21:33:19 +00:00
|
|
|
CPack/cmCPackGeneratorFactory.cxx
|
2007-11-05 21:55:45 +00:00
|
|
|
CPack/cmCPackGenerator.cxx
|
2007-01-10 20:30:26 +00:00
|
|
|
CPack/cmCPackLog.cxx
|
2006-01-02 04:31:17 +00:00
|
|
|
CPack/cmCPackNSISGenerator.cxx
|
2007-01-10 20:30:26 +00:00
|
|
|
CPack/cmCPackSTGZGenerator.cxx
|
|
|
|
CPack/cmCPackTGZGenerator.cxx
|
2006-05-04 01:42:51 +00:00
|
|
|
CPack/cmCPackTarBZip2Generator.cxx
|
2006-05-02 21:07:16 +00:00
|
|
|
CPack/cmCPackTarCompressGenerator.cxx
|
2007-01-10 20:30:26 +00:00
|
|
|
CPack/cmCPackZIPGenerator.cxx
|
2011-11-13 21:44:53 +00:00
|
|
|
CPack/cmCPackDocumentVariables.cxx
|
2006-01-02 04:31:17 +00:00
|
|
|
)
|
2007-08-14 12:40:40 +00:00
|
|
|
|
2012-08-13 17:47:32 +00:00
|
|
|
if(CYGWIN)
|
|
|
|
set(CPACK_SRCS ${CPACK_SRCS}
|
2007-08-14 12:40:40 +00:00
|
|
|
CPack/cmCPackCygwinBinaryGenerator.cxx
|
|
|
|
CPack/cmCPackCygwinSourceGenerator.cxx
|
|
|
|
)
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2010-11-09 20:37:51 +00:00
|
|
|
|
2012-08-13 17:47:32 +00:00
|
|
|
if(UNIX)
|
|
|
|
set(CPACK_SRCS ${CPACK_SRCS}
|
2007-08-14 12:40:40 +00:00
|
|
|
CPack/cmCPackDebGenerator.cxx
|
|
|
|
CPack/cmCPackRPMGenerator.cxx
|
|
|
|
)
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2007-08-14 12:40:40 +00:00
|
|
|
|
2012-10-03 14:08:49 +00:00
|
|
|
if(WIN32)
|
|
|
|
set(CPACK_SRCS ${CPACK_SRCS}
|
|
|
|
CPack/WiX/cmCPackWIXGenerator.cxx
|
|
|
|
CPack/WiX/cmWIXSourceWriter.cxx
|
|
|
|
CPack/WiX/cmWIXRichTextFormatWriter.cxx
|
|
|
|
)
|
|
|
|
endif()
|
|
|
|
|
2012-08-13 17:47:32 +00:00
|
|
|
if(APPLE)
|
|
|
|
set(CPACK_SRCS ${CPACK_SRCS}
|
2008-06-18 13:53:29 +00:00
|
|
|
CPack/cmCPackBundleGenerator.cxx
|
2009-01-22 17:12:44 +00:00
|
|
|
CPack/cmCPackDragNDropGenerator.cxx
|
2007-08-14 12:40:40 +00:00
|
|
|
CPack/cmCPackOSXX11Generator.cxx
|
|
|
|
CPack/cmCPackPackageMakerGenerator.cxx
|
|
|
|
)
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2007-08-14 12:40:40 +00:00
|
|
|
|
2006-01-02 04:31:17 +00:00
|
|
|
# Build CPackLib
|
2012-08-13 17:47:32 +00:00
|
|
|
add_library(CPackLib ${CPACK_SRCS})
|
|
|
|
target_link_libraries(CPackLib CMakeLib)
|
2006-01-02 04:31:17 +00:00
|
|
|
|
2012-08-13 17:47:32 +00:00
|
|
|
if(APPLE)
|
|
|
|
add_executable(cmakexbuild cmakexbuild.cxx)
|
|
|
|
target_link_libraries(cmakexbuild CMakeLib)
|
|
|
|
add_executable(OSXScriptLauncher
|
2007-01-31 18:54:02 +00:00
|
|
|
CPack/OSXScriptLauncher.cxx)
|
2012-08-13 17:47:32 +00:00
|
|
|
target_link_libraries(OSXScriptLauncher cmsys)
|
|
|
|
target_link_libraries(OSXScriptLauncher "-framework CoreFoundation")
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2006-03-31 18:17:23 +00:00
|
|
|
|
2005-03-04 16:38:34 +00:00
|
|
|
# Build CMake executable
|
2013-10-03 21:28:00 +00:00
|
|
|
add_executable(cmake cmakemain.cxx cmcmd.cxx cmcmd.h)
|
2012-08-13 17:47:32 +00:00
|
|
|
target_link_libraries(cmake CMakeLib)
|
2003-04-25 19:17:08 +00:00
|
|
|
|
2012-12-20 15:57:07 +00:00
|
|
|
# Build special executable for running programs on Windows 98.
|
|
|
|
# Included on any Windows (unconditional packaging required!).
|
2012-08-13 17:47:32 +00:00
|
|
|
if(WIN32)
|
|
|
|
if(NOT UNIX)
|
|
|
|
add_executable(cmw9xcom cmw9xcom.cxx)
|
|
|
|
target_link_libraries(cmw9xcom CMakeLib)
|
2013-08-26 15:50:08 +00:00
|
|
|
install(TARGETS cmw9xcom DESTINATION bin)
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
|
|
|
endif()
|
2005-03-04 16:38:34 +00:00
|
|
|
|
|
|
|
# Build CTest executable
|
2012-08-13 17:47:32 +00:00
|
|
|
add_executable(ctest ctest.cxx)
|
|
|
|
target_link_libraries(ctest CTestLib)
|
2002-05-02 19:10:19 +00:00
|
|
|
|
2006-01-02 04:31:17 +00:00
|
|
|
# Build CPack executable
|
2012-08-13 17:47:32 +00:00
|
|
|
add_executable(cpack CPack/cpack.cxx)
|
|
|
|
target_link_libraries(cpack CPackLib)
|
2006-01-02 04:31:17 +00:00
|
|
|
|
2005-03-04 16:38:34 +00:00
|
|
|
# Curses GUI
|
2012-08-13 17:47:32 +00:00
|
|
|
if(BUILD_CursesDialog)
|
|
|
|
include(${CMake_SOURCE_DIR}/Source/CursesDialog/CMakeLists.txt)
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2002-05-02 19:10:19 +00:00
|
|
|
|
2007-11-02 16:03:29 +00:00
|
|
|
# Qt GUI
|
2012-08-13 17:47:32 +00:00
|
|
|
option(BUILD_QtDialog "Build Qt dialog for CMake" FALSE)
|
|
|
|
if(BUILD_QtDialog)
|
2012-08-17 18:37:54 +00:00
|
|
|
add_subdirectory(QtDialog)
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2012-08-13 17:47:32 +00:00
|
|
|
|
|
|
|
include (${CMake_BINARY_DIR}/Source/LocalUserOptions.cmake OPTIONAL)
|
|
|
|
include (${CMake_SOURCE_DIR}/Source/LocalUserOptions.cmake OPTIONAL)
|
|
|
|
|
2013-08-26 15:50:08 +00:00
|
|
|
install(TARGETS cmake ctest cpack DESTINATION bin)
|
2012-08-13 17:47:32 +00:00
|
|
|
if(APPLE)
|
2013-08-26 15:50:08 +00:00
|
|
|
install(TARGETS cmakexbuild DESTINATION bin)
|
2012-08-13 17:50:14 +00:00
|
|
|
endif()
|
2012-08-13 17:47:32 +00:00
|
|
|
|
2013-08-26 15:50:08 +00:00
|
|
|
install(FILES cmCPluginAPI.h DESTINATION ${CMAKE_DATA_DIR}/include)
|