# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=setuptools PYTHON_COMPAT=( python3_{12..14} ) inherit distutils-r1 MY_P=antlr4-${PV} DESCRIPTION="Python 3 runtime for ANTLR" HOMEPAGE=" https://www.antlr.org/ https://github.com/antlr/antlr4/ https://pypi.org/project/antlr4-python3-runtime/ " SRC_URI=" https://github.com/antlr/antlr4/archive/${PV}.tar.gz -> ${MY_P}.gh.tar.gz " S="${WORKDIR}/${MY_P}/runtime/Python3" LICENSE="BSD" SLOT="0" KEYWORDS="~amd64" # Older 4.11.0 kept alongside ::gentoo's 4.13.2 because lm-eval's math # task does `assert version("antlr4-python3-runtime").startswith("4.11")` # at task-load (lm_eval/tasks/minerva_math/utils.py); upstream # math_verify[antlr4_11_0] / latex2sympy2_extended[antlr4_11_0] also pin # to 4.11.0 exactly. Consumers in ::gentoo (moto, coq) leave the version # unpinned (verified 2026-05-11), so taking the downgrade is structurally # safe across the dep graph. src_prepare() { # Same assertEquals/assertEqual fix as ::gentoo's 4.13.2 ebuild, # upstream PR https://github.com/antlr/antlr4/pull/4593. Re-verified # at 4.11.0 on 2026-05-11: tests/TestIntervalSet.py contains 7 # assertEquals usages at this tag and the post-sed test phase runs # 16 tests with no failures. sed -i -e 's:assertEquals:assertEqual:' tests/TestIntervalSet.py || die distutils-r1_src_prepare } python_test() { "${EPYTHON}" tests/run.py -v || die "Tests failed with ${EPYTHON}" }