diff options
Diffstat (limited to 'dev-dotnet/csharp-language-server/csharp-language-server-0.5.7.ebuild')
-rw-r--r-- | dev-dotnet/csharp-language-server/csharp-language-server-0.5.7.ebuild | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/dev-dotnet/csharp-language-server/csharp-language-server-0.5.7.ebuild b/dev-dotnet/csharp-language-server/csharp-language-server-0.5.7.ebuild new file mode 100644 index 000000000000..ab7d3aec623d --- /dev/null +++ b/dev-dotnet/csharp-language-server/csharp-language-server-0.5.7.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DOTNET_COMPAT=6.0 + +inherit edo multiprocessing + +DESCRIPTION="Roslyn-based LSP language server for C#" +HOMEPAGE="https://github.com/razzmatazz/csharp-language-server/" +SRC_URI=" + https://github.com/razzmatazz/${PN}/archive/${PV}.tar.gz + -> ${P}.tar.gz + https://dev.gentoo.org/~xgqt/distfiles/deps/${P}-prebuilt.tar.xz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="debug" + +RDEPEND="virtual/dotnet-sdk:${DOTNET_COMPAT}" +BDEPEND="${RDEPEND}" + +# Generated by dotnet. +QA_PREBUILT=".*" + +src_prepare() { + export DOTNET_CLI_TELEMETRY_OPTOUT=1 + export DOTNET_NOLOGO=1 + export DOTNET_CONFIGURATION=$(usex debug Debug Release) + export DOTNET_OUTPUT="${WORKDIR}"/${P}_net${DOTNET_COMPAT}_${DOTNET_CONFIGURATION}/${PN} + export NUGET_PACKAGES="${WORKDIR}"/nuget_packages + + default +} + +src_configure() { + edob dotnet restore "${S}"/src \ + --source "${NUGET_PACKAGES}" \ + -p:TargetFramework=net${DOTNET_COMPAT} +} + +src_compile() { + local myopts=( + --configuration ${DOTNET_CONFIGURATION} + --no-restore + --no-self-contained + --nologo + --output "${DOTNET_OUTPUT}" + -maxCpuCount:$(makeopts_jobs) + -p:TargetFramework=net${DOTNET_COMPAT} + ) + edob dotnet build ${myopts[@]} "${S}"/src +} + +src_test() { + local myopts=( + --configuration ${DOTNET_CONFIGURATION} + --no-restore + --nologo + -maxCpuCount:$(makeopts_jobs) + -p:TargetFramework=net${DOTNET_COMPAT} + ) + edob dotnet test ${myopts[@]} "${S}"/src +} + +src_install() { + mkdir -p "${ED}"/usr/share/ || die + cp -r "${DOTNET_OUTPUT}" "${ED}"/usr/share/ || die + + dosym -r /usr/share/${PN}/CSharpLanguageServer /usr/bin/csharp-ls + + dodoc CHANGELOG.md README.md +} |