From: Mike Frysinger Date: Fri, 27 Jan 2006 04:57:55 +0000 (-0000) Subject: touchup if logic X-Git-Tag: v2.1_pre4~5 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=4db057c77578d6f17a2480ee4567b7b4914aee88;p=portage.git touchup if logic svn path=/main/trunk/; revision=2591 --- diff --git a/pym/portage.py b/pym/portage.py index 44e4b9260..5c00d37c6 100644 --- a/pym/portage.py +++ b/pym/portage.py @@ -654,9 +654,10 @@ def env_update(makelinks=1): mtimedb["ldpath"][x]=newldpathtime ld_cache_update=True - # ldconfig has very different behaviour between FreeBSD and Linux - if ostype=="Linux" or ostype.lower().endswith("gnu"): - if (ld_cache_update or makelinks): + # Only run ldconfig as needed + if (ld_cache_update or makelinks): + # ldconfig has very different behaviour between FreeBSD and Linux + if ostype=="Linux" or ostype.lower().endswith("gnu"): # We can't update links if we haven't cleaned other versions first, as # an older package installed ON TOP of a newer version will cause ldconfig # to overwrite the symlinks we just made. -X means no links. After 'clean' @@ -666,8 +667,7 @@ def env_update(makelinks=1): commands.getstatusoutput("cd / ; /sbin/ldconfig -r "+root) else: commands.getstatusoutput("cd / ; /sbin/ldconfig -X -r "+root) - elif ostype in ("FreeBSD","DragonFly"): - if (ld_cache_update): + elif ostype in ("FreeBSD","DragonFly"): writemsg(">>> Regenerating "+str(root)+"var/run/ld-elf.so.hints...\n") commands.getstatusoutput("cd / ; /sbin/ldconfig -elf -i -f "+str(root)+"var/run/ld-elf.so.hints "+str(root)+"etc/ld.so.conf")