Index: cnf/make.conf =================================================================== --- cnf/make.conf (revision 7381) +++ cnf/make.conf (revision 7382) @@ -262,6 +262,11 @@ # 'distlocks' enables distfiles locking using fcntl or hardlinks. This # is enabled by default. Tools exist to help clean the locks # after crashes: /usr/lib/portage/bin/clean_locks. +# 'installsources' +# Install source code into /usr/src/debug/${CATEGORY}/${PF} +# (also see 'splitdebug'). This feature works only if debugedit +# is installed and CFLAGS is set to include debug information +# (such as with the -ggdb flag). # 'test' causes ebuilds to perform testing phases if they are capable # of it. Some packages support this automatically via makefiles. # 'metadata-transfer' @@ -275,6 +280,10 @@ # 'parallel-fetch' # do fetching in parallel to compilation # 'sandbox' enables sandboxing when running emerge and ebuild. +# 'splitdebug' Prior to stripping ELF etdyn and etexec files, the debugging +# info is stored for later use by various debuggers. This +# feature is disabled by 'nostrip'. For installation of source +# code, see 'installsources'. # 'strict' causes portage to react strongly to conditions that are # potentially dangerous, like missing/incorrect Manifest files. # 'stricter' causes portage to react strongly to conditions that may Index: bin/prepstrip =================================================================== --- bin/prepstrip (revision 7381) +++ bin/prepstrip (revision 7382) @@ -25,6 +25,11 @@ export SAFE_STRIP_FLAGS="--strip-unneeded" export PORTAGE_STRIP_FLAGS=${PORTAGE_STRIP_FLAGS-${SAFE_STRIP_FLAGS} -R .comment} +if hasq installsources ${FEATURES} && ! type -P debugedit >/dev/null ; then + ewarn "FEATURES=installsources is enabled but the debugedit binary could not" + ewarn "be found. This feature will not work unless debugedit is installed!" +fi + save_elf_sources() { hasq installsources ${FEATURES} || return 0 type -P debugedit >/dev/null || return 0