From: Denys Dmytriyenko Date: Sat, 19 Sep 2009 20:33:00 +0000 (+0000) Subject: package.bbclass: export subpackage individual version, if different from main X-Git-Tag: Release-2010-05/1~2129 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=035dab3a2edcb3698b44e64d44b6eecfbc0fb77c;p=openembedded.git package.bbclass: export subpackage individual version, if different from main Fixes the wrong versioned runtime dependency for shlib subpackages with own versions. Consider this: PACKAGES = "libfoo libbar" PV_libfoo = "1" PV_libbar = "2" PV = "3" That will generate libfoo_1 and libbar_2 packages, but version 3 will be exported in shlibs database, leading to the following versioned runtime dependencies: RDEPENDS: libfoo (>=3) libbar (>=3) This fixes the problem. Signed-off-by: Denys Dmytriyenko Acked-by: Koen Kooi --- diff --git a/classes/package.bbclass b/classes/package.bbclass index 0cba1260d8..046351a415 100644 --- a/classes/package.bbclass +++ b/classes/package.bbclass @@ -652,6 +652,10 @@ python package_do_shlibs() { needs_ldconfig = False bb.debug(2, "calculating shlib provides for %s" % pkg) + pkgver = bb.data.getVar('PV_' + pkg, d, 1) + if not pkgver: + pkgver = ver + needed[pkg] = [] sonames = list() top = os.path.join(pkgdest, pkg) @@ -696,7 +700,7 @@ python package_do_shlibs() { fd.close() package_stagefile(shlibs_file, d) fd = open(shver_file, 'w') - fd.write(ver + '\n') + fd.write(pkgver + '\n') fd.close() package_stagefile(shver_file, d) if needs_ldconfig and use_ldconfig: