From: Phil Blundell Date: Sat, 24 Jul 2004 14:44:46 +0000 (+0000) Subject: Merge bk://openembedded@openembedded.bkbits.net/packages X-Git-Tag: Release-2010-05/1~18067 X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=060467b6d840ef0c8133e2e73bed4a0fc9f6dbb1;p=openembedded.git Merge bk://openembedded@openembedded.bkbits.net/packages into workhouse.nexus.co.uk:/home/pb/oe/oe-packages 2004/07/24 15:44:18+01:00 nexus.co.uk!pb normalise symlink paths before trying to look them up. BKrev: 410275deNTlGqGjwld5OA2goFFuOJA --- diff --git a/classes/package.oeclass b/classes/package.oeclass index 96c58145d5..207269f80b 100644 --- a/classes/package.oeclass +++ b/classes/package.oeclass @@ -217,19 +217,25 @@ python populate_packages () { target = os.readlink(path) if target[0] != '/': target = os.path.join(root[len(inst_root):], target) - dangling_links[pkg].append(target) + dangling_links[pkg].append(os.path.normpath(target)) for pkg in packages.split(): + rdepends = explode_deps(oe.data.getVar('RDEPENDS_' + pkg, d, 1) or oe.data.getVar('RDEPENDS', d, 1) or "") for l in dangling_links[pkg]: + found = False oe.debug(1, "%s contains dangling link %s" % (pkg, l)) for p in packages.split(): for f in pkg_files[p]: if f == l: + found = True oe.debug(1, "target found in %s" % p) - rdepends = explode_deps(oe.data.getVar('RDEPENDS_' + pkg, d, 1) or oe.data.getVar('RDEPENDS', d, 1) or "") - rdepends.append(oe.data.getVar('PKG_' + p, d, 1) or p) - oe.data.setVar('RDEPENDS_' + pkg, " " + " ".join(rdepends), d) + dp = oe.data.getVar('PKG_' + p, d, 1) or p + if not dp in rdepends: + rdepends.append(dp) break + if found == False: + oe.note("%s contains dangling symlink to %s" % (pkg, l)) + oe.data.setVar('RDEPENDS_' + pkg, " " + " ".join(rdepends), d) def write_if_exists(f, pkg, var): def encode(str):