aboutsummaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorAndrei Gherzan <andrei@gherzan.ro>2012-07-23 22:42:24 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-07-26 14:39:48 +0100
commit76ef414b8a017557cf5f3ad7b3ca8a324f7aad29 (patch)
tree358137e68078870fa04cb042af6ea60295ab1f1f /meta
parent72a7049526ee107005bd39c7bdd814ed71345829 (diff)
downloadopenembedded-core-contrib-76ef414b8a017557cf5f3ad7b3ca8a324f7aad29.tar.gz
package.bbclass: Create symlinks for packages with different packaged name
While generating license.manifest package information is searched in: filename=`ls ${TMPDIR}/pkgdata/*/runtime/${pkg}| head -1` This is ok as long as package name is the same as the package name after packaging. For example dbus is packaged as dbus-1. So, searching ls ${TMPDIR}/pkgdata/*/runtime/dbus-1 will fail because there is no file with this package name. Create a symlink to the pkgdata file in a runtime-reverse directory so that these reverse lookups are possible. Fixes [YOCTO #2638]. Signed-off-by: Andrei Gherzan <andrei@gherzan.ro> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta')
-rw-r--r--meta/classes/license.bbclass2
-rw-r--r--meta/classes/package.bbclass6
2 files changed, 6 insertions, 2 deletions
diff --git a/meta/classes/license.bbclass b/meta/classes/license.bbclass
index a2721ab0af..231b4a3ad1 100644
--- a/meta/classes/license.bbclass
+++ b/meta/classes/license.bbclass
@@ -86,7 +86,7 @@ license_create_manifest() {
# list of installed packages is broken for deb
for pkg in ${INSTALLED_PKGS}; do
# not the best way to do this but licenses are not arch dependant iirc
- filename=`ls ${TMPDIR}/pkgdata/*/runtime/${pkg}| head -1`
+ filename=`ls ${TMPDIR}/pkgdata/*/runtime-reverse/${pkg}| head -1`
pkged_pn="$(sed -n 's/^PN: //p' ${filename})"
pkged_lic="$(sed -n '/^LICENSE: /{ s/^LICENSE: //; s/[+|&()*]/ /g; s/ */ /g; p }' ${filename})"
pkged_pv="$(sed -n 's/^PV: //p' ${filename})"
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass
index fc834242da..ea199d33bd 100644
--- a/meta/classes/package.bbclass
+++ b/meta/classes/package.bbclass
@@ -1124,6 +1124,10 @@ python emit_pkgdata() {
sf.write('%s_%s: %s\n' % ('PKGSIZE', pkg, get_directory_size(pkgdest + "/%s" % pkg)))
sf.close()
+ # Symlinks needed for reverse lookups (from the final package name)
+ pkgval = d.getVar('PKG_%s' % (pkg), True)
+ subdata_sym = pkgdatadir + "/runtime-reverse/%s" % pkgval
+ oe.path.symlink("../runtime/%s" % pkg, subdata_sym, True)
allow_empty = d.getVar('ALLOW_EMPTY_%s' % pkg, True)
if not allow_empty:
@@ -1137,7 +1141,7 @@ python emit_pkgdata() {
bb.utils.unlockfile(lf)
}
-emit_pkgdata[dirs] = "${PKGDESTWORK}/runtime"
+emit_pkgdata[dirs] = "${PKGDESTWORK}/runtime ${PKGDESTWORK}/runtime-reverse"
ldconfig_postinst_fragment() {
if [ x"$D" = "x" ]; then