From 6fa3480d33e92321c77eee8d7a1f4f47f753ca7a Mon Sep 17 00:00:00 2001 From: Ulrich Mueller Date: Fri, 3 Sep 2010 19:33:41 +0200 Subject: [PATCH] Don't regenerate GNU Info if the dir contains a .keepinfodir file, bug 257260. --- bin/ebuild-helpers/prepinfo | 2 +- pym/_emerge/main.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/bin/ebuild-helpers/prepinfo b/bin/ebuild-helpers/prepinfo index fa37e5e..bf2bfda 100755 --- a/bin/ebuild-helpers/prepinfo +++ b/bin/ebuild-helpers/prepinfo @@ -24,7 +24,7 @@ if [[ ! -d ${D}${infodir} ]] ; then fi find "${D}${infodir}" -type d -print0 | while read -d $'\0' x ; do - rm -f "${x}"/dir{,.info}{,.gz,.bz2} + [[ -e ${x}/.keepinfodir ]] || rm -f "${x}"/dir{,.info}{,.gz,.bz2} done hasq "${EAPI}" 0 1 2 3 || exit 0 diff --git a/pym/_emerge/main.py b/pym/_emerge/main.py index 4550726..4247693 100644 --- a/pym/_emerge/main.py +++ b/pym/_emerge/main.py @@ -107,7 +107,8 @@ def chk_updated_info_files(root, infodirs, prev_mtimes, retval): if z=='': continue inforoot=normpath(root+z) - if os.path.isdir(inforoot): + keep_file=os.path.join(inforoot, ".keepinfodir") + if os.path.isdir(inforoot) and not os.path.exists(keep_file): infomtime = os.stat(inforoot)[stat.ST_MTIME] if inforoot not in prev_mtimes or \ prev_mtimes[inforoot] != infomtime: -- 1.7.2.2