From 12acb6bb00ba665571fcfbdb0ef4668ca0a98d5b Mon Sep 17 00:00:00 2001 From: Mark Hatle Date: Thu, 29 Nov 2012 20:53:29 -0600 Subject: package_deb: Dependencies with a ( or ) in them are invalid in debs Replace ( or ) with __. This allows RPM style dependencies to be satisfied in deb style packages. Signed-off-by: Mark Hatle Signed-off-by: Saul Wold --- meta/classes/package_deb.bbclass | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/meta/classes/package_deb.bbclass b/meta/classes/package_deb.bbclass index d273cb0f84..eed9b8ac3b 100644 --- a/meta/classes/package_deb.bbclass +++ b/meta/classes/package_deb.bbclass @@ -335,11 +335,21 @@ python do_package_deb () { mapping_rename_hook(localdata) def debian_cmp_remap(var): + # dpkg does not allow for '(' or ')' in a dependency name + # replace these instances with '__' and '__' + # # In debian '>' and '<' do not mean what it appears they mean # '<' = less or equal # '>' = greater or equal # adjust these to the '<<' and '>>' equivalents # + for dep in var: + if '(' in dep: + newdep = dep.replace('(', '__') + newdep = newdep.replace(')', '__') + if newdep != dep: + var[newdep] = var[dep] + del var[dep] for dep in var: for i, v in enumerate(var[dep]): if (v or "").startswith("< "): -- cgit v1.2.3