Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Windows on Arm support #2397

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions build/.vsconfig
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
"Microsoft.VisualStudio.Component.VC.CoreIde",
"Microsoft.VisualStudio.Component.Windows10SDK",
"Microsoft.VisualStudio.Component.VC.Tools.x86.x64",
"Microsoft.VisualStudio.Component.VC.Tools.ARM64",
"Microsoft.VisualStudio.Component.Graphics.Tools",
"Microsoft.VisualStudio.Component.VC.DiagnosticTools",
"Microsoft.VisualStudio.Component.Windows10SDK.19041",
Expand Down
4 changes: 4 additions & 0 deletions build/Stride.sln.DotSettings
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@ Distributed under the MIT license. See the LICENSE.md file in the project root f
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/EventHandlerPatternShort/@EntryValue">On$event$</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/PredefinedNamingRules/=PrivateInstanceFields/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/PredefinedNamingRules/=PrivateStaticFields/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/UserRules/=4a98fdf6_002D7d98_002D4f5a_002Dafeb_002Dea44ad98c70c/@EntryIndexedValue">&lt;Policy&gt;&lt;Descriptor Staticness="Instance" AccessRightKinds="Private" Description="Instance fields (private)"&gt;&lt;ElementKinds&gt;&lt;Kind Name="FIELD" /&gt;&lt;Kind Name="READONLY_FIELD" /&gt;&lt;/ElementKinds&gt;&lt;/Descriptor&gt;&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;&lt;/Policy&gt;</s:String>
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/UserRules/=f9fce829_002De6f4_002D4cb2_002D80f1_002D5497c44f51df/@EntryIndexedValue">&lt;Policy&gt;&lt;Descriptor Staticness="Static" AccessRightKinds="Private" Description="Static fields (private)"&gt;&lt;ElementKinds&gt;&lt;Kind Name="FIELD" /&gt;&lt;/ElementKinds&gt;&lt;/Descriptor&gt;&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;&lt;/Policy&gt;</s:String>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EFeature_002EServices_002ECodeCleanup_002EFileHeader_002EFileHeaderSettingsMigrate/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ECSharpAttributeForSingleLineMethodUpgrade/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ECSharpKeepExistingMigration/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ECSharpPlaceEmbeddedOnSameLineMigration/@EntryIndexedValue">True</s:Boolean>
Expand All @@ -32,6 +35,7 @@ Distributed under the MIT license. See the LICENSE.md file in the project root f
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002ECSharpPlaceAttributeOnSameLineMigration/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateBlankLinesAroundFieldToBlankLinesAroundProperty/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateThisQualifierSettings/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EPredefinedNamingRulesToUserRulesUpgrade/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/Environment/UnitTesting/ShadowCopy/@EntryValue">False</s:Boolean>
<s:Boolean x:Key="/Default/PatternsAndTemplates/Todo/TodoPatterns/=C060724E6815554E9061A8ED55D5A1C7/@KeyIndexDefined">True</s:Boolean>
<s:String x:Key="/Default/PatternsAndTemplates/Todo/TodoPatterns/=C060724E6815554E9061A8ED55D5A1C7/Color/@EntryValue">DarkOrange</s:String>
Expand Down
3 changes: 2 additions & 1 deletion deps/CppNet/build.bat
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
@echo off
setlocal
set CPPNET=%~dp0..\..\externals\CppNet
call "%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" x86
rem call "%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" x86
call "%ProgramFiles%\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" arm64

pushd %CPPNET%

Expand Down
70 changes: 69 additions & 1 deletion deps/FFmpeg/dotnet/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,23 @@ configure_windows_x64_shared() {
--prefix="${BASEDIR}/build/windows/x64"
}

configure_windows_arm64_shared() {
"${BASEDIR}/configure" \
--toolchain=msvc \
--arch=arm64 \
--enable-asm \
--enable-shared \
--enable-version3 \
--enable-w32threads \
--enable-yasm \
--disable-debug \
--disable-doc \
--disable-programs \
--disable-static \
--target-os=win64 \
--prefix="${BASEDIR}/build/windows/arm64"
}

