diff --git a/.dotnet6.0.metadata b/.dotnet6.0.metadata index 4db4fcf..ce1ac50 100644 --- a/.dotnet6.0.metadata +++ b/.dotnet6.0.metadata @@ -1 +1 @@ -f2c1dc7dad1af4b9f6f48b507cad4042446af0a0 SOURCES/dotnet-v6.0.102-SDK.tar.gz +fabf7d61080026082feb263ff7cb6bf5d110cb89 SOURCES/dotnet-v6.0.103-SDK.tar.gz diff --git a/.gitignore b/.gitignore index 0f67fc4..648d0f3 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/dotnet-v6.0.102-SDK.tar.gz +SOURCES/dotnet-v6.0.103-SDK.tar.gz diff --git a/SOURCES/check-debug-symbols.py b/SOURCES/check-debug-symbols.py index be26d87..53d5fd2 100755 --- a/SOURCES/check-debug-symbols.py +++ b/SOURCES/check-debug-symbols.py @@ -65,7 +65,7 @@ def scan_file(file): def is_elf(file): result = subprocess.run(['file', file], stdout=subprocess.PIPE, encoding='utf-8', check=True) - return re.search('ELF 64-bit LSB (?:executable|shared object)', result.stdout) + return re.search(r'ELF 64-bit [LM]SB (?:pie )?(?:executable|shared object)', result.stdout) def scan_file_if_sensible(file): if is_elf(file): diff --git a/SOURCES/runtime-66594-s390x-debuginfo.patch b/SOURCES/runtime-66594-s390x-debuginfo.patch new file mode 100644 index 0000000..5637645 --- /dev/null +++ b/SOURCES/runtime-66594-s390x-debuginfo.patch @@ -0,0 +1,29 @@ +diff --git a/src/mono/mono.proj b/src/mono/mono.proj +index fb98ffc1896..d6a0c9a8ec2 100644 +--- a/src/mono/mono.proj ++++ b/src/mono/mono.proj +@@ -519,17 +519,17 @@ + + <_Objcopy Condition="'$(_ObjcopyFound)' != '0'">objcopy + +- ++ + + + + +- +- +- +- +- +- ++ ++ ++ ++ ++ ++ + + + diff --git a/SPECS/dotnet6.0.spec b/SPECS/dotnet6.0.spec index 300b603..1d7627d 100644 --- a/SPECS/dotnet6.0.spec +++ b/SPECS/dotnet6.0.spec @@ -20,10 +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.2 -%global runtime_version 6.0.2 +%global host_version 6.0.3 +%global runtime_version 6.0.3 %global aspnetcore_runtime_version %{runtime_version} -%global sdk_version 6.0.102 +%global sdk_version 6.0.103 +%global sdk_feature_band_version %(echo %{sdk_version} | sed -e 's|[[:digit:]][[:digit:]]$|00|') %global templates_version %{runtime_version} #%%global templates_version %%(echo %%{runtime_version} | awk 'BEGIN { FS="."; OFS="." } {print $1, $2, $3+1 }') @@ -59,7 +60,7 @@ Name: dotnet6.0 Version: %{sdk_rpm_version} -Release: 2%{?dist} +Release: 5%{?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,6 +87,8 @@ 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/66594 +Patch102: runtime-66594-s390x-debuginfo.patch # Disable apphost, needed for s390x Patch500: fsharp-no-apphost.patch @@ -229,6 +232,8 @@ Requires: dotnet-hostfxr-6.0%{?_isa} >= %{host_rpm_version}-%{release} # libicu is dlopen()ed Requires: libicu%{?_isa} +# See src/runtime.*/src/libraries/Native/AnyOS/brotli-version.txt +Provides: bundled(libbrotli) = 1.0.9 %if %{use_bundled_libunwind} # See runtime.*/src/coreclr/pal/src/libunwind/libunwind-version.txt Provides: bundled(libunwind) = 1.5.rc1.28.g9165d2a1 @@ -394,6 +399,7 @@ sed -i 's|/usr/share/dotnet|%{_libdir}/dotnet|' src/runtime.*/src/native/corehos pushd src/runtime.* %patch100 -p1 %patch101 -p1 +%patch102 -p1 popd pushd src/fsharp.* @@ -460,24 +466,28 @@ export CXXFLAGS="%{dotnet_cflags}" export LDFLAGS="%{dotnet_ldflags}" %endif +# -fstack-clash-protection breaks CoreCLR +CFLAGS=$(echo $CFLAGS | sed -e 's/-fstack-clash-protection//' ) +CXXFLAGS=$(echo $CXXFLAGS | sed -e 's/-fstack-clash-protection//' ) + %ifarch aarch64 # -mbranch-protection=standard breaks unwinding in CoreCLR through libunwind CFLAGS=$(echo $CFLAGS | sed -e 's/-mbranch-protection=standard //') CXXFLAGS=$(echo $CXXFLAGS | sed -e 's/-mbranch-protection=standard //') %endif -# -fstack-clash-protection breaks CoreCLR -CFLAGS=$(echo $CFLAGS | sed -e 's/-fstack-clash-protection//' ) -CXXFLAGS=$(echo $CXXFLAGS | sed -e 's/-fstack-clash-protection//' ) +%ifarch s390x +# -march=z13 -mtune=z14 makes clang crash while compiling .NET +CFLAGS=$(echo $CFLAGS | sed -e 's/ -march=z13//') +CFLAGS=$(echo $CFLAGS | sed -e 's/ -mtune=z14//') +CXXFLAGS=$(echo $CXXFLAGS | sed -e 's/ -march=z13//') +CXXFLAGS=$(echo $CXXFLAGS | sed -e 's/ -mtune=z14//') +%endif export EXTRA_CFLAGS="$CFLAGS" export EXTRA_CXXFLAGS="$CXXFLAGS" export EXTRA_LDFLAGS="$LDFLAGS" -unset CFLAGS -unset CXXFLAGS -unset LDFLAGS - VERBOSE=1 ./build.sh \ %if %{without bootstrap} --with-sdk previously-built-dotnet \ @@ -550,18 +560,20 @@ 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/ %check %{buildroot}%{_libdir}/dotnet/dotnet --info +%{buildroot}%{_libdir}/dotnet/dotnet --version %files -n dotnet @@ -604,8 +616,7 @@ install -m 0644 artifacts/%{runtime_arch}/Release/Private.SourceBuilt.Artifacts. %dir %{_libdir}/dotnet/sdk %{_libdir}/dotnet/sdk/%{sdk_version} %dir %{_libdir}/dotnet/sdk-manifests -# FIXME hardcoded version? -%{_libdir}/dotnet/sdk-manifests/6.0.100 +%{_libdir}/dotnet/sdk-manifests/%{sdk_feature_band_version} %{_libdir}/dotnet/metadata %dir %{_libdir}/dotnet/packs @@ -615,6 +626,10 @@ install -m 0644 artifacts/%{runtime_arch}/Release/Private.SourceBuilt.Artifacts. %changelog +* Wed Mar 23 2022 Omair Majid - 6.0.103-5 +- Update to .NET SDK 6.0.103 and Runtime 6.0.3 +- Resolves: RHBZ#2059636 + * Thu Feb 17 2022 Omair Majid - 6.0.102-1 - Update to .NET SDK 6.0.102 and Runtime 6.0.2 - Resolves: RHBZ#2030390