From 4fd04b364310d69221a643f40756e0ed3ded84c5 Mon Sep 17 00:00:00 2001 From: Omair Majid Date: Thu, 18 May 2023 10:28:40 -0400 Subject: [PATCH] Update to .NET 8 Preview 4 --- build-dotnet-tarball | 4 ++-- dotnet8.0.spec | 48 +++++++++++++++++++++++++++++--------------- release.json | 9 +++++++++ 3 files changed, 43 insertions(+), 18 deletions(-) create mode 100644 release.json diff --git a/build-dotnet-tarball b/build-dotnet-tarball index bec5aed..ef53911 100755 --- a/build-dotnet-tarball +++ b/build-dotnet-tarball @@ -119,8 +119,8 @@ if [ -f "${tarball_name}${tarball_suffix}" ]; then fi if [ ! -f "${unmodified_tarball_name}.tar.gz" ]; then - wget "https://github.com/dotnet/dotnet/releases/download/${tag}/dotnet-sdk-source-${tag}.tar.gz" - mv "dotnet-sdk-source-${tag}.tar.gz" "${unmodified_tarball_name}.tar.gz" + wget https://github.com/dotnet/dotnet/archive/refs/tags/${tag}.tar.gz + mv "${tag}.tar.gz" "${unmodified_tarball_name}.tar.gz" #temp_dir=$(mktemp -d -p "$(pwd)" -t temp-build-dotnet-tarball-XXXXXXXXXX) #pushd "${temp_dir}" diff --git a/dotnet8.0.spec b/dotnet8.0.spec index b7fe451..d6fecf3 100644 --- a/dotnet8.0.spec +++ b/dotnet8.0.spec @@ -8,21 +8,22 @@ %global dotnetver 8.0 -# upstream can update releases without revving the SDK version so these don't always match -%global upstream_tag v8.0.100-preview.3.23178.7 - -%global host_version 8.0.0-preview.3.23174.8 -%global runtime_version 8.0.0-preview.3.23174.8 -%global aspnetcore_runtime_version 8.0.0-preview.3.23177.8 -%global sdk_version 8.0.100-preview.3.23210.1 +%global host_version 8.0.0-preview.4.23259.5 +%global runtime_version 8.0.0-preview.4.23259.5 +%global aspnetcore_runtime_version 8.0.0-preview.4.23260.4 +%global sdk_version 8.0.100-preview.4.23260.1 %global sdk_feature_band_version %(echo %{sdk_version} | cut -d '-' -f 1 | sed -e 's|[[:digit:]][[:digit:]]$|00|') -%global templates_version 8.0.0-preview.3.23177.8 +%global templates_version 8.0.0-preview.4.23260.4 #%%global templates_version %%(echo %%{runtime_version} | awk 'BEGIN { FS="."; OFS="." } {print $1, $2, $3+1 }') -%global host_rpm_version 8.0.0~preview.3 -%global runtime_rpm_version 8.0.0~preview.3 -%global aspnetcore_runtime_rpm_version 8.0.0~preview.3 -%global sdk_rpm_version 8.0.100~preview.3 +# upstream can update releases without revving the SDK version so these don't always match +%global upstream_tag v8.0.0-preview.4.23259.5 +%global upstream_tag_without_v %(echo %{upstream_tag} | sed -e 's|^v||') + +%global host_rpm_version 8.0.0~preview.4 +%global runtime_rpm_version 8.0.0~preview.4 +%global aspnetcore_runtime_rpm_version 8.0.0~preview.4 +%global sdk_rpm_version 8.0.100~preview.4 %if 0%{?fedora} || 0%{?rhel} < 8 %global use_bundled_libunwind 0 @@ -65,7 +66,7 @@ URL: https://github.com/dotnet/ # ./build-dotnet-tarball --bootstrap %%{upstream_tag} Source0: %{tarball_name}.tar.xz # Generated via ./build-arm64-bootstrap-tarball -Source1: dotnet-arm64-prebuilts-2023-04-12.tar.gz +Source1: dotnet-arm64-prebuilts-2023-05-17.tar.gz # Generated manually, same pattern as the arm64 tarball #Source2: dotnet-ppc64le-prebuilts-2022-10-21.tar.gz # Generated manually, same pattern as the arm64 tarball @@ -74,8 +75,9 @@ Source1: dotnet-arm64-prebuilts-2023-04-12.tar.gz # For non-releases, the source is generated on a Fedora box via: # ./build-dotnet-tarball %%{upstream_tag} or commit %global tarball_name dotnet-sdk-source-%{upstream_tag} -Source0: https://github.com/dotnet/dotnet/releases/download/%{sdk_version}/%{tarball_name}.tar.gz +Source0: https://github.com/dotnet/dotnet/archive/refs/tags/%{upstream_tag}.tar.gz#/dotnet-%{upstream_tag_without_v}.tar.gz %endif +Source5: https://github.com/dotnet/dotnet/releases/download/%{upstream_tag}/release.json #Source10: %%{tarball_name}-nm-dev.tgz #Source11: %%{tarball_name}-nm-prod.tgz @@ -112,9 +114,7 @@ BuildRequires: libicu-devel %if ! %{use_bundled_libunwind} BuildRequires: libunwind-devel %endif -%ifarch aarch64 BuildRequires: lld -%endif # If the build ever crashes, then having lldb installed might help the # runtime generate a backtrace for the crash BuildRequires: lldb @@ -487,6 +487,7 @@ VERBOSE=1 ./build.sh \ %ifarch %{mono_archs} --use-mono-runtime \ %endif + --release-manifest %{SOURCE5} \ -- \ /p:MinimalConsoleLogOutput=false \ /p:ContinueOnPrebuiltBaselineError=true \ @@ -506,12 +507,27 @@ tar xf artifacts/%{runtime_arch}/Release/dotnet-sdk-%{sdk_version}-%{runtime_id} find %{buildroot}%{_libdir}/dotnet/ -type f -name 'testhost.x86' -delete find %{buildroot}%{_libdir}/dotnet/ -type f -name 'vstest.console' -delete +# https://github.com/dotnet/source-build/issues/3452 +find %{buildroot}%{_libdir}/dotnet/ -type f -name 'containerize' -delete + +# Delete bundled certificates: we want to use the system store only, +# except for when we have no other choice and ca-certificates doesn't +# provide it. Currently ca-ceritificates has no support for +# timestamping certificates (timestamp.ctl). +find %{buildroot}%{_libdir}/dotnet -name 'codesignctl.pem' -delete +if [[ $(find %{buildroot}%{_libdir}/dotnet -name '*.pem' -print | wc -l) != 1 ]]; then + find %{buildroot}%{_libdir}/dotnet -name '*.pem' -print + echo "too many certificate bundles" + exit 2 +fi + # Install managed symbols 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}/ # Fix executable permissions on files find %{buildroot}%{_libdir}/dotnet/ -type f -name 'apphost' -exec chmod +x {} \; +#find %{buildroot}%{_libdir}/dotnet/ -type f -name 'containerize' -exec chmod +x {} \; find %{buildroot}%{_libdir}/dotnet/ -type f -name 'singlefilehost' -exec chmod +x {} \; find %{buildroot}%{_libdir}/dotnet/ -type f -name 'lib*so' -exec chmod +x {} \; find %{buildroot}%{_libdir}/dotnet/ -type f -name '*.a' -exec chmod -x {} \; diff --git a/release.json b/release.json new file mode 100644 index 0000000..c358c1e --- /dev/null +++ b/release.json @@ -0,0 +1,9 @@ +{ + "release": "8.0.0-preview.4", + "channel": "8.0", + "tag": "v8.0.0-preview.4.23259.5", + "sdkVersion": "8.0.100-preview.4.23260.5", + "runtimeVersion": "8.0.0-preview.4.23259.5", + "sourceRepository": "https://github.com/dotnet/dotnet", + "sourceVersion": "5c2ab7ee737adf4b43071fedfd702b861ec8d8ef" +}