diff options
Diffstat (limited to 'meta/classes/packagedata.bbclass')
| -rw-r--r-- | meta/classes/packagedata.bbclass | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/meta/classes/packagedata.bbclass b/meta/classes/packagedata.bbclass index 120cd6445f..d1aedf2289 100644 --- a/meta/classes/packagedata.bbclass +++ b/meta/classes/packagedata.bbclass | |||
| @@ -1,8 +1,14 @@ | |||
| 1 | python read_subpackage_metadata () { | 1 | python read_subpackage_metadata () { |
| 2 | import oe.packagedata | 2 | import oe.packagedata |
| 3 | 3 | ||
| 4 | pn = d.getVar('PN', True) | 4 | vars = { |
| 5 | data = oe.packagedata.read_pkgdata(pn, d) | 5 | "PN" : d.getVar('PN', True), |
| 6 | "PE" : d.getVar('PE', True), | ||
| 7 | "PV" : d.getVar('PV', True), | ||
| 8 | "PR" : d.getVar('PR', True), | ||
| 9 | } | ||
| 10 | |||
| 11 | data = oe.packagedata.read_pkgdata(vars["PN"], d) | ||
| 6 | 12 | ||
| 7 | for key in data.keys(): | 13 | for key in data.keys(): |
| 8 | d.setVar(key, data[key]) | 14 | d.setVar(key, data[key]) |
| @@ -10,9 +16,11 @@ python read_subpackage_metadata () { | |||
| 10 | for pkg in d.getVar('PACKAGES', True).split(): | 16 | for pkg in d.getVar('PACKAGES', True).split(): |
| 11 | sdata = oe.packagedata.read_subpkgdata(pkg, d) | 17 | sdata = oe.packagedata.read_subpkgdata(pkg, d) |
| 12 | for key in sdata.keys(): | 18 | for key in sdata.keys(): |
| 13 | if key == "PN": | 19 | if key in vars: |
| 14 | if sdata[key] != pn: | 20 | if sdata[key] != vars[key]: |
| 15 | bb.fatal("Recipe %s is trying to create package %s which was already written by recipe %s. This will cause corruption, please resolve this and only provide the package from one recipe or the other or only build one of the recipes." % (pn, pkg, sdata[key])) | 21 | if key == "PN": |
| 22 | bb.fatal("Recipe %s is trying to create package %s which was already written by recipe %s. This will cause corruption, please resolve this and only provide the package from one recipe or the other or only build one of the recipes." % (vars[key], pkg, sdata[key])) | ||
| 23 | bb.fatal("Recipe %s is trying to change %s from '%s' to '%s'. This will cause do_package_write_* failures since the incorrect data will be used and they will be unable to find the right workdir." % (vars["PN"], key, vars[key], sdata[key])) | ||
| 16 | continue | 24 | continue |
| 17 | d.setVar(key, sdata[key]) | 25 | d.setVar(key, sdata[key]) |
| 18 | } | 26 | } |
