[Cmake-commits] [cmake-commits] hoffman committed CPack.Info.plist.in 1.5.2.1 1.5.2.2 CPack.cmake 1.35.2.3 1.35.2.4 FindBoost.cmake 1.4.2.3 1.4.2.4 FindQt4.cmake 1.96.2.12 1.96.2.13 FindwxWidgets.cmake 1.18.2.2 1.18.2.3 NSIS.template.in 1.25.2.2 1.25.2.3
cmake-commits at cmake.org
cmake-commits at cmake.org
Sun Jul 13 17:55:27 EDT 2008
Update of /cvsroot/CMake/CMake/Modules
In directory public:/mounts/ram/cvs-serv32502/Modules
Modified Files:
Tag: CMake-2-6
CPack.Info.plist.in CPack.cmake FindBoost.cmake FindQt4.cmake
FindwxWidgets.cmake NSIS.template.in
Log Message:
ENH: Merge from head create RC7
Index: NSIS.template.in
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/NSIS.template.in,v
retrieving revision 1.25.2.2
retrieving revision 1.25.2.3
diff -C 2 -d -r1.25.2.2 -r1.25.2.3
*** NSIS.template.in 25 Jun 2008 13:51:32 -0000 1.25.2.2
--- NSIS.template.in 13 Jul 2008 21:55:23 -0000 1.25.2.3
***************
*** 38,41 ****
--- 38,43 ----
SetCompressor @CPACK_NSIS_COMPRESSOR@
+ @CPACK_NSIS_DEFINES@
+
!include Sections.nsh
***************
*** 61,64 ****
--- 63,71 ----
!macroend
+ ; Sets the value of a variable
+ !macro StoreVar VarName IntValue
+ IntOp $${VarName} 0 + ${IntValue}
+ !macroend
+
!macro InitSection SecName
; This macro reads component installed flag from the registry and
***************
*** 77,83 ****
IntOp $AR_SecFlags $AR_RegFlags | $AR_SecFlags ;Change lowest bit
;Writing modified flags
SectionSetFlags ${${SecName}} $AR_SecFlags
!
"default_${SecName}:"
!insertmacro LoadSectionSelectedIntoVar ${SecName} ${SecName}_selected
--- 84,94 ----
IntOp $AR_SecFlags $AR_RegFlags | $AR_SecFlags ;Change lowest bit
+ ; Note whether this component was installed before
+ !insertmacro StoreVar ${SecName}_was_installed $AR_RegFlags
+ IntOp $R0 $AR_RegFlags & $AR_RegFlags
+
;Writing modified flags
SectionSetFlags ${${SecName}} $AR_SecFlags
!
"default_${SecName}:"
!insertmacro LoadSectionSelectedIntoVar ${SecName} ${SecName}_selected
***************
*** 462,465 ****
--- 473,503 ----
;--------------------------------
+
+ !ifdef CPACK_USES_DOWNLOAD
+ Function DownloadFile
+ IfFileExists $INSTDIR\* +2
+ CreateDirectory $INSTDIR
+ Pop $0
+
+ ; Skip if already downloaded
+ IfFileExists $INSTDIR\$0 0 +2
+ Return
+
+ StrCpy $1 "@CPACK_DOWNLOAD_SITE@"
+
+ try_again:
+ NSISdl::download "$1/$0" "$INSTDIR\$0"
+
+ Pop $1
+ StrCmp $1 "success" success
+ StrCmp $1 "Cancelled" cancel
+ MessageBox MB_OK "Download failed: $1"
+ cancel:
+ Return
+ success:
+ FunctionEnd
+ !endif
+
+ ;--------------------------------
; Installation types
@CPACK_NSIS_INSTALLATION_TYPES@
***************
*** 520,524 ****
SetOutPath "$INSTDIR"
@CPACK_NSIS_FULL_INSTALL@
!
;Store installation folder
WriteRegStr SHCTX "Software\@CPACK_PACKAGE_VENDOR@\@CPACK_PACKAGE_INSTALL_REGISTRY_KEY@" "" $INSTDIR
--- 558,562 ----
SetOutPath "$INSTDIR"
@CPACK_NSIS_FULL_INSTALL@
!
;Store installation folder
WriteRegStr SHCTX "Software\@CPACK_PACKAGE_VENDOR@\@CPACK_PACKAGE_INSTALL_REGISTRY_KEY@" "" $INSTDIR
***************
*** 538,542 ****
--- 576,593 ----
Push "$INSTDIR\Uninstall.exe"
Call ConditionalAddToRegisty
+ Push "NoRepair"
+ Push "1"
+ Call ConditionalAddToRegisty
+
+ !ifdef CPACK_NSIS_ADD_REMOVE
+ ;Create add/remove functionality
Push "ModifyPath"
+ Push "$INSTDIR\AddRemove.exe"
+ Call ConditionalAddToRegisty
+ !else
+ Push "NoModify"
+ Push "1"
+ Call ConditionalAddToRegisty
+ !endif
; Optional registration
***************
*** 641,644 ****
--- 692,712 ----
;Removes unselected components and writes component status to registry
!insertmacro SectionList "FinishSection"
+
+ !ifdef CPACK_NSIS_ADD_REMOVE
+ ; Get the name of the installer executable
+ System::Call 'kernel32::GetModuleFileNameA(i 0, t .R0, i 1024) i r1'
+ StrCpy $R3 $R0
+
+ ; Strip off the last 13 characters, to see if we have AddRemove.exe
+ StrLen $R1 $R0
+ IntOp $R1 $R0 - 13
+ StrCpy $R2 $R0 13 $R1
+ StrCmp $R2 "AddRemove.exe" addremove_installed
+
+ ; We're not running AddRemove.exe, so install it
+ CopyFiles $R3 $INSTDIR\AddRemove.exe
+
+ addremove_installed:
+ !endif
SectionEnd
;--- End of Add/Remove callback functions ---
***************
*** 675,678 ****
--- 743,751 ----
@CPACK_NSIS_DELETE_DIRECTORIES@
+ !ifdef CPACK_NSIS_ADD_REMOVE
+ ;Remove the add/remove program
+ Delete "$INSTDIR\AddRemove.exe"
+ !endif
+
;Remove the uninstaller itself.
Delete "$INSTDIR\Uninstall.exe"
Index: FindQt4.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/FindQt4.cmake,v
retrieving revision 1.96.2.12
retrieving revision 1.96.2.13
diff -C 2 -d -r1.96.2.12 -r1.96.2.13
*** FindQt4.cmake 13 Jun 2008 12:55:15 -0000 1.96.2.12
--- FindQt4.cmake 13 Jul 2008 21:55:23 -0000 1.96.2.13
***************
*** 1344,1350 ****
IF(EXISTS "${QT_MKSPECS_DIR}/qconfig.pri")
FILE(READ ${QT_MKSPECS_DIR}/qconfig.pri _qconfig_FILE_contents)
! STRING(REGEX MATCH "QT_CONFIG[^\n]+" QT_QCONFIG ${_qconfig_FILE_contents})
! STRING(REGEX MATCH "CONFIG[^\n]+" QT_CONFIG ${_qconfig_FILE_contents})
! STRING(REGEX MATCH "EDITION[^\n]+" QT_EDITION ${_qconfig_FILE_contents})
ENDIF(EXISTS "${QT_MKSPECS_DIR}/qconfig.pri")
IF("${QT_EDITION}" MATCHES "DesktopLight")
--- 1344,1350 ----
IF(EXISTS "${QT_MKSPECS_DIR}/qconfig.pri")
FILE(READ ${QT_MKSPECS_DIR}/qconfig.pri _qconfig_FILE_contents)
! STRING(REGEX MATCH "QT_CONFIG[^\n]+" QT_QCONFIG "${_qconfig_FILE_contents}")
! STRING(REGEX MATCH "CONFIG[^\n]+" QT_CONFIG "${_qconfig_FILE_contents}")
! STRING(REGEX MATCH "EDITION[^\n]+" QT_EDITION "${_qconfig_FILE_contents}")
ENDIF(EXISTS "${QT_MKSPECS_DIR}/qconfig.pri")
IF("${QT_EDITION}" MATCHES "DesktopLight")
Index: CPack.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/CPack.cmake,v
retrieving revision 1.35.2.3
retrieving revision 1.35.2.4
diff -C 2 -d -r1.35.2.3 -r1.35.2.4
*** CPack.cmake 25 Jun 2008 13:51:31 -0000 1.35.2.3
--- CPack.cmake 13 Jul 2008 21:55:23 -0000 1.35.2.4
***************
*** 1,5 ****
! # Default output files will be CPackConfig.cmake and CPackSourceConfig.cmake.
! # This can be overwritten with CPACK_OUTPUT_CONFIG_FILE and
! # CPACK_SOURCE_OUTPUT_CONFIG_FILE.
# Pick a configuration file
--- 1,389 ----
! # - Build binary and source package installers
! #
! # The CPack module generates binary and source installers in a variety
! # of formats using the cpack program. Inclusion of the CPack module
! # adds two new targets to the resulting makefiles, package and
! # package_source, which build the binary and source installers,
! # respectively. The generated binary installers contain everything
! # installed via CMake's INSTALL command (and the deprecated
! # INSTALL_FILES, INSTALL_PROGRAMS, and INSTALL_TARGETS commands).
! #
! # For certain kinds of binary installers (including the graphical
! # installers on Mac OS X and Windows), CPack generates installers that
! # allow users to select individual application components to
! # install. The contents of each of the components are identified by
! # the COMPONENT argument of CMake's INSTALL command. These components
! # can be annotated with user-friendly names and descriptions,
! # inter-component dependencies, etc., and grouped in various ways to
! # customize the resulting installer. See the cpack_add_* commands,
! # described below, for more information about component-specific
! # installations.
! #
! # Before including the CPack module, there are a variety of variables
! # that can be set to customize the resulting installers. The most
! # commonly-used variables are:
! #
! # CPACK_PACKAGE_NAME - The name of the package (or application). If
! # not specified, defaults to the project name.
! #
! # CPACK_PACKAGE_VENDOR - The name of the package vendor (e.g.,
! # "Kitware").
! #
! # CPACK_PACKAGE_VERSION_MAJOR - Package major Version
! #
! # CPACK_PACKAGE_VERSION_MINOR - Package minor Version
! #
! # CPACK_PACKAGE_VERSION_PATCH - Package patch Version
! #
! # CPACK_PACKAGE_DESCRIPTION_FILE - A text file used to describe the
! # project. Used, for example, the introduction screen of a
! # CPack-generated Windows installer to describe the project.
! #
! # CPACK_PACKAGE_DESCRIPTION_SUMMARY - Short description of the
! # project (only a few words).
! #
! # CPACK_PACKAGE_FILE_NAME - The name of the package file to generate,
! # not including the extension. For example, cmake-2.6.1-Linux-i686.
! #
! # CPACK_PACKAGE_INSTALL_DIRECTORY - Installation directory on the
! # target system, e.g., "CMake 2.5".
! #
! # CPACK_RESOURCE_FILE_LICENSE - License file for the project, which
! # will typically be displayed to the user (often with an explicit
! # "Accept" button, for graphical installers) prior to installation.
! #
! # CPACK_RESOURCE_FILE_README - ReadMe file for the project, which
! # typically describes in some detail
! #
! # CPACK_RESOURCE_FILE_WELCOME - Welcome file for the project, which
! # welcomes users to this installer. Typically used in the graphical
! # installers on Windows and Mac OS X.
! #
! # CPACK_MONOLITHIC_INSTALL - Disables the component-based
! # installation mechanism, so that all components are always installed.
! #
! # CPACK_GENERATOR - List of CPack generators to use. If not
! # specified, CPack will create a set of options (e.g.,
! # CPACK_BINARY_NSIS) allowing the user to enable/disable individual
! # generators.
! #
! # CPACK_OUTPUT_CONFIG_FILE - The name of the CPack configuration file
! # for binary installers that will be generated by the CPack
! # module. Defaults to CPackConfig.cmake.
! #
! # CPACK_PACKAGE_EXECUTABLES - Lists each of the executables along
! # with a text label, to be used to create Start Menu shortcuts on
! # Windows. For example, setting this to the list ccmake;CMake will
! # create a shortcut named "CMake" that will execute the installed
! # executable ccmake.
! #
! # CPACK_STRIP_FILES - List of files to be stripped. Starting with
! # CMake 2.6.0 CPACK_STRIP_FILES will be a boolean variable which
! # enables stripping of all files (a list of files evaluates to TRUE
! # in CMake, so this change is compatible).
! #
! # The following CPack variables are specific to source packages, and
! # will not affect binary packages:
! #
! # CPACK_SOURCE_PACKAGE_FILE_NAME - The name of the source package,
! # e.g., cmake-2.6.1
! #
! # CPACK_SOURCE_STRIP_FILES - List of files in the source tree that
! # will be stripped. Starting with CMake 2.6.0
! # CPACK_SOURCE_STRIP_FILES will be a boolean variable which enables
! # stripping of all files (a list of files evaluates to TRUE in CMake,
! # so this change is compatible).
! #
! # CPACK_SOURCE_GENERATOR - List of generators used for the source
! # packages. As with CPACK_GENERATOR, if this is not specified then
! # CPack will create a set of options (e.g., CPACK_SOURCE_ZIP)
! # allowing users to select which packages will be generated.
! #
! # CPACK_SOURCE_OUTPUT_CONFIG_FILE - The name of the CPack
! # configuration file for source installers that will be generated by
! # the CPack module. Defaults to CPackSourceConfig.cmake.
! #
! # CPACK_SOURCE_IGNORE_FILES - Pattern of files in the source tree
! # that won't be packaged when building a source package. This is a
! # list of patterns, e.g., /CVS/;/\\.svn/;\\.swp$;\\.#;/#;.*~;cscope.*
! #
! # The following variables are specific to the graphical installers built
! # on Windows using the Nullsoft Installation System.
! #
! # CPACK_PACKAGE_INSTALL_REGISTRY_KEY - Registry key used when
! # installing this project.
! #
! # CPACK_NSIS_MUI_ICON - The icon file (.ico) for the generated
! # install program.
! #
! # CPACK_NSIS_MUI_UNIICON - The icon file (.ico) for the generated
! # uninstall program.
! #
! # CPACK_PACKAGE_ICON - A branding image that will be displayed inside
! # the installer.
! #
! # CPACK_NSIS_EXTRA_INSTALL_COMMANDS - Extra NSIS commands that will
! # be added to the install Section.
! #
! # CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS - Extra NSIS commands that will
! # be added to the uninstall Section.
! #
! # CPACK_NSIS_COMPRESSOR - The arguments that will be passed to the
! # NSIS SetCompressor command.
! #
! # CPACK_NSIS_MODIFY_PATH - If this is set to "ON", then an extra page
! # will appear in the installer that will allow the user to choose
! # whether the program directory should be added to the system PATH
! # variable.
! #
! # CPACK_NSIS_DISPLAY_NAME - The title displayed at the top of the
! # installer.
! #
! # CPACK_NSIS_INSTALLED_ICON_NAME - A path to the executable that
! # contains the installer icon.
! #
! # CPACK_NSIS_HELP_LINK - URL to a web site providing assistance in
! # installing your application.
! #
! # CPACK_NSIS_URL_INFO_ABOUT - URL to a web site providing more
! # information about your application.
! #
! # CPACK_NSIS_CONTACT - Contact information for questions and comments
! # about the installation process.
! #
! # CPACK_NSIS_CREATE_ICONS_EXTRA - Additional NSIS commands for
! # creating start menu shortcuts.
! #
! # CPACK_NSIS_DELETE_ICONS_EXTRA -Additional NSIS commands to
! # uninstall start menu shortcuts.
! #
! # The following variable is specific to installers build on Mac OS X
! # using PackageMaker:
! #
! # CPACK_OSX_PACKAGE_VERSION - The version of Mac OS X that the
! # resulting PackageMaker archive should be compatible
! # with. Different versions of Mac OS X support different
! # features. For example, CPack can only build component-based
! # installers for Mac OS X 10.4 or newer, and can only build
! # installers that download component son-the-fly for Mac OS X 10.5
! # or newer. If left blank, this value will be set to the minimum
! # version of Mac OS X that supports the requested features. Set this
! # variable to some value (e.g., 10.4) only if you want to guarantee
! # that your installer will work on that version of Mac OS X, and
! # don't mind missing extra features available in the installer
! # shipping with later versions of Mac OS X.
! #
! # The following variables are for advanced uses of CPack:
! #
! # CPACK_CMAKE_GENERATOR - What CMake generator should be used if the
! # project is CMake project. Defaults to the value of CMAKE_GENERATOR;
! # few users will want to change this setting.
! #
! # CPACK_INSTALL_CMAKE_PROJECTS - List of four values that specify
! # what project to install. The four values are: Build directory,
! # Project Name, Project Component, Directory. If omitted, CPack will
! # build an installer that installers everything.
! #
! # CPACK_SYSTEM_NAME - System name, defaults to the value of
! # ${CMAKE_SYSTEM_NAME}.
! #
! # CPACK_PACKAGE_VERSION - Package full version, used internally. By
! # default, this is built from CPACK_PACKAGE_VERSION_MAJOR,
! # CPACK_PACKAGE_VERSION_MINOR, and CPACK_PACKAGE_VERSION_PATCH.
! #
! # CPACK_TOPLEVEL_TAG - Directory for the installed files.
! #
! # CPACK_INSTALL_COMMANDS - Extra commands to install components.
! #
! # CPACK_INSTALL_DIRECTORIES - Extra directories to install.
! #
! # Component-specific installation allows users to select specific sets
! # of components to install during the install process. Installation
! # components are identified by the COMPONENT argument of CMake's
! # INSTALL commands, and should be further described by the following
! # CPack commands:
! #
! # cpack_add_component - Describes a CPack installation component
! # named by the COMPONENT argument to a CMake INSTALL command.
! #
! # cpack_add_component(compname
! # [DISPLAY_NAME name]
! # [DESCRIPTION description]
! # [HIDDEN | REQUIRED | DISABLED ]
! # [GROUP group]
! # [DEPENDS comp1 comp2 ... ]
! # [INSTALL_TYPES type1 type2 ... ]
! # [DOWNLOADED]
! # [ARCHIVE_FILE filename])
! #
! # The cmake_add_component command describes an installation
! # component, which the user can opt to install or remove as part of
! # the graphical installation process. compname is the name of the
! # component, as provided to the COMPONENT argument of one or more
! # CMake INSTALL commands.
! #
! # DISPLAY_NAME is the displayed name of the component, used in
! # graphical installers to display the component name. This value can
! # be any string.
! #
! # DESCRIPTION is an extended description of the component, used in
! # graphical installers to give the user additional information about
! # the component. Descriptions can span multiple lines using "\n" as
! # the line separator. Typically, these descriptions should be no
! # more than a few lines long.
! #
! # HIDDEN indicates that this component will be hidden in the
! # graphical installer, so that the user cannot directly change
! # whether it is installed or not.
! #
! # REQUIRED indicates that this component is required, and therefore
! # will always be installed. It will be visible in the graphical
! # installer, but it cannot be unselected. (Typically, required
! # components are shown greyed out).
! #
! # DISABLED indicates that this component should be disabled
! # (unselected) by default. The user is free to select this component
! # for installation, unless it is also HIDDEN.
! #
! # DEPENDS lists the components on which this component depends. If
! # this component is selected, then each of the components listed
! # must also be selected. The dependency information is encoded
! # within the installer itself, so that users cannot install
! # inconsitent sets of components.
! #
! # GROUP names the component group of which this component is a
! # part. If not provided, the component will be a standalone
! # component, not part of any component group. Component groups are
! # described with the cpack_add_component_group command, detailed
! # below.
! #
! # INSTALL_TYPES lists the installation types of which this component
! # is a part. When one of these installations types is selected, this
! # component will automatically be selected. Installation types are
! # described with the cpack_add_install_type command, detailed below.
! #
! # DOWNLOADED indicates that this component should be downloaded
! # on-the-fly by the installer, rather than packaged in with the
! # installer itself. For more information, see the cpack_configure_downloads
! # command.
! #
! # ARCHIVE_FILE provides a name for the archive file created by CPack
! # to be used for downloaded components. If not supplied, CPack will
! # create a file with some name based on CPACK_PACKAGE_FILE_NAME and
! # the name of the component. See cpack_configure_downloads for more
! # information.
! #
! # cpack_add_component_group - Describes a group of related CPack
! # installation components.
! #
! # cpack_add_component_group(groupname
! # [DISPLAY_NAME name]
! # [DESCRIPTION description]
! # [PARENT_GROUP parent]
! # [EXPANDED]
! # [BOLD_TITLE])
! #
! # The cpack_add_component_group describes a group of installation
! # components, which will be placed together within the listing of
! # options. Typically, component groups allow the user to
! # select/deselect all of the components within a single group via a
! # single group-level option. Use component groups to reduce the
! # complexity of installers with many options. groupname is an
! # arbitrary name used to identify the group in the GROUP argument of
! # the cpack_add_component command, which is used to place a
! # component in a group. The name of the group must not conflict with
! # the name of any component.
! #
! # DISPLAY_NAME is the displayed name of the component group, used in
! # graphical installers to display the component group name. This
! # value can be any string.
! #
! # DESCRIPTION is an extended description of the component group,
! # used in graphical installers to give the user additional
! # information about the components within that group. Descriptions
! # can span multiple lines using "\n" as the line
! # separator. Typically, these descriptions should be no more than a
! # few lines long.
! #
! # PARENT_GROUP, if supplied, names the parent group of this group.
! # Parent groups are used to establish a hierarchy of groups,
! # providing an arbitrary hierarchy of groups.
! #
! # EXPANDED indicates that, by default, the group should show up as
! # "expanded", so that the user immediately sees all of the
! # components within the group. Otherwise, the group will initially
! # show up as a single entry.
! #
! # BOLD_TITLE indicates that the group title should appear in bold,
! # to call the user's attention to the group.
! #
! # cpack_add_install_type - Add a new installation type containing a
! # set of predefined component selections to the graphical installer.
! #
! # cpack_add_install_type(typename
! # [DISPLAY_NAME name])
! #
! # The cpack_add_install_type command identifies a set of preselected
! # components that represents a common use case for an
! # application. For example, a "Developer" install type might include
! # an application along with its header and library files, while an
! # "End user" install type might just include the application's
! # executable. Each component identifies itself with one or more
! # install types via the INSTALL_TYPES argument to
! # cpack_add_component.
! #
! # DISPLAY_NAME is the displayed name of the install type, which will
! # typically show up in a drop-down box within a graphical
! # installer. This value can be any string.
! #
! # cpack_configure_downloads - Configure CPack to download selected
! # components on-the-fly as part of the installation process.
! #
! # cpack_configure_downloads(site
! # [UPLOAD_DIRECTORY dirname]
! # [ALL]
! # [ADD_REMOVE|NO_ADD_REMOVE])
! #
! # The cpack_configure_downloads command configures installation-time
! # downloads of selected components. For each downloadable component,
! # CPack will create an archive containing the contents of that
! # component, which should be uploaded to the given site. When the
! # user selects that component for installation, the installer will
! # download and extract the component in place. This feature is
! # useful for creating small installers that only download the
! # requested components, saving bandwidth. Additionally, the
! # installers are small enough that they will be installed as part of
! # the normal installation process, and the "Change" button in
! # Windows Add/Remove Programs control panel will allow one to add or
! # remove parts of the application after the original
! # installation. On Windows, the downloaded-components functionality
! # requires the ZipDLL plug-in for NSIS, available at:
! #
! # http://nsis.sourceforge.net/ZipDLL_plug-in
! #
! # On Mac OS X, installers that download components on-the-fly can
! # only be built and installed on system using Mac OS X 10.5 or
! # later.
! #
! # The site argument is a URL where the archives for downloadable
! # components will reside, e.g., http://www.cmake.org/files/2.6.1/installer/
! # All of the archives produced by CPack should be uploaded to that location.
! #
! # UPLOAD_DIRECTORY is the local directory where CPack will create the
! # various archives for each of the components. The contents of this
! # directory should be uploaded to a location accessible by the URL given
! # in the site argument. If omitted, CPack will use the directory CPackUploads
! # inside the CMake binary directory to store the generated archives.
! #
! # The ALL flag indicates that all components be downloaded. Otherwise, only
! # those components explicitly marked as DOWNLOADED or that have a specified
! # ARCHIVE_FILE will be downloaded. Additionally, the ALL option implies
! # ADD_REMOVE (unless NO_ADD_REMOVE is specified).
! #
! # ADD_REMOVE indicates that CPack should install a copy of the installer
! # that can be called from Windows' Add/Remove Programs dialog (via the
! # "Modify" button) to change the set of installed components. NO_ADD_REMOVE
! # turns off this behavior. This option is ignored on Mac OS X.
!
# Pick a configuration file
***************
*** 13,16 ****
--- 397,609 ----
ENDIF(EXISTS "${CMAKE_SOURCE_DIR}/CPackSourceConfig.cmake.in")
+ # Argument-parsing macro from http://www.cmake.org/Wiki/CMakeMacroParseArguments
+ MACRO(cpack_parse_arguments prefix arg_names option_names)
+ SET(${prefix}_DEFAULT_ARGS)
+ FOREACH(arg_name ${arg_names})
+ SET(${prefix}_${arg_name})
+ ENDFOREACH(arg_name)
+ FOREACH(option ${option_names})
+ SET(${prefix}_${option} FALSE)
+ ENDFOREACH(option)
+
+ SET(current_arg_name DEFAULT_ARGS)
+ SET(current_arg_list)
+ FOREACH(arg ${ARGN})
+ SET(larg_names ${arg_names})
+ LIST(FIND larg_names "${arg}" is_arg_name)
+ IF (is_arg_name GREATER -1)
+ SET(${prefix}_${current_arg_name} ${current_arg_list})
+ SET(current_arg_name ${arg})
+ SET(current_arg_list)
+ ELSE (is_arg_name GREATER -1)
+ SET(loption_names ${option_names})
+ LIST(FIND loption_names "${arg}" is_option)
+ IF (is_option GREATER -1)
+ SET(${prefix}_${arg} TRUE)
+ ELSE (is_option GREATER -1)
+ SET(current_arg_list ${current_arg_list} ${arg})
+ ENDIF (is_option GREATER -1)
+ ENDIF (is_arg_name GREATER -1)
+ ENDFOREACH(arg)
+ SET(${prefix}_${current_arg_name} ${current_arg_list})
+ ENDMACRO(cpack_parse_arguments)
+
+ # Macro that appends a SET command for the given variable name (var)
+ # to the macro named strvar, but only if the variable named "var"
+ # has been defined. The string will eventually be appended to a CPack
+ # configuration file.
+ MACRO(cpack_append_variable_set_command var strvar)
+ IF (DEFINED ${var})
+ SET(${strvar} "${${strvar}}SET(${var}")
+ FOREACH(APPENDVAL ${${var}})
+ SET(${strvar} "${${strvar}} ${APPENDVAL}")
+ ENDFOREACH(APPENDVAL)
+ SET(${strvar} "${${strvar}})\n")
+ ENDIF (DEFINED ${var})
+ ENDMACRO(cpack_append_variable_set_command)
+
+ # Macro that appends a SET command for the given variable name (var)
+ # to the macro named strvar, but only if the variable named "var"
+ # has been defined and is a string. The string will eventually be
+ # appended to a CPack configuration file.
+ MACRO(cpack_append_string_variable_set_command var strvar)
+ IF (DEFINED ${var})
+ LIST(LENGTH ${var} CPACK_APP_VALUE_LEN)
+ IF(${CPACK_APP_VALUE_LEN} EQUAL 1)
+ SET(${strvar} "${${strvar}}SET(${var} \"${${var}}\")\n")
+ ENDIF(${CPACK_APP_VALUE_LEN} EQUAL 1)
+ ENDIF (DEFINED ${var})
+ ENDMACRO(cpack_append_string_variable_set_command)
+
+ # Macro that appends a SET command for the given variable name (var)
+ # to the macro named strvar, but only if the variable named "var"
+ # has been set to true. The string will eventually be
+ # appended to a CPack configuration file.
+ MACRO(cpack_append_option_set_command var strvar)
+ IF (${var})
+ LIST(LENGTH ${var} CPACK_APP_VALUE_LEN)
+ IF(${CPACK_APP_VALUE_LEN} EQUAL 1)
+ SET(${strvar} "${${strvar}}SET(${var} TRUE)\n")
+ ENDIF(${CPACK_APP_VALUE_LEN} EQUAL 1)
+ ENDIF (${var})
+ ENDMACRO(cpack_append_option_set_command)
+
+ # Macro that adds a component to the CPack installer
+ MACRO(cpack_add_component compname)
+ STRING(TOUPPER ${compname} CPACK_ADDCOMP_UNAME)
+ cpack_parse_arguments(CPACK_COMPONENT_${CPACK_ADDCOMP_UNAME}
+ "DISPLAY_NAME;DESCRIPTION;GROUP;DEPENDS;INSTALL_TYPES;ARCHIVE_FILE"
+ "HIDDEN;REQUIRED;DISABLED;DOWNLOADED"
+ ${ARGN}
+ )
+
+ if (CPACK_COMPONENT_${CPACK_ADDCOMP_UNAME}_DOWNLOADED)
+ SET(CPACK_ADDCOMP_STR "\n# Configuration for downloaded component \"${compname}\"\n")
+ else ()
+ SET(CPACK_ADDCOMP_STR "\n# Configuration for component \"${compname}\"\n")
+ endif ()
+
+ IF(NOT CPACK_MONOLITHIC_INSTALL)
+ # If the user didn't set CPACK_COMPONENTS_ALL explicitly, update the
+ # value of CPACK_COMPONENTS_ALL in the configuration file. This will
+ # take care of any components that have been added after the CPack
+ # moduled was included.
+ IF(NOT CPACK_COMPONENTS_ALL_SET_BY_USER)
+ GET_CMAKE_PROPERTY(CPACK_ADDCOMP_COMPONENTS COMPONENTS)
+ SET(CPACK_ADDCOMP_STR "${CPACK_ADDCOMP_STR}\nSET(CPACK_COMPONENTS_ALL")
+ FOREACH(COMP ${CPACK_ADDCOMP_COMPONENTS})
+ SET(CPACK_ADDCOMP_STR "${CPACK_ADDCOMP_STR} ${COMP}")
+ ENDFOREACH(COMP)
+ SET(CPACK_ADDCOMP_STR "${CPACK_ADDCOMP_STR})\n")
+ ENDIF(NOT CPACK_COMPONENTS_ALL_SET_BY_USER)
+ ENDIF(NOT CPACK_MONOLITHIC_INSTALL)
+
+ cpack_append_string_variable_set_command(
+ CPACK_COMPONENT_${CPACK_ADDCOMP_UNAME}_DISPLAY_NAME
+ CPACK_ADDCOMP_STR)
+ cpack_append_string_variable_set_command(
+ CPACK_COMPONENT_${CPACK_ADDCOMP_UNAME}_DESCRIPTION
+ CPACK_ADDCOMP_STR)
+ cpack_append_variable_set_command(
+ CPACK_COMPONENT_${CPACK_ADDCOMP_UNAME}_GROUP
+ CPACK_ADDCOMP_STR)
+ cpack_append_variable_set_command(
+ CPACK_COMPONENT_${CPACK_ADDCOMP_UNAME}_DEPENDS
+ CPACK_ADDCOMP_STR)
+ cpack_append_variable_set_command(
+ CPACK_COMPONENT_${CPACK_ADDCOMP_UNAME}_INSTALL_TYPES
+ CPACK_ADDCOMP_STR)
+ cpack_append_string_variable_set_command(
+ CPACK_COMPONENT_${CPACK_ADDCOMP_UNAME}_ARCHIVE_FILE
+ CPACK_ADDCOMP_STR)
+ cpack_append_option_set_command(
+ CPACK_COMPONENT_${CPACK_ADDCOMP_UNAME}_HIDDEN
+ CPACK_ADDCOMP_STR)
+ cpack_append_option_set_command(
+ CPACK_COMPONENT_${CPACK_ADDCOMP_UNAME}_REQUIRED
+ CPACK_ADDCOMP_STR)
+ cpack_append_option_set_command(
+ CPACK_COMPONENT_${CPACK_ADDCOMP_UNAME}_DISABLED
+ CPACK_ADDCOMP_STR)
+ cpack_append_option_set_command(
+ CPACK_COMPONENT_${CPACK_ADDCOMP_UNAME}_DOWNLOADED
+ CPACK_ADDCOMP_STR)
+ FILE(APPEND "${CPACK_OUTPUT_CONFIG_FILE}" "${CPACK_ADDCOMP_STR}")
+ ENDMACRO(cpack_add_component)
+
+ # Macro that adds a component group to the CPack installer
+ MACRO(cpack_add_component_group grpname)
+ STRING(TOUPPER ${grpname} CPACK_ADDGRP_UNAME)
+ cpack_parse_arguments(CPACK_COMPONENT_GROUP_${CPACK_ADDGRP_UNAME}
+ "DISPLAY_NAME;DESCRIPTION"
+ "EXPANDED;BOLD_TITLE"
+ ${ARGN}
+ )
+
+ SET(CPACK_ADDGRP_STR "\n# Configuration for component group \"${grpname}\"\n")
+ cpack_append_string_variable_set_command(
+ CPACK_COMPONENT_GROUP_${CPACK_ADDGRP_UNAME}_DISPLAY_NAME
+ CPACK_ADDGRP_STR)
+ cpack_append_string_variable_set_command(
+ CPACK_COMPONENT_GROUP_${CPACK_ADDGRP_UNAME}_DESCRIPTION
+ CPACK_ADDGRP_STR)
+ cpack_append_option_set_command(
+ CPACK_COMPONENT_GROUP_${CPACK_ADDGRP_UNAME}_EXPANDED
+ CPACK_ADDGRP_STR)
+ cpack_append_option_set_command(
+ CPACK_COMPONENT_GROUP_${CPACK_ADDGRP_UNAME}_BOLD_TITLE
+ CPACK_ADDGRP_STR)
+ FILE(APPEND "${CPACK_OUTPUT_CONFIG_FILE}" "${CPACK_ADDGRP_STR}")
+ ENDMACRO(cpack_add_component_group)
+
+ # Macro that adds an installation type to the CPack installer
+ MACRO(cpack_add_install_type insttype)
+ STRING(TOUPPER ${insttype} CPACK_INSTTYPE_UNAME)
+ cpack_parse_arguments(CPACK_INSTALL_TYPE_${CPACK_INSTTYPE_UNAME}
+ "DISPLAY_NAME"
+ ""
+ ${ARGN}
+ )
+
+ SET(CPACK_INSTTYPE_STR
+ "\n# Configuration for installation type \"${insttype}\"\n")
+ SET(CPACK_INSTTYPE_STR
+ "${CPACK_INSTTYPE_STR}LIST(APPEND CPACK_ALL_INSTALL_TYPES ${insttype})\n")
+ cpack_append_string_variable_set_command(
+ CPACK_INSTALL_TYPE_${CPACK_INSTTYPE_UNAME}_DISPLAY_NAME
+ CPACK_INSTTYPE_STR)
+ FILE(APPEND "${CPACK_OUTPUT_CONFIG_FILE}" "${CPACK_INSTTYPE_STR}")
+ ENDMACRO(cpack_add_install_type)
+
+ MACRO(cpack_configure_downloads site)
+ cpack_parse_arguments(CPACK_DOWNLOAD
+ "UPLOAD_DIRECTORY"
+ "ALL;ADD_REMOVE;NO_ADD_REMOVE"
+ ${ARGN}
+ )
+
+ SET(CPACK_CONFIG_DL_STR
+ "\n# Downloaded components configuration\n")
+ SET(CPACK_UPLOAD_DIRECTORY ${CPACK_DOWNLOAD_UPLOAD_DIRECTORY})
+ SET(CPACK_DOWNLOAD_SITE ${site})
+ cpack_append_string_variable_set_command(
+ CPACK_DOWNLOAD_SITE
+ CPACK_CONFIG_DL_STR)
+ cpack_append_string_variable_set_command(
+ CPACK_UPLOAD_DIRECTORY
+ CPACK_CONFIG_DL_STR)
+ cpack_append_option_set_command(
+ CPACK_DOWNLOAD_ALL
+ CPACK_CONFIG_DL_STR)
+ IF (${CPACK_DOWNLOAD_ALL} AND NOT ${CPACK_DOWNLOAD_NO_ADD_REMOVE})
+ SET(CPACK_DOWNLOAD_ADD_REMOVE ON)
+ ENDIF (${CPACK_DOWNLOAD_ALL} AND NOT ${CPACK_DOWNLOAD_NO_ADD_REMOVE})
+ SET(CPACK_ADD_REMOVE ${CPACK_DOWNLOAD_ADD_REMOVE})
+ cpack_append_option_set_command(
+ CPACK_ADD_REMOVE
+ CPACK_CONFIG_DL_STR)
+ FILE(APPEND "${CPACK_OUTPUT_CONFIG_FILE}" "${CPACK_CONFIG_DL_STR}")
+ ENDMACRO(cpack_configure_downloads)
+
# Macro for setting values if a user did not overwrite them
MACRO(cpack_set_if_not_set name value)
***************
*** 198,201 ****
--- 791,827 ----
cpack_set_if_not_set(CPACK_NSIS_INSTALLER_MUI_ICON_CODE "")
+ IF(DEFINED CPACK_COMPONENTS_ALL)
+ IF(CPACK_MONOLITHIC_INSTALL)
+ MESSAGE("CPack warning: both CPACK_COMPONENTS_ALL and CPACK_MONOLITHIC_INSTALL have been set.\nDefaulting to a monolithic installation.")
+ SET(CPACK_COMPONENTS_ALL)
+ ELSE(CPACK_MONOLITHIC_INSTALL)
+ # The user has provided the set of components to be installed as
+ # part of a component-based installation; trust her.
+ SET(CPACK_COMPONENTS_ALL_SET_BY_USER TRUE)
+ ENDIF(CPACK_MONOLITHIC_INSTALL)
+ ELSE(DEFINED CPACK_COMPONENTS_ALL)
+ # If the user has not specifically requested a monolithic installer
+ # but has specified components in various "install" commands, tell
+ # CPack about those components.
+ IF(NOT CPACK_MONOLITHIC_INSTALL)
+ GET_CMAKE_PROPERTY(CPACK_COMPONENTS_ALL COMPONENTS)
+ LIST(LENGTH CPACK_COMPONENTS_ALL CPACK_COMPONENTS_LEN)
+ IF(CPACK_COMPONENTS_LEN EQUAL 1)
+ # Only one component: this is not a component-based installation
+ # (at least, it isn't a component-based installation, but may
+ # become one later if the user uses the cpack_add_* commands).
+ SET(CPACK_COMPONENTS_ALL)
+ ENDIF(CPACK_COMPONENTS_LEN EQUAL 1)
+ SET(CPACK_COMPONENTS_LEN)
+ ENDIF(NOT CPACK_MONOLITHIC_INSTALL)
+ ENDIF(DEFINED CPACK_COMPONENTS_ALL)
+
+ # CMake always generates a component named "Unspecified", which is
+ # used to install everything that doesn't have an explicitly-provided
+ # component. Since these files should always be installed, we'll make
+ # them hidden and required.
+ set(CPACK_COMPONENT_UNSPECIFIED_HIDDEN TRUE)
+ set(CPACK_COMPONENT_UNSPECIFIED_REQUIRED TRUE)
+
cpack_encode_variables()
configure_file("${cpack_input_file}" "${CPACK_OUTPUT_CONFIG_FILE}" @ONLY IMMEDIATE)
Index: FindwxWidgets.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/FindwxWidgets.cmake,v
retrieving revision 1.18.2.2
retrieving revision 1.18.2.3
diff -C 2 -d -r1.18.2.2 -r1.18.2.3
*** FindwxWidgets.cmake 25 Jun 2008 13:51:32 -0000 1.18.2.2
--- FindwxWidgets.cmake 13 Jul 2008 21:55:23 -0000 1.18.2.3
***************
*** 281,285 ****
# Find wxWidgets multilib libraries.
! FOREACH(LIB core adv aui html media xrc dbgrid gl qa)
FIND_LIBRARY(WX_${LIB}${_DBG}
NAMES
--- 281,285 ----
# Find wxWidgets multilib libraries.
! FOREACH(LIB core adv aui html media xrc dbgrid gl qa richtext)
FIND_LIBRARY(WX_${LIB}${_DBG}
NAMES
***************
*** 322,326 ****
# Clear wxWidgets multilib libraries.
! FOREACH(LIB core adv aui html media xrc dbgrid gl qa)
WX_CLEAR_LIB(WX_${LIB}${_DBG})
ENDFOREACH(LIB)
--- 322,326 ----
# Clear wxWidgets multilib libraries.
! FOREACH(LIB core adv aui html media xrc dbgrid gl qa richtext)
WX_CLEAR_LIB(WX_${LIB}${_DBG})
ENDFOREACH(LIB)
***************
*** 396,399 ****
--- 396,400 ----
$ENV{ProgramFiles}
PATH_SUFFIXES
+ wxWidgets-2.8.8
wxWidgets-2.8.7
wxWidgets-2.8.6
Index: CPack.Info.plist.in
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/CPack.Info.plist.in,v
retrieving revision 1.5.2.1
retrieving revision 1.5.2.2
diff -C 2 -d -r1.5.2.1 -r1.5.2.2
*** CPack.Info.plist.in 25 Jun 2008 13:51:31 -0000 1.5.2.1
--- CPack.Info.plist.in 13 Jul 2008 21:55:23 -0000 1.5.2.2
***************
*** 33,37 ****
<real>0.10000000149011612</real>
<key>CFBundleIdentifier</key>
! <string>com. at CPACK_PACKAGE_VENDOR@. at CPACK_PACKAGE_NAME@. at CPACK_PACKAGE_VERSION@@CPACK_MODULE_VERSION_SUFFIX@</string>
</dict>
</plist>
--- 33,37 ----
<real>0.10000000149011612</real>
<key>CFBundleIdentifier</key>
! <string>com. at CPACK_PACKAGE_VENDOR@. at CPACK_PACKAGE_NAME@@CPACK_MODULE_VERSION_SUFFIX@</string>
</dict>
</plist>
Index: FindBoost.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/FindBoost.cmake,v
retrieving revision 1.4.2.3
retrieving revision 1.4.2.4
diff -C 2 -d -r1.4.2.3 -r1.4.2.4
*** FindBoost.cmake 15 May 2008 19:39:49 -0000 1.4.2.3
--- FindBoost.cmake 13 Jul 2008 21:55:23 -0000 1.4.2.4
***************
*** 42,46 ****
# strings, where each string contains a number, i.e.
# SET(Boost_ADDITIONAL_VERSIONS "0.99.0" "1.35.0")
! # BOOST_ROOT Preferred installation prefix for searching for Boost,
# set this if the module has problems finding the proper Boost installation
# BOOST_INCLUDEDIR Set this to the include directory of Boost, if the
--- 42,46 ----
# strings, where each string contains a number, i.e.
# SET(Boost_ADDITIONAL_VERSIONS "0.99.0" "1.35.0")
! # BOOST_ROOT or BOOSTROOT Preferred installation prefix for searching for Boost,
# set this if the module has problems finding the proper Boost installation
# BOOST_INCLUDEDIR Set this to the include directory of Boost, if the
***************
*** 92,109 ****
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
#
! # this module required CMake 2.5 for the Boost_FIND_VERSION stuff
!
! # this must not be done in find modules, it changes the policy settings, which may have been
! # set in the projects cmake files.
! # beside that this module comes with cmake, so the cmake version is always correct, Alex
! # CMAKE_MINIMUM_REQUIRED(VERSION "2.6" FATAL_ERROR)
!
! # MESSAGE(STATUS "Finding Boost libraries.... ")
!
! OPTION(Boost_USE_MULTITHREADED "Use the multithreaded versions of the boost libraries" ON)
!
! SET( _boost_TEST_VERSIONS ${Boost_ADDITIONAL_VERSIONS} "1.36.1" "1.36.0" "1.35.1" "1.35.0" "1.35" "1.34.1" "1.34.0" "1.34" "1.33.1" "1.33.0" "1.33" )
############################################
--- 92,117 ----
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
#
+ OPTION(Boost_USE_MULTITHREADED
+ "Use the multithreaded versions of the Boost libraries" ON)
! if (Boost_FIND_VERSION_EXACT)
! if (Boost_FIND_VERSION_PATCH)
! set( _boost_TEST_VERSIONS
! "${Boost_FIND_VERSION_MAJOR}.${Boost_FIND_VERSION_MINOR}.${Boost_FIND_VERSION_PATCH}")
! else (Boost_FIND_VERSION_PATCH)
! set( _boost_TEST_VERSIONS
! "${Boost_FIND_VERSION_MAJOR}.${Boost_FIND_VERSION_MINOR}.0"
! "${Boost_FIND_VERSION_MAJOR}.${Boost_FIND_VERSION_MINOR}")
! endif (Boost_FIND_VERSION_PATCH)
! else (Boost_FIND_VERSION_EXACT)
! set( _boost_TEST_VERSIONS ${Boost_ADDITIONAL_VERSIONS}
! "1.36.1" "1.36.0" "1.35.1" "1.35.0" "1.35" "1.34.1" "1.34.0" "1.34" "1.33.1"
! "1.33.0" "1.33" )
! endif (Boost_FIND_VERSION_EXACT)
+ # The reason that we failed to find Boost. This will be set to a
+ # user-friendly message when we fail to find some necessary piece of
+ # Boost.
+ set(Boost_ERROR_REASON)
############################################
***************
*** 120,125 ****
MACRO (_Boost_ADJUST_LIB_VARS basename)
IF (Boost_INCLUDE_DIR )
- #MESSAGE(STATUS "Adjusting ${basename} ")
-
IF (Boost_${basename}_LIBRARY_DEBUG AND Boost_${basename}_LIBRARY_RELEASE)
# if the generator supports configuration types then set
--- 128,131 ----
***************
*** 153,157 ****
GET_FILENAME_COMPONENT(Boost_LIBRARY_DIRS "${Boost_${basename}_LIBRARY}" PATH)
SET(Boost_LIBRARY_DIRS ${Boost_LIBRARY_DIRS} CACHE FILEPATH "Boost library directory")
! SET(Boost_${basename}_FOUND ON CACHE INTERNAL "Was the boost boost ${basename} library found")
ENDIF (Boost_${basename}_LIBRARY)
--- 159,163 ----
GET_FILENAME_COMPONENT(Boost_LIBRARY_DIRS "${Boost_${basename}_LIBRARY}" PATH)
SET(Boost_LIBRARY_DIRS ${Boost_LIBRARY_DIRS} CACHE FILEPATH "Boost library directory")
! SET(Boost_${basename}_FOUND ON CACHE INTERNAL "Whether the Boost ${basename} library found")
ENDIF (Boost_${basename}_LIBRARY)
***************
*** 198,224 ****
IF(WIN32)
! # In windows, automatic linking is performed, so you do not have to specify the libraries.
! # If you are linking to a dynamic runtime, then you can choose to link to either a static or a
! # dynamic Boost library, the default is to do a static link. You can alter this for a specific
! # library "whatever" by defining BOOST_WHATEVER_DYN_LINK to force Boost library "whatever" to
! # be linked dynamically. Alternatively you can force all Boost libraries to dynamic link by
! # defining BOOST_ALL_DYN_LINK.
! # This feature can be disabled for Boost library "whatever" by defining BOOST_WHATEVER_NO_LIB,
! # or for all of Boost by defining BOOST_ALL_NO_LIB.
! # If you want to observe which libraries are being linked against then defining
! # BOOST_LIB_DIAGNOSTIC will cause the auto-linking code to emit a #pragma message each time
! # a library is selected for linking.
! SET(Boost_LIB_DIAGNOSTIC_DEFINITIONS "-DBOOST_LIB_DIAGNOSTIC" CACHE STRING "Boost diagnostic define")
ENDIF(WIN32)
-
SET(_boost_INCLUDE_SEARCH_DIRS
C:/boost/include
! "C:/Program Files/boost/boost_${Boost_FIND_VERSION_MAJOR}_${Boost_FIND_VERSION_MINOR}_${Boost_FIND_VERSION_PATCH}"
! # D: is very often the cdrom drive, IF you don't have a
! # cdrom inserted it will popup a very annoying dialog
! #D:/boost/include
/sw/local/include
)
--- 204,233 ----
IF(WIN32)
! # In windows, automatic linking is performed, so you do not have
! # to specify the libraries. If you are linking to a dynamic
! # runtime, then you can choose to link to either a static or a
! # dynamic Boost library, the default is to do a static link. You
! # can alter this for a specific library "whatever" by defining
! # BOOST_WHATEVER_DYN_LINK to force Boost library "whatever" to be
! # linked dynamically. Alternatively you can force all Boost
! # libraries to dynamic link by defining BOOST_ALL_DYN_LINK.
! # This feature can be disabled for Boost library "whatever" by
! # defining BOOST_WHATEVER_NO_LIB, or for all of Boost by defining
! # BOOST_ALL_NO_LIB.
! # If you want to observe which libraries are being linked against
! # then defining BOOST_LIB_DIAGNOSTIC will cause the auto-linking
! # code to emit a #pragma message each time a library is selected
! # for linking.
! SET(Boost_LIB_DIAGNOSTIC_DEFINITIONS
! "-DBOOST_LIB_DIAGNOSTIC" CACHE STRING "Boost diagnostic define")
ENDIF(WIN32)
SET(_boost_INCLUDE_SEARCH_DIRS
C:/boost/include
! "C:/boost"
! "$ENV{ProgramFiles}/boost/boost_${Boost_FIND_VERSION_MAJOR}_${Boost_FIND_VERSION_MINOR}_${Boost_FIND_VERSION_PATCH}"
! "$ENV{ProgramFiles}/Boost"
/sw/local/include
)
***************
*** 226,286 ****
SET(_boost_LIBRARIES_SEARCH_DIRS
C:/boost/lib
! "C:/Program Files/boost/boost_${Boost_FIND_VERSION_MAJOR}_${Boost_FIND_VERSION_MINOR}_${Boost_FIND_VERSION_PATCH}/lib"
/sw/local/lib
)
! IF( NOT $ENV{BOOST_ROOT} STREQUAL "" )
! SET(_boost_INCLUDE_SEARCH_DIRS $ENV{BOOST_ROOT}/include ${_boost_INCLUDE_SEARCH_DIRS})
! SET(_boost_LIBRARIES_SEARCH_DIRS $ENV{BOOST_ROOT}/lib ${_boost_INCLUDE_SEARCH_DIRS})
! ENDIF( NOT $ENV{BOOST_ROOT} STREQUAL "" )
IF( NOT $ENV{BOOST_INCLUDEDIR} STREQUAL "" )
! SET(_boost_INCLUDE_SEARCH_DIRS $ENV{BOOST_INCLUDEDIR} ${_boost_INCLUDE_SEARCH_DIRS})
ENDIF( NOT $ENV{BOOST_INCLUDEDIR} STREQUAL "" )
IF( NOT $ENV{BOOST_LIBRARYDIR} STREQUAL "" )
! SET(_boost_LIBRARIES_SEARCH_DIRS $ENV{BOOST_LIBRARYDIR} ${_boost_INCLUDE_SEARCH_DIRS})
ENDIF( NOT $ENV{BOOST_LIBRARYDIR} STREQUAL "" )
IF( BOOST_ROOT )
! IF( WIN32 )
! SET(_boost_INCLUDE_SEARCH_DIRS ${BOOST_ROOT} ${_boost_INCLUDE_SEARCH_DIRS})
! ELSE( WIN32 )
! SET(_boost_INCLUDE_SEARCH_DIRS ${BOOST_ROOT}/include ${_boost_INCLUDE_SEARCH_DIRS})
! ENDIF( WIN32 )
! SET(_boost_LIBRARIES_SEARCH_DIRS ${BOOST_ROOT}/lib ${_boost_LIBRARIES_SEARCH_DIRS})
ENDIF( BOOST_ROOT )
IF( BOOST_INCLUDEDIR )
! SET(_boost_INCLUDE_SEARCH_DIRS ${BOOST_INCLUDEDIR} ${_boost_INCLUDE_SEARCH_DIRS})
ENDIF( BOOST_INCLUDEDIR )
IF( BOOST_LIBRARYDIR )
! SET(_boost_LIBRARIES_SEARCH_DIRS ${BOOST_LIBRARYDIR} ${_boost_LIBRARIES_SEARCH_DIRS})
ENDIF( BOOST_LIBRARYDIR )
! #Try first in our own include search paths (e.g. BOOST_ROOT)
FOREACH(_boost_VER ${_boost_TEST_VERSIONS})
IF( NOT Boost_INCLUDE_DIR )
!
! # Add in a path suffix, based on the required version, ideally we could
! # read this from version.hpp, but for that to work we'd need to know the include
! # dir already
! SET(_boost_PATH_SUFFIX
! boost-${_boost_VER}
! )
IF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+")
! STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1_\\2_\\3" _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX})
ELSEIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+")
! STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\1_\\2" _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX})
ENDIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+")
-
FIND_PATH(Boost_INCLUDE_DIR
NAMES boost/config.hpp
! PATHS ${_boost_INCLUDE_SEARCH_DIRS}
PATH_SUFFIXES ${_boost_PATH_SUFFIX}
- NO_DEFAULT_PATH
)
--- 235,313 ----
SET(_boost_LIBRARIES_SEARCH_DIRS
C:/boost/lib
! "C:/boost"
! "$ENV{ProgramFiles}/boost/boost_${Boost_FIND_VERSION_MAJOR}_${Boost_FIND_VERSION_MINOR}_${Boost_FIND_VERSION_PATCH}/lib"
! "$ENV{ProgramFiles}/Boost"
/sw/local/lib
)
! # If BOOST_ROOT was defined in the environment, use it.
! if (NOT BOOST_ROOT AND NOT $ENV{BOOST_ROOT} STREQUAL "")
! set(BOOST_ROOT $ENV{BOOST_ROOT})
! endif(NOT BOOST_ROOT AND NOT $ENV{BOOST_ROOT} STREQUAL "")
+ # If BOOSTROOT was defined in the environment, use it.
+ if (NOT BOOST_ROOT AND NOT $ENV{BOOSTROOT} STREQUAL "")
+ set(BOOST_ROOT $ENV{BOOSTROOT})
+ endif(NOT BOOST_ROOT AND NOT $ENV{BOOSTROOT} STREQUAL "")
+
+ # If BOOST_INCLUDEDIR was defined in the environment, use it.
IF( NOT $ENV{BOOST_INCLUDEDIR} STREQUAL "" )
! set(BOOST_INCLUDEDIR $ENV{BOOST_INCLUDEDIR})
ENDIF( NOT $ENV{BOOST_INCLUDEDIR} STREQUAL "" )
+ # If BOOST_LIBRARYDIR was defined in the environment, use it.
IF( NOT $ENV{BOOST_LIBRARYDIR} STREQUAL "" )
! set(BOOST_LIBRARYDIR $ENV{BOOST_LIBRARYDIR})
ENDIF( NOT $ENV{BOOST_LIBRARYDIR} STREQUAL "" )
IF( BOOST_ROOT )
! file(TO_CMAKE_PATH ${BOOST_ROOT} BOOST_ROOT)
! SET(_boost_INCLUDE_SEARCH_DIRS
! ${BOOST_ROOT}/include
! ${BOOST_ROOT}
! ${_boost_INCLUDE_SEARCH_DIRS})
! SET(_boost_LIBRARIES_SEARCH_DIRS
! ${BOOST_ROOT}/lib
! ${BOOST_ROOT}/stage/lib
! ${_boost_LIBRARIES_SEARCH_DIRS})
ENDIF( BOOST_ROOT )
IF( BOOST_INCLUDEDIR )
! file(TO_CMAKE_PATH ${BOOST_INCLUDEDIR} BOOST_INCLUDEDIR)
! SET(_boost_INCLUDE_SEARCH_DIRS
! ${BOOST_INCLUDEDIR} ${_boost_INCLUDE_SEARCH_DIRS})
ENDIF( BOOST_INCLUDEDIR )
IF( BOOST_LIBRARYDIR )
! file(TO_CMAKE_PATH ${BOOST_LIBRARYDIR} BOOST_LIBRARYDIR)
! SET(_boost_LIBRARIES_SEARCH_DIRS
! ${BOOST_LIBRARYDIR} ${_boost_LIBRARIES_SEARCH_DIRS})
ENDIF( BOOST_LIBRARYDIR )
! # Try to find Boost by stepping backwards through the Boost versions
! # we know about.
FOREACH(_boost_VER ${_boost_TEST_VERSIONS})
IF( NOT Boost_INCLUDE_DIR )
! # Add in a path suffix, based on the required version, ideally
! # we could read this from version.hpp, but for that to work we'd
! # need to know the include dir already
! if (WIN32 AND NOT CYGWIN)
! set(_boost_PATH_SUFFIX boost_${_boost_VER})
! else (WIN32 AND NOT CYGWIN)
! set(_boost_PATH_SUFFIX boost-${_boost_VER})
! endif (WIN32 AND NOT CYGWIN)
IF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+")
! STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1_\\2_\\3"
! _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX})
ELSEIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+")
! STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\1_\\2"
! _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX})
ENDIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+")
FIND_PATH(Boost_INCLUDE_DIR
NAMES boost/config.hpp
! HINTS ${_boost_INCLUDE_SEARCH_DIRS}
PATH_SUFFIXES ${_boost_PATH_SUFFIX}
)
***************
*** 288,315 ****
ENDFOREACH(_boost_VER)
- # If nothing is found search again using system default paths
- FOREACH(_boost_VER ${_boost_TEST_VERSIONS})
- IF( NOT Boost_INCLUDE_DIR )
-
- # Add in a path suffix, based on the required version, ideally we could
- # read this from version.hpp, but for that to work we'd need to know the include
- # dir already
- SET(_boost_PATH_SUFFIX
- boost-${_boost_VER}
- )
-
- IF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+")
- STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)\\.([0-9]+)" "\\1_\\2_\\3" _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX})
- ELSEIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+")
- STRING(REGEX REPLACE "([0-9]+)\\.([0-9]+)" "\\1_\\2" _boost_PATH_SUFFIX ${_boost_PATH_SUFFIX})
- ENDIF(_boost_PATH_SUFFIX MATCHES "[0-9]+\\.[0-9]+\\.[0-9]+")
-
- FIND_PATH(Boost_INCLUDE_DIR
- NAMES boost/config.hpp
- PATH_SUFFIXES ${_boost_PATH_SUFFIX}
- )
-
- ENDIF( NOT Boost_INCLUDE_DIR )
- ENDFOREACH(_boost_VER)
IF(Boost_INCLUDE_DIR)
# Extract Boost_VERSION and Boost_LIB_VERSION from version.hpp
--- 315,318 ----
***************
*** 330,339 ****
MATH(EXPR Boost_MINOR_VERSION "${Boost_VERSION} / 100 % 1000")
MATH(EXPR Boost_SUBMINOR_VERSION "${Boost_VERSION} % 100")
!
ENDIF(NOT "${Boost_VERSION}" STREQUAL "0")
ENDIF(Boost_INCLUDE_DIR)
!
! #Setting some more suffixes for the library
SET (Boost_LIB_PREFIX "")
IF ( WIN32 AND Boost_USE_STATIC_LIBS )
--- 333,346 ----
MATH(EXPR Boost_MINOR_VERSION "${Boost_VERSION} / 100 % 1000")
MATH(EXPR Boost_SUBMINOR_VERSION "${Boost_VERSION} % 100")
!
! set(Boost_ERROR_REASON
! "${Boost_ERROR_REASON}Boost version: ${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION}\nBoost include path: ${Boost_INCLUDE_DIR}")
ENDIF(NOT "${Boost_VERSION}" STREQUAL "0")
+ ELSE(Boost_INCLUDE_DIR)
+ set(Boost_ERROR_REASON
+ "${Boost_ERROR_REASON}Unable to find the Boost header files. Please set BOOST_ROOT to the root directory containing Boost or BOOST_INCLUDEDIR to the directory containing Boost's headers.")
ENDIF(Boost_INCLUDE_DIR)
! # Setting some more suffixes for the library
SET (Boost_LIB_PREFIX "")
IF ( WIN32 AND Boost_USE_STATIC_LIBS )
***************
*** 341,379 ****
ENDIF ( WIN32 AND Boost_USE_STATIC_LIBS )
SET (_boost_COMPILER "-gcc")
- IF (MSVC71)
- SET (_boost_COMPILER "-vc71")
- ENDIF(MSVC71)
- IF (MSVC80)
- SET (_boost_COMPILER "-vc80")
- ENDIF(MSVC80)
IF (MSVC90)
SET (_boost_COMPILER "-vc90")
! ENDIF (MSVC90)
IF (MINGW)
EXEC_PROGRAM(${CMAKE_CXX_COMPILER}
! ARGS --version
OUTPUT_VARIABLE _boost_COMPILER_VERSION
)
! STRING(REGEX REPLACE ".* ([0-9])\\.([0-9])\\.[0-9] .*" "\\1\\2"
_boost_COMPILER_VERSION ${_boost_COMPILER_VERSION})
SET (_boost_COMPILER "-mgw${_boost_COMPILER_VERSION}")
ENDIF(MINGW)
- IF (CYGWIN)
- SET (_boost_COMPILER "-gcc")
- ENDIF (CYGWIN)
IF (UNIX)
IF (APPLE)
! SET (_boost_COMPILER "")
ELSE (APPLE)
IF (NOT CMAKE_COMPILER_IS_GNUCC)
! # This is for the intel compiler
SET (_boost_COMPILER "-il")
ELSE (NOT CMAKE_COMPILER_IS_GNUCC)
! #find out the version of gcc being used.
EXEC_PROGRAM(${CMAKE_CXX_COMPILER}
! ARGS --version
OUTPUT_VARIABLE _boost_COMPILER_VERSION
)
! STRING(REGEX REPLACE ".* ([0-9])\\.([0-9])\\.[0-9] .*" "\\1\\2"
_boost_COMPILER_VERSION ${_boost_COMPILER_VERSION})
SET (_boost_COMPILER "-gcc${_boost_COMPILER_VERSION}")
--- 348,383 ----
ENDIF ( WIN32 AND Boost_USE_STATIC_LIBS )
SET (_boost_COMPILER "-gcc")
IF (MSVC90)
SET (_boost_COMPILER "-vc90")
! ELSEIF (MSVC80)
! SET (_boost_COMPILER "-vc80")
! ELSEIF (MSVC71)
! SET (_boost_COMPILER "-vc71")
! ENDIF(MSVC90)
IF (MINGW)
EXEC_PROGRAM(${CMAKE_CXX_COMPILER}
! ARGS -dumpversion
OUTPUT_VARIABLE _boost_COMPILER_VERSION
)
! STRING(REGEX REPLACE "([0-9])\\.([0-9])\\.[0-9]" "\\1\\2"
_boost_COMPILER_VERSION ${_boost_COMPILER_VERSION})
SET (_boost_COMPILER "-mgw${_boost_COMPILER_VERSION}")
ENDIF(MINGW)
IF (UNIX)
IF (APPLE)
! # Due to a quirk in Boost.Build, there is no compiler name
! # mangled into library names on Mac OS X/Darwin.
! SET (_boost_COMPILER "")
ELSE (APPLE)
IF (NOT CMAKE_COMPILER_IS_GNUCC)
! # We assume that we have the Intel compiler.
SET (_boost_COMPILER "-il")
ELSE (NOT CMAKE_COMPILER_IS_GNUCC)
! # Determine which version of GCC we have.
EXEC_PROGRAM(${CMAKE_CXX_COMPILER}
! ARGS -dumpversion
OUTPUT_VARIABLE _boost_COMPILER_VERSION
)
! STRING(REGEX REPLACE "([0-9])\\.([0-9])\\.[0-9]" "\\1\\2"
_boost_COMPILER_VERSION ${_boost_COMPILER_VERSION})
SET (_boost_COMPILER "-gcc${_boost_COMPILER_VERSION}")
***************
*** 424,441 ****
${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG}
${Boost_LIB_PREFIX}boost_${COMPONENT}
! PATHS ${_boost_LIBRARIES_SEARCH_DIRS}
! NO_DEFAULT_PATH
)
- IF( NOT ${Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE} )
- FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE
- NAMES ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}-${Boost_LIB_VERSION}
- ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_STATIC_TAG}-${Boost_LIB_VERSION}
- ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}
- ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG}
- ${Boost_LIB_PREFIX}boost_${COMPONENT}
- )
- ENDIF( NOT ${Boost_${UPPERCOMPONENT}_LIBRARY_RELEASE} )
-
FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG
NAMES ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}-${_boost_ABI_TAG}-${Boost_LIB_VERSION}
--- 428,434 ----
${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG}
${Boost_LIB_PREFIX}boost_${COMPONENT}
! HINTS ${_boost_LIBRARIES_SEARCH_DIRS}
)
FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG
NAMES ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}-${_boost_ABI_TAG}-${Boost_LIB_VERSION}
***************
*** 444,460 ****
${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG}${_boost_ABI_TAG}
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_boost_ABI_TAG}
! PATHS ${_boost_LIBRARIES_SEARCH_DIRS}
! NO_DEFAULT_PATH
)
- IF( NOT ${Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG} )
- FIND_LIBRARY(Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG
- NAMES ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}-${_boost_ABI_TAG}-${Boost_LIB_VERSION}
- ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_COMPILER}${_boost_MULTITHREADED}${_boost_STATIC_TAG}${_boost_ABI_TAG}-${Boost_LIB_VERSION}
- ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}-${_boost_ABI_TAG}
- ${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG}${_boost_ABI_TAG}
- ${Boost_LIB_PREFIX}boost_${COMPONENT}-${_boost_ABI_TAG}
- )
- ENDIF( NOT ${Boost_${UPPERCOMPONENT}_LIBRARY_DEBUG} )
_Boost_ADJUST_LIB_VARS(${UPPERCOMPONENT})
IF( Boost_USE_STATIC_LIBS )
--- 437,443 ----
${Boost_LIB_PREFIX}boost_${COMPONENT}${_boost_MULTITHREADED}${_boost_STATIC_TAG}${_boost_ABI_TAG}
${Boost_LIB_PREFIX}boost_${COMPONENT}-${_boost_ABI_TAG}
! HINTS ${_boost_LIBRARIES_SEARCH_DIRS}
)
_Boost_ADJUST_LIB_VARS(${UPPERCOMPONENT})
IF( Boost_USE_STATIC_LIBS )
***************
*** 470,500 ****
)
- # MESSAGE(STATUS "Boost_INCLUDE_DIRS: ${Boost_INCLUDE_DIRS}")
- # MESSAGE(STATUS "Boost_LIBRARIES: ${Boost_LIBRARIES}")
-
SET(Boost_FOUND FALSE)
IF(Boost_INCLUDE_DIR)
SET( Boost_FOUND TRUE )
! IF( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION LESS "${Boost_FIND_VERSION_MAJOR}" )
! SET( Boost_FOUND FALSE )
! ELSE( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION LESS "${Boost_FIND_VERSION_MAJOR}" )
! IF( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION LESS "${Boost_FIND_VERSION_MINOR}" )
! SET( Boost_FOUND FALSE )
! ELSE( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION LESS "${Boost_FIND_VERSION_MINOR}" )
! IF( Boost_FIND_VERSION_PATCH AND Boost_SUBMINOR_VERSION LESS "${Boost_FIND_VERSION_PATCH}" )
! SET( Boost_FOUND FALSE )
! ENDIF( Boost_FIND_VERSION_PATCH AND Boost_SUBMINOR_VERSION LESS "${Boost_FIND_VERSION_PATCH}" )
! ENDIF( Boost_FIND_VERSION_MINOR AND Boost_MINOR_VERSION LESS "${Boost_FIND_VERSION_MINOR}" )
! ENDIF( Boost_FIND_VERSION_MAJOR AND Boost_MAJOR_VERSION LESS "${Boost_FIND_VERSION_MAJOR}" )
! set(_boost_CHECKED_COMPONENT FALSE)
! FOREACH(COMPONENT ${Boost_FIND_COMPONENTS})
! STRING(TOUPPER ${COMPONENT} COMPONENT)
! set(_boost_CHECKED_COMPONENT TRUE)
! IF(NOT Boost_${COMPONENT}_FOUND)
! SET( Boost_FOUND FALSE)
! ENDIF(NOT Boost_${COMPONENT}_FOUND)
! ENDFOREACH(COMPONENT)
IF( NOT Boost_LIBRARY_DIRS AND NOT _boost_CHECKED_COMPONENT )
! # Compatibility Code for backwards compatibility with CMake 2.4
# Look for the boost library path.
--- 453,553 ----
)
SET(Boost_FOUND FALSE)
IF(Boost_INCLUDE_DIR)
SET( Boost_FOUND TRUE )
!
! # Check the version of Boost against the requested version.
! if (Boost_FIND_VERSION AND NOT Boost_FIND_VERSION_MINOR)
! message(SEND_ERROR "When requesting a specific version of Boost, you must provide at least the major and minor version numbers, e.g., 1.34")
! endif (Boost_FIND_VERSION AND NOT Boost_FIND_VERSION_MINOR)
! if(Boost_MAJOR_VERSION LESS "${Boost_FIND_VERSION_MAJOR}" )
! set( Boost_FOUND FALSE )
! set(_Boost_VERSION_AGE "old")
! elseif(Boost_MAJOR_VERSION EQUAL "${Boost_FIND_VERSION_MAJOR}" )
! if(Boost_MINOR_VERSION LESS "${Boost_FIND_VERSION_MINOR}" )
! set( Boost_FOUND FALSE )
! set(_Boost_VERSION_AGE "old")
! elseif(Boost_MINOR_VERSION EQUAL "${Boost_FIND_VERSION_MINOR}" )
! if( Boost_FIND_VERSION_PATCH AND Boost_SUBMINOR_VERSION LESS "${Boost_FIND_VERSION_PATCH}" )
! set( Boost_FOUND FALSE )
! set(_Boost_VERSION_AGE "old")
! endif( Boost_FIND_VERSION_PATCH AND Boost_SUBMINOR_VERSION LESS "${Boost_FIND_VERSION_PATCH}" )
! endif( Boost_MINOR_VERSION LESS "${Boost_FIND_VERSION_MINOR}" )
! endif( Boost_MAJOR_VERSION LESS "${Boost_FIND_VERSION_MAJOR}" )
!
! if (Boost_FOUND AND Boost_FIND_VERSION_EXACT)
! # If the user requested an exact version of Boost, check
! # that. We already know that the Boost version we have is >= the
! # requested version.
! set(_Boost_VERSION_AGE "new")
!
! # If the user didn't specify a patchlevel, it's 0.
! if (NOT Boost_FIND_VERSION_PATCH)
! set(Boost_FIND_VERSION_PATCH 0)
! endif (NOT Boost_FIND_VERSION_PATCH)
!
! # We'll set Boost_FOUND true again if we have an exact version match.
! set(Boost_FOUND FALSE)
! if(Boost_MAJOR_VERSION EQUAL "${Boost_FIND_VERSION_MAJOR}" )
! if(Boost_MINOR_VERSION EQUAL "${Boost_FIND_VERSION_MINOR}" )
! if(Boost_SUBMINOR_VERSION EQUAL "${Boost_FIND_VERSION_PATCH}" )
! set( Boost_FOUND TRUE )
! endif(Boost_SUBMINOR_VERSION EQUAL "${Boost_FIND_VERSION_PATCH}" )
! endif( Boost_MINOR_VERSION EQUAL "${Boost_FIND_VERSION_MINOR}" )
! endif( Boost_MAJOR_VERSION EQUAL "${Boost_FIND_VERSION_MAJOR}" )
! endif (Boost_FOUND AND Boost_FIND_VERSION_EXACT)
!
! if(NOT Boost_FOUND)
! # State that we found a version of Boost that is too new or too old.
! set(Boost_ERROR_REASON
! "${Boost_ERROR_REASON}\nDetected version of Boost is too ${_Boost_VERSION_AGE}. Requested version was ${Boost_FIND_VERSION_MAJOR}.${Boost_FIND_VERSION_MINOR}")
! if (Boost_FIND_VERSION_PATCH)
! set(Boost_ERROR_REASON
! "${Boost_ERROR_REASON}.${Boost_FIND_VERSION_PATCH}")
! endif (Boost_FIND_VERSION_PATCH)
! if (NOT Boost_FIND_VERSION_EXACT)
! set(Boost_ERROR_REASON "${Boost_ERROR_REASON} (or newer)")
! endif (NOT Boost_FIND_VERSION_EXACT)
! set(Boost_ERROR_REASON "${Boost_ERROR_REASON}.")
! endif (NOT Boost_FOUND)
!
! if (Boost_FOUND)
! set(_boost_CHECKED_COMPONENT FALSE)
! set(_Boost_MISSING_COMPONENTS)
! foreach(COMPONENT ${Boost_FIND_COMPONENTS})
! string(TOUPPER ${COMPONENT} COMPONENT)
! set(_boost_CHECKED_COMPONENT TRUE)
! if(NOT Boost_${COMPONENT}_FOUND)
! string(TOLOWER ${COMPONENT} COMPONENT)
! list(APPEND _Boost_MISSING_COMPONENTS ${COMPONENT})
! set( Boost_FOUND FALSE)
! endif(NOT Boost_${COMPONENT}_FOUND)
! endforeach(COMPONENT)
! endif (Boost_FOUND)
!
! if (_Boost_MISSING_COMPONENTS)
! # We were unable to find some libraries, so generate a sensible
! # error message that lists the libraries we were unable to find.
! set(Boost_ERROR_REASON
! "${Boost_ERROR_REASON}\nThe following Boost libraries could not be found:\n")
! foreach(COMPONENT ${_Boost_MISSING_COMPONENTS})
! set(Boost_ERROR_REASON
! "${Boost_ERROR_REASON} boost_${COMPONENT}\n")
! endforeach(COMPONENT)
!
! list(LENGTH Boost_FIND_COMPONENTS Boost_NUM_COMPONENTS_WANTED)
! list(LENGTH _Boost_MISSING_COMPONENTS Boost_NUM_MISSING_COMPONENTS)
! if (${Boost_NUM_COMPONENTS_WANTED} EQUAL ${Boost_NUM_MISSING_COMPONENTS})
! set(Boost_ERROR_REASON
! "${Boost_ERROR_REASON}No Boost libraries were found. You may need to set Boost_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT to the location of Boost.")
! else (${Boost_NUM_COMPONENTS_WANTED} EQUAL ${Boost_NUM_MISSING_COMPONENTS})
! set(Boost_ERROR_REASON
! "${Boost_ERROR_REASON}Some (but not all) of the required Boost libraries were found. You may need to install these additional Boost libraries. Alternatively, set Boost_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT to the location of Boost.")
! endif (${Boost_NUM_COMPONENTS_WANTED} EQUAL ${Boost_NUM_MISSING_COMPONENTS})
! endif (_Boost_MISSING_COMPONENTS)
!
IF( NOT Boost_LIBRARY_DIRS AND NOT _boost_CHECKED_COMPONENT )
! # Compatibility Code for backwards compatibility with CMake
! # 2.4's FindBoost module.
# Look for the boost library path.
***************
*** 550,555 ****
ELSE (Boost_FOUND)
IF (Boost_FIND_REQUIRED)
! MESSAGE(STATUS "Boost version required: ${Boost_FIND_VERSION_MAJOR}.${Boost_FIND_VERSION_MINOR}.${Boost_FIND_VERSION_PATCH}, found: ${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION}.${Boost_SUBMINOR_VERSION}")
! MESSAGE(FATAL_ERROR "Couldn't find the Boost libraries and/or include directory, or the version found is too old. Please install the Boost libraries AND development packages. You can set BOOST_ROOT, BOOST_INCLUDEDIR and BOOST_LIBRARYDIR to help find Boost.")
ENDIF(Boost_FIND_REQUIRED)
ENDIF(Boost_FOUND)
--- 603,607 ----
ELSE (Boost_FOUND)
IF (Boost_FIND_REQUIRED)
! message(SEND_ERROR "Unable to find the requested Boost libraries.\n${Boost_ERROR_REASON}")
ENDIF(Boost_FIND_REQUIRED)
ENDIF(Boost_FOUND)
More information about the Cmake-commits
mailing list