From 61a07b398daf65f210933fef08d7697bab56c97e Mon Sep 17 00:00:00 2001 From: Eli Schwartz Date: Wed, 14 Feb 2024 18:46:25 -0500 Subject: dev-libs/mathjax: include USE=docs as part of the package (3.x) Do not use a separated app-docs/mathjax-docs. It is impossible to get correct: the symlink is generated using best_version, which applies at build time but doesn't match the version at runtime, so having an -r1 breaks the package. It also wasn't implemented correctly even if it could be gotten correct, because the docs package is a build time dependency, not a runtime one. To cap it off, this was introduced as a side effect of updating the package to 3.x, in an attempt to solve the broken symlink in the 2.x package. But it never referenced bug 867370 in the commit message. While we are at it, fix a flaw in the code merged from mathjax-docs, which didn't implement python_check_deps. Fixes: 46560543c9d48506feb83de473a7b0bd0298ae83 Bug: https://bugs.gentoo.org/837722 Closes: https://bugs.gentoo.org/867370 Signed-off-by: Eli Schwartz Signed-off-by: Sam James --- dev-libs/mathjax/Manifest | 1 + dev-libs/mathjax/mathjax-3.2.2-r2.ebuild | 53 +++++++++++++++++++++++--------- 2 files changed, 39 insertions(+), 15 deletions(-) (limited to 'dev-libs/mathjax') diff --git a/dev-libs/mathjax/Manifest b/dev-libs/mathjax/Manifest index ee5cd6bb3f8e..8779b8b2d315 100644 --- a/dev-libs/mathjax/Manifest +++ b/dev-libs/mathjax/Manifest @@ -1,3 +1,4 @@ DIST mathjax-2.7.7.tar.gz 25347766 BLAKE2B c1f11bc854c95888d7f04ee627094a2e297e7554b0380dab30c08e2c4405495df611b440da0efd1e6456150513e07fa4ef90808d2332f9fb83785c118228de18 SHA512 471bd22475827a13d79de7d335f3e51ace06dfc04f575e8829b4505f428949f1dbe58798635cb434ed02ae0cd3fd8d1d577196b4961365fbcb399cc075d3284f DIST mathjax-3.2.2.tar.gz 6191341 BLAKE2B 4884ad28ede1d3d6f6647e04c8a69185a53715db673d42935ea9ff3ea1756e0e478b1f19345a35902d2e5c01a312272a2fe96dd36871cd8c4f266bcf4fb56c72 SHA512 4dc80c9e24593c1fcf08f38bad5251025f1de364d5cf24dd2f4cee0d78917dd11187f6132b67a17ff190d0a1862b83eb6c6edf28f91e8e84e50cdf76537f6b20 DIST mathjax-docs-2.7.7.tar.gz 233452 BLAKE2B 280db6c794471d369a17161ad859dc73ddf1494af35114b69356aae41ea52d771f92b0b85ba82df8ed542039af152938f5fda71d752da4410ab183fe6a24ab81 SHA512 25fa97294ae153298d45b449d995c0402c481c6425ea4ebb38dcc509df741aed02d5469a520c8b793b8135b4140a6d1ad6688a42e3cb26004cfd7fcb838c32e6 +DIST mathjax-docs-3.2.2.tar.gz 227724 BLAKE2B 1b2d25073e4f141f5c832f1139e6bcfbdb15c039b820f3662d6fb261faebedac8ea72fb324d76389c35cd28cd41556689501d8795d7a426d735d4eaf88eb61ee SHA512 94167e58deb4f899d5c49a6b1efec24f57fff7aa497a019e9f775e251927c698b7c5598b88087c2964b8cb7238b73152dea01e091b8afaeab8979b396270d429 diff --git a/dev-libs/mathjax/mathjax-3.2.2-r2.ebuild b/dev-libs/mathjax/mathjax-3.2.2-r2.ebuild index d207b55ab0dd..2948110ed70c 100644 --- a/dev-libs/mathjax/mathjax-3.2.2-r2.ebuild +++ b/dev-libs/mathjax/mathjax-3.2.2-r2.ebuild @@ -3,41 +3,64 @@ EAPI=8 -inherit vcs-clean +PYTHON_COMPAT=( python3_{10..12} pypy3 ) +inherit python-any-r1 vcs-clean + +# MathJax-docs doesn't have releases, so this is the commit that was +# current when mathjax-${PV} was released. +DOCS_COMMIT="c4a733d6d0ced4242a4df1c46137d4be6b3aaaee" DESCRIPTION="JavaScript display engine for LaTeX, MathML and AsciiMath" HOMEPAGE="https://www.mathjax.org/" -SRC_URI="https://github.com/mathjax/MathJax/archive/${PV}.tar.gz -> ${P}.tar.gz" +SRC_URI=" + https://github.com/mathjax/MathJax/archive/${PV}.tar.gz -> ${P}.tar.gz + doc? ( https://github.com/mathjax/MathJax-docs/archive/${DOCS_COMMIT}.tar.gz -> ${PN}-docs-${PV}.tar.gz ) +" S="${WORKDIR}/MathJax-${PV}" +DOCS_S="${WORKDIR}/MathJax-docs-${DOCS_COMMIT}" LICENSE="Apache-2.0" # Some applications need to know which mathjax version they built against. SLOT="0/${PV}" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos" IUSE="doc" -RDEPEND="doc? ( ~app-doc/mathjax-docs-${PV} )" +BDEPEND=" + doc? ( + $(python_gen_any_dep ' + dev-python/sphinx[${PYTHON_USEDEP}] + dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}] + ') + ) +" +RDEPEND="!app-doc/mathjax-docs" + +python_check_deps() { + python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]" && + python_has_version "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]" +} + +pkg_setup() { + if use doc; then + python-any-r1_pkg_setup + fi +} src_prepare() { default egit_clean } +src_compile() { + if use doc; then + build_sphinx "${DOCS_S}" + fi +} + src_install() { local DOCS=( CONTRIBUTING.md README.md ) default - if use doc; then - # We need best_version to determine the right revision for - # app-doc/mathjax-docs. - local docsPF=$(best_version app-doc/mathjax-docs) - - # Strip the (known) category from the best_version output. - docsPF=${docsPF#app-doc/} - - dosym "../${docsPF}/html" "/usr/share/doc/${PF}/html" - fi - insinto "/usr/share/${PN}" # Start the install beneath the "es5" directory for compatibility with -- cgit v1.2.3-65-gdbad