import CS dotnet8.0-8.0.100~preview.7-0.2.el9~bootstrap
This commit is contained in:
		
							parent
							
								
									63573e2cc8
								
							
						
					
					
						commit
						8a9360c2be
					
				
							
								
								
									
										4
									
								
								.dotnet8.0.metadata
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								.dotnet8.0.metadata
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,4 @@ | |||||||
|  | 35100bcbe91362f5686caf6ebb55bd32215b813b SOURCES/dotnet-prebuilts-8.0.100-preview.6.23330.14-arm64.tar.gz | ||||||
|  | de9624deab87fb323f87fceabacbfbf8b1d088c0 SOURCES/dotnet-prebuilts-8.0.100-preview.6.23330.14-ppc64le.tar.gz | ||||||
|  | bc43d99e7b7faa8fde7e57faf4d46d17d00aadf8 SOURCES/dotnet-prebuilts-8.0.100-preview.6.23330.14-s390x.tar.gz | ||||||
|  | fd142a9cc8993cde3389ce8073d1f0101a6d76b0 SOURCES/dotnet-v8.0.0-preview.7.23375.6-x64-bootstrap.tar.xz | ||||||
| @ -1 +0,0 @@ | |||||||
| 1 |  | ||||||
							
								
								
									
										39
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										39
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @ -1,35 +1,4 @@ | |||||||
| /dotnet-v3.1.101-SDK.tar.gz | SOURCES/dotnet-prebuilts-8.0.100-preview.6.23330.14-arm64.tar.gz | ||||||
| /dotnet-v3.1.102-SDK.tar.gz | SOURCES/dotnet-prebuilts-8.0.100-preview.6.23330.14-ppc64le.tar.gz | ||||||
| /dotnet-v3.1.103.2-SDK.tar.gz | SOURCES/dotnet-prebuilts-8.0.100-preview.6.23330.14-s390x.tar.gz | ||||||
| /dotnet-v5.0.102-SDK-arm64-bootstrap.tar.gz | SOURCES/dotnet-v8.0.0-preview.7.23375.6-x64-bootstrap.tar.xz | ||||||
| /dotnet-v5.0.102-SDK-x64-bootstrap.tar.gz |  | ||||||
| /dotnet-v5.0.102-SDK.tar.gz |  | ||||||
| /dotnet-v5.0.103-SDK.tar.gz |  | ||||||
| /dotnet-v5.0.104-SDK.tar.gz |  | ||||||
| /dotnet-v5.0.202-SDK.tar.gz |  | ||||||
| /dotnet-v5.0.203-SDK.tar.gz |  | ||||||
| /dotnet-v5.0.204-SDK.tar.gz |  | ||||||
| /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.101.tar.gz |  | ||||||
| /dotnet-v6.0.102.tar.gz |  | ||||||
| /dotnet-v6.0.103.tar.gz |  | ||||||
| /dotnet-v6.0.104.tar.gz |  | ||||||
| /dotnet-v6.0.105.tar.gz |  | ||||||
| /dotnet-v7.0.100-rc.2.22477.23-x64-bootstrap.tar.xz |  | ||||||
| /dotnet-arm64-prebuilts-2022-10-12.tar.gz |  | ||||||
| /dotnet-ppc64le-prebuilts-2022-10-21.tar.gz |  | ||||||
| /dotnet-s390x-prebuilts-2022-10-12.tar.gz |  | ||||||
| /dotnet-v7.0.100.tar.gz |  | ||||||
| /dotnet-v7.0.101.tar.gz |  | ||||||
| /dotnet-v7.0.102.tar.gz |  | ||||||
| /dotnet-v8.0.0-preview.7.23375.6-x64-bootstrap.tar.xz |  | ||||||
| /dotnet-prebuilts-8.0.100-preview.6.23330.14-arm64.tar.gz |  | ||||||
| /dotnet-prebuilts-8.0.100-preview.6.23330.14-ppc64le.tar.gz |  | ||||||
| /dotnet-prebuilts-8.0.100-preview.6.23330.14-s390x.tar.gz |  | ||||||
| /dotnet-v8.0.0-rc.1.23419.4-x64-bootstrap.tar.xz |  | ||||||
| /dotnet-prebuilts-8.0.100-rc.1.23410.12-arm64.tar.gz |  | ||||||
| /dotnet-prebuilts-8.0.100-rc.1.23410.12-ppc64le.tar.gz |  | ||||||
| /dotnet-prebuilts-8.0.100-rc.1.23410.12-s390x.tar.gz |  | ||||||
|  | |||||||
							
								
								
									
										140
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										140
									
								
								README.md
									
									
									
									
									
								
							| @ -1,140 +0,0 @@ | |||||||
| # dotnet8.0 |  | ||||||
| 
 |  | ||||||
| This is the work in progress .NET 8.0 package for Fedora. |  | ||||||
| 
 |  | ||||||
| Builds for Fedora, CentOS Stream and RHEL are available from |  | ||||||
| https://copr.fedorainfracloud.org/coprs/g/dotnet-sig/dotnet-preview/ |  | ||||||
| 
 |  | ||||||
| This package is maintained by the Fedora DotNet SIG (Special Interest |  | ||||||
| Group). You can find out more about the DotNet SIG at: |  | ||||||
| 
 |  | ||||||
| - https://fedoraproject.org/wiki/SIGs/DotNet |  | ||||||
| - https://fedoraproject.org/wiki/DotNet |  | ||||||
| - https://lists.fedoraproject.org/archives/list/dotnet-sig@lists.fedoraproject.org/ |  | ||||||
| 
 |  | ||||||
| Please report any issues [using |  | ||||||
| bugzilla](https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora&component=dotnet7.0). |  | ||||||
| 
 |  | ||||||
| # 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 |  | ||||||
| 
 |  | ||||||
