Skip to content
Snippets Groups Projects
Commit 1ef45a30 authored by Domen Vrankar's avatar Domen Vrankar
Browse files

Revert "CPack/DEB: Make package description variable precedence match RPM"

This reverts commit 332b089a as multiline
descriptions require special formatting.
parent 08147a7f
No related branches found
No related tags found
No related merge requests found
cpack-deb-package-description-fallback
--------------------------------------
* The :module:`CPackDeb` module gained a new
:variable:`CPACK_DEBIAN_<COMPONENT>_PACKAGE_DESCRIPTION`
variable for component-specific package descriptions.
* The :module:`CPackDeb` module changed its package description
override rules to match :module:`CPackRPM` module behavior.
If the :variable:`CPACK_PACKAGE_DESCRIPTION_FILE` variable is set to
a non-default location then it is preferred to the
:variable:`CPACK_PACKAGE_DESCRIPTION_SUMMARY` variable.
This is a behavior change from previous versions but produces
more consistent and expected behavior.
See :variable:`CPACK_DEBIAN_PACKAGE_DESCRIPTION`.
......@@ -156,18 +156,16 @@
# * Default : :code:`CPACK_PACKAGE_CONTACT`
#
# .. variable:: CPACK_DEBIAN_PACKAGE_DESCRIPTION
# CPACK_DEBIAN_<COMPONENT>_PACKAGE_DESCRIPTION
# CPACK_COMPONENT_<COMPONENT>_DESCRIPTION
#
# The Debian package description
#
# * Mandatory : YES
# * Default :
#
# - :variable:`CPACK_COMPONENT_<compName>_DESCRIPTION` (component based installers only) if set,
# - :variable:`CPACK_PACKAGE_DESCRIPTION_FILE` if set to non default location,
# - :variable:`CPACK_PACKAGE_DESCRIPTION_SUMMARY` if set,
# - :variable:`CPACK_PACKAGE_DESCRIPTION_FILE` default value if set,
# - or "no package description available"
# - :variable:`CPACK_DEBIAN_PACKAGE_DESCRIPTION` if set or
# - :variable:`CPACK_PACKAGE_DESCRIPTION_SUMMARY`
#
#
# .. variable:: CPACK_DEBIAN_PACKAGE_SECTION
# CPACK_DEBIAN_<COMPONENT>_PACKAGE_SECTION
......@@ -831,23 +829,24 @@ function(cpack_deb_prepare_package_vars)
endif()
# Description: (mandatory)
if(CPACK_DEB_PACKAGE_COMPONENT)
if(CPACK_DEBIAN_${_local_component_name}_PACKAGE_DESCRIPTION)
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "${CPACK_DEBIAN_${_local_component_name}_PACKAGE_DESCRIPTION}")
elseif(CPACK_COMPONENT_${_local_component_name}_DESCRIPTION)
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "${CPACK_COMPONENT_${_local_component_name}_DESCRIPTION}")
if(NOT CPACK_DEB_PACKAGE_COMPONENT)
if(NOT CPACK_DEBIAN_PACKAGE_DESCRIPTION)
if(NOT CPACK_PACKAGE_DESCRIPTION_SUMMARY)
message(FATAL_ERROR "CPackDeb: Debian package requires a summary for a package, set CPACK_PACKAGE_DESCRIPTION_SUMMARY or CPACK_DEBIAN_PACKAGE_DESCRIPTION")
endif()
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION ${CPACK_PACKAGE_DESCRIPTION_SUMMARY})
endif()
endif()
if(NOT CPACK_DEBIAN_PACKAGE_DESCRIPTION)
if(CPACK_PACKAGE_DESCRIPTION_FILE AND NOT "${CPACK_PACKAGE_DESCRIPTION_FILE}" STREQUAL "${CMAKE_ROOT}/Templates/CPack.GenericDescription.txt")
file(READ "${CPACK_PACKAGE_DESCRIPTION_FILE}" CPACK_DEBIAN_PACKAGE_DESCRIPTION)
elseif(CPACK_PACKAGE_DESCRIPTION_SUMMARY)
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "${CPACK_PACKAGE_DESCRIPTION_SUMMARY}")
elseif(CPACK_PACKAGE_DESCRIPTION_FILE) # use default package description file content
file(READ "${CPACK_PACKAGE_DESCRIPTION_FILE}" CPACK_DEBIAN_PACKAGE_DESCRIPTION)
else()
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "no package description available")
else()
set(component_description_var CPACK_COMPONENT_${_local_component_name}_DESCRIPTION)
# component description overrides package description
if(${component_description_var})
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION ${${component_description_var}})
elseif(NOT CPACK_DEBIAN_PACKAGE_DESCRIPTION)
if(NOT CPACK_PACKAGE_DESCRIPTION_SUMMARY)
message(FATAL_ERROR "CPackDeb: Debian package requires a summary for a package, set CPACK_PACKAGE_DESCRIPTION_SUMMARY or CPACK_DEBIAN_PACKAGE_DESCRIPTION or ${component_description_var}")
endif()
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION ${CPACK_PACKAGE_DESCRIPTION_SUMMARY})
endif()
endif()
......
......@@ -15,8 +15,8 @@ set(CPACK_COMPONENTS_IGNORE_GROUPS 1)
#set(CPACK_COMPONENTS_ALL_IN_ONE_PACKAGE 1)
# overriding previous descriptions
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "main description")
set(CPACK_DEBIAN_APPLICATIONS_PACKAGE_DESCRIPTION "applications_description")
set(CPACK_COMPONENT_HEADERS_DESCRIPTION "headers_description")
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "main description")
set(CPACK_COMPONENT_APPLICATIONS_DESCRIPTION "applications_description")
set(CPACK_COMPONENT_HEADERS_DESCRIPTION "headers_description")
# libraries does not have any description and should inherit from CPACK_PACKAGE_DESCRIPTION_SUMMARY
unset(CPACK_COMPONENT_LIBRARIES_DESCRIPTION)
......@@ -17,12 +17,10 @@ set(CPACK_COMPONENTS_IGNORE_GROUPS 1)
# overriding previous descriptions
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "main description 2")
# and override CPACK_PACKAGE_DESCRIPTION_SUMMARY because of precedence
set(CPACK_PACKAGE_DESCRIPTION_FILE
"@CPackComponentsDEB_SOURCE_DIR@/pkg_description.txt")
# Components do not have any description
unset(CPACK_COMPONENT_APPLICATIONS_DESCRIPTION)
unset(CPACK_COMPONENT_HEADERS_DESCRIPTION)
unset(CPACK_COMPONENT_LIBRARIES_DESCRIPTION)
set(CPACK_COMPONENT_LIBRARIES_DESCRIPTION "library description")
......@@ -55,12 +55,12 @@ if(DPKGDEB_EXECUTABLE)
message(STATUS "package='${dpkg_package_name}', description='${dpkg_description}'")
if("${dpkg_package_name}" STREQUAL "mylib-applications")
if(NOT "${dpkg_description}" STREQUAL "Debian package description file")
if(NOT "${dpkg_description}" STREQUAL "main description 2")
set(dpkgdeb_output_errors_all ${dpkgdeb_output_errors_all}
"dpkg-deb: ${_f}: Incorrect description for package ${dpkg_package_name}: ${dpkg_description} != applications_description")
endif()
elseif("${dpkg_package_name}" STREQUAL "mylib-headers")
if(NOT "${dpkg_description}" STREQUAL "Debian package description file")
if(NOT "${dpkg_description}" STREQUAL "main description 2")
set(dpkgdeb_output_errors_all ${dpkgdeb_output_errors_all}
"dpkg-deb: ${_f}: Incorrect description for package ${dpkg_package_name}: ${dpkg_description} != headers_description")
endif()
......
Debian package description file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment