summaryrefslogtreecommitdiff
path: root/dev-dotnet/dotnet-sdk
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-05-22 00:06:25 +0100
committerV3n3RiX <venerix@koprulu.sector>2024-05-22 00:06:25 +0100
commit236e75597883501f8700d9ba1a5c8276f578a17f (patch)
tree6b441a1dfa3a82840e3aa74678cc90c5294a4bca /dev-dotnet/dotnet-sdk
parentbfd63d5b0e96ad32e0d0a8fe15512b6a9ac6fc9e (diff)
gentoo auto-resync : 22:05:2024 - 00:06:25
Diffstat (limited to 'dev-dotnet/dotnet-sdk')
-rw-r--r--dev-dotnet/dotnet-sdk/Manifest3
-rw-r--r--dev-dotnet/dotnet-sdk/dotnet-sdk-8.0.105.ebuild217
2 files changed, 220 insertions, 0 deletions
diff --git a/dev-dotnet/dotnet-sdk/Manifest b/dev-dotnet/dotnet-sdk/Manifest
index a30ad845f15f..af988cffa186 100644
--- a/dev-dotnet/dotnet-sdk/Manifest
+++ b/dev-dotnet/dotnet-sdk/Manifest
@@ -1,5 +1,8 @@
AUX dotnet-sdk-8.0.101-runtime-64.patch 1059 BLAKE2B 9420e05c877024c694bf8f469ffb6369f7639828ca4d1017f3098c480a669ff334aeb7fd7425f4e2d8a720c83fef0a2e906d6da68bcb71f02aa50d6a8a200fcc SHA512 685f1b8bc77b1dcd266ef2d6cb8644fb7b49cfd2ac4c94cba3d36e68877fce087e7e0753430a76a474d204731514b24e778f77100538a14ea59945b9aca4a934
DIST dotnet-sdk-8.0.102-prepared-gentoo-amd64.tar.xz 1794775828 BLAKE2B 72a12b5af020a7f7d77b45eefd147b6fed52889443bbf0a9c5464a8a35a9582af32b75587f73aea9d1eb72d053986d8a204904178f260b2c8532ad821389beaf SHA512 1f7727f22e91783aaec5bccd2324f9dc63700fc95625afebeeb3bde7a99a63754a086b38c1d0921b4536963cbfc53b9c995a2aca519e0edd529f542a89995924
DIST dotnet-sdk-8.0.102-prepared-gentoo-musl-amd64.tar.xz 1790982284 BLAKE2B 010a1dee8e09402a22c0b45745a6ec7e511c88134ef984f51caa69051d7aec87dcb73392bc338508d5591ade1247e95f7708d4a83961ea665350b4ef29882e33 SHA512 611f96525ac98bae35592074d2f1d863c566080f4f52ca619546b547515f2962d9ae53317461e9bb803067d4381daab50f6c772134f9386bf36962998891563b
+DIST dotnet-sdk-8.0.105-prepared-gentoo-amd64.tar.xz 1774585908 BLAKE2B c8c14bb513e9421ed04df81bf4388a7b84333ff76cf678f5adfb658d4c32d4e3c90ad8f78676261cb0148d1f1a3f4763e4a4aad9e7d822f94c943ec6ca81f872 SHA512 6032f34c92c046fade8edf1e4c86b315e6f51ae38b7d505084b2903f6a883dcb9c3b17a67d2da28daffcf6f3bc4e2ebd19b481f2842716fad910fbc663980c8a
+DIST dotnet-sdk-8.0.105-prepared-gentoo-musl-amd64.tar.xz 1788053336 BLAKE2B 5cf9328ec19413ed6c82adb48f70346197e2d76926ab752c81c77fde94782c19a30f52aab07e2ddc7545280821bf64251de42afece08b5bcd0d52eceefca3064 SHA512 73b906a282d059e3829841f78e45b58beab980eb8a1c23857746af20630b1070ce9fca1e38d837d78ab039dc40273dc732be4b3ba10978df00dfdaa320dfd77e
EBUILD dotnet-sdk-8.0.102-r1.ebuild 5449 BLAKE2B ef4c5c233a1ac03028b5c62e68c294b67690ca418d4851ee55d5ef78f57ced246478fc7b933b288fc862f62ae98048487b966147cf36b176b8fd55b54dfe6ee0 SHA512 71da0b7a646f469fc849cab51e7d15e093433fed15d0ed3fcd71604f83b676f2e4627d0b05e14c4093248c8b8fba6e80493c501d426549e1f6454804129c46de
+EBUILD dotnet-sdk-8.0.105.ebuild 5392 BLAKE2B 4c585d753082dc3faeab2bebfd4c4adb084a9d54c9304dd91c3e52886f1abce6bfa4b4bbf604f88a41ae8c0ef4ac67bb8798383f8ba397fbb04c8bd046d55ca6 SHA512 f530d38508834bc150763573361357ebad289957760a678a8ae2b6cd2400b71fa9a79ba94ce0ebd946f048ca980d7adedb4273cf079d8bd3c6f9e223aeba79f3
MISC metadata.xml 518 BLAKE2B f9733bd3b6b343126c400ce35dc7e4e57421a6643219341c4beab83d47beb1182306f3d0c5f1e7ff0854fd49818b2c6af37598170b88e2eb82b62d478735abf0 SHA512 940830b1208c39e4cfd72817d399156b027e5ac51dcc7bb983c9ec973f8f2ef76e440a2d358d15f7a2e185c42ae98c986210224f1477923967e3dc70eb0cfde9
diff --git a/dev-dotnet/dotnet-sdk/dotnet-sdk-8.0.105.ebuild b/dev-dotnet/dotnet-sdk/dotnet-sdk-8.0.105.ebuild
new file mode 100644
index 000000000000..c670f25bd98b
--- /dev/null
+++ b/dev-dotnet/dotnet-sdk/dotnet-sdk-8.0.105.ebuild
@@ -0,0 +1,217 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Pre-build (and distribution preparation)
+# Build the tarball:
+# git clone --depth 1 -b v8.0.2 https://github.com/dotnet/dotnet dotnet-sdk-8.0.2
+# cd dotnet-sdk-8.0.2
+# git rev-parse HEAD
+# ./prep.sh
+# rm -fr .git
+# cd ..
+# tar -acf dotnet-sdk-8.0.201-prepared-gentoo-amd64.tar.xz dotnet-sdk-8.0.2
+# Upload dotnet-sdk-8.0.201-prepared-gentoo-amd64.tar.xz
+
+# Build ("src_compile")
+# To learn about arguments that are passed to the "build.sh" script see:
+# https://github.com/dotnet/source-build/discussions/4082
+# User variable: GENTOO_DOTNET_BUILD_VERBOSITY - set other verbosity log level.
+
+EAPI=8
+
+COMMIT=d396b0c4d3e51c2d8d679b2f7233912bc5bfc2fa
+SDK_SLOT="$(ver_cut 1-2)"
+RUNTIME_SLOT="${SDK_SLOT}.5"
+
+LLVM_MAX_SLOT=17
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit check-reqs flag-o-matic llvm multiprocessing python-any-r1
+
+DESCRIPTION=".NET is a free, cross-platform, open-source developer platform"
+HOMEPAGE="https://dotnet.microsoft.com/
+ https://github.com/dotnet/dotnet/"
+SRC_URI="
+amd64? (
+ elibc_glibc? ( https://dev.gentoo.org/~xgqt/distfiles/repackaged/${P}-prepared-gentoo-amd64.tar.xz )
+ elibc_musl? ( https://dev.gentoo.org/~xgqt/distfiles/repackaged/${P}-prepared-gentoo-musl-amd64.tar.xz )
+)
+"
+S="${WORKDIR}/${PN}-${RUNTIME_SLOT}"
+
+LICENSE="MIT"
+SLOT="${SDK_SLOT}/${RUNTIME_SLOT}"
+KEYWORDS="~amd64"
+
+# STRIP="llvm-strip" corrupts some executables when using the patchelf hack.
+# Be safe and restrict it for source-built too, bug https://bugs.gentoo.org/923430
+RESTRICT="splitdebug strip"
+
+CURRENT_NUGETS_DEPEND="
+ ~dev-dotnet/dotnet-runtime-nugets-${RUNTIME_SLOT}
+"
+EXTRA_NUGETS_DEPEND="
+ ~dev-dotnet/dotnet-runtime-nugets-6.0.30
+ ~dev-dotnet/dotnet-runtime-nugets-7.0.19
+"
+NUGETS_DEPEND="
+ ${CURRENT_NUGETS_DEPEND}
+ ${EXTRA_NUGETS_DEPEND}
+"
+RDEPEND="
+ app-crypt/mit-krb5:0/0
+ dev-libs/icu
+ dev-libs/openssl:=
+ dev-util/lttng-ust:=
+ sys-libs/zlib:0/1
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ <sys-devel/clang-$(( LLVM_MAX_SLOT + 1 ))
+ dev-build/cmake
+ dev-vcs/git
+"
+IDEPEND="
+ app-eselect/eselect-dotnet
+"
+PDEPEND="
+ ${NUGETS_DEPEND}
+"
+
+CHECKREQS_DISK_BUILD="20G"
+
+# Created by dotnet itself:
+QA_PREBUILT="
+usr/lib.*/dotnet-sdk-.*/dotnet
+"
+# .NET runtime, better to not touch it if they want some specific flags.
+QA_FLAGS_IGNORED="
+.*/apphost
+.*/createdump
+.*/libSystem.Globalization.Native.so
+.*/libSystem.IO.Compression.Native.so
+.*/libSystem.Native.so
+.*/libSystem.Net.Security.Native.so
+.*/libSystem.Security.Cryptography.Native.OpenSsl.so
+.*/libclrgc.so
+.*/libclrjit.so
+.*/libcoreclr.so
+.*/libcoreclrtraceptprovider.so
+.*/libhostfxr.so
+.*/libhostpolicy.so
+.*/libmscordaccore.so
+.*/libmscordbi.so
+.*/libnethost.so
+.*/singlefilehost
+"
+
+check_requirements_locale() {
+ if [[ "${MERGE_TYPE}" != binary ]] ; then
+ if use elibc_glibc ; then
+ local locales
+ locales="$(locale -a)"
+
+ if has en_US.utf8 ${locales} ; then
+ LC_ALL=en_US.utf8
+ elif has en_US.UTF-8 ${locales} ; then
+ LC_ALL=en_US.UTF-8
+ else
+ eerror "The locale en_US.utf8 or en_US.UTF-8 is not available."
+ eerror "Please generate en_US.UTF-8 before building ${CATEGORY}/${P}."
+
+ die "Could not switch to the en_US.UTF-8 locale."
+ fi
+ else
+ LC_ALL=en_US.UTF-8
+ fi
+
+ export LC_ALL
+ einfo "Successfully switched to the ${LC_ALL} locale."
+ fi
+}
+
+pkg_pretend() {
+ check-reqs_pkg_pretend
+
+ check_requirements_locale
+}
+
+pkg_setup() {
+ check-reqs_pkg_setup
+ llvm_pkg_setup
+ python-any-r1_pkg_setup
+
+ check_requirements_locale
+}
+
+src_prepare() {
+ default
+
+ filter-lto
+
+ unset DOTNET_ROOT
+ unset NUGET_PACKAGES
+
+ export DOTNET_CLI_TELEMETRY_OPTOUT=1
+ export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
+ export MSBUILDDISABLENODEREUSE=1
+ export UseSharedCompilation=false
+
+ local dotnet_sdk_tmp_directory="${WORKDIR}/dotnet-sdk-tmp"
+ mkdir -p "${dotnet_sdk_tmp_directory}" || die
+
+ # This should fix the "PackageVersions.props" problem,
+ # see below, in src_compile.
+ sed -e "s|/tmp|${dotnet_sdk_tmp_directory}|g" -i build.sh || die
+}
+
+src_compile() {
+ # Remove .NET leftover files that can be blocking the build.
+ # Keep this nonfatal!
+ local package_versions_path="/tmp/PackageVersions.props"
+ if [[ -f "${package_versions_path}" ]] ; then
+ rm "${package_versions_path}" ||
+ ewarn "Failed to remove ${package_versions_path}, build may fail!"
+ fi
+
+ # The "source_repository" should always be the same.
+ local source_repository="https://github.com/dotnet/dotnet"
+ local verbosity="${GENTOO_DOTNET_BUILD_VERBOSITY:-minimal}"
+
+ ebegin "Building the .NET SDK ${SDK_SLOT}"
+ local -a buildopts=(
+ --clean-while-building
+ --source-repository "${source_repository}"
+ --source-version "${COMMIT}"
+
+ --
+ -maxCpuCount:"$(makeopts_jobs)"
+ -verbosity:"${verbosity}"
+ -p:ContinueOnPrebuiltBaselineError=true
+ -p:LogVerbosity="${verbosity}"
+ -p:MinimalConsoleLogOutput=false
+ -p:verbosity="${verbosity}"
+ )
+ bash ./build.sh "${buildopts[@]}"
+ eend ${?} || die "build failed"
+}
+
+src_install() {
+ local dest="/usr/$(get_libdir)/${PN}-${SDK_SLOT}"
+ dodir "${dest}"
+
+ ebegin "Extracting the .NET SDK archive"
+ tar xzf artifacts/*/Release/${PN}-${SDK_SLOT}.*.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
+}