[oe-commits] Richard Purdie : update-alternatives: Fix absolute symlink handling

git at git.openembedded.org git at git.openembedded.org
Wed May 30 16:33:32 UTC 2012


Module: openembedded-core.git
Branch: master
Commit: ecea2fab2063a3c478a63e62ba0e80305674c5e0
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=ecea2fab2063a3c478a63e62ba0e80305674c5e0

Author: Richard Purdie <richard.purdie at linuxfoundation.org>
Date:   Wed May 30 12:53:39 2012 +0100

update-alternatives: Fix absolute symlink handling

After the class changes, absolute symlinks are not being handled correctly
by the class file. This adds handling for absolute symlinks to account for the
pkgdest directory, removing dangling symlink messages from recipes like bzip2.

Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

---

 meta/classes/update-alternatives.bbclass |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/meta/classes/update-alternatives.bbclass b/meta/classes/update-alternatives.bbclass
index fce1e84..9f2e59f 100644
--- a/meta/classes/update-alternatives.bbclass
+++ b/meta/classes/update-alternatives.bbclass
@@ -247,7 +247,11 @@ python perform_packagecopy_append () {
 		for alt_target in link_rename:
 			src = '%s/%s' % (pkgdest, alt_target)
 			dest = '%s/%s' % (pkgdest, link_rename[alt_target])
-			link_target = os.path.join(os.path.dirname(src), os.readlink(src))
+			link = os.readlink(src)
+			if os.path.isabs(link):
+				link_target = pkgdest + os.readlink(src)
+			else:
+				link_target = os.path.join(os.path.dirname(src), link)
 
 			if os.path.lexists(link_target):
 				# Ok, the link_target exists, we can rename





More information about the Openembedded-commits mailing list