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  345e669b0663a23876c815d46463ea90685bd110 (commit)
       via  9afe1ed94c46071b5ec0b3ef288493d355de75db (commit)
      from  d7cc6846e9bfce3f59161ee1485b181039276d6a (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=345e669b0663a23876c815d46463ea90685bd110
commit 345e669b0663a23876c815d46463ea90685bd110
Merge: d7cc684 9afe1ed
Author:     Domen Vrankar <domen.vran...@gmail.com>
AuthorDate: Tue Sep 6 13:41:38 2016 -0400
Commit:     CMake Topic Stage <kwro...@kitware.com>
CommitDate: Tue Sep 6 13:41:38 2016 -0400

    Merge topic 'cpack-deb-package-description-fallback' into next
    
    9afe1ed9 cpack-deb-package-description-fallback


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9afe1ed94c46071b5ec0b3ef288493d355de75db
commit 9afe1ed94c46071b5ec0b3ef288493d355de75db
Author:     Domen Vrankar <domen.vran...@gmail.com>
AuthorDate: Mon Sep 5 23:58:33 2016 +0200
Commit:     Domen Vrankar <domen.vran...@gmail.com>
CommitDate: Tue Sep 6 19:39:43 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.
    
    Closes: #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 1a7b923..1032dfc 100644
--- a/Modules/CPackDeb.cmake
+++ b/Modules/CPackDeb.cmake
@@ -156,16 +156,19 @@
 #  * 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_<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_SECTION
 #               CPACK_DEBIAN_<COMPONENT>_PACKAGE_SECTION
@@ -829,24 +832,23 @@ 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}")
+    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")
     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                             |   44 ++++++++++----------
 ...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, 44 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