summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKen Martin <ken.martin@kitware.com>2007-05-11 13:02:17 (GMT)
committerKen Martin <ken.martin@kitware.com>2007-05-11 13:02:17 (GMT)
commit0f0a83a51f8f05636fe33d17d4f21c92e42a06d8 (patch)
tree719769a0daaa53f7d8307ca086beda7eb237c13b
parentcd0cd47416ef05f1d447885e960062ac8cbc83c1 (diff)
downloadCMake-0f0a83a51f8f05636fe33d17d4f21c92e42a06d8.zip
CMake-0f0a83a51f8f05636fe33d17d4f21c92e42a06d8.tar.gz
CMake-0f0a83a51f8f05636fe33d17d4f21c92e42a06d8.tar.bz2
ENH: more cleanup of some CMakeLists files
-rw-r--r--CMakeLists.txt675
-rw-r--r--Source/CMakeLists.txt952
-rw-r--r--Tests/CMakeLists.txt949
3 files changed, 1317 insertions, 1259 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d1a3d43..4c027b6 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -2,6 +2,341 @@ PROJECT(CMake)
CMAKE_MINIMUM_REQUIRED(VERSION 2.0)
MARK_AS_ADVANCED(CMAKE_BACKWARDS_COMPATIBILITY)
+
+
+#-----------------------------------------------------------------------
+# a macro to deal with system libraries, implemented as a macro
+# simply to improve readability of the main script
+#-----------------------------------------------------------------------
+MACRO(CMAKE_HANDLE_SYSTEM_LIBRARIES)
+ # Third party libraries must be something that can be found.
+ IF(EXISTS ${CMAKE_ROOT}/Modules/FindXMLRPC.cmake)
+ SET(CMAKE_ALLOW_SYSTEM_LIBRARIES 1)
+ ELSE(EXISTS ${CMAKE_ROOT}/Modules/FindXMLRPC.cmake)
+ SET(CMAKE_ALLOW_SYSTEM_LIBRARIES 0)
+ ENDIF(EXISTS ${CMAKE_ROOT}/Modules/FindXMLRPC.cmake)
+
+ IF(CMAKE_ALLOW_SYSTEM_LIBRARIES)
+ # Options have dependencies.
+ INCLUDE(CMakeDependentOption)
+
+ # Allow the user to enable/disable all system utility library options
+ # by setting CMAKE_USE_SYSTEM_LIBRARIES on the command line.
+ IF(DEFINED CMAKE_USE_SYSTEM_LIBRARIES)
+ SET(CMAKE_USE_SYSTEM_LIBRARIES_USER 1)
+ ENDIF(DEFINED CMAKE_USE_SYSTEM_LIBRARIES)
+ IF(CMAKE_USE_SYSTEM_LIBRARIES)
+ SET(CMAKE_USE_SYSTEM_LIBRARIES ON)
+ ELSE(CMAKE_USE_SYSTEM_LIBRARIES)
+ SET(CMAKE_USE_SYSTEM_LIBRARIES OFF)
+ ENDIF(CMAKE_USE_SYSTEM_LIBRARIES)
+ IF(CMAKE_USE_SYSTEM_LIBRARIES_USER)
+ SET(CMAKE_USE_SYSTEM_CURL "${CMAKE_USE_SYSTEM_LIBRARIES}"
+ CACHE BOOL "Use system-installed curl" FORCE)
+ SET(CMAKE_USE_SYSTEM_EXPAT "${CMAKE_USE_SYSTEM_LIBRARIES}"
+ CACHE BOOL "Use system-installed expat" FORCE)
+ SET(CMAKE_USE_SYSTEM_XMLRPC "${CMAKE_USE_SYSTEM_LIBRARIES}"
+ CACHE BOOL "Use system-installed xmlrpc" FORCE)
+ SET(CMAKE_USE_SYSTEM_ZLIB "${CMAKE_USE_SYSTEM_LIBRARIES}"
+ CACHE BOOL "Use system-installed zlib" FORCE)
+ ENDIF(CMAKE_USE_SYSTEM_LIBRARIES_USER)
+
+ # Optionally use system utility libraries.
+ OPTION(CMAKE_USE_SYSTEM_CURL "Use system-installed curl"
+ ${CMAKE_USE_SYSTEM_LIBRARIES})
+ OPTION(CMAKE_USE_SYSTEM_XMLRPC "Use system-installed xmlrpc"
+ ${CMAKE_USE_SYSTEM_LIBRARIES})
+ CMAKE_DEPENDENT_OPTION(CMAKE_USE_SYSTEM_EXPAT "Use system-installed expat"
+ ${CMAKE_USE_SYSTEM_LIBRARIES} "NOT CMAKE_USE_SYSTEM_XMLRPC" ON)
+ CMAKE_DEPENDENT_OPTION(CMAKE_USE_SYSTEM_ZLIB "Use system-installed zlib"
+ ${CMAKE_USE_SYSTEM_LIBRARIES} "NOT CMAKE_USE_SYSTEM_CURL" ON)
+
+ # There is currently no option for system tar because the upstream
+ # libtar does not have our modifications to allow reentrant
+ # object-oriented use of the library.
+ # OPTION(CMAKE_USE_SYSTEM_TAR "Use system-installed tar" OFF)
+ ELSE(CMAKE_ALLOW_SYSTEM_LIBRARIES)
+ SET(CMAKE_USE_SYSTEM_CURL 0)
+ SET(CMAKE_USE_SYSTEM_EXPAT 0)
+ SET(CMAKE_USE_SYSTEM_XMLRPC 0)
+ SET(CMAKE_USE_SYSTEM_ZLIB 0)
+ ENDIF(CMAKE_ALLOW_SYSTEM_LIBRARIES)
+
+
+ # Mention to the user what system libraries are being used.
+ FOREACH(util CURL EXPAT XMLRPC ZLIB)
+ IF(CMAKE_USE_SYSTEM_${util})
+ MESSAGE(STATUS "Using system-installed ${util}")
+ ENDIF(CMAKE_USE_SYSTEM_${util})
+ ENDFOREACH(util)
+
+ # Inform utility library header wrappers whether to use system versions.
+ CONFIGURE_FILE(${CMake_SOURCE_DIR}/Utilities/cmThirdParty.h.in
+ ${CMake_BINARY_DIR}/Utilities/cmThirdParty.h
+ @ONLY)
+
+ENDMACRO(CMAKE_HANDLE_SYSTEM_LIBRARIES)
+
+
+
+#-----------------------------------------------------------------------
+# a macro to check for MFC and setup to build the MFC Dialog
+# simply to improve readability of the main script
+#-----------------------------------------------------------------------
+MACRO(CMAKE_TEST_FOR_MFC)
+ SET(CMAKE_BUILD_ON_VISUAL_STUDIO 0)
+ IF(WIN32 AND NOT UNIX AND NOT BORLAND AND NOT MINGW )
+ SET(CMAKE_BUILD_ON_VISUAL_STUDIO 1)
+ ENDIF(WIN32 AND NOT UNIX AND NOT BORLAND AND NOT MINGW )
+
+ IF(CMAKE_BUILD_ON_VISUAL_STUDIO)
+ IF("CMake_HAVE_MFC" MATCHES "^CMake_HAVE_MFC$")
+ SET(CHECK_INCLUDE_FILE_VAR "afxwin.h")
+ CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CheckIncludeFile.cxx.in
+ ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckIncludeFile.cxx)
+ MESSAGE(STATUS "Looking for MFC")
+ TRY_COMPILE(CMake_HAVE_MFC
+ ${CMAKE_BINARY_DIR}
+ ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckIncludeFile.cxx
+ CMAKE_FLAGS
+ -DCMAKE_MFC_FLAG:STRING=2
+ -DCOMPILE_DEFINITIONS:STRING=-D_AFXDLL
+ OUTPUT_VARIABLE OUTPUT)
+ IF(CMake_HAVE_MFC)
+ MESSAGE(STATUS "Looking for MFC - found")
+ SET(CMake_HAVE_MFC 1 CACHE INTERNAL "Have MFC?")
+ FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
+ "Determining if MFC exists passed with the following output:\n"
+ "${OUTPUT}\n\n")
+ ELSE(CMake_HAVE_MFC)
+ MESSAGE(STATUS "Looking for MFC - not found")
+ SET(CMake_HAVE_MFC 0 CACHE INTERNAL "Have MFC?")
+ FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
+ "Determining if MFC exists failed with the following output:\n"
+ "${OUTPUT}\n\n")
+ ENDIF(CMake_HAVE_MFC)
+ ENDIF("CMake_HAVE_MFC" MATCHES "^CMake_HAVE_MFC$")
+
+ IF(CMake_HAVE_MFC)
+ OPTION(BUILD_MFCDialog "Whether to build the CMakeSetup MFC dialog." ON)
+ ELSE(CMake_HAVE_MFC)
+ SET(BUILD_MFCDialog 0)
+ ENDIF(CMake_HAVE_MFC)
+ ELSE(CMAKE_BUILD_ON_VISUAL_STUDIO)
+ SET(BUILD_MFCDialog 0)
+ ENDIF(CMAKE_BUILD_ON_VISUAL_STUDIO)
+ENDMACRO(CMAKE_TEST_FOR_MFC)
+
+
+
+#-----------------------------------------------------------------------
+# a macro to determine the generator and ctest executable to use
+# for testing. Simply to improve readability of the main script.
+#-----------------------------------------------------------------------
+MACRO(CMAKE_SETUP_TESTING)
+ IF (NOT DART_ROOT)
+ SET(MAKEPROGRAM ${CMAKE_MAKE_PROGRAM})
+ ENDIF (NOT DART_ROOT)
+
+ IF(BUILD_TESTING)
+ SET(CMAKE_TEST_GENERATOR "" CACHE STRING
+ "Generator used when running tests")
+ SET(CMAKE_TEST_MAKEPROGRAM "" CACHE FILEPATH
+ "Generator used when running tests")
+ IF(NOT CMAKE_TEST_GENERATOR)
+ SET(CMAKE_TEST_GENERATOR "${CMAKE_GENERATOR}")
+ SET(CMAKE_TEST_MAKEPROGRAM "${MAKEPROGRAM}")
+ ELSE(NOT CMAKE_TEST_GENERATOR)
+ SET(CMAKE_TEST_DIFFERENT_GENERATOR TRUE)
+ ENDIF(NOT CMAKE_TEST_GENERATOR)
+
+ # Are we testing with the MSVC compiler?
+ SET(CMAKE_TEST_MSVC 0)
+ IF(MSVC AND NOT CMAKE_TEST_DIFFERENT_GENERATOR)
+ SET(CMAKE_TEST_MSVC 1)
+ ELSE(MSVC AND NOT CMAKE_TEST_DIFFERENT_GENERATOR)
+ IF("${CMAKE_TEST_GENERATOR}" MATCHES "NMake" OR
+ "${CMAKE_TEST_GENERATOR}" MATCHES "Visual Studio")
+ SET(CMAKE_TEST_MSVC 1)
+ ENDIF("${CMAKE_TEST_GENERATOR}" MATCHES "NMake" OR
+ "${CMAKE_TEST_GENERATOR}" MATCHES "Visual Studio")
+ ENDIF(MSVC AND NOT CMAKE_TEST_DIFFERENT_GENERATOR)
+
+ SET(CMAKE_TEST_SYSTEM_LIBRARIES 0)
+ FOREACH(util CURL EXPAT XMLRPC ZLIB)
+ IF(CMAKE_USE_SYSTEM_${util})
+ SET(CMAKE_TEST_SYSTEM_LIBRARIES 1)
+ ENDIF(CMAKE_USE_SYSTEM_${util})
+ ENDFOREACH(util)
+
+ # This variable is set by cmake, however to
+ # test cmake we want to make sure that
+ # the ctest from this cmake is used for testing
+ # and not the ctest from the cmake building and testing
+ # cmake.
+ SET(CMAKE_CTEST_COMMAND "${EXECUTABLE_OUTPUT_PATH}/ctest")
+ SET(CMAKE_CMAKE_COMMAND "${EXECUTABLE_OUTPUT_PATH}/cmake")
+ ENDIF(BUILD_TESTING)
+
+ # configure some files for testing
+ CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/Templates/CTestScript.cmake.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/CTestScript.cmake"
+ @ONLY)
+ CONFIGURE_FILE(${CMake_SOURCE_DIR}/Tests/.NoDartCoverage
+ ${CMake_BINARY_DIR}/Tests/.NoDartCoverage)
+ CONFIGURE_FILE(${CMake_SOURCE_DIR}/Tests/.NoDartCoverage
+ ${CMake_BINARY_DIR}/Modules/.NoDartCoverage)
+ CONFIGURE_FILE(${CMake_SOURCE_DIR}/CTestCustom.ctest.in
+ ${CMake_BINARY_DIR}/CTestCustom.ctest @ONLY)
+ IF(BUILD_TESTING AND DART_ROOT)
+ CONFIGURE_FILE(${CMake_SOURCE_DIR}/CMakeLogo.gif
+ ${CMake_BINARY_DIR}/Testing/HTML/TestingResults/Icons/Logo.gif COPYONLY)
+ ENDIF(BUILD_TESTING AND DART_ROOT)
+ MARK_AS_ADVANCED(DART_ROOT)
+ MARK_AS_ADVANCED(CURL_TESTING)
+ENDMACRO(CMAKE_SETUP_TESTING)
+
+
+
+#-----------------------------------------------------------------------
+# a macro to build the utilities used by CMake
+# Simply to improve readability of the main script.
+#-----------------------------------------------------------------------
+MACRO (CMAKE_BUILD_UTILITIES)
+ #---------------------------------------------------------------------
+ # Create the kwsys library for CMake.
+ SET(KWSYS_NAMESPACE cmsys)
+ SET(KWSYS_USE_SystemTools 1)
+ SET(KWSYS_USE_Directory 1)
+ SET(KWSYS_USE_RegularExpression 1)
+ SET(KWSYS_USE_Base64 1)
+ SET(KWSYS_USE_MD5 1)
+ SET(KWSYS_USE_Process 1)
+ SET(KWSYS_USE_CommandLineArguments 1)
+ SET(KWSYS_HEADER_ROOT ${CMake_BINARY_DIR}/Source)
+ ADD_SUBDIRECTORY(Source/kwsys)
+
+ #---------------------------------------------------------------------
+ # Setup third-party libraries.
+ # Everything in the tree should be able to include files from the
+ # Utilities directory.
+ INCLUDE_DIRECTORIES(
+ ${CMake_SOURCE_DIR}/Utilities
+ ${CMake_BINARY_DIR}/Utilities
+ )
+
+ # check for the use of system libraries versus builtin ones
+ CMAKE_HANDLE_SYSTEM_LIBRARIES()
+
+ #---------------------------------------------------------------------
+ # Build zlib library for Curl, CMake, and CTest.
+ SET(CMAKE_ZLIB_HEADER "cm_zlib.h")
+ IF(CMAKE_USE_SYSTEM_ZLIB)
+ FIND_PACKAGE(ZLIB)
+ IF(NOT ZLIB_FOUND)
+ MESSAGE(FATAL_ERROR
+ "CMAKE_USE_SYSTEM_ZLIB is ON but a zlib is not found!")
+ ENDIF(NOT ZLIB_FOUND)
+ SET(CMAKE_ZLIB_INCLUDES ${ZLIB_INCLUDE_DIR})
+ SET(CMAKE_ZLIB_LIBRARIES ${ZLIB_LIBRARIES})
+ ELSE(CMAKE_USE_SYSTEM_ZLIB)
+ SET(CMAKE_ZLIB_INCLUDES)
+ SET(CMAKE_ZLIB_LIBRARIES cmzlib)
+ ADD_SUBDIRECTORY(Utilities/cmzlib)
+ ENDIF(CMAKE_USE_SYSTEM_ZLIB)
+
+ #---------------------------------------------------------------------
+ # Build Curl library for CTest.
+ IF(CMAKE_USE_SYSTEM_CURL)
+ FIND_PACKAGE(CURL)
+ IF(NOT CURL_FOUND)
+ MESSAGE(FATAL_ERROR
+ "CMAKE_USE_SYSTEM_CURL is ON but a curl is not found!")
+ ENDIF(NOT CURL_FOUND)
+ SET(CMAKE_CURL_INCLUDES ${CURL_INCLUDE_DIRS})
+ SET(CMAKE_CURL_LIBRARIES ${CURL_LIBRARIES})
+ ELSE(CMAKE_USE_SYSTEM_CURL)
+ SET(CURL_SPECIAL_ZLIB_H ${CMAKE_ZLIB_HEADER})
+ SET(CURL_SPECIAL_LIBZ_INCLUDES ${CMAKE_ZLIB_INCLUDES})
+ SET(CURL_SPECIAL_LIBZ ${CMAKE_ZLIB_LIBRARIES})
+ ADD_DEFINITIONS(-DCURL_STATICLIB)
+ SET(CMAKE_CURL_INCLUDES)
+ SET(CMAKE_CURL_LIBRARIES cmcurl)
+ ADD_SUBDIRECTORY(Utilities/cmcurl)
+ ENDIF(CMAKE_USE_SYSTEM_CURL)
+
+ #---------------------------------------------------------------------
+ # Build Tar library for CTest.
+ SET(CMTAR_ZLIB_HEADER ${CMAKE_ZLIB_HEADER})
+ SET(CMTAR_ZLIB_LIBRARIES ${CMAKE_ZLIB_LIBRARIES})
+ SET(CMTAR_ZLIB_INCLUDE_DIRS ${CMAKE_ZLIB_INCLUDES})
+ SET(CMAKE_TAR_INCLUDES ${CMAKE_CURRENT_BINARY_DIR}/Utilities/cmtar)
+ SET(CMAKE_TAR_LIBRARIES cmtar)
+ ADD_SUBDIRECTORY(Utilities/cmtar)
+
+ #---------------------------------------------------------------------
+ # Build Compress library for CTest.
+ SET(CMAKE_COMPRESS_INCLUDES
+ "${CMAKE_CURRENT_BINARY_DIR}/Utilities/cmcompress")
+ SET(CMAKE_COMPRESS_LIBRARIES "cmcompress")
+ ADD_SUBDIRECTORY(Utilities/cmcompress)
+
+ #---------------------------------------------------------------------
+ # Build expat library for CMake and CTest.
+ IF(CMAKE_USE_SYSTEM_EXPAT)
+ FIND_PACKAGE(EXPAT)
+ IF(NOT EXPAT_FOUND)
+ MESSAGE(FATAL_ERROR
+ "CMAKE_USE_SYSTEM_EXPAT is ON but a expat is not found!")
+ ENDIF(NOT EXPAT_FOUND)
+ SET(CMAKE_EXPAT_INCLUDES ${EXPAT_INCLUDE_DIRS})
+ SET(CMAKE_EXPAT_LIBRARIES ${EXPAT_LIBRARIES})
+ ELSE(CMAKE_USE_SYSTEM_EXPAT)
+ SET(CMAKE_EXPAT_INCLUDES)
+ SET(CMAKE_EXPAT_LIBRARIES cmexpat)
+ ADD_SUBDIRECTORY(Utilities/cmexpat)
+ ENDIF(CMAKE_USE_SYSTEM_EXPAT)
+
+ #---------------------------------------------------------------------
+ # Build XMLRPC library for CMake and CTest.
+ IF(CMAKE_USE_SYSTEM_XMLRPC)
+ FIND_PACKAGE(XMLRPC QUIET REQUIRED libwww-client)
+ IF(NOT XMLRPC_FOUND)
+ MESSAGE(FATAL_ERROR
+ "CMAKE_USE_SYSTEM_XMLRPC is ON but a xmlrpc is not found!")
+ ENDIF(NOT XMLRPC_FOUND)
+ SET(CMAKE_XMLRPC_INCLUDES ${XMLRPC_INCLUDE_DIRS})
+ SET(CMAKE_XMLRPC_LIBRARIES ${XMLRPC_LIBRARIES})
+ ELSE(CMAKE_USE_SYSTEM_XMLRPC)
+ SET(CMAKE_XMLRPC_INCLUDES)
+ SET(CMAKE_XMLRPC_LIBRARIES cmXMLRPC)
+ ADD_SUBDIRECTORY(Utilities/cmxmlrpc)
+ ENDIF(CMAKE_USE_SYSTEM_XMLRPC)
+
+ #---------------------------------------------------------------------
+ # Use curses?
+ IF (UNIX)
+ FIND_PACKAGE(Curses QUIET)
+ IF (CURSES_LIBRARY)
+ OPTION(BUILD_CursesDialog "Build the CMake Curses Dialog ccmake" ON)
+ ELSE (CURSES_LIBRARY)
+ MESSAGE("Curses libraries were not found. Curses GUI for CMake will not be built.")
+ SET(BUILD_CursesDialog 0)
+ ENDIF (CURSES_LIBRARY)
+ ELSE (UNIX)
+ SET(BUILD_CursesDialog 0)
+ ENDIF (UNIX)
+ IF(BUILD_CursesDialog)
+ ADD_SUBDIRECTORY(Source/CursesDialog/form)
+ ENDIF(BUILD_CursesDialog)
+ENDMACRO (CMAKE_BUILD_UTILITIES)
+
+
+
+#-----------------------------------------------------------------------
+# The main section of the CMakeLists file
+#
+#-----------------------------------------------------------------------
# The CMake version number.
SET(CMake_VERSION_MAJOR 2)
SET(CMake_VERSION_MINOR 5)
@@ -9,7 +344,17 @@ SET(CMake_VERSION_PATCH 0)
SET(CMake_VERSION "${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}")
SET(CMake_VERSION_FULL "${CMake_VERSION}.${CMake_VERSION_PATCH}")
+# Include the standard Dart testing module
+ENABLE_TESTING()
+INCLUDE (${CMAKE_ROOT}/Modules/Dart.cmake)
+
+# where to write the resulting executables and libraries
SET(BUILD_SHARED_LIBS OFF)
+SET(EXECUTABLE_OUTPUT_PATH ${CMake_BINARY_DIR}/bin CACHE INTERNAL
+ "Where to put the executables for CMake")
+SET(LIBRARY_OUTPUT_PATH "" CACHE INTERNAL
+ "Where to put the libraries for CMake")
+INCLUDE_REGULAR_EXPRESSION("^.*$")
# The CMake executables do not need any rpath to run in the build or
# install tree.
@@ -23,331 +368,47 @@ SET(CMAKE_MAN_DIR "/man" CACHE STRING
"Install location for man pages (relative to prefix).")
MARK_AS_ADVANCED(CMAKE_DATA_DIR CMAKE_DOC_DIR CMAKE_MAN_DIR)
-# include special compile flags for osme compilers
+# include special compile flags for some compilers
INCLUDE(CompileFlags.cmake)
-#-----------------------------------------------------------------------------
-# Create the kwsys library for CMake.
-SET(KWSYS_NAMESPACE cmsys)
-SET(KWSYS_USE_SystemTools 1)
-SET(KWSYS_USE_Directory 1)
-SET(KWSYS_USE_RegularExpression 1)
-SET(KWSYS_USE_Base64 1)
-SET(KWSYS_USE_MD5 1)
-SET(KWSYS_USE_Process 1)
-SET(KWSYS_USE_CommandLineArguments 1)
-SET(KWSYS_HEADER_ROOT ${CMake_BINARY_DIR}/Source)
-SUBDIRS(Source/kwsys)
-
-#-----------------------------------------------------------------------------
-# Setup third-party libraries.
-
-# Everything in the tree should be able to include files from the
-# Utilities directory.
-INCLUDE_DIRECTORIES(
- ${CMake_SOURCE_DIR}/Utilities
- ${CMake_BINARY_DIR}/Utilities
- )
-
-# Third party libraries must be something that can be found.
-IF(EXISTS ${CMAKE_ROOT}/Modules/FindXMLRPC.cmake)
- SET(CMAKE_ALLOW_SYSTEM_LIBRARIES 1)
-ELSE(EXISTS ${CMAKE_ROOT}/Modules/FindXMLRPC.cmake)
- SET(CMAKE_ALLOW_SYSTEM_LIBRARIES 0)
-ENDIF(EXISTS ${CMAKE_ROOT}/Modules/FindXMLRPC.cmake)
-
-IF(CMAKE_ALLOW_SYSTEM_LIBRARIES)
- # Options have dependencies.
- INCLUDE(CMakeDependentOption)
-
- # Allow the user to enable/disable all system utility library options
- # by setting CMAKE_USE_SYSTEM_LIBRARIES on the command line.
- IF(DEFINED CMAKE_USE_SYSTEM_LIBRARIES)
- SET(CMAKE_USE_SYSTEM_LIBRARIES_USER 1)
- ENDIF(DEFINED CMAKE_USE_SYSTEM_LIBRARIES)
- IF(CMAKE_USE_SYSTEM_LIBRARIES)
- SET(CMAKE_USE_SYSTEM_LIBRARIES ON)
- ELSE(CMAKE_USE_SYSTEM_LIBRARIES)
- SET(CMAKE_USE_SYSTEM_LIBRARIES OFF)
- ENDIF(CMAKE_USE_SYSTEM_LIBRARIES)
- IF(CMAKE_USE_SYSTEM_LIBRARIES_USER)
- SET(CMAKE_USE_SYSTEM_CURL "${CMAKE_USE_SYSTEM_LIBRARIES}" CACHE BOOL "Use system-installed curl" FORCE)
- SET(CMAKE_USE_SYSTEM_EXPAT "${CMAKE_USE_SYSTEM_LIBRARIES}" CACHE BOOL "Use system-installed expat" FORCE)
- SET(CMAKE_USE_SYSTEM_XMLRPC "${CMAKE_USE_SYSTEM_LIBRARIES}" CACHE BOOL "Use system-installed xmlrpc" FORCE)
- SET(CMAKE_USE_SYSTEM_ZLIB "${CMAKE_USE_SYSTEM_LIBRARIES}" CACHE BOOL "Use system-installed zlib" FORCE)
- ENDIF(CMAKE_USE_SYSTEM_LIBRARIES_USER)
-
- # Optionally use system utility libraries.
- OPTION(CMAKE_USE_SYSTEM_CURL "Use system-installed curl" ${CMAKE_USE_SYSTEM_LIBRARIES})
- OPTION(CMAKE_USE_SYSTEM_XMLRPC "Use system-installed xmlrpc" ${CMAKE_USE_SYSTEM_LIBRARIES})
- CMAKE_DEPENDENT_OPTION(CMAKE_USE_SYSTEM_EXPAT "Use system-installed expat"
- ${CMAKE_USE_SYSTEM_LIBRARIES} "NOT CMAKE_USE_SYSTEM_XMLRPC" ON)
- CMAKE_DEPENDENT_OPTION(CMAKE_USE_SYSTEM_ZLIB "Use system-installed zlib"
- ${CMAKE_USE_SYSTEM_LIBRARIES} "NOT CMAKE_USE_SYSTEM_CURL" ON)
-
- # There is currently no option for system tar because the upstream
- # libtar does not have our modifications to allow reentrant
- # object-oriented use of the library.
- # OPTION(CMAKE_USE_SYSTEM_TAR "Use system-installed tar" OFF)
-ELSE(CMAKE_ALLOW_SYSTEM_LIBRARIES)
- SET(CMAKE_USE_SYSTEM_CURL 0)
- SET(CMAKE_USE_SYSTEM_EXPAT 0)
- SET(CMAKE_USE_SYSTEM_XMLRPC 0)
- SET(CMAKE_USE_SYSTEM_ZLIB 0)
-ENDIF(CMAKE_ALLOW_SYSTEM_LIBRARIES)
-
-# Inform utility library header wrappers whether to use system versions.
-CONFIGURE_FILE(${CMake_SOURCE_DIR}/Utilities/cmThirdParty.h.in
- ${CMake_BINARY_DIR}/Utilities/cmThirdParty.h
- @ONLY IMMEDIATE)
-
-# Mention to the user what system libraries are being used.
-FOREACH(util CURL EXPAT XMLRPC ZLIB)
- IF(CMAKE_USE_SYSTEM_${util})
- MESSAGE(STATUS "Using system-installed ${util}")
- ENDIF(CMAKE_USE_SYSTEM_${util})
-ENDFOREACH(util)
-
-#-----------------------------------------------------------------------------
-# Build zlib library for Curl, CMake, and CTest.
-SET(CMAKE_ZLIB_HEADER "cm_zlib.h")
-IF(CMAKE_USE_SYSTEM_ZLIB)
- FIND_PACKAGE(ZLIB)
- IF(NOT ZLIB_FOUND)
- MESSAGE(FATAL_ERROR "CMAKE_USE_SYSTEM_ZLIB is ON but a zlib is not found!")
- ENDIF(NOT ZLIB_FOUND)
- SET(CMAKE_ZLIB_INCLUDES ${ZLIB_INCLUDE_DIR})
- SET(CMAKE_ZLIB_LIBRARIES ${ZLIB_LIBRARIES})
-ELSE(CMAKE_USE_SYSTEM_ZLIB)
- SUBDIRS(Utilities/cmzlib)
- SET(CMAKE_ZLIB_INCLUDES)
- SET(CMAKE_ZLIB_LIBRARIES cmzlib)
-ENDIF(CMAKE_USE_SYSTEM_ZLIB)
-
-#-----------------------------------------------------------------------------
-# Build Curl library for CTest.
-IF(CMAKE_USE_SYSTEM_CURL)
- FIND_PACKAGE(CURL)
- IF(NOT CURL_FOUND)
- MESSAGE(FATAL_ERROR "CMAKE_USE_SYSTEM_CURL is ON but a curl is not found!")
- ENDIF(NOT CURL_FOUND)
- SET(CMAKE_CURL_INCLUDES ${CURL_INCLUDE_DIRS})
- SET(CMAKE_CURL_LIBRARIES ${CURL_LIBRARIES})
-ELSE(CMAKE_USE_SYSTEM_CURL)
- SET(CURL_SPECIAL_ZLIB_H ${CMAKE_ZLIB_HEADER})
- SET(CURL_SPECIAL_LIBZ_INCLUDES ${CMAKE_ZLIB_INCLUDES})
- SET(CURL_SPECIAL_LIBZ ${CMAKE_ZLIB_LIBRARIES})
- ADD_DEFINITIONS(-DCURL_STATICLIB)
- SUBDIRS(Utilities/cmcurl)
- SET(CMAKE_CURL_INCLUDES)
- SET(CMAKE_CURL_LIBRARIES cmcurl)
-ENDIF(CMAKE_USE_SYSTEM_CURL)
-
-#-----------------------------------------------------------------------------
-# Build Tar library for CTest.
-SET(CMTAR_ZLIB_HEADER ${CMAKE_ZLIB_HEADER})
-SET(CMTAR_ZLIB_LIBRARIES ${CMAKE_ZLIB_LIBRARIES})
-SET(CMTAR_ZLIB_INCLUDE_DIRS ${CMAKE_ZLIB_INCLUDES})
-SUBDIRS(Utilities/cmtar)
-SET(CMAKE_TAR_INCLUDES ${CMAKE_CURRENT_BINARY_DIR}/Utilities/cmtar)
-SET(CMAKE_TAR_LIBRARIES cmtar)
-
-#-----------------------------------------------------------------------------
-# Build Compress library for CTest.
-SUBDIRS(Utilities/cmcompress)
-SET(CMAKE_COMPRESS_INCLUDES "${CMAKE_CURRENT_BINARY_DIR}/Utilities/cmcompress")
-SET(CMAKE_COMPRESS_LIBRARIES "cmcompress")
-
-#-----------------------------------------------------------------------------
-# Build expat library for CMake and CTest.
-IF(CMAKE_USE_SYSTEM_EXPAT)
- FIND_PACKAGE(EXPAT)
- IF(NOT EXPAT_FOUND)
- MESSAGE(FATAL_ERROR
- "CMAKE_USE_SYSTEM_EXPAT is ON but a expat is not found!")
- ENDIF(NOT EXPAT_FOUND)
- SET(CMAKE_EXPAT_INCLUDES ${EXPAT_INCLUDE_DIRS})
- SET(CMAKE_EXPAT_LIBRARIES ${EXPAT_LIBRARIES})
-ELSE(CMAKE_USE_SYSTEM_EXPAT)
- SUBDIRS(Utilities/cmexpat)
- SET(CMAKE_EXPAT_INCLUDES)
- SET(CMAKE_EXPAT_LIBRARIES cmexpat)
-ENDIF(CMAKE_USE_SYSTEM_EXPAT)
-
-#-----------------------------------------------------------------------------
-# Build XMLRPC library for CMake and CTest.
-IF(CMAKE_USE_SYSTEM_XMLRPC)
- FIND_PACKAGE(XMLRPC QUIET REQUIRED libwww-client)
- IF(NOT XMLRPC_FOUND)
- MESSAGE(FATAL_ERROR
- "CMAKE_USE_SYSTEM_XMLRPC is ON but a xmlrpc is not found!")
- ENDIF(NOT XMLRPC_FOUND)
- SET(CMAKE_XMLRPC_INCLUDES ${XMLRPC_INCLUDE_DIRS})
- SET(CMAKE_XMLRPC_LIBRARIES ${XMLRPC_LIBRARIES})
-ELSE(CMAKE_USE_SYSTEM_XMLRPC)
- SUBDIRS(Utilities/cmxmlrpc)
- SET(CMAKE_XMLRPC_INCLUDES)
- SET(CMAKE_XMLRPC_LIBRARIES cmXMLRPC)
-ENDIF(CMAKE_USE_SYSTEM_XMLRPC)
-
-IF (UNIX)
- FIND_PACKAGE(Curses QUIET)
- IF (CURSES_LIBRARY)
- OPTION(BUILD_CursesDialog "Build the CMake Curses Dialog ccmake" ON)
- ELSE (CURSES_LIBRARY)
- MESSAGE("Curses libraries were not found. Curses GUI for CMake will not be build.")
- SET(BUILD_CursesDialog 0)
- ENDIF (CURSES_LIBRARY)
-ELSE (UNIX)
- SET(BUILD_CursesDialog 0)
-ENDIF (UNIX)
-
-IF(BUILD_CursesDialog)
- SUBDIRS(Source/CursesDialog/form)
-ENDIF(BUILD_CursesDialog)
-
+# no clue why we are testing for this here
INCLUDE(CheckSymbolExists)
CHECK_SYMBOL_EXISTS(unsetenv "stdlib.h" HAVE_UNSETENV)
CHECK_SYMBOL_EXISTS(environ "stdlib.h" HAVE_ENVIRON_NOT_REQUIRE_PROTOTYPE)
-SUBDIRS(Source Modules Templates Utilities Tests/CMakeTests)
-ENABLE_TESTING()
+# build the utilities (a macro defined in this file)
+CMAKE_BUILD_UTILITIES()
-# Include the standard Dart testing module
-INCLUDE (${CMAKE_ROOT}/Modules/Dart.cmake)
-
-# add some testing dependencies
-IF(BUILD_TESTING)
- IF (DART_ROOT)
- CONFIGURE_FILE(${CMake_SOURCE_DIR}/CMakeLogo.gif ${CMake_BINARY_DIR}/Testing/HTML/TestingResults/Icons/Logo.gif COPYONLY)
- ENDIF (DART_ROOT)
-ENDIF(BUILD_TESTING)
-MARK_AS_ADVANCED(DART_ROOT)
-MARK_AS_ADVANCED(CURL_TESTING)
-
-SET(EXECUTABLE_OUTPUT_PATH ${CMake_BINARY_DIR}/bin CACHE INTERNAL
- "Where to put the executables for CMake"
- )
-SET(LIBRARY_OUTPUT_PATH "" CACHE INTERNAL
- "Where to put the libraries for CMake"
- )
-
-INCLUDE_REGULAR_EXPRESSION("^.*$")
-
-# configure some files for testing
-CONFIGURE_FILE(${CMake_SOURCE_DIR}/Tests/.NoDartCoverage
- ${CMake_BINARY_DIR}/Tests/.NoDartCoverage)
-CONFIGURE_FILE(${CMake_SOURCE_DIR}/Tests/.NoDartCoverage
- ${CMake_BINARY_DIR}/Modules/.NoDartCoverage)
-CONFIGURE_FILE(${CMake_SOURCE_DIR}/CTestCustom.ctest.in
- ${CMake_BINARY_DIR}/CTestCustom.ctest @ONLY)
-
-SET(CMAKE_BUILD_ON_VISUAL_STUDIO 0)
-IF(WIN32 AND NOT UNIX AND NOT BORLAND AND NOT MINGW )
- SET(CMAKE_BUILD_ON_VISUAL_STUDIO 1)
-ENDIF(WIN32 AND NOT UNIX AND NOT BORLAND AND NOT MINGW )
-
-IF(CMAKE_BUILD_ON_VISUAL_STUDIO)
- IF("CMake_HAVE_MFC" MATCHES "^CMake_HAVE_MFC$")
- SET(CHECK_INCLUDE_FILE_VAR "afxwin.h")
- CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CheckIncludeFile.cxx.in
- ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckIncludeFile.cxx IMMEDIATE)
- MESSAGE(STATUS "Looking for MFC")
- TRY_COMPILE(CMake_HAVE_MFC
- ${CMAKE_BINARY_DIR}
- ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/CheckIncludeFile.cxx
- CMAKE_FLAGS
- -DCMAKE_MFC_FLAG:STRING=2
- -DCOMPILE_DEFINITIONS:STRING=-D_AFXDLL
- OUTPUT_VARIABLE OUTPUT)
- IF(CMake_HAVE_MFC)
- MESSAGE(STATUS "Looking for MFC - found")
- SET(CMake_HAVE_MFC 1 CACHE INTERNAL "Have MFC?")
- FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
- "Determining if MFC exists passed with the following output:\n"
- "${OUTPUT}\n\n")
- ELSE(CMake_HAVE_MFC)
- MESSAGE(STATUS "Looking for MFC - not found")
- SET(CMake_HAVE_MFC 0 CACHE INTERNAL "Have MFC?")
- FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
- "Determining if MFC exists failed with the following output:\n"
- "${OUTPUT}\n\n")
- ENDIF(CMake_HAVE_MFC)
- ENDIF("CMake_HAVE_MFC" MATCHES "^CMake_HAVE_MFC$")
-
- IF(CMake_HAVE_MFC)
- OPTION(BUILD_MFCDialog "Whether to build the CMakeSetup MFC dialog." ON)
- ELSE(CMake_HAVE_MFC)
- SET(BUILD_MFCDialog 0)
- ENDIF(CMake_HAVE_MFC)
-ELSE(CMAKE_BUILD_ON_VISUAL_STUDIO)
- SET(BUILD_MFCDialog 0)
-ENDIF(CMAKE_BUILD_ON_VISUAL_STUDIO)
+# should we build the MFC dialog? (a macro defined in this file)
+CMAKE_TEST_FOR_MFC()
+# add the uninstall support
CONFIGURE_FILE(
"${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
- IMMEDIATE @ONLY)
-
+ @ONLY)
ADD_CUSTOM_TARGET(uninstall
"${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
# include support for making the release
INCLUDE (${CMake_SOURCE_DIR}/Utilities/Release/Release.cmake)
-
-# include CPack Support
INCLUDE (CMakeCPack.cmake)
-# configure the CTestScript.cmake file into the binary directory
-CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/Templates/CTestScript.cmake.in"
- "${CMAKE_CURRENT_BINARY_DIR}/CTestScript.cmake"
- @ONLY IMMEDIATE)
-
-# Testing
-IF (NOT DART_ROOT)
- SET(MAKEPROGRAM ${CMAKE_MAKE_PROGRAM})
-ENDIF (NOT DART_ROOT)
-
-IF(BUILD_TESTING)
- SET(CMAKE_TEST_GENERATOR "" CACHE STRING "Generator used when running tests")
- SET(CMAKE_TEST_MAKEPROGRAM "" CACHE FILEPATH "Generator used when running tests")
- IF(NOT CMAKE_TEST_GENERATOR)
- SET(CMAKE_TEST_GENERATOR "${CMAKE_GENERATOR}")
- SET(CMAKE_TEST_MAKEPROGRAM "${MAKEPROGRAM}")
- ELSE(NOT CMAKE_TEST_GENERATOR)
- SET(CMAKE_TEST_DIFFERENT_GENERATOR TRUE)
- ENDIF(NOT CMAKE_TEST_GENERATOR)
-
- # Are we testing with the MSVC compiler?
- SET(CMAKE_TEST_MSVC 0)
- IF(MSVC AND NOT CMAKE_TEST_DIFFERENT_GENERATOR)
- SET(CMAKE_TEST_MSVC 1)
- ELSE(MSVC AND NOT CMAKE_TEST_DIFFERENT_GENERATOR)
- IF("${CMAKE_TEST_GENERATOR}" MATCHES "NMake" OR
- "${CMAKE_TEST_GENERATOR}" MATCHES "Visual Studio")
- SET(CMAKE_TEST_MSVC 1)
- ENDIF("${CMAKE_TEST_GENERATOR}" MATCHES "NMake" OR
- "${CMAKE_TEST_GENERATOR}" MATCHES "Visual Studio")
- ENDIF(MSVC AND NOT CMAKE_TEST_DIFFERENT_GENERATOR)
-
- SET(CMAKE_TEST_SYSTEM_LIBRARIES 0)
- FOREACH(util CURL EXPAT XMLRPC ZLIB)
- IF(CMAKE_USE_SYSTEM_${util})
- SET(CMAKE_TEST_SYSTEM_LIBRARIES 1)
- ENDIF(CMAKE_USE_SYSTEM_${util})
- ENDFOREACH(util)
+# setup some Testing support (a macro defined in this file)
+CMAKE_SETUP_TESTING()
- # This variable is set by cmake, however to
- # test cmake we want to make sure that
- # the ctest from this cmake is used for testing
- # and not the ctest from the cmake building and testing
- # cmake.
- SET(CMAKE_CTEST_COMMAND "${EXECUTABLE_OUTPUT_PATH}/ctest")
- SET(CMAKE_CMAKE_COMMAND "${EXECUTABLE_OUTPUT_PATH}/cmake")
-ENDIF(BUILD_TESTING)
+# build the remaining subdirectories
+ADD_SUBDIRECTORY(Source)
+ADD_SUBDIRECTORY(Modules)
+ADD_SUBDIRECTORY(Templates)
+ADD_SUBDIRECTORY(Utilities)
+ADD_SUBDIRECTORY(Tests)
+ADD_SUBDIRECTORY(Tests/CMakeTests)
-ADD_TEST(SystemInformationNew
- "${CMAKE_CMAKE_COMMAND}" --system-information
- -G "${CMAKE_TEST_GENERATOR}"
- )
+# add a test
+ADD_TEST(SystemInformationNew "${CMAKE_CMAKE_COMMAND}"
+ --system-information -G "${CMAKE_TEST_GENERATOR}" )
+#-----------------------------------------------------------------------
+# End of the main section of the CMakeLists file
+#-----------------------------------------------------------------------
diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt
index 0b9529c..b7969f9 100644
--- a/Source/CMakeLists.txt
+++ b/Source/CMakeLists.txt
@@ -1,7 +1,3 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 1.5)
-
-INCLUDE_REGULAR_EXPRESSION("^.*$")
-
# configure the .h file
CONFIGURE_FILE(
"${CMake_SOURCE_DIR}/Source/cmConfigure.cmake.h.in"
@@ -354,954 +350,6 @@ IF(BUILD_WXDialog)
SUBDIRS(WXDialog)
ENDIF(BUILD_WXDialog)
-# Testing
-IF(BUILD_TESTING)
- # Should the long tests be run?
- OPTION(CMAKE_RUN_LONG_TESTS "Should the long tests be run (such as Bootstrap)." ON)
- MARK_AS_ADVANCED(CMAKE_RUN_LONG_TESTS)
-
- IF (CMAKE_RUN_LONG_TESTS)
- OPTION(CTEST_TEST_CTEST
- "Should the tests that run a full sub ctest process be run?"
- OFF)
- MARK_AS_ADVANCED(CTEST_TEST_CTEST)
- ENDIF (CMAKE_RUN_LONG_TESTS)
-
- ADD_TEST(CommandLineTest ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/CommandLineTest"
- "${CMake_BINARY_DIR}/Tests/CommandLineTest"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project CommandLineTest
- --test-command CommandLineTest)
-
- ADD_TEST(TarTest ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/TarTest"
- "${CMake_BINARY_DIR}/Tests/TarTest"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project TestTar
- --test-command TestTarExec)
-
- ADD_TEST(TargetName ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/TargetName"
- "${CMake_BINARY_DIR}/Tests/TargetName"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project TargetName
- --test-command ${CMAKE_CMAKE_COMMAND} -E compare_files
- ${CMake_SOURCE_DIR}/Tests/TargetName/scripts/hello_world
- ${CMake_BINARY_DIR}/Tests/TargetName/scripts/hello_world)
-
- ADD_TEST(LibName ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/LibName"
- "${CMake_BINARY_DIR}/Tests/LibName"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project LibName
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/LibName/lib"
- --test-command foobar
- )
-
- ADD_TEST(CustComDepend ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/CustComDepend"
- "${CMake_BINARY_DIR}/Tests/CustComDepend"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project CustComDepend
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/CustComDepend/bin"
- --test-command foo bar.c
- )
-
- ADD_TEST(CustomCommand ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/CustomCommand"
- "${CMake_BINARY_DIR}/Tests/CustomCommand"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project CustomCommand
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/CustomCommand/bin"
- --test-command CustomCommand
- )
-
- ADD_TEST(CustomCommandWorkingDirectory ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/CustomCommandWorkingDirectory"
- "${CMake_BINARY_DIR}/Tests/CustomCommandWorkingDirectory"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project TestWorkingDir
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/CustomCommandWorkingDirectory"
- --test-command working
- )
-
- ADD_TEST(FindPackageTest ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/FindPackageTest"
- "${CMake_BINARY_DIR}/Tests/FindPackageTest"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project FindPackageTest
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --test-command FindPackageTest)
-
- ADD_TEST(SystemInformation ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/SystemInformation"
- "${CMake_BINARY_DIR}/Tests/SystemInformation"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project DumpInformation
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --test-command DumpInformation)
-
- ADD_TEST(StringFileTest ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/StringFileTest"
- "${CMake_BINARY_DIR}/Tests/StringFileTest"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project StringFileTest
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --test-command StringFileTest)
-
- ADD_TEST(MathTest ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/MathTest"
- "${CMake_BINARY_DIR}/Tests/MathTest"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project MathTest
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --test-command MathTestExec)
-
- ADD_TEST(TryCompile ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/TryCompile"
- "${CMake_BINARY_DIR}/Tests/TryCompile"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project TryCompile
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --test-command TryCompile)
-
- ADD_TEST(simple ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Simple"
- "${CMake_BINARY_DIR}/Tests/Simple"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project Simple
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --test-command simple)
-
- #ADD_TEST(SimpleExclude ${CMAKE_CTEST_COMMAND}
- # --build-and-test
- # "${CMake_SOURCE_DIR}/Tests/SimpleExclude"
- # "${CMake_BINARY_DIR}/Tests/SimpleExclude"
- # --build-generator ${CMAKE_TEST_GENERATOR}
- # --build-project SimpleExclude
- # --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- # --build-two-config
- # --test-command t4
- # #--test-command "${CMAKE_COMMAND}"
- # #"-DCONFIGURATION=\${CTEST_CONFIGURATION_TYPE}"
- # #-P "${CMAKE_BINARY_DIR}/Tests/SimpleExclude/run.cmake"
- # )
-
-# ADD_TEST(SameName ${CMAKE_CTEST_COMMAND}
-# --build-and-test
-# "${CMake_SOURCE_DIR}/Tests/SameName"
-# "${CMake_BINARY_DIR}/Tests/SameName"
-# --build-generator ${CMAKE_TEST_GENERATOR}
-# --build-project SameName
-# --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
-# --build-two-config
-# --test-command
-# "${CMake_BINARY_DIR}/Tests/SameName/Exe1/mytest2")
-
- ADD_TEST(OutOfSource ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/OutOfSource"
- "${CMake_BINARY_DIR}/Tests/OutOfSource"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project OutOfSource
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --test-command
- "${CMake_BINARY_DIR}/Tests/OutOfSource/SubDir/OutOfSourceSubdir/simple")
-
- ADD_TEST(PreOrder ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/PreOrder"
- "${CMake_BINARY_DIR}/Tests/PreOrder"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project PreOrder
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --test-command simple)
-
- ADD_TEST(conly ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/COnly"
- "${CMake_BINARY_DIR}/Tests/COnly"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project conly
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --test-command conly)
-
- ADD_TEST(CxxOnly ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/CxxOnly"
- "${CMake_BINARY_DIR}/Tests/CxxOnly"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project cxxonly
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --test-command cxxonly)
-
- ADD_TEST(NewlineArgs ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/NewlineArgs"
- "${CMake_BINARY_DIR}/Tests/NewlineArgs"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project newlineargs
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --test-command cxxonly)
-
- ADD_TEST(MacroTest ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/MacroTest"
- "${CMake_BINARY_DIR}/Tests/MacroTest"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project littleMacroTest
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --test-command miniMacroTest)
-
- ADD_TEST(BuildDepends ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/BuildDepends"
- "${CMake_BINARY_DIR}/Tests/BuildDepends"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project BuildDepends
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- )
-
- SET(SimpleInstallInstallDir
- "${CMake_BINARY_DIR}/Tests/SimpleInstall/InstallDirectory")
- ADD_TEST(SimpleInstall ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/SimpleInstall"
- "${CMake_BINARY_DIR}/Tests/SimpleInstall"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project TestSimpleInstall
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --build-options
- "-DCMAKE_INSTALL_PREFIX:PATH=${SimpleInstallInstallDir}"
- --test-command ${SimpleInstallInstallDir}/MyTest/bin/SimpleInstallExe)
- ADD_TEST(SimpleInstall-Stage2 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/SimpleInstallS2"
- "${CMake_BINARY_DIR}/Tests/SimpleInstallS2"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project TestSimpleInstall
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --build-options
- "-DCMAKE_INSTALL_PREFIX:PATH=${SimpleInstallInstallDir}"
- "-DSTAGE2:BOOL=1"
- --test-command ${SimpleInstallInstallDir}/MyTest/bin/SimpleInstallS2)
-
- ADD_TEST(X11 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/X11"
- "${CMake_BINARY_DIR}/Tests/X11"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project UseX11
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --test-command UseX11)
-
- ADD_TEST(LoadedCommand ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/LoadCommand"
- "${CMake_BINARY_DIR}/Tests/LoadCommand"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project LoadedCommand
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --test-command LoadedCommand)
-
- ADD_TEST(LoadedCommandOneConfig ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/LoadCommandOneConfig"
- "${CMake_BINARY_DIR}/Tests/LoadCommandOneConfig"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project LoadedCommand
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --test-command LoadedCommand
- )
-
- # Como does not seem to support shared libraries.
- GET_FILENAME_COMPONENT(CMAKE_BASE_NAME ${CMAKE_CXX_COMPILER} NAME_WE)
- IF(CMAKE_BASE_NAME MATCHES "^como$")
- SET(COMPILER_IS_COMO 1)
- ENDIF(CMAKE_BASE_NAME MATCHES "^como$")
- IF(NOT COMPILER_IS_COMO)
- ADD_TEST(complex ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Complex"
- "${CMake_BINARY_DIR}/Tests/Complex"
- --build-two-config
- --build-config-sample "${CMAKE_CTEST_COMMAND}"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project Complex
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/Complex/bin"
- --build-options
- -DCMAKE_TEST_DIFFERENT_GENERATOR:BOOL=${CMAKE_TEST_DIFFERENT_GENERATOR}
- -DCMAKE_TEST_SYSTEM_LIBRARIES:BOOL=${CMAKE_TEST_SYSTEM_LIBRARIES}
- --test-command complex
- )
-
- ADD_TEST(complexOneConfig ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/ComplexOneConfig"
- "${CMake_BINARY_DIR}/Tests/ComplexOneConfig"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project Complex
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/ComplexOneConfig/bin"
- --build-options
- -DCMAKE_TEST_DIFFERENT_GENERATOR:BOOL=${CMAKE_TEST_DIFFERENT_GENERATOR}
- -DCMAKE_TEST_SYSTEM_LIBRARIES:BOOL=${CMAKE_TEST_SYSTEM_LIBRARIES}
- --test-command complex)
-
- ADD_TEST(SetLang ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/SetLang"
- "${CMake_BINARY_DIR}/Tests/SetLang"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project SetLang
- --test-command bar)
-
-# ADD_TEST(ConvLibrary ${CMAKE_CTEST_COMMAND}
-# --build-and-test
-# "${CMake_SOURCE_DIR}/Tests/ConvLibrary"
-# "${CMake_BINARY_DIR}/Tests/ConvLibrary"
-# --build-two-config
-# --build-generator ${CMAKE_TEST_GENERATOR}
-# --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
-# --build-project ConvLibrary
-# --test-command bartest)
-
-
-# ADD_TEST(complexRelativePaths ${CMAKE_CTEST_COMMAND}
-# --build-and-test
-# "${CMake_SOURCE_DIR}/Tests/ComplexRelativePaths"
-# "${CMake_BINARY_DIR}/Tests/ComplexRelativePaths"
-# --build-generator ${CMAKE_TEST_GENERATOR}
-# --build-project complex
-# --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
-# --build-exe-dir "${CMake_BINARY_DIR}/Tests/ComplexRelativePaths/bin"
-# --build-options -DCMAKE_USE_RELATIVE_PATHS:BOOL=ON
-# --test-command complex)
-
- ENDIF(NOT COMPILER_IS_COMO)
-
- ADD_TEST(Example ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Example"
- "${CMake_BINARY_DIR}/Example"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project HELLO
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir "${CMake_BINARY_DIR}/Example/Demo"
- --test-command helloDemo
- )
-
- ADD_TEST(TutorialStep1 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Tutorial/Step1"
- "${CMake_BINARY_DIR}/Tests/Tutorial/Step1"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project Tutorial
- --test-command Tutorial 25.0)
-
- ADD_TEST(TutorialStep2 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Tutorial/Step2"
- "${CMake_BINARY_DIR}/Tests/Tutorial/Step2"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project Tutorial
- --test-command Tutorial 25.0)
-
- ADD_TEST(TutorialStep3 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Tutorial/Step3"
- "${CMake_BINARY_DIR}/Tests/Tutorial/Step3"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project Tutorial
- --test-command Tutorial 25.0)
-
- ADD_TEST(TutorialStep4 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Tutorial/Step4"
- "${CMake_BINARY_DIR}/Tests/Tutorial/Step4"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project Tutorial
- --test-command Tutorial 25.0)
-
- ADD_TEST(TutorialStep5 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Tutorial/Step5"
- "${CMake_BINARY_DIR}/Tests/Tutorial/Step5"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project Tutorial
- --test-command Tutorial 25.0)
-
- ADD_TEST(testing ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Testing"
- "${CMake_BINARY_DIR}/Tests/Testing"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project Testing
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/Testing/bin"
- --test-command testing
- )
-
- ADD_TEST(wrapping ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Wrapping"
- "${CMake_BINARY_DIR}/Tests/Wrapping"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project Wrapping
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/Wrapping/bin"
- --test-command wrapping
- )
- # use the FindQt3.cmake from this cmake as it may not be in an older version of cmake
- INCLUDE (${CMAKE_SOURCE_DIR}/Modules/FindQt3.cmake)
- MARK_AS_ADVANCED(
- QT_INCLUDE_PATH
- QT_MOC_EXE
- QT_QT_LIBRARY
- QT_UIC_EXE)
-
- IF (QT_FOUND AND QT_WRAP_UI)
- ADD_TEST(qtwrapping ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Wrapping"
- "${CMake_BINARY_DIR}/Tests/Wrapping"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project Wrapping
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/Wrapping/bin"
- --test-command qtwrapping
- )
- ENDIF (QT_FOUND AND QT_WRAP_UI)
-
- ADD_TEST(testdriver1 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/TestDriver"
- "${CMake_BINARY_DIR}/Tests/TestDriver"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/Wrapping/bin"
- --build-project TestDriverTest
- --test-command TestDriverTest test1
- )
-
- ADD_TEST(testdriver2 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/TestDriver"
- "${CMake_BINARY_DIR}/Tests/TestDriver"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/Wrapping/bin"
- --build-project TestDriverTest
- --test-command TestDriverTest test2
- )
-
- ADD_TEST(testdriver3 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/TestDriver"
- "${CMake_BINARY_DIR}/Tests/TestDriver"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/Wrapping/bin"
- --build-project TestDriverTest
- --test-command TestDriverTest subdir/test3
- )
-
- ADD_TEST(dependency_w_libout ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Dependency"
- "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut"
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec"
- --build-project Dependency
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-options
- -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib
- --test-command exec
- )
-
-
- ADD_TEST(dependency_wo_lib_out ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Dependency"
- "${CMake_BINARY_DIR}/Tests/Dependency/WOLibOut"
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/Dependency/WOLibOut/Exec"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project Dependency
- --test-command exec
- )
-
- ADD_TEST(dependency2 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Dependency"
- "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut"
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec2"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project Dependency
- --build-options
- -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib
- --test-command exec2
- )
-
- ADD_TEST(dependency3 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Dependency"
- "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut"
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec3"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project Dependency
- --build-options
- -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib
- --test-command exec3)
-
- ADD_TEST(dependency4 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Dependency"
- "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut"
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec4"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project Dependency
- --build-options
- -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib
- --test-command exec4
- )
-
- ADD_TEST(JumpWithLibOut ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Jump"
- "${CMake_BINARY_DIR}/Tests/Jump/WithLibOut"
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/Jump/WithLibOut/Executable"
- --build-project Jump
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-options
- -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Jump/WithLibOut/Lib
- --test-command jumpExecutable
- )
-
- ADD_TEST(JumpNoLibOut ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Jump"
- "${CMake_BINARY_DIR}/Tests/Jump/NoLibOut"
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/Jump/NoLibOut/Executable"
- --build-run-dir "${CMake_BINARY_DIR}/Tests/Jump/NoLibOut/Executable"
- --build-project Jump
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --test-command jumpExecutable
- )
-
- ADD_TEST(linkline ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/LinkLine"
- "${CMake_BINARY_DIR}/Tests/LinkLine"
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/LinkLine"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project LinkLine
- --test-command Exec
- )
-
- ADD_TEST(linkorder1 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/LinkLineOrder"
- "${CMake_BINARY_DIR}/Tests/LinkLineOrder"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/LinkLineOrder"
- --build-project LinkLineOrder
- --test-command Exec1
- )
-
- ADD_TEST(linkorder2 ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/LinkLineOrder"
- "${CMake_BINARY_DIR}/Tests/LinkLineOrder"
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/LinkLineOrder"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project LinkLineOrder
- --test-command Exec2
- )
-
- ADD_TEST(ExternalOBJ ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/ExternalOBJ"
- "${CMake_BINARY_DIR}/Tests/ExternalOBJ"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project ExternalOBJ
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir "${CMake_BINARY_DIR}/ExternalOBJ"
- --test-command executable
- )
-
- ADD_TEST(Plugin ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Plugin"
- "${CMake_BINARY_DIR}/Tests/Plugin"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project Plugin
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --test-command bin/example)
-
- IF(NOT CMAKE_TEST_DIFFERENT_GENERATOR)
- ADD_TEST(kwsys ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Source/kwsys"
- "${CMake_BINARY_DIR}/Tests/kwsys"
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/kwsys"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project kwsys
- --test-command kwsysTestsCxx testIOS
- )
- ENDIF(NOT CMAKE_TEST_DIFFERENT_GENERATOR)
- SET(MAKE_IS_GNU )
- IF(${CMAKE_TEST_MAKEPROGRAM} MATCHES make)
- EXEC_PROGRAM(
- ${CMAKE_TEST_MAKEPROGRAM} ARGS --version
- RETURN_VALUE res OUTPUT_VARIABLE out
- )
- IF("${res}" EQUAL 0)
- IF("${out}" MATCHES "GNU")
- SET(MAKE_IS_GNU 1)
- ENDIF("${out}" MATCHES "GNU")
- ENDIF("${res}" EQUAL 0)
- ENDIF(${CMAKE_TEST_MAKEPROGRAM} MATCHES make)
-
- # only add this test on platforms that support it
- # some old versions of make simply cannot handle spaces in paths
- IF (MAKE_IS_GNU OR
- "${CMAKE_TEST_MAKEPROGRAM}" MATCHES "nmake|gmake|wmake" OR
- "${CMAKE_TEST_GENERATOR}" MATCHES "Visual Studio|XCode|Borland")
- ADD_TEST(SubDirSpaces ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/SubDirSpaces"
- "${CMake_BINARY_DIR}/Tests/SubDirSpaces"
- --build-exe-dir
- "${CMake_BINARY_DIR}/Tests/SubDirSpaces/Executable Sources"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project SUBDIR
- --test-command test
- "${CMake_BINARY_DIR}/Tests/SubDirSpaces/ShouldBeHere"
- "${CMake_BINARY_DIR}/Tests/SubDirSpaces/testfromsubdir.obj"
- )
- ENDIF (MAKE_IS_GNU OR
- "${CMAKE_TEST_MAKEPROGRAM}" MATCHES "nmake|gmake|wmake" OR
- "${CMAKE_TEST_GENERATOR}" MATCHES "Visual Studio|XCode|Borland")
-
- IF (WIN32)
- ADD_TEST(SubDir ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/SubDir"
- "${CMake_BINARY_DIR}/Tests/SubDir"
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/SubDir/Executable"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project SUBDIR
- --test-command test
- "${CMake_BINARY_DIR}/Tests/SubDir/ShouldBeHere"
- "${CMake_BINARY_DIR}/Tests/SubDir/testfromsubdir.obj"
- )
- ELSE (WIN32)
- ADD_TEST(SubDir ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/SubDir"
- "${CMake_BINARY_DIR}/Tests/SubDir"
- --build-exe-dir "${CMake_BINARY_DIR}/Tests/SubDir/Executable"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project SUBDIR
- --test-command test
- "${CMake_BINARY_DIR}/Tests/SubDir/ShouldBeHere"
- "${CMake_BINARY_DIR}/Tests/SubDir/testfromsubdir.o"
- )
- ENDIF (WIN32)
-
- IF(CMAKE_TEST_MSVC)
- ADD_TEST(PrecompiledHeader ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/PrecompiledHeader"
- "${CMake_BINARY_DIR}/Tests/PrecompiledHeader"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project PrecompiledHeader
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --test-command foo)
- ENDIF(CMAKE_TEST_MSVC)
-
- IF("${CMAKE_TEST_GENERATOR}" MATCHES "Makefile")
- ADD_TEST(MakeClean ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/MakeClean"
- "${CMake_BINARY_DIR}/Tests/MakeClean"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project MakeClean
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir "${CMake_BINARY_DIR}/MakeClean"
- --test-command check_clean
- )
- ENDIF("${CMAKE_TEST_GENERATOR}" MATCHES "Makefile")
-
- IF(${CMAKE_TEST_GENERATOR} MATCHES "Visual Studio")
- ADD_TEST(VSExternalInclude ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/VSExternalInclude"
- "${CMake_BINARY_DIR}/Tests/VSExternalInclude"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project VSExternalInclude
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --test-command VSExternalInclude)
- ENDIF(${CMAKE_TEST_GENERATOR} MATCHES "Visual Studio")
- ADD_TEST(FrameworkTest ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Framework"
- "${CMake_BINARY_DIR}/Tests/Framework"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project Framework
- --test-command bar)
-
- IF (APPLE AND CMAKE_COMPILER_IS_GNUCXX)
- SET(BundleTestInstallDir
- "${CMake_BINARY_DIR}/Tests/BundleTest/InstallDirectory")
- ADD_TEST(BundleTest ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/BundleTest"
- "${CMake_BINARY_DIR}/Tests/BundleTest"
- --build-two-config
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project BundleTest
- --build-target install
-# --build-target package
- --build-options "-DCMAKE_INSTALL_PREFIX:PATH=${BundleTestInstallDir}"
- "-DCMake_SOURCE_DIR:PATH=${CMAKE_SOURCE_DIR}"
- --test-command
- ${BundleTestInstallDir}/Application/SecondBundleExe.app/Contents/MacOS/SecondBundleExe)
-
- ADD_TEST(objc++ ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/ObjC++"
- "${CMake_BINARY_DIR}/Tests/ObjC++"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-project objc++
- --test-command objc++
- )
- ENDIF (APPLE AND CMAKE_COMPILER_IS_GNUCXX)
-
- IF (CTEST_TEST_CTEST AND CMAKE_RUN_LONG_TESTS)
- CONFIGURE_FILE("${CMake_SOURCE_DIR}/Tests/CTestTest/test.cmake.in"
- "${CMake_BINARY_DIR}/Tests/CTestTest/test.cmake" @ONLY ESCAPE_QUOTES)
- ADD_TEST(CTestTest ${CMAKE_CTEST_COMMAND}
- -S "${CMake_BINARY_DIR}/Tests/CTestTest/test.cmake" -V
- --output-log "${CMake_BINARY_DIR}/Tests/CTestTest/testOutput.log"
- )
- CONFIGURE_FILE("${CMake_SOURCE_DIR}/Tests/CTestTest2/test.cmake.in"
- "${CMake_BINARY_DIR}/Tests/CTestTest2/test.cmake" @ONLY ESCAPE_QUOTES)
- ADD_TEST(CTestTest2 ${CMAKE_CTEST_COMMAND}
- -S "${CMake_BINARY_DIR}/Tests/CTestTest2/test.cmake" -V
- --output-log "${CMake_BINARY_DIR}/Tests/CTestTest2/testOutput.log"
- )
- CONFIGURE_FILE("${CMake_SOURCE_DIR}/Tests/CTestTest3/test.cmake.in"
- "${CMake_BINARY_DIR}/Tests/CTestTest3/test.cmake" @ONLY ESCAPE_QUOTES)
- ADD_TEST(CTestTest3 ${CMAKE_CTEST_COMMAND}
- -S "${CMake_BINARY_DIR}/Tests/CTestTest3/test.cmake" -V
- --output-log "${CMake_BINARY_DIR}/Tests/CTestTest3/testOutput.log"
- )
- # these tests take a long time, make sure they have it
- IF(COMMAND SET_TESTS_PROPERTIES)
- # if timeouts have not already been set
- GET_TEST_PROPERTY(CTestTest TIMEOUT PREVIOUS_TIMEOUT)
- IF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
- SET_TESTS_PROPERTIES ( CTestTest PROPERTIES TIMEOUT 1500)
- ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
-
- GET_TEST_PROPERTY(CTestTest2 TIMEOUT PREVIOUS_TIMEOUT)
- IF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
- SET_TESTS_PROPERTIES ( CTestTest2 PROPERTIES TIMEOUT 1500)
- ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
-
- GET_TEST_PROPERTY(CTestTest3 TIMEOUT PREVIOUS_TIMEOUT)
- IF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
- SET_TESTS_PROPERTIES ( CTestTest3 PROPERTIES TIMEOUT 1500)
- ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
- ENDIF(COMMAND SET_TESTS_PROPERTIES)
- ENDIF (CTEST_TEST_CTEST AND CMAKE_RUN_LONG_TESTS)
-
- IF("${CMAKE_TEST_GENERATOR}" MATCHES Xcode)
- SET(CMAKE_SKIP_BOOTSTRAP_TEST 1)
- ENDIF("${CMAKE_TEST_GENERATOR}" MATCHES Xcode)
- IF(EXISTS "${CMAKE_BINARY_DIR}/CMakeLists.txt")
- # If there is CMakeLists.txt in the binary tree, assume in-source build
- SET(CMAKE_SKIP_BOOTSTRAP_TEST 1)
- ENDIF(EXISTS "${CMAKE_BINARY_DIR}/CMakeLists.txt")
- IF(UNIX AND CMAKE_RUN_LONG_TESTS AND NOT CMAKE_SKIP_BOOTSTRAP_TEST)
-
-
- ADD_TEST(BootstrapTest ${CMAKE_CTEST_COMMAND}
- --build-and-test
- ${CMake_SOURCE_DIR}
- ${CMake_BINARY_DIR}/Tests/BootstrapTest
- --build-nocmake
- --build-noclean
- --build-makeprogram ${CMake_SOURCE_DIR}/bootstrap
- --build-generator "${CMAKE_TEST_GENERATOR}"
- --test-command
- ${CMake_BINARY_DIR}/Tests/BootstrapTest/Bootstrap.cmk/cmake)
-
- # provide more time for the bootstrap test
- IF (COMMAND GET_TEST_PROPERTY)
- GET_TEST_PROPERTY(BootstrapTest TIMEOUT PREVIOUS_TIMEOUT)
- IF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
- SET_TESTS_PROPERTIES ( BootstrapTest PROPERTIES TIMEOUT 1500)
- ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
- ENDIF (COMMAND GET_TEST_PROPERTY)
-
- ENDIF(UNIX AND CMAKE_RUN_LONG_TESTS AND NOT CMAKE_SKIP_BOOTSTRAP_TEST)
-
- # fortran does not work for IDE builds because
- # CMAKE_STANDARD_LIBRARIES needs to be per language
- IF(CMAKE_TEST_GENERATOR MATCHES "Makefiles")
- # see if we can find a fortran compiler on the machine
- # if so, add the fortran test and see if it works.
- SET(CMAKE_Fortran_COMPILER_LIST ifort ifc efc f95 pgf95
- lf95 xlf95 fort gfortran f90 pgf90 xlf90
- epcf90 f77 fort77 frt pgf77 xlf fl32 af77 g77 )
- FIND_PROGRAM(CMAKE_Fortran_COMPILER_FULLPATH NAMES ${CMAKE_Fortran_COMPILER_LIST} )
- MARK_AS_ADVANCED(CMAKE_Fortran_COMPILER_FULLPATH)
- IF(CMAKE_Fortran_COMPILER_FULLPATH)
- ADD_TEST(Fortran ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Fortran"
- "${CMake_BINARY_DIR}/Tests/Fortran"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project testf
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --test-command testf)
- ENDIF(CMAKE_Fortran_COMPILER_FULLPATH)
- ENDIF(CMAKE_TEST_GENERATOR MATCHES "Makefiles")
- IF(NOT CMAKE_TEST_GENERATOR MATCHES "Xcode")
- INCLUDE(FindJava)
- IF(JAVA_COMPILE AND JAVA_RUNTIME AND JAVA_ARCHIVE AND NOT MINGW)
- GET_FILENAME_COMPONENT(JNIPATH ${JAVA_COMPILE} PATH)
- FIND_FILE(JNI_H jni.h
- "${JNIPATH}/../include"
- "${JNIPATH}/../java/include")
- IF(JNI_H)
- FILE(READ "${JNI_H}" JNI_FILE)
- IF("${JNI_FILE}" MATCHES "JDK1_2")
- ADD_TEST(Java ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Java"
- "${CMake_BINARY_DIR}/Tests/Java"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-project hello
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-two-config
- --build-run-dir "${CMake_BINARY_DIR}/Tests/Java/"
- --test-command ${JAVA_RUNTIME} -classpath hello.jar HelloWorld)
- ENDIF("${JNI_FILE}" MATCHES "JDK1_2")
- ENDIF(JNI_H)
- ENDIF(JAVA_COMPILE AND JAVA_RUNTIME AND JAVA_ARCHIVE AND NOT MINGW)
- ENDIF(NOT CMAKE_TEST_GENERATOR MATCHES "Xcode")
-
- IF(BUILD_WXDialog AND wxWidgets_CONFIG_EXECUTABLE)
- # Will be set if the WX gui is on
- ADD_TEST(UseWX ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/UseWX"
- "${CMake_BINARY_DIR}/Tests/UseWX"
- --build-generator ${CMAKE_TEST_GENERATOR}
- --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
- --build-exe-dir ${CMake_BINARY_DIR}/Tests/UseWX
- --build-project UsewxWidgets
- --build-options -DwxWidgets_CONFIG_EXECUTABLE=${wxWidgets_CONFIG_EXECUTABLE}
- --test-command UseWX
- )
- ENDIF(BUILD_WXDialog AND wxWidgets_CONFIG_EXECUTABLE)
-
- IF(UNIX)
- STRING(COMPARE EQUAL "${CMAKE_INSTALL_PREFIX}" "${CMake_BINARY_DIR}/Tests/TestShellInstall/Prefix"
- PREFIX_IS_FOR_TEST)
- IF(PREFIX_IS_FOR_TEST)
- CONFIGURE_FILE(
- ${CMake_SOURCE_DIR}/Tests/TestInstall.sh.in
- ${CMake_BINARY_DIR}/Tests/TestShellInstall/TestInstall.sh
- @ONLY IMMEDIATE
- )
- ADD_TEST(ShellInstall /bin/sh ${CMake_BINARY_DIR}/Tests/TestShellInstall/TestShellInstall.sh)
- ENDIF(PREFIX_IS_FOR_TEST)
- ENDIF(UNIX)
-
-ENDIF(BUILD_TESTING)
-
INCLUDE (${CMAKE_BINARY_DIR}/Source/LocalUserOptions.cmake OPTIONAL)
INCLUDE (${CMAKE_SOURCE_DIR}/Source/LocalUserOptions.cmake OPTIONAL)
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
new file mode 100644
index 0000000..ec1583d
--- /dev/null
+++ b/Tests/CMakeLists.txt
@@ -0,0 +1,949 @@
+# Testing
+IF(BUILD_TESTING)
+ # Should the long tests be run?
+ OPTION(CMAKE_RUN_LONG_TESTS
+ "Should the long tests be run (such as Bootstrap)." ON)
+ MARK_AS_ADVANCED(CMAKE_RUN_LONG_TESTS)
+
+ IF (CMAKE_RUN_LONG_TESTS)
+ OPTION(CTEST_TEST_CTEST
+ "Should the tests that run a full sub ctest process be run?"
+ OFF)
+ MARK_AS_ADVANCED(CTEST_TEST_CTEST)
+ ENDIF (CMAKE_RUN_LONG_TESTS)
+
+ ADD_TEST(CommandLineTest ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/CommandLineTest"
+ "${CMake_BINARY_DIR}/Tests/CommandLineTest"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project CommandLineTest
+ --test-command CommandLineTest)
+
+ ADD_TEST(TarTest ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/TarTest"
+ "${CMake_BINARY_DIR}/Tests/TarTest"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project TestTar
+ --test-command TestTarExec)
+
+ ADD_TEST(TargetName ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/TargetName"
+ "${CMake_BINARY_DIR}/Tests/TargetName"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project TargetName
+ --test-command ${CMAKE_CMAKE_COMMAND} -E compare_files
+ ${CMake_SOURCE_DIR}/Tests/TargetName/scripts/hello_world
+ ${CMake_BINARY_DIR}/Tests/TargetName/scripts/hello_world)
+
+ ADD_TEST(LibName ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/LibName"
+ "${CMake_BINARY_DIR}/Tests/LibName"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project LibName
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/LibName/lib"
+ --test-command foobar
+ )
+
+ ADD_TEST(CustComDepend ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/CustComDepend"
+ "${CMake_BINARY_DIR}/Tests/CustComDepend"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project CustComDepend
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/CustComDepend/bin"
+ --test-command foo bar.c
+ )
+
+ ADD_TEST(CustomCommand ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/CustomCommand"
+ "${CMake_BINARY_DIR}/Tests/CustomCommand"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project CustomCommand
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/CustomCommand/bin"
+ --test-command CustomCommand
+ )
+
+ ADD_TEST(CustomCommandWorkingDirectory ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/CustomCommandWorkingDirectory"
+ "${CMake_BINARY_DIR}/Tests/CustomCommandWorkingDirectory"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project TestWorkingDir
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/CustomCommandWorkingDirectory"
+ --test-command working
+ )
+
+ ADD_TEST(FindPackageTest ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/FindPackageTest"
+ "${CMake_BINARY_DIR}/Tests/FindPackageTest"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project FindPackageTest
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --test-command FindPackageTest)
+
+ ADD_TEST(SystemInformation ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/SystemInformation"
+ "${CMake_BINARY_DIR}/Tests/SystemInformation"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project DumpInformation
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --test-command DumpInformation)
+
+ ADD_TEST(StringFileTest ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/StringFileTest"
+ "${CMake_BINARY_DIR}/Tests/StringFileTest"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project StringFileTest
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --test-command StringFileTest)
+
+ ADD_TEST(MathTest ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/MathTest"
+ "${CMake_BINARY_DIR}/Tests/MathTest"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project MathTest
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --test-command MathTestExec)
+
+ ADD_TEST(TryCompile ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/TryCompile"
+ "${CMake_BINARY_DIR}/Tests/TryCompile"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project TryCompile
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --test-command TryCompile)
+
+ ADD_TEST(simple ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Simple"
+ "${CMake_BINARY_DIR}/Tests/Simple"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project Simple
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --test-command simple)
+
+ ADD_TEST(SimpleExclude ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/SimpleExclude"
+ "${CMake_BINARY_DIR}/Tests/SimpleExclude"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project SimpleExclude
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --test-command t4
+ #--test-command "${CMAKE_COMMAND}"
+ #"-DCONFIGURATION=\${CTEST_CONFIGURATION_TYPE}"
+ #-P "${CMAKE_BINARY_DIR}/Tests/SimpleExclude/run.cmake"
+ )
+
+# ADD_TEST(SameName ${CMAKE_CTEST_COMMAND}
+# --build-and-test
+# "${CMake_SOURCE_DIR}/Tests/SameName"
+# "${CMake_BINARY_DIR}/Tests/SameName"
+# --build-generator ${CMAKE_TEST_GENERATOR}
+# --build-project SameName
+# --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+# --build-two-config
+# --test-command
+# "${CMake_BINARY_DIR}/Tests/SameName/Exe1/mytest2")
+
+ ADD_TEST(OutOfSource ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/OutOfSource"
+ "${CMake_BINARY_DIR}/Tests/OutOfSource"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project OutOfSource
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --test-command
+ "${CMake_BINARY_DIR}/Tests/OutOfSource/SubDir/OutOfSourceSubdir/simple")
+
+ ADD_TEST(PreOrder ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/PreOrder"
+ "${CMake_BINARY_DIR}/Tests/PreOrder"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project PreOrder
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --test-command simple)
+
+ ADD_TEST(conly ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/COnly"
+ "${CMake_BINARY_DIR}/Tests/COnly"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project conly
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --test-command conly)
+
+ ADD_TEST(CxxOnly ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/CxxOnly"
+ "${CMake_BINARY_DIR}/Tests/CxxOnly"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project cxxonly
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --test-command cxxonly)
+
+ ADD_TEST(NewlineArgs ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/NewlineArgs"
+ "${CMake_BINARY_DIR}/Tests/NewlineArgs"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project newlineargs
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --test-command cxxonly)
+
+ ADD_TEST(MacroTest ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/MacroTest"
+ "${CMake_BINARY_DIR}/Tests/MacroTest"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project littleMacroTest
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --test-command miniMacroTest)
+
+ ADD_TEST(BuildDepends ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/BuildDepends"
+ "${CMake_BINARY_DIR}/Tests/BuildDepends"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project BuildDepends
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ )
+
+ SET(SimpleInstallInstallDir
+ "${CMake_BINARY_DIR}/Tests/SimpleInstall/InstallDirectory")
+ ADD_TEST(SimpleInstall ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/SimpleInstall"
+ "${CMake_BINARY_DIR}/Tests/SimpleInstall"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project TestSimpleInstall
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --build-options
+ "-DCMAKE_INSTALL_PREFIX:PATH=${SimpleInstallInstallDir}"
+ --test-command ${SimpleInstallInstallDir}/MyTest/bin/SimpleInstallExe)
+ ADD_TEST(SimpleInstall-Stage2 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/SimpleInstallS2"
+ "${CMake_BINARY_DIR}/Tests/SimpleInstallS2"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project TestSimpleInstall
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --build-options
+ "-DCMAKE_INSTALL_PREFIX:PATH=${SimpleInstallInstallDir}"
+ "-DSTAGE2:BOOL=1"
+ --test-command ${SimpleInstallInstallDir}/MyTest/bin/SimpleInstallS2)
+
+ ADD_TEST(X11 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/X11"
+ "${CMake_BINARY_DIR}/Tests/X11"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project UseX11
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --test-command UseX11)
+
+ ADD_TEST(LoadedCommand ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/LoadCommand"
+ "${CMake_BINARY_DIR}/Tests/LoadCommand"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project LoadedCommand
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --test-command LoadedCommand)
+
+ ADD_TEST(LoadedCommandOneConfig ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/LoadCommandOneConfig"
+ "${CMake_BINARY_DIR}/Tests/LoadCommandOneConfig"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project LoadedCommand
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --test-command LoadedCommand
+ )
+
+ # Como does not seem to support shared libraries.
+ GET_FILENAME_COMPONENT(CMAKE_BASE_NAME ${CMAKE_CXX_COMPILER} NAME_WE)
+ IF(CMAKE_BASE_NAME MATCHES "^como$")
+ SET(COMPILER_IS_COMO 1)
+ ENDIF(CMAKE_BASE_NAME MATCHES "^como$")
+ IF(NOT COMPILER_IS_COMO)
+ ADD_TEST(complex ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Complex"
+ "${CMake_BINARY_DIR}/Tests/Complex"
+ --build-two-config
+ --build-config-sample "${CMAKE_CTEST_COMMAND}"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project Complex
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/Complex/bin"
+ --build-options
+ -DCMAKE_TEST_DIFFERENT_GENERATOR:BOOL=${CMAKE_TEST_DIFFERENT_GENERATOR}
+ -DCMAKE_TEST_SYSTEM_LIBRARIES:BOOL=${CMAKE_TEST_SYSTEM_LIBRARIES}
+ --test-command complex
+ )
+
+ ADD_TEST(complexOneConfig ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/ComplexOneConfig"
+ "${CMake_BINARY_DIR}/Tests/ComplexOneConfig"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project Complex
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/ComplexOneConfig/bin"
+ --build-options
+ -DCMAKE_TEST_DIFFERENT_GENERATOR:BOOL=${CMAKE_TEST_DIFFERENT_GENERATOR}
+ -DCMAKE_TEST_SYSTEM_LIBRARIES:BOOL=${CMAKE_TEST_SYSTEM_LIBRARIES}
+ --test-command complex)
+
+ ADD_TEST(SetLang ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/SetLang"
+ "${CMake_BINARY_DIR}/Tests/SetLang"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project SetLang
+ --test-command bar)
+
+# ADD_TEST(ConvLibrary ${CMAKE_CTEST_COMMAND}
+# --build-and-test
+# "${CMake_SOURCE_DIR}/Tests/ConvLibrary"
+# "${CMake_BINARY_DIR}/Tests/ConvLibrary"
+# --build-two-config
+# --build-generator ${CMAKE_TEST_GENERATOR}
+# --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+# --build-project ConvLibrary
+# --test-command bartest)
+
+
+# ADD_TEST(complexRelativePaths ${CMAKE_CTEST_COMMAND}
+# --build-and-test
+# "${CMake_SOURCE_DIR}/Tests/ComplexRelativePaths"
+# "${CMake_BINARY_DIR}/Tests/ComplexRelativePaths"
+# --build-generator ${CMAKE_TEST_GENERATOR}
+# --build-project complex
+# --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+# --build-exe-dir "${CMake_BINARY_DIR}/Tests/ComplexRelativePaths/bin"
+# --build-options -DCMAKE_USE_RELATIVE_PATHS:BOOL=ON
+# --test-command complex)
+
+ ENDIF(NOT COMPILER_IS_COMO)
+
+ ADD_TEST(Example ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Example"
+ "${CMake_BINARY_DIR}/Example"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project HELLO
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir "${CMake_BINARY_DIR}/Example/Demo"
+ --test-command helloDemo
+ )
+
+ ADD_TEST(TutorialStep1 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Tutorial/Step1"
+ "${CMake_BINARY_DIR}/Tests/Tutorial/Step1"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project Tutorial
+ --test-command Tutorial 25.0)
+
+ ADD_TEST(TutorialStep2 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Tutorial/Step2"
+ "${CMake_BINARY_DIR}/Tests/Tutorial/Step2"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project Tutorial
+ --test-command Tutorial 25.0)
+
+ ADD_TEST(TutorialStep3 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Tutorial/Step3"
+ "${CMake_BINARY_DIR}/Tests/Tutorial/Step3"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project Tutorial
+ --test-command Tutorial 25.0)
+
+ ADD_TEST(TutorialStep4 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Tutorial/Step4"
+ "${CMake_BINARY_DIR}/Tests/Tutorial/Step4"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project Tutorial
+ --test-command Tutorial 25.0)
+
+ ADD_TEST(TutorialStep5 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Tutorial/Step5"
+ "${CMake_BINARY_DIR}/Tests/Tutorial/Step5"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project Tutorial
+ --test-command Tutorial 25.0)
+
+ ADD_TEST(testing ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Testing"
+ "${CMake_BINARY_DIR}/Tests/Testing"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project Testing
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/Testing/bin"
+ --test-command testing
+ )
+
+ ADD_TEST(wrapping ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Wrapping"
+ "${CMake_BINARY_DIR}/Tests/Wrapping"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project Wrapping
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/Wrapping/bin"
+ --test-command wrapping
+ )
+ # use the FindQt3.cmake from this cmake as it may not be in an
+ # older version of cmake
+ INCLUDE (${CMAKE_SOURCE_DIR}/Modules/FindQt3.cmake)
+ MARK_AS_ADVANCED(
+ QT_INCLUDE_PATH
+ QT_MOC_EXE
+ QT_QT_LIBRARY
+ QT_UIC_EXE)
+
+ IF (QT_FOUND AND QT_WRAP_UI)
+ ADD_TEST(qtwrapping ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Wrapping"
+ "${CMake_BINARY_DIR}/Tests/Wrapping"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project Wrapping
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/Wrapping/bin"
+ --test-command qtwrapping
+ )
+ ENDIF (QT_FOUND AND QT_WRAP_UI)
+
+ ADD_TEST(testdriver1 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/TestDriver"
+ "${CMake_BINARY_DIR}/Tests/TestDriver"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/Wrapping/bin"
+ --build-project TestDriverTest
+ --test-command TestDriverTest test1
+ )
+
+ ADD_TEST(testdriver2 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/TestDriver"
+ "${CMake_BINARY_DIR}/Tests/TestDriver"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/Wrapping/bin"
+ --build-project TestDriverTest
+ --test-command TestDriverTest test2
+ )
+
+ ADD_TEST(testdriver3 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/TestDriver"
+ "${CMake_BINARY_DIR}/Tests/TestDriver"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/Wrapping/bin"
+ --build-project TestDriverTest
+ --test-command TestDriverTest subdir/test3
+ )
+
+ ADD_TEST(dependency_w_libout ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Dependency"
+ "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut"
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec"
+ --build-project Dependency
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-options
+ -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib
+ --test-command exec
+ )
+
+ ADD_TEST(dependency_wo_lib_out ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Dependency"
+ "${CMake_BINARY_DIR}/Tests/Dependency/WOLibOut"
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/Dependency/WOLibOut/Exec"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project Dependency
+ --test-command exec
+ )
+
+ ADD_TEST(dependency2 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Dependency"
+ "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut"
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec2"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project Dependency
+ --build-options
+ -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib
+ --test-command exec2
+ )
+
+ ADD_TEST(dependency3 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Dependency"
+ "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut"
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec3"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project Dependency
+ --build-options
+ -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib
+ --test-command exec3)
+
+ ADD_TEST(dependency4 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Dependency"
+ "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut"
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Exec4"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project Dependency
+ --build-options
+ -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Dependency/WithLibOut/Lib
+ --test-command exec4
+ )
+
+ ADD_TEST(JumpWithLibOut ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Jump"
+ "${CMake_BINARY_DIR}/Tests/Jump/WithLibOut"
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/Jump/WithLibOut/Executable"
+ --build-project Jump
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-options
+ -DLIBRARY_OUTPUT_PATH:PATH=${CMake_BINARY_DIR}/Tests/Jump/WithLibOut/Lib
+ --test-command jumpExecutable
+ )
+
+ ADD_TEST(JumpNoLibOut ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Jump"
+ "${CMake_BINARY_DIR}/Tests/Jump/NoLibOut"
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/Jump/NoLibOut/Executable"
+ --build-run-dir "${CMake_BINARY_DIR}/Tests/Jump/NoLibOut/Executable"
+ --build-project Jump
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --test-command jumpExecutable
+ )
+
+ ADD_TEST(linkline ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/LinkLine"
+ "${CMake_BINARY_DIR}/Tests/LinkLine"
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/LinkLine"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project LinkLine
+ --test-command Exec
+ )
+
+ ADD_TEST(linkorder1 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/LinkLineOrder"
+ "${CMake_BINARY_DIR}/Tests/LinkLineOrder"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/LinkLineOrder"
+ --build-project LinkLineOrder
+ --test-command Exec1
+ )
+
+ ADD_TEST(linkorder2 ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/LinkLineOrder"
+ "${CMake_BINARY_DIR}/Tests/LinkLineOrder"
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/LinkLineOrder"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project LinkLineOrder
+ --test-command Exec2
+ )
+
+ ADD_TEST(ExternalOBJ ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/ExternalOBJ"
+ "${CMake_BINARY_DIR}/Tests/ExternalOBJ"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project ExternalOBJ
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir "${CMake_BINARY_DIR}/ExternalOBJ"
+ --test-command executable
+ )
+
+ ADD_TEST(Plugin ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Plugin"
+ "${CMake_BINARY_DIR}/Tests/Plugin"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project Plugin
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --test-command bin/example)
+
+ IF(NOT CMAKE_TEST_DIFFERENT_GENERATOR)
+ ADD_TEST(kwsys ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Source/kwsys"
+ "${CMake_BINARY_DIR}/Tests/kwsys"
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/kwsys"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project kwsys
+ --test-command kwsysTestsCxx testIOS
+ )
+ ENDIF(NOT CMAKE_TEST_DIFFERENT_GENERATOR)
+ SET(MAKE_IS_GNU )
+ IF(${CMAKE_TEST_MAKEPROGRAM} MATCHES make)
+ EXEC_PROGRAM(
+ ${CMAKE_TEST_MAKEPROGRAM} ARGS --version
+ RETURN_VALUE res OUTPUT_VARIABLE out
+ )
+ IF("${res}" EQUAL 0)
+ IF("${out}" MATCHES "GNU")
+ SET(MAKE_IS_GNU 1)
+ ENDIF("${out}" MATCHES "GNU")
+ ENDIF("${res}" EQUAL 0)
+ ENDIF(${CMAKE_TEST_MAKEPROGRAM} MATCHES make)
+
+ # only add this test on platforms that support it
+ # some old versions of make simply cannot handle spaces in paths
+ IF (MAKE_IS_GNU OR
+ "${CMAKE_TEST_MAKEPROGRAM}" MATCHES "nmake|gmake|wmake" OR
+ "${CMAKE_TEST_GENERATOR}" MATCHES "Visual Studio|XCode|Borland")
+ ADD_TEST(SubDirSpaces ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/SubDirSpaces"
+ "${CMake_BINARY_DIR}/Tests/SubDirSpaces"
+ --build-exe-dir
+ "${CMake_BINARY_DIR}/Tests/SubDirSpaces/Executable Sources"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project SUBDIR
+ --test-command test
+ "${CMake_BINARY_DIR}/Tests/SubDirSpaces/ShouldBeHere"
+ "${CMake_BINARY_DIR}/Tests/SubDirSpaces/testfromsubdir.obj"
+ )
+ ENDIF (MAKE_IS_GNU OR
+ "${CMAKE_TEST_MAKEPROGRAM}" MATCHES "nmake|gmake|wmake" OR
+ "${CMAKE_TEST_GENERATOR}" MATCHES "Visual Studio|XCode|Borland")
+
+ IF (WIN32)
+ ADD_TEST(SubDir ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/SubDir"
+ "${CMake_BINARY_DIR}/Tests/SubDir"
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/SubDir/Executable"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project SUBDIR
+ --test-command test
+ "${CMake_BINARY_DIR}/Tests/SubDir/ShouldBeHere"
+ "${CMake_BINARY_DIR}/Tests/SubDir/testfromsubdir.obj"
+ )
+ ELSE (WIN32)
+ ADD_TEST(SubDir ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/SubDir"
+ "${CMake_BINARY_DIR}/Tests/SubDir"
+ --build-exe-dir "${CMake_BINARY_DIR}/Tests/SubDir/Executable"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project SUBDIR
+ --test-command test
+ "${CMake_BINARY_DIR}/Tests/SubDir/ShouldBeHere"
+ "${CMake_BINARY_DIR}/Tests/SubDir/testfromsubdir.o"
+ )
+ ENDIF (WIN32)
+
+ IF(CMAKE_TEST_MSVC)
+ ADD_TEST(PrecompiledHeader ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/PrecompiledHeader"
+ "${CMake_BINARY_DIR}/Tests/PrecompiledHeader"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project PrecompiledHeader
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --test-command foo)
+ ENDIF(CMAKE_TEST_MSVC)
+
+ IF("${CMAKE_TEST_GENERATOR}" MATCHES "Makefile")
+ ADD_TEST(MakeClean ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/MakeClean"
+ "${CMake_BINARY_DIR}/Tests/MakeClean"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project MakeClean
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir "${CMake_BINARY_DIR}/MakeClean"
+ --test-command check_clean
+ )
+ ENDIF("${CMAKE_TEST_GENERATOR}" MATCHES "Makefile")
+
+ IF(${CMAKE_TEST_GENERATOR} MATCHES "Visual Studio")
+ ADD_TEST(VSExternalInclude ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/VSExternalInclude"
+ "${CMake_BINARY_DIR}/Tests/VSExternalInclude"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project VSExternalInclude
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --test-command VSExternalInclude)
+ ENDIF(${CMAKE_TEST_GENERATOR} MATCHES "Visual Studio")
+ ADD_TEST(FrameworkTest ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Framework"
+ "${CMake_BINARY_DIR}/Tests/Framework"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project Framework
+ --test-command bar)
+
+ IF (APPLE AND CMAKE_COMPILER_IS_GNUCXX)
+ SET(BundleTestInstallDir
+ "${CMake_BINARY_DIR}/Tests/BundleTest/InstallDirectory")
+ ADD_TEST(BundleTest ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/BundleTest"
+ "${CMake_BINARY_DIR}/Tests/BundleTest"
+ --build-two-config
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project BundleTest
+ --build-target install
+# --build-target package
+ --build-options "-DCMAKE_INSTALL_PREFIX:PATH=${BundleTestInstallDir}"
+ "-DCMake_SOURCE_DIR:PATH=${CMAKE_SOURCE_DIR}"
+ --test-command
+ ${BundleTestInstallDir}/Application/SecondBundleExe.app/Contents/MacOS/SecondBundleExe)
+
+ ADD_TEST(objc++ ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/ObjC++"
+ "${CMake_BINARY_DIR}/Tests/ObjC++"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-project objc++
+ --test-command objc++
+ )
+ ENDIF (APPLE AND CMAKE_COMPILER_IS_GNUCXX)
+
+ IF (CTEST_TEST_CTEST AND CMAKE_RUN_LONG_TESTS)
+ CONFIGURE_FILE("${CMake_SOURCE_DIR}/Tests/CTestTest/test.cmake.in"
+ "${CMake_BINARY_DIR}/Tests/CTestTest/test.cmake" @ONLY ESCAPE_QUOTES)
+ ADD_TEST(CTestTest ${CMAKE_CTEST_COMMAND}
+ -S "${CMake_BINARY_DIR}/Tests/CTestTest/test.cmake" -V
+ --output-log "${CMake_BINARY_DIR}/Tests/CTestTest/testOutput.log"
+ )
+ CONFIGURE_FILE("${CMake_SOURCE_DIR}/Tests/CTestTest2/test.cmake.in"
+ "${CMake_BINARY_DIR}/Tests/CTestTest2/test.cmake" @ONLY ESCAPE_QUOTES)
+ ADD_TEST(CTestTest2 ${CMAKE_CTEST_COMMAND}
+ -S "${CMake_BINARY_DIR}/Tests/CTestTest2/test.cmake" -V
+ --output-log "${CMake_BINARY_DIR}/Tests/CTestTest2/testOutput.log"
+ )
+ CONFIGURE_FILE("${CMake_SOURCE_DIR}/Tests/CTestTest3/test.cmake.in"
+ "${CMake_BINARY_DIR}/Tests/CTestTest3/test.cmake" @ONLY ESCAPE_QUOTES)
+ ADD_TEST(CTestTest3 ${CMAKE_CTEST_COMMAND}
+ -S "${CMake_BINARY_DIR}/Tests/CTestTest3/test.cmake" -V
+ --output-log "${CMake_BINARY_DIR}/Tests/CTestTest3/testOutput.log"
+ )
+ # these tests take a long time, make sure they have it
+ IF(COMMAND SET_TESTS_PROPERTIES)
+ # if timeouts have not already been set
+ GET_TEST_PROPERTY(CTestTest TIMEOUT PREVIOUS_TIMEOUT)
+ IF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
+ SET_TESTS_PROPERTIES ( CTestTest PROPERTIES TIMEOUT 1500)
+ ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
+
+ GET_TEST_PROPERTY(CTestTest2 TIMEOUT PREVIOUS_TIMEOUT)
+ IF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
+ SET_TESTS_PROPERTIES ( CTestTest2 PROPERTIES TIMEOUT 1500)
+ ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
+
+ GET_TEST_PROPERTY(CTestTest3 TIMEOUT PREVIOUS_TIMEOUT)
+ IF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
+ SET_TESTS_PROPERTIES ( CTestTest3 PROPERTIES TIMEOUT 1500)
+ ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
+ ENDIF(COMMAND SET_TESTS_PROPERTIES)
+ ENDIF (CTEST_TEST_CTEST AND CMAKE_RUN_LONG_TESTS)
+
+ IF("${CMAKE_TEST_GENERATOR}" MATCHES Xcode)
+ SET(CMAKE_SKIP_BOOTSTRAP_TEST 1)
+ ENDIF("${CMAKE_TEST_GENERATOR}" MATCHES Xcode)
+ IF(EXISTS "${CMAKE_BINARY_DIR}/CMakeLists.txt")
+ # If there is CMakeLists.txt in the binary tree, assume in-source build
+ SET(CMAKE_SKIP_BOOTSTRAP_TEST 1)
+ ENDIF(EXISTS "${CMAKE_BINARY_DIR}/CMakeLists.txt")
+ IF(UNIX AND CMAKE_RUN_LONG_TESTS AND NOT CMAKE_SKIP_BOOTSTRAP_TEST)
+
+
+ ADD_TEST(BootstrapTest ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ ${CMake_SOURCE_DIR}
+ ${CMake_BINARY_DIR}/Tests/BootstrapTest
+ --build-nocmake
+ --build-noclean
+ --build-makeprogram ${CMake_SOURCE_DIR}/bootstrap
+ --build-generator "${CMAKE_TEST_GENERATOR}"
+ --test-command
+ ${CMake_BINARY_DIR}/Tests/BootstrapTest/Bootstrap.cmk/cmake)
+
+ # provide more time for the bootstrap test
+ IF (COMMAND GET_TEST_PROPERTY)
+ GET_TEST_PROPERTY(BootstrapTest TIMEOUT PREVIOUS_TIMEOUT)
+ IF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
+ SET_TESTS_PROPERTIES ( BootstrapTest PROPERTIES TIMEOUT 1500)
+ ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
+ ENDIF (COMMAND GET_TEST_PROPERTY)
+
+ ENDIF(UNIX AND CMAKE_RUN_LONG_TESTS AND NOT CMAKE_SKIP_BOOTSTRAP_TEST)
+
+ # fortran does not work for IDE builds because
+ # CMAKE_STANDARD_LIBRARIES needs to be per language
+ IF(CMAKE_TEST_GENERATOR MATCHES "Makefiles")
+ # see if we can find a fortran compiler on the machine
+ # if so, add the fortran test and see if it works.
+ SET(CMAKE_Fortran_COMPILER_LIST ifort ifc efc f95 pgf95
+ lf95 xlf95 fort gfortran f90 pgf90 xlf90
+ epcf90 f77 fort77 frt pgf77 xlf fl32 af77 g77 )
+ FIND_PROGRAM(CMAKE_Fortran_COMPILER_FULLPATH NAMES
+ ${CMAKE_Fortran_COMPILER_LIST} )
+ MARK_AS_ADVANCED(CMAKE_Fortran_COMPILER_FULLPATH)
+ IF(CMAKE_Fortran_COMPILER_FULLPATH)
+ ADD_TEST(Fortran ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Fortran"
+ "${CMake_BINARY_DIR}/Tests/Fortran"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project testf
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --test-command testf)
+ ENDIF(CMAKE_Fortran_COMPILER_FULLPATH)
+ ENDIF(CMAKE_TEST_GENERATOR MATCHES "Makefiles")
+ IF(NOT CMAKE_TEST_GENERATOR MATCHES "Xcode")
+ INCLUDE(FindJava)
+ IF(JAVA_COMPILE AND JAVA_RUNTIME AND JAVA_ARCHIVE AND NOT MINGW)
+ GET_FILENAME_COMPONENT(JNIPATH ${JAVA_COMPILE} PATH)
+ FIND_FILE(JNI_H jni.h
+ "${JNIPATH}/../include"
+ "${JNIPATH}/../java/include")
+ IF(JNI_H)
+ FILE(READ "${JNI_H}" JNI_FILE)
+ IF("${JNI_FILE}" MATCHES "JDK1_2")
+ ADD_TEST(Java ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/Java"
+ "${CMake_BINARY_DIR}/Tests/Java"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-project hello
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-two-config
+ --build-run-dir "${CMake_BINARY_DIR}/Tests/Java/"
+ --test-command ${JAVA_RUNTIME} -classpath hello.jar HelloWorld)
+ ENDIF("${JNI_FILE}" MATCHES "JDK1_2")
+ ENDIF(JNI_H)
+ ENDIF(JAVA_COMPILE AND JAVA_RUNTIME AND JAVA_ARCHIVE AND NOT MINGW)
+ ENDIF(NOT CMAKE_TEST_GENERATOR MATCHES "Xcode")
+
+ IF(BUILD_WXDialog AND wxWidgets_CONFIG_EXECUTABLE)
+ # Will be set if the WX gui is on
+ ADD_TEST(UseWX ${CMAKE_CTEST_COMMAND}
+ --build-and-test
+ "${CMake_SOURCE_DIR}/Tests/UseWX"
+ "${CMake_BINARY_DIR}/Tests/UseWX"
+ --build-generator ${CMAKE_TEST_GENERATOR}
+ --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
+ --build-exe-dir ${CMake_BINARY_DIR}/Tests/UseWX
+ --build-project UsewxWidgets
+ --build-options -DwxWidgets_CONFIG_EXECUTABLE=${wxWidgets_CONFIG_EXECUTABLE}
+ --test-command UseWX
+ )
+ ENDIF(BUILD_WXDialog AND wxWidgets_CONFIG_EXECUTABLE)
+
+ IF(UNIX)
+ STRING(COMPARE EQUAL "${CMAKE_INSTALL_PREFIX}" "${CMake_BINARY_DIR}/Tests/TestShellInstall/Prefix"
+ PREFIX_IS_FOR_TEST)
+ IF(PREFIX_IS_FOR_TEST)
+ CONFIGURE_FILE(
+ ${CMake_SOURCE_DIR}/Tests/TestInstall.sh.in
+ ${CMake_BINARY_DIR}/Tests/TestShellInstall/TestInstall.sh
+ @ONLY IMMEDIATE
+ )
+ ADD_TEST(ShellInstall /bin/sh ${CMake_BINARY_DIR}/Tests/TestShellInstall/TestShellInstall.sh)
+ ENDIF(PREFIX_IS_FOR_TEST)
+ ENDIF(UNIX)
+
+ENDIF(BUILD_TESTING)