CMAKE_MINIMUM_REQUIRED(VERSION 1.3) SET(SRCS cmake.cxx cmakewizard.cxx cmMakeDepend.cxx cmMakefile.cxx cmRegularExpression.cxx cmSourceFile.cxx cmSystemTools.cxx cmDirectory.cxx cmDynamicLoader.cxx cmCommands.cxx cmTarget.cxx cmCustomCommand.cxx cmCacheManager.cxx cmSourceGroup.cxx cmListFileCache.cxx cmGlobalGenerator.cxx cmGlobalUnixMakefileGenerator.cxx cmGlobalCodeWarriorGenerator.cxx cmLocalGenerator.cxx cmLocalUnixMakefileGenerator.cxx cmLocalCodeWarriorGenerator.cxx cmake.h cmakewizard.h cmMakeDepend.h cmMakefile.h cmRegularExpression.h cmSourceFile.h cmSystemTools.h cmDynamicLoader.h cmDirectory.h cmCommands.h cmTarget.h cmCustomCommand.h cmCacheManager.h cmSourceGroup.h cmListFileCache.h cmGlobalGenerator.h cmGlobalUnixMakefileGenerator.h cmGlobalCodeWarriorGenerator.h cmLocalGenerator.h cmLocalUnixMakefileGenerator.h cmLocalCodeWarriorGenerator.h ) # configure the .h file CONFIGURE_FILE( ${CMake_SOURCE_DIR}/Source/cmConfigure.cmake.h.in ${CMake_BINARY_DIR}/Source/cmConfigure.h ) # add the include path to find the .h INCLUDE_DIRECTORIES(${CMake_BINARY_DIR}/Source) INCLUDE_DIRECTORIES(${CMake_SOURCE_DIR}/Source) # let cmake know it is supposed to use it ADD_DEFINITIONS(-DCMAKE_BUILD_WITH_CMAKE) IF (WIN32) IF(NOT UNIX) SET(SRCS ${SRCS} cmGlobalBorlandMakefileGenerator.cxx cmGlobalNMakeMakefileGenerator.cxx cmGlobalVisualStudio6Generator.cxx cmLocalVisualStudio6Generator.cxx cmGlobalVisualStudio7Generator.cxx cmLocalVisualStudio7Generator.cxx cmGlobalBorlandMakefileGenerator.h cmLocalBorlandMakefileGenerator.h cmGlobalNMakeMakefileGenerator.h cmLocalNMakeMakefileGenerator.h cmGlobalVisualStudio6Generator.h cmLocalVisualStudio6Generator.h cmGlobalVisualStudio7Generator.h cmLocalVisualStudio7Generator.h cmWin32ProcessExecution.cxx cmWin32ProcessExecution.h ) IF( NOT BORLAND ) LINK_LIBRARIES( rpcrt4.lib ) ADD_EXECUTABLE(cmw9xcom cmw9xcom.cxx) TARGET_LINK_LIBRARIES(cmw9xcom CMakeLib) SUBDIRS(MFCDialog) ENDIF( NOT BORLAND ) ENDIF(NOT UNIX) ENDIF (WIN32) # create a library used by the command line and the GUI ADD_LIBRARY(CMakeLib ${SRCS}) # always link in the library # the library is found here LINK_DIRECTORIES(${CMake_BINARY_DIR}/Source) ADD_EXECUTABLE(cmake cmakemain.cxx) ADD_EXECUTABLE(DumpDocumentation cmDumpDocumentation) ADD_EXECUTABLE(ctest ctest.cxx) IF (UNIX) TARGET_LINK_LIBRARIES(CMakeLib ${CMAKE_DL_LIBS}) ENDIF (UNIX) TARGET_LINK_LIBRARIES(cmake CMakeLib) TARGET_LINK_LIBRARIES(DumpDocumentation CMakeLib) TARGET_LINK_LIBRARIES(ctest CMakeLib) IF (UNIX) INCLUDE (${CMake_SOURCE_DIR}/Modules/FindCurses.cmake OPTIONAL) IF (CURSES_LIBRARY) SUBDIRS(CursesDialog/form) INCLUDE(${CMake_SOURCE_DIR}/Source/CursesDialog/CMakeLists.txt) ENDIF (CURSES_LIBRARY) ENDIF (UNIX) OPTION(CMAKE_BUILD_WX_DIALOG "Build wxWindows dialog for CMake" FALSE) MARK_AS_ADVANCED(CMAKE_BUILD_WX_DIALOG) IF(CMAKE_BUILD_WX_DIALOG) SUBDIRS(WXDialog) ENDIF(CMAKE_BUILD_WX_DIALOG) IF (NOT DART_ROOT) SET(MAKEPROGRAM ${CMAKE_MAKE_PROGRAM}) ENDIF (NOT DART_ROOT) CONFIGURE_FILE( ${CMake_SOURCE_DIR}/Source/cmaketest.h.in ${CMake_BINARY_DIR}/Source/cmaketest.h ESCAPE_QUOTES) ADD_EXECUTABLE(cmaketest cmaketest.cxx) TARGET_LINK_LIBRARIES(cmaketest CMakeLib) IF(BUILD_TESTING) ADD_TEST(DumpDocumentation ${CMake_BINARY_DIR}/Source/DumpDocumentation ${CMake_BINARY_DIR}/CMakeDoc.html) ADD_TEST(SystemInformation ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/SystemInformation ${CMake_BINARY_DIR}/Tests/SystemInformation DumpInformation) ADD_TEST(simple ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/Simple ${CMake_BINARY_DIR}/Tests/Simple simple) ADD_TEST(conly ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/COnly ${CMake_BINARY_DIR}/Tests/COnly conly) ADD_TEST(X11 ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/X11 ${CMake_BINARY_DIR}/Tests/X11 X11) ADD_TEST(LoadedCommand ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/LoadCommand ${CMake_BINARY_DIR}/Tests/LoadCommand LoadedCommand) ADD_TEST(complex ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/Complex ${CMake_BINARY_DIR}/Tests/Complex complex ${CMake_BINARY_DIR}/Tests/Complex/bin) ADD_TEST(Example ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Example ${CMake_BINARY_DIR}/Example helloDemo ${CMake_BINARY_DIR}/Example/Demo HELLO) ADD_TEST(testing ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/Testing ${CMake_BINARY_DIR}/Tests/Testing testing ${CMake_BINARY_DIR}/Tests/Testing/bin) ADD_TEST(wrapping ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/Wrapping ${CMake_BINARY_DIR}/Tests/Wrapping wrapping ${CMake_BINARY_DIR}/Tests/Wrapping/bin) INCLUDE ( ${CMAKE_ROOT}/Modules/FindQt.cmake ) MARK_AS_ADVANCED( QT_INCLUDE_PATH QT_MOC_EXE QT_QT_LIBRARY QT_UIC_EXE) IF (QT_FOUND) ADD_TEST(qtwrapping ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/Wrapping ${CMake_BINARY_DIR}/Tests/Wrapping qtwrapping ${CMake_BINARY_DIR}/Tests/Wrapping/bin) ENDIF (QT_FOUND) ADD_TEST(testdriver1 ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/TestDriver ${CMake_BINARY_DIR}/Tests/TestDriver TestDriverTest ${CMake_BINARY_DIR}/Tests/Wrapping/bin TestDriverTest test1) ADD_TEST(testdriver2 ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/TestDriver ${CMake_BINARY_DIR}/Tests/TestDriver TestDriverTest ${CMake_BINARY_DIR}/Tests/Wrapping/bin TestDriverTest test2) ADD_TEST(testdriver3 ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/TestDriver ${CMake_BINARY_DIR}/Tests/TestDriver TestDriverTest ${CMake_BINARY_DIR}/Tests/Wrapping/bin TestDriverTest subdir/test3) ADD_TEST(dependency_w_libout ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/Dependency ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut exec ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec Dependency CMAKE_ARGS -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib) ADD_TEST(dependency_wo_lib_out ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/Dependency ${CMake_BINARY_DIR}/Tests/Dependency/WOLibOut exec ${CMake_BINARY_DIR}/Tests/Dependency/WOLibOut/Exec Dependency) ADD_TEST(dependency2 ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/Dependency ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut exec2 ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec2 Dependency CMAKE_ARGS -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib) ADD_TEST(dependency3 ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/Dependency ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut exec3 ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec3 Dependency CMAKE_ARGS -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib) ADD_TEST(dependency4 ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/Dependency ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut exec4 ${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec4 Dependency CMAKE_ARGS -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib) ADD_TEST(linkline ${CMake_BINARY_DIR}/Source/cmaketest ${CMake_SOURCE_DIR}/Tests/LinkLine ${CMake_BINARY_DIR}/Tests/LinkLine Exec ${CMake_BINARY_DIR}/Tests/LinkLine LinkLine) ENDIF(BUILD_TESTING) INCLUDE (${CMAKE_BINARY_DIR}/Source/LocalUserOptions.cmake OPTIONAL) INCLUDE (${CMAKE_SOURCE_DIR}/Source/LocalUserOptions.cmake OPTIONAL) INSTALL_TARGETS(/bin cmake) INSTALL_TARGETS(/bin ctest) INSTALL_TARGETS(/bin cmaketest)