From 3280155e870e24fcf0027fd6961f42f422a22dfb Mon Sep 17 00:00:00 2001 From: Alfredo Tupone Date: Mon, 6 Dec 2021 13:53:25 +0100 Subject: dev-ada/langkit: A Python framework to generate language parsers Package-Manager: Portage-3.0.28, Repoman-3.0.3 Signed-off-by: Alfredo Tupone --- dev-ada/langkit/Manifest | 1 + dev-ada/langkit/files/langkit-22.0.0-gnarl.patch | 10 +++++ dev-ada/langkit/langkit-22.0.0.ebuild | 50 ++++++++++++++++++++++++ dev-ada/langkit/metadata.xml | 17 ++++++++ 4 files changed, 78 insertions(+) create mode 100644 dev-ada/langkit/Manifest create mode 100644 dev-ada/langkit/files/langkit-22.0.0-gnarl.patch create mode 100644 dev-ada/langkit/langkit-22.0.0.ebuild create mode 100644 dev-ada/langkit/metadata.xml (limited to 'dev-ada/langkit') diff --git a/dev-ada/langkit/Manifest b/dev-ada/langkit/Manifest new file mode 100644 index 000000000000..ea7b6a9fbab0 --- /dev/null +++ b/dev-ada/langkit/Manifest @@ -0,0 +1 @@ +DIST langkit-22.0.0.tar.gz 1008946 BLAKE2B 2b4ee37c9af1c95f9a6e9ad81f37b6bb112d5bd70f36b78e95d969580eacc1101b824ea24de39d04ccf8bc9f9850906fa1c660a29de05e90d12106b10792c37d SHA512 4c6207b650ae8352c65f3edda3192fc66c9b5d2c351665d78ca83b549960a0a41e7828e8974cb8daa3c415281b50253aa15a247407bcedc2c13e573aaa804909 diff --git a/dev-ada/langkit/files/langkit-22.0.0-gnarl.patch b/dev-ada/langkit/files/langkit-22.0.0-gnarl.patch new file mode 100644 index 000000000000..fb69768dc9de --- /dev/null +++ b/dev-ada/langkit/files/langkit-22.0.0-gnarl.patch @@ -0,0 +1,10 @@ +--- a/langkit/templates/mains_project_file.mako 2020-06-09 09:34:36.677265457 +0200 ++++ b/langkit/templates/mains_project_file.mako 2020-06-09 09:35:30.569451995 +0200 +@@ -40,4 +40,7 @@ + for Switches ("ada") use ("-E"); + end Binder; + ++ package Linker is ++ for Switches ("ada") use ("-lgnat", "-lgnarl"); ++ end Linker; + end Mains; diff --git a/dev-ada/langkit/langkit-22.0.0.ebuild b/dev-ada/langkit/langkit-22.0.0.ebuild new file mode 100644 index 000000000000..2fe1c770f737 --- /dev/null +++ b/dev-ada/langkit/langkit-22.0.0.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{8,9} ) + +DISTUTILS_USE_SETUPTOOLS=no +inherit distutils-r1 multiprocessing + +DESCRIPTION="A Python framework to generate language parsers" +HOMEPAGE="https://www.adacore.com/community" +SRC_URI="https://github.com/AdaCore/${PN}/archive/refs/tags/v${PV}.tar.gz + -> ${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64" +RESTRICT="test" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND="${PYTHON_DEPS} + dev-ada/gnatcoll-bindings[iconv,shared] + dev-python/mako[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/funcy[${PYTHON_USEDEP}] + dev-python/docutils[${PYTHON_USEDEP}] + dev-ada/e3-core[${PYTHON_USEDEP}]" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${P}-gnarl.patch +) + +src_compile() { + gprbuild -v -P support/langkit_support.gpr -p -j$(makeopts_jobs) \ + -XBUILD_MODE=dev -XLIBRARY_TYPE=relocatable -cargs:Ada ${ADAFLAGS} \ + || die + distutils-r1_src_compile +} + +src_install() { + gprinstall -v -P support/langkit_support.gpr -p -XBUILD_MODE=dev \ + --prefix="${D}"/usr --build-var=LIBRARY_TYPE \ + --build-var=LANGKIT_SUPPORT_LIBRARY_TYPE \ + --sources-subdir=include/langkit_support \ + -XLIBRARY_TYPE=relocatable --build-name=relocatable || die + distutils-r1_src_install +} diff --git a/dev-ada/langkit/metadata.xml b/dev-ada/langkit/metadata.xml new file mode 100644 index 000000000000..1d15b41d3ff8 --- /dev/null +++ b/dev-ada/langkit/metadata.xml @@ -0,0 +1,17 @@ + + + + + ada@gentoo.org + + + Langkit (nickname for language kit) is a tool whose purpose is to make + it easy to create syntactic and semantic analysis engines. Write a + language specification in our Python DSL and Langkit will generate for + you an Ada library with bindings for the C and Python programming + languages. + The generated library is meant to provide a basis to write tooling, + including tools working on potentially changing and incorrect code, + such as IDEs. + + -- cgit v1.2.3-65-gdbad