diff options
author | Alfredo Tupone <tupone@gentoo.org> | 2021-12-06 13:53:25 +0100 |
---|---|---|
committer | Alfredo Tupone <tupone@gentoo.org> | 2021-12-06 13:53:25 +0100 |
commit | 3280155e870e24fcf0027fd6961f42f422a22dfb (patch) | |
tree | 0f3e1934224b5e1060714dbfa05d6eee918e160d /dev-ada/langkit | |
parent | media-gfx/povray: remove USE=static-libs (diff) | |
download | gentoo-3280155e870e24fcf0027fd6961f42f422a22dfb.tar.gz gentoo-3280155e870e24fcf0027fd6961f42f422a22dfb.tar.bz2 gentoo-3280155e870e24fcf0027fd6961f42f422a22dfb.zip |
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 <tupone@gentoo.org>
Diffstat (limited to 'dev-ada/langkit')
-rw-r--r-- | dev-ada/langkit/Manifest | 1 | ||||
-rw-r--r-- | dev-ada/langkit/files/langkit-22.0.0-gnarl.patch | 10 | ||||
-rw-r--r-- | dev-ada/langkit/langkit-22.0.0.ebuild | 50 | ||||
-rw-r--r-- | dev-ada/langkit/metadata.xml | 17 |
4 files changed, 78 insertions, 0 deletions
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 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>ada@gentoo.org</email> + </maintainer> + <longdescription lang="en"> + 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. + </longdescription> +</pkgmetadata> |