Move the code responsible for adding additional paths to INSTALL_MASK into portage.package.ebuild.config. --- bin/misc-functions.sh | 13 ------------- pym/portage/package/ebuild/config.py | 10 ++++++++++ 2 files changed, 10 insertions(+), 13 deletions(-)
diff --git a/bin/misc-functions.sh b/bin/misc-functions.sh index 58755a1..b42e1d6 100755 --- a/bin/misc-functions.sh +++ b/bin/misc-functions.sh @@ -314,20 +314,7 @@ preinst_mask() { # in there in case any tools were built with -pg in CFLAGS. cd "${T}" - # remove man pages, info pages, docs if requested - local f - for f in man info doc; do - if has no${f} $FEATURES; then - INSTALL_MASK="${INSTALL_MASK} /usr/share/${f}" - fi - done - install_mask "${ED}" "${INSTALL_MASK}" - - # remove share dir if unnessesary - if has nodoc $FEATURES || has noman $FEATURES || has noinfo $FEATURES; then - rmdir "${ED}usr/share" &> /dev/null - fi } preinst_sfperms() { diff --git a/pym/portage/package/ebuild/config.py b/pym/portage/package/ebuild/config.py index 45b7d08..fcc7ce5 100644 --- a/pym/portage/package/ebuild/config.py +++ b/pym/portage/package/ebuild/config.py @@ -1773,6 +1773,16 @@ class config(object): # setcpv triggers lazy instantiation of things like _use_manager. _eapi_cache.clear() + # Prepare the final value of INSTALL_MASK + install_mask = self["INSTALL_MASK"].split() + if 'nodoc' in self.features: + install_mask.append("/usr/share/doc") + if 'noinfo' in self.features: + install_mask.append("/usr/share/info") + if 'noman' in self.features: + install_mask.append("/usr/share/man") + self["INSTALL_MASK"] = ' '.join(install_mask) + def _grab_pkg_env(self, penv, container, protected_keys=None): if protected_keys is None: protected_keys = () -- 2.8.3