2016-09-27 22:01:08 +03:00
|
|
|
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
|
|
|
# file Copyright.txt or https://cmake.org/licensing for details.
|
|
|
|
|
2012-08-13 21:47:32 +04:00
|
|
|
include(CheckIncludeFile)
|
2008-02-28 00:26:35 +03:00
|
|
|
# Check if we can build support for ELF parsing.
|
2013-06-21 13:13:35 +04: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 21:47:32 +04:00
|
|
|
if(HAVE_ELF_H)
|
|
|
|
set(CMAKE_USE_ELF_PARSER 1)
|
2014-03-03 18:47:08 +04:00
|
|
|
elseif(HAIKU)
|
|
|
|
# On Haiku, we need to include elf32.h from the private headers
|
|
|
|
set(CMake_HAIKU_INCLUDE_DIRS
|
|
|
|
/boot/system/develop/headers/private/system
|
|
|
|
/boot/system/develop/headers/private/system/arch/x86
|
|
|
|
)
|
|
|
|
|
|
|
|
set(CMAKE_REQUIRED_INCLUDES ${CMake_HAIKU_INCLUDE_DIRS})
|
|
|
|
CHECK_INCLUDE_FILE("elf32.h" HAVE_ELF32_H)
|
|
|
|
unset(CMAKE_REQUIRED_INCLUDES)
|
|
|
|
|
|
|
|
if(HAVE_ELF32_H)
|
|
|
|
set(CMAKE_USE_ELF_PARSER 1)
|
|
|
|
else()
|
|
|
|
unset(CMake_HAIKU_INCLUDE_DIRS)
|
|
|
|
set(CMAKE_USE_ELF_PARSER)
|
|
|
|
endif()
|
2012-08-13 21:50:14 +04:00
|
|
|
else()
|
2012-08-13 21:47:32 +04:00
|
|
|
set(CMAKE_USE_ELF_PARSER)
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2008-02-28 00:26:35 +03:00
|
|
|
|
2014-12-19 22:30:22 +03:00
|
|
|
if(APPLE)
|
|
|
|
set(CMAKE_USE_MACH_PARSER 1)
|
|
|
|
endif()
|
|
|
|
|
2012-08-13 21:47:32 +04:00
|
|
|
set(EXECUTABLE_OUTPUT_PATH ${CMake_BIN_DIR})
|
2009-12-08 19:44:28 +03:00
|
|
|
|
2014-03-14 18:47:37 +04:00
|
|
|
if(WIN32)
|
2016-08-17 17:43:26 +03:00
|
|
|
# ensure Unicode friendly APIs are used on Windows
|
2014-03-14 18:47:37 +04:00
|
|
|
add_definitions(-DUNICODE -D_UNICODE)
|
2016-08-17 17:43:26 +03:00
|
|
|
|
|
|
|
# minimize windows.h content
|
|
|
|
add_definitions(-DWIN32_LEAN_AND_MEAN)
|
2014-03-14 18:47:37 +04:00
|
|
|
endif()
|
|
|
|
|
2016-08-04 13:01:42 +03:00
|
|
|
# configure the .dox.in file
|
|
|
|
if(CMake_BUILD_DEVELOPER_REFERENCE)
|
|
|
|
configure_file(
|
|
|
|
"${CMake_SOURCE_DIR}/Source/dir.dox.in"
|
|
|
|
"${CMake_BINARY_DIR}/Source/dir.dox"
|
|
|
|
@ONLY
|
|
|
|
)
|
|
|
|
endif()
|
|
|
|
|
2005-03-04 19:38:34 +03:00
|
|
|
# configure the .h file
|
2012-08-13 21:47:32 +04:00
|
|
|
configure_file(
|
2005-03-04 22:27:32 +03:00
|
|
|
"${CMake_SOURCE_DIR}/Source/cmConfigure.cmake.h.in"
|
|
|
|
"${CMake_BINARY_DIR}/Source/cmConfigure.h"
|
|
|
|
)
|
2012-08-13 21:47:32 +04:00
|
|
|
configure_file(
|
2009-03-05 23:17:07 +03:00
|
|
|
"${CMake_SOURCE_DIR}/Source/cmVersionConfig.h.in"
|
|
|
|
"${CMake_BINARY_DIR}/Source/cmVersionConfig.h"
|
|
|
|
)
|
2012-08-13 21:47:32 +04:00
|
|
|
configure_file(
|
2006-01-02 07:31:17 +03:00
|
|
|
"${CMake_SOURCE_DIR}/Source/CPack/cmCPackConfigure.h.in"
|
|
|
|
"${CMake_BINARY_DIR}/Source/CPack/cmCPackConfigure.h"
|
|
|
|
)
|
2005-03-04 19:38:34 +03:00
|
|
|
|
2013-11-08 00:30:59 +04:00
|
|
|
# Tell CMake executable in the build tree where to find the source tree.
|
|
|
|
configure_file(
|
|
|
|
"${CMake_SOURCE_DIR}/Source/CMakeSourceDir.txt.in"
|
|
|
|
"${CMake_BINARY_DIR}/CMakeFiles/CMakeSourceDir.txt" @ONLY
|
|
|
|
)
|
|
|
|
|
2006-04-21 22:26:11 +04:00
|
|
|
# add the include path to find the .h
|
2012-08-13 21:47:32 +04:00
|
|
|
include_directories(
|
2005-03-04 22:27:32 +03:00
|
|
|
"${CMake_BINARY_DIR}/Source"
|
|
|
|
"${CMake_SOURCE_DIR}/Source"
|
2005-03-16 20:54:35 +03:00
|
|
|
${CMAKE_ZLIB_INCLUDES}
|
|
|
|
${CMAKE_EXPAT_INCLUDES}
|
2005-12-29 00:30:28 +03:00
|
|
|
${CMAKE_TAR_INCLUDES}
|
2006-08-21 20:37:40 +04:00
|
|
|
${CMAKE_COMPRESS_INCLUDES}
|
2014-03-03 18:47:08 +04:00
|
|
|
${CMake_HAIKU_INCLUDE_DIRS}
|
2005-03-04 22:27:32 +03:00
|
|
|
)
|
2005-03-04 19:38:34 +03:00
|
|
|
|
|
|
|
# let cmake know it is supposed to use it
|
2012-08-13 21:47:32 +04:00
|
|
|
add_definitions(-DCMAKE_BUILD_WITH_CMAKE)
|
2005-03-04 19:38:34 +03:00
|
|
|
|
2012-08-13 21:47:32 +04:00
|
|
|
option(CMAKE_REGENERATE_YACCLEX
|
2005-06-13 19:00:29 +04:00
|
|
|
"Regenerate YACC and LEXX files" OFF)
|
2012-08-13 21:47:32 +04:00
|
|
|
mark_as_advanced(CMAKE_REGENERATE_YACCLEX)
|
|
|
|
if(CMAKE_REGENERATE_YACCLEX)
|
2015-07-22 20:21:45 +03:00
|
|
|
set(parsersLexers cmFortran cmCommandArgument cmExpr)
|
2012-08-13 21:47:32 +04:00
|
|
|
find_program(YACC_EXECUTABLE
|
2005-06-13 19:00:29 +04:00
|
|
|
NAMES yacc bison
|
|
|
|
PATHS /usr/bin
|
|
|
|
DOC "Yacc or Bison executable")
|
2012-08-13 21:47:32 +04:00
|
|
|
find_program(FLEX_EXECUTABLE
|
2005-06-13 19:00:29 +04:00
|
|
|
NAMES flex
|
|
|
|
PATHS /usr/bin
|
|
|
|
DOC "Flex executable")
|
2012-08-13 21:47:32 +04: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 21:50:14 +04:00
|
|
|
endif()
|
2012-08-13 21:47:32 +04: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 19:00:29 +04:00
|
|
|
OUTPUT "${dst}"
|
|
|
|
DEPENDS "${src}"
|
2007-10-03 23:23:54 +04:00
|
|
|
COMMAND
|
|
|
|
${YACC_EXECUTABLE}
|
|
|
|
--name-prefix=${name}_yy --defines=${hdr} -o${dst} ${src}
|
|
|
|
)
|
2012-08-13 21:47:32 +04:00
|
|
|
set(yacc_files ${yacc_files} "${dst}")
|
2012-08-13 21:50:14 +04:00
|
|
|
endforeach()
|
2012-08-13 21:47:32 +04:00
|
|
|
add_custom_target(RerunYacc DEPENDS ${yacc_files})
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2012-08-13 21:47:32 +04: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 19:00:29 +04:00
|
|
|
OUTPUT "${dst}"
|
|
|
|
DEPENDS "${src}"
|
2007-10-03 23:23:54 +04:00
|
|
|
COMMAND
|
|
|
|
${FLEX_EXECUTABLE}
|
|
|
|
--prefix=${name}_yy --header-file=${hdr} -o${dst} ${src}
|
|
|
|
)
|
2012-08-13 21:47:32 +04:00
|
|
|
set(lex_files ${lex_files} "${dst}")
|
2012-08-13 21:50:14 +04:00
|
|
|
endforeach()
|
2012-08-13 21:47:32 +04:00
|
|
|
add_custom_target(RerunLex DEPENDS ${lex_files})
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2005-06-13 19:00:29 +04:00
|
|
|
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2008-02-28 00:26:35 +03:00
|
|
|
|
|
|
|
# Check if we can build the ELF parser.
|
2012-08-13 21:47:32 +04:00
|
|
|
if(CMAKE_USE_ELF_PARSER)
|
|
|
|
set(ELF_SRCS cmELF.h cmELF.cxx)
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2008-02-28 00:26:35 +03:00
|
|
|
|
2014-12-19 22:30:22 +03:00
|
|
|
# Check if we can build the Mach-O parser.
|
|
|
|
if(CMAKE_USE_MACH_PARSER)
|
|
|
|
set(MACH_SRCS cmMachO.h cmMachO.cxx)
|
|
|
|
endif()
|
|
|
|
|
2005-03-04 19:38:34 +03:00
|
|
|
#
|
|
|
|
# Sources for CMakeLib
|
|
|
|
#
|
2012-08-13 21:47:32 +04:00
|
|
|
set(SRCS
|
2010-08-06 19:38:05 +04:00
|
|
|
cmArchiveWrite.cxx
|
2016-09-01 14:08:18 +03:00
|
|
|
cmBase32.cxx
|
2013-06-14 16:35:52 +04:00
|
|
|
cmBootstrapCommands1.cxx
|
|
|
|
cmBootstrapCommands2.cxx
|
2005-01-18 21:41:23 +03:00
|
|
|
cmCacheManager.cxx
|
|
|
|
cmCacheManager.h
|
2014-02-10 00:55:17 +04:00
|
|
|
"${CMAKE_CURRENT_BINARY_DIR}/cmCommands.cxx"
|
2015-04-09 21:56:43 +03:00
|
|
|
cmCLocaleEnvironmentScope.h
|
|
|
|
cmCLocaleEnvironmentScope.cxx
|
2005-01-18 21:41:23 +03:00
|
|
|
cmCommands.h
|
2005-06-13 19:00:29 +04:00
|
|
|
cmCommandArgumentLexer.cxx
|
|
|
|
cmCommandArgumentParser.cxx
|
|
|
|
cmCommandArgumentParserHelper.cxx
|
2015-07-07 23:37:56 +03:00
|
|
|
cmCommonTargetGenerator.cxx
|
|
|
|
cmCommonTargetGenerator.h
|
2008-02-08 00:14:05 +03:00
|
|
|
cmComputeComponentGraph.cxx
|
|
|
|
cmComputeComponentGraph.h
|
2008-01-27 21:42:49 +03:00
|
|
|
cmComputeLinkDepends.cxx
|
|
|
|
cmComputeLinkDepends.h
|
2008-01-22 17:13:04 +03:00
|
|
|
cmComputeLinkInformation.cxx
|
|
|
|
cmComputeLinkInformation.h
|
2008-02-06 07:10:41 +03:00
|
|
|
cmComputeTargetDepends.h
|
|
|
|
cmComputeTargetDepends.cxx
|
2014-05-15 21:12:40 +04:00
|
|
|
cmCPackPropertiesGenerator.h
|
|
|
|
cmCPackPropertiesGenerator.cxx
|
2011-11-16 04:37:38 +04:00
|
|
|
cmCryptoHash.cxx
|
|
|
|
cmCryptoHash.h
|
2015-01-22 18:15:31 +03:00
|
|
|
cmCurl.cxx
|
|
|
|
cmCurl.h
|
2005-01-18 21:41:23 +03:00
|
|
|
cmCustomCommand.cxx
|
|
|
|
cmCustomCommand.h
|
2010-12-08 00:23:38 +03:00
|
|
|
cmCustomCommandGenerator.cxx
|
|
|
|
cmCustomCommandGenerator.h
|
2009-07-22 22:22:45 +04:00
|
|
|
cmDefinitions.cxx
|
|
|
|
cmDefinitions.h
|
2005-01-29 01:14:49 +03:00
|
|
|
cmDepends.cxx
|
|
|
|
cmDepends.h
|
|
|
|
cmDependsC.cxx
|
|
|
|
cmDependsC.h
|
|
|
|
cmDependsFortran.cxx
|
|
|
|
cmDependsFortran.h
|
2005-03-01 20:21:34 +03:00
|
|
|
cmDependsJava.cxx
|
|
|
|
cmDependsJava.h
|
2005-01-29 01:14:49 +03:00
|
|
|
cmDependsJavaLexer.cxx
|
|
|
|
cmDependsJavaParser.cxx
|
|
|
|
cmDependsJavaParserHelper.cxx
|
|
|
|
cmDependsJavaParserHelper.h
|
2005-01-18 21:41:23 +03:00
|
|
|
cmDocumentation.cxx
|
2007-09-19 17:05:28 +04:00
|
|
|
cmDocumentationFormatter.cxx
|
2007-10-22 20:49:09 +04:00
|
|
|
cmDocumentationSection.cxx
|
2005-01-18 21:41:23 +03:00
|
|
|
cmDynamicLoader.cxx
|
|
|
|
cmDynamicLoader.h
|
2008-02-28 00:26:35 +03:00
|
|
|
${ELF_SRCS}
|
2005-10-18 00:42:47 +04:00
|
|
|
cmExprLexer.cxx
|
|
|
|
cmExprParser.cxx
|
|
|
|
cmExprParserHelper.cxx
|
2016-07-12 20:26:55 +03:00
|
|
|
cmExportBuildAndroidMKGenerator.h
|
|
|
|
cmExportBuildAndroidMKGenerator.cxx
|
2008-01-28 16:38:36 +03:00
|
|
|
cmExportBuildFileGenerator.h
|
|
|
|
cmExportBuildFileGenerator.cxx
|
|
|
|
cmExportFileGenerator.h
|
|
|
|
cmExportFileGenerator.cxx
|
2016-07-12 20:26:55 +03:00
|
|
|
cmExportInstallAndroidMKGenerator.h
|
|
|
|
cmExportInstallAndroidMKGenerator.cxx
|
2008-01-28 16:38:36 +03:00
|
|
|
cmExportInstallFileGenerator.h
|
|
|
|
cmExportInstallFileGenerator.cxx
|
2013-02-07 20:36:29 +04:00
|
|
|
cmExportTryCompileFileGenerator.h
|
|
|
|
cmExportTryCompileFileGenerator.cxx
|
2012-02-27 10:09:40 +04:00
|
|
|
cmExportSet.h
|
|
|
|
cmExportSet.cxx
|
2012-03-01 02:02:56 +04:00
|
|
|
cmExportSetMap.h
|
|
|
|
cmExportSetMap.cxx
|
2015-04-12 21:09:31 +03:00
|
|
|
cmExternalMakefileProjectGenerator.cxx
|
|
|
|
cmExternalMakefileProjectGenerator.h
|
2010-01-13 20:58:08 +03:00
|
|
|
cmExtraCodeBlocksGenerator.cxx
|
|
|
|
cmExtraCodeBlocksGenerator.h
|
2014-01-10 11:20:11 +04:00
|
|
|
cmExtraCodeLiteGenerator.cxx
|
|
|
|
cmExtraCodeLiteGenerator.h
|
2007-08-01 17:18:50 +04:00
|
|
|
cmExtraEclipseCDT4Generator.cxx
|
|
|
|
cmExtraEclipseCDT4Generator.h
|
2013-11-16 18:41:32 +04:00
|
|
|
cmExtraKateGenerator.cxx
|
|
|
|
cmExtraKateGenerator.h
|
2012-10-11 02:01:48 +04:00
|
|
|
cmExtraSublimeTextGenerator.cxx
|
|
|
|
cmExtraSublimeTextGenerator.h
|
2014-11-26 01:49:25 +03:00
|
|
|
cmFileLock.cxx
|
|
|
|
cmFileLock.h
|
|
|
|
cmFileLockPool.cxx
|
|
|
|
cmFileLockPool.h
|
|
|
|
cmFileLockResult.cxx
|
|
|
|
cmFileLockResult.h
|
2016-08-06 14:09:59 +03:00
|
|
|
cmFilePathUuid.cxx
|
|
|
|
cmFilePathUuid.h
|
2006-12-04 19:05:23 +03:00
|
|
|
cmFileTimeComparison.cxx
|
|
|
|
cmFileTimeComparison.h
|
2015-07-22 20:21:45 +03:00
|
|
|
cmFortranLexer.cxx
|
|
|
|
cmFortranLexer.h
|
|
|
|
cmFortranParser.cxx
|
|
|
|
cmFortranParser.h
|
2015-07-22 21:03:00 +03:00
|
|
|
cmFortranParserImpl.cxx
|
2005-01-18 21:41:23 +03:00
|
|
|
cmGeneratedFileStream.cxx
|
2015-03-05 01:53:22 +03:00
|
|
|
cmGeneratorExpressionContext.cxx
|
|
|
|
cmGeneratorExpressionContext.h
|
2012-09-18 15:42:23 +04:00
|
|
|
cmGeneratorExpressionDAGChecker.cxx
|
|
|
|
cmGeneratorExpressionDAGChecker.h
|
2015-04-12 21:09:31 +03:00
|
|
|
cmGeneratorExpressionEvaluationFile.cxx
|
|
|
|
cmGeneratorExpressionEvaluationFile.h
|
2012-09-11 21:53:38 +04:00
|
|
|
cmGeneratorExpressionEvaluator.cxx
|
|
|
|
cmGeneratorExpressionEvaluator.h
|
|
|
|
cmGeneratorExpressionLexer.cxx
|
|
|
|
cmGeneratorExpressionLexer.h
|
2015-02-23 01:32:11 +03:00
|
|
|
cmGeneratorExpressionNode.cxx
|
|
|
|
cmGeneratorExpressionNode.h
|
2012-09-11 21:53:38 +04:00
|
|
|
cmGeneratorExpressionParser.cxx
|
|
|
|
cmGeneratorExpressionParser.h
|
2009-08-11 17:54:56 +04:00
|
|
|
cmGeneratorExpression.cxx
|
|
|
|
cmGeneratorExpression.h
|
2012-03-07 20:44:48 +04:00
|
|
|
cmGeneratorTarget.cxx
|
|
|
|
cmGeneratorTarget.h
|
2015-07-07 23:37:56 +03:00
|
|
|
cmGlobalCommonGenerator.cxx
|
|
|
|
cmGlobalCommonGenerator.h
|
2005-01-18 21:41:23 +03:00
|
|
|
cmGlobalGenerator.cxx
|
|
|
|
cmGlobalGenerator.h
|
2012-11-19 18:48:33 +04:00
|
|
|
cmGlobalGeneratorFactory.h
|
2005-05-12 18:49:56 +04:00
|
|
|
cmGlobalUnixMakefileGenerator3.cxx
|
|
|
|
cmGlobalUnixMakefileGenerator3.h
|
2008-02-08 00:14:05 +03:00
|
|
|
cmGraphAdjacencyList.h
|
2010-11-09 23:37:51 +03:00
|
|
|
cmGraphVizWriter.cxx
|
|
|
|
cmGraphVizWriter.h
|
2006-02-19 23:25:27 +03:00
|
|
|
cmInstallGenerator.h
|
|
|
|
cmInstallGenerator.cxx
|
2007-06-19 21:10:21 +04:00
|
|
|
cmInstallExportGenerator.cxx
|
2014-05-15 21:12:40 +04:00
|
|
|
cmInstalledFile.h
|
|
|
|
cmInstalledFile.cxx
|
2006-02-20 02:47:13 +03:00
|
|
|
cmInstallFilesGenerator.h
|
|
|
|
cmInstallFilesGenerator.cxx
|
2006-02-19 23:25:27 +03:00
|
|
|
cmInstallScriptGenerator.h
|
|
|
|
cmInstallScriptGenerator.cxx
|
|
|
|
cmInstallTargetGenerator.h
|
|
|
|
cmInstallTargetGenerator.cxx
|
2006-08-17 22:48:54 +04:00
|
|
|
cmInstallDirectoryGenerator.h
|
|
|
|
cmInstallDirectoryGenerator.cxx
|
2015-05-23 01:04:09 +03:00
|
|
|
cmLinkedTree.h
|
2015-08-04 20:49:49 +03:00
|
|
|
cmLinkItem.h
|
2005-01-18 21:41:23 +03:00
|
|
|
cmListFileCache.cxx
|
|
|
|
cmListFileCache.h
|
|
|
|
cmListFileLexer.c
|
2015-07-07 23:37:56 +03:00
|
|
|
cmLocalCommonGenerator.cxx
|
|
|
|
cmLocalCommonGenerator.h
|
2005-01-18 21:41:23 +03:00
|
|
|
cmLocalGenerator.cxx
|
|
|
|
cmLocalGenerator.h
|
2005-05-12 18:49:56 +04:00
|
|
|
cmLocalUnixMakefileGenerator3.cxx
|
2015-02-06 21:23:07 +03:00
|
|
|
cmLocale.h
|
2014-12-19 22:30:22 +03:00
|
|
|
${MACH_SRCS}
|
2005-01-18 21:41:23 +03:00
|
|
|
cmMakefile.cxx
|
|
|
|
cmMakefile.h
|
2006-02-15 18:34:11 +03:00
|
|
|
cmMakefileTargetGenerator.cxx
|
|
|
|
cmMakefileExecutableTargetGenerator.cxx
|
|
|
|
cmMakefileLibraryTargetGenerator.cxx
|
|
|
|
cmMakefileUtilityTargetGenerator.cxx
|
2016-01-29 00:10:27 +03:00
|
|
|
cmMessenger.cxx
|
|
|
|
cmMessenger.h
|
2012-07-07 21:54:16 +04:00
|
|
|
cmOSXBundleGenerator.cxx
|
|
|
|
cmOSXBundleGenerator.h
|
2015-04-12 14:15:51 +03:00
|
|
|
cmOutputConverter.cxx
|
|
|
|
cmOutputConverter.h
|
2011-11-20 17:04:11 +04:00
|
|
|
cmNewLineStyle.h
|
|
|
|
cmNewLineStyle.cxx
|
2008-02-21 19:41:11 +03:00
|
|
|
cmOrderDirectories.cxx
|
|
|
|
cmOrderDirectories.h
|
2008-03-01 23:20:35 +03:00
|
|
|
cmPolicies.h
|
|
|
|
cmPolicies.cxx
|
2009-02-24 18:40:18 +03:00
|
|
|
cmProcessTools.cxx
|
|
|
|
cmProcessTools.h
|
2006-12-04 19:05:23 +03:00
|
|
|
cmProperty.cxx
|
|
|
|
cmProperty.h
|
|
|
|
cmPropertyDefinition.cxx
|
|
|
|
cmPropertyDefinition.h
|
2006-12-07 17:45:32 +03:00
|
|
|
cmPropertyDefinitionMap.cxx
|
|
|
|
cmPropertyDefinitionMap.h
|
|
|
|
cmPropertyMap.cxx
|
|
|
|
cmPropertyMap.h
|
2015-09-26 20:05:00 +03:00
|
|
|
cmQtAutoGeneratorInitializer.cxx
|
|
|
|
cmQtAutoGeneratorInitializer.h
|
2013-09-24 22:07:45 +04:00
|
|
|
cmQtAutoGenerators.cxx
|
|
|
|
cmQtAutoGenerators.h
|
2013-10-01 04:30:57 +04:00
|
|
|
cmRST.cxx
|
|
|
|
cmRST.h
|
2009-03-16 17:39:56 +03:00
|
|
|
cmScriptGenerator.h
|
|
|
|
cmScriptGenerator.cxx
|
2005-01-18 21:41:23 +03:00
|
|
|
cmSourceFile.cxx
|
|
|
|
cmSourceFile.h
|
2007-06-18 19:59:23 +04:00
|
|
|
cmSourceFileLocation.cxx
|
|
|
|
cmSourceFileLocation.h
|
2005-01-18 21:41:23 +03:00
|
|
|
cmSourceGroup.cxx
|
|
|
|
cmSourceGroup.h
|
2015-04-04 22:20:12 +03:00
|
|
|
cmState.cxx
|
|
|
|
cmState.h
|
2005-01-18 21:41:23 +03:00
|
|
|
cmSystemTools.cxx
|
|
|
|
cmSystemTools.h
|
|
|
|
cmTarget.cxx
|
|
|
|
cmTarget.h
|
2012-02-27 00:05:17 +04:00
|
|
|
cmTargetExport.h
|
2005-04-24 23:59:51 +04:00
|
|
|
cmTest.cxx
|
|
|
|
cmTest.h
|
2009-03-16 17:40:46 +03:00
|
|
|
cmTestGenerator.cxx
|
|
|
|
cmTestGenerator.h
|
2014-08-26 00:44:06 +04:00
|
|
|
cmUuid.cxx
|
2005-01-18 21:41:23 +03:00
|
|
|
cmVariableWatch.cxx
|
|
|
|
cmVariableWatch.h
|
|
|
|
cmVersion.cxx
|
|
|
|
cmVersion.h
|
|
|
|
cmXMLParser.cxx
|
|
|
|
cmXMLParser.h
|
2009-02-06 00:31:37 +03:00
|
|
|
cmXMLSafe.cxx
|
|
|
|
cmXMLSafe.h
|
2015-05-24 00:04:50 +03:00
|
|
|
cmXMLWriter.cxx
|
|
|
|
cmXMLWriter.h
|
2005-01-18 21:41:23 +03:00
|
|
|
cmake.cxx
|
|
|
|
cmake.h
|
2009-12-08 23:43:55 +03:00
|
|
|
|
2016-06-28 17:17:52 +03:00
|
|
|
cm_auto_ptr.hxx
|
2015-01-14 21:22:29 +03:00
|
|
|
cm_get_date.h
|
|
|
|
cm_get_date.c
|
2011-11-16 05:22:51 +04:00
|
|
|
cm_sha2.h
|
|
|
|
cm_sha2.c
|
2009-12-08 23:43:55 +03:00
|
|
|
cm_utf8.h
|
|
|
|
cm_utf8.c
|
2005-01-18 21:41:23 +03:00
|
|
|
)
|
2001-06-12 21:30:13 +04:00
|
|
|
|
2014-02-10 00:55:17 +04:00
|
|
|
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
|
2013-10-13 16:25:08 +04:00
|
|
|
cmTargetCompileFeaturesCommand
|
2014-02-10 00:55:17 +04:00
|
|
|
cmTargetCompileOptionsCommand
|
|
|
|
cmTargetIncludeDirectoriesCommand
|
2013-07-08 22:18:42 +04:00
|
|
|
cmTargetSourcesCommand
|
2014-02-10 00:55:17 +04:00
|
|
|
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)
|
|
|
|
|
2004-10-11 19:32:14 +04:00
|
|
|
# Kdevelop only works on UNIX and not windows
|
2012-08-13 21:47:32 +04:00
|
|
|
if(UNIX)
|
|
|
|
set(SRCS ${SRCS} cmGlobalKdevelopGenerator.cxx)
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2007-07-18 18:19:33 +04:00
|
|
|
|
2011-05-28 02:12:14 +04:00
|
|
|
# Xcode only works on Apple
|
2012-08-13 21:47:32 +04:00
|
|
|
if(APPLE)
|
|
|
|
set(SRCS ${SRCS}
|
2005-03-14 21:23:14 +03:00
|
|
|
cmXCodeObject.cxx
|
2005-09-03 00:29:32 +04:00
|
|
|
cmXCode21Object.cxx
|
2005-03-14 21:23:14 +03:00
|
|
|
cmGlobalXCodeGenerator.cxx
|
2005-07-20 00:40:44 +04:00
|
|
|
cmGlobalXCodeGenerator.h
|
2005-03-14 21:23:14 +03:00
|
|
|
cmLocalXCodeGenerator.cxx
|
|
|
|
cmLocalXCodeGenerator.h)
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2004-10-11 19:32:14 +04:00
|
|
|
|
|
|
|
|
2012-08-13 21:47:32 +04:00
|
|
|
if (WIN32)
|
|
|
|
set(SRCS ${SRCS}
|
2007-11-16 15:01:58 +03:00
|
|
|
cmCallVisualStudioMacro.cxx
|
|
|
|
cmCallVisualStudioMacro.h
|
2015-06-19 23:12:43 +03:00
|
|
|
bindexplib.cxx
|
2007-11-16 15:01:58 +03:00
|
|
|
)
|
|
|
|
|
2012-08-13 21:47:32 +04:00
|
|
|
if(NOT UNIX)
|
|
|
|
set(SRCS ${SRCS}
|
2003-08-22 00:22:23 +04:00
|
|
|
cmGlobalBorlandMakefileGenerator.cxx
|
2006-02-01 03:34:57 +03:00
|
|
|
cmGlobalBorlandMakefileGenerator.h
|
2005-12-23 00:42:36 +03:00
|
|
|
cmGlobalMSYSMakefileGenerator.cxx
|
|
|
|
cmGlobalMinGWMakefileGenerator.cxx
|
2006-02-01 03:34:57 +03:00
|
|
|
cmGlobalNMakeMakefileGenerator.cxx
|
2003-08-22 00:22:23 +04:00
|
|
|
cmGlobalNMakeMakefileGenerator.h
|
2009-11-05 23:00:15 +03:00
|
|
|
cmGlobalJOMMakefileGenerator.cxx
|
|
|
|
cmGlobalJOMMakefileGenerator.h
|
2006-02-01 03:34:57 +03:00
|
|
|
cmGlobalVisualStudio71Generator.cxx
|
|
|
|
cmGlobalVisualStudio71Generator.h
|
|
|
|
cmGlobalVisualStudio7Generator.cxx
|
|
|
|
cmGlobalVisualStudio7Generator.h
|
|
|
|
cmGlobalVisualStudio8Generator.cxx
|
|
|
|
cmGlobalVisualStudio8Generator.h
|
2007-09-17 23:21:47 +04:00
|
|
|
cmGlobalVisualStudio9Generator.cxx
|
|
|
|
cmGlobalVisualStudio9Generator.h
|
2009-06-26 00:41:57 +04:00
|
|
|
cmVisualStudioGeneratorOptions.h
|
|
|
|
cmVisualStudioGeneratorOptions.cxx
|
|
|
|
cmVisualStudio10TargetGenerator.h
|
|
|
|
cmVisualStudio10TargetGenerator.cxx
|
|
|
|
cmLocalVisualStudio10Generator.cxx
|
|
|
|
cmLocalVisualStudio10Generator.h
|
|
|
|
cmGlobalVisualStudio10Generator.h
|
|
|
|
cmGlobalVisualStudio10Generator.cxx
|
2011-09-23 17:07:40 +04:00
|
|
|
cmGlobalVisualStudio11Generator.h
|
|
|
|
cmGlobalVisualStudio11Generator.cxx
|
2013-06-29 00:12:08 +04:00
|
|
|
cmGlobalVisualStudio12Generator.h
|
|
|
|
cmGlobalVisualStudio12Generator.cxx
|
2014-06-24 23:39:11 +04:00
|
|
|
cmGlobalVisualStudio14Generator.h
|
|
|
|
cmGlobalVisualStudio14Generator.cxx
|
2016-09-02 23:15:11 +03:00
|
|
|
cmGlobalVisualStudio15Generator.h
|
|
|
|
cmGlobalVisualStudio15Generator.cxx
|
2007-04-04 19:22:14 +04:00
|
|
|
cmGlobalVisualStudioGenerator.cxx
|
|
|
|
cmGlobalVisualStudioGenerator.h
|
2009-07-29 19:28:55 +04:00
|
|
|
cmIDEFlagTable.h
|
2009-07-29 19:29:08 +04:00
|
|
|
cmIDEOptions.cxx
|
|
|
|
cmIDEOptions.h
|
2006-02-01 03:34:57 +03:00
|
|
|
cmLocalVisualStudio7Generator.cxx
|
|
|
|
cmLocalVisualStudio7Generator.h
|
2006-07-11 19:41:38 +04:00
|
|
|
cmLocalVisualStudioGenerator.cxx
|
|
|
|
cmLocalVisualStudioGenerator.h
|
2013-01-08 17:10:42 +04:00
|
|
|
cmVisualStudioSlnData.h
|
|
|
|
cmVisualStudioSlnData.cxx
|
|
|
|
cmVisualStudioSlnParser.h
|
|
|
|
cmVisualStudioSlnParser.cxx
|
2012-11-20 16:12:27 +04:00
|
|
|
cmVisualStudioWCEPlatformParser.h
|
|
|
|
cmVisualStudioWCEPlatformParser.cxx
|
2015-03-24 08:12:55 +03:00
|
|
|
cmGlobalGhsMultiGenerator.cxx
|
|
|
|
cmGlobalGhsMultiGenerator.h
|
|
|
|
cmLocalGhsMultiGenerator.cxx
|
|
|
|
cmLocalGhsMultiGenerator.h
|
|
|
|
cmGhsMultiTargetGenerator.cxx
|
|
|
|
cmGhsMultiTargetGenerator.h
|
|
|
|
cmGhsMultiGpj.cxx
|
|
|
|
cmGhsMultiGpj.h
|
2003-08-22 00:22:23 +04:00
|
|
|
)
|
2015-09-18 17:23:21 +03:00
|
|
|
|
|
|
|
# Add a manifest file to executables on Windows to allow for
|
|
|
|
# GetVersion to work properly on Windows 8 and above.
|
|
|
|
set(MANIFEST_FILE ${CMAKE_CURRENT_SOURCE_DIR}/cmake.version.manifest)
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
|
|
|
endif ()
|
2001-06-12 21:30:13 +04:00
|
|
|
|
2014-03-17 22:30:38 +04:00
|
|
|
# Watcom support
|
2014-09-09 17:09:57 +04:00
|
|
|
if(WIN32 OR CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
2014-03-17 22:30:38 +04:00
|
|
|
set_property(SOURCE cmake.cxx APPEND PROPERTY COMPILE_DEFINITIONS CMAKE_USE_WMAKE)
|
|
|
|
list(APPEND SRCS
|
|
|
|
cmGlobalWatcomWMakeGenerator.cxx
|
|
|
|
cmGlobalWatcomWMakeGenerator.h
|
|
|
|
)
|
|
|
|
endif()
|
|
|
|
|
2012-07-20 12:53:34 +04:00
|
|
|
# Ninja support
|
2012-08-13 21:47:32 +04:00
|
|
|
set(SRCS ${SRCS}
|
2012-07-20 12:53:34 +04:00
|
|
|
cmGlobalNinjaGenerator.cxx
|
|
|
|
cmGlobalNinjaGenerator.h
|
|
|
|
cmNinjaTypes.h
|
|
|
|
cmLocalNinjaGenerator.cxx
|
|
|
|
cmLocalNinjaGenerator.h
|
|
|
|
cmNinjaTargetGenerator.cxx
|
|
|
|
cmNinjaTargetGenerator.h
|
|
|
|
cmNinjaNormalTargetGenerator.cxx
|
|
|
|
cmNinjaNormalTargetGenerator.h
|
|
|
|
cmNinjaUtilityTargetGenerator.cxx
|
|
|
|
cmNinjaUtilityTargetGenerator.h
|
|
|
|
)
|
2015-03-24 08:12:55 +03:00
|
|
|
|
2016-07-13 00:10:28 +03:00
|
|
|
# Temporary variable for tools targets
|
|
|
|
set(_tools)
|
|
|
|
|
2014-08-06 17:20:24 +04:00
|
|
|
if(WIN32 AND NOT CYGWIN)
|
2012-08-13 21:47:32 +04:00
|
|
|
set_source_files_properties(cmcldeps.cxx PROPERTIES COMPILE_DEFINITIONS _WIN32_WINNT=0x0501)
|
2015-09-18 17:23:21 +03:00
|
|
|
add_executable(cmcldeps cmcldeps.cxx ${MANIFEST_FILE})
|
2016-07-13 00:10:28 +03:00
|
|
|
list(APPEND _tools cmcldeps)
|
2012-08-13 21:47:32 +04:00
|
|
|
target_link_libraries(cmcldeps CMakeLib)
|
|
|
|
endif()
|
2011-11-11 09:00:49 +04:00
|
|
|
|
2015-01-22 18:15:31 +03:00
|
|
|
foreach(v CURL_CA_BUNDLE CURL_CA_PATH)
|
|
|
|
if(${v})
|
|
|
|
set_property(SOURCE cmCurl.cxx APPEND PROPERTY COMPILE_DEFINITIONS ${v}="${${v}}")
|
|
|
|
endif()
|
|
|
|
endforeach()
|
|
|
|
|
2015-10-08 20:26:44 +03:00
|
|
|
foreach(check
|
|
|
|
STAT_HAS_ST_MTIM
|
2015-10-08 20:37:37 +03:00
|
|
|
STAT_HAS_ST_MTIMESPEC
|
2015-10-08 20:26:44 +03:00
|
|
|
)
|
|
|
|
if(KWSYS_CXX_${check}_COMPILED) # abuse KWSys check cache entry
|
|
|
|
set(CMake_${check} 1)
|
|
|
|
else()
|
|
|
|
set(CMake_${check} 0)
|
|
|
|
endif()
|
|
|
|
set_property(SOURCE cmFileTimeComparison.cxx APPEND PROPERTY
|
|
|
|
COMPILE_DEFINITIONS CMake_${check}=${CMake_${check}})
|
|
|
|
endforeach()
|
|
|
|
|
2001-06-19 23:33:37 +04:00
|
|
|
# create a library used by the command line and the GUI
|
2012-08-13 21:47:32 +04:00
|
|
|
add_library(CMakeLib ${SRCS})
|
|
|
|
target_link_libraries(CMakeLib cmsys
|
2006-08-21 20:37:40 +04:00
|
|
|
${CMAKE_EXPAT_LIBRARIES} ${CMAKE_ZLIB_LIBRARIES}
|
2008-02-06 17:35:02 +03:00
|
|
|
${CMAKE_TAR_LIBRARIES} ${CMAKE_COMPRESS_LIBRARIES}
|
2015-01-16 23:35:36 +03:00
|
|
|
${CMAKE_CURL_LIBRARIES}
|
2015-01-20 18:31:13 +03:00
|
|
|
${CMAKE_JSONCPP_LIBRARIES}
|
2016-08-16 23:26:39 +03:00
|
|
|
${CMAKE_LIBUV_LIBRARIES}
|
2015-12-18 17:57:55 +03:00
|
|
|
${CMake_KWIML_LIBRARIES}
|
2015-01-16 23:35:36 +03:00
|
|
|
)
|
2006-02-01 03:34:57 +03:00
|
|
|
|
2010-08-18 00:11:33 +04:00
|
|
|
# On Apple we need CoreFoundation
|
2012-08-13 21:47:32 +04:00
|
|
|
if(APPLE)
|
|
|
|
target_link_libraries(CMakeLib "-framework CoreFoundation")
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2006-04-13 19:00:52 +04:00
|
|
|
|
2015-08-24 17:58:42 +03:00
|
|
|
if(WIN32 AND NOT UNIX)
|
|
|
|
# We need the rpcrt4 library on Windows.
|
2015-08-22 00:15:38 +03:00
|
|
|
# We need the crypt32 library on Windows for crypto/cert APIs.
|
|
|
|
target_link_libraries(CMakeLib rpcrt4 crypt32)
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2005-03-04 19:38:34 +03:00
|
|
|
|
|
|
|
#
|
|
|
|
# CTestLib
|
|
|
|
#
|
2012-08-13 21:47:32 +04:00
|
|
|
include_directories(
|
2010-07-29 18:59:27 +04:00
|
|
|
"${CMake_SOURCE_DIR}/Source/CTest"
|
2005-03-04 22:27:32 +03:00
|
|
|
${CMAKE_XMLRPC_INCLUDES}
|
2005-06-24 17:06:26 +04:00
|
|
|
${CMAKE_CURL_INCLUDES}
|
2005-03-04 22:27:32 +03:00
|
|
|
)
|
2005-03-04 19:38:34 +03:00
|
|
|
#
|
|
|
|
# Sources for CTestLib
|
|
|
|
#
|
2012-08-13 21:47:32 +04:00
|
|
|
set(CTEST_SRCS cmCTest.cxx
|
2008-07-03 17:31:33 +04:00
|
|
|
CTest/cmProcess.cxx
|
2009-09-10 19:16:08 +04:00
|
|
|
CTest/cmCTestBatchTestHandler.cxx
|
2005-06-14 22:00:45 +04:00
|
|
|
CTest/cmCTestBuildAndTestHandler.cxx
|
2005-05-02 22:15:29 +04:00
|
|
|
CTest/cmCTestBuildCommand.cxx
|
2004-09-07 18:37:39 +04:00
|
|
|
CTest/cmCTestBuildHandler.cxx
|
2005-05-02 22:15:29 +04:00
|
|
|
CTest/cmCTestConfigureCommand.cxx
|
2004-09-09 16:41:05 +04:00
|
|
|
CTest/cmCTestConfigureHandler.cxx
|
2005-06-14 22:00:45 +04:00
|
|
|
CTest/cmCTestCoverageCommand.cxx
|
2004-09-09 16:41:05 +04:00
|
|
|
CTest/cmCTestCoverageHandler.cxx
|
2015-01-14 18:54:25 +03:00
|
|
|
CTest/cmCTestCurl.cxx
|
2012-05-01 21:35:07 +04:00
|
|
|
CTest/cmParseMumpsCoverage.cxx
|
2012-05-02 01:00:43 +04:00
|
|
|
CTest/cmParseCacheCoverage.cxx
|
2012-04-26 01:04:28 +04:00
|
|
|
CTest/cmParseGTMCoverage.cxx
|
2014-05-21 23:19:35 +04:00
|
|
|
CTest/cmParseJacocoCoverage.cxx
|
2014-10-24 01:03:30 +04:00
|
|
|
CTest/cmParseBlanketJSCoverage.cxx
|
2010-05-25 17:23:25 +04:00
|
|
|
CTest/cmParsePHPCoverage.cxx
|
2014-06-03 22:30:46 +04:00
|
|
|
CTest/cmParseCoberturaCoverage.cxx
|
2014-09-29 22:52:10 +04:00
|
|
|
CTest/cmParseDelphiCoverage.cxx
|
2005-01-27 18:11:04 +03:00
|
|
|
CTest/cmCTestEmptyBinaryDirectoryCommand.cxx
|
2005-05-02 22:15:29 +04:00
|
|
|
CTest/cmCTestGenericHandler.cxx
|
2005-06-23 21:04:18 +04:00
|
|
|
CTest/cmCTestHandlerCommand.cxx
|
2009-02-11 19:31:25 +03:00
|
|
|
CTest/cmCTestLaunch.cxx
|
2005-06-14 22:00:45 +04:00
|
|
|
CTest/cmCTestMemCheckCommand.cxx
|
2005-05-02 22:15:29 +04:00
|
|
|
CTest/cmCTestMemCheckHandler.cxx
|
2008-07-03 17:31:33 +04:00
|
|
|
CTest/cmCTestMultiProcessHandler.cxx
|
2006-03-29 00:20:03 +04:00
|
|
|
CTest/cmCTestReadCustomFilesCommand.cxx
|
2005-01-27 18:11:04 +03:00
|
|
|
CTest/cmCTestRunScriptCommand.cxx
|
2009-08-19 16:58:36 +04:00
|
|
|
CTest/cmCTestRunTest.cxx
|
2005-05-02 22:15:29 +04:00
|
|
|
CTest/cmCTestScriptHandler.cxx
|
2005-01-27 18:11:04 +03:00
|
|
|
CTest/cmCTestSleepCommand.cxx
|
2005-02-17 18:51:52 +03:00
|
|
|
CTest/cmCTestStartCommand.cxx
|
2005-05-03 16:17:39 +04:00
|
|
|
CTest/cmCTestSubmitCommand.cxx
|
|
|
|
CTest/cmCTestSubmitHandler.cxx
|
|
|
|
CTest/cmCTestTestCommand.cxx
|
2005-05-02 22:15:29 +04:00
|
|
|
CTest/cmCTestTestHandler.cxx
|
|
|
|
CTest/cmCTestUpdateCommand.cxx
|
|
|
|
CTest/cmCTestUpdateHandler.cxx
|
2011-02-18 20:11:51 +03:00
|
|
|
CTest/cmCTestUploadCommand.cxx
|
|
|
|
CTest/cmCTestUploadHandler.cxx
|
2009-02-24 18:39:28 +03:00
|
|
|
|
|
|
|
CTest/cmCTestVC.cxx
|
|
|
|
CTest/cmCTestVC.h
|
2009-04-22 17:18:19 +04:00
|
|
|
CTest/cmCTestGlobalVC.cxx
|
|
|
|
CTest/cmCTestGlobalVC.h
|
2009-02-24 18:39:55 +03:00
|
|
|
CTest/cmCTestCVS.cxx
|
|
|
|
CTest/cmCTestCVS.h
|
|
|
|
CTest/cmCTestSVN.cxx
|
|
|
|
CTest/cmCTestSVN.h
|
2009-05-15 00:13:52 +04:00
|
|
|
CTest/cmCTestBZR.cxx
|
|
|
|
CTest/cmCTestBZR.h
|
2009-04-22 17:19:06 +04:00
|
|
|
CTest/cmCTestGIT.cxx
|
|
|
|
CTest/cmCTestGIT.h
|
2009-07-10 19:08:05 +04:00
|
|
|
CTest/cmCTestHG.cxx
|
|
|
|
CTest/cmCTestHG.h
|
2013-10-23 02:11:22 +04:00
|
|
|
CTest/cmCTestP4.cxx
|
|
|
|
CTest/cmCTestP4.h
|
2005-01-18 21:41:23 +03:00
|
|
|
)
|
2004-09-06 21:37:34 +04:00
|
|
|
|
2005-03-04 19:38:34 +03:00
|
|
|
# Build CTestLib
|
2012-08-13 21:47:32 +04:00
|
|
|
add_library(CTestLib ${CTEST_SRCS})
|
|
|
|
target_link_libraries(CTestLib CMakeLib ${CMAKE_CURL_LIBRARIES} ${CMAKE_XMLRPC_LIBRARIES})
|
2002-08-27 16:36:03 +04:00
|
|
|
|
2006-01-02 07:31:17 +03:00
|
|
|
#
|
|
|
|
# Sources for CPack
|
|
|
|
#
|
2012-08-13 21:47:32 +04:00
|
|
|
set(CPACK_SRCS
|
2009-10-30 20:10:56 +03:00
|
|
|
CPack/cmCPackArchiveGenerator.cxx
|
2008-07-09 21:38:56 +04:00
|
|
|
CPack/cmCPackComponentGroup.cxx
|
2007-11-06 00:33:19 +03:00
|
|
|
CPack/cmCPackGeneratorFactory.cxx
|
2007-11-06 00:55:45 +03:00
|
|
|
CPack/cmCPackGenerator.cxx
|
2007-01-10 23:30:26 +03:00
|
|
|
CPack/cmCPackLog.cxx
|
2006-01-02 07:31:17 +03:00
|
|
|
CPack/cmCPackNSISGenerator.cxx
|
2014-08-06 19:23:00 +04:00
|
|
|
CPack/IFW/cmCPackIFWPackage.cxx
|
|
|
|
CPack/IFW/cmCPackIFWInstaller.cxx
|
2016-05-17 17:00:29 +03:00
|
|
|
CPack/IFW/cmCPackIFWRepository.cxx
|
2014-08-06 19:23:00 +04:00
|
|
|
CPack/IFW/cmCPackIFWGenerator.cxx
|
2007-01-10 23:30:26 +03:00
|
|
|
CPack/cmCPackSTGZGenerator.cxx
|
|
|
|
CPack/cmCPackTGZGenerator.cxx
|
2014-07-10 02:21:36 +04:00
|
|
|
CPack/cmCPackTXZGenerator.cxx
|
2006-05-04 05:42:51 +04:00
|
|
|
CPack/cmCPackTarBZip2Generator.cxx
|
2006-05-03 01:07:16 +04:00
|
|
|
CPack/cmCPackTarCompressGenerator.cxx
|
2007-01-10 23:30:26 +03:00
|
|
|
CPack/cmCPackZIPGenerator.cxx
|
2014-07-10 02:21:36 +04:00
|
|
|
CPack/cmCPack7zGenerator.cxx
|
2006-01-02 07:31:17 +03:00
|
|
|
)
|
2007-08-14 16:40:40 +04:00
|
|
|
|
2012-08-13 21:47:32 +04:00
|
|
|
if(CYGWIN)
|
|
|
|
set(CPACK_SRCS ${CPACK_SRCS}
|
2007-08-14 16:40:40 +04:00
|
|
|
CPack/cmCPackCygwinBinaryGenerator.cxx
|
|
|
|
CPack/cmCPackCygwinSourceGenerator.cxx
|
|
|
|
)
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2010-11-09 23:37:51 +03:00
|
|
|
|
2012-08-13 21:47:32 +04:00
|
|
|
if(UNIX)
|
|
|
|
set(CPACK_SRCS ${CPACK_SRCS}
|
2007-08-14 16:40:40 +04:00
|
|
|
CPack/cmCPackDebGenerator.cxx
|
|
|
|
CPack/cmCPackRPMGenerator.cxx
|
|
|
|
)
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2007-08-14 16:40:40 +04:00
|
|
|
|
2012-10-03 18:08:49 +04:00
|
|
|
if(WIN32)
|
|
|
|
set(CPACK_SRCS ${CPACK_SRCS}
|
|
|
|
CPack/WiX/cmCPackWIXGenerator.cxx
|
2015-02-20 19:51:55 +03:00
|
|
|
CPack/WiX/cmCPackWIXGenerator.h
|
2014-08-09 16:50:49 +04:00
|
|
|
CPack/WiX/cmWIXAccessControlList.cxx
|
2015-02-20 19:51:55 +03:00
|
|
|
CPack/WiX/cmWIXAccessControlList.h
|
2014-02-25 02:21:12 +04:00
|
|
|
CPack/WiX/cmWIXDirectoriesSourceWriter.cxx
|
2015-02-20 19:51:55 +03:00
|
|
|
CPack/WiX/cmWIXDirectoriesSourceWriter.h
|
2014-02-25 02:21:12 +04:00
|
|
|
CPack/WiX/cmWIXFeaturesSourceWriter.cxx
|
2015-02-20 19:51:55 +03:00
|
|
|
CPack/WiX/cmWIXFeaturesSourceWriter.h
|
2014-02-25 02:21:12 +04:00
|
|
|
CPack/WiX/cmWIXFilesSourceWriter.cxx
|
2015-02-20 19:51:55 +03:00
|
|
|
CPack/WiX/cmWIXFilesSourceWriter.h
|
2014-02-25 02:21:12 +04:00
|
|
|
CPack/WiX/cmWIXPatch.cxx
|
2015-02-20 19:51:55 +03:00
|
|
|
CPack/WiX/cmWIXPatch.h
|
2013-12-17 01:30:11 +04:00
|
|
|
CPack/WiX/cmWIXPatchParser.cxx
|
2015-02-20 19:51:55 +03:00
|
|
|
CPack/WiX/cmWIXPatchParser.h
|
2014-08-09 16:50:49 +04:00
|
|
|
CPack/WiX/cmWIXRichTextFormatWriter.cxx
|
2015-02-20 19:51:55 +03:00
|
|
|
CPack/WiX/cmWIXRichTextFormatWriter.h
|
2015-02-21 14:38:14 +03:00
|
|
|
CPack/WiX/cmWIXShortcut.cxx
|
2015-02-20 19:51:55 +03:00
|
|
|
CPack/WiX/cmWIXShortcut.h
|
2014-08-09 16:50:49 +04:00
|
|
|
CPack/WiX/cmWIXSourceWriter.cxx
|
2015-02-20 19:51:55 +03:00
|
|
|
CPack/WiX/cmWIXSourceWriter.h
|
2012-10-03 18:08:49 +04:00
|
|
|
)
|
|
|
|
endif()
|
|
|
|
|
2012-08-13 21:47:32 +04:00
|
|
|
if(APPLE)
|
|
|
|
set(CPACK_SRCS ${CPACK_SRCS}
|
2008-06-18 17:53:29 +04:00
|
|
|
CPack/cmCPackBundleGenerator.cxx
|
2009-01-22 20:12:44 +03:00
|
|
|
CPack/cmCPackDragNDropGenerator.cxx
|
2007-08-14 16:40:40 +04:00
|
|
|
CPack/cmCPackOSXX11Generator.cxx
|
2016-04-05 03:53:05 +03:00
|
|
|
CPack/cmCPackPKGGenerator.cxx
|
2007-08-14 16:40:40 +04:00
|
|
|
CPack/cmCPackPackageMakerGenerator.cxx
|
2013-11-02 20:24:53 +04:00
|
|
|
CPack/cmCPackProductBuildGenerator.cxx
|
2007-08-14 16:40:40 +04:00
|
|
|
)
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2007-08-14 16:40:40 +04:00
|
|
|
|
2006-01-02 07:31:17 +03:00
|
|
|
# Build CPackLib
|
2012-08-13 21:47:32 +04:00
|
|
|
add_library(CPackLib ${CPACK_SRCS})
|
|
|
|
target_link_libraries(CPackLib CMakeLib)
|
2015-10-19 12:13:55 +03:00
|
|
|
if(APPLE)
|
2016-03-18 15:49:02 +03:00
|
|
|
# Some compilers produce errors in the CoreServices framework headers.
|
|
|
|
# Ideally such errors should be fixed by either the compiler vendor
|
|
|
|
# or the framework source, but we try to workaround it and build anyway.
|
|
|
|
# If it does not work, build with reduced functionality and warn.
|
|
|
|
check_include_file("CoreServices/CoreServices.h" HAVE_CoreServices)
|
|
|
|
if(HAVE_CoreServices)
|
|
|
|
set_property(SOURCE CPack/cmCPackDragNDropGenerator.cxx PROPERTY COMPILE_DEFINITIONS HAVE_CoreServices)
|
|
|
|
target_link_libraries(CPackLib "-framework CoreServices")
|
|
|
|
else()
|
|
|
|
message(WARNING "This compiler does not appear to support\n"
|
|
|
|
" #include <CoreServices/CoreServices.h>\n"
|
|
|
|
"Some CPack functionality may be limited.\n"
|
|
|
|
"See CMakeFiles/CMakeError.log for details of the failure.")
|
|
|
|
endif()
|
2015-10-19 12:13:55 +03:00
|
|
|
endif()
|
2006-01-02 07:31:17 +03:00
|
|
|
|
2012-08-13 21:47:32 +04:00
|
|
|
if(APPLE)
|
|
|
|
add_executable(cmakexbuild cmakexbuild.cxx)
|
2016-07-13 00:10:28 +03:00
|
|
|
list(APPEND _tools cmakexbuild)
|
2012-08-13 21:47:32 +04:00
|
|
|
target_link_libraries(cmakexbuild CMakeLib)
|
|
|
|
add_executable(OSXScriptLauncher
|
2007-01-31 21:54:02 +03:00
|
|
|
CPack/OSXScriptLauncher.cxx)
|
2012-08-13 21:47:32 +04:00
|
|
|
target_link_libraries(OSXScriptLauncher cmsys)
|
|
|
|
target_link_libraries(OSXScriptLauncher "-framework CoreFoundation")
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2006-03-31 22:17:23 +04:00
|
|
|
|
2005-03-04 19:38:34 +03:00
|
|
|
# Build CMake executable
|
2015-09-18 17:23:21 +03:00
|
|
|
add_executable(cmake cmakemain.cxx cmcmd.cxx cmcmd.h ${MANIFEST_FILE})
|
2016-07-13 00:10:28 +03:00
|
|
|
list(APPEND _tools cmake)
|
2012-08-13 21:47:32 +04:00
|
|
|
target_link_libraries(cmake CMakeLib)
|
2003-04-25 23:17:08 +04:00
|
|
|
|
2016-09-29 20:18:47 +03:00
|
|
|
if(CMake_ENABLE_SERVER_MODE)
|
2016-09-13 12:26:34 +03:00
|
|
|
add_library(CMakeServerLib
|
|
|
|
cmServer.cxx cmServer.h
|
2016-09-09 11:01:44 +03:00
|
|
|
cmServerConnection.cxx cmServerConnection.h
|
2016-09-13 12:26:34 +03:00
|
|
|
cmServerProtocol.cxx cmServerProtocol.h
|
|
|
|
)
|
|
|
|
target_link_libraries(CMakeServerLib CMakeLib)
|
|
|
|
set_property(SOURCE cmcmd.cxx APPEND PROPERTY COMPILE_DEFINITIONS HAVE_SERVER_MODE=1)
|
|
|
|
|
|
|
|
target_link_libraries(cmake CMakeServerLib)
|
|
|
|
endif()
|
|
|
|
|
2005-03-04 19:38:34 +03:00
|
|
|
# Build CTest executable
|
2015-09-18 17:23:21 +03:00
|
|
|
add_executable(ctest ctest.cxx ${MANIFEST_FILE})
|
2016-07-13 00:10:28 +03:00
|
|
|
list(APPEND _tools ctest)
|
2012-08-13 21:47:32 +04:00
|
|
|
target_link_libraries(ctest CTestLib)
|
2002-05-02 23:10:19 +04:00
|
|
|
|
2006-01-02 07:31:17 +03:00
|
|
|
# Build CPack executable
|
2015-09-18 17:23:21 +03:00
|
|
|
add_executable(cpack CPack/cpack.cxx ${MANIFEST_FILE})
|
2016-07-13 00:10:28 +03:00
|
|
|
list(APPEND _tools cpack)
|
2012-08-13 21:47:32 +04:00
|
|
|
target_link_libraries(cpack CPackLib)
|
2006-01-02 07:31:17 +03:00
|
|
|
|
2005-03-04 19:38:34 +03:00
|
|
|
# Curses GUI
|
2012-08-13 21:47:32 +04:00
|
|
|
if(BUILD_CursesDialog)
|
|
|
|
include(${CMake_SOURCE_DIR}/Source/CursesDialog/CMakeLists.txt)
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2002-05-02 23:10:19 +04:00
|
|
|
|
2007-11-02 19:03:29 +03:00
|
|
|
# Qt GUI
|
2012-08-13 21:47:32 +04:00
|
|
|
option(BUILD_QtDialog "Build Qt dialog for CMake" FALSE)
|
|
|
|
if(BUILD_QtDialog)
|
2012-08-17 22:37:54 +04:00
|
|
|
add_subdirectory(QtDialog)
|
2012-08-13 21:50:14 +04:00
|
|
|
endif()
|
2012-08-13 21:47:32 +04:00
|
|
|
|
|
|
|
include (${CMake_BINARY_DIR}/Source/LocalUserOptions.cmake OPTIONAL)
|
|
|
|
include (${CMake_SOURCE_DIR}/Source/LocalUserOptions.cmake OPTIONAL)
|
|
|
|
|
2014-12-07 21:25:28 +03:00
|
|
|
# Install tools
|
|
|
|
|
|
|
|
foreach(_tool ${_tools})
|
2015-07-03 12:58:22 +03:00
|
|
|
CMake_OPTIONAL_COMPONENT(${_tool})
|
2016-05-27 17:03:43 +03:00
|
|
|
install(TARGETS ${_tool} DESTINATION ${CMAKE_BIN_DIR} ${COMPONENT})
|
2014-12-07 21:25:28 +03:00
|
|
|
endforeach()
|
|
|
|
|
2013-08-26 19:50:08 +04:00
|
|
|
install(FILES cmCPluginAPI.h DESTINATION ${CMAKE_DATA_DIR}/include)
|
2016-07-13 00:10:28 +03:00
|
|
|
|
|
|
|
# Unset temporary variables
|
|
|
|
unset(_tools)
|