Enable ppc64le builds
Related: RHBZ#2134641
This commit is contained in:
parent
cf6db70319
commit
af83f1c400
1
.gitignore
vendored
1
.gitignore
vendored
@ -7,3 +7,4 @@
|
|||||||
/dotnet-v7.0.100-rc.2.22477.23-x64-bootstrap.tar.xz
|
/dotnet-v7.0.100-rc.2.22477.23-x64-bootstrap.tar.xz
|
||||||
/dotnet-arm64-prebuilts-2022-10-12.tar.gz
|
/dotnet-arm64-prebuilts-2022-10-12.tar.gz
|
||||||
/dotnet-s390x-prebuilts-2022-10-12.tar.gz
|
/dotnet-s390x-prebuilts-2022-10-12.tar.gz
|
||||||
|
/dotnet-ppc64le-prebuilts-2022-10-21.tar.gz
|
||||||
|
24
aspnetcore-44583-ppc64le-crossgen.patch
Normal file
24
aspnetcore-44583-ppc64le-crossgen.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
From d77f55bc7c5f6dd087113b6e93b7778d3ebcdbb4 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Sapana Khemkar <sapana.khemkar@ibm.com>
|
||||||
|
Date: Fri, 14 Oct 2022 05:44:54 +0000
|
||||||
|
Subject: [PATCH] add ppc64le arch to crossgen2 not available list
|
||||||
|
|
||||||
|
---
|
||||||
|
.../App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/aspnetcore/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj b/src/aspnetcore/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj
|
||||||
|
index c062788037..4dfa88f7d6 100644
|
||||||
|
--- a/src/aspnetcore/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj
|
||||||
|
+++ b//src/aspnetcore/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj
|
||||||
|
@@ -42,8 +42,8 @@ This package is an internal implementation of the .NET Core SDK and is not meant
|
||||||
|
<!-- Pack .ni.r2rmap files in symbols package (native symbols for Linux) -->
|
||||||
|
<AllowedOutputExtensionsInSymbolsPackageBuildOutputFolder>$(AllowedOutputExtensionsInSymbolsPackageBuildOutputFolder);.r2rmap</AllowedOutputExtensionsInSymbolsPackageBuildOutputFolder>
|
||||||
|
|
||||||
|
- <!-- Optimize the framework using the crossgen2 tool. Crossgen2 is not currently supported on s390x. -->
|
||||||
|
- <CrossgenOutput Condition=" '$(TargetArchitecture)' == 's390x' ">false</CrossgenOutput>
|
||||||
|
+ <!-- Optimize the framework using the crossgen2 tool. Crossgen2 is not currently supported on s390x or ppc64le or armv6. -->
|
||||||
|
+ <CrossgenOutput Condition=" '$(TargetArchitecture)' == 's390x' OR '$(TargetArchitecture)' == 'armv6' OR '$(TargetArchitecture)' == 'ppc64le' ">false</CrossgenOutput>
|
||||||
|
<CrossgenOutput Condition=" '$(CrossgenOutput)' == '' AND '$(Configuration)' != 'Debug' ">true</CrossgenOutput>
|
||||||
|
|
||||||
|
<!-- Produce crossgen2 profiling symbols (.ni.pdb or .r2rmap files). -->
|
@ -29,7 +29,7 @@
|
|||||||
%global use_bundled_libunwind 1
|
%global use_bundled_libunwind 1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%ifarch aarch64 s390x
|
%ifarch aarch64 ppc64le s390x
|
||||||
%global use_bundled_libunwind 1
|
%global use_bundled_libunwind 1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
@ -39,15 +39,20 @@
|
|||||||
%ifarch aarch64
|
%ifarch aarch64
|
||||||
%global runtime_arch arm64
|
%global runtime_arch arm64
|
||||||
%endif
|
%endif
|
||||||
|
%ifarch ppc64le
|
||||||
|
%global runtime_arch ppc64le
|
||||||
|
%endif
|
||||||
%ifarch s390x
|
%ifarch s390x
|
||||||
%global runtime_arch s390x
|
%global runtime_arch s390x
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
%global mono_archs s390x ppc64le
|
||||||
|
|
||||||
%{!?runtime_id:%global runtime_id %(. /etc/os-release ; echo "${ID}.${VERSION_ID%%.*}")-%{runtime_arch}}
|
%{!?runtime_id:%global runtime_id %(. /etc/os-release ; echo "${ID}.${VERSION_ID%%.*}")-%{runtime_arch}}
|
||||||
|
|
||||||
Name: dotnet7.0
|
Name: dotnet7.0
|
||||||
Version: %{sdk_rpm_version}
|
Version: %{sdk_rpm_version}
|
||||||
Release: 0.3.rc2%{?dist}
|
Release: 0.4.rc2%{?dist}
|
||||||
Summary: .NET Runtime and SDK
|
Summary: .NET Runtime and SDK
|
||||||
License: MIT and ASL 2.0 and BSD and LGPLv2+ and CC-BY and CC0 and MS-PL and EPL-1.0 and GPL+ and GPLv2 and ISC and OFL and zlib
|
License: MIT and ASL 2.0 and BSD and LGPLv2+ and CC-BY and CC0 and MS-PL and EPL-1.0 and GPL+ and GPLv2 and ISC and OFL and zlib
|
||||||
URL: https://github.com/dotnet/
|
URL: https://github.com/dotnet/
|
||||||
@ -59,7 +64,9 @@ Source0: dotnet-%{upstream_tag}-x64-bootstrap.tar.xz
|
|||||||
# Generated via ./build-arm64-bootstrap-tarball
|
# Generated via ./build-arm64-bootstrap-tarball
|
||||||
Source1: dotnet-arm64-prebuilts-2022-10-12.tar.gz
|
Source1: dotnet-arm64-prebuilts-2022-10-12.tar.gz
|
||||||
# Generated manually, same pattern as the arm64 tarball
|
# Generated manually, same pattern as the arm64 tarball
|
||||||
Source2: dotnet-s390x-prebuilts-2022-10-12.tar.gz
|
Source2: dotnet-ppc64le-prebuilts-2022-10-21.tar.gz
|
||||||
|
# Generated manually, same pattern as the arm64 tarball
|
||||||
|
Source3: dotnet-s390x-prebuilts-2022-10-12.tar.gz
|
||||||
%else
|
%else
|
||||||
# The source is generated on a Fedora box via:
|
# The source is generated on a Fedora box via:
|
||||||
# ./build-dotnet-tarball %%{upstream_tag}
|
# ./build-dotnet-tarball %%{upstream_tag}
|
||||||
@ -75,10 +82,25 @@ Patch1: runtime-76916-mono-s390x-opcheckthis.patch
|
|||||||
Patch2: vstest-4028-ppc64le.patch
|
Patch2: vstest-4028-ppc64le.patch
|
||||||
# https://github.com/microsoft/vstest/pull/4066
|
# https://github.com/microsoft/vstest/pull/4066
|
||||||
Patch3: vstest-4066-s390x-ppc64le.patch
|
Patch3: vstest-4066-s390x-ppc64le.patch
|
||||||
|
# https://github.com/dotnet/installer/pull/14631
|
||||||
|
Patch4: installer-14631-ppc64le.patch
|
||||||
|
# https://github.com/dotnet/installer/pull/14792
|
||||||
|
Patch5: installer-14792-mono.patch
|
||||||
|
# https://github.com/dotnet/aspnetcore/pull/44583
|
||||||
|
Patch6: aspnetcore-44583-ppc64le-crossgen.patch
|
||||||
|
# https://github.com/dotnet/runtime/pull/77269
|
||||||
|
Patch7: runtime-77269-mono-ppc64le-opcheckthis.patch
|
||||||
|
# https://github.com/dotnet/runtime/pull/77270
|
||||||
|
Patch8: runtime-77270-ppc64le-fsharp-crash.patch
|
||||||
|
# https://github.com/dotnet/runtime/pull/77308
|
||||||
|
Patch9: runtime-77308-ppc64le-delegate.patch
|
||||||
|
# Disable apphost; there's no net6.0 apphost for ppc64le
|
||||||
|
Patch10: roslyn-analyzers-ppc64le-apphost.patch
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
%if 0%{?fedora} || 0%{?rhel} >= 8
|
%if 0%{?fedora} || 0%{?rhel} >= 8
|
||||||
ExclusiveArch: aarch64 x86_64 s390x
|
ExclusiveArch: aarch64 ppc64le s390x x86_64
|
||||||
%else
|
%else
|
||||||
ExclusiveArch: x86_64
|
ExclusiveArch: x86_64
|
||||||
%endif
|
%endif
|
||||||
@ -336,6 +358,20 @@ These are not meant for general use.
|
|||||||
%prep
|
%prep
|
||||||
%if %{without bootstrap}
|
%if %{without bootstrap}
|
||||||
%setup -q -n dotnet-%{upstream_tag}
|
%setup -q -n dotnet-%{upstream_tag}
|
||||||
|
|
||||||
|
# Remove all prebuilts
|
||||||
|
find -iname '*.dll' -type f -delete
|
||||||
|
find -iname '*.so' -type f -delete
|
||||||
|
find -iname '*.tar.gz' -type f -delete
|
||||||
|
find -iname '*.nupkg' -type f -delete
|
||||||
|
find -iname '*.zip' -type f -delete
|
||||||
|
|
||||||
|
rm -rf .dotnet/
|
||||||
|
rm -rf packages/source-built
|
||||||
|
|
||||||
|
mkdir -p packages/archive
|
||||||
|
ln -s %{_libdir}/dotnet/source-built-artifacts/Private.SourceBuilt.Artifacts.*.tar.gz packages/archive/
|
||||||
|
|
||||||
%else
|
%else
|
||||||
|
|
||||||
%setup -q -T -b 0 -n dotnet-%{upstream_tag}-x64-bootstrap
|
%setup -q -T -b 0 -n dotnet-%{upstream_tag}-x64-bootstrap
|
||||||
@ -346,32 +382,48 @@ rm -rf .dotnet
|
|||||||
%ifarch aarch64
|
%ifarch aarch64
|
||||||
tar -x --strip-components=1 -f %{SOURCE1} -C packages/prebuilt
|
tar -x --strip-components=1 -f %{SOURCE1} -C packages/prebuilt
|
||||||
%endif
|
%endif
|
||||||
%ifarch s390x
|
%ifarch ppc64le
|
||||||
tar -x --strip-components=1 -f %{SOURCE2} -C packages/prebuilt
|
tar -x --strip-components=1 -f %{SOURCE2} -C packages/prebuilt
|
||||||
%endif
|
%endif
|
||||||
|
%ifarch s390x
|
||||||
|
tar -x --strip-components=1 -f %{SOURCE3} -C packages/prebuilt
|
||||||
|
%endif
|
||||||
|
|
||||||
mkdir -p .dotnet
|
mkdir -p .dotnet
|
||||||
tar xf packages/prebuilt/dotnet-sdk*.tar.gz -C .dotnet/
|
tar xf packages/prebuilt/dotnet-sdk*.tar.gz -C .dotnet/
|
||||||
rm packages/prebuilt/dotnet-sdk*.tar.gz
|
rm packages/prebuilt/dotnet-sdk*.tar.gz
|
||||||
|
|
||||||
boot_sdk_version=$(ls -1 .dotnet/sdk/)
|
boot_sdk_version=$(ls -1 .dotnet/sdk/)
|
||||||
sed -i -E 's|"dotnet": "[^"]+"|"dotnet" : "'$boot_sdk_version'"|' global.json
|
sed -i -E 's|"dotnet": "[^"]+"|"dotnet" : "'$boot_sdk_version'"|' global.json
|
||||||
|
|
||||||
|
%ifarch ppc64le s390x
|
||||||
|
ilasm_version=$(ls packages/prebuilt| grep -i ilasm | tr 'A-Z' 'a-z' | sed -E 's|runtime.linux-'%{runtime_arch}'.microsoft.netcore.ilasm.||' | sed -E 's|.nupkg$||')
|
||||||
|
echo $ilasm_version
|
||||||
|
|
||||||
|
mkdir -p packages-customized-local
|
||||||
|
pushd packages-customized-local
|
||||||
|
tar xf ../packages/archive/Private.SourceBuilt.Artifacts.*.tar.gz
|
||||||
|
sed -i -E 's|<MicrosoftNETCoreILAsmVersion>[^<]+</MicrosoftNETCoreILAsmVersion>|<MicrosoftNETCoreILAsmVersion>'$ilasm_version'</MicrosoftNETCoreILAsmVersion>|' PackageVersions.props
|
||||||
|
sed -i -E 's|<MicrosoftNETCoreILDAsmVersion>[^<]+</MicrosoftNETCoreILDAsmVersion>|<MicrosoftNETCoreILDAsmVersion>'$ilasm_version'</MicrosoftNETCoreILDAsmVersion>|' PackageVersions.props
|
||||||
|
tar czf ../packages/archive/Private.SourceBuilt.Artifacts.*.tar.gz *
|
||||||
|
popd
|
||||||
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if %{without bootstrap}
|
|
||||||
# Remove all prebuilts
|
|
||||||
find -iname '*.dll' -type f -delete
|
|
||||||
find -iname '*.so' -type f -delete
|
|
||||||
find -iname '*.tar.gz' -type f -delete
|
|
||||||
find -iname '*.nupkg' -type f -delete
|
|
||||||
find -iname '*.zip' -type f -delete
|
|
||||||
rm -rf .dotnet/
|
|
||||||
rm -rf packages/source-built
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%patch1 -p1
|
%patch1 -p1
|
||||||
%patch2 -p1
|
%patch2 -p1
|
||||||
%patch3 -p1
|
%patch3 -p1
|
||||||
|
%patch4 -p1
|
||||||
|
%patch5 -p1
|
||||||
|
%patch6 -p1
|
||||||
|
%patch7 -p1
|
||||||
|
%patch8 -p1
|
||||||
|
%patch9 -p1
|
||||||
|
%patch10 -p1
|
||||||
|
|
||||||
# Fix bad hardcoded path in build
|
# Fix bad hardcoded path in build
|
||||||
sed -i 's|/usr/share/dotnet|%{_libdir}/dotnet|' src/runtime/src/native/corehost/hostmisc/pal.unix.cpp
|
sed -i 's|/usr/share/dotnet|%{_libdir}/dotnet|' src/runtime/src/native/corehost/hostmisc/pal.unix.cpp
|
||||||
@ -446,7 +498,9 @@ export DOTNET_NUGET_SIGNATURE_VERIFICATION=false
|
|||||||
VERBOSE=1 ./build.sh \
|
VERBOSE=1 ./build.sh \
|
||||||
%if %{without bootstrap}
|
%if %{without bootstrap}
|
||||||
--with-sdk previously-built-dotnet \
|
--with-sdk previously-built-dotnet \
|
||||||
--with-packages %{_libdir}/dotnet/source-built-artifacts/Private.SourceBuilt.Artifacts.*.tar.gz
|
%endif
|
||||||
|
%ifarch %{mono_archs}
|
||||||
|
--use-mono-runtime \
|
||||||
%endif
|
%endif
|
||||||
-- \
|
-- \
|
||||||
/p:MinimalConsoleLogOutput=false \
|
/p:MinimalConsoleLogOutput=false \
|
||||||
@ -596,6 +650,10 @@ export COMPlus_LTTng=0
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Oct 24 2022 Omair Majid <omajid@redhat.com> - 7.0.100-0.4.rc2
|
||||||
|
- Enable ppc64le builds
|
||||||
|
- Related: RHBZ#2134641
|
||||||
|
|
||||||
* Thu Oct 13 2022 Omair Majid <omajid@redhat.com> - 7.0.100-0.3.rc2
|
* Thu Oct 13 2022 Omair Majid <omajid@redhat.com> - 7.0.100-0.3.rc2
|
||||||
- Update to .NET 7 RC 2
|
- Update to .NET 7 RC 2
|
||||||
- Resolves: RHBZ#2134641
|
- Resolves: RHBZ#2134641
|
||||||
|
98
installer-14631-ppc64le.patch
Normal file
98
installer-14631-ppc64le.patch
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
From 564e481e39511d214d0d26dd902022decd0d93ea Mon Sep 17 00:00:00 2001
|
||||||
|
From: Swapnali911 <Swapnali.Pawar1@ibm.com>
|
||||||
|
Date: Fri, 30 Sep 2022 05:07:55 -0400
|
||||||
|
Subject: [PATCH] Adding ppc64le arch for source build
|
||||||
|
|
||||||
|
---
|
||||||
|
Directory.Build.props | 1 +
|
||||||
|
src/SourceBuild/tarball/content/Directory.Build.props | 1 +
|
||||||
|
src/redist/targets/Crossgen.targets | 4 ++--
|
||||||
|
src/redist/targets/GenerateBundledVersions.targets | 9 ++++++---
|
||||||
|
4 files changed, 10 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Directory.Build.props b/Directory.Build.props
|
||||||
|
index 61cc6ff6746..860785575f7 100644
|
||||||
|
--- a/Directory.Build.props
|
||||||
|
+++ b/Directory.Build.props
|
||||||
|
@@ -19,6 +19,7 @@
|
||||||
|
<BuildArchitecture>$([System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture.ToString().ToLowerInvariant())</BuildArchitecture>
|
||||||
|
<Platform Condition="'$(Platform)' == '' AND '$(BuildArchitecture)' == 'arm64'">$(BuildArchitecture)</Platform>
|
||||||
|
<Platform Condition="'$(Platform)' == '' AND '$(BuildArchitecture)' == 's390x'">$(BuildArchitecture)</Platform>
|
||||||
|
+ <Platform Condition="'$(Platform)' == '' AND '$(BuildArchitecture)' == 'ppc64le'">$(BuildArchitecture)</Platform>
|
||||||
|
<Platform Condition="'$(Platform)' == ''">x64</Platform>
|
||||||
|
|
||||||
|
<UseStableVersions Condition="'$(UseStableVersions)' == ''">false</UseStableVersions>
|
||||||
|
diff --git a/src/installer/Directory.Build.props b/src/installer/Directory.Build.props
|
||||||
|
index 15c9d27b734..b87eeccca0d 100644
|
||||||
|
--- a/src/installer/Directory.Build.props
|
||||||
|
+++ b/src/installer/Directory.Build.props
|
||||||
|
@@ -11,6 +11,7 @@
|
||||||
|
<BuildArchitecture>$([System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture.ToString().ToLowerInvariant())</BuildArchitecture>
|
||||||
|
<Architecture Condition="'$(Architecture)' == '' AND '$(BuildArchitecture)' == 'arm64'">$(BuildArchitecture)</Architecture>
|
||||||
|
<Architecture Condition="'$(Architecture)' == '' AND '$(BuildArchitecture)' == 's390x'">$(BuildArchitecture)</Architecture>
|
||||||
|
+ <Architecture Condition="'$(Architecture)' == '' AND '$(BuildArchitecture)' == 'ppc64le'">$(BuildArchitecture)</Architecture>
|
||||||
|
<Architecture Condition="'$(Architecture)' == ''">x64</Architecture>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(PgoInstrument)' == 'true'">
|
||||||
|
diff --git a/src/installer/src/redist/targets/Crossgen.targets b/src/installer/src/redist/targets/Crossgen.targets
|
||||||
|
index c7a7642e4eb..da7d186a152 100644
|
||||||
|
--- a/src/installer/src/redist/targets/Crossgen.targets
|
||||||
|
+++ b/src/installer/src/redist/targets/Crossgen.targets
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
<Project>
|
||||||
|
- <!-- Crossgen is currently not supported on the s390x architecture. -->
|
||||||
|
+ <!-- Crossgen is currently not supported on the s390x, ppc64le architecture as using mono instead of CoreCLR. -->
|
||||||
|
<Target Name="CrossgenLayout"
|
||||||
|
- Condition="'$(DISABLE_CROSSGEN)' == '' AND '$(Architecture)' != 's390x'"
|
||||||
|
+ Condition="'$(DISABLE_CROSSGEN)' == '' AND '$(Architecture)' != 's390x' AND '$(Architecture)' != 'ppc64le'"
|
||||||
|
DependsOnTargets="SetSdkBrandingInfo">
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
diff --git a/src/installer/src/redist/targets/GenerateBundledVersions.targets b/src/installer/src/redist/targets/GenerateBundledVersions.targets
|
||||||
|
index d1bee676355..58d1abfa720 100644
|
||||||
|
--- a/src/installer/src/redist/targets/GenerateBundledVersions.targets
|
||||||
|
+++ b/src/installer/src/redist/targets/GenerateBundledVersions.targets
|
||||||
|
@@ -168,6 +168,7 @@
|
||||||
|
linux-bionic-arm64;
|
||||||
|
linux-bionic-x64;
|
||||||
|
linux-bionic-x86;
|
||||||
|
+ linux-ppc64le;
|
||||||
|
"/>
|
||||||
|
|
||||||
|
<Net70RuntimePackRids Include="
|
||||||
|
@@ -176,6 +177,7 @@
|
||||||
|
linux-bionic-arm64;
|
||||||
|
linux-bionic-x64;
|
||||||
|
linux-bionic-x86;
|
||||||
|
+ linux-ppc64le;
|
||||||
|
" />
|
||||||
|
|
||||||
|
<NetCoreAppHostRids Include="
|
||||||
|
@@ -254,7 +256,8 @@
|
||||||
|
|
||||||
|
<AspNetCore31RuntimePackRids Include="@(AspNetCore30RuntimePackRids)" />
|
||||||
|
<AspNetCore50RuntimePackRids Include="@(AspNetCore31RuntimePackRids);linux-musl-arm;win-arm64" />
|
||||||
|
- <AspNetCoreRuntimePackRids Include="@(AspNetCore50RuntimePackRids);osx-arm64;linux-s390x" />
|
||||||
|
+ <AspNetCore60RuntimePackRids Include="@(AspNetCore50RuntimePackRids);osx-arm64;linux-s390x" />
|
||||||
|
+ <AspNetCore70RuntimePackRids Include="@(AspNetCore60RuntimePackRids);linux-ppc64le" />
|
||||||
|
|
||||||
|
<WindowsDesktop30RuntimePackRids Include="win-x64;win-x86" />
|
||||||
|
<WindowsDesktop31RuntimePackRids Include="@(WindowsDesktop30RuntimePackRids)" />
|
||||||
|
@@ -444,7 +447,7 @@ Copyright (c) .NET Foundation. All rights reserved.
|
||||||
|
TargetingPackName="Microsoft.AspNetCore.App.Ref"
|
||||||
|
TargetingPackVersion="$(MicrosoftAspNetCoreAppRefPackageVersion)"
|
||||||
|
RuntimePackNamePatterns="Microsoft.AspNetCore.App.Runtime.**RID**"
|
||||||
|
- RuntimePackRuntimeIdentifiers="@(AspNetCoreRuntimePackRids, '%3B')"
|
||||||
|
+ RuntimePackRuntimeIdentifiers="@(AspNetCore70RuntimePackRids, '%3B')"
|
||||||
|
RuntimePackExcludedRuntimeIdentifiers="android"
|
||||||
|
/>
|
||||||
|
|
||||||
|
@@ -569,7 +572,7 @@ Copyright (c) .NET Foundation. All rights reserved.
|
||||||
|
TargetingPackName="Microsoft.AspNetCore.App.Ref"
|
||||||
|
TargetingPackVersion="$(_AspNet60TargetingPackVersion)"
|
||||||
|
RuntimePackNamePatterns="Microsoft.AspNetCore.App.Runtime.**RID**"
|
||||||
|
- RuntimePackRuntimeIdentifiers="@(AspNetCoreRuntimePackRids, '%3B')"
|
||||||
|
+ RuntimePackRuntimeIdentifiers="@(AspNetCore60RuntimePackRids, '%3B')"
|
||||||
|
/>
|
||||||
|
|
||||||
|
<KnownFrameworkReference Include="Microsoft.Windows.SDK.NET.Ref"
|
432
installer-14792-mono.patch
Normal file
432
installer-14792-mono.patch
Normal file
@ -0,0 +1,432 @@
|
|||||||
|
Please note that the paths in this patch have been manually modified so
|
||||||
|
we can apply it against an already-built tarball.
|
||||||
|
|
||||||
|
From 9a7d07ab5a163b75a7b82cf8883d32553f34dcdb Mon Sep 17 00:00:00 2001
|
||||||
|
From: Tom Deseyn <tom.deseyn@gmail.com>
|
||||||
|
Date: Wed, 19 Oct 2022 15:21:40 +0200
|
||||||
|
Subject: [PATCH] Enabled source-building with mono runtime on any
|
||||||
|
architecture.
|
||||||
|
|
||||||
|
Adds an argument to the top-level build script to use the mono
|
||||||
|
runtime, and sets the flags needed for the different repos
|
||||||
|
to work with mono.
|
||||||
|
---
|
||||||
|
eng/SourceBuild.props | 1 +
|
||||||
|
.../tarball/content/Directory.Build.props | 5 ++
|
||||||
|
src/SourceBuild/tarball/content/build.sh | 4 ++
|
||||||
|
.../content/repos/Directory.Build.props | 1 +
|
||||||
|
...d-support-building-with-mono-runtime.patch | 24 +++++++++
|
||||||
|
...d-support-building-with-mono-runtime.patch | 24 +++++++++
|
||||||
|
...d-support-building-with-mono-runtime.patch | 51 +++++++++++++++++++
|
||||||
|
7 files changed, 110 insertions(+)
|
||||||
|
create mode 100644 src/SourceBuild/tarball/patches/aspnetcore/0002-source-build-support-building-with-mono-runtime.patch
|
||||||
|
create mode 100644 src/SourceBuild/tarball/patches/runtime/0001-source-build-support-building-with-mono-runtime.patch
|
||||||
|
create mode 100644 src/SourceBuild/tarball/patches/sdk/0001-source-build-support-building-with-mono-runtime.patch
|
||||||
|
|
||||||
|
diff --git a/eng/SourceBuild.props b/eng/SourceBuild.props
|
||||||
|
index a2831d57455..9ebca97ff90 100644
|
||||||
|
--- a/src/installer/eng/SourceBuild.props
|
||||||
|
+++ b/src/installer/eng/SourceBuild.props
|
||||||
|
@@ -11,6 +11,7 @@
|
||||||
|
<InnerBuildArgs>$(InnerBuildArgs) /p:IncludeNuGetPackageArchive=false</InnerBuildArgs>
|
||||||
|
<InnerBuildArgs>$(InnerBuildArgs) /p:IncludeAdditionalSharedFrameworks=false</InnerBuildArgs>
|
||||||
|
<InnerBuildArgs>$(InnerBuildArgs) /p:IncludeSharedFrameworksForBackwardsCompatibilityTests=false</InnerBuildArgs>
|
||||||
|
+ <InnerBuildArgs Condition="'$(SourceBuildUseMonoRuntime)' == 'true'">$(InnerBuildArgs) /p:DISABLE_CROSSGEN=true</InnerBuildArgs>
|
||||||
|
</PropertyGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
diff --git a/Directory.Build.props b/Directory.Build.props
|
||||||
|
index 860785575f7..982fb7f0725 100644
|
||||||
|
--- a/Directory.Build.props
|
||||||
|
+++ b/Directory.Build.props
|
||||||
|
@@ -24,6 +24,11 @@
|
||||||
|
|
||||||
|
<UseStableVersions Condition="'$(UseStableVersions)' == ''">false</UseStableVersions>
|
||||||
|
|
||||||
|
+ <SourceBuildUseMonoRuntime>false</SourceBuildUseMonoRuntime>
|
||||||
|
+ <!-- These architectures are only supported with mono runtime -->
|
||||||
|
+ <SourceBuildUseMonoRuntime Condition="'$(BuildArchitecture)' == 's390x'">true</SourceBuildUseMonoRuntime>
|
||||||
|
+ <SourceBuildUseMonoRuntime Condition="'$(BuildArchitecture)' == 'ppc64le'">true</SourceBuildUseMonoRuntime>
|
||||||
|
+
|
||||||
|
<!-- new supported portable/nonportable options. These control whether to build portable runtime
|
||||||
|
or portable SDK. The PortableBuild flag is only set in runtime-portable.proj and should
|
||||||
|
no longer be passed in. -->
|
||||||
|
diff --git a/build.sh b/build.sh
|
||||||
|
index e899d2f808c..17699c78cb7 100755
|
||||||
|
--- a/build.sh
|
||||||
|
+++ b/build.sh
|
||||||
|
@@ -11,6 +11,7 @@ usage() {
|
||||||
|
echo " --run-smoke-test don't build; run smoke tests"
|
||||||
|
echo " --with-packages <dir> use the specified directory of previously-built packages"
|
||||||
|
echo " --with-sdk <dir> use the SDK in the specified directory for bootstrapping"
|
||||||
|
+ echo " --use-mono-runtime output uses the mono runtime"
|
||||||
|
echo "use -- to send the remaining arguments to MSBuild"
|
||||||
|
echo ""
|
||||||
|
}
|
||||||
|
@@ -65,6 +66,9 @@ while :; do
|
||||||
|
fi
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
+ --use-mono-runtime)
|
||||||
|
+ MSBUILD_ARGUMENTS+=( "/p:SourceBuildUseMonoRuntime=true" )
|
||||||
|
+ ;;
|
||||||
|
--)
|
||||||
|
shift
|
||||||
|
echo "Detected '--': passing remaining parameters '$@' as build.sh arguments."
|
||||||
|
diff --git a/repos/Directory.Build.props b/repos/Directory.Build.props
|
||||||
|
index e4e3060af7f..04ab89d11dc 100644
|
||||||
|
--- a/repos/Directory.Build.props
|
||||||
|
+++ b/repos/Directory.Build.props
|
||||||
|
@@ -143,6 +143,7 @@
|
||||||
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) /p:AdditionalSourceBuiltNupkgCacheDir="$(SourceBuiltPackagesPath)"</StandardSourceBuildArgs>
|
||||||
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) /p:ReferencePackageNupkgCacheDir="$(ReferencePackagesDir)"</StandardSourceBuildArgs>
|
||||||
|
<StandardSourceBuildArgs>$(StandardSourceBuildArgs) /p:PreviouslySourceBuiltNupkgCacheDir="$(PrebuiltSourceBuiltPackagesPath)"</StandardSourceBuildArgs>
|
||||||
|
+ <StandardSourceBuildArgs>$(StandardSourceBuildArgs) /p:SourceBuildUseMonoRuntime=$(SourceBuildUseMonoRuntime)</StandardSourceBuildArgs>
|
||||||
|
|
||||||
|
<StandardSourceBuildCommand>$(ProjectDirectory)\build$(ShellExtension)</StandardSourceBuildCommand>
|
||||||
|
</PropertyGroup>
|
||||||
|
diff --git a/src/aspnetcore/eng/SourceBuild.props b/src/aspnetcore/eng/SourceBuild.props
|
||||||
|
index 32108e1f..3dfbd5ef 100644
|
||||||
|
--- a/src/aspnetcore/eng/SourceBuild.props
|
||||||
|
+++ b/src/aspnetcore/eng/SourceBuild.props
|
||||||
|
@@ -55,6 +55,7 @@
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<InnerBuildArgs>$(InnerBuildArgs) /p:SourceBuildRuntimeIdentifier=$(TargetRuntimeIdentifier)</InnerBuildArgs>
|
||||||
|
+ <InnerBuildArgs Condition="'$(SourceBuildUseMonoRuntime)' == 'true'">$(InnerBuildArgs) /p:CrossgenOutput=false</InnerBuildArgs>
|
||||||
|
</PropertyGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
diff --git a/src/runtime/eng/SourceBuild.props b/src/runtime/eng/SourceBuild.props
|
||||||
|
index c197d8afd..55c1c1d22 100644
|
||||||
|
--- a/src/runtime/eng/SourceBuild.props
|
||||||
|
+++ b/src/runtime/eng/SourceBuild.props
|
||||||
|
@@ -41,6 +41,7 @@
|
||||||
|
<InnerBuildArgs>$(InnerBuildArgs) /p:BuildDebPackage=false</InnerBuildArgs>
|
||||||
|
<InnerBuildArgs>$(InnerBuildArgs) /p:EnableNgenOptimization=false</InnerBuildArgs>
|
||||||
|
<InnerBuildArgs>$(InnerBuildArgs) /p:EnablePackageValidation=false</InnerBuildArgs>
|
||||||
|
+ <InnerBuildArgs Condition="'$(SourceBuildUseMonoRuntime)' == 'true'">$(InnerBuildArgs) /p:PrimaryRuntimeFlavor=Mono /p:RuntimeFlavor=Mono</InnerBuildArgs>
|
||||||
|
</PropertyGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
diff --git a/src/sdk/eng/SourceBuild.props b/src/sdk/eng/SourceBuild.props
|
||||||
|
index 61b9a913708..2107a718419 100644
|
||||||
|
--- a/src/sdk/eng/SourceBuild.props
|
||||||
|
+++ b/src/sdk/eng/SourceBuild.props
|
||||||
|
@@ -8,6 +8,7 @@
|
||||||
|
<PropertyGroup>
|
||||||
|
<InnerBuildArgs>$(InnerBuildArgs) /p:Projects="$(InnerSourceBuildRepoRoot)\source-build.slnf"</InnerBuildArgs>
|
||||||
|
<InnerBuildArgs>$(InnerBuildArgs) /p:UseSharedCompilation=false</InnerBuildArgs>
|
||||||
|
+ <InnerBuildArgs Condition="'$(SourceBuildUseMonoRuntime)' == 'true'">$(InnerBuildArgs) /p:NativeAotSupported=false</InnerBuildArgs>
|
||||||
|
</PropertyGroup>
|
||||||
|
</Target>
|
||||||
|
|
||||||
|
diff --git a/src/sdk/src/Layout/redist/targets/BundledSdks.targets b/src/sdk/src/Layout/redist/targets/BundledSdks.targets
|
||||||
|
index 6f8b0fc3b33..64638ef1cff 100644
|
||||||
|
--- a/src/sdk/src/Layout/redist/targets/BundledSdks.targets
|
||||||
|
+++ b/src/sdk/src/Layout/redist/targets/BundledSdks.targets
|
||||||
|
@@ -5,6 +5,6 @@
|
||||||
|
<BundledSdk Include="FSharp.NET.Sdk" Version="1.0.4-bundled-0100" />
|
||||||
|
<BundledSdk Include="Microsoft.Docker.Sdk" Version="1.1.0" />
|
||||||
|
<BundledSdk Include="Microsoft.NET.ILLink.Tasks" Version="$(MicrosoftNETILLinkTasksPackageVersion)" />
|
||||||
|
- <BundledSdk Include="Microsoft.DotNet.ILCompiler" Version="$(MicrosoftDotNetILCompilerPackageVersion)" />
|
||||||
|
+ <BundledSdk Include="Microsoft.DotNet.ILCompiler" Version="$(MicrosoftDotNetILCompilerPackageVersion)" Condition="'$(NativeAotSupported)' != 'false'" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Common/Resources/Strings.resx b/src/sdk/src/Tasks/Common/Resources/Strings.resx
|
||||||
|
index a347c736df5..426cb6aa96d 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Common/Resources/Strings.resx
|
||||||
|
+++ b/src/sdk/src/Tasks/Common/Resources/Strings.resx
|
||||||
|
@@ -875,4 +875,8 @@ You may need to build the project on another operating system or architecture, o
|
||||||
|
<value>NETSDK1191: A runtime identifier for the property '{0}' couldn't be inferred. Specify a rid explicitly.</value>
|
||||||
|
<comment>{StrBegin="NETSDK1191: "}</comment>
|
||||||
|
</data>
|
||||||
|
+ <data name="AotNotSupported" xml:space="preserve">
|
||||||
|
+ <value>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</value>
|
||||||
|
+ <comment>{StrBegin="NETSDK1193: "}</comment>
|
||||||
|
+ </data>
|
||||||
|
</root>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.cs.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.cs.xlf
|
||||||
|
index e477f7a489b..c75990f94e2 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.cs.xlf
|
||||||
|
+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.cs.xlf
|
||||||
|
@@ -12,6 +12,11 @@
|
||||||
|
<target state="translated">NETSDK1183: Sestavení nelze optimalizovat pro kompilaci s předstihem: nebyl nalezen platný balíček modulu runtime. Buď nastavte vlastnost PublishAot na hodnotu false, nebo při publikování použijte podporovaný identifikátor modulu runtime. Při cílení na .NET 7 nebo vyšší nezapomeňte obnovit balíčky s vlastností PublishAot nastavenou na hodnotu true.</target>
|
||||||
|
<note>{StrBegin="NETSDK1183: "}</note>
|
||||||
|
</trans-unit>
|
||||||
|
+ <trans-unit id="AotNotSupported">
|
||||||
|
+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
|
||||||
|
+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
|
||||||
|
+ <note>{StrBegin="NETSDK1193: "}</note>
|
||||||
|
+ </trans-unit>
|
||||||
|
<trans-unit id="AppConfigRequiresRootConfiguration">
|
||||||
|
<source>NETSDK1070: The application configuration file must have root configuration element.</source>
|
||||||
|
<target state="translated">NETSDK1070: Konfigurační soubor aplikace musí obsahovat kořenový element konfigurace.</target>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.de.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.de.xlf
|
||||||
|
index d8cd9725269..2e427931dd1 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.de.xlf
|
||||||
|
+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.de.xlf
|
||||||
|
@@ -12,6 +12,11 @@
|
||||||
|
<target state="translated">NETSDK1183: Assemblys können nicht für Ahead-of-time-Kompilierung optimiert werden: Es wurde kein gültiges Runtimepaket gefunden. Legen Sie entweder die PublishAot-Eigenschaft auf FALSE fest, oder verwenden Sie beim Veröffentlichen einen unterstützten Runtimebezeichner. Wenn Sie .NET 7 oder höher verwenden, stellen Sie sicher, dass Sie Pakete wiederherstellen, bei denen die PublishAot-Eigenschaft auf TRUE festgelegt ist.</target>
|
||||||
|
<note>{StrBegin="NETSDK1183: "}</note>
|
||||||
|
</trans-unit>
|
||||||
|
+ <trans-unit id="AotNotSupported">
|
||||||
|
+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
|
||||||
|
+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
|
||||||
|
+ <note>{StrBegin="NETSDK1193: "}</note>
|
||||||
|
+ </trans-unit>
|
||||||
|
<trans-unit id="AppConfigRequiresRootConfiguration">
|
||||||
|
<source>NETSDK1070: The application configuration file must have root configuration element.</source>
|
||||||
|
<target state="translated">NETSDK1070: Die Anwendungskonfigurationsdatei muss das Stammkonfigurationselement enthalten.</target>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.es.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.es.xlf
|
||||||
|
index 4c61e20b937..cb654c521fb 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.es.xlf
|
||||||
|
+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.es.xlf
|
||||||
|
@@ -12,6 +12,11 @@
|
||||||
|
<target state="translated">NETSDK1183: No se pueden optimizar los ensamblados para la compilación Ahead of time: no se ha encontrado un paquete en tiempo de ejecución válido. Establezca la propiedad PublishAot en false o use un identificador de tiempo de ejecución compatible al publicar. Cuando el destino sea .NET 7 o una versión posterior, asegúrese de restaurar los paquetes con la propiedad PublishAot establecida en true.</target>
|
||||||
|
<note>{StrBegin="NETSDK1183: "}</note>
|
||||||
|
</trans-unit>
|
||||||
|
+ <trans-unit id="AotNotSupported">
|
||||||
|
+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
|
||||||
|
+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
|
||||||
|
+ <note>{StrBegin="NETSDK1193: "}</note>
|
||||||
|
+ </trans-unit>
|
||||||
|
<trans-unit id="AppConfigRequiresRootConfiguration">
|
||||||
|
<source>NETSDK1070: The application configuration file must have root configuration element.</source>
|
||||||
|
<target state="translated">NETSDK1070: El archivo de configuración de la aplicación debe tener el elemento de configuración raíz.</target>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.fr.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.fr.xlf
|
||||||
|
index dfbb0391549..a97af754880 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.fr.xlf
|
||||||
|
+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.fr.xlf
|
||||||
|
@@ -12,6 +12,11 @@
|
||||||
|
<target state="translated">NETSDK1183: Impossible d'optimiser les assemblys pour la compilation Ahead of time : un package d'exécution valide n'a pas été trouvé. Définissez la propriété PublishAot sur false ou utilisez un identificateur d'exécution pris en charge lors de la publication. Lorsque vous ciblez .NET 7 ou supérieur, assurez-vous de restaurer les packages avec la propriété PublishAot définie sur true.</target>
|
||||||
|
<note>{StrBegin="NETSDK1183: "}</note>
|
||||||
|
</trans-unit>
|
||||||
|
+ <trans-unit id="AotNotSupported">
|
||||||
|
+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
|
||||||
|
+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
|
||||||
|
+ <note>{StrBegin="NETSDK1193: "}</note>
|
||||||
|
+ </trans-unit>
|
||||||
|
<trans-unit id="AppConfigRequiresRootConfiguration">
|
||||||
|
<source>NETSDK1070: The application configuration file must have root configuration element.</source>
|
||||||
|
<target state="translated">NETSDK1070: Le fichier de configuration de l'application doit avoir un élément de configuration racine.</target>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.it.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.it.xlf
|
||||||
|
index a768517271c..70fe2939526 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.it.xlf
|
||||||
|
+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.it.xlf
|
||||||
|
@@ -12,6 +12,11 @@
|
||||||
|
<target state="translated">NETSDK1183: non è possibile ottimizzare gli assembly per la compilazione Ahead Of Time perché non è stato trovato alcun pacchetto di runtime valido. Impostare la proprietà PublishAot su false oppure usare un identificatore di runtime supportato durante la pubblicazione. Quando si usa .NET 7 o versioni successive, assicurarsi di ripristinare i pacchetti con la proprietà PublishAot impostata su true.</target>
|
||||||
|
<note>{StrBegin="NETSDK1183: "}</note>
|
||||||
|
</trans-unit>
|
||||||
|
+ <trans-unit id="AotNotSupported">
|
||||||
|
+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
|
||||||
|
+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
|
||||||
|
+ <note>{StrBegin="NETSDK1193: "}</note>
|
||||||
|
+ </trans-unit>
|
||||||
|
<trans-unit id="AppConfigRequiresRootConfiguration">
|
||||||
|
<source>NETSDK1070: The application configuration file must have root configuration element.</source>
|
||||||
|
<target state="translated">NETSDK1070: il file di configurazione dell'applicazione deve avere un elemento di configurazione radice.</target>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ja.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ja.xlf
|
||||||
|
index c3713a3bb6f..42ba79f1034 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ja.xlf
|
||||||
|
+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ja.xlf
|
||||||
|
@@ -12,6 +12,11 @@
|
||||||
|
<target state="translated">NETSDK1183: Ahead Of Time コンパイル用にアセンブリを最適化できません: 有効なランタイム パッケージが見つかりませんでした。PublishAot プロパティを false に設定するか、公開時に、サポートされているランタイム識別子を使用してください。.NET 7 以降を対象とする場合は、必ず PublishAot プロパティを true に設定してパッケージを復元してください。</target>
|
||||||
|
<note>{StrBegin="NETSDK1183: "}</note>
|
||||||
|
</trans-unit>
|
||||||
|
+ <trans-unit id="AotNotSupported">
|
||||||
|
+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
|
||||||
|
+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
|
||||||
|
+ <note>{StrBegin="NETSDK1193: "}</note>
|
||||||
|
+ </trans-unit>
|
||||||
|
<trans-unit id="AppConfigRequiresRootConfiguration">
|
||||||
|
<source>NETSDK1070: The application configuration file must have root configuration element.</source>
|
||||||
|
<target state="translated">NETSDK1070: アプリケーション構成ファイルには、ルート構成要素が必要です。</target>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ko.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ko.xlf
|
||||||
|
index 86d77d024ad..f9695e37529 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ko.xlf
|
||||||
|
+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ko.xlf
|
||||||
|
@@ -12,6 +12,11 @@
|
||||||
|
<target state="translated">NETSDK1183: Ahead of Time 컴파일을 위해 어셈블리를 최적화할 수 없습니다. 유효한 런타임 패키지를 찾을 수 없습니다. PublishAot 속성을 false로 설정하거나 게시할 때 지원되는 런타임 식별자를 사용하세요. .NET 7 이상을 대상으로 하는 경우 PublishAot 속성이 true로 설정된 패키지를 복원해야 합니다.</target>
|
||||||
|
<note>{StrBegin="NETSDK1183: "}</note>
|
||||||
|
</trans-unit>
|
||||||
|
+ <trans-unit id="AotNotSupported">
|
||||||
|
+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
|
||||||
|
+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
|
||||||
|
+ <note>{StrBegin="NETSDK1193: "}</note>
|
||||||
|
+ </trans-unit>
|
||||||
|
<trans-unit id="AppConfigRequiresRootConfiguration">
|
||||||
|
<source>NETSDK1070: The application configuration file must have root configuration element.</source>
|
||||||
|
<target state="translated">NETSDK1070: 애플리케이션 구성 파일에는 루트 구성 요소가 있어야 합니다.</target>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pl.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pl.xlf
|
||||||
|
index b954c4f64f5..0594cfc5bad 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pl.xlf
|
||||||
|
+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pl.xlf
|
||||||
|
@@ -12,6 +12,11 @@
|
||||||
|
<target state="translated">NETSDK1183: Nie można zoptymalizować zestawów pod kątem kompilacji z wyprzedzeniem: nie znaleziono prawidłowego pakietu środowiska uruchomieniowego. Ustaw właściwość PublishAot na wartość false lub użyj obsługiwanego identyfikatora środowiska uruchomieniowego podczas publikowania. W przypadku określania wartości docelowej platformy .NET 7 lub nowszej należy przywrócić pakiety z właściwością PublishAot ustawioną na wartość true.</target>
|
||||||
|
<note>{StrBegin="NETSDK1183: "}</note>
|
||||||
|
</trans-unit>
|
||||||
|
+ <trans-unit id="AotNotSupported">
|
||||||
|
+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
|
||||||
|
+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
|
||||||
|
+ <note>{StrBegin="NETSDK1193: "}</note>
|
||||||
|
+ </trans-unit>
|
||||||
|
<trans-unit id="AppConfigRequiresRootConfiguration">
|
||||||
|
<source>NETSDK1070: The application configuration file must have root configuration element.</source>
|
||||||
|
<target state="translated">NETSDK1070: Plik konfiguracji aplikacji musi mieć główny element konfiguracji.</target>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pt-BR.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pt-BR.xlf
|
||||||
|
index 4153425cfce..ae701f4dc3b 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pt-BR.xlf
|
||||||
|
+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.pt-BR.xlf
|
||||||
|
@@ -12,6 +12,11 @@
|
||||||
|
<target state="translated">NETSDK1183: Não é possível otimizar assemblies para compilação antecipada: um pacote de tempo de execução válido não foi encontrado. Defina a propriedade PublishAot como false ou use um identificador de tempo de execução com suporte ao publicar. Ao direcionar o .NET 7 ou superior, certifique-se de restaurar os pacotes com a propriedade PublishAot definida como true.</target>
|
||||||
|
<note>{StrBegin="NETSDK1183: "}</note>
|
||||||
|
</trans-unit>
|
||||||
|
+ <trans-unit id="AotNotSupported">
|
||||||
|
+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
|
||||||
|
+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
|
||||||
|
+ <note>{StrBegin="NETSDK1193: "}</note>
|
||||||
|
+ </trans-unit>
|
||||||
|
<trans-unit id="AppConfigRequiresRootConfiguration">
|
||||||
|
<source>NETSDK1070: The application configuration file must have root configuration element.</source>
|
||||||
|
<target state="translated">NETSDK1070: o arquivo de configuração do aplicativo deve ter um elemento de configuração raiz.</target>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ru.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ru.xlf
|
||||||
|
index e66e13cd417..1780c0eb89b 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ru.xlf
|
||||||
|
+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.ru.xlf
|
||||||
|
@@ -12,6 +12,11 @@
|
||||||
|
<target state="translated">NETSDK1183: не удалось оптимизировать сборки для компиляции Ahead Of Time: не найден допустимый пакет среды выполнения. Задайте для свойства PublishAot значение false либо используйте поддерживаемый идентификатор среды выполнения при публикации. При выборе .NET 7 или более поздней версии в качестве цели восстановите пакеты со свойством PublishAot со значением true.</target>
|
||||||
|
<note>{StrBegin="NETSDK1183: "}</note>
|
||||||
|
</trans-unit>
|
||||||
|
+ <trans-unit id="AotNotSupported">
|
||||||
|
+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
|
||||||
|
+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
|
||||||
|
+ <note>{StrBegin="NETSDK1193: "}</note>
|
||||||
|
+ </trans-unit>
|
||||||
|
<trans-unit id="AppConfigRequiresRootConfiguration">
|
||||||
|
<source>NETSDK1070: The application configuration file must have root configuration element.</source>
|
||||||
|
<target state="translated">NETSDK1070: В файле конфигурации приложения должен присутствовать корневой элемент конфигурации.</target>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.tr.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.tr.xlf
|
||||||
|
index 4121fe024d6..d4ec2bbfea3 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.tr.xlf
|
||||||
|
+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.tr.xlf
|
||||||
|
@@ -12,6 +12,11 @@
|
||||||
|
<target state="translated">NETSDK1183: Derlemeler, AOT derlemesi için iyileştirilemedi: geçerli bir çalışma zamanı paketi bulunamadı. PublishAot özelliğini false olarak ayarlayın veya yayımlarken desteklenen bir çalışma zamanı tanımlayıcısı kullanın. .NET 7 veya üzerini hedeflerken PublishAot özelliği true olarak ayarlanmış paketleri geri yüklediğinizden emin olun.</target>
|
||||||
|
<note>{StrBegin="NETSDK1183: "}</note>
|
||||||
|
</trans-unit>
|
||||||
|
+ <trans-unit id="AotNotSupported">
|
||||||
|
+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
|
||||||
|
+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
|
||||||
|
+ <note>{StrBegin="NETSDK1193: "}</note>
|
||||||
|
+ </trans-unit>
|
||||||
|
<trans-unit id="AppConfigRequiresRootConfiguration">
|
||||||
|
<source>NETSDK1070: The application configuration file must have root configuration element.</source>
|
||||||
|
<target state="translated">NETSDK1070: Uygulama yapılandırma dosyasının kök yapılandırma öğesi olmalıdır.</target>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hans.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hans.xlf
|
||||||
|
index 5bd5617ccba..77323667f98 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hans.xlf
|
||||||
|
+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hans.xlf
|
||||||
|
@@ -12,6 +12,11 @@
|
||||||
|
<target state="translated">NETSDK1183: 无法优化程序集以实现提前编译: 找不到有效的运行时包。将 PublishAot 属性设置为 false,或在发布时使用支持的运行时标识符。面向 .NET 7 或更高版本时,请确保还原将 PublishAot 属性设置为 true 的包。</target>
|
||||||
|
<note>{StrBegin="NETSDK1183: "}</note>
|
||||||
|
</trans-unit>
|
||||||
|
+ <trans-unit id="AotNotSupported">
|
||||||
|
+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
|
||||||
|
+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
|
||||||
|
+ <note>{StrBegin="NETSDK1193: "}</note>
|
||||||
|
+ </trans-unit>
|
||||||
|
<trans-unit id="AppConfigRequiresRootConfiguration">
|
||||||
|
<source>NETSDK1070: The application configuration file must have root configuration element.</source>
|
||||||
|
<target state="translated">NETSDK1070: 应用程序配置文件必须具有根配置元素。</target>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hant.xlf b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hant.xlf
|
||||||
|
index c2e6be8b9be..ae573c7ed8b 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hant.xlf
|
||||||
|
+++ b/src/sdk/src/Tasks/Common/Resources/xlf/Strings.zh-Hant.xlf
|
||||||
|
@@ -12,6 +12,11 @@
|
||||||
|
<target state="translated">NETSDK1183: 無法為提前編譯最佳化組件: 找不到有效的執行階段套件。請將 PublishAot 屬性設為 false,或在發佈時使用支援的執行階段識別碼。以 .NET 7 或更高版本為目標時,請務必還原套件,將 PublishAot 屬性設為 true。</target>
|
||||||
|
<note>{StrBegin="NETSDK1183: "}</note>
|
||||||
|
</trans-unit>
|
||||||
|
+ <trans-unit id="AotNotSupported">
|
||||||
|
+ <source>NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</source>
|
||||||
|
+ <target state="new">NETSDK1193: The SDK does not support Ahead of time compilation. Set the PublishAot property to false.</target>
|
||||||
|
+ <note>{StrBegin="NETSDK1193: "}</note>
|
||||||
|
+ </trans-unit>
|
||||||
|
<trans-unit id="AppConfigRequiresRootConfiguration">
|
||||||
|
<source>NETSDK1070: The application configuration file must have root configuration element.</source>
|
||||||
|
<target state="translated">NETSDK1070: 應用程式組態檔必須有根組態元素。</target>
|
||||||
|
diff --git a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets
|
||||||
|
index 84b21ee0dd8..72d10f518af 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets
|
||||||
|
+++ b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets
|
||||||
|
@@ -178,6 +178,9 @@ Copyright (c) .NET Foundation. All rights reserved.
|
||||||
|
ResourceName="ImplicitRuntimeIdentifierResolutionForPublishPropertyFailed"
|
||||||
|
FormatArguments="PublishAot"/>
|
||||||
|
|
||||||
|
+ <NETSdkError Condition="'$(PublishAot)' == 'true' and '$(PublishAotSupported)' != 'true'"
|
||||||
|
+ ResourceName="AotNotSupported" />
|
||||||
|
+
|
||||||
|
<!-- End of implicit RID resolver checks.-->
|
||||||
|
<NETSdkError Condition="'$(SelfContained)' == 'true' and '$(UseAppHost)' != 'true' and '$(_RuntimeIdentifierUsesAppHost)' == 'true'"
|
||||||
|
ResourceName="CannotUseSelfContainedWithoutAppHost" />
|
||||||
|
diff --git a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.props b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.props
|
||||||
|
index 73a182102d1..b7eee4dfe3d 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.props
|
||||||
|
+++ b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.props
|
||||||
|
@@ -116,6 +116,8 @@ Copyright (c) .NET Foundation. All rights reserved.
|
||||||
|
<MSBuildCopyContentTransitively Condition="'$(MSBuildCopyContentTransitively)' == ''">true</MSBuildCopyContentTransitively>
|
||||||
|
<ResolveAssemblyReferenceOutputUnresolvedAssemblyConflicts Condition="'$(ResolveAssemblyReferenceOutputUnresolvedAssemblyConflicts)' == ''">true</ResolveAssemblyReferenceOutputUnresolvedAssemblyConflicts>
|
||||||
|
|
||||||
|
+ <PublishAotSupported>false</PublishAotSupported>
|
||||||
|
+ <PublishAotSupported Condition="Exists('$(MSBuildThisFileDirectory)../../Microsoft.DotNet.ILCompiler')">true</PublishAotSupported>
|
||||||
|
<!-- Uncomment this once https://github.com/Microsoft/visualfsharp/issues/3207 gets fixed -->
|
||||||
|
<!-- <WarningsAsErrors>$(WarningsAsErrors);NU1605</WarningsAsErrors> -->
|
||||||
|
</PropertyGroup>
|
||||||
|
@@ -151,7 +153,7 @@ Copyright (c) .NET Foundation. All rights reserved.
|
||||||
|
<Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.Sdk.CSharp.props" Condition="'$(MSBuildProjectExtension)' == '.csproj'" />
|
||||||
|
<Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.Sdk.VisualBasic.props" Condition="'$(MSBuildProjectExtension)' == '.vbproj'" />
|
||||||
|
<Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.Sdk.FSharp.props" Condition="'$(MSBuildProjectExtension)' == '.fsproj'" />
|
||||||
|
- <Import Project="Sdk.props" Sdk="Microsoft.DotNet.ILCompiler" />
|
||||||
|
+ <Import Project="Sdk.props" Sdk="Microsoft.DotNet.ILCompiler" Condition="'$(PublishAotSupported)' == 'true'" />
|
||||||
|
<Import Project="Sdk.props" Sdk="Microsoft.NET.ILLink.Tasks" />
|
||||||
|
|
||||||
|
<Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.PackTool.props" />
|
||||||
|
diff --git a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.targets b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.targets
|
||||||
|
index 4311ec0ecea..1f80ab9ded0 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.targets
|
||||||
|
+++ b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Sdk.targets
|
||||||
|
@@ -1175,7 +1175,7 @@ Copyright (c) .NET Foundation. All rights reserved.
|
||||||
|
<Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.Sdk.CSharp.targets" Condition="'$(Language)' == 'C#'" />
|
||||||
|
<Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.Sdk.VisualBasic.targets" Condition="'$(Language)' == 'VB'" />
|
||||||
|
<Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.Sdk.FSharp.targets" Condition="'$(Language)' == 'F#'" />
|
||||||
|
- <Import Project="$(ILCompilerTargetsPath)" Condition="'$(PublishAot)' == 'true'"/>
|
||||||
|
+ <Import Project="$(ILCompilerTargetsPath)" Condition="'$(PublishAot)' == 'true' and '$(PublishAotSupported)' == 'true'"/>
|
||||||
|
<Import Project="$(ILLinkTargetsPath)" Condition="'$(Language)' != 'C++'" />
|
||||||
|
<Import Project="$(MSBuildThisFileDirectory)Microsoft.NET.Sdk.Analyzers.targets" Condition="'$(Language)' == 'C#' or '$(Language)' == 'VB'" />
|
||||||
|
|
||||||
|
diff --git a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Publish.targets b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Publish.targets
|
||||||
|
index a943e6615bf..8593957f3d6 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Publish.targets
|
||||||
|
+++ b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.Publish.targets
|
||||||
|
@@ -111,6 +111,8 @@ Copyright (c) .NET Foundation. All rights reserved.
|
||||||
|
'$(EnableCompressionInSingleFile)' == 'true' And
|
||||||
|
'$(SelfContained)' != 'true'"
|
||||||
|
ResourceName="CompressionInSingleFileRequiresSelfContained" />
|
||||||
|
+ <NETSdkError Condition="'$(PublishAot)' == 'true' and '$(PublishAotSupported)' != 'true'"
|
||||||
|
+ ResourceName="AotNotSupported" />
|
||||||
|
|
||||||
|
<!-- Enable warning for trying to use PublishRelease or PackRelease with a solution if env-var is not set.-->
|
||||||
|
<NETSdkWarning Condition="'$(PublishRelease)' != '' and '$(SolutionExt)' == '.sln' and '$(DOTNET_CLI_ENABLE_PUBLISH_RELEASE_FOR_SOLUTIONS)' == ''"
|
||||||
|
diff --git a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets
|
||||||
|
index 72d10f518af..84b21ee0dd8 100644
|
||||||
|
--- a/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets
|
||||||
|
+++ b/src/sdk/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.RuntimeIdentifierInference.targets
|
||||||
|
@@ -178,9 +178,6 @@ Copyright (c) .NET Foundation. All rights reserved.
|
||||||
|
ResourceName="ImplicitRuntimeIdentifierResolutionForPublishPropertyFailed"
|
||||||
|
FormatArguments="PublishAot"/>
|
||||||
|
|
||||||
|
- <NETSdkError Condition="'$(PublishAot)' == 'true' and '$(PublishAotSupported)' != 'true'"
|
||||||
|
- ResourceName="AotNotSupported" />
|
||||||
|
-
|
||||||
|
<!-- End of implicit RID resolver checks.-->
|
||||||
|
<NETSdkError Condition="'$(SelfContained)' == 'true' and '$(UseAppHost)' != 'true' and '$(_RuntimeIdentifierUsesAppHost)' == 'true'"
|
||||||
|
ResourceName="CannotUseSelfContainedWithoutAppHost" />
|
12
roslyn-analyzers-ppc64le-apphost.patch
Normal file
12
roslyn-analyzers-ppc64le-apphost.patch
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
diff --git a/src/roslyn-analyzers/src/PerformanceTests/Tests/PerformanceTests.csproj b/src/roslyn-analyzers/src/PerformanceTests/Tests/PerformanceTests.csproj
|
||||||
|
index 044a2aba4..b3f8f2611 100644
|
||||||
|
--- a/src/roslyn-analyzers/src/PerformanceTests/Tests/PerformanceTests.csproj
|
||||||
|
+++ b/src/roslyn-analyzers/src/PerformanceTests/Tests/PerformanceTests.csproj
|
||||||
|
@@ -4,6 +4,7 @@
|
||||||
|
<LangVersion>preview</LangVersion>
|
||||||
|
<Nullable>disable</Nullable>
|
||||||
|
<OutputType>Exe</OutputType>
|
||||||
|
+ <UseAppHost>false</UseAppHost>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup>
|
||||||
|
<NonShipping>true</NonShipping>
|
23
runtime-77269-mono-ppc64le-opcheckthis.patch
Normal file
23
runtime-77269-mono-ppc64le-opcheckthis.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
From f163003da28cd01866b15233116d5efd53b1a2ef Mon Sep 17 00:00:00 2001
|
||||||
|
From: Sapana Khemkar <sapana.khemkar@ibm.com>
|
||||||
|
Date: Thu, 13 Oct 2022 07:45:23 +0000
|
||||||
|
Subject: [PATCH] use byte load instruction in OP_CHECK_THIS instead of double
|
||||||
|
word instruction
|
||||||
|
|
||||||
|
---
|
||||||
|
src/runtime/src/mono/mono/mini/mini-ppc.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/runtime/src/mono/mono/mini/mini-ppc.c b/src/runtime/src/mono/mono/mini/mini-ppc.c
|
||||||
|
index bc97b497af93a..a2d8c5a714e3b 100644
|
||||||
|
--- a/src/runtime/src/mono/mono/mini/mini-ppc.c
|
||||||
|
+++ b/src/runtime/src/mono/mono/mini/mini-ppc.c
|
||||||
|
@@ -3837,7 +3837,7 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
|
||||||
|
}
|
||||||
|
case OP_CHECK_THIS:
|
||||||
|
/* ensure ins->sreg1 is not NULL */
|
||||||
|
- ppc_ldptr (code, ppc_r0, 0, ins->sreg1);
|
||||||
|
+ ppc_lbz (code, ppc_r0, 0, ins->sreg1);
|
||||||
|
break;
|
||||||
|
case OP_ARGLIST: {
|
||||||
|
long cookie_offset = cfg->sig_cookie + cfg->stack_usage;
|
56
runtime-77270-ppc64le-fsharp-crash.patch
Normal file
56
runtime-77270-ppc64le-fsharp-crash.patch
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
From 14749457ff716cebd043b4e41aad622f9ac89586 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Alhad Deshpande <Alhad.Deshpande1@ibm.com>
|
||||||
|
Date: Wed, 19 Oct 2022 06:29:54 +0000
|
||||||
|
Subject: [PATCH] Fixed FSharp crash issue
|
||||||
|
|
||||||
|
---
|
||||||
|
src/mono/mono/mini/mini-ppc.c | 24 ++++++++++++------------
|
||||||
|
1 file changed, 12 insertions(+), 12 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/runtime/src/mono/mono/mini/mini-ppc.c b/src/runtime/src/mono/mono/mini/mini-ppc.c
|
||||||
|
index bc97b497af93a..3df60c6a925f6 100644
|
||||||
|
--- a/src/runtime/src/mono/mono/mini/mini-ppc.c
|
||||||
|
+++ b/src/runtime/src/mono/mono/mini/mini-ppc.c
|
||||||
|
@@ -3782,23 +3782,11 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
|
||||||
|
ppc_addis (code, ppc_r12, cfg->frame_reg, ppc_ha(cfg->stack_usage));
|
||||||
|
ppc_addi (code, ppc_r12, ppc_r12, cfg->stack_usage);
|
||||||
|
}
|
||||||
|
- if (!cfg->method->save_lmf) {
|
||||||
|
- pos = 0;
|
||||||
|
- for (i = 31; i >= 13; --i) {
|
||||||
|
- if (cfg->used_int_regs & (1 << i)) {
|
||||||
|
- pos += sizeof (target_mgreg_t);
|
||||||
|
- ppc_ldptr (code, i, -pos, ppc_r12);
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
- } else {
|
||||||
|
- /* FIXME restore from MonoLMF: though this can't happen yet */
|
||||||
|
- }
|
||||||
|
|
||||||
|
/* Copy arguments on the stack to our argument area */
|
||||||
|
if (call->stack_usage) {
|
||||||
|
code = emit_memcpy (code, call->stack_usage, ppc_r12, PPC_STACK_PARAM_OFFSET, ppc_sp, PPC_STACK_PARAM_OFFSET);
|
||||||
|
/* r12 was clobbered */
|
||||||
|
- g_assert (cfg->frame_reg == ppc_sp);
|
||||||
|
if (ppc_is_imm16 (cfg->stack_usage)) {
|
||||||
|
ppc_addi (code, ppc_r12, cfg->frame_reg, cfg->stack_usage);
|
||||||
|
} else {
|
||||||
|
@@ -3809,6 +3797,18 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
+ if (!cfg->method->save_lmf) {
|
||||||
|
+ pos = 0;
|
||||||
|
+ for (i = 31; i >= 13; --i) {
|
||||||
|
+ if (cfg->used_int_regs & (1 << i)) {
|
||||||
|
+ pos += sizeof (target_mgreg_t);
|
||||||
|
+ ppc_ldptr (code, i, -pos, ppc_r12);
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ } else {
|
||||||
|
+ /* FIXME restore from MonoLMF: though this can't happen yet */
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
ppc_mr (code, ppc_sp, ppc_r12);
|
||||||
|
mono_add_patch_info (cfg, (guint8*) code - cfg->native_code, MONO_PATCH_INFO_METHOD_JUMP, call->method);
|
||||||
|
cfg->thunk_area += THUNK_SIZE;
|
60
runtime-77308-ppc64le-delegate.patch
Normal file
60
runtime-77308-ppc64le-delegate.patch
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
diff --git a/src/runtime/src/mono/mono/mini/mini-ppc.c b/src/runtime/src/mono/mono/mini/mini-ppc.c
|
||||||
|
index db669f8b5da0f..73a26c02b18aa 100644
|
||||||
|
--- a/src/runtime/src/mono/mono/mini/mini-ppc.c
|
||||||
|
+++ b/src/runtime/src/mono/mono/mini/mini-ppc.c
|
||||||
|
@@ -470,10 +470,54 @@ mono_arch_get_delegate_invoke_impl (MonoMethodSignature *sig, gboolean has_targe
|
||||||
|
return start;
|
||||||
|
}
|
||||||
|
|
||||||
|
+/**
|
||||||
|
+ *
|
||||||
|
+ * @brief Architecture-specific delegation virtual trampoline processing
|
||||||
|
+ *
|
||||||
|
+ * @param[in] @sig - Method signature
|
||||||
|
+ * @param[in] @method - Method
|
||||||
|
+ * @param[in] @offset - Offset into vtable
|
||||||
|
+ * @param[in] @load_imt_reg - Whether to load the LMT register
|
||||||
|
+ * @returns Trampoline
|
||||||
|
+ *
|
||||||
|
+ * Return a pointer to a delegation virtual trampoline
|
||||||
|
+ */
|
||||||
|
+
|
||||||
|
gpointer
|
||||||
|
mono_arch_get_delegate_virtual_invoke_impl (MonoMethodSignature *sig, MonoMethod *method, int offset, gboolean load_imt_reg)
|
||||||
|
{
|
||||||
|
- return NULL;
|
||||||
|
+ guint8 *code, *start;
|
||||||
|
+ int size = 32;
|
||||||
|
+
|
||||||
|
+ start = code = (guint8 *) mono_global_codeman_reserve (size);
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
+ * Replace the "this" argument with the target
|
||||||
|
+ */
|
||||||
|
+ ppc_mr (code, ppc_r12, ppc_r3);
|
||||||
|
+ ppc_ldptr (code, ppc_r3, MONO_STRUCT_OFFSET(MonoDelegate, target), ppc_r12);
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
+ * Load the IMT register, if needed
|
||||||
|
+ */
|
||||||
|
+ if (load_imt_reg) {
|
||||||
|
+ ppc_ldptr (code, MONO_ARCH_IMT_REG, MONO_STRUCT_OFFSET(MonoDelegate, method), ppc_r12);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ /*
|
||||||
|
+ * Load the vTable
|
||||||
|
+ */
|
||||||
|
+ ppc_ldptr (code, ppc_r12, MONO_STRUCT_OFFSET(MonoObject, vtable), ppc_r3);
|
||||||
|
+ if (!ppc_is_imm16(offset))
|
||||||
|
+ ppc_addis (code, ppc_r12, ppc_r12, ppc_ha(offset));
|
||||||
|
+ ppc_ldptr (code, ppc_r12, offset, ppc_r12);
|
||||||
|
+ ppc_mtctr (code, ppc_r12);
|
||||||
|
+ ppc_bcctr (code, PPC_BR_ALWAYS, 0);
|
||||||
|
+
|
||||||
|
+ mono_arch_flush_icache (start, code - start);
|
||||||
|
+ MONO_PROFILER_RAISE (jit_code_buffer, (start, code - start, MONO_PROFILER_CODE_BUFFER_DELEGATE_INVOKE, NULL));
|
||||||
|
+
|
||||||
|
+ return(start);
|
||||||
|
}
|
||||||
|
|
||||||
|
gpointer
|
1
sources
1
sources
@ -1,3 +1,4 @@
|
|||||||
SHA512 (dotnet-v7.0.100-rc.2.22477.23-x64-bootstrap.tar.xz) = c6e99e9df70731858102f41b3332cb378c6bd82e6aeb41a4f86e395c80dd2d26de5647a1f799285db4f96dacb36081a6eea76c0be712eccce740dc755575cf92
|
SHA512 (dotnet-v7.0.100-rc.2.22477.23-x64-bootstrap.tar.xz) = c6e99e9df70731858102f41b3332cb378c6bd82e6aeb41a4f86e395c80dd2d26de5647a1f799285db4f96dacb36081a6eea76c0be712eccce740dc755575cf92
|
||||||
SHA512 (dotnet-arm64-prebuilts-2022-10-12.tar.gz) = 00f2202d7e2831f4f5da9fa02238b35d5ad340efd8ecd7c8d5c69206236f3de374772275c629de0f16ded93b2368e4b357927173ff7046cef145a966ea6e5c0d
|
SHA512 (dotnet-arm64-prebuilts-2022-10-12.tar.gz) = 00f2202d7e2831f4f5da9fa02238b35d5ad340efd8ecd7c8d5c69206236f3de374772275c629de0f16ded93b2368e4b357927173ff7046cef145a966ea6e5c0d
|
||||||
|
SHA512 (dotnet-ppc64le-prebuilts-2022-10-21.tar.gz) = cc4c91a43cd6abedf3acc548e9ea4b6917e6afdfe2e43d595166ce78e3efb9c05345c45f10e4f4909d6383e6f8f2e825b260ec643991eaf04a469b55b9782066
|
||||||
SHA512 (dotnet-s390x-prebuilts-2022-10-12.tar.gz) = e19a989cafcf7e9a7be3381202653e9f9b9954b81ff2babcef494b5d06b8babf1996b74bd1f08dee90c6feffcf5130becbf7bfb59457d5b6926a6cf5d0e4a504
|
SHA512 (dotnet-s390x-prebuilts-2022-10-12.tar.gz) = e19a989cafcf7e9a7be3381202653e9f9b9954b81ff2babcef494b5d06b8babf1996b74bd1f08dee90c6feffcf5130becbf7bfb59457d5b6926a6cf5d0e4a504
|
||||||
|
Loading…
Reference in New Issue
Block a user