diff --git a/eng/pipelines/templates/jobs/vmr-build.yml b/eng/pipelines/templates/jobs/vmr-build.yml
index 119828474..d25e605c0 100644
--- a/eng/pipelines/templates/jobs/vmr-build.yml
+++ b/eng/pipelines/templates/jobs/vmr-build.yml
@@ -71,6 +71,11 @@ parameters:
type: boolean
default: false
+# Freeform field for extra values to pass to build.sh for special build modes
+- name: extraProperties
+ type: string
+ default: ''
+
# Use the previous version's SDK to build the current one
- name: withPreviousSDK
type: boolean
@@ -285,6 +290,10 @@ jobs:
extraBuildProperties="$extraBuildProperties /p:TargetArchitecture=${{ parameters.targetArchitecture }}"
fi
+ if [[ -n "${{ parameters.extraProperties }}" ]]; then
+ extraBuildProperties="$extraBuildProperties ${{ parameters.extraProperties }}"
+ fi
+
buildArgs="$(additionalBuildArgs) $customBuildArgs $extraBuildProperties"
# Only use Docker when a container is specified
@@ -420,4 +429,4 @@ jobs:
- ${{ if ne(parameters.buildSourceOnly, 'true') }}:
- publish: '$(sourcesPath)/artifacts/packages/Release/'
artifact: $(Agent.JobName)_Packages
- displayName: Publish Packages
\ No newline at end of file
+ displayName: Publish Packages
diff --git a/eng/pipelines/templates/stages/vmr-build.yml b/eng/pipelines/templates/stages/vmr-build.yml
index 717b2dd95..08605836a 100644
--- a/eng/pipelines/templates/stages/vmr-build.yml
+++ b/eng/pipelines/templates/stages/vmr-build.yml
@@ -426,6 +426,21 @@ stages:
targetOS: android
targetArchitecture: x86
+ - template: ../jobs/vmr-build.yml
+ parameters:
+ buildName: Browser_Multithreaded_Shortstack
+ isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
+ vmrBranch: ${{ variables.VmrBranch }}
+ architecture: wasm
+ pool:
+ name: ${{ variables.defaultPoolName }}
+ demands: ${{ variables.defaultPoolDemandsLinux }}
+ container: ${{ variables.browserCrossContainer }}
+ crossRootFs: '/crossrootfs/x64'
+ targetOS: browser
+ targetArchitecture: wasm
+ extraProperties: /p:DotNetBuildRuntimeWasmEnableThreads=true
+
- template: ../jobs/vmr-build.yml
parameters:
buildName: LinuxBionic_Shortstack
@@ -440,6 +455,21 @@ stages:
targetOS: linux-bionic
targetArchitecture: arm64
+ - template: ../jobs/vmr-build.yml
+ parameters:
+ buildName: LinuxBionic_NativeAOT_Shortstack
+ isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
+ vmrBranch: ${{ variables.VmrBranch }}
+ architecture: arm64
+ pool:
+ name: ${{ variables.defaultPoolName }}
+ demands: ${{ variables.defaultPoolDemandsLinux }}
+ container: ${{ variables.androidCrossContainer }}
+ crossRootFs: '/crossrootfs/x64'
+ targetOS: linux-bionic
+ targetArchitecture: arm64
+ extraProperties: /p:DotNetBuildRuntimeNativeAOTRuntimePack=true
+
- template: ../jobs/vmr-build.yml
parameters:
buildName: LinuxBionic_Shortstack
@@ -454,6 +484,21 @@ stages:
targetOS: linux-bionic
targetArchitecture: x64
+ - template: ../jobs/vmr-build.yml
+ parameters:
+ buildName: LinuxBionic_NativeAOT_Shortstack
+ isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
+ vmrBranch: ${{ variables.VmrBranch }}
+ architecture: x64
+ pool:
+ name: ${{ variables.defaultPoolName }}
+ demands: ${{ variables.defaultPoolDemandsLinux }}
+ container: ${{ variables.androidCrossContainer }}
+ crossRootFs: '/crossrootfs/x64'
+ targetOS: linux-bionic
+ targetArchitecture: x64
+ extraProperties: /p:DotNetBuildRuntimeNativeAOTRuntimePack=true
+
- template: ../jobs/vmr-build.yml
parameters:
buildName: iOS_Shortstack
@@ -465,6 +510,30 @@ stages:
targetOS: ios
targetArchitecture: arm64
+ - template: ../jobs/vmr-build.yml
+ parameters:
+ buildName: iOS_NativeAOT_Shortstack
+ isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
+ vmrBranch: ${{ variables.VmrBranch }}
+ architecture: arm64
+ pool:
+ vmImage: ${{ variables.defaultPoolNameMac }}
+ targetOS: ios
+ targetArchitecture: arm64
+ extraProperties: /p:DotNetBuildRuntimeNativeAOTRuntimePack=true
+
+ - template: ../jobs/vmr-build.yml
+ parameters:
+ buildName: iOSSimulator_NativeAOT_Shortstack
+ isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
+ vmrBranch: ${{ variables.VmrBranch }}
+ architecture: arm64
+ pool:
+ vmImage: ${{ variables.defaultPoolNameMac }}
+ targetOS: iossimulator
+ targetArchitecture: arm64
+ extraProperties: /p:DotNetBuildRuntimeNativeAOTRuntimePack=true
+
- template: ../jobs/vmr-build.yml
parameters:
buildName: iOSSimulator_Shortstack
@@ -476,6 +545,18 @@ stages:
targetOS: iossimulator
targetArchitecture: x64
+ - template: ../jobs/vmr-build.yml
+ parameters:
+ buildName: iOSSimulator_NativeAOT_Shortstack
+ isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
+ vmrBranch: ${{ variables.VmrBranch }}
+ architecture: x64
+ pool:
+ vmImage: ${{ variables.defaultPoolNameMac }}
+ targetOS: iossimulator
+ targetArchitecture: x64
+ extraProperties: /p:DotNetBuildRuntimeNativeAOTRuntimePack=true
+
- template: ../jobs/vmr-build.yml
parameters:
buildName: MacCatalyst_Shortstack
@@ -487,6 +568,18 @@ stages:
targetOS: maccatalyst
targetArchitecture: arm64
+ - template: ../jobs/vmr-build.yml
+ parameters:
+ buildName: MacCatalyst_NativeAOT_Shortstack
+ isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
+ vmrBranch: ${{ variables.VmrBranch }}
+ architecture: arm64
+ pool:
+ vmImage: ${{ variables.defaultPoolNameMac }}
+ targetOS: maccatalyst
+ targetArchitecture: arm64
+ extraProperties: /p:DotNetBuildRuntimeNativeAOTRuntimePack=true
+
- template: ../jobs/vmr-build.yml
parameters:
buildName: MacCatalyst_Shortstack
@@ -498,6 +591,18 @@ stages:
targetOS: maccatalyst
targetArchitecture: x64
+ - template: ../jobs/vmr-build.yml
+ parameters:
+ buildName: MacCatalyst_NativeAOT_Shortstack
+ isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
+ vmrBranch: ${{ variables.VmrBranch }}
+ architecture: x64
+ pool:
+ vmImage: ${{ variables.defaultPoolNameMac }}
+ targetOS: maccatalyst
+ targetArchitecture: x64
+ extraProperties: /p:DotNetBuildRuntimeNativeAOTRuntimePack=true
+
- template: ../jobs/vmr-build.yml
parameters:
buildName: tvOS_Shortstack
@@ -509,6 +614,18 @@ stages:
targetOS: tvos
targetArchitecture: arm64
+ - template: ../jobs/vmr-build.yml
+ parameters:
+ buildName: tvOS_NativeAOT_Shortstack
+ isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
+ vmrBranch: ${{ variables.VmrBranch }}
+ architecture: arm64
+ pool:
+ vmImage: ${{ variables.defaultPoolNameMac }}
+ targetOS: tvos
+ targetArchitecture: arm64
+ extraProperties: /p:DotNetBuildRuntimeNativeAOTRuntimePack=true
+
- template: ../jobs/vmr-build.yml
parameters:
buildName: tvOSSimulator_Shortstack
@@ -520,6 +637,18 @@ stages:
targetOS: tvossimulator
targetArchitecture: arm64
+ - template: ../jobs/vmr-build.yml
+ parameters:
+ buildName: tvOSSimulator_NativeAOT_Shortstack
+ isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
+ vmrBranch: ${{ variables.VmrBranch }}
+ architecture: arm64
+ pool:
+ vmImage: ${{ variables.defaultPoolNameMac }}
+ targetOS: tvossimulator
+ targetArchitecture: arm64
+ extraProperties: /p:DotNetBuildRuntimeNativeAOTRuntimePack=true
+
- template: ../jobs/vmr-build.yml
parameters:
buildName: tvOSSimulator_Shortstack
@@ -531,6 +660,18 @@ stages:
targetOS: tvossimulator
targetArchitecture: x64
+ - template: ../jobs/vmr-build.yml
+ parameters:
+ buildName: tvOSSimulator_NativeAOT_Shortstack
+ isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
+ vmrBranch: ${{ variables.VmrBranch }}
+ architecture: x64
+ pool:
+ vmImage: ${{ variables.defaultPoolNameMac }}
+ targetOS: tvossimulator
+ targetArchitecture: x64
+ extraProperties: /p:DotNetBuildRuntimeNativeAOTRuntimePack=true
+
- template: ../jobs/vmr-build.yml
parameters:
buildName: Wasi_Shortstack
diff --git a/src/SourceBuild/content/repo-projects/runtime.proj b/src/SourceBuild/content/repo-projects/runtime.proj
index b0612dae5..aa5b32962 100644
--- a/src/SourceBuild/content/repo-projects/runtime.proj
+++ b/src/SourceBuild/content/repo-projects/runtime.proj
@@ -17,6 +17,8 @@
$(BuildArgs) /p:TargetRid=$(TargetRid)
$(BuildArgs) /p:RuntimeOS=$(RuntimeOS)
$(BuildArgs) /p:BaseOS=$(BaseOS)
+ $(BuildArgs) /p:DotNetBuildRuntimeWasmEnableThreads=true
+ $(BuildArgs) /p:DotNetBuildRuntimeNativeAOTRuntimePack=true