diff options
Diffstat (limited to 'meta/classes/package_deb.bbclass')
-rw-r--r-- | meta/classes/package_deb.bbclass | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/meta/classes/package_deb.bbclass b/meta/classes/package_deb.bbclass index eb4df5e704..8a9cdc071d 100644 --- a/meta/classes/package_deb.bbclass +++ b/meta/classes/package_deb.bbclass | |||
@@ -69,6 +69,7 @@ python do_package_deb_install () { | |||
69 | 69 | ||
70 | python do_package_deb () { | 70 | python do_package_deb () { |
71 | import re, copy | 71 | import re, copy |
72 | import textwrap | ||
72 | 73 | ||
73 | workdir = bb.data.getVar('WORKDIR', d, True) | 74 | workdir = bb.data.getVar('WORKDIR', d, True) |
74 | if not workdir: | 75 | if not workdir: |
@@ -179,7 +180,18 @@ python do_package_deb () { | |||
179 | # check for required fields | 180 | # check for required fields |
180 | try: | 181 | try: |
181 | for (c, fs) in fields: | 182 | for (c, fs) in fields: |
182 | ctrlfile.write(unicode(c % tuple(pullData(fs, localdata)))) | 183 | for f in fs: |
184 | if bb.data.getVar(f, localdata) is None: | ||
185 | raise KeyError(f) | ||
186 | # Special behavior for description... | ||
187 | if 'DESCRIPTION' in fs: | ||
188 | summary = bb.data.getVar('SUMMARY', localdata, True) or bb.data.getVar('DESCRIPTION', localdata, True) or "." | ||
189 | description = bb.data.getVar('DESCRIPTION', localdata, True) or "." | ||
190 | description = textwrap.dedent(description).strip() | ||
191 | ctrlfile.write('Description: %s\n' % unicode(summary)) | ||
192 | ctrlfile.write('%s\n' % unicode(textwrap.fill(description, width=74, initial_indent=' ', subsequent_indent=' '))) | ||
193 | else: | ||
194 | ctrlfile.write(unicode(c % tuple(pullData(fs, localdata)))) | ||
183 | except KeyError: | 195 | except KeyError: |
184 | import sys | 196 | import sys |
185 | (type, value, traceback) = sys.exc_info() | 197 | (type, value, traceback) = sys.exc_info() |