configure_windows_x86_shared() {
"${BASEDIR}/configure" \
--toolchain=msvc \
Expand Down Expand Up @@ -99,6 +116,25 @@ configure_windows_x64_exe() {
--prefix="${BASEDIR}/build/windows/x64"
}

configure_windows_arm64_exe() {
"${BASEDIR}/configure" \
--toolchain=msvc \
--arch=arm64 \
--enable-asm \
--enable-static \
--enable-version3 \
--enable-w32threads \
--enable-yasm \
--disable-debug \
--disable-doc \
--disable-ffplay \
--disable-ffprobe \
--disable-ffserver \
--disable-shared \
--target-os=win64 \
--prefix="${BASEDIR}/build/windows/arm64"
}

install() {
make -j${NUMBER_OF_CORES} && make install
}
Expand All @@ -118,6 +154,21 @@ build_windows_x64_shared() {
popd
}

build_windows_arm64_shared() {
oot="${BASEDIR}/build/windows/arm64/oot/ffmpeg"
mkdir -p "$oot"
pushd "$oot"

# Configure ffmpeg (can be skipped if already done)
configure_windows_arm64_shared
# Make sure any previous build doesn't pollute the current one (can be skipped if configure didn't change since last time)
clean
# Build FFmpeg and copy binaries+include files into the installation folder (defined by --prefix in the configure command)
install

popd
}

build_windows_x86_shared() {
oot="${BASEDIR}/build/windows/x86/oot/ffmpeg"
mkdir -p "$oot"
Expand Down Expand Up @@ -148,6 +199,21 @@ build_windows_x64_exe() {
popd
}

build_windows_arm64_exe() {
oot="${BASEDIR}/build/windows/arm64/oot/ffmpeg"
mkdir -p "$oot"
pushd "$oot"

# Configure ffmpeg (can be skipped if already done)
configure_windows_arm64_exe
# Make sure any previous build doesn't pollute the current one (can be skipped if configure didn't change since last time)
clean
# Build FFmpeg and copy binaries+include files into the installation folder (defined by --prefix in the configure command)
install

popd
}

build_windows_x86_exe() {
oot="${BASEDIR}/build/windows/x86/oot/ffmpeg"
mkdir -p "$oot"
Expand All @@ -168,6 +234,8 @@ NUMBER_OF_CORES=$(nproc)

# Uncomment a line to run that configuration
#build_windows_x64_shared
build_windows_x86_shared
#build_windows_x86_shared
build_windows_arm64_shared
#build_windows_x64_exe
#build_windows_x86_exe
#build_windows_arm64_exe
40 changes: 40 additions & 0 deletions deps/Recast/Detour.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,10 @@
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|arm64">
<Configuration>Debug</Configuration>
<Platform>arm64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
Expand All @@ -17,6 +21,10 @@
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|arm64">
<Configuration>Release</Configuration>
<Platform>arm64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{18FEE2AD-04A0-0D84-ED5A-21D8D99B94D4}</ProjectGuid>
Expand Down Expand Up @@ -48,6 +56,16 @@
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Debug|arm64'">
<PlatformToolset>v140</PlatformToolset>
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Release|arm64'">
<PlatformToolset>v140</PlatformToolset>
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
Expand Down Expand Up @@ -82,6 +100,18 @@
<TargetName>Detour</TargetName>
<TargetExt>.lib</TargetExt>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|arm64'">
<OutDir>lib\arm64\</OutDir>
<IntDir>obj\$(Configuration)\Detour\</IntDir>
<TargetName>Detour</TargetName>
<TargetExt>.lib</TargetExt>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|arm64'">
<OutDir>lib\arm64\</OutDir>
<IntDir>obj\$(Configuration)\Detour\</IntDir>
<TargetName>Detour</TargetName>
<TargetExt>.lib</TargetExt>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>NotUsing</PrecompiledHeader>
Expand Down Expand Up @@ -132,6 +162,16 @@
<AdditionalIncludeDirectories>Detour\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|arm64'">
<ClCompile>
<AdditionalIncludeDirectories>Detour\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|arm64'">
<ClCompile>
<AdditionalIncludeDirectories>Detour\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="Detour\Include\DetourAlloc.h" />
<ClInclude Include="Detour\Include\DetourAssert.h" />
Expand Down
40 changes: 40 additions & 0 deletions deps/Recast/Recast.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,10 @@
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|arm64">
<Configuration>Debug</Configuration>
<Platform>arm64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
Expand All @@ -17,6 +21,10 @@
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|arm64">
<Configuration>Release</Configuration>
<Platform>arm64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{A7A881CE-934A-ACA4-7C05-C0F8684633F5}</ProjectGuid>
Expand Down Expand Up @@ -48,6 +56,16 @@
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Debug|arm64'">
<PlatformToolset>v140</PlatformToolset>
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Release|arm64'">
<PlatformToolset>v140</PlatformToolset>
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>NotSet</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
Expand Down Expand Up @@ -82,6 +100,18 @@
<TargetExt>.lib</TargetExt>
<IntDir>obj\$(Platform)\Recast\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|arm64'">
<OutDir>lib\arm64\</OutDir>
<TargetName>Recast</TargetName>
<TargetExt>.lib</TargetExt>
<IntDir>obj\$(Platform)\Recast\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|arm64'">
<OutDir>lib\arm64\</OutDir>
<TargetName>Recast</TargetName>
<TargetExt>.lib</TargetExt>
<IntDir>obj\$(Platform)\Recast\</IntDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>NotUsing</PrecompiledHeader>
Expand Down Expand Up @@ -132,6 +162,16 @@
<AdditionalIncludeDirectories>Recast\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|arm64'">
<ClCompile>
<AdditionalIncludeDirectories>Recast\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|arm64'">
<ClCompile>
<AdditionalIncludeDirectories>Recast\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="Recast\Include\Recast.h" />
<ClInclude Include="Recast\Include\RecastAlloc.h" />
Expand Down
6 changes: 6 additions & 0 deletions deps/Recast/build.bat
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,12 @@ cd "%output%"
msbuild "%recast_source%\Detour.vcxproj" /p:Platform="x86";Configuration="Release"
msbuild "%recast_source%\Recast.vcxproj" /p:Platform="x86";Configuration="Release"

REM build arm64 projects
call "%ProgramFiles%\Microsoft Visual Studio\2022\Community\VC\Auxillary\vcvarsall.bat" arm64
cd "%output%"
msbuild "%recast_source%\Detour.vcxproj" /p:Platform="arm64";Configuration="Release"
msbuild "%recast_source%\Recast.vcxproj" /p:Platform="arm64";Configuration="Release"

REM copy include files (some additional include files are needed for post-processing)
rmdir /Q /S "%output%include"
mkdir "%output%include\"
Expand Down
3 changes: 3 additions & 0 deletions deps/VHACD/build.bat
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,18 @@ pushd ..\..\externals\BulletSharpPInvoke\src\VHACD_Lib\VHACD
REM Compile vhacd
msbuild VHACD.vcxproj /p:Configuration=Release;Platform=x64
msbuild VHACD.vcxproj /p:Configuration=Release;Platform=Win32
msbuild VHACD.vcxproj /p:Configuration=Release;Platform=arm64
if %ERRORLEVEL% neq 0 GOTO :error_popd
popd

REM Create folders
mkdir win-x86
mkdir win-x64
mkdir win-arm64

copy ..\..\externals\BulletSharpPInvoke\src\VHACD_Lib\VHACD\Release\*.dll win-x86
copy ..\..\externals\BulletSharpPInvoke\src\VHACD_Lib\VHACD\x64\Release\*.dll win-x64
copy ..\..\externals\BulletSharpPInvoke\src\VHACD_Lib\VHACD\arm64\Release\*.dll win-arm64

GOTO :end
:error_popd
Expand Down
6 changes: 3 additions & 3 deletions deps/freetype/build.bat
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
call "%ProgramFiles(x86)%\Microsoft Visual Studio 14.0\vc\vcvarsall.bat" x86
msbuild ..\..\externals\freetype\builds\windows\vc2013\freetype.vcxproj /Property:Configuration=Release;StridePlatform=Windows;Platform=Win32
msbuild ..\..\externals\freetype\builds\windows\vc2013\freetype.vcxproj /Property:Configuration=Release;StridePlatform=Windows;Platform=x64
call "%ProgramFiles%\Microsoft Visual Studio 14.0\vc\vcvarsall.bat" arm64
REM msbuild ..\..\externals\freetype\builds\windows\vc2013\freetype.vcxproj /Property:Configuration=Release;StridePlatform=Windows;Platform=Win32
msbuild ..\..\externals\freetype\builds\windows\vc2013\freetype.vcxproj /Property:Configuration=Release;StridePlatform=Windows;Platform=arm64

xcopy /Y /S ..\..\externals\freetype\builds\windows\vc2013\bin\Windows\Release\*.dll Windows\
xcopy /Y /S ..\..\externals\freetype\builds\windows\vc2013\bin\Windows\Release\*.pdb Windows\
4 changes: 2 additions & 2 deletions deps/msdfgen/build.bat
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ set "LIB=%LODEPNG%;%LIB%"

set UseEnv=true

call "%ProgramFiles(x86)%\Microsoft Visual Studio 14.0\vc\vcvarsall.bat" x86
msbuild /tv:14.0 /t:Build /verbosity:quiet /clp:ErrorsOnly /fl /flp:logfile=BuildErrors.log;ErrorsOnly "/p:Configuration=Release;Platform=x86" %MSDFGEN%\Msdfgen.sln
call "%ProgramFiles%\Microsoft Visual Studio 14.0\vc\vcvarsall.bat" arm86
msbuild /tv:14.0 /t:Build /verbosity:quiet /clp:ErrorsOnly /fl /flp:logfile=BuildErrors.log;ErrorsOnly "/p:Configuration=Release;Platform=arm86" %MSDFGEN%\Msdfgen.sln

:CopyOutput
xcopy %MSDFGEN%\msdfgen.exe . /Y
Expand Down
2 changes: 1 addition & 1 deletion samples/Tests/Stride.Samples.Tests.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<PropertyGroup>
<ManagePackageVersionsCentrally>false</ManagePackageVersionsCentrally>
<TargetFramework>$(StrideEditorTargetFramework)</TargetFramework>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<RuntimeIdentifier>win-arm64</RuntimeIdentifier>
<StrideAssemblyProcessor>true</StrideAssemblyProcessor>
<StrideAssemblyProcessorOptions>--auto-module-initializer</StrideAssemblyProcessorOptions>
<StrideSkipAutoPack>false</StrideSkipAutoPack>
Expand Down
4 changes: 2 additions & 2 deletions sources/Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
</ItemGroup>
<!-- Other dependencies -->
<ItemGroup>
<PackageVersion Include="Microsoft.AspNet.WebApi.Client" Version="5.2.7" />
<PackageVersion Include="Microsoft.AspNet.WebApi.Client" Version="6.0.0" />
<PackageVersion Include="Microsoft.Build" Version="17.0.0" />
<PackageVersion Include="Microsoft.Build.Locator" Version="1.6.10" />
<PackageVersion Include="Microsoft.Build.Utilities.Core" Version="17.0.0" />
Expand Down Expand Up @@ -133,4 +133,4 @@
<PackageVersion Include="Microsoft.CodeAnalysis.Analyzers" Version="3.3.4" PrivateAssets="all" />
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="4.7.0" PrivateAssets="all" />
</ItemGroup>
</Project>
</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -10,16 +10,21 @@
- 2022: Bld = 33130
See also https://learn.microsoft.com/en-us/cpp/windows/redistributing-visual-cpp-files?#install-the-redistributable-packages
-->
<_StrideVisualCRuntime2019 Include="Visual C++ Redistributable for Visual Studio 2019 x86">
<!--<_StrideVisualCRuntime2019 Include="Visual C++ Redistributable for Visual Studio 2019 x86">
<Version>$([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\14.0\VC\Runtimes\X86', 'Bld', null, RegistryView.Registry32))</Version>
<ExpectedVersion>27820</ExpectedVersion>
<DownloadUrl>https://aka.ms/vs/17/release/vc_redist.x86.exe</DownloadUrl>
</_StrideVisualCRuntime2019>-->
<_StrideVisualCRuntime2019 Include="Visual C++ Redistributable for Visual Studio 2019 arm64">
<Version>$([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\14.0\VC\Runtimes\arm64', 'Bld', null, RegistryView.Registry64))</Version>
<ExpectedVersion>33810</ExpectedVersion>
<DownloadUrl>https://aka.ms/vs/17/release/vc_redist.arm64.exe</DownloadUrl>
</_StrideVisualCRuntime2019>
<_StrideVisualCRuntime2019 Include="Visual C++ Redistributable for Visual Studio 2019 x64">
<!--<_StrideVisualCRuntime2019 Include="Visual C++ Redistributable for Visual Studio 2019 x64">
<Version>$([MSBuild]::GetRegistryValueFromView('HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\14.0\VC\Runtimes\X64', 'Bld', null, RegistryView.Registry64))</Version>
<ExpectedVersion>27820</ExpectedVersion>
<DownloadUrl>https://aka.ms/vs/17/release/vc_redist.x64.exe</DownloadUrl>
</_StrideVisualCRuntime2019>
</_StrideVisualCRuntime2019>-->

<_StrideVisualCRuntime2019NotInstalled Include="@(_StrideVisualCRuntime2019)" Condition="'%(_StrideVisualCRuntime2019.Version)' == '' Or $([System.Int32]::Parse('%(Version)').CompareTo($([System.Int32]::Parse('%(_StrideVisualCRuntime2019.ExpectedVersion)')))) &lt; 0" />
</ItemGroup>
Expand Down
Loading