diff options
-rw-r--r-- | meta/classes/package_rpm.bbclass | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass index ac6ac2ca5..db379b4c9 100644 --- a/meta/classes/package_rpm.bbclass +++ b/meta/classes/package_rpm.bbclass @@ -46,7 +46,8 @@ python write_specfile() { del files[files.index(r)] except ValueError: pass - if not files: + + if not files and bb.data.getVar('ALLOW_EMPTY', d) != "1": from bb import note note("Not creating empty archive for %s-%s-%s" % (bb.data.getVar('PKG',d, 1), bb.data.getVar('PV', d, 1), bb.data.getVar('PR', d, 1))) return @@ -65,10 +66,10 @@ python write_specfile() { if out_vartranslate[var][0] == "%": continue val = bb.data.getVar(var, d, 1) - if var == "RDEPENDS": - val = val.split()[0] fd.write("%s\t: %s\n" % (out_vartranslate[var], val)) - rdepends = " ".join(bb.utils.explode_deps(bb.data.getVar('RDEPENDS', d, True))) + + bb.build.exec_func("mapping_rename_hook", d) + rdepends = " ".join(bb.utils.explode_deps(bb.data.getVar('RDEPENDS', d, True) or "")) if rdepends: fd.write("Requires: %s\n" % rdepends) fd.write("Summary\t: .\n") @@ -160,6 +161,9 @@ python do_package_rpm () { pkgoutdir = outdir bb.mkdirhier(pkgoutdir) bb.data.setVar('OUTSPECFILE', os.path.join(workdir, "%s.spec" % pkg), localdata) + # Save the value of RPMBUILD expanded into the new dictonary so any + # changes in the compoents that make up workdir don't break packaging + bb.data.setVar('RPMBUILD', bb.data.getVar("RPMBUILD", d, True), localdata) bb.build.exec_func('write_specfile', localdata) bb.utils.unlockfile(lf) } |