| The steps below are for the final package. Please only contribute to this |  | ||||||
| pre-release version this if you know what you are doing. Original instructions |  | ||||||
| follow. |  | ||||||
| 
 |  | ||||||
| ## General Changes |  | ||||||
| 
 |  | ||||||
| 1. Fork the repo. |  | ||||||
| 
 |  | ||||||
| 2. Checkout the forked repository. |  | ||||||
| 
 |  | ||||||
|     - `git clone ssh://$USER@pkgs.fedoraproject.org/forks/$USER/rpms/dotnet7.0.git` |  | ||||||
|     - `cd dotnet7.0` |  | ||||||
| 
 |  | ||||||
| 3. Make your changes. Don't forget to add a changelog. |  | ||||||
| 
 |  | ||||||
| 4. Do local builds. |  | ||||||
| 
 |  | ||||||
|     - `fedpkg local` |  | ||||||
| 
 |  | ||||||
| 5. Fix any errors that come up and rebuild until it works locally. |  | ||||||
| 
 |  | ||||||
| 6. Do builds in koji. |  | ||||||
| 
 |  | ||||||
|     - `fedpkg scratch-build --srpm` |  | ||||||
| 
 |  | ||||||
| 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, do a real |  | ||||||
|     build. |  | ||||||
| 
 |  | ||||||
|     - `fedpkg build` |  | ||||||
| 
 |  | ||||||
| 11. For non-rawhide releases, file updates using bodhi to ship the just-built |  | ||||||
|     package out to users. |  | ||||||
| 
 |  | ||||||
|     - https://bodhi.fedoraproject.org/updates/new |  | ||||||
| 
 |  | ||||||
|     OR |  | ||||||
| 
 |  | ||||||
|     - `fedpkg update` |  | ||||||
| 
 |  | ||||||
| ## Updating to an new upstream release |  | ||||||
| 
 |  | ||||||
| 1. Fork the repo. |  | ||||||
| 
 |  | ||||||
| 2. Checkout the forked repository. |  | ||||||
| 
 |  | ||||||
|     - `git clone ssh://$USER@pkgs.fedoraproject.org/forks/$USER/rpms/dotnet7.0.git` |  | ||||||
|     - `cd dotnet7.0` |  | ||||||
| 
 |  | ||||||
| 3. Build the new upstream source tarball. 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. |  | ||||||
| 
 |  | ||||||
