From b2f2590e6c566d1ed4df87cf52279106497d584d Mon Sep 17 00:00:00 2001 From: Mark Hatle Date: Wed, 29 Sep 2010 10:11:24 -0500 Subject: Add Summary/Description support to packaging [BUGID #281] Add the ability for the deb, ipk and rpm classes to use the new summary and description fields. The Description is wrapped around 75 characters to ensure a reasonably nice, presentable description. (Summary defaults to the description if Summary is not defined.) Signed-off-by: Mark Hatle --- meta/classes/package_deb.bbclass | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'meta/classes/package_deb.bbclass') diff --git a/meta/classes/package_deb.bbclass b/meta/classes/package_deb.bbclass index eb4df5e70..8a9cdc071 100644 --- a/meta/classes/package_deb.bbclass +++ b/meta/classes/package_deb.bbclass @@ -69,6 +69,7 @@ python do_package_deb_install () { python do_package_deb () { import re, copy + import textwrap workdir = bb.data.getVar('WORKDIR', d, True) if not workdir: @@ -179,7 +180,18 @@ python do_package_deb () { # check for required fields try: for (c, fs) in fields: - ctrlfile.write(unicode(c % tuple(pullData(fs, localdata)))) + for f in fs: + if bb.data.getVar(f, localdata) is None: + raise KeyError(f) + # Special behavior for description... + if 'DESCRIPTION' in fs: + summary = bb.data.getVar('SUMMARY', localdata, True) or bb.data.getVar('DESCRIPTION', localdata, True) or "." + description = bb.data.getVar('DESCRIPTION', localdata, True) or "." + description = textwrap.dedent(description).strip() + ctrlfile.write('Description: %s\n' % unicode(summary)) + ctrlfile.write('%s\n' % unicode(textwrap.fill(description, width=74, initial_indent=' ', subsequent_indent=' '))) + else: + ctrlfile.write(unicode(c % tuple(pullData(fs, localdata)))) except KeyError: import sys (type, value, traceback) = sys.exc_info() -- cgit v1.2.3