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.

(From OE-Core rev: 12acb6bb00ba665571fcfbdb0ef4668ca0a98d5b)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Mark Hatle 2012-11-29 20:53:29 -06:00 committed by Richard Purdie
parent 2f5da1bc42
commit ca36d34c2e
1 changed files with 10 additions and 0 deletions

View File

@ -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("< "):