aboutsummaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorAnna (navi) Figueiredo Gomes <navi@vlhl.dev>2023-10-04 21:48:17 +0100
committerAnna (navi) Figueiredo Gomes <navi@vlhl.dev>2023-10-04 21:52:48 +0100
commitac877450a597dd50acc85f176c3d4b2930b5cb49 (patch)
tree1ae2614c029a2433bc7d80d6bfa47e12e704257c /eclass
parentgames-util/xivlauncher: drop 1.0.4, add 1.0.5 (diff)
downloadguru-ac877450a597dd50acc85f176c3d4b2930b5cb49.tar.gz
guru-ac877450a597dd50acc85f176c3d4b2930b5cb49.tar.bz2
guru-ac877450a597dd50acc85f176c3d4b2930b5cb49.zip
dotnet-utils.eclass: superseeded by dotnet-pkg in ::gentoo
the only consumer in ::guru was xivlauncher, which got ported to dotnet-pkg in 1.0.5 Signed-off-by: Anna (navi) Figueiredo Gomes <navi@vlhl.dev>
Diffstat (limited to 'eclass')
-rw-r--r--eclass/dotnet-utils.eclass194
1 files changed, 0 insertions, 194 deletions
diff --git a/eclass/dotnet-utils.eclass b/eclass/dotnet-utils.eclass
deleted file mode 100644
index 5130467cd..000000000
--- a/eclass/dotnet-utils.eclass
+++ /dev/null
@@ -1,194 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# @ECLASS: dotnet-utils.eclass
-# @MAINTAINER:
-# navi@vlhl.dev
-# @AUTHOR:
-# Anna Figueiredo Gomes <navi@vlhl.dev>
-# @SUPPORTED_EAPIS: 7 8
-# @BLURB: common functions and variables for dotnet builds
-
-case ${EAPI} in
- 7|8) ;;
- *) die "${ECLASS}: EAPI ${EAPI} unsupported." ;;
-esac
-
-if [[ ! ${_DOTNET_UTILS_ECLASS} ]]; then
-_DOTNET_UTILS_ECLASS=1
-
-inherit edo multiprocessing
-
-# @ECLASS_VARIABLE: DOTNET_SLOT
-# @REQUIRED
-# @PRE_INHERIT
-# @DESCRIPTION:
-# Allows to choose a slot for dotnet
-
-if [[ ! ${DOTNET_SLOT} ]]; then
- die "${ECLASS}: DOTNET_SLOT not set"
-fi
-
-# Temporary, use the virtual once you can have multiple virtuals installed at once
-BDEPEND+=" || ( dev-dotnet/dotnet-sdk-bin:${DOTNET_SLOT} dev-dotnet/dotnet-sdk:${DOTNET_SLOT} )"
-
-# @ECLASS_VARIABLE: DOTNET_EXECUTABLE
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# Sets the right executable name.
-
-# @ECLASS_VARIABLE: DOTNET_CLI_TELEMETRY_OPTOUT
-# @OUTPUT_VARIABLE
-# @DESCRIPTION:
-# Disables telemetry on dotnet.
-export DOTNET_CLI_TELEMETRY_OPTOUT=1
-
-# @ECLASS_VARIABLE: MSBUILDDISABLENODEREUSE
-# @OUTPUT_VARIABLE
-# @DESCRIPTION:
-# Stops the dotnet node after the build is done.
-export MSBUILDDISABLENODEREUSE=1
-
-# @ECLASS_VARIABLE: DOTNET_NOLOGO
-# @OUTPUT_VARIABLE
-# @DESCRIPTION:
-# Disables the header logo when running dotnet commands.
-export DOTNET_NOLOGO=1
-
-# Needed otherwise the binaries break
-RESTRICT+=" strip"
-
-# @ECLASS_VARIABLE: NUGETS
-# @DEFAULT_UNSET
-# @DESCRIPTION:
-# String containing all nuget packages that need to be downloaded. Used by
-# the 'nuget_uris' function.
-#
-# Example:
-# @CODE
-# NUGETS="
-# ImGui.NET-1.87.2
-# Config.Net-4.19.0
-# "
-#
-# inherit dotnet-utils
-#
-# ...
-#
-# SRC_URI="$(nuget_uris)"
-# @CODE
-
-# @FUNCTION: nuget_uris
-# @USAGE: <nuget...>
-# @DESCRIPTION:
-# Generates the URIs to put in SRC_URI to help fetch dependencies.
-# If no arguments provided, uses NUGETS variable.
-nuget_uris() {
- local -r regex='^([a-zA-Z0-9_.-]+)-([0-9]+\.[0-9]+\.[0-9]+.*)$'
- local nuget nugets
-
- if (( $# != 0 )); then
- nugets="${@}"
- elif [[ ${NUGETS} ]]; then
- nugets="${NUGETS}"
- else
- eerror "NUGETS variable is not defined and nothing passed as argument"
- die "${FUNCNAME}: Can't generate SRC_URI from empty input"
- fi
-
- for nuget in ${nugets}; do
- local name version url
- [[ ${nuget} =~ ${regex} ]] || die "Could not parse name and version from nuget: $nuget"
- name="${BASH_REMATCH[1]}"
- version="${BASH_REMATCH[2]}"
- url="https://api.nuget.org/v3-flatcontainer/${name}/${version}/${name}.${version}.nupkg"
- echo "${url}"
- done
-}
-
-# @FUNCTION: dotnet-utils_pkg_setup
-# @DESCRIPTION:
-# Sets up DOTNET_RUNTIME and DOTNET_EXECUTABLE variables for later use in edotnet.
-dotnet-utils_pkg_setup() {
- if use amd64; then
- DOTNET_RUNTIME="linux-x64"
- elif use arm; then
- DOTNET_RUNTIME="linux-arm"
- elif use arm64; then
- DOTNET_RUNTIME="linux-arm64"
- else
- die "Unsupported arch: ${ARCH}"
- fi
-
- local _dotnet
- for _dotnet in dotnet{,-bin}-${DOTNET_SLOT}; do
- if type ${_dotnet} 1> /dev/null 2>&1; then
- DOTNET_EXECUTABLE=${_dotnet}
- break
- fi
- done
-}
-
-# @FUNCTION: edotnet
-# @USAGE: <command> [args...]
-# @DESCRIPTION:
-# Call dotnet, passing the supplied arguments.
-edotnet() {
- debug-print-function ${FUNCNAME} "${@}"
-
- local dotnet_args=(
- --runtime "${DOTNET_RUNTIME}"
- -maxcpucount:$(makeopts_jobs)
- )
-
- edo "${DOTNET_EXECUTABLE}" "${@}" "${dotnet_args[@]}"
-}
-
-# @FUNCTION: dotnet-utils_src_unpack
-# @DESCRIPTION:
-# Unpacks the package
-dotnet-utils_src_unpack() {
- debug-print-function ${FUNCNAME} "${@}"
-
- local archive
- for archive in ${A}; do
- case "${archive}" in
- *.nupkg)
- ;;
- *)
- unpack ${archive}
- ;;
- esac
- done
-}
-
-# @FUNCTION: dotnet-utils_src_prepare
-# @DESCRIPTION:
-# Restore the packages using 'dotnet restore'
-dotnet-utils_src_prepare() {
- debug-print-function ${FUNCNAME} "${@}"
-
- edotnet restore --source "${DISTDIR}" || die "'dotnet restore' failed"
- default_src_prepare
-}
-
-# @FUNCTION: dotnet-utils_src_compile
-# @DESCRIPTION:
-# Build the package using dotnet publish
-dotnet-utils_src_compile() {
- debug-print-function ${FUNCNAME} "${@}"
-
- local publish_args=(
- --no-restore
- --configuration Release
- -p:Version=${PV}
- -p:DebugType=embedded
- --self-contained
- )
-
- edotnet publish "${publish_args[@]}" || die "'dotnet publish' failed"
-}
-
-fi
-
-EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare src_compile