[Cmake-commits] [cmake-commits] king committed CMakeCPack.cmake 1.13 1.14 CMakeLists.txt 1.148 1.149 bootstrap 1.114 1.115

cmake-commits at cmake.org cmake-commits at cmake.org
Thu Mar 5 15:17:08 EST 2009


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

Modified Files:
	CMakeCPack.cmake CMakeLists.txt bootstrap 
Log Message:
ENH: Overhaul CMake version numbering

This moves the version numbers into an isolated configured header so
that not all of CMake needs to rebuild when the version changes.

Previously we had spaces, dashes and/or the word 'patch' randomly chosen
before the patch number.  Now we always report version numbers in the
traditional format "<major>.<minor>.<patch>[-rc<rc>]".

We still use odd minor numbers for development versions.  Now we also
use the CCYYMMDD date as the patch number of development versions, thus
allowing tests for exact CMake versions.


Index: CMakeCPack.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/CMakeCPack.cmake,v
retrieving revision 1.13
retrieving revision 1.14
diff -C 2 -d -r1.13 -r1.14
*** CMakeCPack.cmake	23 May 2008 15:47:43 -0000	1.13
--- CMakeCPack.cmake	5 Mar 2009 20:17:06 -0000	1.14
***************
*** 19,34 ****
    SET(CPACK_PACKAGE_VERSION_MAJOR "${CMake_VERSION_MAJOR}")
    SET(CPACK_PACKAGE_VERSION_MINOR "${CMake_VERSION_MINOR}")
