Compare commits
2 Commits
c10s
...
c8-bootstr
| Author | SHA1 | Date | |
|---|---|---|---|
| 59bba82f0f | |||
| eec55923bd |
4
.dotnet9.0.metadata
Normal file
4
.dotnet9.0.metadata
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
1524c4e88cdd9e1541e6df4c1304b64c25d1fab4 SOURCES/dotnet-prebuilts-9.0.100-rc.1.24452.1-ppc64le.tar.gz
|
||||||
|
45445b61d719b9d76c72fa206f621e0d9c942687 SOURCES/dotnet-prebuilts-9.0.100-rc.1.24452.1-s390x.tar.gz
|
||||||
|
f728426f75ed9295e7d424d664e70a773782cc3f SOURCES/dotnet-sdk-9.0.100-rc.1.24452.12-linux-arm64.tar.gz
|
||||||
|
a8c2517b882a7ee1e1091c852e6ff4ab1f383f01 SOURCES/dotnet-v9.0.0-rc.2.24473.5-x64-bootstrap.tar.gz
|
||||||
@ -1 +0,0 @@
|
|||||||
1
|
|
||||||
58
.gitignore
vendored
58
.gitignore
vendored
@ -1,54 +1,4 @@
|
|||||||
/dotnet-prebuilts-9.0.100-preview.7.24380.1-ppc64le.tar.gz
|
SOURCES/dotnet-prebuilts-9.0.100-rc.1.24452.1-ppc64le.tar.gz
|
||||||
/dotnet-prebuilts-9.0.100-preview.7.24380.1-s390x.tar.gz
|
SOURCES/dotnet-prebuilts-9.0.100-rc.1.24452.1-s390x.tar.gz
|
||||||
/dotnet-sdk-9.0.100-preview.7.24380.2-linux-arm64.tar.gz
|
SOURCES/dotnet-sdk-9.0.100-rc.1.24452.12-linux-arm64.tar.gz
|
||||||
/dotnet-v9.0.0-preview.7.24405.7-x64-bootstrap.tar.gz
|
SOURCES/dotnet-v9.0.0-rc.2.24473.5-x64-bootstrap.tar.gz
|
||||||
/dotnet-9.0.0-preview.7.24405.7.tar.gz
|
|
||||||
/dotnet-9.0.0-preview.7.24405.7.tar.gz.sig
|
|
||||||
/dotnet-9.0.0-rc.1.24431.7.tar.gz
|
|
||||||
/dotnet-9.0.0-rc.1.24431.7.tar.gz.sig
|
|
||||||
/dotnet-9.0.0-rc.2.24473.5.tar.gz
|
|
||||||
/dotnet-9.0.0-rc.2.24473.5.tar.gz.sig
|
|
||||||
/dotnet-v9.0.0-rc.2.24473.5-x64-bootstrap.tar.gz
|
|
||||||
/dotnet-sdk-9.0.100-rc.1.24452.12-linux-arm64.tar.gz
|
|
||||||
/dotnet-prebuilts-9.0.100-rc.1.24452.1-ppc64le.tar.gz
|
|
||||||
/dotnet-prebuilts-9.0.100-rc.1.24452.1-s390x.tar.gz
|
|
||||||
/dotnet-9.0.1.tar.gz
|
|
||||||
/dotnet-9.0.1.tar.gz.sig
|
|
||||||
/dotnet-v9.0.1-x64-bootstrap.tar.gz
|
|
||||||
/dotnet-sdk-9.0.101-linux-arm64.tar.gz
|
|
||||||
/dotnet-prebuilts-9.0.101-ppc64le.tar.gz
|
|
||||||
/dotnet-prebuilts-9.0.101-s390x.tar.gz
|
|
||||||
/dotnet-9.0.2.tar.gz
|
|
||||||
/dotnet-9.0.2.tar.gz.sig
|
|
||||||
/dotnet-9.0.3.tar.gz
|
|
||||||
/dotnet-9.0.3.tar.gz.sig
|
|
||||||
/dotnet-9.0.4.tar.gz
|
|
||||||
/dotnet-9.0.4.tar.gz.sig
|
|
||||||
/dotnet-9.0.5.tar.gz
|
|
||||||
/dotnet-9.0.5.tar.gz.sig
|
|
||||||
/dotnet-9.0.6.tar.gz
|
|
||||||
/dotnet-9.0.6.tar.gz.sig
|
|
||||||
/dotnet-9.0.7.tar.gz
|
|
||||||
/dotnet-9.0.7.tar.gz.sig
|
|
||||||
/dotnet-9.0.109.tar.gz
|
|
||||||
/dotnet-9.0.109.tar.gz.sig
|
|
||||||
/dotnet-9.0.110.tar.gz
|
|
||||||
/dotnet-9.0.110.tar.gz.sig
|
|
||||||
/dotnet-9.0.111.tar.gz
|
|
||||||
/dotnet-9.0.111.tar.gz.sig
|
|
||||||
/dotnet-9.0.112.tar.gz
|
|
||||||
/dotnet-9.0.112.tar.gz.sig
|
|
||||||
/dotnet-9.0.113.tar.gz
|
|
||||||
/dotnet-9.0.113.tar.gz.sig
|
|
||||||
/dotnet-9.0.114.tar.gz
|
|
||||||
/dotnet-9.0.114.tar.gz.sig
|
|
||||||
/dotnet-9.0.115.tar.gz
|
|
||||||
/dotnet-9.0.115.tar.gz.sig
|
|
||||||
/dotnet-9.0.116.tar.gz
|
|
||||||
/dotnet-9.0.116.tar.gz.sig
|
|
||||||
/dotnet-9.0.117.tar.gz
|
|
||||||
/dotnet-9.0.117.tar.gz.sig
|
|
||||||
/dotnet-9.0.118.tar.gz
|
|
||||||
/dotnet-9.0.118.tar.gz.sig
|
|
||||||
/dotnet-9.0.119.tar.gz
|
|
||||||
/dotnet-9.0.119.tar.gz.sig
|
|
||||||
|
|||||||
74
README.md
74
README.md
@ -1,74 +0,0 @@
|
|||||||
# dotnet9.0
|
|
||||||
|
|
||||||
This is the .NET 9.0 package for RHEL.
|
|
||||||
|
|
||||||
Please report any issues [using Jira](https://issues.redhat.com/).
|
|
||||||
|
|
||||||
# Specification
|
|
||||||
|
|
||||||
This package follows [package naming and contents suggested by
|
|
||||||
upstream](https://docs.microsoft.com/en-us/dotnet/core/build/distribution-packaging),
|
|
||||||
with one exception. It installs dotnet to `/usr/lib64/dotnet` (aka
|
|
||||||
`%{_libdir}`).
|
|
||||||
|
|
||||||
# Contributing
|
|
||||||
|
|
||||||
1. Fork the repo.
|
|
||||||
|
|
||||||
2. Checkout the forked repository.
|
|
||||||
|
|
||||||
- `git clone git@gitlab.com:$USER/centos_rpms_dotnet9.0.git dotnet9.0`
|
|
||||||
- `cd dotnet9.0`
|
|
||||||
|
|
||||||
3. Make your changes. Don't forget to add a changelog.
|
|
||||||
|
|
||||||
If you are updating to a new upstream release: Get the new upstream source
|
|
||||||
tarball and the detached signature. Update the versions in the spec file.
|
|
||||||
Add a changelog. This is generally automated by the following.
|
|
||||||
|
|
||||||
- `./update-release <sdk-version> <runtime-version>`
|
|
||||||
|
|
||||||
If this fails because of compiler errors, you might have to figure
|
|
||||||
out a fix, then add the patch in `build-dotnet-tarball` script
|
|
||||||
rather than the spec file.
|
|
||||||
|
|
||||||
4. Do local builds.
|
|
||||||
|
|
||||||
- `centpkg local`
|
|
||||||
|
|
||||||
5. Fix any errors that come up and rebuild until it works locally. Any
|
|
||||||
patches that are needed at this point should be added to the spec file.
|
|
||||||
|
|
||||||
6. Do builds in koji.
|
|
||||||
|
|
||||||
- `centpkg scratch-build --srpm`
|
|
||||||
|
|
||||||
7. If this is a new release, upload the source archive and detached signature to
|
|
||||||
the look-aside cache.
|
|
||||||
|
|
||||||
- `centpkg new-sources dotnet-source-tarball.tar.gz dotnet-source-tarball.tar.gz.sig`
|
|
||||||
|
|
||||||
8. Commit the changes to the git repo.
|
|
||||||
|
|
||||||
- `git add` any new patches
|
|
||||||
- `git remove` any now-unnecessary patches
|
|
||||||
- `git commit -a`
|
|
||||||
- `git push`
|
|
||||||
|
|
||||||
9. Create a pull request with your changes.
|
|
||||||
|
|
||||||
10. Once the tests in the pull-request pass, and reviewers are happy, merge the
|
|
||||||
pull request and do a real build.
|
|
||||||
|
|
||||||
- `centpkg build`
|
|
||||||
|
|
||||||
# Testing
|
|
||||||
|
|
||||||
This package uses CI tests as defined in `tests/ci.yml`. You can run them using
|
|
||||||
[tmt](https://tmt.readthedocs.io/en/stable/overview.html). Creating a
|
|
||||||
pull-request or running an official build will fire off tests and flag any
|
|
||||||
issues. We have enabled gating (via `gating.yaml`) on the tests. That prevents
|
|
||||||
a build that fails any test from being released until the failures are waived.
|
|
||||||
|
|
||||||
The tests themselves are contained in this external repository:
|
|
||||||
https://github.com/redhat-developer/dotnet-regular-tests/
|
|
||||||
10
SOURCES/release.json
Normal file
10
SOURCES/release.json
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"release": "9.0.0-rc.2",
|
||||||
|
"channel": "9.0",
|
||||||
|
"tag": "v9.0.0-rc.2.24473.5",
|
||||||
|
"sdkVersion": "9.0.100-rc.2.24474.11",
|
||||||
|
"runtimeVersion": "9.0.0-rc.2.24473.5",
|
||||||
|
"aspNetCoreVersion": "9.0.0-rc.2.24474.3",
|
||||||
|
"sourceRepository": "https://github.com/dotnet/dotnet",
|
||||||
|
"sourceVersion": "b4c156e3f670d86ad737595a912c5c85c481b9ac"
|
||||||
|
}
|
||||||
@ -3,9 +3,9 @@ index 044a2aba4..b3f8f2611 100644
|
|||||||
--- a/src/roslyn-analyzers/src/PerformanceTests/Tests/PerformanceTests.csproj
|
--- a/src/roslyn-analyzers/src/PerformanceTests/Tests/PerformanceTests.csproj
|
||||||
+++ b/src/roslyn-analyzers/src/PerformanceTests/Tests/PerformanceTests.csproj
|
+++ b/src/roslyn-analyzers/src/PerformanceTests/Tests/PerformanceTests.csproj
|
||||||
@@ -4,6 +4,7 @@
|
@@ -4,6 +4,7 @@
|
||||||
|
<LangVersion>preview</LangVersion>
|
||||||
<Nullable>disable</Nullable>
|
<Nullable>disable</Nullable>
|
||||||
<OutputType>Exe</OutputType>
|
<OutputType>Exe</OutputType>
|
||||||
<NoWarn>$(NoWarn);NETSDK1138</NoWarn>
|
|
||||||
+ <UseAppHost>false</UseAppHost>
|
+ <UseAppHost>false</UseAppHost>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
@ -1,4 +1,4 @@
|
|||||||
%bcond_with bootstrap
|
%bcond_without bootstrap_dotnet
|
||||||
|
|
||||||
# LTO triggers a compilation error for a source level issue. Given that LTO should not
|
# LTO triggers a compilation error for a source level issue. Given that LTO should not
|
||||||
# change the validity of any given source and the nature of the error (undefined enum), I
|
# change the validity of any given source and the nature of the error (undefined enum), I
|
||||||
@ -8,26 +8,22 @@
|
|||||||
|
|
||||||
%global dotnetver 9.0
|
%global dotnetver 9.0
|
||||||
|
|
||||||
# Only the package for the latest dotnet version should provide RPMs like
|
|
||||||
# dotnet-host
|
|
||||||
%global is_latest_dotnet 0
|
|
||||||
|
|
||||||
# upstream can produce releases with a different tag than the SDK version
|
# upstream can produce releases with a different tag than the SDK version
|
||||||
#%%global upstream_tag v%%{runtime_version}
|
#%%global upstream_tag v%%{runtime_version}
|
||||||
%global upstream_tag v9.0.119
|
%global upstream_tag v9.0.0-rc.2.24473.5
|
||||||
%global upstream_tag_without_v %(echo %{upstream_tag} | sed -e 's|^v||')
|
%global upstream_tag_without_v %(echo %{upstream_tag} | sed -e 's|^v||')
|
||||||
|
|
||||||
%global hostfxr_version %{runtime_version}
|
%global hostfxr_version 9.0.0-rc.2.24473.5
|
||||||
%global runtime_version 9.0.18
|
%global runtime_version 9.0.0-rc.2.24473.5
|
||||||
%global aspnetcore_runtime_version 9.0.18
|
%global aspnetcore_runtime_version 9.0.0-rc.2.24474.3
|
||||||
%global sdk_version 9.0.119
|
%global sdk_version 9.0.100-rc.2.24474.1
|
||||||
%global sdk_feature_band_version %(echo %{sdk_version} | cut -d '-' -f 1 | sed -e 's|[[:digit:]][[:digit:]]$|00|')
|
%global sdk_feature_band_version %(echo %{sdk_version} | cut -d '-' -f 1 | sed -e 's|[[:digit:]][[:digit:]]$|00|')
|
||||||
%global templates_version %{aspnetcore_runtime_version}
|
%global templates_version %{aspnetcore_runtime_version}
|
||||||
#%%global templates_version %%(echo %%{runtime_version} | awk 'BEGIN { FS="."; OFS="." } {print $1, $2, $3+1 }')
|
#%%global templates_version %%(echo %%{runtime_version} | awk 'BEGIN { FS="."; OFS="." } {print $1, $2, $3+1 }')
|
||||||
|
|
||||||
%global runtime_rpm_version %{runtime_version}
|
%global runtime_rpm_version 9.0.0~rc.2.24473.5
|
||||||
%global aspnetcore_runtime_rpm_version %{aspnetcore_runtime_version}
|
%global aspnetcore_runtime_rpm_version 9.0.0~rc.2.24474.3
|
||||||
%global sdk_rpm_version %{sdk_version}
|
%global sdk_rpm_version 9.0.100~rc.2.24474.1
|
||||||
|
|
||||||
%global use_bundled_brotli 0
|
%global use_bundled_brotli 0
|
||||||
%global use_bundled_libunwind 1
|
%global use_bundled_libunwind 1
|
||||||
@ -74,33 +70,33 @@
|
|||||||
|
|
||||||
Name: dotnet%{dotnetver}
|
Name: dotnet%{dotnetver}
|
||||||
Version: %{sdk_rpm_version}
|
Version: %{sdk_rpm_version}
|
||||||
Release: 2%{?dist}
|
Release: 0.6%{?dist}
|
||||||
Summary: .NET Runtime and SDK
|
Summary: .NET Runtime and SDK
|
||||||
License: 0BSD AND Apache-2.0 AND (Apache-2.0 WITH LLVM-exception) AND APSL-2.0 AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND BSL-1.0 AND bzip2-1.0.6 AND CC0-1.0 AND CC-BY-3.0 AND CC-BY-4.0 AND CC-PDDC AND CNRI-Python AND EPL-1.0 AND GPL-2.0-only AND (GPL-2.0-only WITH GCC-exception-2.0) AND GPL-2.0-or-later AND GPL-3.0-only AND ICU AND ISC AND LGPL-2.1-only AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND LicenseRef-ISO-8879 AND MIT AND MIT-Wu AND MS-PL AND MS-RL AND NCSA AND OFL-1.1 AND OpenSSL AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND W3C-19980720 AND X11 AND Zlib
|
License: 0BSD AND Apache-2.0 AND (Apache-2.0 WITH LLVM-exception) AND APSL-2.0 AND BSD-2-Clause AND BSD-3-Clause AND BSD-4-Clause AND BSL-1.0 AND bzip2-1.0.6 AND CC0-1.0 AND CC-BY-3.0 AND CC-BY-4.0 AND CC-PDDC AND CNRI-Python AND EPL-1.0 AND GPL-2.0-only AND (GPL-2.0-only WITH GCC-exception-2.0) AND GPL-2.0-or-later AND GPL-3.0-only AND ICU AND ISC AND LGPL-2.1-only AND LGPL-2.1-or-later AND LicenseRef-Fedora-Public-Domain AND LicenseRef-ISO-8879 AND MIT AND MIT-Wu AND MS-PL AND MS-RL AND NCSA AND OFL-1.1 AND OpenSSL AND Unicode-DFS-2015 AND Unicode-DFS-2016 AND W3C-19980720 AND X11 AND Zlib
|
||||||
|
|
||||||
URL: https://github.com/dotnet/
|
URL: https://github.com/dotnet/
|
||||||
|
|
||||||
%if %{with bootstrap}
|
%if %{with bootstrap_dotnet}
|
||||||
# The source is generated on a Fedora box via:
|
# The source is generated on a Fedora box via:
|
||||||
# ./build-dotnet-bootstrap-tarball %%{upstream_tag}
|
# ./build-dotnet-bootstrap-tarball %%{upstream_tag}
|
||||||
Source0: dotnet-%{upstream_tag}-x64-bootstrap.tar.gz
|
Source0: dotnet-%{upstream_tag}-x64-bootstrap.tar.gz
|
||||||
# The bootstrap SDK version is one listed in the global.json file of the main source archive
|
# The bootstrap SDK version is one listed in the global.json file of the main source archive
|
||||||
%global bootstrap_sdk_version 9.0.101
|
%global bootstrap_sdk_version 9.0.100-rc.1.24452.12
|
||||||
# Binaries can be at one of several different URLs:
|
# Binaries can be at one of several different URLs:
|
||||||
# GA releases:
|
# GA releases:
|
||||||
Source1: https://builds.dotnet.microsoft.com/dotnet/Sdk/%{bootstrap_sdk_version}/dotnet-sdk-%{bootstrap_sdk_version}-linux-arm64.tar.gz
|
# Source1: https://dotnetcli.azureedge.net/dotnet/Sdk/%%{bootstrap_sdk_version}/dotnet-sdk-%%{bootstrap_sdk_version}-linux-arm64.tar.gz
|
||||||
# Preview releases:
|
# Preview releases:
|
||||||
# Source1: https://ci.dot.net/public/Sdk/%%{bootstrap_sdk_version}/dotnet-sdk-%%{bootstrap_sdk_version}-linux-arm64.tar.gz
|
Source1: https://dotnetbuilds.azureedge.net/public/Sdk/%{bootstrap_sdk_version}/dotnet-sdk-%{bootstrap_sdk_version}-linux-arm64.tar.gz
|
||||||
# To generate ppc64le and s390x archives:
|
# To generate ppc64le and s390x archives:
|
||||||
# 1. Find the source commits and versions of repos, use one of:
|
# 1. Find the source commits and versions of repos, use one of:
|
||||||
# - https://builds.dotnet.microsoft.com/dotnet/Sdk/%%{bootstrap_sdk_version}/productCommit-linux-x64.txt
|
# - https://dotnetbuilds.azureedge.net/public/Sdk/%%{bootstrap_sdk_version}/productCommit-linux-x64.txt
|
||||||
# - https://ci.dot.net/public/Sdk/%%{bootstrap_sdk_version}/productCommit-linux-x64.txt
|
# - https://dotnetcli.azureedge.net/dotnet/Sdk/%%{bootstrap_sdk_version}/productCommit-linux-x64.txt
|
||||||
# 2. Find the VMR sync commit using `git log --grep $commit`
|
# 2. Find the VMR sync commit using `git log --grep $commit`
|
||||||
# 3. Build the VMR commit in cross-build mode for the architecture
|
# 3. Build the VMR commit in cross-build mode for the architecture
|
||||||
# 4. Use `build-prebuilt-archive` to create the archive from the VMR
|
# 4. Use `build-prebuilt-archive` to create the archive from the VMR
|
||||||
# 5. Update the version below to match the SDK that was built from the VMR
|
# 5. Update the version below to match the SDK that was built from the VMR
|
||||||
# The ppc64le/s390x SDK version is one produced
|
# The ppc64le/s390x SDK version is one produced
|
||||||
%global bootstrap_sdk_version_ppc64le_s390x 9.0.101
|
%global bootstrap_sdk_version_ppc64le_s390x 9.0.100-rc.1.24452.1
|
||||||
Source2: dotnet-prebuilts-%{bootstrap_sdk_version_ppc64le_s390x}-ppc64le.tar.gz
|
Source2: dotnet-prebuilts-%{bootstrap_sdk_version_ppc64le_s390x}-ppc64le.tar.gz
|
||||||
Source3: dotnet-prebuilts-%{bootstrap_sdk_version_ppc64le_s390x}-s390x.tar.gz
|
Source3: dotnet-prebuilts-%{bootstrap_sdk_version_ppc64le_s390x}-s390x.tar.gz
|
||||||
%else
|
%else
|
||||||
@ -136,7 +132,7 @@ BuildRequires: brotli-devel
|
|||||||
BuildRequires: clang
|
BuildRequires: clang
|
||||||
BuildRequires: cmake
|
BuildRequires: cmake
|
||||||
BuildRequires: coreutils
|
BuildRequires: coreutils
|
||||||
%if %{without bootstrap}
|
%if %{without bootstrap_dotnet}
|
||||||
BuildRequires: dotnet-sdk-%{dotnetver}
|
BuildRequires: dotnet-sdk-%{dotnetver}
|
||||||
BuildRequires: dotnet-sdk-%{dotnetver}-source-built-artifacts
|
BuildRequires: dotnet-sdk-%{dotnetver}-source-built-artifacts
|
||||||
%endif
|
%endif
|
||||||
@ -166,7 +162,6 @@ BuildRequires: llvm-libunwind-devel
|
|||||||
BuildRequires: lttng-ust-devel
|
BuildRequires: lttng-ust-devel
|
||||||
BuildRequires: make
|
BuildRequires: make
|
||||||
BuildRequires: openssl-devel
|
BuildRequires: openssl-devel
|
||||||
BuildRequires: procps-ng
|
|
||||||
BuildRequires: python3
|
BuildRequires: python3
|
||||||
%if ! %{use_bundled_rapidjson}
|
%if ! %{use_bundled_rapidjson}
|
||||||
BuildRequires: rapidjson-devel
|
BuildRequires: rapidjson-devel
|
||||||
@ -417,14 +412,15 @@ Requires: dotnet-sdk-%{dotnetver}%{?_isa} >= %{sdk_rpm_version}-%{release}
|
|||||||
# When installing AOT support, also install all dependencies needed to build
|
# When installing AOT support, also install all dependencies needed to build
|
||||||
# NativeAOT applications. AOT invokes `clang ... -lssl -lcrypto -lbrotlienc
|
# NativeAOT applications. AOT invokes `clang ... -lssl -lcrypto -lbrotlienc
|
||||||
# -lbrotlidec -lz ...`.
|
# -lbrotlidec -lz ...`.
|
||||||
Requires: brotli-devel
|
Requires: brotli-devel%{?_isa}
|
||||||
Requires: clang
|
Requires: clang%{?_isa}
|
||||||
Requires: openssl-devel
|
Requires: openssl-devel%{?_isa}
|
||||||
Requires: zlib-devel
|
Requires: zlib-devel%{?_isa}
|
||||||
|
|
||||||
%description -n dotnet-sdk-aot-%{dotnetver}
|
%description -n dotnet-sdk-aot-%{dotnetver}
|
||||||
This package provides Ahead-of-time (AOT) compilation support for the .NET SDK.
|
This package provides Ahead-of-time (AOT) compilation support for the .NET SDK.
|
||||||
|
|
||||||
|
|
||||||
%global dotnet_targeting_pack() %{expand:
|
%global dotnet_targeting_pack() %{expand:
|
||||||
%package -n %{1}
|
%package -n %{1}
|
||||||
|
|
||||||
@ -463,7 +459,7 @@ These are not meant for general use.
|
|||||||
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%if %{without bootstrap}
|
%if %{without bootstrap_dotnet}
|
||||||
# check gpg signatures only for non-bootstrap builds; bootstrap "sources" are hand-crafted
|
# check gpg signatures only for non-bootstrap builds; bootstrap "sources" are hand-crafted
|
||||||
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
|
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
|
||||||
%endif
|
%endif
|
||||||
@ -474,7 +470,7 @@ if [[ ${release_json_tag} != %{upstream_tag} ]]; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
%if %{without bootstrap}
|
%if %{without bootstrap_dotnet}
|
||||||
%setup -q -n dotnet-%{upstream_tag_without_v}
|
%setup -q -n dotnet-%{upstream_tag_without_v}
|
||||||
|
|
||||||
# Remove all prebuilts and binaries
|
# Remove all prebuilts and binaries
|
||||||
@ -571,16 +567,12 @@ rm -rf src/runtime/src/native/external/zlib-intel
|
|||||||
rm -rf src/runtime/src/native/external/zlib-ng
|
rm -rf src/runtime/src/native/external/zlib-ng
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
lscpu
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
cat /proc/cpuinfo
|
|
||||||
cat /proc/meminfo
|
|
||||||
cat /etc/os-release
|
cat /etc/os-release
|
||||||
|
|
||||||
%if %{without bootstrap}
|
%if %{without bootstrap_dotnet}
|
||||||
# We need to create a copy because build scripts will mutate this
|
# We need to create a copy because build scripts will mutate this
|
||||||
cp -a %{_libdir}/dotnet previously-built-dotnet
|
cp -a %{_libdir}/dotnet previously-built-dotnet
|
||||||
find previously-built-dotnet
|
find previously-built-dotnet
|
||||||
@ -618,14 +610,6 @@ CXXFLAGS=$(echo $CXXFLAGS | sed -e 's/ -march=z13//')
|
|||||||
CXXFLAGS=$(echo $CXXFLAGS | sed -e 's/ -mtune=z14//')
|
CXXFLAGS=$(echo $CXXFLAGS | sed -e 's/ -mtune=z14//')
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?rhel} >= 10
|
|
||||||
# Workaround for https://github.com/dotnet/runtime/issues/109611
|
|
||||||
# FIXME: Remove this, and replace with upstream fix
|
|
||||||
CFLAGS=$(echo $CFLAGS | sed -e 's/-march=x86-64-v3 //')
|
|
||||||
CXXFLAGS=$(echo $CXXFLAGS | sed -e 's/-march=x86-64-v3 //')
|
|
||||||
LDFLAGS=$(echo $LDFLAGS | sed -e 's/-march=x86-64-v3 //')
|
|
||||||
%endif
|
|
||||||
|
|
||||||
# Enabling fortify-source and "-Wall -Weverything" produces new warnings from libc. Turn them off.
|
# Enabling fortify-source and "-Wall -Weverything" produces new warnings from libc. Turn them off.
|
||||||
CFLAGS="$CFLAGS -Wno-used-but-marked-unused"
|
CFLAGS="$CFLAGS -Wno-used-but-marked-unused"
|
||||||
CXXFLAGS="$CXXFLAGS -Wno-used-but-marked-unused"
|
CXXFLAGS="$CXXFLAGS -Wno-used-but-marked-unused"
|
||||||
@ -659,100 +643,11 @@ system_libs=
|
|||||||
system_libs=$system_libs+zlib+
|
system_libs=$system_libs+zlib+
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%ifarch ppc64le s390x
|
VERBOSE=1 timeout 5h \
|
||||||
max_attempts=3
|
|
||||||
%else
|
|
||||||
max_attempts=1
|
|
||||||
%endif
|
|
||||||
|
|
||||||
function retry_until_success {
|
|
||||||
local exit_code=1
|
|
||||||
local tries=$1
|
|
||||||
shift
|
|
||||||
set +e
|
|
||||||
while [[ $exit_code != 0 ]] && [[ $tries != 0 ]]; do
|
|
||||||
(( tries = tries - 1 ))
|
|
||||||
# Clean stale build state so retries start fresh.
|
|
||||||
rm -rf .packages $(find . -name artifacts -type d)
|
|
||||||
"$@"
|
|
||||||
exit_code=$?
|
|
||||||
done
|
|
||||||
set -e
|
|
||||||
return $exit_code
|
|
||||||
}
|
|
||||||
|
|
||||||
# Runs a command and kills it if it produces no output.
|
|
||||||
# Use a longer timeout on machines with fewer cores since builds are slower.
|
|
||||||
function output_timeout {
|
|
||||||
# 30m on machines with more than 4 cores, 60m on smaller machines where builds are slower.
|
|
||||||
# The aarch64 Neoverse N1 CI machines have 4 cores and need the longer timeout.
|
|
||||||
local nprocs=$(nproc)
|
|
||||||
local idle_timeout=1800
|
|
||||||
if (( nprocs <= 4 )); then
|
|
||||||
idle_timeout=3600
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Create a pipe we'll read the output from for timeout detection.
|
|
||||||
local fifo=$(mktemp -u)
|
|
||||||
mkfifo "$fifo"
|
|
||||||
|
|
||||||
# Create a process group so we can kill every process including children.
|
|
||||||
# And use a long timeout (5h) in (the unlikely) case output timeout detection continues to be triggered.
|
|
||||||
setsid timeout --foreground 5h "$@" &> "$fifo" &
|
|
||||||
local cmd_pid=$!
|
|
||||||
|
|
||||||
# Read lines from the output with a timeout.
|
|
||||||
# Disable tracing to avoid 'set -x' noise from the read loop appearing in the output.
|
|
||||||
local timed_out=false
|
|
||||||
local traceflags=$-
|
|
||||||
set +x
|
|
||||||
while true; do
|
|
||||||
local rc=0
|
|
||||||
IFS= read -t $idle_timeout -r line || rc=$?
|
|
||||||
if (( rc == 0 )); then
|
|
||||||
printf '%s\n' "$line"
|
|
||||||
elif (( rc > 128 )); then
|
|
||||||
echo "output_timeout: no output for ${idle_timeout}s" >&2
|
|
||||||
timed_out=true
|
|
||||||
break
|
|
||||||
else
|
|
||||||
[[ -z $line ]] || printf '%s\n' "$line"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done < "$fifo"
|
|
||||||
[[ $traceflags != *x* ]] || set -x
|
|
||||||
|
|
||||||
if $timed_out; then
|
|
||||||
# Hang detected: kill the process group, then collect the exit code.
|
|
||||||
kill -9 -- -$cmd_pid 2>/dev/null || true
|
|
||||||
wait $cmd_pid 2>/dev/null
|
|
||||||
local exit_code=$?
|
|
||||||
else
|
|
||||||
# Normal exit: collect the real exit code, then clean up any orphaned processes.
|
|
||||||
wait $cmd_pid 2>/dev/null
|
|
||||||
local exit_code=$?
|
|
||||||
kill -9 -- -$cmd_pid 2>/dev/null || true
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Cleanup.
|
|
||||||
rm -f "$fifo"
|
|
||||||
|
|
||||||
return $exit_code
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
cat >dotnet-rpm-build.sh <<EOF
|
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -euo pipefail
|
|
||||||
set -x
|
|
||||||
|
|
||||||
find -depth -name 'artifacts' -type d -print -exec rm -rf {} \;
|
|
||||||
|
|
||||||
./build.sh \
|
./build.sh \
|
||||||
--source-only \
|
--source-only \
|
||||||
--release-manifest %{SOURCE5} \
|
--release-manifest %{SOURCE5} \
|
||||||
%if %{without bootstrap}
|
%if %{without bootstrap_dotnet}
|
||||||
--with-sdk previously-built-dotnet \
|
--with-sdk previously-built-dotnet \
|
||||||
%endif
|
%endif
|
||||||
%ifarch %{mono_archs}
|
%ifarch %{mono_archs}
|
||||||
@ -762,25 +657,14 @@ find -depth -name 'artifacts' -type d -print -exec rm -rf {} \;
|
|||||||
/p:UseSystemLibs=${system_libs} \
|
/p:UseSystemLibs=${system_libs} \
|
||||||
/p:TargetRid=%{runtime_id} \
|
/p:TargetRid=%{runtime_id} \
|
||||||
/p:OfficialBuilder="$vendor" \
|
/p:OfficialBuilder="$vendor" \
|
||||||
|
/p:MinimalConsoleLogOutput=false \
|
||||||
/p:ContinueOnPrebuiltBaselineError=true \
|
/p:ContinueOnPrebuiltBaselineError=true \
|
||||||
#/p:MinimalConsoleLogOutput=false \
|
/v:n \
|
||||||
#/v:n \
|
/p:LogVerbosity=n
|
||||||
#/p:LogVerbosity=n
|
|
||||||
EOF
|
|
||||||
|
|
||||||
chmod +x dotnet-rpm-build.sh
|
|
||||||
|
|
||||||
VERBOSE=1 retry_until_success $max_attempts \
|
|
||||||
output_timeout \
|
|
||||||
./dotnet-rpm-build.sh || { cat /proc/cpuinfo; cat /proc/meminfo; env; exit 1; }
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
sed -e 's|[@]LIBDIR[@]|%{_libdir}|g' %{SOURCE21} > dotnet.sh
|
sed -e 's|[@]LIBDIR[@]|%{_libdir}|g' %{SOURCE21} > dotnet.sh
|
||||||
|
|
||||||
env
|
|
||||||
ps aux
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
@ -823,7 +707,6 @@ find %{buildroot}%{_libdir}/dotnet/ -type f -name '*.targets' -exec chmod -x {}
|
|||||||
find %{buildroot}%{_libdir}/dotnet/ -type f -name '*.txt' -exec chmod -x {} \;
|
find %{buildroot}%{_libdir}/dotnet/ -type f -name '*.txt' -exec chmod -x {} \;
|
||||||
find %{buildroot}%{_libdir}/dotnet/ -type f -name '*.xml' -exec chmod -x {} \;
|
find %{buildroot}%{_libdir}/dotnet/ -type f -name '*.xml' -exec chmod -x {} \;
|
||||||
|
|
||||||
%if %{is_latest_dotnet}
|
|
||||||
install -dm 0755 %{buildroot}%{_sysconfdir}/profile.d/
|
install -dm 0755 %{buildroot}%{_sysconfdir}/profile.d/
|
||||||
install dotnet.sh %{buildroot}%{_sysconfdir}/profile.d/
|
install dotnet.sh %{buildroot}%{_sysconfdir}/profile.d/
|
||||||
|
|
||||||
@ -847,7 +730,6 @@ echo "%{_libdir}/dotnet" >> install_location
|
|||||||
install install_location %{buildroot}%{_sysconfdir}/dotnet/
|
install install_location %{buildroot}%{_sysconfdir}/dotnet/
|
||||||
echo "%{_libdir}/dotnet" >> install_location_%{runtime_arch}
|
echo "%{_libdir}/dotnet" >> install_location_%{runtime_arch}
|
||||||
install install_location_%{runtime_arch} %{buildroot}%{_sysconfdir}/dotnet/
|
install install_location_%{runtime_arch} %{buildroot}%{_sysconfdir}/dotnet/
|
||||||
%endif
|
|
||||||
|
|
||||||
install -dm 0755 %{buildroot}%{_libdir}/dotnet/source-built-artifacts
|
install -dm 0755 %{buildroot}%{_libdir}/dotnet/source-built-artifacts
|
||||||
install -m 0644 artifacts/assets/Release/Private.SourceBuilt.Artifacts.*.tar.gz %{buildroot}/%{_libdir}/dotnet/source-built-artifacts/
|
install -m 0644 artifacts/assets/Release/Private.SourceBuilt.Artifacts.*.tar.gz %{buildroot}/%{_libdir}/dotnet/source-built-artifacts/
|
||||||
@ -871,18 +753,6 @@ find %{buildroot}%{_libdir}/dotnet/sdk -type d | tail -n +2 | sed -E 's|%{buildr
|
|||||||
find %{buildroot}%{_libdir}/dotnet/sdk -type f -and -not -name '*.pdb' | sed -E 's|%{buildroot}||' >> dotnet-sdk-non-dbg-files
|
find %{buildroot}%{_libdir}/dotnet/sdk -type f -and -not -name '*.pdb' | sed -E 's|%{buildroot}||' >> dotnet-sdk-non-dbg-files
|
||||||
find %{buildroot}%{_libdir}/dotnet/sdk -type f -name '*.pdb' | sed -E 's|%{buildroot}||' > dotnet-sdk-dbg-files
|
find %{buildroot}%{_libdir}/dotnet/sdk -type f -name '*.pdb' | sed -E 's|%{buildroot}||' > dotnet-sdk-dbg-files
|
||||||
|
|
||||||
%if %{is_latest_dotnet} == 0
|
|
||||||
# If this is an older version, self-test now, before we delete files. After we
|
|
||||||
# delete files, we will not have everything we need to self-test in %%check.
|
|
||||||
%{buildroot}%{_libdir}/dotnet/dotnet --info
|
|
||||||
%{buildroot}%{_libdir}/dotnet/dotnet --version
|
|
||||||
|
|
||||||
# Provided by dotnet-host from another SRPM
|
|
||||||
rm %{buildroot}%{_libdir}/dotnet/LICENSE.txt
|
|
||||||
rm %{buildroot}%{_libdir}/dotnet/ThirdPartyNotices.txt
|
|
||||||
rm %{buildroot}%{_libdir}/dotnet/dotnet
|
|
||||||
%endif
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
%check
|
%check
|
||||||
@ -891,10 +761,8 @@ rm %{buildroot}%{_libdir}/dotnet/dotnet
|
|||||||
export COMPlus_LTTng=0
|
export COMPlus_LTTng=0
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if %{is_latest_dotnet}
|
|
||||||
%{buildroot}%{_libdir}/dotnet/dotnet --info
|
%{buildroot}%{_libdir}/dotnet/dotnet --info
|
||||||
%{buildroot}%{_libdir}/dotnet/dotnet --version
|
%{buildroot}%{_libdir}/dotnet/dotnet --version
|
||||||
%endif
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -903,7 +771,6 @@ export COMPlus_LTTng=0
|
|||||||
# empty package useful for dependencies
|
# empty package useful for dependencies
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if %{is_latest_dotnet}
|
|
||||||
%files -n dotnet-host
|
%files -n dotnet-host
|
||||||
%dir %{_libdir}/dotnet
|
%dir %{_libdir}/dotnet
|
||||||
%{_libdir}/dotnet/dotnet
|
%{_libdir}/dotnet/dotnet
|
||||||
@ -922,7 +789,6 @@ export COMPlus_LTTng=0
|
|||||||
%dir %{_datadir}/zsh
|
%dir %{_datadir}/zsh
|
||||||
%dir %{zsh_completions_dir}
|
%dir %{zsh_completions_dir}
|
||||||
%{_datadir}/zsh/site-functions/_dotnet
|
%{_datadir}/zsh/site-functions/_dotnet
|
||||||
%endif
|
|
||||||
|
|
||||||
%files -n dotnet-hostfxr-%{dotnetver}
|
%files -n dotnet-hostfxr-%{dotnetver}
|
||||||
%dir %{_libdir}/dotnet/host/fxr
|
%dir %{_libdir}/dotnet/host/fxr
|
||||||
@ -977,121 +843,29 @@ export COMPlus_LTTng=0
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Thu Jul 23 2026 Satish Mane <satmane@redhat.com> - 9.0.119-2
|
* Thu Oct 24 2024 Omair Majid <omajid@redhat.com> - 9.0.100~rc.2.24474.1-0.6
|
||||||
- Update to .NET SDK 9.0.119 and Runtime 9.0.18
|
|
||||||
- Resolves: RHEL-192471
|
|
||||||
|
|
||||||
* Thu Jul 02 2026 Tom Deseyn <tdeseyn@redhat.com> - 9.0.118-3
|
|
||||||
- Reduce time to detect hanging builds
|
|
||||||
- Resolves: RHEL-191642
|
|
||||||
|
|
||||||
* Wed Jun 10 2026 Tom Deseyn <tdeseyn@redhat.com> - 9.0.118-2
|
|
||||||
- Update to .NET SDK 9.0.118 and Runtime 9.0.17
|
|
||||||
- Resolves: RHEL-181552
|
|
||||||
|
|
||||||
* Thu May 28 2026 Omair Majid <omajid@redhat.com> - 9.0.117-2
|
|
||||||
- Update to .NET SDK 9.0.117 and Runtime 9.0.16
|
|
||||||
- Resolves: RHEL-173917
|
|
||||||
|
|
||||||
* Fri Apr 17 2026 Omair Majid <omajid@redhat.com> - 9.0.116-2
|
|
||||||
- Update to .NET SDK 9.0.116 and Runtime 9.0.15
|
|
||||||
- Resolves: RHEL-163400
|
|
||||||
|
|
||||||
* Thu Mar 26 2026 Dominik Rehák <drehak@redhat.com> - 9.0.115-2
|
|
||||||
- Update to .NET SDK 9.0.115 and Runtime 9.0.14
|
|
||||||
- Resolves: RHEL-152947
|
|
||||||
|
|
||||||
* Wed Feb 11 2026 Omair Majid <omajid@redhat.com> - 9.0.114-2
|
|
||||||
- Update to .NET SDK 9.0.114 and Runtime 9.0.13
|
|
||||||
- Resolves: RHEL-144971
|
|
||||||
|
|
||||||
* Wed Jan 14 2026 Omair Majid <omajid@redhat.com> - 9.0.113-2
|
|
||||||
- Update to .NET SDK 9.0.113 and Runtime 9.0.12
|
|
||||||
- Resolves: RHEL-138646
|
|
||||||
|
|
||||||
* Wed Nov 12 2025 Omair Majid <omajid@redhat.com> - 9.0.112-2
|
|
||||||
- Update to .NET SDK 9.0.112 and Runtime 9.0.11
|
|
||||||
- Resolves: RHEL-125744
|
|
||||||
|
|
||||||
* Tue Oct 14 2025 Omair Majid <omajid@redhat.com> - 9.0.111-2
|
|
||||||
- Update to .NET SDK 9.0.111 and Runtime 9.0.10
|
|
||||||
- Resolves: RHEL-116861
|
|
||||||
|
|
||||||
* Wed Sep 10 2025 Omair Majid <omajid@redhat.com> - 9.0.110-2
|
|
||||||
- Update to .NET SDK 9.0.110 and Runtime 9.0.9
|
|
||||||
- Resolves: RHEL-112268
|
|
||||||
|
|
||||||
* Mon Aug 11 2025 Omair Majid <omajid@redhat.com> - 9.0.109-2
|
|
||||||
- Update to .NET SDK 9.0.109 and Runtime 9.0.8
|
|
||||||
- Resolves: RHEL-106727
|
|
||||||
|
|
||||||
* Tue Jul 08 2025 Omair Majid <omajid@redhat.com> - 9.0.108-2
|
|
||||||
- Update to .NET SDK 9.0.108 and Runtime 9.0.7
|
|
||||||
- Resolves: RHEL-100597
|
|
||||||
|
|
||||||
* Wed Jun 11 2025 Omair Majid <omajid@redhat.com> - 9.0.107-2
|
|
||||||
- Update to .NET SDK 9.0.107 and Runtime 9.0.6
|
|
||||||
- Resolves: RHEL-94423
|
|
||||||
|
|
||||||
* Tue May 13 2025 Omair Majid <omajid@redhat.com> - 9.0.106-2
|
|
||||||
- Update to .NET SDK 9.0.106 and Runtime 9.0.5
|
|
||||||
- Resolves: RHEL-89452
|
|
||||||
|
|
||||||
* Wed Apr 09 2025 Omair Majid <omajid@redhat.com> - 9.0.105-2
|
|
||||||
- Update to .NET SDK 9.0.105 and Runtime 9.0.4
|
|
||||||
- Resolves: RHEL-85281
|
|
||||||
|
|
||||||
* Tue Mar 11 2025 Omair Majid <omajid@redhat.com> - 9.0.104-2
|
|
||||||
- Update to .NET SDK 9.0.104 and Runtime 9.0.3
|
|
||||||
- Resolves: RHEL-81647
|
|
||||||
|
|
||||||
* Mon Feb 17 2025 Omair Majid <omajid@redhat.com> - 9.0.103-2
|
|
||||||
- Update to .NET SDK 9.0.103 and Runtime 9.0.2
|
|
||||||
- Resolves: RHEL-76904
|
|
||||||
|
|
||||||
* Sat Jan 25 2025 Omair Majid <omajid@redhat.com> - 9.0.102-2
|
|
||||||
- Disable bootstrap
|
|
||||||
- Related: RHEL-71549
|
|
||||||
|
|
||||||
* Fri Jan 24 2025 Omair Majid <omajid@redhat.com> - 9.0.102-1
|
|
||||||
- Rebootstrap
|
- Rebootstrap
|
||||||
- Related: RHEL-71549
|
- Related: RHEL-62768
|
||||||
|
|
||||||
* Thu Jan 16 2025 Omair Majid <omajid@redhat.com> - 9.0.102-0.9
|
|
||||||
- Update to .NET SDK 9.0.102 and Runtime 9.0.1
|
|
||||||
- Resolves: RHEL-71549
|
|
||||||
|
|
||||||
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 9.0.100~rc.2.24474.1-0.8
|
|
||||||
- Bump release for October 2024 mass rebuild:
|
|
||||||
Resolves: RHEL-64018
|
|
||||||
|
|
||||||
* Wed Oct 23 2024 Omair Majid <omajid@redhat.com> - 9.0.100~rc.2.24474.1-0.7
|
|
||||||
- Disable bootstrap
|
|
||||||
- Related: RHEL-62799
|
|
||||||
|
|
||||||
* Tue Oct 22 2024 Omair Majid <omajid@redhat.com> - 9.0.100~rc.2.24474.1-0.6
|
|
||||||
- Rebootstrap
|
|
||||||
- Related: RHEL-62799
|
|
||||||
|
|
||||||
* Thu Oct 17 2024 Omair Majid <omajid@redhat.com> - 9.0.100~rc.2.24474.1-0.5
|
* Thu Oct 17 2024 Omair Majid <omajid@redhat.com> - 9.0.100~rc.2.24474.1-0.5
|
||||||
- Add missing runtime dependencies to -aot- subpackage
|
- Add missing runtime dependencies to -aot- subpackage
|
||||||
- Related: RHEL-62799
|
- Related: RHEL-62768
|
||||||
|
|
||||||
* Tue Oct 15 2024 Omair Majid <omajid@redhat.com> - 9.0.100~rc.2.24474.1-0.4
|
* Tue Oct 15 2024 Omair Majid <omajid@redhat.com> - 9.0.100~rc.2.24474.1-0.4
|
||||||
- Update to .NET SDK 9.0.100-rc.2.24474.1 and Runtime 9.0.0-rc.2.24473.5
|
- Update to .NET SDK 9.0.100-rc.2.24474.1 and Runtime 9.0.0-rc.2.24473.5
|
||||||
- Resolves: RHEL-62799
|
- Resolves: RHEL-62768
|
||||||
|
|
||||||
* Wed Sep 11 2024 Omair Majid <omajid@redhat.com> - 9.0.100~rc.1.24452.12-0.3
|
* Wed Sep 11 2024 Omair Majid <omajid@redhat.com> - 9.0.100~rc.1.24452.12-0.3
|
||||||
- Update to .NET SDK 9.0.100-rc.1.24452.12 and Runtime 9.0.0-rc.1.24431.7
|
- Update to .NET SDK 9.0.100-rc.1.24452.12 and Runtime 9.0.0-rc.1.24431.7
|
||||||
- Resolves: RHEL-59011
|
- Resolves: RHEL-59037
|
||||||
|
|
||||||
* Sun Aug 18 2024 Omair Majid <omajid@redhat.com> - 9.0.100~preview.7.24407.1-0.2
|
* Sun Aug 18 2024 Omair Majid <omajid@redhat.com> - 9.0.100~preview.7.24407.1-0.2
|
||||||
- Disable bootstrap
|
- Disable bootstrap
|
||||||
- Related: RHEL-48619
|
- Related: RHEL-46701
|
||||||
|
|
||||||
* Thu Aug 15 2024 Omair Majid <omajid@redhat.com> - 9.0.100~preview.7.24407.1-0.1
|
* Thu Aug 15 2024 Omair Majid <omajid@redhat.com> - 9.0.100~preview.7.24407.1-0.1
|
||||||
- Update to .NET SDK 9 preview 7 and Runtime 9 preview 7
|
- Update to .NET SDK 9 preview 7 and Runtime 9 preview 7
|
||||||
- Resolves: RHEL-48619
|
- Resolves: RHEL-46701
|
||||||
|
|
||||||
* Thu Jun 13 2024 Omair Majid <omajid@redhat.com> - 9.0.100~preview.5.24307.3-0.9
|
* Thu Jun 13 2024 Omair Majid <omajid@redhat.com> - 9.0.100~preview.5.24307.3-0.9
|
||||||
- Update to .NET SDK 9.0.100-preview.5.24307.3 and Runtime
|
- Update to .NET SDK 9.0.100-preview.5.24307.3 and Runtime
|
||||||
@ -1,171 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Usage:
|
|
||||||
# build-dotnet-bootstrap-tarball <tag-or-commit-from-dotnet>
|
|
||||||
#
|
|
||||||
# Creates a source archive suitable for bootstrapping from a tag (or commit) at
|
|
||||||
# https://github.com/dotnet/dotnet
|
|
||||||
#
|
|
||||||
# Clone dotnet/dotnet, check out the tag, and build a source-tarball.
|
|
||||||
# Can also use a full git commit identifier instead of tag (not an
|
|
||||||
# abbreviated 8 character commit identifier though).
|
|
||||||
|
|
||||||
set -euo pipefail
|
|
||||||
IFS=$'\n\t'
|
|
||||||
|
|
||||||
function print_usage {
|
|
||||||
echo "Usage:"
|
|
||||||
echo "$0 <tag-from-dotnet>"
|
|
||||||
echo
|
|
||||||
echo "Creates a $arch bootstrap source archive from a tag at https://github.com/dotnet/dotnet"
|
|
||||||
}
|
|
||||||
|
|
||||||
function clean_dotnet_cache {
|
|
||||||
rm -rf ~/.aspnet ~/.dotnet/ ~/.nuget/ ~/.local/share/NuGet ~/.templateengine
|
|
||||||
rm -rf /tmp/NuGet /tmp/NuGetScratch /tmp/.NETCore* /tmp/.NETStandard* /tmp/.dotnet /tmp/dotnet.* /tmp/clr-debug-pipe* /tmp/Razor-Server /tmp/CoreFxPipe* /tmp/VBCSCompiler /tmp/.NETFramework*
|
|
||||||
rm -rf ~/.npm/
|
|
||||||
}
|
|
||||||
|
|
||||||
function check_bootstrap_environment {
|
|
||||||
if rpm -qa | grep dotnet ; then
|
|
||||||
echo "error: dotnet is installed. Not a good idea for bootstrapping."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
if [ -d /usr/lib/dotnet ] || [ -d /usr/lib64/dotnet ] || [ -d /usr/share/dotnet ] ; then
|
|
||||||
echo "error: one of /usr/lib/dotnet /usr/lib64/dotnet or /usr/share/dotnet/ exists. Not a good idea for bootstrapping."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
if command -v dotnet ; then
|
|
||||||
echo "error: dotnet is in $PATH. Not a good idea for bootstrapping."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
function runtime_id {
|
|
||||||
|
|
||||||
source /etc/os-release
|
|
||||||
case "${ID}" in
|
|
||||||
# Remove the RHEL minor version
|
|
||||||
rhel) rid_version=${VERSION_ID%.*} ;;
|
|
||||||
|
|
||||||
*) rid_version=${VERSION_ID} ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
echo "${ID}.${rid_version}-${arch}"
|
|
||||||
}
|
|
||||||
|
|
||||||
build_bootstrap=false
|
|
||||||
|
|
||||||
declare -A archmap
|
|
||||||
archmap=(
|
|
||||||
["aarch64"]="arm64"
|
|
||||||
["amd64"]="x64"
|
|
||||||
["armv8l"]="arm"
|
|
||||||
["i386"]="x86"
|
|
||||||
["i686"]="x86"
|
|
||||||
["ppc64le"]="ppc64le"
|
|
||||||
["s390x"]="s390x"
|
|
||||||
["x86_64"]="x64"
|
|
||||||
)
|
|
||||||
|
|
||||||
arch=${archmap["$(uname -m)"]}
|
|
||||||
|
|
||||||
|
|
||||||
positional_args=()
|
|
||||||
while [[ "$#" -gt 0 ]]; do
|
|
||||||
arg="${1}"
|
|
||||||
case "${arg}" in
|
|
||||||
-h|--help)
|
|
||||||
print_usage
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
positional_args+=("$1")
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
check_bootstrap_environment
|
|
||||||
|
|
||||||
tag=${positional_args[0]:-}
|
|
||||||
if [[ -z ${tag} ]]; then
|
|
||||||
echo "error: missing tag to build"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
set -x
|
|
||||||
|
|
||||||
dir_name="dotnet-${tag}"
|
|
||||||
unmodified_tarball_name="${dir_name}-original"
|
|
||||||
tarball_name="${dir_name}"
|
|
||||||
|
|
||||||
unmodified_tarball_name="${unmodified_tarball_name}-${arch}-bootstrap"
|
|
||||||
tarball_name="${tarball_name}-${arch}-bootstrap"
|
|
||||||
|
|
||||||
tarball_suffix=.tar.gz
|
|
||||||
|
|
||||||
if [ -f "${tarball_name}${tarball_suffix}" ]; then
|
|
||||||
echo "error: ${tarball_name}${tarball_suffix} already exists"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
if [ ! -f "${unmodified_tarball_name}.tar.gz" ]; then
|
|
||||||
if [[ $tag =~ ^[0-9a-fA-F]+$ ]]; then
|
|
||||||
if [ ! -f $tag.zip ]; then
|
|
||||||
wget https://github.com/dotnet/dotnet/archive/$tag.zip
|
|
||||||
fi
|
|
||||||
dir=$(mktemp -d -p $(pwd))
|
|
||||||
pushd $dir
|
|
||||||
unzip -q ../$tag.zip
|
|
||||||
if [[ $(ls -1q | wc -l) -gt 3 ]]; then
|
|
||||||
echo "error: tarball doesn't have a single main directory"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
tar czf ../${unmodified_tarball_name}.tar.gz dotnet-$tag
|
|
||||||
popd
|
|
||||||
else
|
|
||||||
wget https://github.com/dotnet/dotnet/archive/refs/tags/${tag}.tar.gz
|
|
||||||
mv "${tag}.tar.gz" "${unmodified_tarball_name}.tar.gz"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
tar tf "${unmodified_tarball_name}".tar.gz > .tarball_file_list
|
|
||||||
extracted_tarball_root=$(head -1 .tarball_file_list | cut -d/ -f 1)
|
|
||||||
if [[ "$extracted_tarball_root" == "."* ]]; then
|
|
||||||
echo "error: can't find main directory in the dotnet tarball"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
if [[ $(grep -cv "^${extracted_tarball_root}/" .tarball_file_list) -gt 0 ]]; then
|
|
||||||
echo "error: tarball doesn't have a single main directory"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
rm .tarball_file_list
|
|
||||||
|
|
||||||
rm -rf "${tarball_name}"
|
|
||||||
rm -rf "${extracted_tarball_root}"
|
|
||||||
tar xf "${unmodified_tarball_name}.tar.gz"
|
|
||||||
mv "${extracted_tarball_root}" "${tarball_name}"
|
|
||||||
|
|
||||||
pushd "${tarball_name}"
|
|
||||||
|
|
||||||
./prep-source-build.sh --bootstrap
|
|
||||||
|
|
||||||
# Remove files with funny licenses and crypto implementations and
|
|
||||||
# other not-very-useful artifacts. We MUST NOT ship any files that
|
|
||||||
# have unapproved licenses and unexpected cryptographic
|
|
||||||
# implementations.
|
|
||||||
#
|
|
||||||
# We use rm -r (no -f) to make sure the operation fails if the files
|
|
||||||
# are not at the expected locations. If the files are not at the
|
|
||||||
# expected location, we need to find the new location of the files and
|
|
||||||
# delete them, or verify that upstream has already removed the files.
|
|
||||||
|
|
||||||
# rm -r $FILE_TO_REMOVE
|
|
||||||
|
|
||||||
popd
|
|
||||||
|
|
||||||
echo "Bootstrap .NET SDK: $(jq .tools.dotnet "${tarball_name}"/global.json)"
|
|
||||||
|
|
||||||
time tar -czf "${tarball_name}${tarball_suffix}" "${tarball_name}"
|
|
||||||
@ -1,63 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Usage:
|
|
||||||
# build-prebuilt-archive architecture vmr-directory
|
|
||||||
#
|
|
||||||
# Creates an archive containing necessary bootstrapping binaries for ppc64le or
|
|
||||||
# s390x architectures from a VMR build.
|
|
||||||
#
|
|
||||||
# You need to have cloned the VMR (https://github.com/dotnet/dotnet) and
|
|
||||||
# cross-compiled it for the target architecture already.
|
|
||||||
|
|
||||||
set -euo pipefail
|
|
||||||
IFS=$'\n\t'
|
|
||||||
set -x
|
|
||||||
|
|
||||||
function print_usage {
|
|
||||||
echo "Usage:"
|
|
||||||
echo "$0 <architecture> <vmr directory>"
|
|
||||||
echo
|
|
||||||
echo "Creates a ppc64le or s390x bootstrap archive from a VMR build."
|
|
||||||
echo
|
|
||||||
echo "You need to have cloned the VMR (https://github.com/dotnet/dotnet) and"
|
|
||||||
echo "cross-compiled it for the target architecture already."
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
positional_args=()
|
|
||||||
while [[ "$#" -gt 0 ]]; do
|
|
||||||
arg="${1}"
|
|
||||||
case "${arg}" in
|
|
||||||
-h|--help)
|
|
||||||
print_usage
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
positional_args+=("$1")
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
arch=${positional_args[0]} # Name of the architecture. Eg, s390x or ppc64le
|
|
||||||
dir=${positional_args[1]} # Checkout of the VMR with the cross-build for the target architecture
|
|
||||||
dir=$(readlink -f "$dir")
|
|
||||||
|
|
||||||
sdk_tarball=$(readlink -f $(find "$dir" -iname 'dotnet-sdk*'"$arch"'*tar.gz' | head -1))
|
|
||||||
|
|
||||||
# SDK is at VMR/artifacts/assets/Release/dotnet-sdk-9.0.100-preview.3.24165.1-linux-$arch.tar.gz. Extract the SDK version from the name.
|
|
||||||
sdk_version=$(echo "$(basename "${sdk_tarball}")" | sed -E -e 's/dotnet-sdk-//' -e "s/-linux-$arch.tar.gz//")
|
|
||||||
echo $sdk_version
|
|
||||||
|
|
||||||
archive_name=dotnet-prebuilts-${sdk_version}-${arch}
|
|
||||||
|
|
||||||
mkdir -p $archive_name
|
|
||||||
pushd $archive_name
|
|
||||||
|
|
||||||
cp -av $sdk_tarball .
|
|
||||||
# Get all architecture-specific nuget packages
|
|
||||||
find $dir/artifacts/packages/Release/Shipping/ -iname "*linux-$arch*nupkg" -exec cp -avL {} . \;
|
|
||||||
|
|
||||||
popd
|
|
||||||
|
|
||||||
tar cvzf $archive_name.tar.gz $archive_name
|
|
||||||
22
gating.yaml
22
gating.yaml
@ -1,22 +0,0 @@
|
|||||||
--- !Policy
|
|
||||||
product_versions:
|
|
||||||
- fedora-*
|
|
||||||
decision_context: bodhi_update_push_testing
|
|
||||||
subject_type: koji_build
|
|
||||||
rules:
|
|
||||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
|
|
||||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis}
|
|
||||||
--- !Policy
|
|
||||||
product_versions:
|
|
||||||
- fedora-*
|
|
||||||
decision_context: bodhi_update_push_stable
|
|
||||||
subject_type: koji_build
|
|
||||||
rules:
|
|
||||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
|
|
||||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis}
|
|
||||||
--- !Policy
|
|
||||||
product_versions:
|
|
||||||
- rhel-*
|
|
||||||
decision_context: osci_compose_gate
|
|
||||||
rules:
|
|
||||||
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
|
|
||||||
@ -1,29 +0,0 @@
|
|||||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
|
||||||
Version: BSN Pgp v1.1.0.0
|
|
||||||
|
|
||||||
mQINBGUKsUYBEADVCJm4EhXALr1ld42kWeh/vM0XMZ2orNT6NRLDRYjpE4mm4UqA
|
|
||||||
vpjfGCwt5fLcrT4yZng8ABkB3QwTsZzmxesAMD5AZR/gdU1G96DuDGsjp6zJvTuX
|
|
||||||
zvz3PXUYfcl9n5X32acA6N9J5Xfp10xqX3oitUODBdYy/vKW/v/y87ZxgaR6a3wp
|
|
||||||
pPJBJIVKwFJx13v4BHRsGp1fepliQcXPvmNKFNI20le5+FbLq6C9hY5wcwGHGfQr
|
|
||||||
EokH79GsmqgSImqxDOIh06J5VfWA+JwV+3vf95pD8IUrRfGQ+GK7b1/bySxtM5Qa
|
|
||||||
b/IDgvl/Qq3AzEpGarMBaqGbqMz1C7jd8Y6nyKMP/V+OCjbEdYNM8GRz6kBP3Un+
|
|
||||||
Frat5Lc2o4DF+zB3PKIJS3hku5gwlJu6IU1F23vmYFtjUcpRGmyQZDoWyBbOWlB5
|
|
||||||
4SXqVu16amUsRFYmOK8BJMjdotcVbriVIv6WRmugfhIMoRJzVGxYkdbuiuMAX69V
|
|
||||||
xDoGpxX5A8S5A79y0USUVtadQfFavMTyb/gUuUe8oDsqK9gdI3ETxLYG4gYwauVX
|
|
||||||
fCGfoLOKsq5dPzEuEA7GCRrMau+rHKFaM7BigSdnHFW7xNZ4v0YnXAagoqM2G5o5
|
|
||||||
9sak0l57vxxTVk2V3iZzkoU2J2Zlyxyh72n5vjRmb7aNwmQh4Eav6a8ssQARAQAB
|
|
||||||
tBlvbm54Y29yZWRldkBtaWNyb3NvZnQuY29tiQI4BBMBCAAiBQJlCrFGAhsDBgsJ
|
|
||||||
CAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRD9v1PCTbSHLtfzEADIKq15XDeQxLSo
|
|
||||||
BG1aFa9n82K1YADVcu1LeddfhDmQWLnZNgyHtQlKN2n59282CXtgymzae3uc05s2
|
|
||||||
feIJaqF4M4NnCX8Ct3K7Hq1jI7ZktlquPCCy9XHq9aQY8XTxmdtRevtclKgYTwDh
|
|
||||||
w+D/KbE8vTZ6o7JoubA3MKf4k3S8qL/0rIyaC6h0EpiWoMy1TdNMMK7BT4kl6Vz4
|
|
||||||
W6KmNgOux1Pzku5ULM4WuOzmwW+NAzpOLJowfDs1ZC2RM3+g9i1/DmwWtCHngvGD
|
|
||||||
+clA0I0agXxo05toOBTfwxd2gWYczuo/Ole16fYTzqT6n0DHqOjjcc9A7EmC72fQ
|
|
||||||
J+hHAqM+4+CbEGuMpNnTMpCZs98bcK3Rqx/bDJYtbclZzm5O/V4nVbDrJZKzpgA1
|
|
||||||
KuzNMLkr62P6/t15UsStgmrlTILmE5NG0CR1mj/46+mNbsMZCel3dcvnT1Zf4rTq
|
|
||||||
QxMC7Dd/DECKQVC339G/BRfNyhOk2S1mZR/g1uS4bznL+tiwudDh/TAi5C3ZBDMh
|
|
||||||
0muwD9caXS/QFIBWtb2ai3IcpU357R/ERPKLcWYtoYJ80RuKi6XYr1WxSPBmd5Qm
|
|
||||||
wuncye+wR2dveo2jnIXZGUSgz50ZNgBxs/cYWAQ8J6KMgIBa+JY2qalzvIGbrC5x
|
|
||||||
Sr+CkhS8vrktfnRgc8yBssJnvNfqXA==
|
|
||||||
=pKgS
|
|
||||||
-----END PGP PUBLIC KEY BLOCK-----
|
|
||||||
10
release.json
10
release.json
@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
"release": "9.0.18",
|
|
||||||
"channel": "9.0",
|
|
||||||
"tag": "v9.0.119",
|
|
||||||
"sdkVersion": "9.0.119",
|
|
||||||
"runtimeVersion": "9.0.18",
|
|
||||||
"aspNetCoreVersion": "9.0.18",
|
|
||||||
"sourceRepository": "https://github.com/dotnet/dotnet",
|
|
||||||
"sourceVersion": "d088fc83496a99a5785ecdf74c012f61a335c338"
|
|
||||||
}
|
|
||||||
@ -1,20 +0,0 @@
|
|||||||
---
|
|
||||||
inspections:
|
|
||||||
# We patch upstream a lot, no need to reject patches
|
|
||||||
patches: off
|
|
||||||
badfuncs:
|
|
||||||
allowed:
|
|
||||||
# The Mono runtime (used on s390x, for example), uses inet_addr for
|
|
||||||
# debugging (such as sending the control flow graph to a remote process).
|
|
||||||
# See runtime/src/mono/mono/mini/cfgdump.c. This isn't part of any
|
|
||||||
# standard networking facility; networking APIs are implemented/used in
|
|
||||||
# libSystem*so.
|
|
||||||
/usr/lib64/dotnet/shared/Microsoft.NETCore.App/*/libcoreclr.so:
|
|
||||||
- inet_addr
|
|
||||||
/usr/lib64/dotnet/packs/Microsoft.NETCore.App.Runtime.*/*/runtimes/*/native/libcoreclr.so:
|
|
||||||
- inet_addr
|
|
||||||
runpath:
|
|
||||||
# Upstream explicitly sets $ORIGIN/netcoredeps as an RPATH
|
|
||||||
# See https://github.com/dotnet/core/blob/main/Documentation/self-contained-linux-apps.md
|
|
||||||
allowed_origin_paths:
|
|
||||||
- /netcoredeps
|
|
||||||
2
sources
2
sources
@ -1,2 +0,0 @@
|
|||||||
SHA512 (dotnet-9.0.119.tar.gz) = bdb5e0bd73b7edf0cc7bf72d9ef07a31691c442bf436e1e25c7d3ac5ee02768bf405a28c004df62db1bb3f0553cb47d6dbd894106667186c7187a13138e23a09
|
|
||||||
SHA512 (dotnet-9.0.119.tar.gz.sig) = c7529e07348ec4506bf930c70dede49ac16ef6cfe5d0d66a767c26275387de98c153f1adcbc8d921fccad8786cee42f8004d67dbc914a26e1dbd83df6a76f386
|
|
||||||
46
tests/ci.fmf
46
tests/ci.fmf
@ -1,46 +0,0 @@
|
|||||||
summary: Basic smoke test
|
|
||||||
provision:
|
|
||||||
hardware:
|
|
||||||
disk:
|
|
||||||
- size: ">= 20 GiB"
|
|
||||||
memory: ">= 5120 MiB"
|
|
||||||
prepare:
|
|
||||||
how: install
|
|
||||||
package:
|
|
||||||
- aspnetcore-runtime-9.0
|
|
||||||
- babeltrace
|
|
||||||
- bash-completion
|
|
||||||
- bc
|
|
||||||
- binutils
|
|
||||||
- dotnet-runtime-9.0
|
|
||||||
- dotnet-sdk-9.0
|
|
||||||
- expect
|
|
||||||
- file
|
|
||||||
- findutils
|
|
||||||
- gcc-c++
|
|
||||||
- git
|
|
||||||
- jq
|
|
||||||
- libstdc++-devel
|
|
||||||
- lldb
|
|
||||||
- npm
|
|
||||||
- postgresql-odbc
|
|
||||||
- postgresql-server
|
|
||||||
- procps-ng
|
|
||||||
- python3
|
|
||||||
- strace
|
|
||||||
- util-linux
|
|
||||||
- wget
|
|
||||||
- which
|
|
||||||
- zlib-devel
|
|
||||||
execute:
|
|
||||||
script:
|
|
||||||
- dotnet --info
|
|
||||||
- wget --no-verbose https://github.com/redhat-developer/dotnet-bunny/releases/latest/download/turkey.tar.gz
|
|
||||||
- tar xf turkey.tar.gz
|
|
||||||
- dotnet turkey/Turkey.dll --version
|
|
||||||
- git clone "https://github.com/redhat-developer/dotnet-regular-tests.git"
|
|
||||||
- dotnet turkey/Turkey.dll -l="$TMT_TEST_DATA" dotnet-regular-tests --timeout=1200
|
|
||||||
- dnf remove -yq 'dotnet*'
|
|
||||||
- set -x; if command -v dotnet ; then exit 1; fi
|
|
||||||
- set -x; if [ -d /usr/lib64/dotnet ]; then exit 1; fi
|
|
||||||
- set -x; if man dotnet; then exit 1; fi
|
|
||||||
Loading…
Reference in New Issue
Block a user