diff options
| -rw-r--r-- | meta/classes/package_deb.bbclass | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/meta/classes/package_deb.bbclass b/meta/classes/package_deb.bbclass index c19a9249d5..ae085c301d 100644 --- a/meta/classes/package_deb.bbclass +++ b/meta/classes/package_deb.bbclass | |||
| @@ -154,16 +154,18 @@ python do_package_deb () { | |||
| 154 | def pullData(l, d): | 154 | def pullData(l, d): |
| 155 | l2 = [] | 155 | l2 = [] |
| 156 | for i in l: | 156 | for i in l: |
| 157 | l2.append(bb.data.getVar(i, d, 1)) | 157 | data = bb.data.getVar(i, d, 1) |
| 158 | if data is None: | ||
| 159 | raise KeyError(f) | ||
| 160 | if i == 'TARGET_ARCH' and bb.data.getVar('PACKAGE_ARCH', d, 1) == 'all': | ||
| 161 | data = 'all' | ||
| 162 | l2.append(data) | ||
| 158 | return l2 | 163 | return l2 |
| 159 | 164 | ||
| 160 | ctrlfile.write("Package: %s\n" % pkgname) | 165 | ctrlfile.write("Package: %s\n" % pkgname) |
| 161 | # check for required fields | 166 | # check for required fields |
| 162 | try: | 167 | try: |
| 163 | for (c, fs) in fields: | 168 | for (c, fs) in fields: |
| 164 | for f in fs: | ||
| 165 | if bb.data.getVar(f, localdata) is None: | ||
| 166 | raise KeyError(f) | ||
| 167 | ctrlfile.write(unicode(c % tuple(pullData(fs, localdata)))) | 169 | ctrlfile.write(unicode(c % tuple(pullData(fs, localdata)))) |
| 168 | except KeyError: | 170 | except KeyError: |
| 169 | (type, value, traceback) = sys.exc_info() | 171 | (type, value, traceback) = sys.exc_info() |
