This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, next has been updated
       via  ed5cd9993461fabf38e9986dc52b304cd5f2830b (commit)
       via  d3c1b906906bd6abab1d42fc1166e117b7ce8567 (commit)
      from  8752d765ae63edd5153a0547727989a4efe4d809 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ed5cd9993461fabf38e9986dc52b304cd5f2830b
commit ed5cd9993461fabf38e9986dc52b304cd5f2830b
Merge: 8752d76 d3c1b90
Author:     Domen Vrankar <domen.vran...@gmail.com>
AuthorDate: Mon Sep 5 17:59:22 2016 -0400
Commit:     CMake Topic Stage <kwro...@kitware.com>
CommitDate: Mon Sep 5 17:59:22 2016 -0400

    Merge topic 'cpack-deb-package-description-fallback' into next
    
    d3c1b906 cpack-deb-package-description-fallback


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d3c1b906906bd6abab1d42fc1166e117b7ce8567
commit d3c1b906906bd6abab1d42fc1166e117b7ce8567
Author:     Domen Vrankar <domen.vran...@gmail.com>
AuthorDate: Mon Sep 5 23:58:33 2016 +0200
Commit:     Domen Vrankar <domen.vran...@gmail.com>
CommitDate: Mon Sep 5 23:58:33 2016 +0200

    cpack-deb-package-description-fallback
    
    Breaking change of fallback variable precedence
    for CPACK_DEBIAN_PACKAGE_DESCRIPTION that matches
    CPackRPM behavior as much as possible.
    See Issue #16272

diff --git a/Help/release/dev/cpack-deb-package-description-fallback 
b/Help/release/dev/cpack-deb-package-description-fallback
new file mode 100644
index 0000000..6300dfc
--- /dev/null
+++ b/Help/release/dev/cpack-deb-package-description-fallback
@@ -0,0 +1,11 @@
+cpack-deb-package-description-fallback
+--------------------------------------
+
+* The :module:`CPackDeb` module learned new package description
+  override rules to match :module:`CPackRPM` module behavior.
+  **Breaking change**: If :variable:`CPACK_PACKAGE_DESCRIPTION_FILE`
+  variable is set to non default location then it is prefered to
+  :variable:`CPACK_PACKAGE_DESCRIPTION_SUMMARY` variable.
+  Also a new :variable:`CPACK_DEBIAN_<COMPONENT>_PACKAGE_DESCRIPTION`
+  was introduced for component based packaging.
+  See :variable:`CPACK_DEBIAN_PACKAGE_DESCRIPTION`.
diff --git a/Modules/CPackDeb.cmake b/Modules/CPackDeb.cmake
index c9678d6..cbba186 100644
--- a/Modules/CPackDeb.cmake
+++ b/Modules/CPackDeb.cmake
@@ -156,16 +156,18 @@
 #  * Default   : :code:`CPACK_PACKAGE_CONTACT`
 #
 # .. variable:: CPACK_DEBIAN_PACKAGE_DESCRIPTION
-#               CPACK_COMPONENT_<COMPONENT>_DESCRIPTION
+#               CPACK_DEBIAN_<COMPONENT>_PACKAGE_DESCRIPTION
 #
 #  The Debian package description
 #
 #  * Mandatory : YES
 #  * Default   :
 #
-#    - :variable:`CPACK_DEBIAN_PACKAGE_DESCRIPTION` if set or
-#    - :variable:`CPACK_PACKAGE_DESCRIPTION_SUMMARY`
-#
+#    - :variable:`CPACK_COMPONENT_<COMPONENT>_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 location content
 #
 # .. variable:: CPACK_DEBIAN_PACKAGE_SECTION
 #               CPACK_DEBIAN_<COMPONENT>_PACKAGE_SECTION
@@ -811,24 +813,21 @@ function(cpack_deb_prepare_package_vars)
   endif()
 
   # Description: (mandatory)
-  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})
+  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}")
     endif()
-  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()
+
+  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}")
+    else() # use default package description file content
+      file(READ "${CPACK_PACKAGE_DESCRIPTION_FILE}" 
CPACK_DEBIAN_PACKAGE_DESCRIPTION)
     endif()
   endif()
 
diff --git 
a/Tests/CPackComponentsDEB/MyLibCPackConfig-components-description1.cmake.in 
b/Tests/CPackComponentsDEB/MyLibCPackConfig-components-description1.cmake.in
index 74d816c..6c5a655 100644
--- a/Tests/CPackComponentsDEB/MyLibCPackConfig-components-description1.cmake.in
+++ b/Tests/CPackComponentsDEB/MyLibCPackConfig-components-description1.cmake.in
@@ -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_COMPONENT_APPLICATIONS_DESCRIPTION    "applications_description")
-set(CPACK_COMPONENT_HEADERS_DESCRIPTION         "headers_description")
+set(CPACK_PACKAGE_DESCRIPTION_SUMMARY               "main description")
+set(CPACK_DEBIAN_APPLICATIONS_PACKAGE_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)
diff --git 
a/Tests/CPackComponentsDEB/MyLibCPackConfig-components-description2.cmake.in 
b/Tests/CPackComponentsDEB/MyLibCPackConfig-components-description2.cmake.in
index cda79bc..92226d8 100644
--- a/Tests/CPackComponentsDEB/MyLibCPackConfig-components-description2.cmake.in
+++ b/Tests/CPackComponentsDEB/MyLibCPackConfig-components-description2.cmake.in
@@ -17,10 +17,12 @@ 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")
diff --git 
a/Tests/CPackComponentsDEB/RunCPackVerifyResult-components-description2.cmake 
b/Tests/CPackComponentsDEB/RunCPackVerifyResult-components-description2.cmake
index 35ca74c..7b94ca0 100644
--- 
a/Tests/CPackComponentsDEB/RunCPackVerifyResult-components-description2.cmake
+++ 
b/Tests/CPackComponentsDEB/RunCPackVerifyResult-components-description2.cmake
@@ -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 "main description 2")
+      if(NOT "${dpkg_description}" STREQUAL "Debian package description file")
         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 "main description 2")
+      if(NOT "${dpkg_description}" STREQUAL "Debian package description file")
         set(dpkgdeb_output_errors_all ${dpkgdeb_output_errors_all}
                                       "dpkg-deb: ${_f}: Incorrect description 
for package ${dpkg_package_name}: ${dpkg_description} != headers_description")
       endif()
diff --git a/Tests/CPackComponentsDEB/pkg_description.txt 
b/Tests/CPackComponentsDEB/pkg_description.txt
new file mode 100644
index 0000000..99f8f9b
--- /dev/null
+++ b/Tests/CPackComponentsDEB/pkg_description.txt
@@ -0,0 +1 @@
+Debian package description file

-----------------------------------------------------------------------

Summary of changes:
 .../dev/cpack-deb-package-description-fallback     |   11 ++++++
 Modules/CPackDeb.cmake                             |   41 ++++++++++----------
 ...LibCPackConfig-components-description1.cmake.in |    6 +--
 ...LibCPackConfig-components-description2.cmake.in |    6 ++-
 ...CPackVerifyResult-components-description2.cmake |    4 +-
 Tests/CPackComponentsDEB/pkg_description.txt       |    1 +
 6 files changed, 41 insertions(+), 28 deletions(-)
 create mode 100644 Help/release/dev/cpack-deb-package-description-fallback
 create mode 100644 Tests/CPackComponentsDEB/pkg_description.txt


hooks/post-receive
-- 
CMake
_______________________________________________
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/mailman/listinfo/cmake-commits

Reply via email to