summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2022-07-20 19:34:37 +0000
committerSam James <sam@gentoo.org>2022-07-20 19:34:37 +0000
commit9f8bd86ea87a3fa7b4634a8eeb374a30876f184a (patch)
tree70d64678fb74325a2d21550f7f6679dfc013e27e /dev-util/pkgdev
parentapp-emulation/qemu: disable pre-generated man pages for 9999 (diff)
downloadgentoo-9f8bd86ea87a3fa7b4634a8eeb374a30876f184a.tar.gz
gentoo-9f8bd86ea87a3fa7b4634a8eeb374a30876f184a.tar.bz2
gentoo-9f8bd86ea87a3fa7b4634a8eeb374a30876f184a.zip
dev-util/pkgdev: provide pre-generated man pages
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-util/pkgdev')
-rw-r--r--dev-util/pkgdev/Manifest1
-rw-r--r--dev-util/pkgdev/pkgdev-0.2.1-r2.ebuild87
-rw-r--r--dev-util/pkgdev/pkgdev-9999.ebuild36
3 files changed, 119 insertions, 5 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-0.2.1-r2.ebuild b/dev-util/pkgdev/pkgdev-0.2.1-r2.ebuild
new file mode 100644
index 000000000000..f7d2c6919798
--- /dev/null
+++ b/dev-util/pkgdev/pkgdev-0.2.1-r2.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+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
+
+DESCRIPTION="Collection of tools for Gentoo development"
+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="
+ ~dev-python/snakeoil-9999[${PYTHON_USEDEP}]
+ ~dev-util/pkgcheck-9999[${PYTHON_USEDEP}]
+ ~sys-apps/pkgcore-9999[${PYTHON_USEDEP}]
+ "
+else
+ # https://github.com/pkgcore/pkgdev/blob/main/requirements/install.txt
+ RDEPEND="
+ >=dev-python/snakeoil-0.9.6[${PYTHON_USEDEP}]
+ >=dev-util/pkgcheck-0.10.0[${PYTHON_USEDEP}]
+ >=sys-apps/pkgcore-0.12.0[${PYTHON_USEDEP}]
+ "
+fi
+
+# Uses pytest but we want to use the setup.py runner to get generated modules
+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() {
+ use doc && emake -C doc man
+
+ # HTML pages only
+ sphinx_compile_all
+}
+
+python_install_all() {
+ # 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
}