! # if version date is set then use that as the patch 
!   IF(CMake_VERSION_DATE)
!     SET(CPACK_PACKAGE_VERSION_PATCH "${CMake_VERSION_DATE}")
!   ELSE(CMake_VERSION_DATE)
!     SET(CPACK_PACKAGE_VERSION_PATCH "${CMake_VERSION_PATCH}")
!   ENDIF(CMake_VERSION_DATE)
    SET(CPACK_PACKAGE_INSTALL_DIRECTORY "CMake ${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}")
    SET(CPACK_SOURCE_PACKAGE_FILE_NAME
!     "cmake-${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
    IF(CMake_VERSION_RC)
      SET(CPACK_SOURCE_PACKAGE_FILE_NAME
!       "${CPACK_SOURCE_PACKAGE_FILE_NAME}-RC-${CMake_VERSION_RC}")
    ENDIF(CMake_VERSION_RC)
    IF(NOT DEFINED CPACK_SYSTEM_NAME)
--- 19,29 ----
    SET(CPACK_PACKAGE_VERSION_MAJOR "${CMake_VERSION_MAJOR}")
    SET(CPACK_PACKAGE_VERSION_MINOR "${CMake_VERSION_MINOR}")
!   SET(CPACK_PACKAGE_VERSION_PATCH "${CMake_VERSION_PATCH}")
    SET(CPACK_PACKAGE_INSTALL_DIRECTORY "CMake ${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}")
    SET(CPACK_SOURCE_PACKAGE_FILE_NAME
!     "cmake-${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}.${CMake_VERSION_PATCH}")
    IF(CMake_VERSION_RC)
      SET(CPACK_SOURCE_PACKAGE_FILE_NAME
!       "${CPACK_SOURCE_PACKAGE_FILE_NAME}-rc${CMake_VERSION_RC}")
    ENDIF(CMake_VERSION_RC)
    IF(NOT DEFINED CPACK_SYSTEM_NAME)
***************
*** 83,87 ****
      # setup the name of the package for cygwin cmake-2.4.3
      SET(CPACK_PACKAGE_FILE_NAME
!       "${CPACK_PACKAGE_NAME}-${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
      # the source has the same name as the binary
      SET(CPACK_SOURCE_PACKAGE_FILE_NAME ${CPACK_PACKAGE_FILE_NAME})
--- 78,82 ----
      # setup the name of the package for cygwin cmake-2.4.3
      SET(CPACK_PACKAGE_FILE_NAME
!       "${CPACK_PACKAGE_NAME}-${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}.${CMake_VERSION_PATCH}")
      # the source has the same name as the binary
      SET(CPACK_SOURCE_PACKAGE_FILE_NAME ${CPACK_PACKAGE_FILE_NAME})

Index: bootstrap
===================================================================
RCS file: /cvsroot/CMake/CMake/bootstrap,v
retrieving revision 1.114
retrieving revision 1.115
diff -C 2 -d -r1.114 -r1.115
*** bootstrap	15 Sep 2008 21:53:27 -0000	1.114
--- bootstrap	5 Mar 2009 20:17:06 -0000	1.115
***************
*** 41,48 ****
  cmake_version_major="`cmake_version_component MAJOR`"
  cmake_version_minor="`cmake_version_component MINOR`"
! cmake_version_patch="`cmake_version_component PATCH`"
  cmake_version="${cmake_version_major}.${cmake_version_minor}"
  cmake_version_full="${cmake_version_major}.${cmake_version_minor}.${cmake_version_patch}"
- cmake_date_stamp="`cmake_date_stamp_component YEAR``cmake_date_stamp_component MONTH``cmake_date_stamp_component DAY`"
  cmake_data_dir="/share/cmake-${cmake_version}"
  cmake_doc_dir="/doc/cmake-${cmake_version}"
--- 41,51 ----
  cmake_version_major="`cmake_version_component MAJOR`"
  cmake_version_minor="`cmake_version_component MINOR`"
! if echo "${cmake_version_minor}" | grep "[0-9]*[13579]" > /dev/null 2>&1; then
!   cmake_version_patch="`cmake_date_stamp_component YEAR``cmake_date_stamp_component MONTH``cmake_date_stamp_component DAY`"
! else
!   cmake_version_patch="`cmake_version_component PATCH`"
! fi
  cmake_version="${cmake_version_major}.${cmake_version_minor}"
  cmake_version_full="${cmake_version_major}.${cmake_version_minor}.${cmake_version_patch}"
  cmake_data_dir="/share/cmake-${cmake_version}"
  cmake_doc_dir="/doc/cmake-${cmake_version}"
***************
*** 284,296 ****
  cmake_version_display()
  {
!   (
!   # Get CMake version
!   if echo "${cmake_version_full}" | grep "[0-9]\.[0-9]*[13579]\.[0-9]" > /dev/null 2>&1; then
!     version="${cmake_version}-${cmake_date_stamp}"
!   else
!     version="${cmake_version}-${cmake_version_patch}"
!   fi
!   echo "CMake ${version}, Copyright (c) 2007 Kitware, Inc., Insight Consortium"
!   )
  }
  
--- 287,291 ----
  cmake_version_display()
  {
!   echo "CMake ${cmake_version_full}, Copyright (c) 2000-2009 Kitware, Inc., Insight Consortium"
  }
  
***************
*** 595,598 ****
--- 590,594 ----
  rm -f "${cmake_bootstrap_dir}/cmake_bootstrap.log"
  rm -f "${cmake_bootstrap_dir}/cmConfigure.h.tmp"
+ rm -f "${cmake_bootstrap_dir}/cmVersionConfig.h.tmp"
  
  # If exist compiler flags, set them
***************
*** 1205,1221 ****
  
  # Write CMake version
! cmake_report cmConfigure.h.tmp "#define CMake_VERSION_MAJOR ${cmake_version_major}"
! cmake_report cmConfigure.h.tmp "#define CMake_VERSION_MINOR ${cmake_version_minor}"
! cmake_report cmConfigure.h.tmp "#define CMake_VERSION_PATCH ${cmake_version_patch}"
  cmake_report cmConfigure.h.tmp "#define CMAKE_ROOT_DIR \"${cmake_root_dir}\""
  cmake_report cmConfigure.h.tmp "#define CMAKE_DATA_DIR \"${cmake_data_dir}\""
  cmake_report cmConfigure.h.tmp "#define CMAKE_BOOTSTRAP"
  
! # Regenerate real cmConfigure.h
! if diff cmConfigure.h cmConfigure.h.tmp > /dev/null 2> /dev/null; then
!   rm -f cmConfigure.h.tmp
! else
!   mv -f cmConfigure.h.tmp cmConfigure.h
! fi
  
  # Prepare KWSYS
--- 1201,1219 ----
  
  # Write CMake version
! cmake_report cmVersionConfig.h.tmp "#define CMake_VERSION_MAJOR ${cmake_version_major}"
! cmake_report cmVersionConfig.h.tmp "#define CMake_VERSION_MINOR ${cmake_version_minor}"
! cmake_report cmVersionConfig.h.tmp "#define CMake_VERSION_PATCH ${cmake_version_patch}"
  cmake_report cmConfigure.h.tmp "#define CMAKE_ROOT_DIR \"${cmake_root_dir}\""
  cmake_report cmConfigure.h.tmp "#define CMAKE_DATA_DIR \"${cmake_data_dir}\""
  cmake_report cmConfigure.h.tmp "#define CMAKE_BOOTSTRAP"
  
! # Regenerate configured headers
! for h in Configure VersionConfig; do
!   if diff cm${h}.h cm${h}.h.tmp > /dev/null 2> /dev/null; then
!     rm -f cm${h}.h.tmp
!   else
!     mv -f cm${h}.h.tmp cm${h}.h
!   fi
! done
  
  # Prepare KWSYS
***************
*** 1229,1240 ****
    "${cmake_compiler_settings_comment}"
  
- cat>"${cmake_bootstrap_dir}/cmsys/DateStamp.h"<<EOF
- /* Minimal DateStamp header for CMake bootstrap build.  */
- #ifndef cmsys_DateStamp_h
- #define cmsys_DateStamp_h
- #define cmsys_DATE_STAMP_STRING_FULL "${cmake_date_stamp}"
- #endif
- EOF
- 
  for a in ${KWSYS_FILES}; do 
    cmake_replace_string "${cmake_source_dir}/Source/kwsys/${a}.in" \
--- 1227,1230 ----

Index: CMakeLists.txt
===================================================================
RCS file: /cvsroot/CMake/CMake/CMakeLists.txt,v
retrieving revision 1.148
retrieving revision 1.149
diff -C 2 -d -r1.148 -r1.149
*** CMakeLists.txt	29 Sep 2008 19:47:45 -0000	1.148
--- CMakeLists.txt	5 Mar 2009 20:17:06 -0000	1.149
***************
*** 362,370 ****
  SET(CMake_VERSION_PATCH 0)
  
! # CVS versions are odd, if this is an odd minor version
! # then set the CMake_VERSION_DATE variable
  IF("${CMake_VERSION_MINOR}" MATCHES "[13579]$")
    INCLUDE(${CMake_SOURCE_DIR}/Source/kwsys/kwsysDateStamp.cmake)
!   SET(CMake_VERSION_DATE
      "${KWSYS_DATE_STAMP_YEAR}${KWSYS_DATE_STAMP_MONTH}${KWSYS_DATE_STAMP_DAY}"
      )
--- 362,370 ----
  SET(CMake_VERSION_PATCH 0)
  
! # We use odd minor numbers for development versions.
! # Use a date for the development patch level.
  IF("${CMake_VERSION_MINOR}" MATCHES "[13579]$")
    INCLUDE(${CMake_SOURCE_DIR}/Source/kwsys/kwsysDateStamp.cmake)
!   SET(CMake_VERSION_PATCH
      "${KWSYS_DATE_STAMP_YEAR}${KWSYS_DATE_STAMP_MONTH}${KWSYS_DATE_STAMP_DAY}"
      )
***************
*** 426,433 ****
      SET(CMAKE_BUNDLE_NAME
        "CMake ${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}-${CMake_VERSION_PATCH}")
-     IF(CMake_VERSION_DATE)
-       SET(CMAKE_BUNDLE_NAME
-         "CMake ${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}-${CMake_VERSION_DATE}")
-     ENDIF(CMake_VERSION_DATE)
      SET(CMAKE_BUNDLE_LOCATION "${CMAKE_INSTALL_PREFIX}")
      # make sure CMAKE_INSTALL_PREFIX ends in /
--- 426,429 ----



More information about the Cmake-commits mailing list