CMakeLists.txt 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  1. CMAKE_MINIMUM_REQUIRED(VERSION 1.3)
  2. SET(SRCS
  3. cmake.cxx
  4. cmakewizard.cxx
  5. cmMakeDepend.cxx
  6. cmMakefile.cxx
  7. cmMakefileGenerator.cxx
  8. cmRegularExpression.cxx
  9. cmSourceFile.cxx
  10. cmSystemTools.cxx
  11. cmDirectory.cxx
  12. cmCommands.cxx
  13. cmTarget.cxx
  14. cmCustomCommand.cxx
  15. cmCacheManager.cxx
  16. cmSourceGroup.cxx
  17. cmListFileCache.cxx
  18. cmake.h
  19. cmakewizard.h
  20. cmMakeDepend.h
  21. cmMakefile.h
  22. cmMakefileGenerator.h
  23. cmRegularExpression.h
  24. cmSourceFile.h
  25. cmSystemTools.h
  26. cmDirectory.h
  27. cmCommands.h
  28. cmTarget.h
  29. cmCustomCommand.h
  30. cmCacheManager.h
  31. cmSourceGroup.h
  32. cmListFileCache.h
  33. )
  34. # configure the .h file
  35. CONFIGURE_FILE(
  36. ${CMake_SOURCE_DIR}/Source/cmConfigure.cmake.h.in
  37. ${CMake_BINARY_DIR}/Source/cmConfigure.h )
  38. # add the include path to find the .h
  39. INCLUDE_DIRECTORIES(${CMake_BINARY_DIR}/Source)
  40. INCLUDE_DIRECTORIES(${CMake_SOURCE_DIR}/Source)
  41. # let cmake know it is supposed to use it
  42. ADD_DEFINITIONS(-DCMAKE_BUILD_WITH_CMAKE)
  43. IF (WIN32)
  44. SET(SRCS ${SRCS}
  45. cmDSWWriter.cxx
  46. cmDSPWriter.cxx
  47. cmMSProjectGenerator.cxx
  48. cmBorlandMakefileGenerator.cxx
  49. cmNMakeMakefileGenerator.cxx
  50. cmMSDotNETGenerator.cxx
  51. cmDSWWriter.h
  52. cmDSPWriter.h
  53. cmMSProjectGenerator.h
  54. cmBorlandMakefileGenerator.h
  55. cmNMakeMakefileGenerator.h
  56. cmMSDotNETGenerator.h
  57. )
  58. IF(NOT UNIX)
  59. IF( NOT BORLAND )
  60. LINK_LIBRARIES( rpcrt4.lib )
  61. SUBDIRS(MFCDialog)
  62. ENDIF( NOT BORLAND )
  63. ENDIF(NOT UNIX)
  64. ENDIF (WIN32)
  65. SET(SRCS ${SRCS} cmUnixMakefileGenerator.cxx cmUnixMakefileGenerator.h)
  66. # create a library used by the command line and the GUI
  67. ADD_LIBRARY(CMakeLib ${SRCS})
  68. # always link in the library
  69. LINK_LIBRARIES(CMakeLib)
  70. # the library is found here
  71. LINK_DIRECTORIES(${CMake_BINARY_DIR}/Source)
  72. ADD_EXECUTABLE(cmake cmakemain.cxx)
  73. ADD_EXECUTABLE(DumpDocumentation cmDumpDocumentation)
  74. ADD_EXECUTABLE(ctest ctest.cxx cmSystemTools.cxx cmRegularExpression.cxx)
  75. IF (UNIX)
  76. INCLUDE (${CMake_SOURCE_DIR}/Modules/FindCurses.cmake OPTIONAL)
  77. IF (CURSES_LIBRARY)
  78. SUBDIRS(CursesDialog/form)
  79. INCLUDE(${CMake_SOURCE_DIR}/Source/CursesDialog/CMakeLists.txt)
  80. ENDIF (CURSES_LIBRARY)
  81. ENDIF (UNIX)
  82. IF (NOT DART_ROOT)
  83. SET(MAKEPROGRAM ${CMAKE_MAKE_PROGRAM})
  84. ENDIF (NOT DART_ROOT)
  85. CONFIGURE_FILE(
  86. ${CMake_SOURCE_DIR}/Source/cmaketest.h.in
  87. ${CMake_BINARY_DIR}/Source/cmaketest.h ESCAPE_QUOTES)
  88. ADD_EXECUTABLE(cmaketest cmaketest.cxx cmSystemTools.cxx)
  89. IF(BUILD_TESTING)
  90. ADD_TEST(DumpDocumentation ${CMake_BINARY_DIR}/Source/DumpDocumentation
  91. ${CMake_BINARY_DIR}/CMakeDoc.html)
  92. ADD_TEST(simple ${CMake_BINARY_DIR}/Source/cmaketest
  93. ${CMake_SOURCE_DIR}/Tests/Simple
  94. ${CMake_BINARY_DIR}/Tests/Simple
  95. simple)
  96. ADD_TEST(conly ${CMake_BINARY_DIR}/Source/cmaketest
  97. ${CMake_SOURCE_DIR}/Tests/COnly
  98. ${CMake_BINARY_DIR}/Tests/COnly
  99. conly)
  100. ADD_TEST(complex ${CMake_BINARY_DIR}/Source/cmaketest
  101. ${CMake_SOURCE_DIR}/Tests/Complex
  102. ${CMake_BINARY_DIR}/Tests/Complex
  103. complex
  104. ${CMake_BINARY_DIR}/Tests/Complex/bin)
  105. ADD_TEST(Example ${CMake_BINARY_DIR}/Source/cmaketest
  106. ${CMake_SOURCE_DIR}/Example
  107. ${CMake_BINARY_DIR}/Example
  108. helloDemo
  109. ${CMake_BINARY_DIR}/Example/Demo
  110. HELLO)
  111. ADD_TEST(testing ${CMake_BINARY_DIR}/Source/cmaketest
  112. ${CMake_SOURCE_DIR}/Tests/Testing
  113. ${CMake_BINARY_DIR}/Tests/Testing
  114. testing
  115. ${CMake_BINARY_DIR}/Tests/Testing/bin)
  116. ADD_TEST(wrapping ${CMake_BINARY_DIR}/Source/cmaketest
  117. ${CMake_SOURCE_DIR}/Tests/Wrapping
  118. ${CMake_BINARY_DIR}/Tests/Wrapping
  119. wrapping
  120. ${CMake_BINARY_DIR}/Tests/Wrapping/bin)
  121. ADD_TEST(testdriver1 ${CMake_BINARY_DIR}/Source/cmaketest
  122. ${CMake_SOURCE_DIR}/Tests/TestDriver
  123. ${CMake_BINARY_DIR}/Tests/TestDriver
  124. TestDriverTest
  125. ${CMake_BINARY_DIR}/Tests/Wrapping/bin
  126. TestDriverTest test1)
  127. ADD_TEST(testdriver2 ${CMake_BINARY_DIR}/Source/cmaketest
  128. ${CMake_SOURCE_DIR}/Tests/TestDriver
  129. ${CMake_BINARY_DIR}/Tests/TestDriver
  130. TestDriverTest
  131. ${CMake_BINARY_DIR}/Tests/Wrapping/bin
  132. TestDriverTest test2)
  133. ADD_TEST(testdriver3 ${CMake_BINARY_DIR}/Source/cmaketest
  134. ${CMake_SOURCE_DIR}/Tests/TestDriver
  135. ${CMake_BINARY_DIR}/Tests/TestDriver
  136. TestDriverTest
  137. ${CMake_BINARY_DIR}/Tests/Wrapping/bin
  138. TestDriverTest subdir/test3)
  139. ADD_TEST(dependency_w_libout ${CMake_BINARY_DIR}/Source/cmaketest
  140. ${CMake_SOURCE_DIR}/Tests/Dependency
  141. ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut
  142. exec
  143. ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec
  144. Dependency CMAKE_ARGS -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib)
  145. ADD_TEST(dependency_wo_lib_out ${CMake_BINARY_DIR}/Source/cmaketest
  146. ${CMake_SOURCE_DIR}/Tests/Dependency
  147. ${CMake_BINARY_DIR}/Tests/Dependency/WOLibOut
  148. exec
  149. ${CMake_BINARY_DIR}/Tests/Dependency/WOLibOut/Exec
  150. Dependency)
  151. ADD_TEST(dependency2 ${CMake_BINARY_DIR}/Source/cmaketest
  152. ${CMake_SOURCE_DIR}/Tests/Dependency
  153. ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut
  154. exec2
  155. ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec2
  156. Dependency CMAKE_ARGS -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib)
  157. ADD_TEST(dependency3 ${CMake_BINARY_DIR}/Source/cmaketest
  158. ${CMake_SOURCE_DIR}/Tests/Dependency
  159. ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut
  160. exec3
  161. ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec3
  162. Dependency CMAKE_ARGS -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib)
  163. ADD_TEST(dependency4 ${CMake_BINARY_DIR}/Source/cmaketest
  164. ${CMake_SOURCE_DIR}/Tests/Dependency
  165. ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut
  166. exec4
  167. ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec4
  168. Dependency CMAKE_ARGS -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib)
  169. ADD_TEST(linkline ${CMake_BINARY_DIR}/Source/cmaketest
  170. ${CMake_SOURCE_DIR}/Tests/LinkLine
  171. ${CMake_BINARY_DIR}/Tests/LinkLine
  172. Exec
  173. ${CMake_BINARY_DIR}/Tests/LinkLine
  174. LinkLine)
  175. ENDIF (DART_ROOT)
  176. ENDIF(BUILD_TESTING)
  177. INCLUDE (${CMAKE_BINARY_DIR}/Source/LocalUserOptions.cmake OPTIONAL)
  178. INCLUDE (${CMAKE_SOURCE_DIR}/Source/LocalUserOptions.cmake OPTIONAL)
  179. INSTALL_TARGETS(/bin cmake)
  180. INSTALL_TARGETS(/bin ctest)
  181. INSTALL_TARGETS(/bin cmaketest)