From 34bc90fa5aea1bdf73ffee5a4d98e35053386d1a Mon Sep 17 00:00:00 2001 From: Alfredo Tupone Date: Mon, 5 Jan 2026 11:35:05 +0100 Subject: [PATCH] dev-ada/templates-parser: add 26.0.0 Signed-off-by: Alfredo Tupone --- dev-ada/templates-parser/Manifest | 1 + .../templates-parser-26.0.0.ebuild | 141 ++++++++++++++++++ 2 files changed, 142 insertions(+) create mode 100644 dev-ada/templates-parser/templates-parser-26.0.0.ebuild diff --git a/dev-ada/templates-parser/Manifest b/dev-ada/templates-parser/Manifest index 803201883a08a..23cdc6bb4a132 100644 --- a/dev-ada/templates-parser/Manifest +++ b/dev-ada/templates-parser/Manifest @@ -1,2 +1,3 @@ DIST templates-parser-24.0.0.tar.gz 226649 BLAKE2B 6e84721cbe28164e9c5f683906ff0b360a7dca82a2b91a7fe0253546c6d617d82ff2bb385133435e48c1588821daa3171eee86aeb0de27a55f38cad372f858db SHA512 3661ccb4be3bc3a6a81bbf04244f3b943c87655cad25370e857bb09d24b86ee801388a4a71d63f9135d5f069c54bc184cef4a8a25bcc90d0add8a15c67f8c374 DIST templates-parser-25.0.0.tar.gz 259459 BLAKE2B b0ba2ad87cbd9cb34773cce54160a30e59b566ec72ce773525ba4cbb33be659dd83f23846bcb6d6fd88726c7cfae52e2993c1ced052f078bd589b14cf73cef55 SHA512 902e41f713dd8446e08ba6f180b4c88c35d37da3476d0c925a4b6a05fb5038ff9ec1b0daa0443a55e82f902867b774efb4e28c0b7d8ec59fb15d050ee523ee87 +DIST templates-parser-26.0.0.tar.gz 262016 BLAKE2B 897b69fad794b416d7942875a6a734288699b4f27653838a6f153aecc6f8aa65bc8686c889ded96ddc2bec59d33ea6a1227cf385f66544a9d6e8789b2ea9dccd SHA512 44c97ed71c681af5e042ceb4b14685fc94772b23845569ba8b6a9471714448c40f26994430e6b7c97d9316c4c540307ea004e57c6e715d05fd562da56b37b279 diff --git a/dev-ada/templates-parser/templates-parser-26.0.0.ebuild b/dev-ada/templates-parser/templates-parser-26.0.0.ebuild new file mode 100644 index 0000000000000..ad03f12c9f348 --- /dev/null +++ b/dev-ada/templates-parser/templates-parser-26.0.0.ebuild @@ -0,0 +1,141 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +ADA_COMPAT=( gcc_{12..16} ) +PYTHON_COMPAT=( python3_{11..13} ) +inherit ada python-any-r1 multiprocessing + +DESCRIPTION="A template engine" +HOMEPAGE="https://github.com/AdaCore/templates-parser" +SRC_URI="https://github.com/AdaCore/${PN}/archive/refs/tags/v${PV}.tar.gz + -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="doc man static-libs static-pic test" +RESTRICT="!test? ( test )" + +RDEPEND="${ADA_DEPS} + dev-ada/xmlada[${ADA_USEDEP},shared,static-libs?,static-pic?] +" +DEPEND="${RDEPEND} + dev-ada/gprbuild[${ADA_USEDEP}]" +BDEPEND="doc? ( + dev-tex/latexmk + dev-texlive/texlive-latexextra +) +man? ( + dev-python/sphinx + dev-python/sphinx-rtd-theme +) +test? ( + ${PYTHON_DEPS} + $(python_gen_any_dep ' + dev-ada/e3-testsuite[${PYTHON_USEDEP}] + ') +)" + +REQUIRED_USE=" + ${ADA_REQUIRED_USE} + doc? ( man ) + test? ( static-libs ) +" + +python_check_deps() { + use test || return 0 + python_has_version "dev-ada/e3-testsuite[${PYTHON_USEDEP}]" +} + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +src_prepare() { + # Drop tests that require TP_XMLADA + rm -r regtests/tests/010{7,9}* || die + default +} + +src_configure() { + cp config/tp_xmlada_dummy.gpr tp_xmlada.gpr + echo "PRJ_TARGET = Linux" > makefile.setup + echo "VERSION = $(ver_cut 1-2)" >> makefile.setup +} + +src_compile() { + build() { + gprbuild -p -v -XPRJ_BUILD=Release -XPRJ_TARGET=Linux \ + -XPROCESSORS=$(makeopts_jobs) \ + -XVERSION=$(ver_cut 1-2) -XLIBRARY_TYPE=$1 -XXMLADA_BUILD=$1 \ + --subdirs=${CHOST}/release/$1 \ + -Ptemplates_parser -largs ${LDFLAGS} -cargs ${ADAFLAGS} \ + || die "gprbuild failed" + } + build relocatable + use static-libs && build static + use static-pic && build static-pic + gprbuild -p -v -XPRJ_BUILD=Release -XPRJ_TARGET=Linux \ + -XPROCESSORS=$(makeopts_jobs) \ + -XVERSION=$(ver_cut 1-2) -XLIBRARY_TYPE=relocatable \ + -XXMLADA_BUILD=relocatable \ + --subdirs=${CHOST}/release/relocatable -Ptools/tools \ + -largs ${LDFLAGS} -cargs ${ADAFLAGS} \ + || die "gprbuild failed" + use man && emake -C docs man GPROPTS=-v + use doc && emake -C docs html epub latexpdf GPROPTS=-v + if use test; then + cd regtests + gprbuild -p -v -XPRJ_BUILD=Release -XPRJ_TARGET=Linux \ + -XPROCESSORS=$(makeopts_jobs) \ + -XVERSION=$(ver_cut 1-2) -XLIBRARY_TYPE=relocatable \ + --subdirs=${CHOST}/release/relocatable \ + -Pregtests -largs ${LDFLAGS} -cargs ${ADAFLAGS} \ + || die "gprbuild failed" + cd .. + fi +} + +src_install() { + build() { + gprinstall -XPRJ_BUILD=Release -XPRJ_TARGET=Linux \ + -XTP_XMLADA=Disabled -XPROCESSORS=$(makeopts_jobs) \ + -XVERSION=$(ver_cut 1-2) -XLIBRARY_TYPE=$1 -XXMLADA_BUILD=$1 \ + -p -f --prefix="${D}"/usr --build-var=LIBRARY_TYPE \ + --build-var=TEMPLATES_PARSER_BUILD --subdirs=${CHOST}/release/$1 \ + --build-name=$1 -Ptemplates_parser \ + || die "gprinstall failed" + } + build relocatable + use static-libs && build static + use static-pic && build static-pic + gprinstall -XPRJ_BUILD=Release -XPRJ_TARGET=Linux -XTP_XMLADA=Disabled \ + -XPROCESSORS=$(makeopts_jobs) -XVERSION=$(ver_cut 1-2) \ + -XLIBRARY_TYPE=relocatable -XXMLADA_BUILD=relocatable -p -f \ + --prefix="${D}"/usr \ + --build-var=LIBRARY_TYPE --build-var=TEMPLATES_PARSER_BUILD \ + --mode=usage --subdirs=${CHOST}/release/relocatable \ + --install-name=templates_parser -Ptools/tools \ + || die "gprinstall failed" + DOCS="README.md" + if use doc; then + mv "${D}"/usr/share/doc/templates_parser "${D}"/usr/share/doc/"${PF}" || die + DOCS+=" docs/build/epub/Templates_ParserTemplatesEngine.epub" + fi + einstalldocs + use man && doman docs/build/man/templates_parser.1 + rm -r "${D}"/usr/share/gpr/manifests +} + +src_test() { + cd regtests + ADA_PROJECT_PATH="${S}" \ + PRJ_TARGET=Linux \ + PRJ_BUILD=Release \ + TP_XMLADA=Disabled \ + PATH=".:${S}/.build/rbin/${CHOST}/release/relocatable:${S}/.build/bin/${CHOST}/release/relocatable:${PATH}" \ + ./testsuite.py --jobs=1 || die + cd .. +}