package_ipk: correct ipk multiline descriptions

Empty descriptions lines are set with a space following by a dot and
the multiline ones require a leading space. Also, for non-empty lines,
there is no need for formating with textwrap, so remove the logic for
the latter. The documentation for multiline description was taken from [1].

[1] https://web.archive.org/web/20100727133051/http://handhelds.org:80/moin/moin.cgi/BuildingIpkgs

[YOCTO #10677]

(From OE-Core rev: c768c536e4dbee69690d0dc131df05a74b4eac8c)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Leonardo Sandoval
2017-05-29 10:36:47 -07:00
committed by Richard Purdie
parent 0c40be9088
commit 41dcb7d3bd

View File

@@ -148,16 +148,9 @@ def ipk_write_pkg(pkg, d):
description = localdata.getVar('DESCRIPTION') or "."
description = textwrap.dedent(description).strip()
if '\\n' in description:
# Manually indent
# Manually indent: multiline description includes a leading space
for t in description.split('\\n'):
# We don't limit the width when manually indent, but we do
# need the textwrap.fill() to set the initial_indent and
# subsequent_indent, so set a large width
line = textwrap.fill(t.strip(),
width=100000,
initial_indent=' ',
subsequent_indent=' ') or '.'
ctrlfile.write('%s\n' % line)
ctrlfile.write(' %s\n' % (t.strip() or ' .'))
else:
# Auto indent
ctrlfile.write('%s\n' % textwrap.fill(description, width=74, initial_indent=' ', subsequent_indent=' '))