dev-ada/prettier-ada: new package, add 25.0.0

Signed-off-by: Alfredo Tupone <tupone@gentoo.org>
This commit is contained in:
Alfredo Tupone 2025-01-26 19:01:24 +01:00
parent ce76d34b31
commit 6a310b7ca7
No known key found for this signature in database
GPG Key ID: FBE5925C5B02CE58
4 changed files with 130 additions and 0 deletions

View File

@ -0,0 +1 @@
DIST prettier-ada-25.0.0.tar.gz 60082 BLAKE2B 7fa18f3557b0f4e031d24421b7e5876477ed9468886e8d74165c7eae3f4ecdba8dfa7efa6ac298b3065b23eff5f531c4194107be6d36aa4153670350f19f3fc0 SHA512 5e31bedf76f6051a1e40a298953d9aa269f24d374b619fba1de934d4b85efc358532d9d695084b41607ae7d8d87bf91f27a151760c1f010782b2af3f64783c6a

View File

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>ada@gentoo.org</email>
</maintainer>
<use>
<flag name="shared">Build shared library</flag>
<flag name="static-pic">Build static library with pic code</flag>
</use>
<longdescription lang="en">
This project is a port of the Prettier formatter to the Ada programming
language. The aim of this project is to provide a tool that allows Ada
programmers to create formatters for any language of their choosing.
Please note that only the core generic formatting algorithm and its
dependencies were ported. The formatters for all supported languages
are not included in this project.
</longdescription>
<upstream>
<remote-id type="github">AdaCore/prettier-ada</remote-id>
</upstream>
</pkgmetadata>

View File

@ -0,0 +1,106 @@
# Copyright 2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
ADA_COMPAT=( gcc_12 gcc_13 gcc_14 )
PYTHON_COMPAT=( python3_{10..12} )
inherit ada python-any-r1 multiprocessing
DESCRIPTION="Port of the Prettier formatter to the Ada programming language"
HOMEPAGE="https://github.com/AdaCore/prettier-ada"
SRC_URI="https://github.com/AdaCore/${PN}/archive/refs/tags/v${PV}.tar.gz
-> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE="+shared static-libs static-pic test"
RDEPEND="${ADA_DEPS}
dev-ada/VSS:${SLOT}[${ADA_USEDEP},shared?,static-libs?,static-pic?]
dev-ada/gnatcoll-core:${SLOT}[${ADA_USEDEP},shared?,static-libs?,static-pic?]"
DEPEND="${RDEPEND}
dev-ada/gprbuild[${ADA_USEDEP}]"
BDEPEND="test? (
$(python_gen_any_dep '
dev-ada/e3-testsuite[${PYTHON_USEDEP}]
')
)"
REQUIRED_USE="${ADA_REQUIRED_USE}
|| ( shared static-libs static-pic )
test? ( static-libs )"
RESTRICT="!test? ( test )"
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
ada_pkg_setup
}
src_compile() {
build() {
gprbuild \
-v \
-k \
-XLIBRARY_TYPE=$1 \
-XPRETTIER_ADA_LIBRARY_TYPE=$1 \
-P prettier_ada.gpr \
-p \
-j$(makeopts_jobs) \
-largs ${LDFLAGS} \
-cargs ${ADAFLAGS} \
|| die "gprbuild failed"
}
use shared && build relocatable
use static-libs && build static
use static-pic && build static-pic
}
src_install() {
build() {
gprinstall \
-XPRETTIER_ADA_LIBRARY_TYPE=$1 \
-XLIBRARY_TYPE=$1 \
--prefix="${D}"/usr \
--install-name=prettier_ada \
--build-name=$1 \
--build-var=LIBRARY_TYPE \
-P prettier_ada.gpr -p -f \
|| die "gprinstall failed"
}
use shared && build relocatable
use static-libs && build static
use static-pic && build static-pic
einstalldocs
}
src_test() {
gprbuild \
-v \
-k \
-XLIBRARY_TYPE=static \
-XPRETTIER_ADA_LIBRARY_TYPE=static \
-P testsuite/test_programs/test_programs.gpr \
-p \
-j$(makeopts_jobs) \
|| die
gprinstall \
-XLIBRARY_TYPE=static \
-XPRETTIER_ADA_LIBRARY_TYPE=static \
--prefix="${TMP}"/usr \
--install-name=test_programs \
--mode=usage \
-P testsuite/test_programs/test_programs.gpr \
-p \
-f \
|| die
PATH=${PATH}:"${TMP}"/usr/bin \
${EPYTHON} testsuite/testsuite.py || die
}

View File

@ -115,6 +115,7 @@ dev-ada/ada_libfswatch
dev-ada/gnatsymbolize
dev-ada/AdaSAT
dev-ada/lal-refactor
dev-ada/prettier-ada
# Sergey Popov <pinkbyte@gentoo.org> (2024-03-05)
# games-strategy/seven-kingdoms does not build on musl,