1 # configure the .h file
3 "${CMake_SOURCE_DIR}/Source/cmConfigure.cmake.h.in"
4 "${CMake_BINARY_DIR}/Source/cmConfigure.h"
7 "${CMake_SOURCE_DIR}/Source/CPack/cmCPackConfigure.h.in"
8 "${CMake_BINARY_DIR}/Source/CPack/cmCPackConfigure.h"
11 # add the include path to find the .h
13 "${CMake_BINARY_DIR}/Source"
14 "${CMake_SOURCE_DIR}/Source"
15 ${CMAKE_ZLIB_INCLUDES}
16 ${CMAKE_EXPAT_INCLUDES}
18 ${CMAKE_COMPRESS_INCLUDES}
21 # let cmake know it is supposed to use it
22 ADD_DEFINITIONS(-DCMAKE_BUILD_WITH_CMAKE)
24 OPTION(CMAKE_REGENERATE_YACCLEX
25 "Regenerate YACC and LEXX files" OFF)
26 MARK_AS_ADVANCED(CMAKE_REGENERATE_YACCLEX)
27 IF(CMAKE_REGENERATE_YACCLEX)
28 SET(parsersLexers cmDependsFortran cmCommandArgument cmExpr)
29 FIND_PROGRAM(YACC_EXECUTABLE
32 DOC "Yacc or Bison executable")
33 FIND_PROGRAM(FLEX_EXECUTABLE
36 DOC "Flex executable")
37 MARK_AS_ADVANCED(YACC_EXECUTABLE FLEX_EXECUTABLE)
40 IF(YACC_EXECUTABLE MATCHES "bison")
41 SET(BISON_FLAGS "--yacc")
42 ENDIF(YACC_EXECUTABLE MATCHES "bison")
44 FOREACH(name ${parsersLexers})
45 SET(src "${CMAKE_CURRENT_SOURCE_DIR}/${name}Parser.y")
46 SET(dst "${CMAKE_CURRENT_BINARY_DIR}/${name}Parser.cxx")
47 SET(hdr "${CMAKE_CURRENT_BINARY_DIR}/${name}ParserTokens.h")
53 --name-prefix=${name}_yy --defines=${hdr} -o${dst} ${src}
55 SET(yacc_files ${yacc_files} "${dst}")
57 ADD_CUSTOM_TARGET(RerunYacc DEPENDS ${yacc_files})
58 ENDIF(YACC_EXECUTABLE)
61 FOREACH(name ${parsersLexers})
62 SET(src "${CMAKE_CURRENT_SOURCE_DIR}/${name}Lexer.in.l")
63 SET(dst "${CMAKE_CURRENT_BINARY_DIR}/${name}Lexer.cxx")
64 SET(hdr "${CMAKE_CURRENT_BINARY_DIR}/${name}Lexer.h")
70 --prefix=${name}_yy --header-file=${hdr} -o${dst} ${src}
72 SET(lex_files ${lex_files} "${dst}")
74 ADD_CUSTOM_TARGET(RerunLex DEPENDS ${lex_files})
75 ENDIF(FLEX_EXECUTABLE)
77 ENDIF(CMAKE_REGENERATE_YACCLEX)
79 # Sources for CMakeLib
82 cmBootstrapCommands.cxx
87 cmCommandArgumentLexer.cxx
88 cmCommandArgumentParser.cxx
89 cmCommandArgumentParserHelper.cxx
90 cmComputeLinkInformation.cxx
91 cmComputeLinkInformation.h
100 cmDependsFortranLexer.cxx
101 cmDependsFortranParser.cxx
102 cmDependsFortranParser.h
105 cmDependsJavaLexer.cxx
106 cmDependsJavaParser.cxx
107 cmDependsJavaParserHelper.cxx
108 cmDependsJavaParserHelper.h
110 cmDocumentationFormatter.cxx
111 cmDocumentationFormatterHTML.cxx
112 cmDocumentationFormatterMan.cxx
113 cmDocumentationFormatterText.cxx
114 cmDocumentationFormatterUsage.cxx
115 cmDocumentationSection.cxx
116 cmDocumentVariables.cxx
121 cmExprParserHelper.cxx
122 cmExtraEclipseCDT4Generator.cxx
123 cmExtraEclipseCDT4Generator.h
124 cmFileTimeComparison.cxx
125 cmFileTimeComparison.h
126 cmGeneratedFileStream.cxx
127 cmGlobalGenerator.cxx
129 cmGlobalUnixMakefileGenerator3.cxx
130 cmGlobalUnixMakefileGenerator3.h
132 cmInstallGenerator.cxx
133 cmInstallExportGenerator.cxx
134 cmInstallFilesGenerator.h
135 cmInstallFilesGenerator.cxx
136 cmInstallScriptGenerator.h
137 cmInstallScriptGenerator.cxx
138 cmInstallTargetGenerator.h
139 cmInstallTargetGenerator.cxx
140 cmInstallDirectoryGenerator.h
141 cmInstallDirectoryGenerator.cxx
147 cmLocalUnixMakefileGenerator3.cxx
152 cmMakefileTargetGenerator.cxx
153 cmMakefileExecutableTargetGenerator.cxx
154 cmMakefileLibraryTargetGenerator.cxx
155 cmMakefileUtilityTargetGenerator.cxx
158 cmPropertyDefinition.cxx
159 cmPropertyDefinition.h
160 cmPropertyDefinitionMap.cxx
161 cmPropertyDefinitionMap.h
166 cmSourceFileLocation.cxx
167 cmSourceFileLocation.h
188 # Kdevelop only works on UNIX and not windows
190 SET(SRCS ${SRCS} cmGlobalKdevelopGenerator.cxx)
194 SET(SRCS ${SRCS} cmExtraCodeBlocksGenerator.cxx)
197 # XCode only works on apple
202 cmGlobalXCodeGenerator.cxx
203 cmGlobalXCodeGenerator.h
204 cmGlobalXCode21Generator.cxx
205 cmGlobalXCode21Generator.h
206 cmLocalXCodeGenerator.cxx
207 cmLocalXCodeGenerator.h)
213 cmCallVisualStudioMacro.cxx
214 cmCallVisualStudioMacro.h
219 cmGlobalBorlandMakefileGenerator.cxx
220 cmGlobalBorlandMakefileGenerator.h
221 cmGlobalMSYSMakefileGenerator.cxx
222 cmGlobalMinGWMakefileGenerator.cxx
223 cmGlobalNMakeMakefileGenerator.cxx
224 cmGlobalNMakeMakefileGenerator.h
225 cmGlobalVisualStudio6Generator.cxx
226 cmGlobalVisualStudio6Generator.h
227 cmGlobalVisualStudio71Generator.cxx
228 cmGlobalVisualStudio71Generator.h
229 cmGlobalVisualStudio7Generator.cxx
230 cmGlobalVisualStudio7Generator.h
231 cmGlobalVisualStudio8Generator.cxx
232 cmGlobalVisualStudio8Generator.h
233 cmGlobalVisualStudio9Generator.cxx
234 cmGlobalVisualStudio9Generator.h
235 cmGlobalVisualStudio8Win64Generator.cxx
236 cmGlobalVisualStudio8Win64Generator.h
237 cmGlobalVisualStudio9Win64Generator.cxx
238 cmGlobalVisualStudio9Win64Generator.h
239 cmGlobalVisualStudioGenerator.cxx
240 cmGlobalVisualStudioGenerator.h
241 cmGlobalWatcomWMakeGenerator.cxx
242 cmLocalVisualStudio6Generator.cxx
243 cmLocalVisualStudio6Generator.h
244 cmLocalVisualStudio7Generator.cxx
245 cmLocalVisualStudio7Generator.h
246 cmLocalVisualStudioGenerator.cxx
247 cmLocalVisualStudioGenerator.h
248 cmWin32ProcessExecution.cxx
249 cmWin32ProcessExecution.h
254 # create a library used by the command line and the GUI
255 ADD_LIBRARY(CMakeLib ${SRCS})
256 TARGET_LINK_LIBRARIES(CMakeLib cmsys
257 ${CMAKE_EXPAT_LIBRARIES} ${CMAKE_ZLIB_LIBRARIES}
258 ${CMAKE_TAR_LIBRARIES} ${CMAKE_COMPRESS_LIBRARIES})
260 # On Apple we need Carbon
262 TARGET_LINK_LIBRARIES(CMakeLib "-framework CoreFoundation")
265 # On some platforms we need the rpcrt4 library for the VS 7 generators.
266 IF(CMAKE_BUILD_ON_VISUAL_STUDIO OR MINGW)
267 TARGET_LINK_LIBRARIES(CMakeLib rpcrt4)
268 ENDIF(CMAKE_BUILD_ON_VISUAL_STUDIO OR MINGW)
274 "${CMAKE_SOURCE_DIR}/Source/CTest"
275 ${CMAKE_XMLRPC_INCLUDES}
276 ${CMAKE_CURL_INCLUDES}
279 # Sources for CTestLib
281 SET(CTEST_SRCS cmCTest.cxx
282 CTest/cmCTestBuildAndTestHandler.cxx
283 CTest/cmCTestBuildCommand.cxx
284 CTest/cmCTestBuildHandler.cxx
285 CTest/cmCTestConfigureCommand.cxx
286 CTest/cmCTestConfigureHandler.cxx
287 CTest/cmCTestCoverageCommand.cxx
288 CTest/cmCTestCoverageHandler.cxx
289 CTest/cmCTestEmptyBinaryDirectoryCommand.cxx
290 CTest/cmCTestGenericHandler.cxx
291 CTest/cmCTestHandlerCommand.cxx
292 CTest/cmCTestMemCheckCommand.cxx
293 CTest/cmCTestMemCheckHandler.cxx
294 CTest/cmCTestReadCustomFilesCommand.cxx
295 CTest/cmCTestRunScriptCommand.cxx
296 CTest/cmCTestScriptHandler.cxx
297 CTest/cmCTestSleepCommand.cxx
298 CTest/cmCTestStartCommand.cxx
299 CTest/cmCTestSubmitCommand.cxx
300 CTest/cmCTestSubmitHandler.cxx
301 CTest/cmCTestTestCommand.cxx
302 CTest/cmCTestTestHandler.cxx
303 CTest/cmCTestUpdateCommand.cxx
304 CTest/cmCTestUpdateHandler.cxx
308 ADD_LIBRARY(CTestLib ${CTEST_SRCS})
309 TARGET_LINK_LIBRARIES(CTestLib CMakeLib ${CMAKE_CURL_LIBRARIES} ${CMAKE_XMLRPC_LIBRARIES})
315 CPack/cmCPackGeneratorFactory.cxx
316 CPack/cmCPackGenerator.cxx
318 CPack/cmCPackNSISGenerator.cxx
319 CPack/cmCPackSTGZGenerator.cxx
320 CPack/cmCPackTGZGenerator.cxx
321 CPack/cmCPackTarBZip2Generator.cxx
322 CPack/cmCPackTarCompressGenerator.cxx
323 CPack/cmCPackZIPGenerator.cxx
327 SET(CPACK_SRCS ${CPACK_SRCS}
328 CPack/cmCPackCygwinBinaryGenerator.cxx
329 CPack/cmCPackCygwinSourceGenerator.cxx
331 ENDIF(WIN32 AND UNIX)
334 SET(CPACK_SRCS ${CPACK_SRCS}
335 CPack/cmCPackDebGenerator.cxx
336 CPack/cmCPackRPMGenerator.cxx
341 SET(CPACK_SRCS ${CPACK_SRCS}
342 CPack/cmCPackOSXX11Generator.cxx
343 CPack/cmCPackPackageMakerGenerator.cxx
348 ADD_LIBRARY(CPackLib ${CPACK_SRCS})
349 TARGET_LINK_LIBRARIES(CPackLib CMakeLib)
352 ADD_EXECUTABLE(cmakexbuild cmakexbuild.cxx)
353 TARGET_LINK_LIBRARIES(cmakexbuild CMakeLib)
354 ADD_EXECUTABLE(OSXScriptLauncher
355 CPack/OSXScriptLauncher.cxx)
356 TARGET_LINK_LIBRARIES(OSXScriptLauncher cmsys)
357 TARGET_LINK_LIBRARIES(OSXScriptLauncher "-framework Carbon")
360 # Build CMake executable
361 ADD_EXECUTABLE(cmake cmakemain.cxx)
362 TARGET_LINK_LIBRARIES(cmake CMakeLib)
363 ADD_EXECUTABLE(DumpDocumentation cmDumpDocumentation)
364 TARGET_LINK_LIBRARIES(DumpDocumentation CMakeLib)
366 # Build special executable for running programs on Windows 98
369 ADD_EXECUTABLE(cmw9xcom cmw9xcom.cxx)
370 TARGET_LINK_LIBRARIES(cmw9xcom CMakeLib)
371 INSTALL_TARGETS(/bin cmw9xcom)
375 # Build CTest executable
376 ADD_EXECUTABLE(ctest ctest.cxx)
377 TARGET_LINK_LIBRARIES(ctest CTestLib)
379 # Build CPack executable
380 ADD_EXECUTABLE(cpack CPack/cpack.cxx)
381 TARGET_LINK_LIBRARIES(cpack CPackLib)
384 IF(BUILD_CursesDialog)
385 INCLUDE(${CMake_SOURCE_DIR}/Source/CursesDialog/CMakeLists.txt)
386 ENDIF(BUILD_CursesDialog)
389 # MFC libraries are only available on Visual Studio
392 ENDIF(BUILD_MFCDialog)
395 OPTION(BUILD_QtDialog "Build Qt dialog for CMake" FALSE)
398 ENDIF(BUILD_QtDialog)
401 OPTION(BUILD_WXDialog "Build wxWidgets dialog for CMake" FALSE)
402 MARK_AS_ADVANCED(BUILD_WXDialog)
405 ENDIF(BUILD_WXDialog)
407 # FLTK GUI, needs some work: generator selection, paths with spaces, ...
408 # OPTION(BUILD_FLTKDialog "Build FLTK dialog for CMake" FALSE)
409 # MARK_AS_ADVANCED(BUILD_FLTKDialog)
410 # IF(BUILD_FLTKDialog)
411 # SUBDIRS(FLTKDialog)
412 # ENDIF(BUILD_FLTKDialog)
414 INCLUDE (${CMAKE_BINARY_DIR}/Source/LocalUserOptions.cmake OPTIONAL)
415 INCLUDE (${CMAKE_SOURCE_DIR}/Source/LocalUserOptions.cmake OPTIONAL)
417 INSTALL_TARGETS(/bin cmake)
418 INSTALL_TARGETS(/bin ctest)
419 INSTALL_TARGETS(/bin cpack)
421 INSTALL_TARGETS(/bin cmakexbuild)
424 INSTALL_FILES(${CMAKE_DATA_DIR}/include cmCPluginAPI.h)