summaryrefslogtreecommitdiff
path: root/dev-dotnet
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-01-24 04:45:52 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-01-24 04:45:52 +0000
commit2fa0c8dbba3b2455531e5616eed64f2fe66cb58b (patch)
treee29569d7d1b5ed28ee38e5bd8c78df62da608d67 /dev-dotnet
parent87340091ed79698e591084bd7d9d76c58c94820b (diff)
gentoo auto-resync : 24:01:2024 - 04:45:52
Diffstat (limited to 'dev-dotnet')
-rw-r--r--dev-dotnet/Manifest.gzbin4130 -> 4125 bytes
-rw-r--r--dev-dotnet/dotnet-sdk-bin/Manifest8
-rw-r--r--dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-6.0.417-r1.ebuild69
-rw-r--r--dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-6.0.417-r2.ebuild142
-rw-r--r--dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-7.0.404-r2.ebuild (renamed from dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-7.0.404-r1.ebuild)76
-rw-r--r--dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-8.0.100-r2.ebuild (renamed from dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-8.0.100-r1.ebuild)76
-rw-r--r--dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-8.0.101-r1.ebuild (renamed from dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-8.0.101.ebuild)74
7 files changed, 367 insertions, 78 deletions
diff --git a/dev-dotnet/Manifest.gz b/dev-dotnet/Manifest.gz
index 65a7505f4dae..0ccad5a0ab33 100644
--- a/dev-dotnet/Manifest.gz
+++ b/dev-dotnet/Manifest.gz
Binary files differ
diff --git a/dev-dotnet/dotnet-sdk-bin/Manifest b/dev-dotnet/dotnet-sdk-bin/Manifest
index 8e79a04fc60a..764cb73e676d 100644
--- a/dev-dotnet/dotnet-sdk-bin/Manifest
+++ b/dev-dotnet/dotnet-sdk-bin/Manifest
@@ -22,8 +22,8 @@ DIST dotnet-sdk-8.0.101-linux-musl-arm.tar.gz 209611402 BLAKE2B d833a8bcf794e3ea
DIST dotnet-sdk-8.0.101-linux-musl-arm64.tar.gz 209818487 BLAKE2B ac7bb3babf4008a513b57c37d8f7b8e0bdf119e51ad9e42011aba7cfe6a32e11d8d9a0b2c835d25d39ad7a74302804ecb776acf0dafe134cf276eae86ba4ddf9 SHA512 796d9fa4fda9d7d0f014820e20a8bad63052ba5e15dcb4fcb44ce33438a1aa4cd5e2ea0ad4a538b07946302b9649638762e3bfaa22a70318f0f17bc50c105193
DIST dotnet-sdk-8.0.101-linux-musl-x64.tar.gz 214418879 BLAKE2B 981dab8fb6248749e34f7229cf0c3f3702908c6347e6cf2c266787913e79095af2acb81316a82ae55c74d4a34a4c782218c69e92ac6cf3ce6830350bc3f949c5 SHA512 95751235b774ed1050b721528495c1ba561c0bce99989a5fd6c0d0510b8b7d07a34ef186f347d16194b07d5ec4966ae8cb47aa7c1a65eebcea8a68fd90fb22e5
DIST dotnet-sdk-8.0.101-linux-x64.tar.gz 214222713 BLAKE2B 7b886f200ec07e6625ca004c7875a3a921d2e935c0767173821502c0d37974aecf89e4bbee62c44c83f49f306107189311d94a18f4265408acbcc708e5688984 SHA512 26df0151a3a59c4403b52ba0f0df61eaa904110d897be604f19dcaa27d50860c82296733329cb4a3cf20a2c2e518e8f5d5f36dfb7931bf714a45e46b11487c9a
-EBUILD dotnet-sdk-bin-6.0.417-r1.ebuild 1866 BLAKE2B b8aedd1961abda506adf2c08d76f6907745ace98bf70e17c5e762dcedbe0a018c730df0ef50e6c6e99abec23a3618ce39ce1f581780ef259477f4fc84a4330a0 SHA512 6baa6eaa710f93acb193bac76bb257dc53be1d5fb539a7bdc2d88562a0f612c542abc50d3b9df0ea9154a4f7957b1dc0265f4dbd311ba3fce56f1216f6076ec2
-EBUILD dotnet-sdk-bin-7.0.404-r1.ebuild 1949 BLAKE2B 59a97c598eb96c5ffb18babed5ad00d3bb92cd6fdb9fa87cc887c1bb66c6d7c12ad3afeeec74ac911419f6cbaa35d6b96dc587558bb5116e1564c64ed949ff6b SHA512 efcbcd3956378d30cf66f44be9ab94751eec3631e09950f89906153ff258682b46b92abb7431544ec5f2cf24d8e21aad627bf76d2f16e0fde4781d8ad9ac9517
-EBUILD dotnet-sdk-bin-8.0.100-r1.ebuild 1990 BLAKE2B 92fc043df2a2300d19c4851f8c801007ba46ed3aa5cc93c1e9e93164228bd567b27bb1288cd969a379aac3e45266e87ad978d259b14a01c391650af4a9a7b65d SHA512 96b0079e668018759a585681cbf746c374c0ea62ef7b6377e352be876b08e92f5121be3afd30a4ee23ad753f54d8f5a36f03cfc53821b64613370e17e51d73cc
-EBUILD dotnet-sdk-bin-8.0.101.ebuild 1993 BLAKE2B e34d21f517fe56758cdbe13962a67a975d2d30d97783a245aefa10d76cbf24bfe0cb7a5dadf098d7c01682708332e058890b13af031021d1f9a5534654a9068f SHA512 edb8bdb1569d46d38defcbc48c4dace2fbcc0338b508e7a01f2cf46f78b01751e8543c4ce5a256a863e5cd88a7f52bcbe28cf21bcb08ff45ef8ba87db511039f
+EBUILD dotnet-sdk-bin-6.0.417-r2.ebuild 3527 BLAKE2B 7b8591baf37564d7fc666cf5732da90f1b3fa1095bdd80bf81d345478794de1e8ca2a49409dfc7498a759b78d9d736344828abe2b4bda8aa2a4482a5a7785e1f SHA512 cd1e4225818f58dd0d4341c98db2037a47f5a9d76704d0cdbc01f288ee0cb6016afa5567a11277310d20d7169bedab1624d861dc3484a4d8b37e89f5a144c8ec
+EBUILD dotnet-sdk-bin-7.0.404-r2.ebuild 3569 BLAKE2B c67c8108f15b3b9fff9b1fc183beec2ff8ffe9f96b1f6684c8b3022a75983ed2b5162eba5f4621f272fc1b883a05b994257322edf7e19d7092a9bb5bde8f201c SHA512 3925db24d2d8914eee6d59c24b82ac945660cc1ffb3024af78cf78413c87b8c2fd9fa76757c60addb8601fbcd66563c95ef1c1628dff02828b2382ef9a40202f
+EBUILD dotnet-sdk-bin-8.0.100-r2.ebuild 3610 BLAKE2B b58403afd7ed2bc7832473b725e1f0edc983fa013d2eef16230598117d52b80e12e7ae28417b5fcc3fc916b6210941855332f495c397d3e41f6d9f061b58bd39 SHA512 5c1abbfba9c0bd7b8f21aa3c6a5ca3935d726d740e95694e85d08acebef1fbe62ceaf845995003793f31a4e894552d8c068f5647a8c5f44ffb7e834482379464
+EBUILD dotnet-sdk-bin-8.0.101-r1.ebuild 3613 BLAKE2B 14d6b2366c9189badd8d89eb6969396d672bbc31fe0379d3e9a38df8259581555cb4159d4c009dbcfaa707cce7afc48d3ee00f153a5075de5fbdc5a93d5921c8 SHA512 0b8ca4d5659e2bc865a08d71d6be6eb9c7b0a9050619e460efec1d0d9a05e7669060b14ea9a287ddd5553dafc13b650d429b64bc411afd00ad67f7c9b2fbdaba
MISC metadata.xml 399 BLAKE2B 77e69a42625154f791fdf1e9559921a4e7aa077e91f78d3ec52779818287d05612080ca21a4199a3531e8d1af34a78f362a07b3cd89cd027dc1f0b6cf84fbbdf SHA512 d0b85e5ea0a2a4aa361d21a81218ef5dd68f6d51972addc771681208342075a860436a135e8f219cb5b4424f8a40d1dace8260c6c0eb1da3ef1a0dd13811c1d0
diff --git a/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-6.0.417-r1.ebuild b/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-6.0.417-r1.ebuild
deleted file mode 100644
index 7c70a1e24b95..000000000000
--- a/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-6.0.417-r1.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DESCRIPTION=".NET is a free, cross-platform, open-source developer platform"
-HOMEPAGE="https://dotnet.microsoft.com/"
-SRC_URI="
-amd64? (
- elibc_glibc? ( https://dotnetcli.azureedge.net/dotnet/Sdk/${PV}/dotnet-sdk-${PV}-linux-x64.tar.gz )
- elibc_musl? ( https://dotnetcli.azureedge.net/dotnet/Sdk/${PV}/dotnet-sdk-${PV}-linux-musl-x64.tar.gz )
-)
-arm? (
- elibc_glibc? ( https://dotnetcli.azureedge.net/dotnet/Sdk/${PV}/dotnet-sdk-${PV}-linux-arm.tar.gz )
- elibc_musl? ( https://dotnetcli.azureedge.net/dotnet/Sdk/${PV}/dotnet-sdk-${PV}-linux-musl-arm.tar.gz )
-)
-arm64? (
- elibc_glibc? ( https://dotnetcli.azureedge.net/dotnet/Sdk/${PV}/dotnet-sdk-${PV}-linux-arm64.tar.gz )
- elibc_musl? ( https://dotnetcli.azureedge.net/dotnet/Sdk/${PV}/dotnet-sdk-${PV}-linux-musl-arm64.tar.gz )
-)
-"
-S="${WORKDIR}"
-
-SDK_SLOT="$(ver_cut 1-2)"
-RUNTIME_SLOT="${SDK_SLOT}.25"
-SLOT="${SDK_SLOT}/${RUNTIME_SLOT}"
-
-LICENSE="MIT"
-KEYWORDS="amd64 arm arm64"
-RESTRICT="splitdebug"
-
-RDEPEND="
- app-crypt/mit-krb5:0/0
- dev-libs/icu
- 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}
-"
-
-QA_PREBUILT="*"
-
-src_install() {
- local dest=opt/${PN}-${SDK_SLOT}
- dodir "${dest%/*}"
-
- # Create a magic workloads file, bug #841896
- local featureband="$(( $(ver_cut 3) / 100 * 100 ))" # e.g. 404 -> 400
- local workloads="metadata/workloads/${SDK_SLOT}.${featureband}"
-
- mkdir -p "${S}/${workloads}" || die
- touch "${S}/${workloads}/userlocal" || die
-
- mv "${S}" "${ED}/${dest}" || die
- mkdir "${S}" || die
-
- fperms 0755 "/${dest}"
- dosym ../../${dest}/dotnet /usr/bin/dotnet-bin-${SDK_SLOT}
-}
-
-pkg_postinst() {
- eselect dotnet update ifunset
-}
-
-pkg_postrm() {
- eselect dotnet update ifunset
-}
diff --git a/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-6.0.417-r2.ebuild b/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-6.0.417-r2.ebuild
new file mode 100644
index 000000000000..ff4d8c61be4f
--- /dev/null
+++ b/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-6.0.417-r2.ebuild
@@ -0,0 +1,142 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+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://dotnetcli.azureedge.net/dotnet/Sdk/${PV}/dotnet-sdk-${PV}-linux-x64.tar.gz )
+ elibc_musl? ( https://dotnetcli.azureedge.net/dotnet/Sdk/${PV}/dotnet-sdk-${PV}-linux-musl-x64.tar.gz )
+)
+arm? (
+ elibc_glibc? ( https://dotnetcli.azureedge.net/dotnet/Sdk/${PV}/dotnet-sdk-${PV}-linux-arm.tar.gz )
+ elibc_musl? ( https://dotnetcli.azureedge.net/dotnet/Sdk/${PV}/dotnet-sdk-${PV}-linux-musl-arm.tar.gz )
+)
+arm64? (
+ elibc_glibc? ( https://dotnetcli.azureedge.net/dotnet/Sdk/${PV}/dotnet-sdk-${PV}-linux-arm64.tar.gz )
+ elibc_musl? ( https://dotnetcli.azureedge.net/dotnet/Sdk/${PV}/dotnet-sdk-${PV}-linux-musl-arm64.tar.gz )
+)
+"
+S="${WORKDIR}"
+
+SDK_SLOT="$(ver_cut 1-2)"
+RUNTIME_SLOT="${SDK_SLOT}.25"
+SLOT="${SDK_SLOT}/${RUNTIME_SLOT}"
+
+LICENSE="MIT"
+KEYWORDS="amd64 arm arm64"
+RESTRICT="splitdebug"
+
+RDEPEND="
+ app-crypt/mit-krb5:0/0
+ dev-libs/icu
+ dev-util/lttng-ust:0/2.12
+ sys-libs/zlib:0/1
+"
+BDEPEND="
+ dev-util/patchelf
+"
+IDEPEND="
+ app-eselect/eselect-dotnet
+"
+PDEPEND="
+ ~dev-dotnet/dotnet-runtime-nugets-${RUNTIME_SLOT}
+"
+
+QA_PREBUILT="*"
+
+MUSL_BAD_LINKS=(
+ apphost
+ createdump
+ dotnet
+ 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
+ libdbgshim.so
+ libhostfxr.so
+ libhostpolicy.so
+ libmscordaccore.so
+ libmscordbi.so
+ libnethost.so
+ singlefilehost
+)
+MUSL_BAD_SONAMES=(
+ libc.musl-aarch64.so.1
+ libc.musl-armv7.so.1
+ libc.musl-x86_64.so.1
+)
+
+src_prepare() {
+ default
+
+ # Fix musl libc SONAME links, bug https://bugs.gentoo.org/894760
+ if use elibc_musl ; then
+ local musl_bad_link
+ local musl_bad_link_path
+ local musl_bad_soname
+
+ for musl_bad_link in "${MUSL_BAD_LINKS[@]}" ; do
+ while read -r musl_bad_link_path ; do
+ # Skip if file either does not end with ".so" or is not executable.
+ # Using "case" here for easier matching in case we have to add
+ # a special exception.
+ case "${musl_bad_link_path}" in
+ *.so )
+ :
+ ;;
+ * )
+ if [[ ! -x "${musl_bad_link_path}" ]] ; then
+ continue
+ fi
+ ;;
+ esac
+
+ einfo "Fixing musl libc link for ${musl_bad_link_path}"
+
+ for musl_bad_soname in "${MUSL_BAD_SONAMES[@]}" ; do
+ patchelf --remove-needed "${musl_bad_soname}" "${musl_bad_link_path}" || die
+ done
+
+ patchelf --add-needed libc.so "${musl_bad_link_path}" || die
+ done < <(find . -type f -name "${musl_bad_link}")
+ done
+ fi
+
+ # Remove static libraries, bug https://bugs.gentoo.org/825774
+ find ./packs -type f -name "libnethost.a" -delete || die
+}
+
+src_install() {
+ local dest="opt/${PN}-${SDK_SLOT}"
+ dodir "${dest%/*}"
+
+ # Create a magic workloads file, bug #841896
+ local featureband="$(( $(ver_cut 3) / 100 * 100 ))" # e.g. 404 -> 400
+ local workloads="metadata/workloads/${SDK_SLOT}.${featureband}"
+
+ mkdir -p "${S}/${workloads}" || die
+ touch "${S}/${workloads}/userlocal" || die
+
+ mv "${S}" "${ED}/${dest}" || die
+ mkdir "${S}" || die
+
+ fperms 0755 "/${dest}"
+ dosym "../../${dest}/dotnet" "/usr/bin/dotnet-bin-${SDK_SLOT}"
+}
+
+pkg_postinst() {
+ eselect dotnet update ifunset
+}
+
+pkg_postrm() {
+ eselect dotnet update ifunset
+}
diff --git a/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-7.0.404-r1.ebuild b/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-7.0.404-r2.ebuild
index e4fdeb830a53..ef7d6fbccea9 100644
--- a/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-7.0.404-r1.ebuild
+++ b/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-7.0.404-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -36,7 +36,12 @@ RDEPEND="
dev-util/lttng-ust:0/2.12
sys-libs/zlib:0/1
"
-IDEPEND="app-eselect/eselect-dotnet"
+BDEPEND="
+ dev-util/patchelf
+"
+IDEPEND="
+ app-eselect/eselect-dotnet
+"
PDEPEND="
~dev-dotnet/dotnet-runtime-nugets-${RUNTIME_SLOT}
~dev-dotnet/dotnet-runtime-nugets-6.0.25
@@ -44,6 +49,73 @@ PDEPEND="
QA_PREBUILT="*"
+MUSL_BAD_LINKS=(
+ apphost
+ createdump
+ dotnet
+ 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
+ libdbgshim.so
+ libhostfxr.so
+ libhostpolicy.so
+ libmscordaccore.so
+ libmscordbi.so
+ libnethost.so
+ singlefilehost
+)
+MUSL_BAD_SONAMES=(
+ libc.musl-aarch64.so.1
+ libc.musl-armv7.so.1
+ libc.musl-x86_64.so.1
+)
+
+src_prepare() {
+ default
+
+ # Fix musl libc SONAME links, bug https://bugs.gentoo.org/894760
+ if use elibc_musl ; then
+ local musl_bad_link
+ local musl_bad_link_path
+ local musl_bad_soname
+
+ for musl_bad_link in "${MUSL_BAD_LINKS[@]}" ; do
+ while read -r musl_bad_link_path ; do
+ # Skip if file either does not end with ".so" or is not executable.
+ # Using "case" here for easier matching in case we have to add
+ # a special exception.
+ case "${musl_bad_link_path}" in
+ *.so )
+ :
+ ;;
+ * )
+ if [[ ! -x "${musl_bad_link_path}" ]] ; then
+ continue
+ fi
+ ;;
+ esac
+
+ einfo "Fixing musl libc link for ${musl_bad_link_path}"
+
+ for musl_bad_soname in "${MUSL_BAD_SONAMES[@]}" ; do
+ patchelf --remove-needed "${musl_bad_soname}" "${musl_bad_link_path}" || die
+ done
+
+ patchelf --add-needed libc.so "${musl_bad_link_path}" || die
+ done < <(find . -type f -name "${musl_bad_link}")
+ done
+ fi
+
+ # Remove static libraries, bug https://bugs.gentoo.org/825774
+ find ./packs -type f -name "libnethost.a" -delete || die
+}
+
src_install() {
local dest="opt/${PN}-${SDK_SLOT}"
dodir "${dest%/*}"
diff --git a/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-8.0.100-r1.ebuild b/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-8.0.100-r2.ebuild
index f7f7511852a7..4b12b99a8b28 100644
--- a/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-8.0.100-r1.ebuild
+++ b/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-8.0.100-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -36,7 +36,12 @@ RDEPEND="
dev-util/lttng-ust:0/2.12
sys-libs/zlib:0/1
"
-IDEPEND="app-eselect/eselect-dotnet"
+BDEPEND="
+ dev-util/patchelf
+"
+IDEPEND="
+ app-eselect/eselect-dotnet
+"
PDEPEND="
~dev-dotnet/dotnet-runtime-nugets-${RUNTIME_SLOT}
~dev-dotnet/dotnet-runtime-nugets-6.0.25
@@ -45,6 +50,73 @@ PDEPEND="
QA_PREBUILT="*"
+MUSL_BAD_LINKS=(
+ apphost
+ createdump
+ dotnet
+ 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
+ libdbgshim.so
+ libhostfxr.so
+ libhostpolicy.so
+ libmscordaccore.so
+ libmscordbi.so
+ libnethost.so
+ singlefilehost
+)
+MUSL_BAD_SONAMES=(
+ libc.musl-aarch64.so.1
+ libc.musl-armv7.so.1
+ libc.musl-x86_64.so.1
+)
+
+src_prepare() {
+ default
+
+ # Fix musl libc SONAME links, bug https://bugs.gentoo.org/894760
+ if use elibc_musl ; then
+ local musl_bad_link
+ local musl_bad_link_path
+ local musl_bad_soname
+
+ for musl_bad_link in "${MUSL_BAD_LINKS[@]}" ; do
+ while read -r musl_bad_link_path ; do
+ # Skip if file either does not end with ".so" or is not executable.
+ # Using "case" here for easier matching in case we have to add
+ # a special exception.
+ case "${musl_bad_link_path}" in
+ *.so )
+ :
+ ;;
+ * )
+ if [[ ! -x "${musl_bad_link_path}" ]] ; then
+ continue
+ fi
+ ;;
+ esac
+
+ einfo "Fixing musl libc link for ${musl_bad_link_path}"
+
+ for musl_bad_soname in "${MUSL_BAD_SONAMES[@]}" ; do
+ patchelf --remove-needed "${musl_bad_soname}" "${musl_bad_link_path}" || die
+ done
+
+ patchelf --add-needed libc.so "${musl_bad_link_path}" || die
+ done < <(find . -type f -name "${musl_bad_link}")
+ done
+ fi
+
+ # Remove static libraries, bug https://bugs.gentoo.org/825774
+ find ./packs -type f -name "libnethost.a" -delete || die
+}
+
src_install() {
local dest="opt/${PN}-${SDK_SLOT}"
dodir "${dest%/*}"
diff --git a/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-8.0.101.ebuild b/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-8.0.101-r1.ebuild
index b40ba8fd8aa8..b00890c77647 100644
--- a/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-8.0.101.ebuild
+++ b/dev-dotnet/dotnet-sdk-bin/dotnet-sdk-bin-8.0.101-r1.ebuild
@@ -36,7 +36,12 @@ RDEPEND="
dev-util/lttng-ust:0/2.12
sys-libs/zlib:0/1
"
-IDEPEND="app-eselect/eselect-dotnet"
+BDEPEND="
+ dev-util/patchelf
+"
+IDEPEND="
+ app-eselect/eselect-dotnet
+"
PDEPEND="
~dev-dotnet/dotnet-runtime-nugets-${RUNTIME_SLOT}
~dev-dotnet/dotnet-runtime-nugets-6.0.26
@@ -45,6 +50,73 @@ PDEPEND="
QA_PREBUILT="*"
+MUSL_BAD_LINKS=(
+ apphost
+ createdump
+ dotnet
+ 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
+ libdbgshim.so
+ libhostfxr.so
+ libhostpolicy.so
+ libmscordaccore.so
+ libmscordbi.so
+ libnethost.so
+ singlefilehost
+)
+MUSL_BAD_SONAMES=(
+ libc.musl-aarch64.so.1
+ libc.musl-armv7.so.1
+ libc.musl-x86_64.so.1
+)
+
+src_prepare() {
+ default
+
+ # Fix musl libc SONAME links, bug https://bugs.gentoo.org/894760
+ if use elibc_musl ; then
+ local musl_bad_link
+ local musl_bad_link_path
+ local musl_bad_soname
+
+ for musl_bad_link in "${MUSL_BAD_LINKS[@]}" ; do
+ while read -r musl_bad_link_path ; do
+ # Skip if file either does not end with ".so" or is not executable.
+ # Using "case" here for easier matching in case we have to add
+ # a special exception.
+ case "${musl_bad_link_path}" in
+ *.so )
+ :
+ ;;
+ * )
+ if [[ ! -x "${musl_bad_link_path}" ]] ; then
+ continue
+ fi
+ ;;
+ esac
+
+ einfo "Fixing musl libc link for ${musl_bad_link_path}"
+
+ for musl_bad_soname in "${MUSL_BAD_SONAMES[@]}" ; do
+ patchelf --remove-needed "${musl_bad_soname}" "${musl_bad_link_path}" || die
+ done
+
+ patchelf --add-needed libc.so "${musl_bad_link_path}" || die
+ done < <(find . -type f -name "${musl_bad_link}")
+ done
+ fi
+
+ # Remove static libraries, bug https://bugs.gentoo.org/825774
+ find ./packs -type f -name "libnethost.a" -delete || die
+}
+
src_install() {
local dest="opt/${PN}-${SDK_SLOT}"
dodir "${dest%/*}"