[Cmake-commits] [cmake-commits] king committed CMakeInstall.cmake NONE 1.1.2.2 CMakeLists.txt 1.116.2.6 1.116.2.7 CTestUpdateCVS.cmake.in 1.6 1.6.2.1 CTestUpdateCommon.cmake 1.6 1.6.2.1 CTestUpdateSVN.cmake.in 1.5 1.5.2.1 CheckFortran.cmake NONE 1.2.2.2 EnforceConfig.cmake.in 1.1 1.1.2.1

cmake-commits at cmake.org cmake-commits at cmake.org
Thu Jan 28 16:48:07 EST 2010


Update of /cvsroot/CMake/CMake/Tests
In directory public:/mounts/ram/cvs-serv23913/Tests

Modified Files:
      Tag: CMake-2-8
	CMakeLists.txt CTestUpdateCVS.cmake.in CTestUpdateCommon.cmake 
	CTestUpdateSVN.cmake.in EnforceConfig.cmake.in 
Added Files:
      Tag: CMake-2-8
	CMakeInstall.cmake CheckFortran.cmake 
Log Message:
CMake 2.8.1-rc1


Index: EnforceConfig.cmake.in
===================================================================
RCS file: /cvsroot/CMake/CMake/Tests/EnforceConfig.cmake.in,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -C 2 -d -r1.1 -r1.1.2.1
*** EnforceConfig.cmake.in	5 Jan 2009 19:14:25 -0000	1.1
--- EnforceConfig.cmake.in	28 Jan 2010 21:48:05 -0000	1.1.2.1
***************
*** 1,16 ****
! # Older versions of CMake do not support an empty configuration name in
! # CTEST_CONFIGURATION_TYPE for the 'testing' test.
! SET(CONFIG_REQUIRED)
! IF("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.6)
!   SET(CONFIG_REQUIRED 1)
! ELSE("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.6)
!   IF("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL 2.6)
!     IF("${CMAKE_PATCH_VERSION}" LESS 3)
!       SET(CONFIG_REQUIRED 1)
!    ENDIF("${CMAKE_PATCH_VERSION}" LESS 3)
!   ENDIF("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" STREQUAL 2.6)
! ENDIF("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.6)
  
! IF(NOT CTEST_CONFIGURATION_TYPE AND CONFIG_REQUIRED)
    SET(CTEST_CMD "@CMAKE_CTEST_COMMAND@@CMAKE_EXECUTABLE_SUFFIX@")
    GET_FILENAME_COMPONENT(CTEST_DIR "${CTEST_CMD}" PATH)
--- 1,11 ----
! # Choose a configuration with which to drive CTest tests.
! IF(CTEST_CONFIGURATION_TYPE)
!   SET(CTestTest_CONFIG "${CTEST_CONFIGURATION_TYPE}")
! ELSE(CTEST_CONFIGURATION_TYPE)
!   SET(CTestTest_CONFIG "@CTestTest_CONFIG@")
! ENDIF(CTEST_CONFIGURATION_TYPE)
  
! # Choose a configuration that was built if none is given.
! IF(NOT CTEST_CONFIGURATION_TYPE)
    SET(CTEST_CMD "@CMAKE_CTEST_COMMAND@@CMAKE_EXECUTABLE_SUFFIX@")
    GET_FILENAME_COMPONENT(CTEST_DIR "${CTEST_CMD}" PATH)
***************
*** 27,29 ****
    ENDIF(NOT CTEST_CONFIGURATION_TYPE)
    MESSAGE("Guessing configuration ${CTEST_CONFIGURATION_TYPE}")
! ENDIF(NOT CTEST_CONFIGURATION_TYPE AND CONFIG_REQUIRED)
--- 22,26 ----
    ENDIF(NOT CTEST_CONFIGURATION_TYPE)
    MESSAGE("Guessing configuration ${CTEST_CONFIGURATION_TYPE}")
! ENDIF(NOT CTEST_CONFIGURATION_TYPE)
! 
! @TEST_HOME_ENV_CODE@

Index: CTestUpdateSVN.cmake.in
===================================================================
RCS file: /cvsroot/CMake/CMake/Tests/CTestUpdateSVN.cmake.in,v
retrieving revision 1.5
retrieving revision 1.5.2.1
diff -C 2 -d -r1.5 -r1.5.2.1
*** CTestUpdateSVN.cmake.in	8 Apr 2009 13:22:08 -0000	1.5
--- CTestUpdateSVN.cmake.in	28 Jan 2010 21:48:04 -0000	1.5.2.1
***************
*** 6,9 ****
--- 6,10 ----
  get_filename_component(TOP "${CMAKE_CURRENT_LIST_FILE}" PATH)
  set(TOP "${TOP}/@CTestUpdateSVN_DIR@")
+ set(UPDATE_GLOBAL_ELEMENTS SVNPath)
  
  # Include code common to all update tests.

Index: CTestUpdateCVS.cmake.in
===================================================================
RCS file: /cvsroot/CMake/CMake/Tests/CTestUpdateCVS.cmake.in,v
retrieving revision 1.6
retrieving revision 1.6.2.1
diff -C 2 -d -r1.6 -r1.6.2.1
*** CTestUpdateCVS.cmake.in	22 Jun 2009 20:26:02 -0000	1.6
--- CTestUpdateCVS.cmake.in	28 Jan 2010 21:48:04 -0000	1.6.2.1
***************
*** 6,9 ****
--- 6,10 ----
  get_filename_component(TOP "${CMAKE_CURRENT_LIST_FILE}" PATH)
  set(TOP "${TOP}/@CTestUpdateCVS_DIR@")
+ set(UPDATE_NOT_GLOBAL 1)
  
  # Include code common to all update tests.

Index: CMakeLists.txt
===================================================================
RCS file: /cvsroot/CMake/CMake/Tests/CMakeLists.txt,v
retrieving revision 1.116.2.6
retrieving revision 1.116.2.7
diff -C 2 -d -r1.116.2.6 -r1.116.2.7
*** CMakeLists.txt	11 Nov 2009 18:34:17 -0000	1.116.2.6
--- CMakeLists.txt	28 Jan 2010 21:48:04 -0000	1.116.2.7
***************
*** 2,26 ****
  # directory and project
  MACRO(ADD_TEST_MACRO NAME COMMAND)
    ADD_TEST(${NAME} ${CMAKE_CTEST_COMMAND}
      --build-and-test
!     "${CMake_SOURCE_DIR}/Tests/${NAME}"
!     "${CMake_BINARY_DIR}/Tests/${NAME}"
      --build-two-config
      --build-generator ${CMAKE_TEST_GENERATOR}
      --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
!     --build-project ${NAME}
      --test-command ${COMMAND})
!   LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/${NAME}")
  ENDMACRO(ADD_TEST_MACRO)
  
! # Make sure the 'testing' test gets a proper configuration.
  CONFIGURE_FILE(${CMake_SOURCE_DIR}/Tests/EnforceConfig.cmake.in
                 ${CMake_BINARY_DIR}/Tests/EnforceConfig.cmake @ONLY)
- SET_DIRECTORY_PROPERTIES(PROPERTIES
-   TEST_INCLUDE_FILE "${CMake_BINARY_DIR}/Tests/EnforceConfig.cmake"
-   )
  
  # Testing
  IF(BUILD_TESTING)
    # Collect a list of all test build directories.
    SET(TEST_BUILD_DIRS)
--- 2,41 ----
  # directory and project
  MACRO(ADD_TEST_MACRO NAME COMMAND)
+   STRING(REPLACE "." "/" dir "${NAME}")
+   STRING(REGEX REPLACE "[^.]*\\." "" proj "${NAME}")
    ADD_TEST(${NAME} ${CMAKE_CTEST_COMMAND}
      --build-and-test
!     "${CMake_SOURCE_DIR}/Tests/${dir}"
!     "${CMake_BINARY_DIR}/Tests/${dir}"
      --build-two-config
      --build-generator ${CMAKE_TEST_GENERATOR}
      --build-makeprogram ${CMAKE_TEST_MAKEPROGRAM}
!     --build-project ${proj}
      --test-command ${COMMAND})
!   LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/${dir}")
  ENDMACRO(ADD_TEST_MACRO)
  
! # Fake a user home directory to avoid polluting the real one.
! IF(DEFINED ENV{HOME} AND NOT CTEST_NO_TEST_HOME)
!   SET(TEST_HOME "${CMake_BINARY_DIR}/Tests/CMakeFiles/TestHome")
!   FILE(MAKE_DIRECTORY "${TEST_HOME}")
!   FILE(WRITE "${TEST_HOME}/.cvspass" ":pserver:anoncvs at www.cmake.org:/cvsroot/KWSys A\n")
!   SET(TEST_HOME_ENV_CODE "# Fake a user home directory to avoid polluting the real one.
! SET(ENV{HOME} \"${TEST_HOME}\")")
! ENDIF()
! 
! # Choose a default configuration for CTest tests.
! SET(CTestTest_CONFIG Debug)
! IF(NOT CMAKE_CONFIGURATION_TYPES AND CMAKE_BUILD_TYPE)
!   SET(CTestTest_CONFIG ${CMAKE_BUILD_TYPE})
! ENDIF()
! 
  CONFIGURE_FILE(${CMake_SOURCE_DIR}/Tests/EnforceConfig.cmake.in
                 ${CMake_BINARY_DIR}/Tests/EnforceConfig.cmake @ONLY)
  
  # Testing
  IF(BUILD_TESTING)
+   ADD_SUBDIRECTORY(CMakeLib)
+ 
    # Collect a list of all test build directories.
    SET(TEST_BUILD_DIRS)
***************
*** 78,82 ****
      ON)
    MARK_AS_ADVANCED(CTEST_TEST_CPACK)
!   IF(APPLE AND CTEST_TEST_CPACK)
      EXECUTE_PROCESS(
        COMMAND sw_vers -productVersion
--- 93,98 ----
      ON)
    MARK_AS_ADVANCED(CTEST_TEST_CPACK)
!   SET(CTEST_TEST_OSX_ARCH 0)
!   IF(APPLE)
      EXECUTE_PROCESS(
        COMMAND sw_vers -productVersion
***************
*** 88,93 ****
        MESSAGE(STATUS "OSX_VERSION='${OSX_VERSION}'")
        SET(CTEST_TEST_CPACK OFF)
      ENDIF(OSX_VERSION MATCHES "^10\\.[0123]" OR OSX_VERSION MATCHES "ProductVersion:\t10\\.[0123]")
!   ENDIF(APPLE AND CTEST_TEST_CPACK)
  
    # Use 1500 or CTEST_TEST_TIMEOUT for long test timeout value,
--- 104,111 ----
        MESSAGE(STATUS "OSX_VERSION='${OSX_VERSION}'")
        SET(CTEST_TEST_CPACK OFF)
+     ELSE(OSX_VERSION MATCHES "^10\\.[0123]" OR OSX_VERSION MATCHES "ProductVersion:\t10\\.[0123]")
+       SET(CTEST_TEST_OSX_ARCH 1)
      ENDIF(OSX_VERSION MATCHES "^10\\.[0123]" OR OSX_VERSION MATCHES "ProductVersion:\t10\\.[0123]")
!   ENDIF(APPLE)
  
    # Use 1500 or CTEST_TEST_TIMEOUT for long test timeout value,
***************
*** 115,122 ****
--- 133,142 ----
    ADD_TEST_MACRO(CxxOnly CxxOnly)
    ADD_TEST_MACRO(IPO COnly/COnly)
+   ADD_TEST_MACRO(OutDir runtime/OutDir)
    ADD_TEST_MACRO(NewlineArgs NewlineArgs)
    ADD_TEST_MACRO(SetLang SetLang)
    ADD_TEST_MACRO(ExternalOBJ ExternalOBJ)
    ADD_TEST_MACRO(LoadCommand LoadedCommand)
+   ADD_TEST_MACRO(LinkDirectory bin/LinkDirectory)
    ADD_TEST_MACRO(LinkLanguage LinkLanguage)
    ADD_TEST_MACRO(LinkLine LinkLine)
***************
*** 131,137 ****
--- 151,167 ----
    ADD_TEST_MACRO(Unset Unset)
    ADD_TEST_MACRO(PolicyScope PolicyScope)
+   ADD_TEST_MACRO(CrossCompile CrossCompile)
+   SET_TESTS_PROPERTIES(CrossCompile PROPERTIES
+     PASS_REGULAR_EXPRESSION "TRY_RUN.. invoked in cross-compiling mode")
    IF("${CMAKE_TEST_GENERATOR}" MATCHES "Make")
      ADD_TEST_MACRO(Policy0002 Policy0002)
    ENDIF("${CMAKE_TEST_GENERATOR}" MATCHES "Make")
+   IF(CTEST_TEST_OSX_ARCH)
+     ADD_TEST_MACRO(Architecture Architecture)
+     SET_TESTS_PROPERTIES(Architecture PROPERTIES
+       PASS_REGULAR_EXPRESSION "(file is not of required architecture|does not match cputype)")
+   ENDIF(CTEST_TEST_OSX_ARCH)
+ 
+   LIST(APPEND TEST_BUILD_DIRS ${CMake_TEST_INSTALL_PREFIX})
  
    SET(CMAKE_BUILD_TEST_SOURCE_DIR "${CMake_SOURCE_DIR}/Tests/COnly")
***************
*** 141,144 ****
--- 171,177 ----
    ADD_TEST(CMakeBuildTest ${CMAKE_CMAKE_COMMAND} -P
      "${CMake_BINARY_DIR}/Tests/CMakeBuildTest.cmake")
+   LIST(APPEND TEST_BUILD_DIRS ${CMAKE_BUILD_TEST_BINARY_DIR})
+ 
+   ADD_TEST_MACRO(Module.CheckTypeSize CheckTypeSize)
  
    # If we are running right now with a UnixMakefiles based generator,
***************
*** 394,397 ****
--- 427,431 ----
      --build-options
      "-DCMAKE_INSTALL_PREFIX:PATH=${SimpleInstallInstallDir}"
+     "-DCTEST_TEST_CPACK:BOOL=${CTEST_TEST_CPACK}"
      --test-command   ${SimpleInstallInstallDir}/MyTest/bin/SimpleInstExe)
    LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/SimpleInstall")
***************
*** 1152,1156 ****
    SET_TESTS_PROPERTIES(CTestTestNoBuild PROPERTIES
      FAIL_REGULAR_EXPRESSION "Error" WILL_FAIL true)
!   
    CONFIGURE_FILE(
      "${CMake_SOURCE_DIR}/Tests/CTestTestFailure/testNoExe.cmake.in"
--- 1186,1190 ----
    SET_TESTS_PROPERTIES(CTestTestNoBuild PROPERTIES
      FAIL_REGULAR_EXPRESSION "Error" WILL_FAIL true)
! 
    CONFIGURE_FILE(
      "${CMake_SOURCE_DIR}/Tests/CTestTestFailure/testNoExe.cmake.in"
***************
*** 1165,1168 ****
--- 1199,1246 ----
      FAIL_REGULAR_EXPRESSION "SegFault")
  
+ 
+   # Use macro, not function so that build can still be driven by CMake 2.4.
+   # After 2.6 is required, this could be a function without the extra 'set'
+   # calls.
+   #
+   macro(add_config_tests cfg)
+     set(cfg "${cfg}")
+     set(base "${CMake_BINARY_DIR}/Tests/CTestConfig")
+ 
+     # Test -S script with a -C config arg to ctest:
+     configure_file(
+       "${CMake_SOURCE_DIR}/Tests/CTestConfig/script.cmake.in"
+       "${base}/${cfg}-script.cmake"
+       @ONLY ESCAPE_QUOTES)
+     add_test(CTestConfig.Script.${cfg} ${CMAKE_CTEST_COMMAND}
+       -C ${cfg}
+       -S "${base}/${cfg}-script.cmake" -VV
+       --output-log "${base}/${cfg}-script.log"
+       )
+ 
+     # Test -D dashboard with a -C config arg to ctest.
+     # (Actual commands inside a cmake -P script because we need to be able to set
+     #  the working directory reliably...)
+     configure_file(
+       "${CMake_SOURCE_DIR}/Tests/CTestConfig/dashboard.cmake.in"
+       "${base}/${cfg}-dashboard.cmake"
+       @ONLY ESCAPE_QUOTES)
+     add_test(CTestConfig.Dashboard.${cfg} ${CMAKE_CMAKE_COMMAND}
+       -P "${base}/${cfg}-dashboard.cmake" -VV
+       )
+   endmacro()
+ 
+   add_config_tests(Debug)
+   add_config_tests(MinSizeRel)
+   add_config_tests(Release)
+   add_config_tests(RelWithDebInfo)
+ 
+   add_test(CMakeCommands.build_command ${CMAKE_CMAKE_COMMAND}
+     -DCMake_SOURCE_DIR=${CMake_SOURCE_DIR}
+     -Ddir=${CMake_BINARY_DIR}/Tests/CMakeCommands/build_command
+     -Dgen=${CMAKE_TEST_GENERATOR}
+     -P "${CMake_SOURCE_DIR}/Tests/CMakeCommands/build_command/RunCMake.cmake"
+   )
+ 
    CONFIGURE_FILE(
      "${CMake_SOURCE_DIR}/Tests/CTestTestCrash/test.cmake.in"
***************
*** 1183,1186 ****
--- 1261,1281 ----
      
    CONFIGURE_FILE(
+     "${CMake_SOURCE_DIR}/Tests/CTestTestBadExe/test.cmake.in"
+     "${CMake_BINARY_DIR}/Tests/CTestTestBadExe/test.cmake"
+     @ONLY ESCAPE_QUOTES)
+   ADD_TEST(CTestTestBadExe ${CMAKE_CTEST_COMMAND}
+     -S "${CMake_BINARY_DIR}/Tests/CTestTestBadExe/test.cmake" -V
+     --output-log "${CMake_BINARY_DIR}/Tests/CTestTestBadExe/testOutput.log"
+     )
+   SET(CTestTestBadExe_REGEX "BAD_COMMAND")
+   # cygwin can not be made to produce a BAD_COMMAND error
+   # the best we can get from it is a failed test
+   IF(CYGWIN)
+     SET(CTestTestBadExe_REGEX "\\*\\*\\*Failed")
+   ENDIF()
+   SET_TESTS_PROPERTIES(CTestTestBadExe PROPERTIES
+     PASS_REGULAR_EXPRESSION "${CTestTestBadExe_REGEX}")
+ 
+   CONFIGURE_FILE(
      "${CMake_SOURCE_DIR}/Tests/CTestTestParallel/test.cmake.in"
      "${CMake_BINARY_DIR}/Tests/CTestTestParallel/test.cmake"
***************
*** 1208,1216 ****
      @ONLY ESCAPE_QUOTES)
    ADD_TEST(CTestTestTimeout ${CMAKE_CTEST_COMMAND}
      -S "${CMake_BINARY_DIR}/Tests/CTestTestTimeout/test.cmake" -V
      --output-log "${CMake_BINARY_DIR}/Tests/CTestTestTimeout/testOutput.log"
      )
    SET_TESTS_PROPERTIES(CTestTestTimeout PROPERTIES
!     PASS_REGULAR_EXPRESSION "\\*\\*\\*Timeout")
    
    CONFIGURE_FILE(
--- 1303,1312 ----
      @ONLY ESCAPE_QUOTES)
    ADD_TEST(CTestTestTimeout ${CMAKE_CTEST_COMMAND}
+     -C "\${CTestTest_CONFIG}"
      -S "${CMake_BINARY_DIR}/Tests/CTestTestTimeout/test.cmake" -V
      --output-log "${CMake_BINARY_DIR}/Tests/CTestTestTimeout/testOutput.log"
      )
    SET_TESTS_PROPERTIES(CTestTestTimeout PROPERTIES
!     PASS_REGULAR_EXPRESSION "TestTimeout *\\.+ *\\*\\*\\*Timeout.*CheckChild *\\.+ *Passed")
    
    CONFIGURE_FILE(
***************
*** 1226,1234 ****
      --output-log "${CMake_BINARY_DIR}/Tests/CTestTestRunScript/testOutput.log"
      )
!   
    ADD_TEST(CTestTestShowOnly ${CMAKE_CTEST_COMMAND} -N)
!   
    ADD_TEST(CTestBatchTest ${CMAKE_CTEST_COMMAND} -B)
!   
    # Use macro, not function so that build can still be driven by CMake 2.4.
    # After 2.6 is required, this could be a function without the extra 'set'
--- 1322,1330 ----
      --output-log "${CMake_BINARY_DIR}/Tests/CTestTestRunScript/testOutput.log"
      )
! 
    ADD_TEST(CTestTestShowOnly ${CMAKE_CTEST_COMMAND} -N)
! 
    ADD_TEST(CTestBatchTest ${CMAKE_CTEST_COMMAND} -B)
! 
    # Use macro, not function so that build can still be driven by CMake 2.4.
    # After 2.6 is required, this could be a function without the extra 'set'
***************
*** 1250,1253 ****
--- 1346,1350 ----
    set(regex "${regex}([Cc]ould *n.t resolve host")
    set(regex "${regex}|[Cc]ould *n.t connect to host")
+   set(regex "${regex}|The requested URL returned error")
    set(regex "${regex}|libcurl was built with SSL disabled. https: not supported)")
    set(regex "${regex}|Submission method .xmlrpc. not compiled into CTest")
***************
*** 1381,1385 ****
      IF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
        SET_TESTS_PROPERTIES ( BootstrapTest
!         PROPERTIES TIMEOUT ${CMAKE_LONG_TEST_TIMEOUT})
      ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
    ENDIF(UNIX AND CMAKE_RUN_LONG_TESTS AND NOT CMAKE_SKIP_BOOTSTRAP_TEST)
--- 1478,1482 ----
      IF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
        SET_TESTS_PROPERTIES ( BootstrapTest
!         PROPERTIES TIMEOUT 5400)
      ENDIF ("${PREVIOUS_TIMEOUT}" MATCHES NOTFOUND)
    ENDIF(UNIX AND CMAKE_RUN_LONG_TESTS AND NOT CMAKE_SKIP_BOOTSTRAP_TEST)
***************
*** 1387,1401 ****
    # fortran does not work for IDE builds because
    # CMAKE_STANDARD_LIBRARIES needs to be per language
!   IF(CMAKE_TEST_GENERATOR MATCHES "Makefiles"
!      OR CMAKE_TEST_GENERATOR MATCHES "KDevelop")
!     # 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 gfortran-4 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
--- 1484,1490 ----
    # fortran does not work for IDE builds because
    # CMAKE_STANDARD_LIBRARIES needs to be per language
!   IF(CMAKE_TEST_GENERATOR MATCHES "Make|KDevelop")
!     INCLUDE(${CMAKE_CURRENT_SOURCE_DIR}/CheckFortran.cmake)
!     IF(CMAKE_Fortran_COMPILER)
        ADD_TEST(Fortran ${CMAKE_CTEST_COMMAND}
          --build-and-test
***************
*** 1408,1414 ****
          --test-command testf)
        LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/Fortran")
!     ENDIF(CMAKE_Fortran_COMPILER_FULLPATH)
!   ENDIF(CMAKE_TEST_GENERATOR MATCHES "Makefiles"
!      OR CMAKE_TEST_GENERATOR MATCHES "KDevelop")
  
    IF(NOT CMAKE_TEST_GENERATOR MATCHES "Xcode")
--- 1497,1511 ----
          --test-command testf)
        LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/Fortran")
! 
!       # FortranCInterface tests.
!       IF(UNIX)
!         CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/FortranC/Flags.cmake.in
!                        ${CMAKE_CURRENT_BINARY_DIR}/FortranC/Flags.cmake @ONLY)
!         ADD_TEST(FortranC.Flags ${CMAKE_CMAKE_COMMAND} -P
!           ${CMAKE_CURRENT_BINARY_DIR}/FortranC/Flags.cmake)
!         LIST(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/FortranC/Flags")
!       ENDIF()
!     ENDIF()
!   ENDIF()
  
    IF(NOT CMAKE_TEST_GENERATOR MATCHES "Xcode")
***************
*** 1493,1496 ****
--- 1590,1606 ----
    ENDIF(UNIX)
  
+   IF(CMAKE_TEST_PROJECT_CSE_DIR)
+     SET(script "${CMAKE_TEST_PROJECT_CSE_DIR}/BuildProjectCSE.cmake")
+     IF(NOT EXISTS "${script}")
+       SET(script "${CMAKE_TEST_PROJECT_CSE_DIR}/cse_build.cmake")
+     ENDIF(NOT EXISTS "${script}")
+     IF(NOT EXISTS "${script}")
+       MESSAGE("warning: CMAKE_TEST_PROJECT_CSE_DIR set, but no build script found...")
+     ENDIF(NOT EXISTS "${script}")
+ 
+     ADD_TEST(BuildCSE ${CMAKE_CTEST_COMMAND} -V -S "${script}")
+     SET_TESTS_PROPERTIES(BuildCSE PROPERTIES TIMEOUT 5400)
+   ENDIF(CMAKE_TEST_PROJECT_CSE_DIR)
+ 
    IF(CMAKE_TEST_PLPLOT_DIR)
      ADD_TEST(plplot ${CMAKE_CTEST_COMMAND} -V -S ${CMAKE_TEST_PLPLOT_DIR}/../../EasyDashboardScripts/plplot.cmake )

--- NEW FILE: CMakeInstall.cmake ---
# Define option CMake_TEST_INSTALL, and enable by default for dashboards.
set(_default 0)
if(DEFINED ENV{DASHBOARD_TEST_FROM_CTEST})
  set(_default 1)
endif()
option(CMake_TEST_INSTALL "Test CMake Installation" ${_default})
mark_as_advanced(CMake_TEST_INSTALL)

if(CMake_TEST_INSTALL)
  # Do not build during the test.
  set(CMAKE_SKIP_INSTALL_ALL_DEPENDENCY 1)

  # Install to a test directory.
  set(CMake_TEST_INSTALL_PREFIX ${CMake_BINARY_DIR}/Tests/CMakeInstall)
  set(CMAKE_INSTALL_PREFIX "${CMake_TEST_INSTALL_PREFIX}")

  if(CMAKE_CONFIGURATION_TYPES)
    # There are multiple configurations.  Make sure the tested
    # configuration is the one that is installed.
    set(CMake_TEST_INSTALL_CONFIG -C "\${CTEST_CONFIGURATION_TYPE}")
  else()
    set(CMake_TEST_INSTALL_CONFIG)
  endif()

  # The CTest of the CMake used to build this CMake.
  if(CMAKE_CTEST_COMMAND)
    set(CMake_TEST_INSTALL_CTest ${CMAKE_CTEST_COMMAND})
  else()
    set(CMake_TEST_INSTALL_CTest ${CMake_BIN_DIR}/ctest)
  endif()

  # Add a test to install CMake through the build system install target.
  add_test(CMake.Install
    ${CMake_TEST_INSTALL_CTest}
    ${CMake_TEST_INSTALL_CONFIG}
    --build-and-test ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR}
    --build-generator ${CMAKE_GENERATOR} # Not CMAKE_TEST_GENERATOR
    --build-project CMake
    --build-makeprogram ${CMAKE_MAKE_PROGRAM} # Not CMAKE_TEST_MAKEPROGRAM
    --build-nocmake
    --build-noclean
    --build-target install)

  # TODO: Make all other tests depend on this one, and then drive them
  # with the installed CTest.
else()
  set(CMake_TEST_INSTALL_PREFIX)
endif()

--- NEW FILE: CheckFortran.cmake ---

#=============================================================================
# Copyright 2009 Kitware, Inc.
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
# (To distributed this file outside of CMake, substitute the full
#  License text for the above reference.)

if(NOT DEFINED CMAKE_Fortran_COMPILER)
  set(_desc "Looking for a Fortran compiler")
  message(STATUS ${_desc})
  file(REMOVE_RECURSE ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CheckFortran)
  file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CheckFortran/CMakeLists.txt"
    "cmake_minimum_required(VERSION 2.4)
project(CheckFortran Fortran)
file(WRITE \"\${CMAKE_CURRENT_BINARY_DIR}/result.cmake\"
  \"set(CMAKE_Fortran_COMPILER \\\"\${CMAKE_Fortran_COMPILER}\\\")\\n\"
  \"set(CMAKE_Fortran_FLAGS \\\"\${CMAKE_Fortran_FLAGS}\\\")\\n\"
  )
")
  execute_process(
    WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CheckFortran
    COMMAND ${CMAKE_COMMAND} . -G ${CMAKE_GENERATOR}
    OUTPUT_VARIABLE output
    ERROR_VARIABLE output
    RESULT_VARIABLE result
    )
  include(${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/CheckFortran/result.cmake OPTIONAL)
  if(CMAKE_Fortran_COMPILER AND "${result}" STREQUAL "0")
    file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
      "${_desc} passed with the following output:\n"
      "${output}\n")
  else()
    set(CMAKE_Fortran_COMPILER NOTFOUND)
    file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
      "${_desc} failed with the following output:\n"
      "${output}\n")
  endif()
  message(STATUS "${_desc} - ${CMAKE_Fortran_COMPILER}")
  set(CMAKE_Fortran_COMPILER "${CMAKE_Fortran_COMPILER}" CACHE FILEPATH "Fortran compiler")
  mark_as_advanced(CMAKE_Fortran_COMPILER)
  set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS}" CACHE STRING "Fortran flags")
  mark_as_advanced(CMAKE_Fortran_FLAGS)
endif()

Index: CTestUpdateCommon.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Tests/CTestUpdateCommon.cmake,v
retrieving revision 1.6
retrieving revision 1.6.2.1
diff -C 2 -d -r1.6 -r1.6.2.1
*** CTestUpdateCommon.cmake	12 Aug 2009 02:01:49 -0000	1.6
--- CTestUpdateCommon.cmake	28 Jan 2010 21:48:04 -0000	1.6.2.1
***************
*** 46,49 ****
--- 46,68 ----
    endforeach(f)
  
+   if(NOT UPDATE_NOT_GLOBAL)
+     set(rev_elements Revision PriorRevision ${UPDATE_GLOBAL_ELEMENTS})
+     string(REPLACE ";" "|" rev_regex "${rev_elements}")
+     set(rev_regex "^\t<(${rev_regex})>[^<\n]+</(${rev_regex})>$")
+     file(STRINGS ${TOP}/${UPDATE_XML_FILE} UPDATE_XML_REVISIONS
+       REGEX "${rev_regex}"
+       LIMIT_INPUT 4096
+       )
+     foreach(r IN LISTS UPDATE_XML_REVISIONS)
+       string(REGEX REPLACE "${rev_regex}" "\\1" element "${r}")
+       set(element_${element} 1)
+     endforeach()
+     foreach(element ${rev_elements})
+       if(NOT element_${element})
+         list(APPEND MISSING "global <${element}> element")
+       endif()
+     endforeach()
+   endif()
+ 
    # Report the result
    if(MISSING)



More information about the Cmake-commits mailing list