[OE-core] [PATCH 1/3] package_rpm.bbclass: make DESCRIPTION support newline
Robert Yang
liezhi.yang at windriver.com
Mon Jul 8 03:17:13 UTC 2013
The recipe's DESCRIPTION is wrapped automatically by textwrap, make it
support newline ("\n") to let the user can wrap it manually, e.g.:
DESCRIPTION = "Foo1\nFoo2"
In the past, it would be:
Foo1\nFoo2
Now:
Foo1
Foo2
[YOCTO #4348]
Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
---
meta/classes/package_rpm.bbclass | 20 +++++++++++++++-----
1 file changed, 15 insertions(+), 5 deletions(-)
diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index c654cdb..fa928ce 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -534,7 +534,6 @@ def write_rpm_perfiledata(srcname, d):
python write_specfile () {
- import textwrap
import oe.packagedata
# append information for logs and patches to %prep
@@ -668,6 +667,19 @@ python write_specfile () {
deps.append(depends)
return " ".join(deps)
+ def append_description(spec_preamble, text):
+ """
+ Add the description to the spec file.
+ """
+ import textwrap
+ dedent_text = textwrap.dedent(text).strip()
+ # Bitbake saves "\n" as "\\n"
+ if '\\n' in dedent_text:
+ for t in dedent_text.split('\\n'):
+ spec_preamble.append(t.strip())
+ else:
+ spec_preamble.append('%s' % textwrap.fill(dedent_text, width=75))
+
packages = d.getVar('PACKAGES', True)
if not packages or packages == '':
bb.debug(1, "No packages; nothing to do")
@@ -868,8 +880,7 @@ python write_specfile () {
spec_preamble_bottom.append('')
spec_preamble_bottom.append('%%description -n %s' % splitname)
- dedent_text = textwrap.dedent(splitdescription).strip()
- spec_preamble_bottom.append('%s' % textwrap.fill(dedent_text, width=75))
+ append_description(spec_preamble_bottom, splitdescription)
spec_preamble_bottom.append('')
@@ -975,8 +986,7 @@ python write_specfile () {
spec_preamble_top.append('')
spec_preamble_top.append('%description')
- dedent_text = textwrap.dedent(srcdescription).strip()
- spec_preamble_top.append('%s' % textwrap.fill(dedent_text, width=75))
+ append_description(spec_preamble_top, srcdescription)
spec_preamble_top.append('')
--
1.7.10.4
More information about the Openembedded-core
mailing list