commit:     8f3b3cc55dbc3e59b11f6849d3cba7e5c383f78e
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 17 22:30:46 2023 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Sat Nov 18 01:31:40 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8f3b3cc5

dev-dotnet/dotnet-sdk: bump to 8.0.100

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 dev-dotnet/dotnet-sdk/Manifest                  |   1 +
 dev-dotnet/dotnet-sdk/dotnet-sdk-8.0.100.ebuild | 144 ++++++++++++++++++++++++
 2 files changed, 145 insertions(+)

diff --git a/dev-dotnet/dotnet-sdk/Manifest b/dev-dotnet/dotnet-sdk/Manifest
index 165673a9a1fd..de96ef4dda73 100644
--- a/dev-dotnet/dotnet-sdk/Manifest
+++ b/dev-dotnet/dotnet-sdk/Manifest
@@ -1,2 +1,3 @@
 DIST dotnet-sdk-7.0.105-prepared-gentoo-amd64.tar.xz 1617916684 BLAKE2B 
729d2027e3c356581f7db763d7da09cba512a1a48ddf6492e632dd15eaa547efa8153abeec73c37b5e31e0b8d94c54e0495dd0e67dbe8d1592dbb93b5484e830
 SHA512 
f45366830435a3adb03221a684818337b3ad6af6b3d46edbf0a664af1c49e7b949c0d2c4507b61c767fdddfa492d32d341cd22e2e4ad28657504ed34757c6aff
 DIST dotnet-sdk-8.0.0_rc1234194-prepared-gentoo-amd64.tar.xz 1561594596 
BLAKE2B 
c4baf38371fc6f93255dd59a7e00d48dc456eb1c03c480375e37045d79feae26c7bb54d99d0c1660f440115bd6224df6f0b8a23cced7a687272f02d3eb8370a2
 SHA512 
9a75a83d10cce7fa5c887438e194f0b29baa79b56e7b97ba7f5b8b8a65b0e52a08b7cd9f7b7c3eb93cd1afb03c0eb2e1034b0577379e070cfb8ccf23cf9297f5
+DIST dotnet-sdk-8.0.100-prepared-gentoo-amd64.tar.xz 1714535960 BLAKE2B 
fd6027b86168d8801b1d8a7bbb08e9c358918a7693b03fa4e7e43e2a58568a65d71e2c5907ec7c7a03b83685608cd16aa010706fb4d14cd44ab0f0669654c8c2
 SHA512 
75efdcf44383445bc81981e2077be03c7311db316e295aa7f960f50d65367cde9bd86351f345072feb827a569c8de4fa8c9829d92000d2cbeb312ee9ddc17b44

diff --git a/dev-dotnet/dotnet-sdk/dotnet-sdk-8.0.100.ebuild 
b/dev-dotnet/dotnet-sdk/dotnet-sdk-8.0.100.ebuild
new file mode 100644
index 000000000000..3655919d6a68
--- /dev/null
+++ b/dev-dotnet/dotnet-sdk/dotnet-sdk-8.0.100.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Build the tarball:
+#   - "$" - shell command,
+#   - ">" - manual action.
+# $  git clone --depth 1 -b v8.0.0 https://github.com/dotnet/dotnet  \
+#           dotnet-sdk-8.0.0
+# $  cd dotnet-sdk-8.0.0
+# >  Note the checkout tag hash.
+# $  ./prep.sh
+# $  rm -fr .git
+# $  cd ..
+# $  tar --create --auto-compress --file  \
+#        dotnet-sdk-8.0.100-prepared-gentoo-amd64.tar.xz dotnet-sdk-8.0.0
+# >  Upload dotnet-sdk-8.0.0_rc1234194-prepared-gentoo-amd64.tar.xz
+
+EAPI=8
+
+COMMIT=113d797bc90104bb4f1cc51e1a462cf3d4ef18fc
+
+LLVM_MAX_SLOT=16
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit check-reqs llvm 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? ( 
https://dev.gentoo.org/~xgqt/distfiles/repackaged/${P}-prepared-gentoo-amd64.tar.xz
 )
+"
+
+SDK_SLOT="$(ver_cut 1-2)"
+RUNTIME_SLOT="${SDK_SLOT}.0"
+SLOT="${SDK_SLOT}/${RUNTIME_SLOT}"
+
+# SDK reports it is version "8.0.100" but the tag .NET SDK team had given
+# it is "8.0.100". I feel that the pattern is to tag based on "RUNTIME_SLOT".
+S="${WORKDIR}/${PN}-${RUNTIME_SLOT}"
+
+LICENSE="MIT"
+KEYWORDS="~amd64"
+
+CURRENT_NUGETS_DEPEND="
+       ~dev-dotnet/dotnet-runtime-nugets-${RUNTIME_SLOT}
+"
+EXTRA_NUGETS_DEPEND="
+       ~dev-dotnet/dotnet-runtime-nugets-3.1.32
+       ~dev-dotnet/dotnet-runtime-nugets-6.0.25
+       ~dev-dotnet/dotnet-runtime-nugets-7.0.14
+"
+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:0/2.12
+       sys-libs/zlib:0/1
+"
+BDEPEND="
+       ${PYTHON_DEPS}
+       <sys-devel/clang-$(( LLVM_MAX_SLOT + 1 ))
+       dev-util/cmake
+       dev-vcs/git
+"
+IDEPEND="
+       app-eselect/eselect-dotnet
+"
+PDEPEND="
+       ${NUGETS_DEPEND}
+"
+
+CHECKREQS_DISK_BUILD="20G"
+
+# QA_PREBUILT="*"  # TODO: Which binaries are created by dotnet itself?
+
+pkg_setup() {
+       check-reqs_pkg_setup
+       llvm_pkg_setup
+       python-any-r1_pkg_setup
+}
+
+src_prepare() {
+       default
+
+       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";
+
+       ebegin "Building the .NET SDK ${SDK_SLOT}"
+       bash ./build.sh                                                         
        \
+               --clean-while-building                                          
\
+               --source-repository "${source_repository}"      \
+               --source-version "${COMMIT}"
+       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
+}

Reply via email to