You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/dev-dotnet/netcoredbg/netcoredbg-3.0.0.1018-r1.eb...

213 lines
6.7 KiB

# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MY_PV="$(ver_cut 1-3)-$(ver_cut 4)"
DOTNET_RUNTIME_V="7.0.14"
CMAKE_IN_SOURCE_BUILD="ON"
DOTNET_PKG_COMPAT="8.0"
NUGETS="
microsoft.codeanalysis.analyzers@1.1.0
microsoft.codeanalysis.common@2.3.0
microsoft.codeanalysis.csharp.scripting@2.3.0
microsoft.codeanalysis.csharp@2.3.0
microsoft.codeanalysis.scripting.common@2.3.0
microsoft.csharp@4.4.0
microsoft.diagnostics.dbgshim.linux-arm64@8.0.452401
microsoft.diagnostics.dbgshim.linux-arm@8.0.452401
microsoft.diagnostics.dbgshim.linux-musl-arm64@8.0.452401
microsoft.diagnostics.dbgshim.linux-musl-arm@8.0.452401
microsoft.diagnostics.dbgshim.linux-musl-x64@8.0.452401
microsoft.diagnostics.dbgshim.linux-x64@8.0.452401
microsoft.diagnostics.dbgshim.osx-arm64@8.0.452401
microsoft.diagnostics.dbgshim.osx-x64@8.0.452401
microsoft.diagnostics.dbgshim.win-arm64@8.0.452401
microsoft.diagnostics.dbgshim.win-arm@8.0.452401
microsoft.diagnostics.dbgshim.win-x64@8.0.452401
microsoft.diagnostics.dbgshim.win-x86@8.0.452401
microsoft.diagnostics.dbgshim@8.0.452401
microsoft.netcore.platforms@1.1.0
microsoft.netcore.targets@1.1.0
netstandard.library@2.0.3
runtime.any.system.collections@4.3.0
runtime.any.system.diagnostics.tools@4.3.0
runtime.any.system.diagnostics.tracing@4.3.0
runtime.any.system.globalization.calendars@4.3.0
runtime.any.system.globalization@4.3.0
runtime.any.system.io@4.3.0
runtime.any.system.reflection.extensions@4.3.0
runtime.any.system.reflection.primitives@4.3.0
runtime.any.system.reflection@4.3.0
runtime.any.system.resources.resourcemanager@4.3.0
runtime.any.system.runtime.handles@4.3.0
runtime.any.system.runtime.interopservices@4.3.0
runtime.any.system.runtime@4.3.0
runtime.any.system.text.encoding.extensions@4.3.0
runtime.any.system.text.encoding@4.3.0
runtime.any.system.threading.tasks@4.3.0
runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl@4.3.0
runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl@4.3.0
runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl@4.3.0
runtime.native.system.io.compression@4.3.0
runtime.native.system.net.http@4.3.0
runtime.native.system.security.cryptography.apple@4.3.0
runtime.native.system.security.cryptography.openssl@4.3.0
runtime.native.system@4.3.0
runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl@4.3.0
runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl@4.3.0
runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple@4.3.0
runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl@4.3.0
runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl@4.3.0
runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl@4.3.0
runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl@4.3.0
runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl@4.3.0
runtime.unix.system.console@4.3.0
runtime.unix.system.diagnostics.debug@4.3.0
runtime.unix.system.io.filesystem@4.3.0
runtime.unix.system.private.uri@4.3.0
runtime.unix.system.runtime.extensions@4.3.0
system.appcontext@4.3.0
system.buffers@4.3.0
system.collections.concurrent@4.3.0
system.collections.immutable@1.3.1
system.collections@4.3.0
system.console@4.3.0
system.diagnostics.debug@4.3.0
system.diagnostics.fileversioninfo@4.3.0
system.diagnostics.stacktrace@4.3.0
system.diagnostics.tools@4.3.0
system.diagnostics.tracing@4.3.0
system.dynamic.runtime@4.3.0
system.globalization.calendars@4.3.0
system.globalization@4.3.0
system.io.compression@4.3.0
system.io.filesystem.primitives@4.3.0
system.io.filesystem@4.3.0
system.io@4.3.0
system.linq.expressions@4.3.0
system.linq@4.3.0
system.objectmodel@4.3.0
system.private.uri@4.3.0
system.reflection.emit.ilgeneration@4.3.0
system.reflection.emit.lightweight@4.3.0
system.reflection.emit@4.3.0
system.reflection.extensions@4.3.0
system.reflection.metadata@1.4.2
system.reflection.primitives@4.3.0
system.reflection.typeextensions@4.3.0
system.reflection@4.3.0
system.resources.resourcemanager@4.3.0
system.runtime.extensions@4.3.0
system.runtime.handles@4.3.0
system.runtime.interopservices@4.3.0
system.runtime.numerics@4.3.0
system.runtime@4.3.0
system.security.cryptography.algorithms@4.3.0
system.security.cryptography.cng@4.3.0
system.security.cryptography.csp@4.3.0
system.security.cryptography.encoding@4.3.0
system.security.cryptography.openssl@4.3.0
system.security.cryptography.primitives@4.3.0
system.security.cryptography.x509certificates@4.3.0
system.text.encoding.codepages@4.3.0
system.text.encoding.extensions@4.3.0
system.text.encoding@4.3.0
system.text.regularexpressions@4.3.0
system.threading.tasks.extensions@4.3.0
system.threading.tasks.parallel@4.3.0
system.threading.tasks@4.3.0
system.threading.thread@4.3.0
system.threading@4.3.0
system.valuetuple@4.3.0
system.xml.readerwriter@4.3.0
system.xml.xdocument@4.3.0
system.xml.xmldocument@4.3.0
system.xml.xpath.xdocument@4.3.0
system.xml.xpath@4.3.0
"
inherit check-reqs dotnet-pkg flag-o-matic cmake
DESCRIPTION="NetCoreDbg is a managed code debugger with MI interface for CoreCLR"
HOMEPAGE="https://github.com/Samsung/netcoredbg/"
if [[ "${PV}" == *9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/Samsung/${PN}.git"
else
SRC_URI="https://github.com/Samsung/${PN}/archive/refs/tags/${MY_PV}.tar.gz
-> ${P}.tar.gz"
S="${WORKDIR}/${PN}-${MY_PV}"
KEYWORDS="amd64"
fi
# .NET runtime that would have otherwise be downloaded via git.
SRC_URI+="
https://github.com/dotnet/runtime/archive/refs/tags/v${DOTNET_RUNTIME_V}.tar.gz
-> dotnet_runtime-${DOTNET_RUNTIME_V}.tar.gz
"
CORECLR_S="${WORKDIR}/runtime-${DOTNET_RUNTIME_V}/src/coreclr"
SRC_URI+="
${NUGET_URIS}
"
LICENSE="MIT"
SLOT="0/${MY_PV}"
CHECKREQS_DISK_BUILD="1400M"
DOTNET_PKG_PROJECTS=(
src/managed/ManagedPart.csproj # Restore but do not build those projects.
)
PATCHES=(
"${FILESDIR}/${PN}-3.0.0.1012-compileoptions.patch"
)
QA_FLAGS_IGNORED=".*/libdbgshim.so"
DOCS=( README.md docs/{interop,stepping}.md )
pkg_setup() {
check-reqs_pkg_setup
dotnet-pkg_pkg_setup
}
src_unpack() {
dotnet-pkg_src_unpack
if [[ -n "${EGIT_REPO_URI}" ]] ; then
git-r3_src_unpack
fi
}
src_prepare() {
cmake_src_prepare
nuget_writeconfig "$(pwd)/"
cp NuGet.config tools/generrmsg/nuget.xml || die
}
src_configure() {
INSTALL_PREFIX="/usr/$(get_libdir)/${PN}"
append-cxxflags -fpermissive
dotnet-pkg_src_configure
local -a mycmakeargs=(
-DBUILD_MANAGED=1
-DCMAKE_INSTALL_PREFIX="${INSTALL_PREFIX}"
-DCORECLR_DIR="${CORECLR_S}"
-DDOTNET_DIR="${DOTNET_ROOT}"
)
cmake_src_configure
}
src_install() {
cmake_src_install
dosym -r "${INSTALL_PREFIX}/${PN}" "/usr/bin/${PN}"
einstalldocs
}