mirror of
https://github.com/saymrwulf/onnxruntime.git
synced 2026-07-02 03:55:34 +00:00
make uwp store apps link to statically-linked crt desktop builds (#9182)
Co-authored-by: Sheil Kumar <sheilk@microsoft.com>
This commit is contained in:
parent
c30cc9190a
commit
f16bb37fae
4 changed files with 35 additions and 208 deletions
|
|
@ -18,7 +18,6 @@ CMake creates a target to this project
|
|||
<IsReleaseBuild Condition=" '$(IsReleaseBuild)' == '' ">false</IsReleaseBuild>
|
||||
<IsLinuxBuild Condition=" '$(IsLinuxBuild)' == '' ">false</IsLinuxBuild>
|
||||
<ExecutionProvider Condition=" '$(ExecutionProvider)' == '' ">None</ExecutionProvider>
|
||||
<IsStoreBuild Condition=" '$(IsStoreBuild)' == '' ">false</IsStoreBuild>
|
||||
|
||||
<!--internal build related properties-->
|
||||
<OnnxRuntimeSourceDirectory Condition="'$(OnnxRuntimeSourceDirectory)'==''">..</OnnxRuntimeSourceDirectory>
|
||||
|
|
@ -153,7 +152,7 @@ CMake creates a target to this project
|
|||
<Copy SourceFiles="@(LicenseFile)" DestinationFiles="@(LicenseFile->'$(OnnxRuntimeSourceDirectory)\%(Filename).txt')"/>
|
||||
|
||||
<Message Importance="High" Text="Generating nuspec for the Microsoft.AI.MachineLearning Nuget package ..." />
|
||||
<Exec ContinueOnError="False" Command="python ..\tools\nuget\generate_nuspec_for_native_nuget.py --package_version $(PackageVersion) --package_name Microsoft.AI.MachineLearning --target_architecture $(TargetArchitecture) --build_config $(Configuration) --native_build_path $(NativeBuildOutputDirAbs) --packages_path $(OnnxRuntimePackagesDirectoryAbs) --ort_build_path $(OnnxRuntimeBuildDirectoryAbs) --sources_path $(OnnxRuntimeSourceDirectoryAbs) --commit_id $(GitCommitHash) --is_release_build $(IsReleaseBuild) --is_store_build $(IsStoreBuild)" ConsoleToMSBuild="true">
|
||||
<Exec ContinueOnError="False" Command="python ..\tools\nuget\generate_nuspec_for_native_nuget.py --package_version $(PackageVersion) --package_name Microsoft.AI.MachineLearning --target_architecture $(TargetArchitecture) --build_config $(Configuration) --native_build_path $(NativeBuildOutputDirAbs) --packages_path $(OnnxRuntimePackagesDirectoryAbs) --ort_build_path $(OnnxRuntimeBuildDirectoryAbs) --sources_path $(OnnxRuntimeSourceDirectoryAbs) --commit_id $(GitCommitHash) --is_release_build $(IsReleaseBuild)" ConsoleToMSBuild="true">
|
||||
<Output TaskParameter="ConsoleOutput" PropertyName="GenerateNuspecOutput" />
|
||||
</Exec>
|
||||
|
||||
|
|
|
|||
|
|
@ -99,58 +99,6 @@ jobs:
|
|||
BuildArch: 'arm'
|
||||
Runtime: 'static'
|
||||
|
||||
- job: WindowsAI_CPU_X64_Store
|
||||
timeoutInMinutes: 120
|
||||
workspace:
|
||||
clean: all
|
||||
pool:
|
||||
name: 'Win-CPU-2021'
|
||||
demands: []
|
||||
steps:
|
||||
- template: ../../templates/windowsai-nuget-build.yml
|
||||
parameters:
|
||||
BuildArch: 'x64'
|
||||
BuildForStore: 'true'
|
||||
|
||||
- job: WindowsAI_CPU_X86_Store
|
||||
timeoutInMinutes: 120
|
||||
workspace:
|
||||
clean: all
|
||||
pool:
|
||||
name: 'Win-CPU-2021'
|
||||
demands: []
|
||||
steps:
|
||||
- template: ../../templates/windowsai-nuget-build.yml
|
||||
parameters:
|
||||
BuildArch: 'x86'
|
||||
BuildForStore: 'true'
|
||||
|
||||
- job: WindowsAI_CPU_ARM64_Store
|
||||
timeoutInMinutes: 120
|
||||
workspace:
|
||||
clean: all
|
||||
pool:
|
||||
name: 'Win-CPU-2021'
|
||||
demands: []
|
||||
steps:
|
||||
- template: ../../templates/windowsai-nuget-build.yml
|
||||
parameters:
|
||||
BuildArch: 'arm64'
|
||||
BuildForStore: 'true'
|
||||
|
||||
- job: WindowsAI_CPU_ARM_Store
|
||||
timeoutInMinutes: 120
|
||||
workspace:
|
||||
clean: all
|
||||
pool:
|
||||
name: 'Win-CPU-2021'
|
||||
demands: []
|
||||
steps:
|
||||
- template: ../../templates/windowsai-nuget-build.yml
|
||||
parameters:
|
||||
BuildArch: 'arm'
|
||||
BuildForStore: 'true'
|
||||
|
||||
- job: NuGet_Packaging
|
||||
workspace:
|
||||
clean: all
|
||||
|
|
@ -160,10 +108,6 @@ jobs:
|
|||
- WindowsAI_DirectML_X86
|
||||
- WindowsAI_DirectML_ARM64
|
||||
- WindowsAI_DirectML_ARM
|
||||
- WindowsAI_CPU_X64_Store
|
||||
- WindowsAI_CPU_X86_Store
|
||||
- WindowsAI_CPU_ARM64_Store
|
||||
- WindowsAI_CPU_ARM_Store
|
||||
- WindowsAI_DirectML_X64_StaticRuntime
|
||||
- WindowsAI_DirectML_X86_StaticRuntime
|
||||
- WindowsAI_DirectML_ARM64_StaticRuntime
|
||||
|
|
@ -194,30 +138,6 @@ jobs:
|
|||
artifactName: 'Microsoft.AI.MachineLearning.arm'
|
||||
targetPath: '$(Build.BinariesDirectory)/nuget-artifact-arm'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - NuGet CPU x64 Store'
|
||||
inputs:
|
||||
artifactName: 'Microsoft.AI.MachineLearning.x64.Store'
|
||||
targetPath: '$(Build.BinariesDirectory)/nuget-artifact-x64-store'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - NuGet CPU x86 Store'
|
||||
inputs:
|
||||
artifactName: 'Microsoft.AI.MachineLearning.x86.Store'
|
||||
targetPath: '$(Build.BinariesDirectory)/nuget-artifact-x86-store'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - NuGet CPU ARM64 Store'
|
||||
inputs:
|
||||
artifactName: 'Microsoft.AI.MachineLearning.arm64.Store'
|
||||
targetPath: '$(Build.BinariesDirectory)/nuget-artifact-arm64-store'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - NuGet CPU ARM Store'
|
||||
inputs:
|
||||
artifactName: 'Microsoft.AI.MachineLearning.arm.Store'
|
||||
targetPath: '$(Build.BinariesDirectory)/nuget-artifact-arm-store'
|
||||
|
||||
- task: DownloadPipelineArtifact@0
|
||||
displayName: 'Download Pipeline Artifact - NuGet DirectML x64 StaticRuntime'
|
||||
inputs:
|
||||
|
|
@ -256,12 +176,6 @@ jobs:
|
|||
$x64_nupkg_unzipped_directory = [System.IO.Path]::Combine($x64_nupkg_unzipped_directory_root, 'binaries', [System.IO.Path]::GetFileNameWithoutExtension($x64_nuget_package))
|
||||
[System.IO.Compression.ZipFile]::ExtractToDirectory($x64_nuget_package, $x64_nupkg_unzipped_directory)
|
||||
|
||||
$nupkgs = (Get-ChildItem ..\nuget-artifact-x64-store -Filter Microsoft.AI.MachineLearning*.nupkg -Recurse)
|
||||
$x64_store_nuget_package = $nupkgs[0].FullName
|
||||
$x64_store_nupkg_unzipped_directory_root = $nupkgs[0].Directory.FullName
|
||||
$x64_store_nupkg_unzipped_directory = [System.IO.Path]::Combine($x64_store_nupkg_unzipped_directory_root, 'binaries', [System.IO.Path]::GetFileNameWithoutExtension($x64_store_nuget_package))
|
||||
[System.IO.Compression.ZipFile]::ExtractToDirectory($x64_store_nuget_package, $x64_store_nupkg_unzipped_directory)
|
||||
|
||||
$nupkgs = (Get-ChildItem ..\nuget-artifact-x64-static-runtime -Filter Microsoft.AI.MachineLearning*.nupkg -Recurse)
|
||||
$x64_static_runtime_nuget_package = $nupkgs[0].FullName
|
||||
$x64_static_runtime_nupkg_unzipped_directory_root = $nupkgs[0].Directory.FullName
|
||||
|
|
@ -274,12 +188,6 @@ jobs:
|
|||
$x86_nupkg_unzipped_directory = [System.IO.Path]::Combine($x86_nupkg_unzipped_directory_root, 'binaries', [System.IO.Path]::GetFileNameWithoutExtension($x86_nuget_package))
|
||||
[System.IO.Compression.ZipFile]::ExtractToDirectory($x86_nuget_package, $x86_nupkg_unzipped_directory)
|
||||
|
||||
$nupkgs = (Get-ChildItem ..\nuget-artifact-x86-store -Filter Microsoft.AI.MachineLearning*.nupkg -Recurse)
|
||||
$x86_store_nuget_package = $nupkgs[0].FullName
|
||||
$x86_store_nupkg_unzipped_directory_root = $nupkgs[0].Directory.FullName
|
||||
$x86_store_nupkg_unzipped_directory = [System.IO.Path]::Combine($x86_store_nupkg_unzipped_directory_root, 'binaries', [System.IO.Path]::GetFileNameWithoutExtension($x86_store_nuget_package))
|
||||
[System.IO.Compression.ZipFile]::ExtractToDirectory($x86_store_nuget_package, $x86_store_nupkg_unzipped_directory)
|
||||
|
||||
$nupkgs = (Get-ChildItem ..\nuget-artifact-x86-static-runtime -Filter Microsoft.AI.MachineLearning*.nupkg -Recurse)
|
||||
$x86_static_runtime_nuget_package = $nupkgs[0].FullName
|
||||
$x86_static_runtime_nupkg_unzipped_directory_root = $nupkgs[0].Directory.FullName
|
||||
|
|
@ -292,12 +200,6 @@ jobs:
|
|||
$arm64_nupkg_unzipped_directory = [System.IO.Path]::Combine($arm64_nupkg_unzipped_directory_root, 'binaries', [System.IO.Path]::GetFileNameWithoutExtension($arm64_nuget_package))
|
||||
[System.IO.Compression.ZipFile]::ExtractToDirectory($arm64_nuget_package, $arm64_nupkg_unzipped_directory)
|
||||
|
||||
$nupkgs = (Get-ChildItem ..\nuget-artifact-arm64-store -Filter Microsoft.AI.MachineLearning*.nupkg -Recurse)
|
||||
$arm64_store_nuget_package = $nupkgs[0].FullName
|
||||
$arm64_store_nupkg_unzipped_directory_root = $nupkgs[0].Directory.FullName
|
||||
$arm64_store_nupkg_unzipped_directory = [System.IO.Path]::Combine($arm64_store_nupkg_unzipped_directory_root, 'binaries', [System.IO.Path]::GetFileNameWithoutExtension($arm64_store_nuget_package))
|
||||
[System.IO.Compression.ZipFile]::ExtractToDirectory($arm64_store_nuget_package, $arm64_store_nupkg_unzipped_directory)
|
||||
|
||||
$nupkgs = (Get-ChildItem ..\nuget-artifact-arm64-static-runtime -Filter Microsoft.AI.MachineLearning*.nupkg -Recurse)
|
||||
$arm64_static_runtime_nuget_package = $nupkgs[0].FullName
|
||||
$arm64_static_runtime_nupkg_unzipped_directory_root = $nupkgs[0].Directory.FullName
|
||||
|
|
@ -310,41 +212,35 @@ jobs:
|
|||
$arm_nupkg_unzipped_directory = [System.IO.Path]::Combine($arm_nupkg_unzipped_directory_root, 'binaries', [System.IO.Path]::GetFileNameWithoutExtension($arm_nuget_package))
|
||||
[System.IO.Compression.ZipFile]::ExtractToDirectory($arm_nuget_package, $arm_nupkg_unzipped_directory)
|
||||
|
||||
$nupkgs = (Get-ChildItem ..\nuget-artifact-arm-store -Filter Microsoft.AI.MachineLearning*.nupkg -Recurse)
|
||||
$arm_store_nuget_package = $nupkgs[0].FullName
|
||||
$arm_store_nupkg_unzipped_directory_root = $nupkgs[0].Directory.FullName
|
||||
$arm_store_nupkg_unzipped_directory = [System.IO.Path]::Combine($arm_store_nupkg_unzipped_directory_root, 'binaries', [System.IO.Path]::GetFileNameWithoutExtension($arm_store_nuget_package))
|
||||
[System.IO.Compression.ZipFile]::ExtractToDirectory($arm_store_nuget_package, $arm_store_nupkg_unzipped_directory)
|
||||
|
||||
$nupkgs = (Get-ChildItem ..\nuget-artifact-arm-static-runtime -Filter Microsoft.AI.MachineLearning*.nupkg -Recurse)
|
||||
$arm_static_runtime_nuget_package = $nupkgs[0].FullName
|
||||
$arm_static_runtime_nupkg_unzipped_directory_root = $nupkgs[0].Directory.FullName
|
||||
$arm_static_runtime_nupkg_unzipped_directory = [System.IO.Path]::Combine($arm_static_runtime_nupkg_unzipped_directory_root, 'binaries', [System.IO.Path]::GetFileNameWithoutExtension($arm_static_runtime_nuget_package))
|
||||
[System.IO.Compression.ZipFile]::ExtractToDirectory($arm_static_runtime_nuget_package, $arm_static_runtime_nupkg_unzipped_directory)
|
||||
|
||||
$x64_store_runtime_path_old = [System.IO.Path]::Combine($x64_store_nupkg_unzipped_directory, 'runtimes', 'win-x64', 'lib\\uap10.0')
|
||||
$x64_store_runtime_path_old = [System.IO.Path]::Combine($x64_static_runtime_nupkg_unzipped_directory, 'runtimes', 'win-x64', '_native')
|
||||
$x64_store_runtime_path_new = [System.IO.Path]::Combine($x64_nupkg_unzipped_directory, 'runtimes', 'win-x64', 'lib\\uap10.0')
|
||||
$x64_static_runtime_path_old = [System.IO.Path]::Combine($x64_static_runtime_nupkg_unzipped_directory, 'runtimes', 'win-x64', '_native')
|
||||
$x64_static_runtime_path_new = [System.IO.Path]::Combine($x64_nupkg_unzipped_directory, 'runtimes', 'win-x64', '_native', 'static')
|
||||
$x86_runtime_path_old = [System.IO.Path]::Combine($x86_nupkg_unzipped_directory, 'runtimes', 'win-x86', '_native')
|
||||
$x86_runtime_path_new = [System.IO.Path]::Combine($x64_nupkg_unzipped_directory, 'runtimes', 'win-x86', '_native')
|
||||
$x86_store_runtime_path_old = [System.IO.Path]::Combine($x86_store_nupkg_unzipped_directory, 'runtimes', 'win-x86', 'lib\\uap10.0')
|
||||
$x86_store_runtime_path_old = [System.IO.Path]::Combine($x86_static_runtime_nupkg_unzipped_directory, 'runtimes', 'win-x86', '_native')
|
||||
$x86_store_runtime_path_new = [System.IO.Path]::Combine($x64_nupkg_unzipped_directory, 'runtimes', 'win-x86', 'lib\\uap10.0')
|
||||
$x86_static_runtime_path_old = [System.IO.Path]::Combine($x86_static_runtime_nupkg_unzipped_directory, 'runtimes', 'win-x86', '_native')
|
||||
$x86_static_runtime_path_new = [System.IO.Path]::Combine($x64_nupkg_unzipped_directory, 'runtimes', 'win-x86', '_native', 'static')
|
||||
$arm64_runtime_path_old = [System.IO.Path]::Combine($arm64_nupkg_unzipped_directory, 'runtimes', 'win-arm64', '_native')
|
||||
$arm64_runtime_path_new = [System.IO.Path]::Combine($x64_nupkg_unzipped_directory, 'runtimes', 'win-arm64', '_native')
|
||||
$arm64_store_runtime_path_old = [System.IO.Path]::Combine($arm64_store_nupkg_unzipped_directory, 'runtimes', 'win-arm64', 'lib\\uap10.0')
|
||||
$arm64_store_runtime_path_old = [System.IO.Path]::Combine($arm64_static_runtime_nupkg_unzipped_directory, 'runtimes', 'win-arm64', '_native')
|
||||
$arm64_store_runtime_path_new = [System.IO.Path]::Combine($x64_nupkg_unzipped_directory, 'runtimes', 'win-arm64', 'lib\\uap10.0')
|
||||
$arm64_static_runtime_path_old = [System.IO.Path]::Combine($arm64_static_runtime_nupkg_unzipped_directory, 'runtimes', 'win-arm64', '_native')
|
||||
$arm64_static_runtime_path_new = [System.IO.Path]::Combine($x64_nupkg_unzipped_directory, 'runtimes', 'win-arm64', '_native', 'static')
|
||||
$arm_runtime_path_old = [System.IO.Path]::Combine($arm_nupkg_unzipped_directory, 'runtimes', 'win-arm', '_native')
|
||||
$arm_runtime_path_new = [System.IO.Path]::Combine($x64_nupkg_unzipped_directory, 'runtimes', 'win-arm', '_native')
|
||||
$arm_store_runtime_path_old = [System.IO.Path]::Combine($arm_store_nupkg_unzipped_directory, 'runtimes', 'win-arm', 'lib\\uap10.0')
|
||||
$arm_store_runtime_path_old = [System.IO.Path]::Combine($arm_static_runtime_nupkg_unzipped_directory, 'runtimes', 'win-arm', '_native')
|
||||
$arm_store_runtime_path_new = [System.IO.Path]::Combine($x64_nupkg_unzipped_directory, 'runtimes', 'win-arm', 'lib\\uap10.0')
|
||||
$arm_static_runtime_path_old = [System.IO.Path]::Combine($arm_static_runtime_nupkg_unzipped_directory, 'runtimes', 'win-arm', '_native')
|
||||
$arm_static_runtime_path_new = [System.IO.Path]::Combine($x64_nupkg_unzipped_directory, 'runtimes', 'win-arm', '_native', 'static')
|
||||
$uap_build_path_old = [System.IO.Path]::Combine($x64_store_nupkg_unzipped_directory, 'build', 'uap10.0')
|
||||
$uap_build_path_old = [System.IO.Path]::Combine($x64_static_runtime_nupkg_unzipped_directory, 'build', 'native')
|
||||
$uap_build_path_new = [System.IO.Path]::Combine($x64_nupkg_unzipped_directory, 'build', 'uap10.0')
|
||||
|
||||
New-Item -Path $x64_store_runtime_path_new -ItemType Directory
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
parameters:
|
||||
BuildArch: 'x64'
|
||||
RunTests : 'true'
|
||||
BuildForStore: 'false'
|
||||
Runtime: 'dynamic'
|
||||
|
||||
steps:
|
||||
|
|
@ -47,13 +46,6 @@ steps:
|
|||
- powershell: |
|
||||
Write-Host "##vso[task.setvariable variable=BuildFlags]$(BuildFlags) --enable_wcos"
|
||||
displayName: Add OneCore flags
|
||||
condition: eq('${{ parameters.BuildForStore }}', 'false')
|
||||
|
||||
- powershell: |
|
||||
Write-Host "##vso[task.setvariable variable=BuildFlags]$(BuildFlags) --enable_windows_store"
|
||||
Write-Host "##vso[task.setvariable variable=ArtifactName]$(ArtifactName).Store"
|
||||
displayName: Add Microsoft Store flags
|
||||
condition: eq('${{ parameters.BuildForStore }}', 'true')
|
||||
|
||||
- powershell: |
|
||||
Write-Host "##vso[task.setvariable variable=BuildFlags]$(BuildFlags) --enable_msvc_static_runtime"
|
||||
|
|
@ -68,59 +60,22 @@ steps:
|
|||
arguments: '--build_dir $(Build.BinariesDirectory) --skip_submodule_sync --build_shared_lib --enable_onnx_tests $(TelemetryOption) --ms_experimental --use_dml --use_winml --cmake_generator "Visual Studio 16 2019" --update --config RelWithDebInfo --enable_lto --disable_rtti $(BuildFlags)'
|
||||
workingDirectory: '$(Build.BinariesDirectory)'
|
||||
|
||||
- ${{ if or(notIn(parameters['sln_platform'], 'Win32', 'x64'), eq(parameters.BuildForStore, 'true')) }}:
|
||||
# Use cross-compiled protoc
|
||||
- script: |
|
||||
@echo ##vso[task.setvariable variable=ProtocDirectory]$(Build.BinariesDirectory)\host_protoc\Release
|
||||
- task: VSBuild@1
|
||||
displayName: 'Build'
|
||||
inputs:
|
||||
solution: '$(Build.BinariesDirectory)\RelWithDebInfo\onnxruntime.sln'
|
||||
${{ if ne(parameters.BuildArch, 'x86') }}:
|
||||
platform: ${{ parameters.BuildArch }}
|
||||
${{ if eq(parameters.BuildArch, 'x86') }}:
|
||||
platform: 'Win32'
|
||||
configuration: RelWithDebInfo
|
||||
msbuildArchitecture: ${{ parameters.BuildArch }}
|
||||
maximumCpuCount: true
|
||||
logProjectEvents: true
|
||||
workingFolder: '$(Build.BinariesDirectory)\RelWithDebInfo'
|
||||
createLogFile: true
|
||||
|
||||
- ${{ if eq(parameters.BuildForStore, 'false') }}:
|
||||
- task: VSBuild@1
|
||||
displayName: 'Build'
|
||||
inputs:
|
||||
solution: '$(Build.BinariesDirectory)\RelWithDebInfo\onnxruntime.sln'
|
||||
${{ if ne(parameters.BuildArch, 'x86') }}:
|
||||
platform: ${{ parameters.BuildArch }}
|
||||
${{ if eq(parameters.BuildArch, 'x86') }}:
|
||||
platform: 'Win32'
|
||||
configuration: RelWithDebInfo
|
||||
msbuildArchitecture: ${{ parameters.BuildArch }}
|
||||
maximumCpuCount: true
|
||||
logProjectEvents: true
|
||||
workingFolder: '$(Build.BinariesDirectory)\RelWithDebInfo'
|
||||
createLogFile: true
|
||||
|
||||
- ${{ if eq(parameters.BuildForStore, 'true') }}:
|
||||
- task: VSBuild@1
|
||||
displayName: 'Build'
|
||||
inputs:
|
||||
solution: '$(Build.BinariesDirectory)\RelWithDebInfo\onnxruntime.vcxproj'
|
||||
${{ if ne(parameters.BuildArch, 'x86') }}:
|
||||
platform: ${{ parameters.BuildArch }}
|
||||
${{ if eq(parameters.BuildArch, 'x86') }}:
|
||||
platform: 'Win32'
|
||||
configuration: RelWithDebInfo
|
||||
msbuildArchitecture: ${{ parameters.BuildArch }}
|
||||
maximumCpuCount: true
|
||||
logProjectEvents: true
|
||||
workingFolder: '$(Build.BinariesDirectory)\RelWithDebInfo'
|
||||
createLogFile: true
|
||||
|
||||
- task: VSBuild@1
|
||||
displayName: 'Build'
|
||||
inputs:
|
||||
solution: '$(Build.BinariesDirectory)\RelWithDebInfo\winml_dll.vcxproj'
|
||||
${{ if ne(parameters.BuildArch, 'x86') }}:
|
||||
platform: ${{ parameters.BuildArch }}
|
||||
${{ if eq(parameters.BuildArch, 'x86') }}:
|
||||
platform: 'Win32'
|
||||
configuration: RelWithDebInfo
|
||||
msbuildArchitecture: ${{ parameters.BuildArch }}
|
||||
maximumCpuCount: true
|
||||
logProjectEvents: true
|
||||
workingFolder: '$(Build.BinariesDirectory)\RelWithDebInfo'
|
||||
createLogFile: true
|
||||
|
||||
- ${{ if and(eq(parameters.BuildArch, 'x64'), eq(parameters.BuildForStore, 'false'), eq(parameters.Runtime, 'dynamic')) }}:
|
||||
- ${{ if and(eq(parameters.BuildArch, 'x64'), eq(parameters.Runtime, 'dynamic')) }}:
|
||||
- script: |
|
||||
mklink /D /J $(Build.BinariesDirectory)\RelWithDebInfo\models $(Build.BinariesDirectory)\models
|
||||
DIR dist\ /S /B > wheel_filename_file
|
||||
|
|
@ -146,7 +101,7 @@ steps:
|
|||
testRunTitle: 'Unit Test Run'
|
||||
condition: succeededOrFailed()
|
||||
|
||||
- ${{ if and(eq(parameters.BuildForStore, 'false'), eq(parameters.Runtime, 'dynamic')) }}:
|
||||
- ${{ if eq(parameters.Runtime, 'dynamic') }}:
|
||||
- script: |
|
||||
xcopy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\winml_test_api.exe $(Build.ArtifactStagingDirectory)\test_artifact\
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\winml_test_scenario.exe $(Build.ArtifactStagingDirectory)\test_artifact\
|
||||
|
|
@ -181,7 +136,7 @@ steps:
|
|||
arguments: 'x64'
|
||||
modifyEnvironment: true
|
||||
|
||||
- ${{ if and(eq(parameters.BuildArch, 'x64'), eq(parameters.BuildForStore, 'false')) }}:
|
||||
- ${{ if eq(parameters.BuildArch, 'x64') }}:
|
||||
- script: msbuild Microsoft.AI.MachineLearning.Interop.csproj /p:Configuration=RelWithDebInfo /p:Platform="Any CPU" /p:OnnxRuntimeBuildDirectory=$(Build.BinariesDirectory) -restore
|
||||
workingDirectory: '$(Build.SourcesDirectory)\csharp\src\Microsoft.AI.MachineLearning.Interop'
|
||||
displayName: 'Build Microsoft.AI.MachineLearning.Interop.dll'
|
||||
|
|
@ -194,7 +149,7 @@ steps:
|
|||
DoEsrp: 'true'
|
||||
|
||||
|
||||
- ${{ if and(eq(parameters.BuildArch, 'x64'), eq(parameters.BuildForStore, 'false')) }}:
|
||||
- ${{ if eq(parameters.BuildArch, 'x64') }}:
|
||||
- script: |
|
||||
msbuild $(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.proj /p:Configuration=RelWithDebInfo /t:CreateWindowsAIPackage /p:OnnxRuntimeBuildDirectory=$(Build.BinariesDirectory) /p:OnnxRuntimeSourceDirectory=$(Build.SourcesDirectory)
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\*.nupkg $(Build.ArtifactStagingDirectory)
|
||||
|
|
@ -202,7 +157,7 @@ steps:
|
|||
workingDirectory: '$(Build.SourcesDirectory)\csharp'
|
||||
displayName: 'Create NuGet Package'
|
||||
|
||||
- ${{ if and(eq(parameters.BuildArch, 'x86'), eq(parameters.BuildForStore, 'false')) }}:
|
||||
- ${{ if eq(parameters.BuildArch, 'x86') }}:
|
||||
- script: |
|
||||
msbuild $(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.proj /p:Configuration=RelWithDebInfo /t:CreateWindowsAIPackage /p:OnnxRuntimeBuildDirectory=$(Build.BinariesDirectory) /p:OnnxRuntimeSourceDirectory=$(Build.SourcesDirectory) /p:TargetArchitecture=x86
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\*.nupkg $(Build.ArtifactStagingDirectory)
|
||||
|
|
@ -210,25 +165,9 @@ steps:
|
|||
workingDirectory: '$(Build.SourcesDirectory)\csharp'
|
||||
displayName: 'Create NuGet Package'
|
||||
|
||||
- ${{ if and(eq(parameters.BuildArch, 'x64'), eq(parameters.BuildForStore, 'true')) }}:
|
||||
- script: |
|
||||
msbuild $(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.proj /p:Configuration=RelWithDebInfo /t:CreateWindowsAIPackage /p:OnnxRuntimeBuildDirectory=$(Build.BinariesDirectory) /p:OnnxRuntimeSourceDirectory=$(Build.SourcesDirectory) /p:IsStoreBuild=True /p:ProtocDirectory=$(Build.BinariesDirectory)\host_protoc\Release
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\*.nupkg $(Build.ArtifactStagingDirectory)
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\*.snupkg $(Build.ArtifactStagingDirectory)
|
||||
workingDirectory: '$(Build.SourcesDirectory)\csharp'
|
||||
displayName: 'Create NuGet Package'
|
||||
|
||||
- ${{ if and(eq(parameters.BuildArch, 'x86'), eq(parameters.BuildForStore, 'true')) }}:
|
||||
- script: |
|
||||
msbuild $(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.proj /p:Configuration=RelWithDebInfo /t:CreateWindowsAIPackage /p:OnnxRuntimeBuildDirectory=$(Build.BinariesDirectory) /p:OnnxRuntimeSourceDirectory=$(Build.SourcesDirectory) /p:TargetArchitecture=x86 /p:IsStoreBuild=True /p:ProtocDirectory=$(Build.BinariesDirectory)\host_protoc\Release
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\*.nupkg $(Build.ArtifactStagingDirectory)
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\*.snupkg $(Build.ArtifactStagingDirectory)
|
||||
workingDirectory: '$(Build.SourcesDirectory)\csharp'
|
||||
displayName: 'Create NuGet Package'
|
||||
|
||||
- ${{ if eq(parameters.BuildArch, 'arm64') }}:
|
||||
- script: |
|
||||
msbuild $(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.proj /p:Configuration=RelWithDebInfo /t:CreateWindowsAIPackage /p:OnnxRuntimeBuildDirectory=$(Build.BinariesDirectory) /p:OnnxRuntimeSourceDirectory=$(Build.SourcesDirectory) /p:TargetArchitecture=arm64 /p:IsStoreBuild=${{ parameters.BuildForStore }} /p:ProtocDirectory=$(Build.BinariesDirectory)\host_protoc\Release
|
||||
msbuild $(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.proj /p:Configuration=RelWithDebInfo /t:CreateWindowsAIPackage /p:OnnxRuntimeBuildDirectory=$(Build.BinariesDirectory) /p:OnnxRuntimeSourceDirectory=$(Build.SourcesDirectory) /p:TargetArchitecture=arm64 /p:ProtocDirectory=$(Build.BinariesDirectory)\host_protoc\Release
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\*.nupkg $(Build.ArtifactStagingDirectory)
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\*.snupkg $(Build.ArtifactStagingDirectory)
|
||||
workingDirectory: '$(Build.SourcesDirectory)\csharp'
|
||||
|
|
@ -236,7 +175,7 @@ steps:
|
|||
|
||||
- ${{ if eq(parameters.BuildArch, 'arm') }}:
|
||||
- script: |
|
||||
msbuild $(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.proj /p:Configuration=RelWithDebInfo /t:CreateWindowsAIPackage /p:OnnxRuntimeBuildDirectory=$(Build.BinariesDirectory) /p:OnnxRuntimeSourceDirectory=$(Build.SourcesDirectory) /p:TargetArchitecture=arm /p:IsStoreBuild=${{ parameters.BuildForStore }} /p:ProtocDirectory=$(Build.BinariesDirectory)\host_protoc\Release
|
||||
msbuild $(Build.SourcesDirectory)\csharp\OnnxRuntime.CSharp.proj /p:Configuration=RelWithDebInfo /t:CreateWindowsAIPackage /p:OnnxRuntimeBuildDirectory=$(Build.BinariesDirectory) /p:OnnxRuntimeSourceDirectory=$(Build.SourcesDirectory) /p:TargetArchitecture=arm /p:ProtocDirectory=$(Build.BinariesDirectory)\host_protoc\Release
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\*.nupkg $(Build.ArtifactStagingDirectory)
|
||||
copy $(Build.BinariesDirectory)\RelWithDebInfo\RelWithDebInfo\*.snupkg $(Build.ArtifactStagingDirectory)
|
||||
workingDirectory: '$(Build.SourcesDirectory)\csharp'
|
||||
|
|
|
|||
|
|
@ -87,8 +87,6 @@ def parse_arguments():
|
|||
parser.add_argument("--packages_path", required=True, help="Nuget packages output directory.")
|
||||
parser.add_argument("--sources_path", required=True, help="OnnxRuntime source code root.")
|
||||
parser.add_argument("--commit_id", required=True, help="The last commit id included in this package.")
|
||||
parser.add_argument("--is_store_build", default=False, type=lambda x: x.lower() == 'true',
|
||||
help="Build for the Microsoft Store")
|
||||
parser.add_argument("--is_release_build", required=False, default=None, type=str,
|
||||
help="Flag indicating if the build is a release build. Accepted values: true/false.")
|
||||
parser.add_argument("--execution_provider", required=False, default='None', type=str,
|
||||
|
|
@ -252,7 +250,7 @@ def generate_files(list, args):
|
|||
is_windowsai_package = args.package_name == 'Microsoft.AI.MachineLearning'
|
||||
|
||||
includes_winml = is_windowsai_package
|
||||
includes_directml = (is_dml_package or is_windowsai_package) and not args.is_store_build and (
|
||||
includes_directml = (is_dml_package or is_windowsai_package) and (
|
||||
args.target_architecture == 'x64' or args.target_architecture == 'x86')
|
||||
|
||||
is_windows_build = is_windows()
|
||||
|
|
@ -296,9 +294,7 @@ def generate_files(list, args):
|
|||
else:
|
||||
runtimes_native_folder = 'native'
|
||||
|
||||
runtimes = '{}{}\\{}"'.format(runtimes_target,
|
||||
args.target_architecture,
|
||||
'lib\\uap10.0' if args.is_store_build else runtimes_native_folder)
|
||||
runtimes = '{}{}\\{}"'.format(runtimes_target, args.target_architecture, runtimes_native_folder)
|
||||
|
||||
# Process headers
|
||||
files_list.append('<file src=' + '"' + os.path.join(args.sources_path,
|
||||
|
|
@ -359,7 +355,7 @@ def generate_files(list, args):
|
|||
files_list.append('<file src=' + '"' + os.path.join(args.ort_build_path, args.build_config,
|
||||
'microsoft.ai.machinelearning.experimental.winmd') +
|
||||
'" target="winmds\\Microsoft.AI.MachineLearning.Experimental.winmd" />')
|
||||
if args.target_architecture == 'x64' and not args.is_store_build:
|
||||
if args.target_architecture == 'x64':
|
||||
interop_dll_path = 'Microsoft.AI.MachineLearning.Interop\\net5.0-windows10.0.17763.0'
|
||||
interop_dll = interop_dll_path + '\\Microsoft.AI.MachineLearning.Interop.dll'
|
||||
files_list.append('<file src=' + '"' + os.path.join(args.native_build_path, interop_dll) +
|
||||
|
|
@ -402,18 +398,15 @@ def generate_files(list, args):
|
|||
# Process microsoft.ai.machinelearning import lib, dll, and pdb
|
||||
files_list.append('<file src=' + '"' +
|
||||
os.path.join(args.native_build_path, 'microsoft.ai.machinelearning.lib') +
|
||||
runtimes_target + args.target_architecture + '\\' +
|
||||
('lib\\uap10.0' if args.is_store_build else '_native') +
|
||||
runtimes_target + args.target_architecture + '\\_native' +
|
||||
'\\Microsoft.AI.MachineLearning.lib" />')
|
||||
files_list.append('<file src=' + '"' + os.path.join(args.native_build_path,
|
||||
'microsoft.ai.machinelearning.dll') +
|
||||
runtimes_target + args.target_architecture + '\\' +
|
||||
('lib\\uap10.0' if args.is_store_build else '_native') +
|
||||
runtimes_target + args.target_architecture + '\\_native' +
|
||||
'\\Microsoft.AI.MachineLearning.dll" />')
|
||||
files_list.append('<file src=' + '"' + os.path.join(args.native_build_path,
|
||||
'microsoft.ai.machinelearning.pdb') +
|
||||
runtimes_target + args.target_architecture + '\\' +
|
||||
('lib\\uap10.0' if args.is_store_build else '_native') +
|
||||
runtimes_target + args.target_architecture + '\\_native' +
|
||||
'\\Microsoft.AI.MachineLearning.pdb" />')
|
||||
# Process execution providers which are built as shared libs
|
||||
if args.execution_provider == "tensorrt" and not is_ado_packaging_build:
|
||||
|
|
@ -500,14 +493,14 @@ def generate_files(list, args):
|
|||
windowsai_rules = 'Microsoft.AI.MachineLearning.Rules.Project.xml'
|
||||
windowsai_native_rules = os.path.join(args.sources_path, 'csharp', 'src', windowsai_src, windowsai_rules)
|
||||
windowsai_native_targets = os.path.join(args.sources_path, 'csharp', 'src', windowsai_src, windowsai_targets)
|
||||
build = 'build\\{}'.format('uap10.0' if args.is_store_build else 'native')
|
||||
build = 'build\\native'
|
||||
files_list.append('<file src=' + '"' + windowsai_native_props + '" target="' + build + '" />')
|
||||
# Process native targets
|
||||
files_list.append('<file src=' + '"' + windowsai_native_targets + '" target="' + build + '" />')
|
||||
# Process rules
|
||||
files_list.append('<file src=' + '"' + windowsai_native_rules + '" target="' + build + '" />')
|
||||
# Process .net5.0 targets
|
||||
if args.target_architecture == 'x64' and not args.is_store_build:
|
||||
if args.target_architecture == 'x64':
|
||||
interop_src = 'Microsoft.AI.MachineLearning.Interop'
|
||||
interop_targets = 'Microsoft.AI.MachineLearning.targets'
|
||||
windowsai_net50_targets = os.path.join(args.sources_path, 'csharp', 'src', interop_src, interop_targets)
|
||||
|
|
|
|||
Loading…
Reference in a new issue