diff --git a/.vsts-ci.yml b/.vsts-ci.yml
index 8e4f528e5..3fd03fcc1 100644
--- a/.vsts-ci.yml
+++ b/.vsts-ci.yml
@@ -64,8 +64,8 @@ extends:
image: mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-39
ubuntu2204:
image: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04
- ubuntu2204CrossArmAlpine:
- image: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04-cross-arm-alpine
+ mariner20CrossArm:
+ image: mcr.microsoft.com/dotnet-buildtools/prereqs:mariner-2.0-cross-arm
ubuntu2204DebPkg:
image: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04-debpkg
sdl:
@@ -233,7 +233,7 @@ extends:
parameters:
agentOs: Linux
jobName: Build_Linux_musl_Release_arm
- container: ubuntu2204CrossArmAlpine
+ container: mariner20CrossArm
buildConfiguration: Release
buildArchitecture: arm
runtimeIdentifier: 'linux-musl-arm'
diff --git a/.vsts-pr.yml b/.vsts-pr.yml
index 2a762dd9a..012166861 100644
--- a/.vsts-pr.yml
+++ b/.vsts-pr.yml
@@ -203,7 +203,7 @@ stages:
parameters:
agentOs: Linux
jobName: Build_Linux_musl_Release_arm
- container: 'mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-22.04-cross-arm-alpine'
+ container: 'mcr.microsoft.com/dotnet-buildtools/prereqs:mariner-2.0-cross-arm'
buildConfiguration: Release
buildArchitecture: arm
runtimeIdentifier: 'linux-musl-arm'
diff --git a/eng/Versions.props b/eng/Versions.props
index 3a08c7b87..9d15a1202 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -19,8 +19,7 @@
preview
rtm
servicing
-
-
+ 0
30
@@ -30,7 +29,7 @@
18
- <_NET70ILLinkPackVersion>7.0.100-1.23211.1
+ <_NET70ILLinkPackVersion>7.0.100-1.23401.1
@@ -170,7 +169,7 @@
- 3.14.0.8606
+ 3.14.1.8722
diff --git a/eng/pipelines/templates/stages/vmr-build.yml b/eng/pipelines/templates/stages/vmr-build.yml
index 43f0c8633..51597c437 100644
--- a/eng/pipelines/templates/stages/vmr-build.yml
+++ b/eng/pipelines/templates/stages/vmr-build.yml
@@ -13,7 +13,7 @@ parameters:
# The following parameters aren't expected to be passed in rather they are used for encapsulation
# -----------------------------------------------------------------------------------------------
- alpine317Container: mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.17
+ alpine319Container: mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.19
centOSStream8Container: mcr.microsoft.com/dotnet-buildtools/prereqs:centos-stream8
centOSStream9Container: mcr.microsoft.com/dotnet-buildtools/prereqs:centos-stream9
fedora38Container: mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-38
@@ -112,14 +112,14 @@ stages:
- template: ../jobs/vmr-build.yml
parameters:
# Changing the build name requires updating the referenced name in the source-build-sdk-diff-tests.yml pipeline
- buildName: Alpine317_Offline_MsftSdk
+ buildName: Alpine319_Offline_MsftSdk
isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
vmrBranch: ${{ variables.VmrBranch }}
architecture: x64
pool:
name: ${{ variables.defaultPoolName }}
demands: ${{ variables.defaultPoolDemands }}
- container: ${{ parameters.alpine317Container }}
+ container: ${{ parameters.alpine319Container }}
buildFromArchive: false # ✅
enablePoison: false # 🚫
excludeOmniSharpTests: true # ✅
diff --git a/src/SourceBuild/content/eng/Versions.props b/src/SourceBuild/content/eng/Versions.props
index dbd256551..384c27bc6 100644
--- a/src/SourceBuild/content/eng/Versions.props
+++ b/src/SourceBuild/content/eng/Versions.props
@@ -30,7 +30,7 @@
These URLs can't be composed from their base URL and version as we read them from the
prep.sh and pipeline scripts, outside of MSBuild.
-->
- https://dotnetcli.azureedge.net/source-built-artifacts/assets/Private.SourceBuilt.Artifacts.8.0.103-servicing.24117.1.centos.8-x64.tar.gz
- https://dotnetcli.azureedge.net/source-built-artifacts/sdks/dotnet-sdk-8.0.103-centos.8-x64.tar.gz
+ https://dotnetcli.azureedge.net/source-built-artifacts/assets/Private.SourceBuilt.Artifacts.8.0.104-servicing.24171.1.centos.8-x64.tar.gz
+ https://dotnetcli.azureedge.net/source-built-artifacts/sdks/dotnet-sdk-8.0.104-centos.8-x64.tar.gz
diff --git a/src/SourceBuild/content/eng/pipelines/source-build-sdk-diff-tests.yml b/src/SourceBuild/content/eng/pipelines/source-build-sdk-diff-tests.yml
index 36eed8cbd..4e49c7fa8 100644
--- a/src/SourceBuild/content/eng/pipelines/source-build-sdk-diff-tests.yml
+++ b/src/SourceBuild/content/eng/pipelines/source-build-sdk-diff-tests.yml
@@ -1,6 +1,6 @@
schedules:
-- cron: "0 11 * * 1-5"
- displayName: Run on weekdays at 11am UTC
+- cron: "0 11 * * 1-5"
+ displayName: Run on weekdays at 11am UTC
branches:
include:
- main
@@ -47,8 +47,8 @@ jobs:
- template: templates/jobs/sdk-diff-tests.yml
parameters:
- buildName: Alpine317_Offline_MsftSdk
- targetRid: alpine.3.17-x64
+ buildName: Alpine319_Offline_MsftSdk
+ targetRid: alpine.3.19-x64
architecture: x64
dotnetDotnetRunId: ${{ parameters.dotnetDotnetRunId }}
diff --git a/src/SourceBuild/content/global.json b/src/SourceBuild/content/global.json
index 54e2f96b7..99d15d703 100644
--- a/src/SourceBuild/content/global.json
+++ b/src/SourceBuild/content/global.json
@@ -1,6 +1,6 @@
{
"tools": {
- "dotnet": "8.0.103"
+ "dotnet": "8.0.104"
},
"msbuild-sdks": {
"Microsoft.Build.CentralPackageVersions": "2.0.1",
diff --git a/src/SourceBuild/patches/runtime/0001-crashinfo-use-off_t-instead-of-off64_t.patch b/src/SourceBuild/patches/runtime/0001-crashinfo-use-off_t-instead-of-off64_t.patch
new file mode 100644
index 000000000..6569164b8
--- /dev/null
+++ b/src/SourceBuild/patches/runtime/0001-crashinfo-use-off_t-instead-of-off64_t.patch
@@ -0,0 +1,38 @@
+From 05ad51a9be428012328a1ee199a4edaff20b5efe Mon Sep 17 00:00:00 2001
+From: Antoine Martin
+Date: Tue, 12 Sep 2023 18:55:46 -0400
+Subject: [PATCH] crashinfo.cpp/crasinfounix.cpp: use off_t instead of off64_t
+
+Backport: https://github.com/dotnet/runtime/pull/101272
+
+---
+ src/coreclr/debug/createdump/crashinfo.cpp | 2 +-
+ src/coreclr/debug/createdump/crashinfounix.cpp | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/coreclr/debug/createdump/crashinfo.cpp b/src/coreclr/debug/createdump/crashinfo.cpp
+index 996f3a81935d..d1d1b0ea0218 100644
+--- a/src/coreclr/debug/createdump/crashinfo.cpp
++++ b/src/coreclr/debug/createdump/crashinfo.cpp
+@@ -803,7 +803,7 @@ CrashInfo::PageMappedToPhysicalMemory(uint64_t start)
+ }
+
+ uint64_t pagemapOffset = (start / PAGE_SIZE) * sizeof(uint64_t);
+- uint64_t seekResult = lseek64(m_fdPagemap, (off64_t) pagemapOffset, SEEK_SET);
++ uint64_t seekResult = lseek(m_fdPagemap, (off_t) pagemapOffset, SEEK_SET);
+ if (seekResult != pagemapOffset)
+ {
+ int seekErrno = errno;
+diff --git a/src/coreclr/debug/createdump/crashinfounix.cpp b/src/coreclr/debug/createdump/crashinfounix.cpp
+index 24b975e3d655..2f4ea079de3b 100644
+--- a/src/coreclr/debug/createdump/crashinfounix.cpp
++++ b/src/coreclr/debug/createdump/crashinfounix.cpp
+@@ -516,7 +516,7 @@ CrashInfo::ReadProcessMemory(void* address, void* buffer, size_t size, size_t* r
+ // performance optimization.
+ m_canUseProcVmReadSyscall = false;
+ assert(m_fdMem != -1);
+- *read = pread64(m_fdMem, buffer, size, (off64_t)address);
++ *read = pread(m_fdMem, buffer, size, (off_t)address);
+ }
+
+ if (*read == (size_t)-1)
diff --git a/src/core-sdk-tasks/GenerateMSBuildExtensionsSWR.cs b/src/core-sdk-tasks/GenerateMSBuildExtensionsSWR.cs
index eab79f2b7..bac9ad0d8 100644
--- a/src/core-sdk-tasks/GenerateMSBuildExtensionsSWR.cs
+++ b/src/core-sdk-tasks/GenerateMSBuildExtensionsSWR.cs
@@ -24,7 +24,8 @@ namespace Microsoft.DotNet.Cli.Build
AddFolder(sb,
@"MSBuildSdkResolver",
- @"MSBuild\Current\Bin\SdkResolvers\Microsoft.DotNet.MSBuildSdkResolver");
+ @"MSBuild\Current\Bin\SdkResolvers\Microsoft.DotNet.MSBuildSdkResolver",
+ ngenAssemblies: true);
AddFolder(sb,
@"msbuildExtensions",
@@ -39,7 +40,7 @@ namespace Microsoft.DotNet.Cli.Build
return true;
}
- private void AddFolder(StringBuilder sb, string relativeSourcePath, string swrInstallDir)
+ private void AddFolder(StringBuilder sb, string relativeSourcePath, string swrInstallDir, bool ngenAssemblies = false)
{
string sourceFolder = Path.Combine(MSBuildExtensionsLayoutDirectory, relativeSourcePath);
var files = Directory.GetFiles(sourceFolder)
@@ -55,7 +56,14 @@ namespace Microsoft.DotNet.Cli.Build
{
sb.Append(@" file source=""$(PkgVS_Redist_Common_Net_Core_SDK_MSBuildExtensions)\");
sb.Append(Path.Combine(relativeSourcePath, Path.GetFileName(file)));
- sb.AppendLine("\"");
+ sb.Append('"');
+
+ if (ngenAssemblies && file.EndsWith(".dll", StringComparison.OrdinalIgnoreCase))
+ {
+ sb.Append(@" vs.file.ngenApplications=""[installDir]\Common7\IDE\vsn.exe""");
+ }
+
+ sb.AppendLine();
}
sb.AppendLine();
@@ -67,6 +75,7 @@ namespace Microsoft.DotNet.Cli.Build
string newRelativeSourcePath = Path.Combine(relativeSourcePath, subfolderName);
string newSwrInstallDir = Path.Combine(swrInstallDir, subfolderName);
+ // Don't propagate ngenAssemblies to subdirectories.
AddFolder(sb, newRelativeSourcePath, newSwrInstallDir);
}
}
diff --git a/test/SdkTests/TestsToSkipStableSDK.xml b/test/SdkTests/TestsToSkipStableSDK.xml
index 550025aa6..e0f5b37b7 100644
--- a/test/SdkTests/TestsToSkipStableSDK.xml
+++ b/test/SdkTests/TestsToSkipStableSDK.xml
@@ -187,10 +187,26 @@
+ Reason="Cannot run with non-existent LastRuntimeFrameworkVersion"/>
+ Reason="Cannot run with non-existent LastRuntimeFrameworkVersion"/>
+
+
+
+