Disable bootstrap
Also update to .NET 6.0.102 Related: RHBZ#1986211
This commit is contained in:
parent
490af008ee
commit
a7f5bd07e6
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,3 +1,5 @@
|
||||
/dotnet-9e8b04bbff820c93c142f99a507a46b976f5c14c-x64-bootstrap.tar.xz
|
||||
/dotnet-arm64-prebuilts-2021-10-29.tar.gz
|
||||
/dotnet-s390x-prebuilts-2021-10-29.tar.gz
|
||||
/dotnet-9e8b04bbff820c93c142f99a507a46b976f5c14c.tar.gz
|
||||
/dotnet-v6.0.102.tar.gz
|
||||
|
@ -1,4 +1,4 @@
|
||||
%bcond_without bootstrap
|
||||
%bcond_with bootstrap
|
||||
|
||||
# Avoid provides/requires from private libraries
|
||||
%global privlibs libhostfxr
|
||||
@ -20,11 +20,11 @@
|
||||
# until that's done, disable LTO. This has to happen before setting the flags below.
|
||||
%define _lto_cflags %{nil}
|
||||
|
||||
%global host_version 6.0.0
|
||||
%global runtime_version 6.0.0
|
||||
%global aspnetcore_runtime_version 6.0.0
|
||||
%global sdk_version 6.0.100
|
||||
%global templates_version 6.0.0
|
||||
%global host_version 6.0.2
|
||||
%global runtime_version 6.0.2
|
||||
%global aspnetcore_runtime_version %{runtime_version}
|
||||
%global sdk_version 6.0.102
|
||||
%global templates_version %{runtime_version}
|
||||
#%%global templates_version %%(echo %%{runtime_version} | awk 'BEGIN { FS="."; OFS="." } {print $1, $2, $3+1 }')
|
||||
|
||||
%global host_rpm_version %{host_version}
|
||||
@ -33,8 +33,7 @@
|
||||
%global sdk_rpm_version %{sdk_version}
|
||||
|
||||
# upstream can update releases without revving the SDK version so these don't always match
|
||||
#%%global upstream_tag v%%{sdk_version}-SDK
|
||||
%global upstream_tag 9e8b04bbff820c93c142f99a507a46b976f5c14c
|
||||
%global upstream_tag v%{sdk_version}
|
||||
|
||||
%if 0%{?fedora} || 0%{?rhel} < 8
|
||||
%global use_bundled_libunwind 0
|
||||
@ -60,7 +59,7 @@
|
||||
|
||||
Name: dotnet6.0
|
||||
Version: %{sdk_rpm_version}
|
||||
Release: 2%{?dist}
|
||||
Release: 3%{?dist}
|
||||
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
|
||||
URL: https://github.com/dotnet/
|
||||
@ -86,10 +85,6 @@ Source11: dotnet.sh.in
|
||||
Patch100: runtime-arm64-lld-fix.patch
|
||||
# Mono still has a dependency on (now unbuildable) ILStrip which was removed from CoreCLR: https://github.com/dotnet/runtime/pull/60315
|
||||
Patch101: runtime-mono-remove-ilstrip.patch
|
||||
# https://github.com/dotnet/runtime/pull/61442
|
||||
Patch102: runtime-61442-disable-werror.patch
|
||||
# https://github.com/dotnet/runtime/pull/62170
|
||||
Patch103: runtime-62170-clang13.patch
|
||||
|
||||
# https://github.com/dotnet/command-line-api/pull/1401
|
||||
Patch300: command-line-api-use-work-tree-with-git-apply.patch
|
||||
@ -130,8 +125,6 @@ Patch1501: sdk-22373-portablerid.patch
|
||||
|
||||
# https://github.com/dotnet/installer/pull/12516
|
||||
Patch1600: installer-12516-portablerid.patch
|
||||
# https://github.com/dotnet/installer/pull/12622
|
||||
Patch1601: installer-12622-fix-runtime-symbols.patch
|
||||
|
||||
|
||||
%if 0%{?fedora} || 0%{?rhel} >= 8
|
||||
@ -393,8 +386,6 @@ sed -i 's|/usr/share/dotnet|%{_libdir}/dotnet|' src/runtime.*/src/native/corehos
|
||||
pushd src/runtime.*
|
||||
%patch100 -p1
|
||||
%patch101 -p1
|
||||
%patch102 -p1
|
||||
%patch103 -p1
|
||||
popd
|
||||
|
||||
pushd src/command-line-api.*
|
||||
@ -447,10 +438,6 @@ pushd src/installer.*
|
||||
%patch1600 -p1
|
||||
popd
|
||||
|
||||
# We need to apply the patch to the already-built tarball's
|
||||
# repos/runtime.common.targets, not to the installer's "source" copy.
|
||||
%patch1601 -p5
|
||||
|
||||
# Disable package validation which breaks our build.
|
||||
# There's no need to run validation in RPM packages anyway.
|
||||
# See https://github.com/dotnet/runtime/pull/60881
|
||||
@ -528,11 +515,12 @@ ls artifacts/%{runtime_arch}/Release
|
||||
tar xf artifacts/%{runtime_arch}/Release/dotnet-sdk-%{sdk_version}-%{runtime_id}.tar.gz -C %{buildroot}%{_libdir}/dotnet/
|
||||
|
||||
# See https://github.com/dotnet/source-build/issues/2579
|
||||
find %{buildroot}%{_libdir}/dotnet/ -type f -iname testhost.x86 -delete
|
||||
find %{buildroot}%{_libdir}/dotnet/ -type f -iname vstest.console -delete
|
||||
find %{buildroot}%{_libdir}/dotnet/ -type f -name 'testhost.x86' -delete
|
||||
find %{buildroot}%{_libdir}/dotnet/ -type f -name 'vstest.console' -delete
|
||||
|
||||
# Install managed symbols
|
||||
# Disabled until https://github.com/dotnet/source-build/issues/2623 is sorted out
|
||||
# Install managed symbols: disabled because they don't contain sources
|
||||
# but point to the paths the sources would have been at in the build
|
||||
# servers. The end user experience is pretty bad atm.
|
||||
# tar xf artifacts/%%{runtime_arch}/Release/runtime/dotnet-runtime-symbols-%%{runtime_id}-%%{runtime_version}.tar.gz \
|
||||
# -C %%{buildroot}/%%{_libdir}/dotnet/shared/Microsoft.NETCore.App/%%{runtime_version}/
|
||||
|
||||
@ -577,13 +565,15 @@ install install_location_%{runtime_arch} %{buildroot}%{_sysconfdir}/dotnet/
|
||||
install -dm 0755 %{buildroot}%{_libdir}/dotnet/source-built-artifacts
|
||||
install -m 0644 artifacts/%{runtime_arch}/Release/Private.SourceBuilt.Artifacts.*.tar.gz %{buildroot}/%{_libdir}/dotnet/source-built-artifacts/
|
||||
|
||||
# Quick and dirty check for https://github.com/dotnet/source-build/issues/2731
|
||||
test -f %{buildroot}%{_libdir}/dotnet/sdk/%{sdk_version}/Sdks/Microsoft.NET.Sdk/Sdk/Sdk.props
|
||||
|
||||
|
||||
# Check debug symbols in all elf objects. This is not in %%check
|
||||
# because native binaries are stripped by rpm-build after %%install.
|
||||
# So we need to do this check earlier.
|
||||
# FIXME
|
||||
#echo "Testing build results for debug symbols..."
|
||||
#%%{SOURCE10} -v %%{buildroot}%%{_libdir}/dotnet/
|
||||
echo "Testing build results for debug symbols..."
|
||||
%{SOURCE10} -v %{buildroot}%{_libdir}/dotnet/
|
||||
|
||||
|
||||
|
||||
@ -648,6 +638,10 @@ test -f %{buildroot}%{_libdir}/dotnet/sdk/%{sdk_version}/Sdks/Microsoft.NET.Sdk/
|
||||
|
||||
|
||||
%changelog
|
||||
* Tue Feb 15 2022 Omair Majid <omajid@redhat.com> - 6.0.102-3
|
||||
- Disable bootstrap
|
||||
- Related: RHBZ#1986211
|
||||
|
||||
* Fri Feb 04 2022 Omair Majid <omajid@redhat.com> - 6.0.100-2
|
||||
- Rebuild and check SDK to avoid an incomplete SDK
|
||||
- Related: RHBZ#1986211
|
||||
|
@ -1,48 +0,0 @@
|
||||
From 7365824ddc6ed66152cfc50f4c8508368953099c Mon Sep 17 00:00:00 2001
|
||||
From: Omair Majid <omajid@redhat.com>
|
||||
Date: Tue, 9 Nov 2021 08:39:27 -0500
|
||||
Subject: [PATCH] Also publish non-portable RID runtime symbols tarball
|
||||
|
||||
This fixes a regression in .NET 6 source-build compared to the .NET
|
||||
5 source-build.
|
||||
|
||||
source-build wants to publish runtime symbols tarball for portable (eg,
|
||||
linux-x64) and non-portable (eg, fedora.33-x64) RIDs here after a build.
|
||||
Following .NET 5 conventions, I expected to see:
|
||||
|
||||
./artifacts/x64/Release/runtime/dotnet-runtime-symbols-fedora.34-x64-6.0.0.tar.gz
|
||||
./artifacts/x64/Release/runtime/dotnet-runtime-symbols-linux-x64-6.0.0.tar.gz
|
||||
|
||||
Unfortunately, only the portable RID (linux-x64) tarball is present
|
||||
after a full source-build in .NET 6.
|
||||
|
||||
It turns out this is a bug in our build scripts. We try and copy
|
||||
binaries - including the symbol tarballs - after building each of
|
||||
runtime-portable and runtime. However, the target dependency is wrong:
|
||||
after `Build`, the intermediate package doesn't exist from the
|
||||
just-built repo.
|
||||
|
||||
What ends up happening is that nothing is copied after building
|
||||
runtime-portable. However, after building runtime, the runtime-portable
|
||||
intermediate artifacts are found and copied over. So the end
|
||||
build has portable RID symbos, but not the non-portable ones.
|
||||
|
||||
Fix that by changing the dependency of this target so it runs after
|
||||
intermediate packages are available.
|
||||
---
|
||||
src/SourceBuild/tarball/content/repos/runtime.common.targets | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/SourceBuild/tarball/content/repos/runtime.common.targets b/src/SourceBuild/tarball/content/repos/runtime.common.targets
|
||||
index ca606b23d21..862b70dc832 100644
|
||||
--- a/src/SourceBuild/tarball/content/repos/runtime.common.targets
|
||||
+++ b/src/SourceBuild/tarball/content/repos/runtime.common.targets
|
||||
@@ -23,7 +23,7 @@
|
||||
</Target>
|
||||
|
||||
<Target Name="CopyBinariesToBinFolder"
|
||||
- AfterTargets="Build"
|
||||
+ AfterTargets="ExtractIntermediatePackages"
|
||||
Inputs="$(MSBuildProjectFullPath)"
|
||||
Outputs="$(RepoCompletedSemaphorePath)CopyBinariesToBinFolder.complete">
|
||||
<ItemGroup>
|
@ -1,41 +0,0 @@
|
||||
From f41c06ba040adf1930156340c5b03d9864d8a1d4 Mon Sep 17 00:00:00 2001
|
||||
From: Omair Majid <omajid@redhat.com>
|
||||
Date: Wed, 10 Nov 2021 17:54:45 -0500
|
||||
Subject: [PATCH] The 6.0 branch is no longer pre-release
|
||||
|
||||
This has limited affects, but it should have been set to false since 6.0
|
||||
is now stable/released.
|
||||
|
||||
The one difference it makes is that -Werror is disabled when building
|
||||
native code.
|
||||
---
|
||||
Directory.Build.props | 2 +-
|
||||
eng/native/configureplatform.cmake | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/Directory.Build.props b/Directory.Build.props
|
||||
index f19ea9208c2c..5cb87bb7c257 100644
|
||||
--- a/Directory.Build.props
|
||||
+++ b/Directory.Build.props
|
||||
@@ -255,7 +255,7 @@
|
||||
<PackageReleaseNotes>https://go.microsoft.com/fwlink/?LinkID=799421</PackageReleaseNotes>
|
||||
<!-- Indicates this is not an officially supported release. Release branches should set this to false. -->
|
||||
<!-- Keep it in sync with PRERELEASE in eng/native/configureplatform.cmake -->
|
||||
- <IsPrerelease>true</IsPrerelease>
|
||||
+ <IsPrerelease>false</IsPrerelease>
|
||||
<IsPrivateAssembly>$(MSBuildProjectName.Contains('Private'))</IsPrivateAssembly>
|
||||
<!-- Private packages should not be stable -->
|
||||
<SuppressFinalPackageVersion Condition="'$(SuppressFinalPackageVersion)' == '' and $(IsPrivateAssembly)">true</SuppressFinalPackageVersion>
|
||||
diff --git a/eng/native/configureplatform.cmake b/eng/native/configureplatform.cmake
|
||||
index 519431772004..af1c88bce5b6 100644
|
||||
--- a/eng/native/configureplatform.cmake
|
||||
+++ b/eng/native/configureplatform.cmake
|
||||
@@ -2,7 +2,7 @@ include(${CMAKE_CURRENT_LIST_DIR}/functions.cmake)
|
||||
|
||||
# If set, indicates that this is not an officially supported release
|
||||
# Keep in sync with IsPrerelease in Directory.Build.props
|
||||
-set(PRERELEASE 1)
|
||||
+set(PRERELEASE 0)
|
||||
|
||||
#----------------------------------------
|
||||
# Detect and set platform variable names
|
@ -1,76 +0,0 @@
|
||||
From 9cd95a5608b667e22727d9eb1a5330efd61dfe50 Mon Sep 17 00:00:00 2001
|
||||
From: Jan Vorlicek <janvorli@microsoft.com>
|
||||
Date: Mon, 29 Nov 2021 17:32:45 -0800
|
||||
Subject: [PATCH] Fix clang 13 induced runtime issues
|
||||
|
||||
The clang 13 optimizer started to assume that "this" pointer is always
|
||||
properly aligned. That lead to elimination of some code that was actually
|
||||
needed.
|
||||
It also takes pointer aliasing rules more strictly in one place in jit.
|
||||
That caused the optimizer to falsely assume that a callee with an argument
|
||||
passed by reference is not modifying that argument and used a stale
|
||||
copy of the original value at the caller site.
|
||||
|
||||
This change fixes both of the issues. With this fix, runtime compiled
|
||||
using clang 13 seems to be fully functional.
|
||||
---
|
||||
src/coreclr/inc/corhlpr.h | 8 ++++----
|
||||
src/coreclr/jit/bitsetasshortlong.h | 4 ++--
|
||||
2 files changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/src/coreclr/inc/corhlpr.h b/src/coreclr/inc/corhlpr.h
|
||||
index 450514da95c1..427e8cdc0ff5 100644
|
||||
--- a/src/coreclr/inc/corhlpr.h
|
||||
+++ b/src/coreclr/inc/corhlpr.h
|
||||
@@ -336,7 +336,7 @@ struct COR_ILMETHOD_SECT
|
||||
const COR_ILMETHOD_SECT* Next() const
|
||||
{
|
||||
if (!More()) return(0);
|
||||
- return ((COR_ILMETHOD_SECT*)(((BYTE *)this) + DataSize()))->Align();
|
||||
+ return ((COR_ILMETHOD_SECT*)Align(((BYTE *)this) + DataSize()));
|
||||
}
|
||||
|
||||
const BYTE* Data() const
|
||||
@@ -374,9 +374,9 @@ struct COR_ILMETHOD_SECT
|
||||
return((AsSmall()->Kind & CorILMethod_Sect_FatFormat) != 0);
|
||||
}
|
||||
|
||||
- const COR_ILMETHOD_SECT* Align() const
|
||||
+ static const void* Align(const void* p)
|
||||
{
|
||||
- return((COR_ILMETHOD_SECT*) ((((UINT_PTR) this) + 3) & ~3));
|
||||
+ return((void*) ((((UINT_PTR) p) + 3) & ~3));
|
||||
}
|
||||
|
||||
protected:
|
||||
@@ -579,7 +579,7 @@ typedef struct tagCOR_ILMETHOD_FAT : IMAGE_COR_ILMETHOD_FAT
|
||||
|
||||
const COR_ILMETHOD_SECT* GetSect() const {
|
||||
if (!More()) return (0);
|
||||
- return(((COR_ILMETHOD_SECT*) (GetCode() + GetCodeSize()))->Align());
|
||||
+ return(((COR_ILMETHOD_SECT*) COR_ILMETHOD_SECT::Align(GetCode() + GetCodeSize())));
|
||||
}
|
||||
} COR_ILMETHOD_FAT;
|
||||
|
||||
diff --git a/src/coreclr/jit/bitsetasshortlong.h b/src/coreclr/jit/bitsetasshortlong.h
|
||||
index d343edeeda4c..365cf346a10a 100644
|
||||
--- a/src/coreclr/jit/bitsetasshortlong.h
|
||||
+++ b/src/coreclr/jit/bitsetasshortlong.h
|
||||
@@ -345,7 +345,7 @@ class BitSetOps</*BitSetType*/ BitSetShortLongRep,
|
||||
{
|
||||
if (IsShort(env))
|
||||
{
|
||||
- (size_t&)out = (size_t)out & ((size_t)gen | (size_t)in);
|
||||
+ out = (BitSetShortLongRep)((size_t)out & ((size_t)gen | (size_t)in));
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -361,7 +361,7 @@ class BitSetOps</*BitSetType*/ BitSetShortLongRep,
|
||||
{
|
||||
if (IsShort(env))
|
||||
{
|
||||
- (size_t&)in = (size_t)use | ((size_t)out & ~(size_t)def);
|
||||
+ in = (BitSetShortLongRep)((size_t)use | ((size_t)out & ~(size_t)def));
|
||||
}
|
||||
else
|
||||
{
|
4
sources
4
sources
@ -1,3 +1 @@
|
||||
SHA512 (dotnet-9e8b04bbff820c93c142f99a507a46b976f5c14c-x64-bootstrap.tar.xz) = dedbc8619af5141f7cba108c4060cbbcf9c4c4c8968180ed1dc71d2afdf829a99c479b6daaf5c15018b8cd66de14eb6fee9fc4072f81546067544a6a6a20b641
|
||||
SHA512 (dotnet-arm64-prebuilts-2021-10-29.tar.gz) = e24fb8bb8b0fb24f52a68d472356574d8edf7af554b14618aeeae6ff76b54ce5e6d8a9deb056f9bc052bff8d17bae01c6475217039508bb0e08303f9f6c4b5d1
|
||||
SHA512 (dotnet-s390x-prebuilts-2021-10-29.tar.gz) = 6ea9d857edce50efd1cc35a73b3b3ccb170bbdb5cc4c8b20fb0ee1c7cb75cc573a565b01ef1bf4eec10a3e6e5209143957425cee5ff3fe24c7c1c89813272a99
|
||||
SHA512 (dotnet-v6.0.102.tar.gz) = dcb4102b1a6c9e1889d80f8cecf30da00ad16320cbbf14de891db632ebaa0b872501865957429107ade0caef569a2f2ed5ccb70111de7772838b820997f0c36e
|
||||
|
Loading…
Reference in New Issue
Block a user