Gentoo Archives: gentoo-commits

From: Alfredo Tupone <tupone@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-ada/langkit/files/, dev-ada/langkit/
Date: Mon, 06 Dec 2021 12:54:10
Message-Id: 1638795205.3280155e870e24fcf0027fd6961f42f422a22dfb.tupone@gentoo
1 commit: 3280155e870e24fcf0027fd6961f42f422a22dfb
2 Author: Alfredo Tupone <tupone <AT> gentoo <DOT> org>
3 AuthorDate: Mon Dec 6 12:53:25 2021 +0000
4 Commit: Alfredo Tupone <tupone <AT> gentoo <DOT> org>
5 CommitDate: Mon Dec 6 12:53:25 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3280155e
7
8 dev-ada/langkit: A Python framework to generate language parsers
9
10 Package-Manager: Portage-3.0.28, Repoman-3.0.3
11 Signed-off-by: Alfredo Tupone <tupone <AT> gentoo.org>
12
13 dev-ada/langkit/Manifest | 1 +
14 dev-ada/langkit/files/langkit-22.0.0-gnarl.patch | 10 +++++
15 dev-ada/langkit/langkit-22.0.0.ebuild | 50 ++++++++++++++++++++++++
16 dev-ada/langkit/metadata.xml | 17 ++++++++
17 4 files changed, 78 insertions(+)
18
19 diff --git a/dev-ada/langkit/Manifest b/dev-ada/langkit/Manifest
20 new file mode 100644
21 index 000000000000..ea7b6a9fbab0
22 --- /dev/null
23 +++ b/dev-ada/langkit/Manifest
24 @@ -0,0 +1 @@
25 +DIST langkit-22.0.0.tar.gz 1008946 BLAKE2B 2b4ee37c9af1c95f9a6e9ad81f37b6bb112d5bd70f36b78e95d969580eacc1101b824ea24de39d04ccf8bc9f9850906fa1c660a29de05e90d12106b10792c37d SHA512 4c6207b650ae8352c65f3edda3192fc66c9b5d2c351665d78ca83b549960a0a41e7828e8974cb8daa3c415281b50253aa15a247407bcedc2c13e573aaa804909
26
27 diff --git a/dev-ada/langkit/files/langkit-22.0.0-gnarl.patch b/dev-ada/langkit/files/langkit-22.0.0-gnarl.patch
28 new file mode 100644
29 index 000000000000..fb69768dc9de
30 --- /dev/null
31 +++ b/dev-ada/langkit/files/langkit-22.0.0-gnarl.patch
32 @@ -0,0 +1,10 @@
33 +--- a/langkit/templates/mains_project_file.mako 2020-06-09 09:34:36.677265457 +0200
34 ++++ b/langkit/templates/mains_project_file.mako 2020-06-09 09:35:30.569451995 +0200
35 +@@ -40,4 +40,7 @@
36 + for Switches ("ada") use ("-E");
37 + end Binder;
38 +
39 ++ package Linker is
40 ++ for Switches ("ada") use ("-lgnat", "-lgnarl");
41 ++ end Linker;
42 + end Mains;
43
44 diff --git a/dev-ada/langkit/langkit-22.0.0.ebuild b/dev-ada/langkit/langkit-22.0.0.ebuild
45 new file mode 100644
46 index 000000000000..2fe1c770f737
47 --- /dev/null
48 +++ b/dev-ada/langkit/langkit-22.0.0.ebuild
49 @@ -0,0 +1,50 @@
50 +# Copyright 1999-2021 Gentoo Authors
51 +# Distributed under the terms of the GNU General Public License v2
52 +
53 +EAPI=7
54 +
55 +PYTHON_COMPAT=( python3_{8,9} )
56 +
57 +DISTUTILS_USE_SETUPTOOLS=no
58 +inherit distutils-r1 multiprocessing
59 +
60 +DESCRIPTION="A Python framework to generate language parsers"
61 +HOMEPAGE="https://www.adacore.com/community"
62 +SRC_URI="https://github.com/AdaCore/${PN}/archive/refs/tags/v${PV}.tar.gz
63 + -> ${P}.tar.gz"
64 +
65 +LICENSE="GPL-3"
66 +SLOT="0"
67 +KEYWORDS="~amd64"
68 +RESTRICT="test"
69 +
70 +REQUIRED_USE="${PYTHON_REQUIRED_USE}"
71 +
72 +RDEPEND="${PYTHON_DEPS}
73 + dev-ada/gnatcoll-bindings[iconv,shared]
74 + dev-python/mako[${PYTHON_USEDEP}]
75 + dev-python/pyyaml[${PYTHON_USEDEP}]
76 + dev-python/funcy[${PYTHON_USEDEP}]
77 + dev-python/docutils[${PYTHON_USEDEP}]
78 + dev-ada/e3-core[${PYTHON_USEDEP}]"
79 +DEPEND="${RDEPEND}"
80 +
81 +PATCHES=(
82 + "${FILESDIR}"/${P}-gnarl.patch
83 +)
84 +
85 +src_compile() {
86 + gprbuild -v -P support/langkit_support.gpr -p -j$(makeopts_jobs) \
87 + -XBUILD_MODE=dev -XLIBRARY_TYPE=relocatable -cargs:Ada ${ADAFLAGS} \
88 + || die
89 + distutils-r1_src_compile
90 +}
91 +
92 +src_install() {
93 + gprinstall -v -P support/langkit_support.gpr -p -XBUILD_MODE=dev \
94 + --prefix="${D}"/usr --build-var=LIBRARY_TYPE \
95 + --build-var=LANGKIT_SUPPORT_LIBRARY_TYPE \
96 + --sources-subdir=include/langkit_support \
97 + -XLIBRARY_TYPE=relocatable --build-name=relocatable || die
98 + distutils-r1_src_install
99 +}
100
101 diff --git a/dev-ada/langkit/metadata.xml b/dev-ada/langkit/metadata.xml
102 new file mode 100644
103 index 000000000000..1d15b41d3ff8
104 --- /dev/null
105 +++ b/dev-ada/langkit/metadata.xml
106 @@ -0,0 +1,17 @@
107 +<?xml version="1.0" encoding="UTF-8"?>
108 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
109 +<pkgmetadata>
110 + <maintainer type="project">
111 + <email>ada@g.o</email>
112 + </maintainer>
113 + <longdescription lang="en">
114 + Langkit (nickname for language kit) is a tool whose purpose is to make
115 + it easy to create syntactic and semantic analysis engines. Write a
116 + language specification in our Python DSL and Langkit will generate for
117 + you an Ada library with bindings for the C and Python programming
118 + languages.
119 + The generated library is meant to provide a basis to write tooling,
120 + including tools working on potentially changing and incorrect code,
121 + such as IDEs.
122 + </longdescription>
123 +</pkgmetadata>