summaryrefslogtreecommitdiffstats
path: root/pym/_emerge
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-06-29 02:18:21 -0700
committerZac Medico <zmedico@gentoo.org>2011-06-29 02:18:21 -0700
commit31c9c68d7e96070166fe385141400fa3bcb5950e (patch)
treed36257a025b6afc9dc0a6d79febbf31d2d7a3822 /pym/_emerge
parentf23816d7e520bf1f27eb2778d0129e9ad9d576e4 (diff)
downloadportage-31c9c68d7e96070166fe385141400fa3bcb5950e.tar.gz
portage-31c9c68d7e96070166fe385141400fa3bcb5950e.tar.bz2
portage-31c9c68d7e96070166fe385141400fa3bcb5950e.zip
Detect/create missing soname symlinks for libs.
This will allow us to safely use the ldconfig -X option for all ldconfig calls, an thereby avoid having ldconfig override our own soname symlink policy which allows preserve-libs to work correctly when libraries are downgraded as discussed in bug 373341.
Diffstat (limited to 'pym/_emerge')
-rw-r--r--pym/_emerge/EbuildPhase.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/pym/_emerge/EbuildPhase.py b/pym/_emerge/EbuildPhase.py
index 306932f42..954c0334c 100644
--- a/pym/_emerge/EbuildPhase.py
+++ b/pym/_emerge/EbuildPhase.py
@@ -18,6 +18,7 @@ portage.proxy.lazyimport.lazyimport(globals(),
'portage.package.ebuild.doebuild:_check_build_log,' + \
'_post_phase_cmds,_post_phase_userpriv_perms,' + \
'_post_src_install_chost_fix,' + \
+ '_post_src_install_soname_symlinks,' + \
'_post_src_install_uid_fix,_postinst_bsdflags,' + \
'_preinst_bsdflags'
)
@@ -254,6 +255,15 @@ class EbuildPhase(CompositeTask):
noiselevel=-1)
self._die_hooks()
return
+
+ if self.phase == "install":
+ out = portage.StringIO()
+ _post_src_install_soname_symlinks(self.settings, out)
+ msg = _unicode_decode(out.getvalue(),
+ encoding=_encodings['content'], errors='replace')
+ if msg:
+ self.scheduler.output(msg, log_path=log_path)
+
self._current_task = None
self.wait()
return