diff options
-rw-r--r-- | NEWS | 1 | ||||
-rwxr-xr-x | bin/misc-functions.sh | 24 | ||||
-rw-r--r-- | pym/portage.py | 2 |
3 files changed, 26 insertions, 1 deletions
@@ -28,6 +28,7 @@ portage-2.1.2 file/mail. * New QA loglevel and matching eqawarn function * `ebuild foo test` now always runs src_test if available +* If DOC_SYMLINK_DIR is set portage installs symlinks to html documention there portage-2.1.1 ------------ diff --git a/bin/misc-functions.sh b/bin/misc-functions.sh index 198538d0c..554288621 100755 --- a/bin/misc-functions.sh +++ b/bin/misc-functions.sh @@ -17,6 +17,30 @@ shift $# source "${PORTAGE_BIN_PATH:-/usr/lib/portage/bin}/ebuild.sh" +install_symlink_html_docs() { + cd "${D}" || die "cd failed" + #symlink the html documentation (if DOC_SYMLINKS_DIR is set in make.conf) + if [ -n "${DOC_SYMLINKS_DIR}" ] ; then + local mydocdir docdir + for docdir in "${HTMLDOC_DIR:-does/not/exist}" "${PF}/html" "${PF}/HTML" "${P}/html" "${P}/HTML" ; do + if [ -d "usr/share/doc/${docdir}" ] ; then + mydocdir="/usr/share/doc/${docdir}" + fi + done + if [ -n "${mydocdir}" ] ; then + local mysympath + if [ -z "${SLOT}" -o "${SLOT}" = "0" ] ; then + mysympath="${DOC_SYMLINKS_DIR}/${CATEGORY}/${PN}" + else + mysympath="${DOC_SYMLINKS_DIR}/${CATEGORY}/${PN}-${SLOT}" + fi + einfo "Symlinking ${mysympath} to the HTML documentation" + dodir "${DOC_SYMLINKS_DIR}/${CATEGORY}" + dosym "${mydocdir}" "${mysympath}" + fi + fi +} + install_qa_check() { cd "${D}" || die "cd failed" prepall diff --git a/pym/portage.py b/pym/portage.py index 056a4c850..3f3e378ae 100644 --- a/pym/portage.py +++ b/pym/portage.py @@ -2841,7 +2841,7 @@ def spawnebuild(mydo,actionmap,mysettings,debug,alwaysdep=0,logfile=None): apply_secpass_permissions(fpath, uid=myuid, gid=mygid, mode=mystat.st_mode, stat_cached=mystat, follow_links=False) - mycommand = " ".join([MISC_SH_BINARY, "install_qa_check"]) + mycommand = " ".join([MISC_SH_BINARY, "install_qa_check", "install_symlink_html_docs"]) qa_retval = spawn(mycommand, mysettings, debug=debug, logfile=logfile, **kwargs) if qa_retval: writemsg("!!! install_qa_check failed; exiting.\n", |