commit: 9f8bd86ea87a3fa7b4634a8eeb374a30876f184a Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Wed Jul 20 19:34:37 2022 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Wed Jul 20 19:34:37 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9f8bd86e
dev-util/pkgdev: provide pre-generated man pages Signed-off-by: Sam James <sam <AT> gentoo.org> dev-util/pkgdev/Manifest | 1 + .../{pkgdev-9999.ebuild => pkgdev-0.2.1-r2.ebuild} | 36 +++++++++++++++++++--- dev-util/pkgdev/pkgdev-9999.ebuild | 36 +++++++++++++++++++--- 3 files changed, 63 insertions(+), 10 deletions(-) diff --git a/dev-util/pkgdev/Manifest b/dev-util/pkgdev/Manifest index 9b5323837292..01d0350811ea 100644 --- a/dev-util/pkgdev/Manifest +++ b/dev-util/pkgdev/Manifest @@ -1 +1,2 @@ +DIST pkgdev-0.2.1-docs.tar.xz 4156 BLAKE2B d0cae24586dd24d03ae0378205ebf164957a15a85fec06d4a44d24c448aa22732aec7ae4a98b630b4943949f8108b146e1997379f2c23a660fec325f10e5eddb SHA512 0e4d2906ff3ded58884b419a2c3bc771f70051d1c06fd500f0908e50512b49505c19057c4e63a04d81e418193d50c210672ff4dad3c06693e2e6e966c68dac45 DIST pkgdev-0.2.1.tar.gz 66455 BLAKE2B 6f89b1601813adcb1263a044a096d187d7fa926f116a09dc2b1cec083f8d82da54ae00577c36d64ece5733d8952f8dc5f4dff94aeb695e851f340a30f04b203e SHA512 8277f74f3d9902da295c5436a46302627bdc1cb2a63f29b0603bf9bfa2c8bb812b26f12a54630cbbcba1e2bbac7352146f6ab59fc04cd8b89b46df1fe7c9f8dd diff --git a/dev-util/pkgdev/pkgdev-9999.ebuild b/dev-util/pkgdev/pkgdev-0.2.1-r2.ebuild similarity index 57% copy from dev-util/pkgdev/pkgdev-9999.ebuild copy to dev-util/pkgdev/pkgdev-0.2.1-r2.ebuild index 7453376035da..f7d2c6919798 100644 --- a/dev-util/pkgdev/pkgdev-9999.ebuild +++ b/dev-util/pkgdev/pkgdev-0.2.1-r2.ebuild @@ -3,15 +3,31 @@ EAPI=8 +# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-pkgdev-docs +# Set to 1 if prebuilt, 0 if not +# (the construct below is to allow overriding from env for script) +PKGDEV_DOCS_PREBUILT=${PKGDEV_DOCS_PREBUILT:-1} +PKGDEV_DOCS_PREBUILT_DEV=sam +PKGDEV_DOCS_VERSION=$(ver_cut 1-3) +# Default to generating docs (inc. man pages) if no prebuilt; overridden later +PKGDEV_DOCS_USEFLAG="+doc" + PYTHON_COMPAT=( python3_{8..10} ) DISTUTILS_IN_SOURCE_BUILD=1 inherit distutils-r1 if [[ ${PV} == *9999 ]] ; then + PKGDEV_DOCS_PREBUILT=0 + EGIT_REPO_URI="https://github.com/pkgcore/pkgdev.git" inherit git-r3 else SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + + if [[ ${PKGDEV_DOCS_PREBUILT} == 1 ]] ; then + SRC_URI+=" !doc? ( https://dev.gentoo.org/~${PKGDEV_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${PKGDEV_DOCS_VERSION}-docs.tar.xz )" + fi + KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos" fi @@ -21,6 +37,10 @@ HOMEPAGE="https://github.com/pkgcore/pkgdev" LICENSE="BSD MIT" SLOT="0" +[[ ${PKGDEV_DOCS_PREBUILT} == 1 ]] && PKGDEV_DOCS_USEFLAG="doc" + +IUSE="${PKGDEV_DOCS_USEFLAG}" + if [[ ${PV} == *9999 ]] ; then # https://github.com/pkgcore/pkgdev/blob/main/requirements/dev.txt RDEPEND=" @@ -41,14 +61,14 @@ fi BDEPEND+="test? ( dev-python/pytest )" RDEPEND+="dev-vcs/git" +PATCHES=( + "${FILESDIR}"/${P}-fix-signoff-example.patch +) + distutils_enable_sphinx doc distutils_enable_tests setup.py python_compile_all() { - # We'll generate man pages ourselves - # Revisit when a release is made - # to pregenerate them, making USE=doc - # for generating the real HTML docs only. use doc && emake -C doc man # HTML pages only @@ -56,6 +76,12 @@ python_compile_all() { } python_install_all() { - use doc && doman doc/_build/man/* + # If USE=doc, there'll be newly generated docs which we install instead. + if use doc ; then + doman doc/_build/man/* + elif ! use doc && [[ ${PKGDEV_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${PN}-${PKGDEV_DOCS_VERSION}-docs/man/*.[0-8] + fi + distutils-r1_python_install_all } diff --git a/dev-util/pkgdev/pkgdev-9999.ebuild b/dev-util/pkgdev/pkgdev-9999.ebuild index 7453376035da..f7d2c6919798 100644 --- a/dev-util/pkgdev/pkgdev-9999.ebuild +++ b/dev-util/pkgdev/pkgdev-9999.ebuild @@ -3,15 +3,31 @@ EAPI=8 +# Generate using https://github.com/thesamesam/sam-gentoo-scripts/blob/main/niche/generate-pkgdev-docs +# Set to 1 if prebuilt, 0 if not +# (the construct below is to allow overriding from env for script) +PKGDEV_DOCS_PREBUILT=${PKGDEV_DOCS_PREBUILT:-1} +PKGDEV_DOCS_PREBUILT_DEV=sam +PKGDEV_DOCS_VERSION=$(ver_cut 1-3) +# Default to generating docs (inc. man pages) if no prebuilt; overridden later +PKGDEV_DOCS_USEFLAG="+doc" + PYTHON_COMPAT=( python3_{8..10} ) DISTUTILS_IN_SOURCE_BUILD=1 inherit distutils-r1 if [[ ${PV} == *9999 ]] ; then + PKGDEV_DOCS_PREBUILT=0 + EGIT_REPO_URI="https://github.com/pkgcore/pkgdev.git" inherit git-r3 else SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + + if [[ ${PKGDEV_DOCS_PREBUILT} == 1 ]] ; then + SRC_URI+=" !doc? ( https://dev.gentoo.org/~${PKGDEV_DOCS_PREBUILT_DEV}/distfiles/${CATEGORY}/${PN}/${PN}-${PKGDEV_DOCS_VERSION}-docs.tar.xz )" + fi + KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos" fi @@ -21,6 +37,10 @@ HOMEPAGE="https://github.com/pkgcore/pkgdev" LICENSE="BSD MIT" SLOT="0" +[[ ${PKGDEV_DOCS_PREBUILT} == 1 ]] && PKGDEV_DOCS_USEFLAG="doc" + +IUSE="${PKGDEV_DOCS_USEFLAG}" + if [[ ${PV} == *9999 ]] ; then # https://github.com/pkgcore/pkgdev/blob/main/requirements/dev.txt RDEPEND=" @@ -41,14 +61,14 @@ fi BDEPEND+="test? ( dev-python/pytest )" RDEPEND+="dev-vcs/git" +PATCHES=( + "${FILESDIR}"/${P}-fix-signoff-example.patch +) + distutils_enable_sphinx doc distutils_enable_tests setup.py python_compile_all() { - # We'll generate man pages ourselves - # Revisit when a release is made - # to pregenerate them, making USE=doc - # for generating the real HTML docs only. use doc && emake -C doc man # HTML pages only @@ -56,6 +76,12 @@ python_compile_all() { } python_install_all() { - use doc && doman doc/_build/man/* + # If USE=doc, there'll be newly generated docs which we install instead. + if use doc ; then + doman doc/_build/man/* + elif ! use doc && [[ ${PKGDEV_DOCS_PREBUILT} == 1 ]] ; then + doman "${WORKDIR}"/${PN}-${PKGDEV_DOCS_VERSION}-docs/man/*.[0-8] + fi + distutils-r1_python_install_all }