summaryrefslogtreecommitdiffstats
path: root/Modules
diff options
context:
space:
mode:
authorJonathan Verner <jonathan@temno.eu>2020-05-27 14:53:06 (GMT)
committerKyle Edwards <kyle.edwards@kitware.com>2020-05-27 18:44:28 (GMT)
commit6ba842163c9060f15156627c19b77aa7fd9838cd (patch)
treed9da12d352744c4282d7ab51d026eae3d34a80af /Modules
parent6fce0cbcab97cab1d190ccd915153fcfd156df5e (diff)
downloadCMake-6ba842163c9060f15156627c19b77aa7fd9838cd.zip
CMake-6ba842163c9060f15156627c19b77aa7fd9838cd.tar.gz
CMake-6ba842163c9060f15156627c19b77aa7fd9838cd.tar.bz2
CPack-deb: don't add a line with a dot to pkg desc
Currently, if the package description ends with a newline (typically if it is read from a file) cpack -deb adds a single line with a dot at the end which leads to a violation of the `extended-description-contains-empty-paragraph` debian policy. This commit fixes the above behaviour. Fixes: #20763
Diffstat (limited to 'Modules')
-rw-r--r--Modules/Internal/CPack/CPackDeb.cmake10
1 files changed, 10 insertions, 0 deletions
diff --git a/Modules/Internal/CPack/CPackDeb.cmake b/Modules/Internal/CPack/CPackDeb.cmake
index 14bb104..db35e3a 100644
--- a/Modules/Internal/CPack/CPackDeb.cmake
+++ b/Modules/Internal/CPack/CPackDeb.cmake
@@ -83,6 +83,16 @@ function(cpack_deb_format_package_description TEXT OUTPUT_VAR)
string(REPLACE "\n" ";" _lines "${_text}")
list(POP_FRONT _lines _summary)
+ # If the description ends with a newline (e.g. typically if it was read
+ # from a file) the last line will be empty. We drop it here, otherwise
+ # it would be replaced by a `.` which would lead to the package violating
+ # the extended-description-contains-empty-paragraph debian policy
+ list(POP_BACK _lines _last_line)
+ string(STRIP "${_last_line}" _last_line_strip)
+ if(_last_line_strip)
+ list(APPEND _lines "${_last_line_strip}")
+ endif()
+
# Check if reformatting required
cpack_deb_check_description("${_summary}" "${_lines}" _result)
if(_result)