summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-dotnet/dotnet-sdk/dotnet-sdk-7.0.105.ebuild')
-rw-r--r--dev-dotnet/dotnet-sdk/dotnet-sdk-7.0.105.ebuild90
1 files changed, 90 insertions, 0 deletions
diff --git a/dev-dotnet/dotnet-sdk/dotnet-sdk-7.0.105.ebuild b/dev-dotnet/dotnet-sdk/dotnet-sdk-7.0.105.ebuild
new file mode 100644
index 000000000000..f6d6fa9003e4
--- /dev/null
+++ b/dev-dotnet/dotnet-sdk/dotnet-sdk-7.0.105.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+## Build the tarball:
+## ./build.sh --configuration Release --architecture x64 \
+## /p:ArcadeBuildTarball=true /p:TarballDir="$(pwd)/dotnet-sdk-7.0.105"
+## cd dotnet-sdk-7.0.105
+## ./prep.sh --bootstrap
+## cd ..
+## tar --create --auto-compress --file dotnet-sdk-7.0.105.tar.xz dotnet-sdk-7.0.105
+## mv dotnet-sdk-7.0.105.tar.xz dotnet-sdk-7.0.1050-prepared-gentoo-amd64.tar.xz
+## upload dotnet-sdk-7.0.1050-amd64.tar.xz
+
+EAPI=8
+
+inherit check-reqs
+
+DESCRIPTION=".NET is a free, cross-platform, open-source developer platform"
+HOMEPAGE="https://dotnet.microsoft.com/"
+SRC_URI="
+ amd64? ( https://dev.gentoo.org/~xgqt/distfiles/repackaged/${P}-prepared-gentoo-amd64.tar.xz )
+"
+
+SDK_SLOT="$(ver_cut 1-2)"
+RUNTIME_SLOT="${SDK_SLOT}.5"
+SLOT="${SDK_SLOT}/${RUNTIME_SLOT}"
+
+LICENSE="MIT"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ dev-util/cmake
+ dev-vcs/git
+ sys-devel/clang
+"
+RDEPEND="
+ app-crypt/mit-krb5:0/0
+ dev-libs/icu
+ dev-libs/openssl:=
+ dev-util/lttng-ust:0/2.12
+ sys-libs/zlib:0/1
+"
+IDEPEND="app-eselect/eselect-dotnet"
+PDEPEND="
+ ~dev-dotnet/dotnet-runtime-nugets-${RUNTIME_SLOT}
+ ~dev-dotnet/dotnet-runtime-nugets-3.1.32
+ ~dev-dotnet/dotnet-runtime-nugets-6.0.16
+"
+
+CHECKREQS_DISK_BUILD="20G"
+
+# QA_PREBUILT="*" # TODO: Which binaries are created by dotnet itself?
+
+src_prepare() {
+ unset DOTNET_DATA DOTNET_ROOT
+ unset NUGET_DATA NUGET_PACKAGES
+
+ default
+}
+
+src_compile() {
+ # Remove .NET leftover files that block build.
+ if [[ -f /tmp/PackageVersions.props ]] ; then
+ rm /tmp/PackageVersions.props # nonfatal
+ fi
+
+ ebegin "Building .NET SDK ${SDK_SLOT}"
+ bash ./build.sh --clean-while-building
+ eend ${?} || die "build failed"
+}
+
+src_install() {
+ local dest=/usr/$(get_libdir)/${PN}-${SDK_SLOT}
+ dodir ${dest}
+
+ ebegin "Extracting SDK archive"
+ tar xzf artifacts/*/Release/${P}-*.tar.gz -C "${ED}"/${dest}
+ eend ${?} || die "extraction failed"
+
+ fperms 0755 ${dest}
+ dosym -r ${dest}/dotnet /usr/bin/dotnet-${SDK_SLOT}
+}
+
+pkg_postinst() {
+ eselect dotnet update ifunset
+}
+
+pkg_postrm() {
+ eselect dotnet update ifunset
+}