diff options
author | Jonathan Verner <jonathan@temno.eu> | 2020-05-27 14:53:06 (GMT) |
---|---|---|
committer | Kyle Edwards <kyle.edwards@kitware.com> | 2020-05-27 18:44:28 (GMT) |
commit | 6ba842163c9060f15156627c19b77aa7fd9838cd (patch) | |
tree | d9da12d352744c4282d7ab51d026eae3d34a80af /Modules | |
parent | 6fce0cbcab97cab1d190ccd915153fcfd156df5e (diff) | |
download | CMake-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.cmake | 10 |
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) |