community/dotnet6-build: upgrade to 6.0.119
This commit is contained in:
parent
3602075a7f
commit
9319051878
3 changed files with 25 additions and 390 deletions
|
@ -18,9 +18,19 @@
|
||||||
# - CVE-2023-21808
|
# - CVE-2023-21808
|
||||||
# 6.0.116-r0:
|
# 6.0.116-r0:
|
||||||
# - CVE-2023-28260
|
# - CVE-2023-28260
|
||||||
|
# 6.0.118-r0:
|
||||||
|
# - CVE-2023-24895
|
||||||
|
# - CVE-2023-24897
|
||||||
|
# - CVE-2023-24936
|
||||||
|
# - CVE-2023-29331
|
||||||
|
# - CVE-2023-29337
|
||||||
|
# - CVE-2023-33126
|
||||||
|
# - CVE-2023-33128
|
||||||
|
# - CVE-2023-33135
|
||||||
|
|
||||||
|
|
||||||
pkgname=dotnet6-build
|
pkgname=dotnet6-build
|
||||||
pkgver=6.0.116
|
pkgver=6.0.119
|
||||||
pkgrel=0
|
pkgrel=0
|
||||||
_gittag=v$pkgver
|
_gittag=v$pkgver
|
||||||
_giturl="https://github.com/dotnet/installer"
|
_giturl="https://github.com/dotnet/installer"
|
||||||
|
@ -38,8 +48,6 @@ _patches="
|
||||||
roslyn_57003-mono-namedmutex.patch
|
roslyn_57003-mono-namedmutex.patch
|
||||||
runtime_76500-mono-musl-support.patch
|
runtime_76500-mono-musl-support.patch
|
||||||
runtime_82269-mono-thread-coop-undefine-fortify-source.patch
|
runtime_82269-mono-thread-coop-undefine-fortify-source.patch
|
||||||
runtime_84442-support-adding-rids-with-dash-in-base-part.patch
|
|
||||||
runtime_84443-suppress-clang-16-warnings.patch
|
|
||||||
runtime_enable-system-libunwind.diff
|
runtime_enable-system-libunwind.diff
|
||||||
runtime_remove-usage-of-off64-t.patch
|
runtime_remove-usage-of-off64-t.patch
|
||||||
sdk_14239-add-zsh-compdef-completion-script.patch
|
sdk_14239-add-zsh-compdef-completion-script.patch
|
||||||
|
@ -50,7 +58,7 @@ _pkgver_macro=${pkgver%.*}
|
||||||
_pkgver_prior=${pkgver%.*.*}
|
_pkgver_prior=${pkgver%.*.*}
|
||||||
_pkgver_name=${_pkgver_macro//[.0]}
|
_pkgver_name=${_pkgver_macro//[.0]}
|
||||||
pkgdesc="The .NET $_pkgver_macro bootstrap"
|
pkgdesc="The .NET $_pkgver_macro bootstrap"
|
||||||
arch="x86_64 aarch64 armv7 s390x"
|
arch="x86_64 aarch64 armv7"
|
||||||
url=https://dotnet.microsoft.com
|
url=https://dotnet.microsoft.com
|
||||||
license="MIT"
|
license="MIT"
|
||||||
# hack for dotnetx-build to be able to pull itself for bootstrapping
|
# hack for dotnetx-build to be able to pull itself for bootstrapping
|
||||||
|
@ -72,11 +80,12 @@ checkdepends="
|
||||||
which
|
which
|
||||||
"
|
"
|
||||||
makedepends="
|
makedepends="
|
||||||
|
alpine-release
|
||||||
bash
|
bash
|
||||||
clang
|
clang
|
||||||
cmake
|
cmake
|
||||||
dotnet$_pkgver_name-stage0-bootstrap
|
dotnet$_pkgver_name-bootstrap
|
||||||
dotnet$_pkgver_name-stage0-artifacts
|
dotnet$_pkgver_name-bootstrap-artifacts
|
||||||
dotnet$_pkgver_name-stage0
|
dotnet$_pkgver_name-stage0
|
||||||
findutils
|
findutils
|
||||||
git
|
git
|
||||||
|
@ -297,6 +306,15 @@ build() {
|
||||||
done
|
done
|
||||||
local args="$args /p:TargetRid=$ID.$VERSION_ID-$_dotnet_arch"
|
local args="$args /p:TargetRid=$ID.$VERSION_ID-$_dotnet_arch"
|
||||||
|
|
||||||
|
case "$CARCH" in
|
||||||
|
x86*) ;;
|
||||||
|
*)
|
||||||
|
# clang doesn't implement this outside of x86, and it causes a later configure to fail
|
||||||
|
export CFLAGS="${CFLAGS/-fstack-clash-protection}"
|
||||||
|
export CXXFLAGS="${CXXFLAGS/-fstack-clash-protection}"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
./build.sh \
|
./build.sh \
|
||||||
--with-sdk "$_cli_root" \
|
--with-sdk "$_cli_root" \
|
||||||
--with-packages "$_artifactsdir" \
|
--with-packages "$_artifactsdir" \
|
||||||
|
@ -525,7 +543,7 @@ doc() {
|
||||||
}
|
}
|
||||||
|
|
||||||
sha512sums="
|
sha512sums="
|
||||||
8c03186212149ba38df996068d511c29bd9be31e40fd1d7d21fc15fd2c0f6272479e8145ccb9544bb48c2c90bc8001ba05af1a7d92a60018ba7a983bc6187731 dotnet-v6.0.116.tar.xz
|
620c7467b320e111cbeeeabe0dd9beacaeda141975f36d9877c80b395b1e6986c0971c6b625b75826f6ed24b4fbf1a9acaaeb43cec80db866da9258cb154c720 dotnet-v6.0.119.tar.xz
|
||||||
e9f3df13d093fac214778c1137857e065f58d4e0d2a48d540d8ed7bb41e2fd73b2b3f62a0aa5b0e80fa80a5b58ba77ff19b9d10a492802f8539e3a6ed79d299d dotnet-testsuite-e1cc0f181ffd4d755756d30d985513897d592ba4.tar.gz
|
e9f3df13d093fac214778c1137857e065f58d4e0d2a48d540d8ed7bb41e2fd73b2b3f62a0aa5b0e80fa80a5b58ba77ff19b9d10a492802f8539e3a6ed79d299d dotnet-testsuite-e1cc0f181ffd4d755756d30d985513897d592ba4.tar.gz
|
||||||
fc281df5fcf0d31dc9ff7f5b0e870960cfbe3c4fa0f6a6bb50b22c4ee18d2c608c827205bc79bd7f686d77ac917582fc26f68432cdd86c4a33b910c0c7416d09 dotnet-bunny-71880bd94711519f7b786248a88a827a401207a2.tar.gz
|
fc281df5fcf0d31dc9ff7f5b0e870960cfbe3c4fa0f6a6bb50b22c4ee18d2c608c827205bc79bd7f686d77ac917582fc26f68432cdd86c4a33b910c0c7416d09 dotnet-bunny-71880bd94711519f7b786248a88a827a401207a2.tar.gz
|
||||||
bdbe798add3ded0c2cf361c9f5aa18fb3540e348e68a5695cbdb797be917f06d1bda69855cae2f36950e9506119e81165927787e13b80a17a1b647ef2c221916 build_14816-non-portable-build.patch
|
bdbe798add3ded0c2cf361c9f5aa18fb3540e348e68a5695cbdb797be917f06d1bda69855cae2f36950e9506119e81165927787e13b80a17a1b647ef2c221916 build_14816-non-portable-build.patch
|
||||||
|
@ -539,8 +557,6 @@ f4d27624f735ce77e0030fa791594fc12fb325a3ce8620791a7856bd5c0067a042df2196ec97ed4d
|
||||||
42779a7bf1004fe0f7054cfa4f09f49d7f2a57c0543ec994ffbd54fb349abb508295476098ed35d60e9676be8bcc15aa8a9ec5c814cd1e058357530b5cdfb2b6 roslyn_57003-mono-namedmutex.patch
|
42779a7bf1004fe0f7054cfa4f09f49d7f2a57c0543ec994ffbd54fb349abb508295476098ed35d60e9676be8bcc15aa8a9ec5c814cd1e058357530b5cdfb2b6 roslyn_57003-mono-namedmutex.patch
|
||||||
e67e0114bd324dae65eb19f6fa8c74414bee77cd30e299931b0d82b4ca1b6b6f88358a0c47ffb180f46c5cb28f61f79bb4a59d43c1ae3011bfe491e757de293a runtime_76500-mono-musl-support.patch
|
e67e0114bd324dae65eb19f6fa8c74414bee77cd30e299931b0d82b4ca1b6b6f88358a0c47ffb180f46c5cb28f61f79bb4a59d43c1ae3011bfe491e757de293a runtime_76500-mono-musl-support.patch
|
||||||
827e899a83103f666dc3d57c1ec695bebc659a574f4a1d754da0cafe8c18d7db79c3950267e905fa078f94612ee1101fbddd0ea62b3c08947d8bcd7d9c8de41c runtime_82269-mono-thread-coop-undefine-fortify-source.patch
|
827e899a83103f666dc3d57c1ec695bebc659a574f4a1d754da0cafe8c18d7db79c3950267e905fa078f94612ee1101fbddd0ea62b3c08947d8bcd7d9c8de41c runtime_82269-mono-thread-coop-undefine-fortify-source.patch
|
||||||
bfa4fca9987b4a1369e59abb3f872841ae994d47e5f873db43d9a0563f5e720cd85714e73aada912997da55077262e01f1ae120f8d32043d661ba89d12384caa runtime_84442-support-adding-rids-with-dash-in-base-part.patch
|
|
||||||
153255e80c2d2a131c2985041132417573ee98fa4b90153a1417080dbfb4d9bd03db9d5e241e54f5e664c4136eaf7facca9d4dad7ededf99a8f9068f26283fdb runtime_84443-suppress-clang-16-warnings.patch
|
|
||||||
91f237afe642d0170dbf0e9a2706a4145c937d9d869d22959acaf092f1fd11941144b2b1d041102abe7b70349dd5869d558896e9d13d01f176cace39b21ef1ef runtime_enable-system-libunwind.diff
|
91f237afe642d0170dbf0e9a2706a4145c937d9d869d22959acaf092f1fd11941144b2b1d041102abe7b70349dd5869d558896e9d13d01f176cace39b21ef1ef runtime_enable-system-libunwind.diff
|
||||||
d972e77df27748a80c9b23eca12f9fbd78be97f9034b79cc5703ba58eb6750171d9a115314300f883620ccbca89c65a99ca7a45d54a421b028b590190b4bed80 runtime_remove-usage-of-off64-t.patch
|
d972e77df27748a80c9b23eca12f9fbd78be97f9034b79cc5703ba58eb6750171d9a115314300f883620ccbca89c65a99ca7a45d54a421b028b590190b4bed80 runtime_remove-usage-of-off64-t.patch
|
||||||
d1b4ebcbb1a6815fc0ce4c471485c232618e60968a879309fb8336821a9351d2e0028d9f7726c0c041c750b497a0baa47400c78c9ceff550b91b4a6c2816fc41 sdk_14239-add-zsh-compdef-completion-script.patch
|
d1b4ebcbb1a6815fc0ce4c471485c232618e60968a879309fb8336821a9351d2e0028d9f7726c0c041c750b497a0baa47400c78c9ceff550b91b4a6c2816fc41 sdk_14239-add-zsh-compdef-completion-script.patch
|
||||||
|
|
|
@ -1,164 +0,0 @@
|
||||||
From abc761c2c5694e4029fea1a60dc1934951c66e26 Mon Sep 17 00:00:00 2001
|
|
||||||
Patch-Source: https://github.com/dotnet/runtime/pull/84442
|
|
||||||
From: Tom Deseyn <tom.deseyn@gmail.com>
|
|
||||||
Date: Thu, 6 Apr 2023 13:18:11 +0200
|
|
||||||
Subject: [PATCH 1/2] Microsoft.NETCore.Platforms: support adding rids with '-'
|
|
||||||
in the base part.
|
|
||||||
|
|
||||||
Currently when trying to add a rid like 'linux-musl-x64'
|
|
||||||
the rid is not understood to be base = 'linux-musl', arch = 'x64'.
|
|
||||||
|
|
||||||
Instead the parser considers a potential optional qualifier.
|
|
||||||
This causes the rid to be parsed as base = 'linux', arch = 'musl',
|
|
||||||
and qualifier = 'x64'.
|
|
||||||
|
|
||||||
We know the rids being added won't have a qualifier. If we take
|
|
||||||
this into account while parsing, we can parse the rid correctly.
|
|
||||||
---
|
|
||||||
.../Microsoft.NETCore.Platforms/src/RID.cs | 11 +++-
|
|
||||||
.../src/RuntimeGroupCollection.cs | 2 +-
|
|
||||||
.../tests/RidTests.cs | 50 +++++++++++++------
|
|
||||||
3 files changed, 47 insertions(+), 16 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/runtime/src/libraries/Microsoft.NETCore.Platforms/src/RID.cs b/src/runtime/src/libraries/Microsoft.NETCore.Platforms/src/RID.cs
|
|
||||||
index 6457fd29cadf0..b464d5f0f54e3 100644
|
|
||||||
--- a/src/runtime/src/libraries/Microsoft.NETCore.Platforms/src/RID.cs
|
|
||||||
+++ b/src/runtime/src/libraries/Microsoft.NETCore.Platforms/src/RID.cs
|
|
||||||
@@ -56,7 +56,7 @@ private enum RIDPart : int
|
|
||||||
Max = Qualifier
|
|
||||||
}
|
|
||||||
|
|
||||||
- public static RID Parse(string runtimeIdentifier)
|
|
||||||
+ public static RID Parse(string runtimeIdentifier, bool noQualifier)
|
|
||||||
{
|
|
||||||
string[] parts = new string[(int)RIDPart.Max + 1];
|
|
||||||
bool omitVersionDelimiter = true;
|
|
||||||
@@ -90,6 +90,15 @@ public static RID Parse(string runtimeIdentifier)
|
|
||||||
// version might be omitted
|
|
||||||
else if (current == ArchitectureDelimiter)
|
|
||||||
{
|
|
||||||
+ // The qualifier delimiter and architecture delimiter are the same.
|
|
||||||
+ // When there is no qualifier, there will be one delimiter past the base part
|
|
||||||
+ // for the architecture.
|
|
||||||
+ // So if we see another delimiter later in the string (for the architecture),
|
|
||||||
+ // extend the base part instead of starting the architecture part.
|
|
||||||
+ if (noQualifier && runtimeIdentifier.IndexOf(ArchitectureDelimiter, i + 1) != -1)
|
|
||||||
+ {
|
|
||||||
+ break;
|
|
||||||
+ }
|
|
||||||
// ensure there's no version later in the string
|
|
||||||
if (runtimeIdentifier.IndexOf(VersionDelimiter, i) != -1)
|
|
||||||
{
|
|
||||||
diff --git a/src/runtime/src/libraries/Microsoft.NETCore.Platforms/src/RuntimeGroupCollection.cs b/src/runtime/src/libraries/Microsoft.NETCore.Platforms/src/RuntimeGroupCollection.cs
|
|
||||||
index e069508053105..31009a8d28e5e 100644
|
|
||||||
--- a/src/runtime/src/libraries/Microsoft.NETCore.Platforms/src/RuntimeGroupCollection.cs
|
|
||||||
+++ b/src/runtime/src/libraries/Microsoft.NETCore.Platforms/src/RuntimeGroupCollection.cs
|
|
||||||
@@ -34,7 +34,7 @@ public RuntimeGroupCollection(ICollection<RuntimeGroup> runtimeGroups)
|
|
||||||
/// <param name="parent"></param>
|
|
||||||
public void AddRuntimeIdentifier(string runtimeIdentifier, string parent)
|
|
||||||
{
|
|
||||||
- RID rid = RID.Parse(runtimeIdentifier);
|
|
||||||
+ RID rid = RID.Parse(runtimeIdentifier, noQualifier: true);
|
|
||||||
|
|
||||||
AddRuntimeIdentifier(rid, parent);
|
|
||||||
}
|
|
||||||
diff --git a/src/runtime/src/libraries/Microsoft.NETCore.Platforms/tests/RidTests.cs b/src/runtime/src/libraries/Microsoft.NETCore.Platforms/tests/RidTests.cs
|
|
||||||
index 227bcbdd10d4d..8dee0ebeda17a 100644
|
|
||||||
--- a/src/runtime/src/libraries/Microsoft.NETCore.Platforms/tests/RidTests.cs
|
|
||||||
+++ b/src/runtime/src/libraries/Microsoft.NETCore.Platforms/tests/RidTests.cs
|
|
||||||
@@ -10,35 +10,57 @@ public class RidTests
|
|
||||||
{
|
|
||||||
public static IEnumerable<object[]> ValidRIDData()
|
|
||||||
{
|
|
||||||
- yield return new object[] { "win10-x64", new RID() { BaseRID = "win", OmitVersionDelimiter = true, Version = new RuntimeVersion("10"), Architecture = "x64" } };
|
|
||||||
- yield return new object[] { "win10", new RID() { BaseRID = "win", OmitVersionDelimiter = true, Version = new RuntimeVersion("10")} };
|
|
||||||
- yield return new object[] { "linux", new RID() { BaseRID = "linux" } };
|
|
||||||
- yield return new object[] { "linux-x64", new RID() { BaseRID = "linux", Architecture = "x64" } };
|
|
||||||
- yield return new object[] { "linux-x64", new RID() { BaseRID = "linux", Architecture = "x64" } };
|
|
||||||
- yield return new object[] { "debian.10-x64", new RID() { BaseRID = "debian", Version = new RuntimeVersion("10"), Architecture = "x64" } };
|
|
||||||
- yield return new object[] { "linuxmint.19.2-x64", new RID() { BaseRID = "linuxmint", Version = new RuntimeVersion("19.2"), Architecture = "x64" } };
|
|
||||||
- yield return new object[] { "ubuntu.14.04-x64", new RID() { BaseRID = "ubuntu", Version = new RuntimeVersion("14.04"), Architecture = "x64" } };
|
|
||||||
- yield return new object[] { "foo-bar.42-arm", new RID() { BaseRID = "foo-bar", Version = new RuntimeVersion("42"), Architecture = "arm" } };
|
|
||||||
- yield return new object[] { "foo-bar-arm", new RID() { BaseRID = "foo", Architecture = "bar", Qualifier = "arm" } }; // demonstrates ambiguity, avoid using `-` in base
|
|
||||||
- yield return new object[] { "linux-musl-x64", new RID() { BaseRID = "linux", Architecture = "musl", Qualifier = "x64" } }; // yes, we already have ambiguous RIDs
|
|
||||||
+ yield return new object[] { "win10-x64", new RID() { BaseRID = "win", OmitVersionDelimiter = true, Version = new RuntimeVersion("10"), Architecture = "x64" }, null };
|
|
||||||
+ yield return new object[] { "win10", new RID() { BaseRID = "win", OmitVersionDelimiter = true, Version = new RuntimeVersion("10")}, null };
|
|
||||||
+ yield return new object[] { "linux", new RID() { BaseRID = "linux" }, null };
|
|
||||||
+ yield return new object[] { "linux-x64", new RID() { BaseRID = "linux", Architecture = "x64" }, null };
|
|
||||||
+ yield return new object[] { "linux-x64", new RID() { BaseRID = "linux", Architecture = "x64" }, null };
|
|
||||||
+ yield return new object[] { "debian.10-x64", new RID() { BaseRID = "debian", Version = new RuntimeVersion("10"), Architecture = "x64" }, null };
|
|
||||||
+ yield return new object[] { "linuxmint.19.2-x64", new RID() { BaseRID = "linuxmint", Version = new RuntimeVersion("19.2"), Architecture = "x64" }, null };
|
|
||||||
+ yield return new object[] { "ubuntu.14.04-x64", new RID() { BaseRID = "ubuntu", Version = new RuntimeVersion("14.04"), Architecture = "x64" }, null };
|
|
||||||
+ yield return new object[] { "foo-bar.42-arm", new RID() { BaseRID = "foo-bar", Version = new RuntimeVersion("42"), Architecture = "arm" }, null };
|
|
||||||
+ yield return new object[] { "foo-bar-arm", new RID() { BaseRID = "foo", Architecture = "bar", Qualifier = "arm" }, // demonstrates ambiguity, avoid using `-` in base
|
|
||||||
+ new RID() { BaseRID = "foo-bar", Architecture = "arm" } };
|
|
||||||
+ yield return new object[] { "linux-musl-x64", new RID() { BaseRID = "linux", Architecture = "musl", Qualifier = "x64" }, // yes, we already have ambiguous RIDs
|
|
||||||
+ new RID() { BaseRID = "linux-musl", Architecture = "x64" } };
|
|
||||||
}
|
|
||||||
|
|
||||||
[Theory]
|
|
||||||
[MemberData(nameof(ValidRIDData))]
|
|
||||||
- internal void ParseCorrectly(string input, RID expected)
|
|
||||||
+ internal void ParseCorrectly(string input, RID expected, RID? expectedNoQualifier)
|
|
||||||
{
|
|
||||||
- RID actual = RID.Parse(input);
|
|
||||||
+ _ = expectedNoQualifier; // unused
|
|
||||||
+
|
|
||||||
+ RID actual = RID.Parse(input, noQualifier: false);
|
|
||||||
|
|
||||||
Assert.Equal(expected, actual);
|
|
||||||
}
|
|
||||||
|
|
||||||
[Theory]
|
|
||||||
[MemberData(nameof(ValidRIDData))]
|
|
||||||
- internal void ToStringAsExpected(string expected, RID rid)
|
|
||||||
+ internal void ParseCorrectlyNoQualifier(string input, RID expected, RID? expectedNoQualifier)
|
|
||||||
+ {
|
|
||||||
+ expectedNoQualifier ??= expected;
|
|
||||||
+
|
|
||||||
+ RID actual = RID.Parse(input, noQualifier: true);
|
|
||||||
+
|
|
||||||
+ Assert.Equal(expectedNoQualifier, actual);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ [Theory]
|
|
||||||
+ [MemberData(nameof(ValidRIDData))]
|
|
||||||
+ internal void ToStringAsExpected(string expected, RID rid, RID? expectedNoQualifierRid)
|
|
||||||
{
|
|
||||||
string actual = rid.ToString();
|
|
||||||
|
|
||||||
Assert.Equal(expected, actual);
|
|
||||||
+
|
|
||||||
+ if (expectedNoQualifierRid is not null)
|
|
||||||
+ {
|
|
||||||
+ actual = expectedNoQualifierRid.ToString();
|
|
||||||
+
|
|
||||||
+ Assert.Equal(expected, actual);
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
From f70da467ca94291039e0ea5b0723cb9db5e090e7 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Tom Deseyn <tom.deseyn@gmail.com>
|
|
||||||
Date: Thu, 6 Apr 2023 18:14:31 +0200
|
|
||||||
Subject: [PATCH 2/2] Update
|
|
||||||
src/libraries/Microsoft.NETCore.Platforms/src/RuntimeGroupCollection.cs
|
|
||||||
|
|
||||||
Co-authored-by: Eric StJohn <ericstj@microsoft.com>
|
|
||||||
---
|
|
||||||
.../Microsoft.NETCore.Platforms/src/RuntimeGroupCollection.cs | 1 +
|
|
||||||
1 file changed, 1 insertion(+)
|
|
||||||
|
|
||||||
diff --git a/src/runtime/src/libraries/Microsoft.NETCore.Platforms/src/RuntimeGroupCollection.cs b/src/runtime/src/libraries/Microsoft.NETCore.Platforms/src/RuntimeGroupCollection.cs
|
|
||||||
index 31009a8d28e5e..ec4762d71424c 100644
|
|
||||||
--- a/src/runtime/src/libraries/Microsoft.NETCore.Platforms/src/RuntimeGroupCollection.cs
|
|
||||||
+++ b/src/runtime/src/libraries/Microsoft.NETCore.Platforms/src/RuntimeGroupCollection.cs
|
|
||||||
@@ -34,6 +34,7 @@ public RuntimeGroupCollection(ICollection<RuntimeGroup> runtimeGroups)
|
|
||||||
/// <param name="parent"></param>
|
|
||||||
public void AddRuntimeIdentifier(string runtimeIdentifier, string parent)
|
|
||||||
{
|
|
||||||
+ // don't parse qualifier since we don't use them and they are ambiguous with `-` in base RID
|
|
||||||
RID rid = RID.Parse(runtimeIdentifier, noQualifier: true);
|
|
||||||
|
|
||||||
AddRuntimeIdentifier(rid, parent);
|
|
|
@ -1,217 +0,0 @@
|
||||||
From da120986f17d4016b44fdc91741ae1d999083eeb Mon Sep 17 00:00:00 2001
|
|
||||||
Patch-Source: https://github.com/dotnet/runtime/pull/84443
|
|
||||||
From: Antoine Martin <dev@ayakael.net>
|
|
||||||
Date: Thu, 6 Apr 2023 15:46:31 -0400
|
|
||||||
Subject: [PATCH 1/2] Suppress clang-16 warnings (#81573)
|
|
||||||
|
|
||||||
---
|
|
||||||
eng/native/configurecompiler.cmake | 9 +++++++++
|
|
||||||
eng/native/init-compiler.sh | 4 ++--
|
|
||||||
src/coreclr/dlls/mscordbi/CMakeLists.txt | 5 +----
|
|
||||||
src/coreclr/dlls/mscordbi/mscordbi.cpp | 15 +++++++++++++++
|
|
||||||
src/libraries/Native/Unix/CMakeLists.txt | 9 +++++++++
|
|
||||||
src/native/corehost/apphost/static/CMakeLists.txt | 4 ++--
|
|
||||||
.../apphost/static/singlefilehost_OSXexports.src | 11 -----------
|
|
||||||
.../apphost/static/singlefilehost_unixexports.src | 4 ----
|
|
||||||
8 files changed, 38 insertions(+), 23 deletions(-)
|
|
||||||
delete mode 100644 src/native/corehost/apphost/static/singlefilehost_OSXexports.src
|
|
||||||
|
|
||||||
diff --git a/src/runtime/eng/native/configurecompiler.cmake b/src/runtime/eng/native/configurecompiler.cmake
|
|
||||||
index f3526deb19fa0..1a43b710c618b 100644
|
|
||||||
--- a/src/runtime/eng/native/configurecompiler.cmake
|
|
||||||
+++ b/src/runtime/eng/native/configurecompiler.cmake
|
|
||||||
@@ -367,6 +367,15 @@ if (CLR_CMAKE_HOST_UNIX)
|
|
||||||
add_compile_options(-Wno-incompatible-ms-struct)
|
|
||||||
|
|
||||||
add_compile_options(-Wno-reserved-identifier)
|
|
||||||
+
|
|
||||||
+ # clang 16.0 introduced buffer hardening https://discourse.llvm.org/t/rfc-c-buffer-hardening/65734
|
|
||||||
+ # which we are not conforming to yet.
|
|
||||||
+ add_compile_options(-Wno-unsafe-buffer-usage)
|
|
||||||
+
|
|
||||||
+ # other clang 16.0 suppressions
|
|
||||||
+ add_compile_options(-Wno-single-bit-bitfield-constant-conversion)
|
|
||||||
+ add_compile_options(-Wno-cast-function-type-strict)
|
|
||||||
+ add_compile_options(-Wno-incompatible-function-pointer-types-strict)
|
|
||||||
else()
|
|
||||||
add_compile_options(-Wno-unknown-pragmas)
|
|
||||||
add_compile_options(-Wno-uninitialized)
|
|
||||||
diff --git a/src/runtime/eng/native/init-compiler.sh b/src/runtime/eng/native/init-compiler.sh
|
|
||||||
index 567d18da4747a..e215bd75ff158 100755
|
|
||||||
--- a/src/runtime/eng/native/init-compiler.sh
|
|
||||||
+++ b/src/runtime/eng/native/init-compiler.sh
|
|
||||||
@@ -46,8 +46,8 @@ if [[ -z "$CLR_CC" ]]; then
|
|
||||||
# Set default versions
|
|
||||||
if [[ -z "$majorVersion" ]]; then
|
|
||||||
# note: gcc (all versions) and clang versions higher than 6 do not have minor version in file name, if it is zero.
|
|
||||||
- if [[ "$compiler" == "clang" ]]; then versions=( 11 10 9 8 7 6.0 5.0 4.0 3.9 3.8 3.7 3.6 3.5 )
|
|
||||||
- elif [[ "$compiler" == "gcc" ]]; then versions=( 11 10 9 8 7 6 5 4.9 ); fi
|
|
||||||
+ if [[ "$compiler" == "clang" ]]; then versions=( 16 15 14 13 12 11 10 9 8 7 6.0 5.0 4.0 3.9 3.8 3.7 3.6 3.5 )
|
|
||||||
+ elif [[ "$compiler" == "gcc" ]]; then versions=( 12 11 10 9 8 7 6 5 4.9 ); fi
|
|
||||||
|
|
||||||
for version in "${versions[@]}"; do
|
|
||||||
parts=(${version//./ })
|
|
||||||
diff --git a/src/runtime/src/coreclr/dlls/mscordbi/CMakeLists.txt b/src/runtime/src/coreclr/dlls/mscordbi/CMakeLists.txt
|
|
||||||
index c7a23c9923fe1..4a03a788a71a5 100644
|
|
||||||
--- a/src/runtime/src/coreclr/dlls/mscordbi/CMakeLists.txt
|
|
||||||
+++ b/src/runtime/src/coreclr/dlls/mscordbi/CMakeLists.txt
|
|
||||||
@@ -99,10 +99,7 @@ elseif(CLR_CMAKE_HOST_UNIX)
|
|
||||||
mscordaccore
|
|
||||||
)
|
|
||||||
|
|
||||||
- # COREDBI_LIBRARIES is mentioned twice because ld is one pass linker and will not find symbols
|
|
||||||
- # if they are defined after they are used. Having all libs twice makes sure that ld will actually
|
|
||||||
- # find all symbols.
|
|
||||||
- target_link_libraries(mscordbi ${COREDBI_LIBRARIES} ${COREDBI_LIBRARIES})
|
|
||||||
+ target_link_libraries(mscordbi ${COREDBI_LIBRARIES})
|
|
||||||
|
|
||||||
add_dependencies(mscordbi mscordaccore)
|
|
||||||
|
|
||||||
diff --git a/src/runtime/src/coreclr/dlls/mscordbi/mscordbi.cpp b/src/runtime/src/coreclr/dlls/mscordbi/mscordbi.cpp
|
|
||||||
index afd2cfe800225..489c552a0bd3e 100644
|
|
||||||
--- a/src/runtime/src/coreclr/dlls/mscordbi/mscordbi.cpp
|
|
||||||
+++ b/src/runtime/src/coreclr/dlls/mscordbi/mscordbi.cpp
|
|
||||||
@@ -26,3 +26,18 @@ BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved)
|
|
||||||
// Defer to the main debugging code.
|
|
||||||
return DbgDllMain(hInstance, dwReason, lpReserved);
|
|
||||||
}
|
|
||||||
+
|
|
||||||
+#if defined(HOST_LINUX) && defined(TARGET_LINUX)
|
|
||||||
+PALIMPORT HINSTANCE PALAPI DAC_PAL_RegisterModule(IN LPCSTR lpLibFileName);
|
|
||||||
+PALIMPORT VOID PALAPI DAC_PAL_UnregisterModule(IN HINSTANCE hInstance);
|
|
||||||
+
|
|
||||||
+HINSTANCE PALAPI PAL_RegisterModule(IN LPCSTR lpLibFileName)
|
|
||||||
+{
|
|
||||||
+ return DAC_PAL_RegisterModule(lpLibFileName);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+VOID PALAPI PAL_UnregisterModule(IN HINSTANCE hInstance)
|
|
||||||
+{
|
|
||||||
+ DAC_PAL_UnregisterModule(hInstance);
|
|
||||||
+}
|
|
||||||
+#endif
|
|
||||||
diff --git a/src/runtime/src/libraries/Native/Unix/CMakeLists.txt b/src/runtime/src/libraries/Native/Unix/CMakeLists.txt
|
|
||||||
index 6931f62d24c87..e9ebefcf8243a 100644
|
|
||||||
--- a/src/runtime/src/libraries/Native/Unix/CMakeLists.txt
|
|
||||||
+++ b/src/runtime/src/libraries/Native/Unix/CMakeLists.txt
|
|
||||||
@@ -51,6 +51,15 @@ if(CMAKE_C_COMPILER_ID STREQUAL Clang)
|
|
||||||
add_compile_options(-Wthread-safety)
|
|
||||||
add_compile_options(-Wno-thread-safety-analysis)
|
|
||||||
add_compile_options(-Wno-reserved-identifier)
|
|
||||||
+
|
|
||||||
+ # clang 16.0 introduced buffer hardening https://discourse.llvm.org/t/rfc-c-buffer-hardening/65734
|
|
||||||
+ # which we are not conforming to yet.
|
|
||||||
+ add_compile_options(-Wno-unsafe-buffer-usage)
|
|
||||||
+
|
|
||||||
+ # other clang 16.0 suppressions
|
|
||||||
+ add_compile_options(-Wno-single-bit-bitfield-constant-conversion)
|
|
||||||
+ add_compile_options(-Wno-cast-function-type-strict)
|
|
||||||
+ add_compile_options(-Wno-incompatible-function-pointer-types-strict)
|
|
||||||
elseif(CMAKE_C_COMPILER_ID STREQUAL GNU)
|
|
||||||
add_compile_options(-Wno-stringop-truncation)
|
|
||||||
endif()
|
|
||||||
diff --git a/src/runtime/src/native/corehost/apphost/static/CMakeLists.txt b/src/runtime/src/native/corehost/apphost/static/CMakeLists.txt
|
|
||||||
index a00c79139863f..6d491c086da98 100644
|
|
||||||
--- a/src/runtime/src/native/corehost/apphost/static/CMakeLists.txt
|
|
||||||
+++ b/src/runtime/src/native/corehost/apphost/static/CMakeLists.txt
|
|
||||||
@@ -73,8 +73,8 @@ if(CLR_CMAKE_TARGET_WIN32)
|
|
||||||
add_linker_flag("/DEF:${CMAKE_CURRENT_SOURCE_DIR}/singlefilehost.def")
|
|
||||||
|
|
||||||
else()
|
|
||||||
- if(CLR_CMAKE_TARGET_OSX)
|
|
||||||
- set(DEF_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/singlefilehost_OSXexports.src)
|
|
||||||
+ if(CLR_CMAKE_TARGET_FREEBSD)
|
|
||||||
+ set(DEF_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/singlefilehost_freebsdexports.src)
|
|
||||||
else()
|
|
||||||
set(DEF_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/singlefilehost_unixexports.src)
|
|
||||||
endif()
|
|
||||||
diff --git a/src/runtime/src/native/corehost/apphost/static/singlefilehost_OSXexports.src b/src/runtime/src/native/corehost/apphost/static/singlefilehost_OSXexports.src
|
|
||||||
deleted file mode 100644
|
|
||||||
index 18d5697e84580..0000000000000
|
|
||||||
--- a/src/runtime/src/native/corehost/apphost/static/singlefilehost_OSXexports.src
|
|
||||||
+++ /dev/null
|
|
||||||
@@ -1,11 +0,0 @@
|
|
||||||
-; Licensed to the .NET Foundation under one or more agreements.
|
|
||||||
-; The .NET Foundation licenses this file to you under the MIT license.
|
|
||||||
-
|
|
||||||
-; needed by SOS
|
|
||||||
-DotNetRuntimeInfo
|
|
||||||
-
|
|
||||||
-; DAC table export
|
|
||||||
-g_dacTable
|
|
||||||
-
|
|
||||||
-; Used by profilers
|
|
||||||
-MetaDataGetDispenser
|
|
||||||
diff --git a/src/runtime/src/native/corehost/apphost/static/singlefilehost_unixexports.src b/src/runtime/src/native/corehost/apphost/static/singlefilehost_unixexports.src
|
|
||||||
index 1f9c517821855..18d5697e84580 100644
|
|
||||||
--- a/src/runtime/src/native/corehost/apphost/static/singlefilehost_unixexports.src
|
|
||||||
+++ b/src/runtime/src/native/corehost/apphost/static/singlefilehost_unixexports.src
|
|
||||||
@@ -9,7 +9,3 @@ g_dacTable
|
|
||||||
|
|
||||||
; Used by profilers
|
|
||||||
MetaDataGetDispenser
|
|
||||||
-
|
|
||||||
-; FreeBSD needs to reexport these
|
|
||||||
-__progname
|
|
||||||
-environ
|
|
||||||
|
|
||||||
From a6d9fbff551de1164ec9cc14bdd48f2ffad77d81 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Antoine Martin <dev@ayakael.net>
|
|
||||||
Date: Thu, 6 Apr 2023 16:39:27 -0400
|
|
||||||
Subject: [PATCH 2/2] Fix DBI loading problem on Linux (#82461)
|
|
||||||
|
|
||||||
---
|
|
||||||
src/coreclr/dlls/mscordbi/CMakeLists.txt | 16 +++++++++++++++-
|
|
||||||
src/coreclr/dlls/mscordbi/mscordbi.cpp | 15 ---------------
|
|
||||||
2 files changed, 15 insertions(+), 16 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/runtime/src/coreclr/dlls/mscordbi/CMakeLists.txt b/src/runtime/src/coreclr/dlls/mscordbi/CMakeLists.txt
|
|
||||||
index 4a03a788a71a5..b7618b324c260 100644
|
|
||||||
--- a/src/runtime/src/coreclr/dlls/mscordbi/CMakeLists.txt
|
|
||||||
+++ b/src/runtime/src/coreclr/dlls/mscordbi/CMakeLists.txt
|
|
||||||
@@ -99,7 +99,21 @@ elseif(CLR_CMAKE_HOST_UNIX)
|
|
||||||
mscordaccore
|
|
||||||
)
|
|
||||||
|
|
||||||
- target_link_libraries(mscordbi ${COREDBI_LIBRARIES})
|
|
||||||
+ # Before llvm 16, lld was setting `--undefined-version` by default. The default was
|
|
||||||
+ # flipped to `--no-undefined-version` in lld 16, so we will explicitly set it to
|
|
||||||
+ # `--undefined-version` for our use-case.
|
|
||||||
+ include(CheckLinkerFlag OPTIONAL)
|
|
||||||
+ if(COMMAND check_linker_flag)
|
|
||||||
+ check_linker_flag(CXX -Wl,--undefined-version LINKER_SUPPORTS_UNDEFINED_VERSION)
|
|
||||||
+ if (LINKER_SUPPORTS_UNDEFINED_VERSION)
|
|
||||||
+ add_linker_flag(-Wl,--undefined-version)
|
|
||||||
+ endif(LINKER_SUPPORTS_UNDEFINED_VERSION)
|
|
||||||
+ endif(COMMAND check_linker_flag)
|
|
||||||
+
|
|
||||||
+ # COREDBI_LIBRARIES is mentioned twice because ld is one pass linker and will not find symbols
|
|
||||||
+ # if they are defined after they are used. Having all libs twice makes sure that ld will actually
|
|
||||||
+ # find all symbols.
|
|
||||||
+ target_link_libraries(mscordbi ${COREDBI_LIBRARIES} ${COREDBI_LIBRARIES})
|
|
||||||
|
|
||||||
add_dependencies(mscordbi mscordaccore)
|
|
||||||
|
|
||||||
diff --git a/src/runtime/src/coreclr/dlls/mscordbi/mscordbi.cpp b/src/runtime/src/coreclr/dlls/mscordbi/mscordbi.cpp
|
|
||||||
index 489c552a0bd3e..afd2cfe800225 100644
|
|
||||||
--- a/src/runtime/src/coreclr/dlls/mscordbi/mscordbi.cpp
|
|
||||||
+++ b/src/runtime/src/coreclr/dlls/mscordbi/mscordbi.cpp
|
|
||||||
@@ -26,18 +26,3 @@ BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved)
|
|
||||||
// Defer to the main debugging code.
|
|
||||||
return DbgDllMain(hInstance, dwReason, lpReserved);
|
|
||||||
}
|
|
||||||
-
|
|
||||||
-#if defined(HOST_LINUX) && defined(TARGET_LINUX)
|
|
||||||
-PALIMPORT HINSTANCE PALAPI DAC_PAL_RegisterModule(IN LPCSTR lpLibFileName);
|
|
||||||
-PALIMPORT VOID PALAPI DAC_PAL_UnregisterModule(IN HINSTANCE hInstance);
|
|
||||||
-
|
|
||||||
-HINSTANCE PALAPI PAL_RegisterModule(IN LPCSTR lpLibFileName)
|
|
||||||
-{
|
|
||||||
- return DAC_PAL_RegisterModule(lpLibFileName);
|
|
||||||
-}
|
|
||||||
-
|
|
||||||
-VOID PALAPI PAL_UnregisterModule(IN HINSTANCE hInstance)
|
|
||||||
-{
|
|
||||||
- DAC_PAL_UnregisterModule(hInstance);
|
|
||||||
-}
|
|
||||||
-#endif
|
|
Loading…
Reference in a new issue