diff options
Diffstat (limited to 'share/cmake-3.17/Modules/CPackIFW.cmake')
-rw-r--r-- | share/cmake-3.17/Modules/CPackIFW.cmake | 737 |
1 files changed, 0 insertions, 737 deletions
diff --git a/share/cmake-3.17/Modules/CPackIFW.cmake b/share/cmake-3.17/Modules/CPackIFW.cmake deleted file mode 100644 index f58f9ef..0000000 --- a/share/cmake-3.17/Modules/CPackIFW.cmake +++ /dev/null @@ -1,737 +0,0 @@ -# Distributed under the OSI-approved BSD 3-Clause License. See accompanying -# file Copyright.txt or https://cmake.org/licensing for details. - -#[=======================================================================[.rst: -CPackIFW --------- - -This module looks for the location of the command-line utilities supplied with the -`Qt Installer Framework <http://doc.qt.io/qtinstallerframework/index.html>`_ -(QtIFW). - -The module also defines several commands to control the behavior of the -:cpack_gen:`CPack IFW Generator`. - -Commands -^^^^^^^^ - -The module defines the following commands: - -.. command:: cpack_ifw_configure_component - - Sets the arguments specific to the CPack IFW generator. - - :: - - cpack_ifw_configure_component(<compname> [COMMON] [ESSENTIAL] [VIRTUAL] - [FORCED_INSTALLATION] [REQUIRES_ADMIN_RIGHTS] - [NAME <name>] - [DISPLAY_NAME <display_name>] # Note: Internationalization supported - [DESCRIPTION <description>] # Note: Internationalization supported - [UPDATE_TEXT <update_text>] - [VERSION <version>] - [RELEASE_DATE <release_date>] - [SCRIPT <script>] - [PRIORITY|SORTING_PRIORITY <sorting_priority>] # Note: PRIORITY is deprecated - [DEPENDS|DEPENDENCIES <com_id> ...] - [AUTO_DEPEND_ON <comp_id> ...] - [LICENSES <display_name> <file_path> ...] - [DEFAULT <value>] - [USER_INTERFACES <file_path> <file_path> ...] - [TRANSLATIONS <file_path> <file_path> ...] - [REPLACES <comp_id> ...] - [CHECKABLE <value>]) - - This command should be called after :command:`cpack_add_component` command. - - ``COMMON`` - if set, then the component will be packaged and installed as part - of a group to which it belongs. - - ``ESSENTIAL`` - if set, then the package manager stays disabled until that - component is updated. - - ``VIRTUAL`` - if set, then the component will be hidden from the installer. - It is a equivalent of the ``HIDDEN`` option from the - :command:`cpack_add_component` command. - - ``FORCED_INSTALLATION`` - if set, then the component must always be installed. - It is a equivalent of the ``REQUARED`` option from the - :command:`cpack_add_component` command. - - ``REQUIRES_ADMIN_RIGHTS`` - set it if the component needs to be installed with elevated permissions. - - ``NAME`` - is used to create domain-like identification for this component. - By default used origin component name. - - ``DISPLAY_NAME`` - set to rewrite original name configured by - :command:`cpack_add_component` command. - - ``DESCRIPTION`` - set to rewrite original description configured by - :command:`cpack_add_component` command. - - ``UPDATE_TEXT`` - will be added to the component description if this is an update to - the component. - - ``VERSION`` - is version of component. - By default used :variable:`CPACK_PACKAGE_VERSION`. - - ``RELEASE_DATE`` - keep empty to auto generate. - - ``SCRIPT`` - is a relative or absolute path to operations script - for this component. - - ``PRIORITY`` | ``SORTING_PRIORITY`` - is priority of the component in the tree. - The ``PRIORITY`` option is deprecated and will be removed in a future - version of CMake. Please use ``SORTING_PRIORITY`` option instead. - - ``DEPENDS`` | ``DEPENDENCIES`` - list of dependency component or component group identifiers in - QtIFW style. - - ``AUTO_DEPEND_ON`` - list of identifiers of component or component group in QtIFW style - that this component has an automatic dependency on. - - ``LICENSES`` - pair of <display_name> and <file_path> of license text for this - component. You can specify more then one license. - - ``DEFAULT`` - Possible values are: TRUE, FALSE, and SCRIPT. - Set to FALSE to disable the component in the installer or to SCRIPT - to resolved during runtime (don't forget add the file of the script - as a value of the ``SCRIPT`` option). - - ``USER_INTERFACES`` - is a list of <file_path> ('.ui' files) representing pages to load. - - ``TRANSLATIONS`` - is a list of <file_path> ('.qm' files) representing translations to load. - - ``REPLACES`` - list of identifiers of component or component group to replace. - - ``CHECKABLE`` - Possible values are: TRUE, FALSE. - Set to FALSE if you want to hide the checkbox for an item. - This is useful when only a few subcomponents should be selected - instead of all. - - -.. command:: cpack_ifw_configure_component_group - - Sets the arguments specific to the CPack IFW generator. - - :: - - cpack_ifw_configure_component_group(<groupname> [VIRTUAL] - [FORCED_INSTALLATION] [REQUIRES_ADMIN_RIGHTS] - [NAME <name>] - [DISPLAY_NAME <display_name>] # Note: Internationalization supported - [DESCRIPTION <description>] # Note: Internationalization supported - [UPDATE_TEXT <update_text>] - [VERSION <version>] - [RELEASE_DATE <release_date>] - [SCRIPT <script>] - [PRIORITY|SORTING_PRIORITY <sorting_priority>] # Note: PRIORITY is deprecated - [DEPENDS|DEPENDENCIES <com_id> ...] - [AUTO_DEPEND_ON <comp_id> ...] - [LICENSES <display_name> <file_path> ...] - [DEFAULT <value>] - [USER_INTERFACES <file_path> <file_path> ...] - [TRANSLATIONS <file_path> <file_path> ...] - [REPLACES <comp_id> ...] - [CHECKABLE <value>]) - - This command should be called after :command:`cpack_add_component_group` - command. - - ``VIRTUAL`` - if set, then the group will be hidden from the installer. - Note that setting this on a root component does not work. - - ``FORCED_INSTALLATION`` - if set, then the group must always be installed. - - ``REQUIRES_ADMIN_RIGHTS`` - set it if the component group needs to be installed with elevated - permissions. - - ``NAME`` - is used to create domain-like identification for this component group. - By default used origin component group name. - - ``DISPLAY_NAME`` - set to rewrite original name configured by - :command:`cpack_add_component_group` command. - - ``DESCRIPTION`` - set to rewrite original description configured by - :command:`cpack_add_component_group` command. - - ``UPDATE_TEXT`` - will be added to the component group description if this is an update to - the component group. - - ``VERSION`` - is version of component group. - By default used :variable:`CPACK_PACKAGE_VERSION`. - - ``RELEASE_DATE`` - keep empty to auto generate. - - ``SCRIPT`` - is a relative or absolute path to operations script - for this component group. - - ``PRIORITY`` | ``SORTING_PRIORITY`` - is priority of the component group in the tree. - The ``PRIORITY`` option is deprecated and will be removed in a future - version of CMake. Please use ``SORTING_PRIORITY`` option instead. - - ``DEPENDS`` | ``DEPENDENCIES`` - list of dependency component or component group identifiers in - QtIFW style. - - ``AUTO_DEPEND_ON`` - list of identifiers of component or component group in QtIFW style - that this component group has an automatic dependency on. - - ``LICENSES`` - pair of <display_name> and <file_path> of license text for this - component group. You can specify more then one license. - - ``DEFAULT`` - Possible values are: TRUE, FALSE, and SCRIPT. - Set to TRUE to preselect the group in the installer - (this takes effect only on groups that have no visible child components) - or to SCRIPT to resolved during runtime (don't forget add the file of - the script as a value of the ``SCRIPT`` option). - - ``USER_INTERFACES`` - is a list of <file_path> ('.ui' files) representing pages to load. - - ``TRANSLATIONS`` - is a list of <file_path> ('.qm' files) representing translations to load. - - ``REPLACES`` - list of identifiers of component or component group to replace. - - ``CHECKABLE`` - Possible values are: TRUE, FALSE. - Set to FALSE if you want to hide the checkbox for an item. - This is useful when only a few subcomponents should be selected - instead of all. - - -.. command:: cpack_ifw_add_repository - - Add QtIFW specific remote repository to binary installer. - - :: - - cpack_ifw_add_repository(<reponame> [DISABLED] - URL <url> - [USERNAME <username>] - [PASSWORD <password>] - [DISPLAY_NAME <display_name>]) - - This command will also add the <reponame> repository - to a variable :variable:`CPACK_IFW_REPOSITORIES_ALL`. - - ``DISABLED`` - if set, then the repository will be disabled by default. - - ``URL`` - is points to a list of available components. - - ``USERNAME`` - is used as user on a protected repository. - - ``PASSWORD`` - is password to use on a protected repository. - - ``DISPLAY_NAME`` - is string to display instead of the URL. - - -.. command:: cpack_ifw_update_repository - - Update QtIFW specific repository from remote repository. - - :: - - cpack_ifw_update_repository(<reponame> - [[ADD|REMOVE] URL <url>]| - [REPLACE OLD_URL <old_url> NEW_URL <new_url>]] - [USERNAME <username>] - [PASSWORD <password>] - [DISPLAY_NAME <display_name>]) - - This command will also add the <reponame> repository - to a variable :variable:`CPACK_IFW_REPOSITORIES_ALL`. - - ``URL`` - is points to a list of available components. - - ``OLD_URL`` - is points to a list that will replaced. - - ``NEW_URL`` - is points to a list that will replace to. - - ``USERNAME`` - is used as user on a protected repository. - - ``PASSWORD`` - is password to use on a protected repository. - - ``DISPLAY_NAME`` - is string to display instead of the URL. - - -.. command:: cpack_ifw_add_package_resources - - Add additional resources in the installer binary. - - :: - - cpack_ifw_add_package_resources(<file_path> <file_path> ...) - - This command will also add the specified files - to a variable :variable:`CPACK_IFW_PACKAGE_RESOURCES`. - -#]=======================================================================] - -# TODO: -# All of the internal implementation CMake modules for other CPack generators -# have been moved into the Internal/CPack directory. This one has not, because -# it contains user-facing macros which would be lost if it were moved. At some -# point, this module should be split into user-facing macros (which would live -# in this module) and internal implementation details (which would live in -# Internal/CPack/CPackIFW.cmake). - -#============================================================================= -# Search Qt Installer Framework tools -#============================================================================= - -# Default path - -foreach(_CPACK_IFW_PATH_VAR "CPACK_IFW_ROOT" "QTIFWDIR" "QTDIR") - if(DEFINED ${_CPACK_IFW_PATH_VAR} - AND NOT "${${_CPACK_IFW_PATH_VAR}}" STREQUAL "") - list(APPEND _CPACK_IFW_PATHS "${${_CPACK_IFW_PATH_VAR}}") - endif() - if(NOT "$ENV{${_CPACK_IFW_PATH_VAR}}" STREQUAL "") - list(APPEND _CPACK_IFW_PATHS "$ENV{${_CPACK_IFW_PATH_VAR}}") - endif() -endforeach() -if(WIN32) - list(APPEND _CPACK_IFW_PATHS - "$ENV{HOMEDRIVE}/Qt" - "C:/Qt") -else() - list(APPEND _CPACK_IFW_PATHS - "$ENV{HOME}/Qt" - "/opt/Qt") -endif() -list(REMOVE_DUPLICATES _CPACK_IFW_PATHS) - -set(_CPACK_IFW_PREFIXES - # QtSDK - "Tools/QtInstallerFramework/" - # Second branch - "QtIFW" - # First branch - "QtIFW-") - -set(_CPACK_IFW_VERSIONS - "3.1" - "3.1.0" - "3.0" - "3.0.0" - "2.3" - "2.3.0" - "2.2" - "2.2.0" - "2.1" - "2.1.0" - "2.0" - "2.0.5" - "2.0.3" - "2.0.2" - "2.0.1" - "2.0.0" - "1.6" - "1.6.0" - "1.5" - "1.5.0" - "1.4" - "1.4.0" - "1.3" - "1.3.0") - -set(_CPACK_IFW_SUFFIXES "bin") -foreach(_CPACK_IFW_PREFIX ${_CPACK_IFW_PREFIXES}) - foreach(_CPACK_IFW_VERSION ${_CPACK_IFW_VERSIONS}) - list(APPEND - _CPACK_IFW_SUFFIXES "${_CPACK_IFW_PREFIX}${_CPACK_IFW_VERSION}/bin") - endforeach() -endforeach() - -# Look for 'binarycreator' - -find_program(CPACK_IFW_BINARYCREATOR_EXECUTABLE - NAMES binarycreator - PATHS ${_CPACK_IFW_PATHS} - PATH_SUFFIXES ${_CPACK_IFW_SUFFIXES} - DOC "QtIFW binarycreator command line client") - -mark_as_advanced(CPACK_IFW_BINARYCREATOR_EXECUTABLE) - -# Look for 'repogen' - -find_program(CPACK_IFW_REPOGEN_EXECUTABLE - NAMES repogen - PATHS ${_CPACK_IFW_PATHS} - PATH_SUFFIXES ${_CPACK_IFW_SUFFIXES} - DOC "QtIFW repogen command line client" - ) -mark_as_advanced(CPACK_IFW_REPOGEN_EXECUTABLE) - -# Look for 'installerbase' - -find_program(CPACK_IFW_INSTALLERBASE_EXECUTABLE - NAMES installerbase - PATHS ${_CPACK_IFW_PATHS} - PATH_SUFFIXES ${_CPACK_IFW_SUFFIXES} - DOC "QtIFW installer executable base" - ) -mark_as_advanced(CPACK_IFW_INSTALLERBASE_EXECUTABLE) - -# Look for 'devtool' (appeared in the second branch) - -find_program(CPACK_IFW_DEVTOOL_EXECUTABLE - NAMES devtool - PATHS ${_CPACK_IFW_PATHS} - PATH_SUFFIXES ${_CPACK_IFW_SUFFIXES} - DOC "QtIFW devtool command line client" - ) -mark_as_advanced(CPACK_IFW_DEVTOOL_EXECUTABLE) - -# -## Next code is included only once -# - -if(NOT CPackIFW_CMake_INCLUDED) -set(CPackIFW_CMake_INCLUDED 1) - -#============================================================================= -# Framework version -#============================================================================= - -set(CPACK_IFW_FRAMEWORK_VERSION_FORCED "" - CACHE STRING "The forced version of used QtIFW tools") -mark_as_advanced(CPACK_IFW_FRAMEWORK_VERSION_FORCED) -set(CPACK_IFW_FRAMEWORK_VERSION_TIMEOUT 1 - CACHE STRING "The timeout to return QtIFW framework version string from \"installerbase\" executable") -mark_as_advanced(CPACK_IFW_FRAMEWORK_VERSION_TIMEOUT) -if(CPACK_IFW_INSTALLERBASE_EXECUTABLE AND NOT CPACK_IFW_FRAMEWORK_VERSION_FORCED) - set(CPACK_IFW_FRAMEWORK_VERSION) - # Invoke version from "installerbase" executable - foreach(_ifw_version_argument --framework-version --version) - if(NOT CPACK_IFW_FRAMEWORK_VERSION) - execute_process(COMMAND - "${CPACK_IFW_INSTALLERBASE_EXECUTABLE}" ${_ifw_version_argument} - TIMEOUT ${CPACK_IFW_FRAMEWORK_VERSION_TIMEOUT} - RESULT_VARIABLE CPACK_IFW_FRAMEWORK_VERSION_RESULT - OUTPUT_VARIABLE CPACK_IFW_FRAMEWORK_VERSION_OUTPUT - OUTPUT_STRIP_TRAILING_WHITESPACE - ENCODING UTF8) - if(NOT CPACK_IFW_FRAMEWORK_VERSION_RESULT AND CPACK_IFW_FRAMEWORK_VERSION_OUTPUT) - string(REGEX MATCH "[0-9]+(\\.[0-9]+)*" - CPACK_IFW_FRAMEWORK_VERSION "${CPACK_IFW_FRAMEWORK_VERSION_OUTPUT}") - if(CPACK_IFW_FRAMEWORK_VERSION) - if("${_ifw_version_argument}" STREQUAL "--framework-version") - set(CPACK_IFW_FRAMEWORK_VERSION_SOURCE "INSTALLERBASE_FRAMEWORK_VERSION") - elseif("${_ifw_version_argument}" STREQUAL "--version") - set(CPACK_IFW_FRAMEWORK_VERSION_SOURCE "INSTALLERBASE_FRAMEWORK_VERSION") - endif() - endif() - endif() - endif() - endforeach() - # Finally try to get version from executable path - if(NOT CPACK_IFW_FRAMEWORK_VERSION) - string(REGEX MATCH "[0-9]+(\\.[0-9]+)*" - CPACK_IFW_FRAMEWORK_VERSION "${CPACK_IFW_INSTALLERBASE_EXECUTABLE}") - if(CPACK_IFW_FRAMEWORK_VERSION) - set(CPACK_IFW_FRAMEWORK_VERSION_SOURCE "INSTALLERBASE_PATH") - endif() - endif() -elseif(CPACK_IFW_FRAMEWORK_VERSION_FORCED) - set(CPACK_IFW_FRAMEWORK_VERSION ${CPACK_IFW_FRAMEWORK_VERSION_FORCED}) - set(CPACK_IFW_FRAMEWORK_VERSION_SOURCE "FORCED") -endif() -if(CPACK_IFW_VERBOSE) - if(CPACK_IFW_FRAMEWORK_VERSION AND CPACK_IFW_FRAMEWORK_VERSION_FORCED) - message(STATUS "Found QtIFW ${CPACK_IFW_FRAMEWORK_VERSION} (forced) version") - elseif(CPACK_IFW_FRAMEWORK_VERSION) - message(STATUS "Found QtIFW ${CPACK_IFW_FRAMEWORK_VERSION} version") - endif() -endif() -if(CPACK_IFW_INSTALLERBASE_EXECUTABLE AND NOT CPACK_IFW_FRAMEWORK_VERSION) - message(WARNING "Could not detect QtIFW tools version. Set used version to variable \"CPACK_IFW_FRAMEWORK_VERSION_FORCED\" manually.") -endif() - -#============================================================================= -# Macro definition -#============================================================================= - -# Macro definition based on CPackComponent - -if(NOT CPackComponent_CMake_INCLUDED) - include(CPackComponent) -endif() - -# Resolve full filename for script file -macro(_cpack_ifw_resolve_script _variable) - set(_ifw_script_macro ${_variable}) - set(_ifw_script_file ${${_ifw_script_macro}}) - if(DEFINED ${_ifw_script_macro}) - get_filename_component(${_ifw_script_macro} ${_ifw_script_file} ABSOLUTE) - set(_ifw_script_file ${${_ifw_script_macro}}) - if(NOT EXISTS ${_ifw_script_file}) - message(WARNING "CPack IFW: script file \"${_ifw_script_file}\" does not exist") - set(${_ifw_script_macro}) - endif() - endif() -endmacro() - -# Resolve full path to license file -macro(_cpack_ifw_resolve_lisenses _variable) - if(${_variable}) - set(_ifw_license_file FALSE) - set(_ifw_licenses_fix) - foreach(_ifw_licenses_arg ${${_variable}}) - if(_ifw_license_file) - get_filename_component(_ifw_licenses_arg "${_ifw_licenses_arg}" ABSOLUTE) - set(_ifw_license_file FALSE) - else() - set(_ifw_license_file TRUE) - endif() - list(APPEND _ifw_licenses_fix "${_ifw_licenses_arg}") - endforeach(_ifw_licenses_arg) - set(${_variable} "${_ifw_licenses_fix}") - endif() -endmacro() - -# Resolve full path to a list of provided files -macro(_cpack_ifw_resolve_file_list _variable) - if(${_variable}) - set(_ifw_list_fix) - foreach(_ifw_file_arg ${${_variable}}) - get_filename_component(_ifw_file_arg "${_ifw_file_arg}" ABSOLUTE) - if(EXISTS ${_ifw_file_arg}) - list(APPEND _ifw_list_fix "${_ifw_file_arg}") - else() - message(WARNING "CPack IFW: page file \"${_ifw_file_arg}\" does not exist. Skipping") - endif() - endforeach(_ifw_file_arg) - set(${_variable} "${_ifw_list_fix}") - endif() -endmacro() - -# Macro for configure component -macro(cpack_ifw_configure_component compname) - - string(TOUPPER ${compname} _CPACK_IFWCOMP_UNAME) - - set(_IFW_OPT COMMON ESSENTIAL VIRTUAL FORCED_INSTALLATION REQUIRES_ADMIN_RIGHTS) - set(_IFW_ARGS NAME VERSION RELEASE_DATE SCRIPT PRIORITY SORTING_PRIORITY UPDATE_TEXT DEFAULT CHECKABLE) - set(_IFW_MULTI_ARGS DISPLAY_NAME DESCRIPTION DEPENDS DEPENDENCIES AUTO_DEPEND_ON LICENSES USER_INTERFACES TRANSLATIONS REPLACES) - cmake_parse_arguments(CPACK_IFW_COMPONENT_${_CPACK_IFWCOMP_UNAME} "${_IFW_OPT}" "${_IFW_ARGS}" "${_IFW_MULTI_ARGS}" ${ARGN}) - - _cpack_ifw_resolve_script(CPACK_IFW_COMPONENT_${_CPACK_IFWCOMP_UNAME}_SCRIPT) - _cpack_ifw_resolve_lisenses(CPACK_IFW_COMPONENT_${_CPACK_IFWCOMP_UNAME}_LICENSES) - _cpack_ifw_resolve_file_list(CPACK_IFW_COMPONENT_${_CPACK_IFWCOMP_UNAME}_USER_INTERFACES) - _cpack_ifw_resolve_file_list(CPACK_IFW_COMPONENT_${_CPACK_IFWCOMP_UNAME}_TRANSLATIONS) - - set(_CPACK_IFWCOMP_STR "\n# Configuration for IFW component \"${compname}\"\n") - - foreach(_IFW_ARG_NAME ${_IFW_OPT}) - cpack_append_option_set_command( - CPACK_IFW_COMPONENT_${_CPACK_IFWCOMP_UNAME}_${_IFW_ARG_NAME} - _CPACK_IFWCOMP_STR) - endforeach() - - foreach(_IFW_ARG_NAME ${_IFW_ARGS}) - cpack_append_string_variable_set_command( - CPACK_IFW_COMPONENT_${_CPACK_IFWCOMP_UNAME}_${_IFW_ARG_NAME} - _CPACK_IFWCOMP_STR) - endforeach() - - foreach(_IFW_ARG_NAME ${_IFW_MULTI_ARGS}) - cpack_append_list_variable_set_command( - CPACK_IFW_COMPONENT_${_CPACK_IFWCOMP_UNAME}_${_IFW_ARG_NAME} - _CPACK_IFWCOMP_STR) - endforeach() - - if(CPack_CMake_INCLUDED) - file(APPEND "${CPACK_OUTPUT_CONFIG_FILE}" "${_CPACK_IFWCOMP_STR}") - endif() - -endmacro() - -# Macro for configure group -macro(cpack_ifw_configure_component_group grpname) - - string(TOUPPER ${grpname} _CPACK_IFWGRP_UNAME) - - set(_IFW_OPT VIRTUAL FORCED_INSTALLATION REQUIRES_ADMIN_RIGHTS) - set(_IFW_ARGS NAME VERSION RELEASE_DATE SCRIPT PRIORITY SORTING_PRIORITY UPDATE_TEXT DEFAULT CHECKABLE) - set(_IFW_MULTI_ARGS DISPLAY_NAME DESCRIPTION DEPENDS DEPENDENCIES AUTO_DEPEND_ON LICENSES USER_INTERFACES TRANSLATIONS REPLACES) - cmake_parse_arguments(CPACK_IFW_COMPONENT_GROUP_${_CPACK_IFWGRP_UNAME} "${_IFW_OPT}" "${_IFW_ARGS}" "${_IFW_MULTI_ARGS}" ${ARGN}) - - _cpack_ifw_resolve_script(CPACK_IFW_COMPONENT_GROUP_${_CPACK_IFWGRP_UNAME}_SCRIPT) - _cpack_ifw_resolve_lisenses(CPACK_IFW_COMPONENT_GROUP_${_CPACK_IFWGRP_UNAME}_LICENSES) - _cpack_ifw_resolve_file_list(CPACK_IFW_COMPONENT_GROUP_${_CPACK_IFWGRP_UNAME}_USER_INTERFACES) - _cpack_ifw_resolve_file_list(CPACK_IFW_COMPONENT_GROUP_${_CPACK_IFWGRP_UNAME}_TRANSLATIONS) - - set(_CPACK_IFWGRP_STR "\n# Configuration for IFW component group \"${grpname}\"\n") - - foreach(_IFW_ARG_NAME ${_IFW_OPT}) - cpack_append_option_set_command( - CPACK_IFW_COMPONENT_GROUP_${_CPACK_IFWGRP_UNAME}_${_IFW_ARG_NAME} - _CPACK_IFWGRP_STR) - endforeach() - - foreach(_IFW_ARG_NAME ${_IFW_ARGS}) - cpack_append_string_variable_set_command( - CPACK_IFW_COMPONENT_GROUP_${_CPACK_IFWGRP_UNAME}_${_IFW_ARG_NAME} - _CPACK_IFWGRP_STR) - endforeach() - - foreach(_IFW_ARG_NAME ${_IFW_MULTI_ARGS}) - cpack_append_list_variable_set_command( - CPACK_IFW_COMPONENT_GROUP_${_CPACK_IFWGRP_UNAME}_${_IFW_ARG_NAME} - _CPACK_IFWGRP_STR) - endforeach() - - if(CPack_CMake_INCLUDED) - file(APPEND "${CPACK_OUTPUT_CONFIG_FILE}" "${_CPACK_IFWGRP_STR}") - endif() -endmacro() - -# Macro for adding repository -macro(cpack_ifw_add_repository reponame) - - string(TOUPPER ${reponame} _CPACK_IFWREPO_UNAME) - - set(_IFW_OPT DISABLED) - set(_IFW_ARGS URL USERNAME PASSWORD DISPLAY_NAME) - set(_IFW_MULTI_ARGS) - cmake_parse_arguments(CPACK_IFW_REPOSITORY_${_CPACK_IFWREPO_UNAME} "${_IFW_OPT}" "${_IFW_ARGS}" "${_IFW_MULTI_ARGS}" ${ARGN}) - - set(_CPACK_IFWREPO_STR "\n# Configuration for IFW repository \"${reponame}\"\n") - - foreach(_IFW_ARG_NAME ${_IFW_OPT}) - cpack_append_option_set_command( - CPACK_IFW_REPOSITORY_${_CPACK_IFWREPO_UNAME}_${_IFW_ARG_NAME} - _CPACK_IFWREPO_STR) - endforeach() - - foreach(_IFW_ARG_NAME ${_IFW_ARGS}) - cpack_append_string_variable_set_command( - CPACK_IFW_REPOSITORY_${_CPACK_IFWREPO_UNAME}_${_IFW_ARG_NAME} - _CPACK_IFWREPO_STR) - endforeach() - - foreach(_IFW_ARG_NAME ${_IFW_MULTI_ARGS}) - cpack_append_variable_set_command( - CPACK_IFW_REPOSITORY_${_CPACK_IFWREPO_UNAME}_${_IFW_ARG_NAME} - _CPACK_IFWREPO_STR) - endforeach() - - list(APPEND CPACK_IFW_REPOSITORIES_ALL ${reponame}) - string(APPEND _CPACK_IFWREPO_STR "list(APPEND CPACK_IFW_REPOSITORIES_ALL ${reponame})\n") - - if(CPack_CMake_INCLUDED) - file(APPEND "${CPACK_OUTPUT_CONFIG_FILE}" "${_CPACK_IFWREPO_STR}") - endif() - -endmacro() - -# Macro for updating repository -macro(cpack_ifw_update_repository reponame) - - string(TOUPPER ${reponame} _CPACK_IFWREPO_UNAME) - - set(_IFW_OPT ADD REMOVE REPLACE DISABLED) - set(_IFW_ARGS URL OLD_URL NEW_URL USERNAME PASSWORD DISPLAY_NAME) - set(_IFW_MULTI_ARGS) - cmake_parse_arguments(CPACK_IFW_REPOSITORY_${_CPACK_IFWREPO_UNAME} "${_IFW_OPT}" "${_IFW_ARGS}" "${_IFW_MULTI_ARGS}" ${ARGN}) - - set(_CPACK_IFWREPO_STR "\n# Configuration for IFW repository \"${reponame}\" update\n") - - foreach(_IFW_ARG_NAME ${_IFW_OPT}) - cpack_append_option_set_command( - CPACK_IFW_REPOSITORY_${_CPACK_IFWREPO_UNAME}_${_IFW_ARG_NAME} - _CPACK_IFWREPO_STR) - endforeach() - - foreach(_IFW_ARG_NAME ${_IFW_ARGS}) - cpack_append_string_variable_set_command( - CPACK_IFW_REPOSITORY_${_CPACK_IFWREPO_UNAME}_${_IFW_ARG_NAME} - _CPACK_IFWREPO_STR) - endforeach() - - foreach(_IFW_ARG_NAME ${_IFW_MULTI_ARGS}) - cpack_append_variable_set_command( - CPACK_IFW_REPOSITORY_${_CPACK_IFWREPO_UNAME}_${_IFW_ARG_NAME} - _CPACK_IFWREPO_STR) - endforeach() - - if(CPACK_IFW_REPOSITORY_${_CPACK_IFWREPO_UNAME}_ADD - OR CPACK_IFW_REPOSITORY_${_CPACK_IFWREPO_UNAME}_REMOVE - OR CPACK_IFW_REPOSITORY_${_CPACK_IFWREPO_UNAME}_REPLACE) - list(APPEND CPACK_IFW_REPOSITORIES_ALL ${reponame}) - string(APPEND _CPACK_IFWREPO_STR "list(APPEND CPACK_IFW_REPOSITORIES_ALL ${reponame})\n") - else() - set(_CPACK_IFWREPO_STR) - endif() - - if(CPack_CMake_INCLUDED AND _CPACK_IFWREPO_STR) - file(APPEND "${CPACK_OUTPUT_CONFIG_FILE}" "${_CPACK_IFWREPO_STR}") - endif() - -endmacro() - -# Macro for adding resources -macro(cpack_ifw_add_package_resources) - set(_CPACK_IFW_PACKAGE_RESOURCES ${ARGV}) - _cpack_ifw_resolve_file_list(_CPACK_IFW_PACKAGE_RESOURCES) - list(APPEND CPACK_IFW_PACKAGE_RESOURCES ${_CPACK_IFW_PACKAGE_RESOURCES}) - set(_CPACK_IFWQRC_STR "list(APPEND CPACK_IFW_PACKAGE_RESOURCES \"${_CPACK_IFW_PACKAGE_RESOURCES}\")\n") - if(CPack_CMake_INCLUDED) - file(APPEND "${CPACK_OUTPUT_CONFIG_FILE}" "${_CPACK_IFWQRC_STR}") - endif() -endmacro() - -# Resolve package control script -_cpack_ifw_resolve_script(CPACK_IFW_PACKAGE_CONTROL_SCRIPT) - -endif() # NOT CPackIFW_CMake_INCLUDED |