summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-ada/ada_language_server/Manifest1
-rw-r--r--dev-ada/ada_language_server/ada_language_server-23.0.10.ebuild78
2 files changed, 79 insertions, 0 deletions
diff --git a/dev-ada/ada_language_server/Manifest b/dev-ada/ada_language_server/Manifest
index 5319484dc0a9..10cfc1eb9cbf 100644
--- a/dev-ada/ada_language_server/Manifest
+++ b/dev-ada/ada_language_server/Manifest
@@ -1 +1,2 @@
DIST ada_language_server-22.0.0.tar.gz 791594 BLAKE2B 9effdf8376e00fe838be7b53c5756dc0d325e36eae780642d79483d6fcead9019cab41e228fe2313d6f31e06895e2d41feef194cb24ac50f02d6dd066774b642 SHA512 ef4bdf41315aad09750e85521657aefaaee419739aac4dec6e182691b8b5282face19481a113e710f7c4b21f6e6f51296d1872aaf5c1c3ab19b6774d142c021c
+DIST ada_language_server-23.0.10.tar.gz 1224074 BLAKE2B 100a0d042a6c638b1b3eb7c9c27a638f218a66e3f52a6f9be53fc42e764aff636c4fe7c1f532f2ba7ae6a811bf4cb8a8ce4a416fd1958c460ffb7f715a7166f5 SHA512 bc062d9e4b6c37a9add7a5665a44ee0ad06fd9ef12cb854b49ed52ed060dfe3582b54a47a4764f0f5b305c2ea697d180832ee4ed87dfcde37bcbc83cb2479299
diff --git a/dev-ada/ada_language_server/ada_language_server-23.0.10.ebuild b/dev-ada/ada_language_server/ada_language_server-23.0.10.ebuild
new file mode 100644
index 000000000000..847ac15a3583
--- /dev/null
+++ b/dev-ada/ada_language_server/ada_language_server-23.0.10.ebuild
@@ -0,0 +1,78 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+ADA_COMPAT=( gnat_2021 gcc_12_2_0 )
+inherit ada multiprocessing toolchain-funcs
+
+DESCRIPTION="an implementation of the Microsoft Language Server Protocol for Ada/SPARK"
+HOMEPAGE="https://github.com/AdaCore/ada_language_server"
+SRC_URI="https://github.com/AdaCore/${PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.tar.gz"
+IUSE="test"
+RESTRICT="test" # Tests do not work
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="${ADA_DEPS}
+ dev-ada/ada_libfswatch[${ADA_USEDEP}]
+ dev-ada/gnatcoll-core[${ADA_USEDEP},shared]
+ dev-ada/gnatdoc[${ADA_USEDEP}]
+ dev-ada/gpr-unit-provider[${ADA_USEDEP}]
+ dev-ada/libadalang[${ADA_USEDEP}]
+ >=dev-ada/libadalang-tools-23[${ADA_USEDEP},shared]
+ dev-ada/spawn[${ADA_USEDEP},shared,glib]
+ dev-ada/VSS[${ADA_USEDEP}]"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-ada/gprbuild[${ADA_USEDEP}]
+ test? ( dev-ada/e3-testsuite )"
+
+REQUIRED_USE="${ADA_REQUIRED_USE}"
+
+src_prepare() {
+ sed -i \
+ -e "s:g++:$(tc-getCXX):" \
+ gnat/lsp_server.gpr \
+ || die
+ default
+}
+
+src_compile() {
+ gprbuild -v -j$(makeopts_jobs) -P gnat/tester.gpr -p \
+ -XLIBRARY_TYPE=relocatable \
+ -XBUILD_MODE=prod \
+ -cargs:Ada ${ADAFLAGS} || die
+ gprbuild -v -j$(makeopts_jobs) -c -u -P gnat/lsp_server.gpr -p \
+ -XLIBRARY_TYPE=relocatable s-memory.adb \
+ -XBUILD_MODE=prod \
+ -cargs:Ada ${ADAFLAGS} || die
+ gprbuild -v -j$(makeopts_jobs) -P gnat/lsp_server.gpr -p \
+ -XLIBRARY_TYPE=relocatable -XVERSION= \
+ -XBUILD_MODE=prod \
+ -cargs:Ada ${ADAFLAGS} || die
+ gprbuild -v -j$(makeopts_jobs) -P gnat/codec_test.gpr -p \
+ -XLIBRARY_TYPE=relocatable \
+ -XBUILD_MODE=prod \
+ -cargs:Ada ${ADAFLAGS} || die
+ gprbuild -v -j$(makeopts_jobs) -P gnat/lsp_client.gpr -p \
+ -XLIBRARY_TYPE=relocatable \
+ -XBUILD_MODE=prod \
+ -cargs:Ada ${ADAFLAGS} || die
+ gprbuild -v -j$(makeopts_jobs) -P gnat/lsp_client_glib.gpr -p \
+ -XLIBRARY_TYPE=relocatable \
+ -XBUILD_MODE=prod \
+ -cargs:Ada ${ADAFLAGS} || die
+ mkdir -p integration/vscode/ada/linux
+ cp -f .obj/server/ada_language_server integration/vscode/ada/linux || die
+}
+
+src_install() {
+ emake install DESTDIR="${D}"/usr
+ gprinstall -f -P gnat/lsp_client_glib.gpr -p -r --mode=dev \
+ --prefix="${D}"/usr -XBUILD_MODE=dev -XLIBRARY_TYPE=relocatable || die
+
+ einstalldocs
+}