|     - `fedpkg 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. |  | ||||||
| 
 |  | ||||||
|     - `fedpkg scratch-build --srpm` |  | ||||||
| 
 |  | ||||||
| 7. Upload the source archive to the Fedora look-aside cache. |  | ||||||
| 
 |  | ||||||
|     - `fedpkg new-sources path-to-generated-dotnet-source-tarball.tar.gz` |  | ||||||
| 
 |  | ||||||
| 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, do a real |  | ||||||
|     build. |  | ||||||
| 
 |  | ||||||
|     - `fedpkg build` |  | ||||||
| 
 |  | ||||||
| 11. For non-rawhide releases, file updates using bodhi to ship the just-built |  | ||||||
|     package out to users. |  | ||||||
| 
 |  | ||||||
|     - https://bodhi.fedoraproject.org/updates/new |  | ||||||
| 
 |  | ||||||
|     OR |  | ||||||
| 
 |  | ||||||
|     - `fedpkg update` |  | ||||||
| 
 |  | ||||||
| # Testing |  | ||||||
| 
 |  | ||||||
| This package uses CI tests as defined in `tests/test.yml`. Creating a |  | ||||||
| pull-request or running a 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/ |  | ||||||
							
								
								
									
										9
									
								
								SOURCES/release.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								SOURCES/release.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,9 @@ | |||||||
|  | { | ||||||
|  |   "release": "8.0.0-preview.7", | ||||||
|  |   "channel": "8.0", | ||||||
|  |   "tag": "v8.0.0-preview.7.23375.6", | ||||||
|  |   "sdkVersion": "8.0.100-preview.7.23376.3", | ||||||
|  |   "runtimeVersion": "8.0.0-preview.7.23375.6", | ||||||
|  |   "sourceRepository": "https://github.com/dotnet/dotnet", | ||||||
|  |   "sourceVersion": "a4e1c155baee463805c5af89adb4cb1165df9ad0" | ||||||
|  | } | ||||||
| @ -8,22 +8,22 @@ | |||||||
| 
 | 
 | ||||||
| %global dotnetver 8.0 | %global dotnetver 8.0 | ||||||
| 
 | 
 | ||||||
| %global host_version 8.0.0-rc.1.23419.4 | %global host_version 8.0.0-preview.7.23375.6 | ||||||
| %global runtime_version 8.0.0-rc.1.23419.4 | %global runtime_version 8.0.0-preview.7.23375.6 | ||||||
| %global aspnetcore_runtime_version 8.0.0-rc.1.23421.29 | %global aspnetcore_runtime_version 8.0.0-preview.7.23375.9 | ||||||
| %global sdk_version 8.0.100-rc.1.23455.1 | %global sdk_version 8.0.100-preview.7.23376.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 8.0.0-rc.1.23421.29 | %global templates_version 8.0.0-preview.7.23375.9 | ||||||
| #%%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 }') | ||||||
| 
 | 
 | ||||||
| # upstream can produce releases with a different tag than the SDK version | # upstream can update releases without revving the SDK version so these don't always match | ||||||
| %global upstream_tag v8.0.0-rc.1.23419.4 | %global upstream_tag v8.0.0-preview.7.23375.6 | ||||||
| %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 host_rpm_version 8.0.0~rc.1 | %global host_rpm_version 8.0.0~preview.7 | ||||||
| %global runtime_rpm_version 8.0.0~rc.1 | %global runtime_rpm_version 8.0.0~preview.7 | ||||||
| %global aspnetcore_runtime_rpm_version 8.0.0~rc.1 | %global aspnetcore_runtime_rpm_version 8.0.0~preview.7 | ||||||
| %global sdk_rpm_version 8.0.100~rc.1 | %global sdk_rpm_version 8.0.100~preview.7 | ||||||
| 
 | 
 | ||||||
| %if 0%{?fedora} || 0%{?rhel} < 8 | %if 0%{?fedora} || 0%{?rhel} < 8 | ||||||
| %global use_bundled_libunwind 0 | %global use_bundled_libunwind 0 | ||||||
| @ -61,7 +61,7 @@ License:        0BSD AND Apache-2.0 AND (Apache-2.0 WITH LLVM-exception) AND APS | |||||||
| URL:            https://github.com/dotnet/ | URL:            https://github.com/dotnet/ | ||||||
| 
 | 
 | ||||||
| %if %{with bootstrap} | %if %{with bootstrap} | ||||||
| %global bootstrap_sdk_version 8.0.100-rc.1.23410.12 | %global bootstrap_sdk_version 8.0.100-preview.6.23330.14 | ||||||
| %global tarball_name dotnet-%{upstream_tag}-x64-bootstrap | %global tarball_name dotnet-%{upstream_tag}-x64-bootstrap | ||||||
| # The source is generated on a Fedora box via: | # The source is generated on a Fedora box via: | ||||||
| # ./build-dotnet-tarball --bootstrap %%{upstream_tag} | # ./build-dotnet-tarball --bootstrap %%{upstream_tag} | ||||||
| @ -92,10 +92,6 @@ Patch1:         roslyn-analyzers-ppc64le-apphost.patch | |||||||
| Patch2:         vstest-intent-net8.0.patch | Patch2:         vstest-intent-net8.0.patch | ||||||
| # https://github.com/dotnet/source-build/issues/3571 | # https://github.com/dotnet/source-build/issues/3571 | ||||||
| Patch3:         fix-mono-typeloadexception.patch | Patch3:         fix-mono-typeloadexception.patch | ||||||
| # https://github.com/dotnet/runtime/pull/91008 |  | ||||||
| Patch4:         runtime-91008-mono-var-opcode-OP_REGOFFSET.patch |  | ||||||
| # https://github.com/dotnet/runtime/pull/91865 |  | ||||||
| Patch5:         runtime-91865-arm64-page-size.patch |  | ||||||
| 
 | 
 | ||||||
| %if 0%{?fedora} || 0%{?rhel} >= 8 | %if 0%{?fedora} || 0%{?rhel} >= 8 | ||||||
| ExclusiveArch:  aarch64 ppc64le s390x x86_64 | ExclusiveArch:  aarch64 ppc64le s390x x86_64 | ||||||
| @ -499,6 +495,12 @@ export EXTRA_LDFLAGS="$LDFLAGS" | |||||||
| # suggested compile-time change doesn't work, unfortunately. | # suggested compile-time change doesn't work, unfortunately. | ||||||
| export COMPlus_LTTng=0 | export COMPlus_LTTng=0 | ||||||
| 
 | 
 | ||||||
|  | # OpenSSL 3.0 in RHEL 9 and newer versions of Fedora has disabled | ||||||
|  | # SHA1, used by .NET for strong name signing. See | ||||||
|  | # https://github.com/dotnet/runtime/issues/67304 | ||||||
|  | # https://gitlab.com/redhat/centos-stream/rpms/openssl/-/commit/78fb78d30755ae18fdaef28ef392f4e67c662ff6 | ||||||
|  | export OPENSSL_ENABLE_SHA1_SIGNATURES=1 | ||||||
|  | 
 | ||||||
| VERBOSE=1 ./build.sh \ | VERBOSE=1 ./build.sh \ | ||||||
| %if %{without bootstrap} | %if %{without bootstrap} | ||||||
|     --with-sdk previously-built-dotnet \ |     --with-sdk previously-built-dotnet \ | ||||||
| @ -520,14 +522,14 @@ sed -e 's|[@]LIBDIR[@]|%{_libdir}|g' %{SOURCE21} > dotnet.sh | |||||||
| %install | %install | ||||||
| install -dm 0755 %{buildroot}%{_libdir}/dotnet | install -dm 0755 %{buildroot}%{_libdir}/dotnet | ||||||
| ls artifacts/%{runtime_arch}/Release | ls artifacts/%{runtime_arch}/Release | ||||||
| mkdir -p built-sdk | tar xf artifacts/%{runtime_arch}/Release/dotnet-sdk-%{sdk_version}-%{runtime_id}.tar.gz -C %{buildroot}%{_libdir}/dotnet/ | ||||||
| tar xf artifacts/%{runtime_arch}/Release/dotnet-sdk-%{sdk_version}-%{runtime_id}.tar.gz -C built-sdk/ |  | ||||||
| 
 | 
 | ||||||
| # Convert hardlinks to actual copies. This takes up quite a bit of | # See https://github.com/dotnet/source-build/issues/2579 | ||||||
| # extra disk space, but works around RHEL issues in post-rpmbuild tools | find %{buildroot}%{_libdir}/dotnet/ -type f -name 'testhost.x86' -delete | ||||||
| # when they encounter hardlinks. | find %{buildroot}%{_libdir}/dotnet/ -type f -name 'vstest.console' -delete | ||||||
| cp -r --preserve=mode,ownership,timestamps built-sdk/* %{buildroot}%{_libdir}/dotnet/ | 
 | ||||||
| ls %{buildroot}%{_libdir}/dotnet | # 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, | # Delete bundled certificates: we want to use the system store only, | ||||||
| # except for when we have no other choice and ca-certificates doesn't | # except for when we have no other choice and ca-certificates doesn't | ||||||
| @ -541,11 +543,12 @@ if [[ $(find %{buildroot}%{_libdir}/dotnet -name '*.pem' -print | wc -l) != 1 ]] | |||||||
| fi | fi | ||||||
| 
 | 
 | ||||||
| # Install managed symbols | # Install managed symbols | ||||||
| tar xf artifacts/%{runtime_arch}/Release/dotnet-runtime-symbols-%{runtime_id}-%{runtime_version}.tar.gz \ | 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}/ |    -C %{buildroot}/%{_libdir}/dotnet/shared/Microsoft.NETCore.App/%{runtime_version}/ | ||||||
| 
 | 
 | ||||||
| # Fix executable permissions on files | # Fix executable permissions on files | ||||||
| find %{buildroot}%{_libdir}/dotnet/ -type f -name 'apphost' -exec chmod +x {} \; | 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 'singlefilehost' -exec chmod +x {} \; | ||||||
| find %{buildroot}%{_libdir}/dotnet/ -type f -name 'lib*so' -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 {} \; | find %{buildroot}%{_libdir}/dotnet/ -type f -name '*.a' -exec chmod -x {} \; | ||||||
| @ -664,16 +667,6 @@ export COMPlus_LTTng=0 | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| %changelog | %changelog | ||||||
| * Mon Sep 18 2023 Omair Majid <omajid@redhat.com> - 8.0.100~rc.1-0.2 |  | ||||||
| - Add patches to fix mono and arm64 issues |  | ||||||
| - Include libmono-*.a files in the SDK |  | ||||||
| - Fix CI configuration |  | ||||||
| - Related: RHEL-4074 |  | ||||||
| 
 |  | ||||||
| * Fri Sep 15 2023 Omair Majid <omajid@redhat.com> - 8.0.100~rc.1-0.1 |  | ||||||
| - Update to .NET SDK 8.0.100 RC 1 and Runtime 8.0.0 RC 1 |  | ||||||
| - Resolves: RHEL-4074 |  | ||||||
| 
 |  | ||||||
| * Tue Aug 22 2023 Omair Majid <omajid@redhat.com> - 8.0.100~preview.7-0.2 | * Tue Aug 22 2023 Omair Majid <omajid@redhat.com> - 8.0.100~preview.7-0.2 | ||||||
| - Add patch to work around TypeLoadException in Mono | - Add patch to work around TypeLoadException in Mono | ||||||
| - Related: RHBZ#2224124 | - Related: RHBZ#2224124 | ||||||
| @ -1,56 +0,0 @@ | |||||||
| #!/bin/bash |  | ||||||
| 
 |  | ||||||
| # Usage: |  | ||||||
| #   ./build-arm64-bootstrap-tarball <bootstrap-dir> [SDK-version] |  | ||||||
| 
 |  | ||||||
| set -euo pipefail |  | ||||||
| 
 |  | ||||||
| set -x |  | ||||||
| 
 |  | ||||||
| function parse-nuget-name-version-from-file() { |  | ||||||
|     package=$1 |  | ||||||
|     filename=${package##*/} |  | ||||||
| 
 |  | ||||||
|     version_suffix=$(echo "$filename" | grep -Eo '\.[[:digit:]]+.*\.nupkg') |  | ||||||
|     version=$(echo "$version_suffix" | sed -Ee 's/^\.//' -e 's/\.nupkg$//') |  | ||||||
|     name=${filename:0:(${#filename}-${#version_suffix})} |  | ||||||
| 
 |  | ||||||
|     echo "$name" "$version" |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| bootstrap_dir=$(readlink -f "$1") |  | ||||||
| 
 |  | ||||||
| sdk_version=${2:-$(jq -r  '.tools.dotnet' "$bootstrap_dir"/global.json)} |  | ||||||
| 
 |  | ||||||
| mkdir -p "dotnet-prebuilts-${sdk_version}-arm64" |  | ||||||
| 
 |  | ||||||
| pushd "dotnet-prebuilts-${sdk_version}-arm64" |  | ||||||
| 
 |  | ||||||
| # Binaries can be at one of several different URLs: |  | ||||||
| # GA releases: |  | ||||||
| if ! wget "https://dotnetcli.azureedge.net/dotnet/Sdk/${sdk_version}/dotnet-sdk-${sdk_version}-linux-arm64.tar.gz" ; then |  | ||||||
|     # Preview releases: |  | ||||||
|     wget "https://dotnetbuilds.azureedge.net/public/Sdk/${sdk_version}/dotnet-sdk-${sdk_version}-linux-arm64.tar.gz" |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| for archive in "$bootstrap_dir"/prereqs/packages/archive/*.tar.gz; do |  | ||||||
|     mapfile -t linux_x64_packages < <(tar tf "$archive" | grep linux-x64) |  | ||||||
| 
 |  | ||||||
|     for package in "${linux_x64_packages[@]}"; do |  | ||||||
|         if [[ "$package" = *'.Intermediate.'* ]]; then |  | ||||||
|             continue; |  | ||||||
|         fi |  | ||||||
| 
 |  | ||||||
|         read -r name version < <(parse-nuget-name-version-from-file "$package") |  | ||||||
| 
 |  | ||||||
|         arm_name=${name/linux-x64/linux-arm64} |  | ||||||
| 
 |  | ||||||
|         # https://gist.github.com/omajid/c04b6025de49d0b7b18ab4a7e789484e |  | ||||||
|         nappo download --verbose "$arm_name" "$version" |  | ||||||
| 
 |  | ||||||
|     done |  | ||||||
| done |  | ||||||
| 
 |  | ||||||
| popd |  | ||||||
| 
 |  | ||||||
| tar czf "dotnet-prebuilts-${sdk_version}-arm64.tar.gz" "dotnet-prebuilts-${sdk_version}-arm64" |  | ||||||
| @ -1,186 +0,0 @@ | |||||||
| #!/bin/bash |  | ||||||
| 
 |  | ||||||
| # Usage: |  | ||||||
| #   build-dotnet-tarball [--bootstrap] <tag-from-dotnet> |  | ||||||
| # |  | ||||||
| # Creates a source archive 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 [--bootstrap] <tag-from-dotnet>" |  | ||||||
|     echo |  | ||||||
|     echo "Creates a source archive from a tag at https://github.com/dotnet/dotnet" |  | ||||||
|     echo "" |  | ||||||
|     echo "  --bootstrap     build a source tarball usable for bootstrapping .NET" |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| 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 |  | ||||||
|         --bootstrap) |  | ||||||
|             check_bootstrap_environment |  | ||||||
|             build_bootstrap=true |  | ||||||
|             shift |  | ||||||
|             ;; |  | ||||||
|         -h|--help) |  | ||||||
|             print_usage |  | ||||||
|             exit 0 |  | ||||||
|             ;; |  | ||||||
|         *) |  | ||||||
|             positional_args+=("$1") |  | ||||||
|             shift |  | ||||||
|             ;; |  | ||||||
|     esac |  | ||||||
| done |  | ||||||
| 
 |  | ||||||
| 
 |  | ||||||
| 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}" |  | ||||||
| tarball_suffix=.tar.gz |  | ||||||
| 
 |  | ||||||
| if [[ ${build_bootstrap} == true ]]; then |  | ||||||
|     unmodified_tarball_name="${unmodified_tarball_name}-${arch}-bootstrap" |  | ||||||
|     tarball_name="${tarball_name}-${arch}-bootstrap" |  | ||||||
|     tarball_suffix=.tar.xz |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| 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 |  | ||||||
|     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}" |  | ||||||
|     #mkdir dotnet |  | ||||||
|     #pushd dotnet |  | ||||||
|     #git init |  | ||||||
|     #git remote add origin https://github.com/dotnet/dotnet |  | ||||||
|     #git fetch --depth 1 origin "${tag}" |  | ||||||
|     #git checkout FETCH_HEAD |  | ||||||
|     #git submodule update --init --recursive |  | ||||||
|     #clean_dotnet_cache |  | ||||||
|     #./eng/pack-sources.sh -o "$(readlink -f ../../"${unmodified_tarball_name}.tar.gz")" |  | ||||||
|     #popd |  | ||||||
|     #popd |  | ||||||
| 
 |  | ||||||
|     #rm -rf "${temp_dir}" |  | ||||||
| 
 |  | ||||||
| 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}" |  | ||||||
| 
 |  | ||||||
| if [[ ${build_bootstrap} == true ]]; then |  | ||||||
|     ./prep.sh --bootstrap |  | ||||||
| else |  | ||||||
|     find . -type f -iname '*.tar.gz' -delete |  | ||||||
|     rm -rf .dotnet |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| # 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. |  | ||||||
| 
 |  | ||||||
| popd |  | ||||||
| 
 |  | ||||||
| # if [[ ${build_bootstrap} == true ]]; then |  | ||||||
| #     tar -I 'xz -9 -T 0' -cf "${tarball_name}${tarball_suffix}" "${tarball_name}" |  | ||||||
| # else |  | ||||||
| #     tar -czf "${tarball_name}${tarball_suffix}" "${tarball_name}" |  | ||||||
| # fi |  | ||||||
| tar -czf "${tarball_name}${tarball_suffix}" "${tarball_name}" |  | ||||||
							
								
								
									
										13
									
								
								copr-build
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								copr-build
									
									
									
									
									
								
							| @ -1,13 +0,0 @@ | |||||||
| #!/bin/bash |  | ||||||
| 
 |  | ||||||
| set -euo pipefail |  | ||||||
| 
 |  | ||||||
| set -x |  | ||||||
| 
 |  | ||||||
| fedpkg --release f37 srpm 2>&1 | tee fedpkg.output |  | ||||||
| 
 |  | ||||||
| srpm_name=$(grep 'Wrote: ' fedpkg.output | cut -d' ' -f 2) |  | ||||||
| 
 |  | ||||||
| ls -alh "${srpm_name}" |  | ||||||
| 
 |  | ||||||
| copr-cli --debug build @dotnet-sig/dotnet-preview "${srpm_name}" --timeout 36000 |  | ||||||
| @ -1,35 +0,0 @@ | |||||||
| # Tarball is generated, no upstream URL |  | ||||||
| addFilter("W:.*invalid-url Source0: dotnet-.*tar.gz") |  | ||||||
| 
 |  | ||||||
| # macOS is the correct name |  | ||||||
| addFilter("W: spelling-error %description -l en_US macOS ->.*") |  | ||||||
| # The name of the nuget package includes NETCore |  | ||||||
| addFilter("W: spelling-error .* NETCore -> Net Core.*") |  | ||||||
| 
 |  | ||||||
| # Upstream really has no README or documentation files. They suggest using online resources. |  | ||||||
| addFilter("W: no-documentation") |  | ||||||
| 
 |  | ||||||
| # This is a script that we run; it's expected to have execute permissions |  | ||||||
| addFilter("W: strange-permission check-debug-symbols.py") |  | ||||||
| 
 |  | ||||||
| # libicu is a required dependency, but it's used via a dlopen() |  | ||||||
| addFilter("E: explicit-lib-dependency libicu") |  | ||||||
| 
 |  | ||||||
| # There's no devel package for us to place .h files |  | ||||||
| addFilter("W: devel-file-in-non-devel-package /usr/lib64/dotnet/.*\.h") |  | ||||||
| addFilter("W: devel-file-in-non-devel-package /usr/lib64/dotnet/.*\.a") |  | ||||||
| 
 |  | ||||||
| # These paths are non-standard, so we need $ORIGIN to find these libraries |  | ||||||
| addFilter("E: binary-or-shlib-defines-rpath /usr/lib64/dotnet/.*\['\$ORIGIN/netcoredeps'\]") |  | ||||||
| addFilter("E: binary-or-shlib-defines-rpath /usr/lib64/dotnet/.*\['\$ORIGIN'\]") |  | ||||||
| 
 |  | ||||||
| # We put dll files in /usr/lib/dotnet, but rpmlint somehow doesn't see it as a binary? |  | ||||||
| addFilter("W: only-non-binary-in-usr-lib") |  | ||||||
| 
 |  | ||||||
| # We use a number of zero-length files, including _._ |  | ||||||
| addFilter("E: zero-length /usr/lib64/dotnet/.*/_\._") |  | ||||||
| 
 |  | ||||||
| # Upstream uses hidden files, even though we ask them not to, as much as possible |  | ||||||
| addFilter("W: hidden-file-or-dir /usr/lib64/dotnet/.*/\.version") |  | ||||||
| addFilter("W: hidden-file-or-dir /usr/lib64/dotnet/.*/\.toolsetversion") |  | ||||||
| 
 |  | ||||||
							
								
								
									
										23
									
								
								gating.yaml
									
									
									
									
									
								
							
							
						
						
									
										23
									
								
								gating.yaml
									
									
									
									
									
								
							| @ -1,23 +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} |  | ||||||
|   - !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.other-archs.functional} |  | ||||||
| @ -1,9 +0,0 @@ | |||||||
| { |  | ||||||
|   "release": "8.0.0-rc.1", |  | ||||||
|   "channel": "8.0", |  | ||||||
|   "tag": "v8.0.0-rc.1.23419.4", |  | ||||||
|   "sdkVersion": "8.0.100-rc.1.23455.8", |  | ||||||
|   "runtimeVersion": "8.0.0-rc.1.23419.4", |  | ||||||
|   "sourceRepository": "https://github.com/dotnet/dotnet", |  | ||||||
|   "sourceVersion": "113d797bc90104bb4f1cc51e1a462cf3d4ef18fc" |  | ||||||
| } |  | ||||||
| @ -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 |  | ||||||
| @ -1,29 +0,0 @@ | |||||||
| From a73b8bacfcc5819926bc05173ab2f7850eb00da3 Mon Sep 17 00:00:00 2001 |  | ||||||
| From: Ulrich Weigand <ulrich.weigand@de.ibm.com> |  | ||||||
| Date: Wed, 23 Aug 2023 21:11:37 +0200 |  | ||||||
| Subject: [PATCH] [mono] Handle enum return type when inlining CreateInstance |  | ||||||
| 
 |  | ||||||
| Use underlying base type when deciding how to inline a |  | ||||||
| CreateInstance invocation in mini_emit_inst_for_method. |  | ||||||
| 
 |  | ||||||
| Fixes https://github.com/dotnet/runtime/issues/90292 |  | ||||||
| (Mono abort causing .NET 8 msbuild regression). |  | ||||||
| ---
 |  | ||||||
|  src/mono/mono/mini/intrinsics.c | 4 +++- |  | ||||||
|  1 file changed, 3 insertions(+), 1 deletion(-) |  | ||||||
| 
 |  | ||||||
| diff --git a/src/runtime/src/mono/mono/mini/intrinsics.c b/src/runtime/src/mono/mono/mini/intrinsics.c
 |  | ||||||
| index b1e5e76723147..ef77b7dc89f2e 100644
 |  | ||||||
| --- a/src/runtime/src/mono/mono/mini/intrinsics.c
 |  | ||||||
| +++ b//src/runtimesrc/mono/mono/mini/intrinsics.c
 |  | ||||||
| @@ -2079,7 +2079,9 @@ mini_emit_inst_for_method (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSign
 |  | ||||||
|  			MonoType *t = method_context->method_inst->type_argv [0]; |  | ||||||
|  			MonoClass *arg0 = mono_class_from_mono_type_internal (t); |  | ||||||
|  			if (m_class_is_valuetype (arg0) && !mono_class_has_default_constructor (arg0, FALSE)) { |  | ||||||
| -				if (m_class_is_primitive (arg0)) {
 |  | ||||||
| +				if (m_class_is_primitive (arg0) || m_class_is_enumtype (arg0)) {
 |  | ||||||
| +					if (m_class_is_enumtype (arg0))
 |  | ||||||
| +						t = mono_class_enum_basetype_internal (arg0);
 |  | ||||||
|  					int dreg = alloc_dreg (cfg, mini_type_to_stack_type (cfg, t)); |  | ||||||
|  					mini_emit_init_rvar (cfg, dreg, t); |  | ||||||
|  					ins = cfg->cbb->last_ins; |  | ||||||
| @ -1,39 +0,0 @@ | |||||||
| From 7d3b041c09aa1d6cf532e64d24b75a7e5bd4d106 Mon Sep 17 00:00:00 2001 |  | ||||||
| From: Tom Deseyn <tom.deseyn@gmail.com> |  | ||||||
| Date: Tue, 12 Sep 2023 07:43:45 +0200 |  | ||||||
| Subject: [PATCH] Limit special diagnostics size region to 4KiB. |  | ||||||
| 
 |  | ||||||
| This fixes out-of-bounds access when trying to write the |  | ||||||
| diagnostics info on platforms where the PAGE_SIZE is larger |  | ||||||
| than the DumpWriter's 16KiB m_tempBuffer. |  | ||||||
| ---
 |  | ||||||
|  src/coreclr/debug/createdump/crashinfo.cpp     | 2 +- |  | ||||||
|  src/coreclr/debug/createdump/specialdiaginfo.h | 2 ++ |  | ||||||
|  2 files changed, 3 insertions(+), 1 deletion(-) |  | ||||||
| 
 |  | ||||||
| diff --git a/src/runtime/src/coreclr/debug/createdump/crashinfo.cpp b/src/runtime/src/coreclr/debug/createdump/crashinfo.cpp
 |  | ||||||
| index ef903767ba027..8af6ec4a54f5b 100644
 |  | ||||||
| --- a/src/runtime/src/coreclr/debug/createdump/crashinfo.cpp
 |  | ||||||
| +++ b/src/runtime/src/coreclr/debug/createdump/crashinfo.cpp
 |  | ||||||
| @@ -195,7 +195,7 @@ CrashInfo::GatherCrashInfo(DumpType dumpType)
 |  | ||||||
|          return false; |  | ||||||
|      } |  | ||||||
|      // Add the special (fake) memory region for the special diagnostics info |  | ||||||
| -    MemoryRegion special(PF_R, SpecialDiagInfoAddress, SpecialDiagInfoAddress + PAGE_SIZE);
 |  | ||||||
| +    MemoryRegion special(PF_R, SpecialDiagInfoAddress, SpecialDiagInfoAddress + SpecialDiagInfoSize);
 |  | ||||||
|      m_memoryRegions.insert(special); |  | ||||||
|  #ifdef __APPLE__ |  | ||||||
|      InitializeOtherMappings(); |  | ||||||
| diff --git a/src/runtime/src/coreclr/debug/createdump/specialdiaginfo.h b/src/runtime/src/coreclr/debug/createdump/specialdiaginfo.h
 |  | ||||||
| index 3a04a9f551e6d..a857129c9c91f 100644
 |  | ||||||
| --- a/src/runtime/src/coreclr/debug/createdump/specialdiaginfo.h
 |  | ||||||
| +++ b/src/runtime/src/coreclr/debug/createdump/specialdiaginfo.h
 |  | ||||||
| @@ -24,6 +24,8 @@ const uint64_t SpecialDiagInfoAddress = 0x7fff1000;
 |  | ||||||
|  #endif |  | ||||||
|  #endif |  | ||||||
|   |  | ||||||
| +const uint64_t SpecialDiagInfoSize = 0x1000;
 |  | ||||||
| +
 |  | ||||||
|  struct SpecialDiagInfoHeader |  | ||||||
|  { |  | ||||||
|      char Signature[16]; |  | ||||||
							
								
								
									
										4
									
								
								sources
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								sources
									
									
									
									
									
								
							| @ -1,4 +0,0 @@ | |||||||
| SHA512 (dotnet-v8.0.0-rc.1.23419.4-x64-bootstrap.tar.xz) = 247d43ae0100753a6ed18f8302e818f450ea648120bee857ea5e9d8e0130a6cb9a48b76a6c39956cf5b18f9c1dc8645d2d4eed9ea3b791456cb65ec67314f807 |  | ||||||
| SHA512 (dotnet-prebuilts-8.0.100-rc.1.23410.12-arm64.tar.gz) = c57c8a249de603c8c6f62e7b3cb18d5a1ff32bdaaa6ac9fdd37a9a577cc89fdd0de82d7f099f754e566d473a32d19093003caeea9bff02865e51f46938271bb4 |  | ||||||
| SHA512 (dotnet-prebuilts-8.0.100-rc.1.23410.12-ppc64le.tar.gz) = 1252b993d0aed94cda53389f16b209656f161a43d77e1099d59e563afa1d74c1dab474e0c636d91e7a94f8c72df4e2430393f220363b5ef39811e9cd0d33d122 |  | ||||||
| SHA512 (dotnet-prebuilts-8.0.100-rc.1.23410.12-s390x.tar.gz) = 662c4689fa1b5752cae9c7a9f75e71f60e63ae013e130457c3f7d0a73fec0d58489ef32279d0a7e046ebba12cfb16ae6fa5e8f5bbbe3bc59b860207e132b3640 |  | ||||||
							
								
								
									
										41
									
								
								tests/ci.fmf
									
									
									
									
									
								
							
							
						
						
									
										41
									
								
								tests/ci.fmf
									
									
									
									
									
								
							| @ -1,41 +0,0 @@ | |||||||
| summary: Basic smoke test |  | ||||||
| provision: |  | ||||||
|     disk: 20 |  | ||||||
|     memory: 5120 |  | ||||||
| prepare: |  | ||||||
|     how: install |  | ||||||
|     package: |  | ||||||
|         - aspnetcore-runtime-8.0 |  | ||||||
|         - babeltrace |  | ||||||
|         - bash-completion |  | ||||||
|         - bc |  | ||||||
|         - binutils |  | ||||||
|         - dotnet-runtime-8.0 |  | ||||||
|         - dotnet-sdk-8.0 |  | ||||||
|         - expect |  | ||||||
|         - file |  | ||||||
|         - findutils |  | ||||||
|         - gcc-c++ |  | ||||||
|         - git |  | ||||||
|         - jq |  | ||||||
|         - libstdc++-devel |  | ||||||
|         - lldb |  | ||||||
|         - lttng-ust |  | ||||||
|         - 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 |  | ||||||
							
								
								
									
										118
									
								
								update-release
									
									
									
									
									
								
							
							
						
						
									
										118
									
								
								update-release
									
									
									
									
									
								
							| @ -1,118 +0,0 @@ | |||||||
| #!/bin/bash |  | ||||||
| 
 |  | ||||||
| # Usage: |  | ||||||
| #     ./update-release sdk-version runtime-version [--bug bug-id] [--tarball tarball-name] [--larger-rpm-release] |  | ||||||
| 
 |  | ||||||
| set -euo pipefail |  | ||||||
| IFS=$'\n\t' |  | ||||||
| 
 |  | ||||||
| print_usage() { |  | ||||||
|     echo " Usage:" |  | ||||||
|     echo "     ./update-release sdk-version runtime-version [--bug bug-id] [--tarball tarball-name] [--larger-rpm-release]" |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| user_provided_tarball_name="" |  | ||||||
| 
 |  | ||||||
| rpm_release=1 |  | ||||||
| positional_args=() |  | ||||||
| bug_ids=() |  | ||||||
| while [[ "$#" -gt 0 ]]; do |  | ||||||
|     arg="$1" |  | ||||||
|     case "${arg}" in |  | ||||||
|         --bug) |  | ||||||
|             bug_ids+=("$2") |  | ||||||
|             shift; |  | ||||||
|             shift; |  | ||||||
|             ;; |  | ||||||
|         -h|--help) |  | ||||||
|             print_usage |  | ||||||
|             exit 0 |  | ||||||
|             ;; |  | ||||||
|         --tarball) |  | ||||||
|             user_provided_tarball_name="$2" |  | ||||||
|             shift; |  | ||||||
|             shift; |  | ||||||
|             ;; |  | ||||||
|         --larger-rpm-release) |  | ||||||
|             rpm_release="2" |  | ||||||
|             shift; |  | ||||||
|             ;; |  | ||||||
|         *) |  | ||||||
|             positional_args+=("$1") |  | ||||||
|             shift |  | ||||||
|             ;; |  | ||||||
|     esac |  | ||||||
| done |  | ||||||
| 
 |  | ||||||
| spec_files=( ./*.spec ) |  | ||||||
| spec_file="${spec_files[0]}" |  | ||||||
| 
 |  | ||||||
| sdk_version=${positional_args[0]:-} |  | ||||||
| if [[ -z ${sdk_version} ]]; then |  | ||||||
|     echo "error: missing sdk version" |  | ||||||
|     exit 1 |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| runtime_version=${positional_args[1]:-} |  | ||||||
| if [[ -z ${runtime_version} ]]; then |  | ||||||
|     echo "error: missing runtime version" |  | ||||||
|     exit 1 |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| host_version="$runtime_version" |  | ||||||
| 
 |  | ||||||
| if [[ "$runtime_version" == "3.1"* ]]; then |  | ||||||
|     tag=v${sdk_version}-SDK |  | ||||||
| elif [[ "$runtime_version" == "6.0"* ]] || [[ "$runtime_version" == "7.0"* ]]; then |  | ||||||
|     tag=v${sdk_version} |  | ||||||
| else |  | ||||||
|     tag=v${runtime_version} |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| if [[ -f "dotnet-${tag}-original.tar.gz" ]]; then |  | ||||||
|     echo "dotnet-${tag}-original.tar.gz alredy exists, not rebuilding tarball" |  | ||||||
| else |  | ||||||
|     if [[ -n "${user_provided_tarball_name}" ]]; then |  | ||||||
|         mv "$user_provided_tarball_name" "dotnet-${tag}-original.tar.gz" |  | ||||||
|     elif [[ -f "dotnet-${sdk_version}-SDK.tar.gz" ]]; then |  | ||||||
|         mv "dotnet-${sdk_version}-SDK.tar.gz" "dotnet-${tag}-original.tar.gz" |  | ||||||
|     elif [[ -f "dotnet-${sdk_version}.tar.gz" ]]; then |  | ||||||
|         mv "dotnet-${sdk_version}.tar.gz" "dotnet-${tag}-original.tar.gz" |  | ||||||
|     elif [[ -f "dotnet-${runtime_version}.tar.gz" ]]; then |  | ||||||
|         mv "dotnet-${runtime_version}.tar.gz" "dotnet-${tag}-original.tar.gz" |  | ||||||
|     fi |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| if [[ ! -f "dotnet-${tag}.tar.gz" ]]; then |  | ||||||
|     ./build-dotnet-tarball "${tag}" |  | ||||||
| fi |  | ||||||
| 
 |  | ||||||
| set -x |  | ||||||
| 
 |  | ||||||
| sed -i -E "s|^%global host_version [[:digit:]]\.[[:digit:]]\.[[:digit:]]+|%global host_version ${host_version}|" "$spec_file" |  | ||||||
| sed -i -E "s|^%global runtime_version [[:digit:]]\.[[:digit:]]\.[[:digit:]]+|%global runtime_version ${runtime_version}|" "$spec_file" |  | ||||||
| sed -i -E "s|^%global sdk_version [[:digit:]]\.[[:digit:]]\.[[:digit:]][[:digit:]][[:digit:]]|%global sdk_version ${sdk_version}|" "$spec_file" |  | ||||||
| 
 |  | ||||||
| comment="Update to .NET SDK ${sdk_version} and Runtime ${runtime_version}" |  | ||||||
| commit_message="$comment |  | ||||||
| " |  | ||||||
| for bug_id in "${bug_ids[@]}"; do |  | ||||||
|     comment="$comment |  | ||||||
| - Resolves: RHBZ#$bug_id" |  | ||||||
|     commit_message="$commit_message |  | ||||||
| Resolves: RHBZ#$bug_id" |  | ||||||
| done |  | ||||||
| 
 |  | ||||||
| echo "$commit_message" > git-commit-message |  | ||||||
| 
 |  | ||||||
| rpmdev-bumpspec --comment="$comment" "$spec_file" |  | ||||||
| 
 |  | ||||||
| # Reset release in 'Release' tag |  | ||||||
| sed -i -E 's|^Release:        [[:digit:]]+%|Release:        '"$rpm_release"'%|' "$spec_file" |  | ||||||
| # Reset Release in changelog comment |  | ||||||
| # See https://stackoverflow.com/questions/18620153/find-matching-text-and-replace-next-line |  | ||||||
| sed -i -E '/^%changelog$/!b;n;s/-[[:digit:]]+$/-'"$rpm_release"'/' "$spec_file" |  | ||||||
| 
 |  | ||||||
| release_json_url=$(spectool -l --sources ./dotnet8.0.spec | grep release.json | cut -d' ' -f2) |  | ||||||
| rm "$(basename "$release_json_url")" |  | ||||||
| wget "$release_json_url" |  | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user