| # Copyright 1999-2015 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Id$ |
| |
| EAPI="5" |
| PYTHON_COMPAT=( python2_7 ) |
| |
| inherit distutils-r1 |
| |
| DESCRIPTION="Python Documentation Utilities" |
| HOMEPAGE="http://docutils.sourceforge.net/ https://pypi.python.org/pypi/docutils" |
| SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" |
| SRC_URI+=" glep? ( mirror://gentoo/glep-0.4-r1.tbz2 )" |
| |
| LICENSE="BSD-2 GPL-3 public-domain" |
| SLOT="0" |
| KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~amd64-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" |
| IUSE="glep" |
| |
| RDEPEND="dev-python/pygments[${PYTHON_USEDEP}]" |
| DEPEND="${RDEPEND}" |
| |
| GLEP_SRC="${WORKDIR}/glep-0.4-r1" |
| |
| python_prepare_all() { |
| # It's easier to move them around now. |
| # TODO: add python_newmodule? |
| if use glep; then |
| mkdir "${GLEP_SRC}"/{read,trans} || die |
| mv "${GLEP_SRC}"/{glepread,read/glep}.py || die |
| mv "${GLEP_SRC}"/{glepstrans,trans/gleps}.py || die |
| fi |
| |
| distutils-r1_python_prepare_all |
| } |
| |
| python_compile_all() { |
| # Generate html docs from reStructured text sources. |
| |
| # Place html4css1.css in base directory to ensure that the generated reference to it is correct. |
| cp docutils/writers/html4css1/html4css1.css . || die |
| |
| cd tools || die |
| "${PYTHON}" buildhtml.py --input-encoding=utf-8 \ |
| --stylesheet-path=../html4css1.css --traceback ../docs || die |
| } |
| |
| python_test() { |
| local tests=test |
| [[ ${EPYTHON} == python3* ]] && tests=test3 |
| |
| cp -r -l ${tests} "${BUILD_DIR}"/test || die |
| ln -s "${S}"/docs "${BUILD_DIR}"/ || die |
| "${PYTHON}" "${BUILD_DIR}"/test/alltests.py || die "Tests fail with ${EPYTHON}" |
| } |
| |
| python_install() { |
| distutils-r1_python_install |
| |
| # Install tools. |
| python_doscript tools/{buildhtml,quicktest}.py |
| |
| # Install Gentoo GLEP tools. |
| if use glep; then |
| python_doscript "${GLEP_SRC}"/glep.py |
| |
| python_moduleinto docutils/readers |
| python_domodule "${GLEP_SRC}"/read/glep.py |
| python_moduleinto docutils/transforms |
| python_domodule "${GLEP_SRC}"/trans/gleps.py |
| python_moduleinto docutils/writers |
| python_domodule "${GLEP_SRC}"/glep_html |
| fi |
| } |
| |
| install_txt_doc() { |
| local doc="${1}" |
| local dir="txt/$(dirname ${doc})" |
| docinto "${dir}" |
| dodoc "${doc}" |
| } |
| |
| python_install_all() { |
| local DOCS=( *.txt ) |
| local HTML_DOCS=( docs tools docutils/writers/html4css1/html4css1.css ) |
| |
| distutils-r1_python_install_all |
| |
| local doc |
| while IFS= read -r -d '' doc; do |
| install_txt_doc "${doc}" |
| done < <(find docs tools -name '*.txt' -print0) |
| } |