Skip to content

Commit 72d113c

Browse files
committed
Add ARM64EC build
1 parent 11c8b22 commit 72d113c

7 files changed

Lines changed: 158 additions & 12 deletions

File tree

Source/Demo/Demo.vcxproj

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@
55
<Configuration>Debug</Configuration>
66
<Platform>ARM64</Platform>
77
</ProjectConfiguration>
8+
<ProjectConfiguration Include="Debug|ARM64EC">
9+
<Configuration>Debug</Configuration>
10+
<Platform>ARM64EC</Platform>
11+
</ProjectConfiguration>
812
<ProjectConfiguration Include="Debug|Win32">
913
<Configuration>Debug</Configuration>
1014
<Platform>Win32</Platform>
@@ -13,6 +17,10 @@
1317
<Configuration>Release</Configuration>
1418
<Platform>ARM64</Platform>
1519
</ProjectConfiguration>
20+
<ProjectConfiguration Include="Release|ARM64EC">
21+
<Configuration>Release</Configuration>
22+
<Platform>ARM64EC</Platform>
23+
</ProjectConfiguration>
1624
<ProjectConfiguration Include="Release|Win32">
1725
<Configuration>Release</Configuration>
1826
<Platform>Win32</Platform>
@@ -46,6 +54,9 @@
4654
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
4755
<ConfigurationType>Application</ConfigurationType>
4856
</PropertyGroup>
57+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64EC'" Label="Configuration">
58+
<ConfigurationType>Application</ConfigurationType>
59+
</PropertyGroup>
4960
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
5061
<ConfigurationType>Application</ConfigurationType>
5162
<WholeProgramOptimization>true</WholeProgramOptimization>
@@ -54,6 +65,10 @@
5465
<ConfigurationType>Application</ConfigurationType>
5566
<WholeProgramOptimization>true</WholeProgramOptimization>
5667
</PropertyGroup>
68+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64EC'" Label="Configuration">
69+
<ConfigurationType>Application</ConfigurationType>
70+
<WholeProgramOptimization>true</WholeProgramOptimization>
71+
</PropertyGroup>
5772
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
5873
<ImportGroup Label="ExtensionSettings">
5974
<Import Project="$(VCTargetsPath)\BuildCustomizations\marmasm.props" />
@@ -73,12 +88,18 @@
7388
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
7489
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
7590
</ImportGroup>
91+
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64EC'" Label="PropertySheets">
92+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
93+
</ImportGroup>
7694
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
7795
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
7896
</ImportGroup>
7997
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
8098
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
8199
</ImportGroup>
100+
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64EC'" Label="PropertySheets">
101+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
102+
</ImportGroup>
82103
<PropertyGroup Label="UserMacros" />
83104
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
84105
<ClCompile>
@@ -120,6 +141,15 @@
120141
<AdditionalDependencies>$(OutDir)KNSoft.SlimDetours.lib;$(OutDir)Microsoft.Detours.lib;%(AdditionalDependencies)</AdditionalDependencies>
121142
</Link>
122143
</ItemDefinitionGroup>
144+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64EC'">
145+
<ClCompile>
146+
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
147+
</ClCompile>
148+
<Link>
149+
<SubSystem>Console</SubSystem>
150+
<AdditionalDependencies>$(OutDir)KNSoft.SlimDetours.lib;$(OutDir)Microsoft.Detours.lib;%(AdditionalDependencies)</AdditionalDependencies>
151+
</Link>
152+
</ItemDefinitionGroup>
123153
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
124154
<ClCompile>
125155
<FunctionLevelLinking>true</FunctionLevelLinking>
@@ -146,6 +176,19 @@
146176
<AdditionalDependencies>$(OutDir)KNSoft.SlimDetours.lib;$(OutDir)Microsoft.Detours.lib;%(AdditionalDependencies)</AdditionalDependencies>
147177
</Link>
148178
</ItemDefinitionGroup>
179+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64EC'">
180+
<ClCompile>
181+
<FunctionLevelLinking>true</FunctionLevelLinking>
182+
<IntrinsicFunctions>true</IntrinsicFunctions>
183+
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
184+
</ClCompile>
185+
<Link>
186+
<SubSystem>Console</SubSystem>
187+
<EnableCOMDATFolding>true</EnableCOMDATFolding>
188+
<OptimizeReferences>true</OptimizeReferences>
189+
<AdditionalDependencies>$(OutDir)KNSoft.SlimDetours.lib;$(OutDir)Microsoft.Detours.lib;%(AdditionalDependencies)</AdditionalDependencies>
190+
</Link>
191+
</ItemDefinitionGroup>
149192
<ItemGroup>
150193
<ClCompile Include="DeadLock.c" />
151194
<ClCompile Include="DelayHook.c" />
@@ -176,6 +219,11 @@
176219
<None Include="Instruction.x86.asm" />
177220
<MARMASM Include="Instruction.ARM64.asm" />
178221
</ItemGroup>
222+
<ItemGroup Condition="'$(Platform)'=='ARM64EC'">
223+
<None Include="Instruction.x64.asm" />
224+
<None Include="Instruction.x86.asm" />
225+
<None Include="Instruction.ARM64.asm" />
226+
</ItemGroup>
179227
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
180228
<ImportGroup Label="ExtensionTargets">
181229
<Import Project="$(VCTargetsPath)\BuildCustomizations\marmasm.targets" />

Source/Demo/Instruction.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ ULONG_PTR
1313
_cdecl
1414
FN_INSTRUCTION(VOID);
1515

16-
#if defined(_M_X64)
16+
#if defined(_M_X64) && !defined(_M_ARM64EC)
1717

1818
EXTERN_C FN_INSTRUCTION SimpleInstructionFunc1X64;
1919

@@ -33,7 +33,7 @@ Hooked_InstructionFunc(VOID)
3333
}
3434

3535
static FN_INSTRUCTION* g_apfnInstructionFunctions[] = {
36-
#if defined(_M_X64)
36+
#if defined(_M_X64) && !defined(_M_ARM64EC)
3737
&SimpleInstructionFunc1X64,
3838
#elif defined(_M_IX86)
3939
&SimpleInstructionFunc1X86,

Source/KNSoft.SlimDetours.nuspec

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@
2121
<file src="KNSoft.SlimDetours\*.h" target="build\Include\KNSoft\SlimDetours\" />
2222
<file src="Microsoft.Detours\src\*.h" target="build\Include\KNSoft\SlimDetours\" />
2323

24-
<file src="OutDir\**\KNSoft.SlimDetours.lib" target="build\Lib\" />
25-
<file src="OutDir\**\KNSoft.SlimDetours.pdb" target="build\Lib\" />
26-
<file src="OutDir\**\Microsoft.Detours.lib" target="build\Lib\" />
27-
<file src="OutDir\**\Microsoft.Detours.pdb" target="build\Lib\" />
24+
<file src="OutDir\**\*.lib" exclude="OutDir\x86\**" target="build\Lib\" />
25+
<file src="OutDir\**\*.pdb" exclude="OutDir\x86\**;OutDir\**\Demo.pdb" target="build\Lib\" />
26+
<file src="OutDir\x86\**\*.lib" target="build\Lib\Win32\" />
27+
<file src="OutDir\x86\**\*.pdb" exclude="OutDir\x86\**\Demo.pdb" target="build\Lib\Win32\" />
2828
</files>
2929
</package>

Source/KNSoft.SlimDetours.sln

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,45 +16,59 @@ EndProject
1616
Global
1717
GlobalSection(SolutionConfigurationPlatforms) = preSolution
1818
Debug|ARM64 = Debug|ARM64
19+
Debug|ARM64EC = Debug|ARM64EC
1920
Debug|x64 = Debug|x64
2021
Debug|x86 = Debug|x86
2122
Release|ARM64 = Release|ARM64
23+
Release|ARM64EC = Release|ARM64EC
2224
Release|x64 = Release|x64
2325
Release|x86 = Release|x86
2426
EndGlobalSection
2527
GlobalSection(ProjectConfigurationPlatforms) = postSolution
2628
{1C85580B-F884-4347-A67E-5083AB36AE74}.Debug|ARM64.ActiveCfg = Debug|ARM64
2729
{1C85580B-F884-4347-A67E-5083AB36AE74}.Debug|ARM64.Build.0 = Debug|ARM64
30+
{1C85580B-F884-4347-A67E-5083AB36AE74}.Debug|ARM64EC.ActiveCfg = Debug|ARM64EC
31+
{1C85580B-F884-4347-A67E-5083AB36AE74}.Debug|ARM64EC.Build.0 = Debug|ARM64EC
2832
{1C85580B-F884-4347-A67E-5083AB36AE74}.Debug|x64.ActiveCfg = Debug|x64
2933
{1C85580B-F884-4347-A67E-5083AB36AE74}.Debug|x64.Build.0 = Debug|x64
3034
{1C85580B-F884-4347-A67E-5083AB36AE74}.Debug|x86.ActiveCfg = Debug|Win32
3135
{1C85580B-F884-4347-A67E-5083AB36AE74}.Debug|x86.Build.0 = Debug|Win32
3236
{1C85580B-F884-4347-A67E-5083AB36AE74}.Release|ARM64.ActiveCfg = Release|ARM64
3337
{1C85580B-F884-4347-A67E-5083AB36AE74}.Release|ARM64.Build.0 = Release|ARM64
38+
{1C85580B-F884-4347-A67E-5083AB36AE74}.Release|ARM64EC.ActiveCfg = Release|ARM64EC
39+
{1C85580B-F884-4347-A67E-5083AB36AE74}.Release|ARM64EC.Build.0 = Release|ARM64EC
3440
{1C85580B-F884-4347-A67E-5083AB36AE74}.Release|x64.ActiveCfg = Release|x64
3541
{1C85580B-F884-4347-A67E-5083AB36AE74}.Release|x64.Build.0 = Release|x64
3642
{1C85580B-F884-4347-A67E-5083AB36AE74}.Release|x86.ActiveCfg = Release|Win32
3743
{1C85580B-F884-4347-A67E-5083AB36AE74}.Release|x86.Build.0 = Release|Win32
3844
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Debug|ARM64.ActiveCfg = Debug|ARM64
3945
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Debug|ARM64.Build.0 = Debug|ARM64
46+
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Debug|ARM64EC.ActiveCfg = Debug|ARM64EC
47+
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Debug|ARM64EC.Build.0 = Debug|ARM64EC
4048
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Debug|x64.ActiveCfg = Debug|x64
4149
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Debug|x64.Build.0 = Debug|x64
4250
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Debug|x86.ActiveCfg = Debug|Win32
4351
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Debug|x86.Build.0 = Debug|Win32
4452
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Release|ARM64.ActiveCfg = Release|ARM64
4553
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Release|ARM64.Build.0 = Release|ARM64
54+
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Release|ARM64EC.ActiveCfg = Release|ARM64EC
55+
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Release|ARM64EC.Build.0 = Release|ARM64EC
4656
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Release|x64.ActiveCfg = Release|x64
4757
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Release|x64.Build.0 = Release|x64
4858
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Release|x86.ActiveCfg = Release|Win32
4959
{02C76D1A-A438-4A41-BEB0-A7DCBC09AAD4}.Release|x86.Build.0 = Release|Win32
5060
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Debug|ARM64.ActiveCfg = Debug|ARM64
5161
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Debug|ARM64.Build.0 = Debug|ARM64
62+
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Debug|ARM64EC.ActiveCfg = Debug|ARM64EC
63+
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Debug|ARM64EC.Build.0 = Debug|ARM64EC
5264
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Debug|x64.ActiveCfg = Debug|x64
5365
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Debug|x64.Build.0 = Debug|x64
5466
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Debug|x86.ActiveCfg = Debug|Win32
5567
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Debug|x86.Build.0 = Debug|Win32
5668
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Release|ARM64.ActiveCfg = Release|ARM64
5769
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Release|ARM64.Build.0 = Release|ARM64
70+
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Release|ARM64EC.ActiveCfg = Release|ARM64EC
71+
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Release|ARM64EC.Build.0 = Release|ARM64EC
5872
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Release|x64.ActiveCfg = Release|x64
5973
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Release|x64.Build.0 = Release|x64
6074
{C2706F4B-8A0D-48BA-966F-239380A3C893}.Release|x86.ActiveCfg = Release|Win32

Source/KNSoft.SlimDetours.targets

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,20 @@
11
<?xml version="1.0"?>
22
<Project InitialTargets="SlimDetoursCheckPlatform" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<Target Name="SlimDetoursCheckPlatform">
4+
<Error Text="KNSoft.SlimDetours supports Win32, x64, ARM64, and ARM64EC platforms, but current configured platform is $(Platform)." Condition="'$(Platform)' != 'Win32' and '$(Platform)' != 'x64' and '$(Platform)' != 'ARM64' and '$(Platform)' != 'ARM64EC'" />
5+
</Target>
36
<PropertyGroup>
47
<IncludePath>$(MSBuildThisFileDirectory)Include;$(IncludePath)</IncludePath>
5-
<LibraryPath>$(MSBuildThisFileDirectory)Lib\$(PlatformTarget);$(LibraryPath)</LibraryPath>
68
</PropertyGroup>
7-
<Target Name="SlimDetoursCheckPlatform">
8-
<Error Text="KNSoft.SlimDetours supports x86, x64 and ARM64, but current configured platform target is $(PlatformTarget)." Condition="'$(PlatformTarget)'!='x86' and '$(PlatformTarget)'!='x64' and '$(PlatformTarget)'!='ARM64'" />
9-
</Target>
10-
<ItemDefinitionGroup Condition="'$(Configuration)'=='Release' or '$(Configuration)'=='Debug'">
9+
<PropertyGroup Condition="$(Configuration.Contains(`Debug`))">
10+
<LibraryPath>$(MSBuildThisFileDirectory)Lib\$(Platform)\Debug;$(LibraryPath)</LibraryPath>
11+
</PropertyGroup>
12+
<PropertyGroup Condition="$(Configuration.Contains(`Release`))">
13+
<LibraryPath>$(MSBuildThisFileDirectory)Lib\$(Platform)\Release;$(LibraryPath)</LibraryPath>
14+
</PropertyGroup>
15+
<ItemDefinitionGroup>
1116
<Link>
12-
<AdditionalDependencies>ntdll.lib;$(MSBuildThisFileDirectory)Lib\$(PlatformTarget)\$(Configuration)\KNSoft.SlimDetours.lib;%(AdditionalDependencies)</AdditionalDependencies>
17+
<AdditionalDependencies>ntdll.lib;%(AdditionalDependencies)</AdditionalDependencies>
1318
</Link>
1419
</ItemDefinitionGroup>
1520
</Project>

Source/KNSoft.SlimDetours/KNSoft.SlimDetours.vcxproj

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@
55
<Configuration>Debug</Configuration>
66
<Platform>ARM64</Platform>
77
</ProjectConfiguration>
8+
<ProjectConfiguration Include="Debug|ARM64EC">
9+
<Configuration>Debug</Configuration>
10+
<Platform>ARM64EC</Platform>
11+
</ProjectConfiguration>
812
<ProjectConfiguration Include="Debug|Win32">
913
<Configuration>Debug</Configuration>
1014
<Platform>Win32</Platform>
@@ -13,6 +17,10 @@
1317
<Configuration>Release</Configuration>
1418
<Platform>ARM64</Platform>
1519
</ProjectConfiguration>
20+
<ProjectConfiguration Include="Release|ARM64EC">
21+
<Configuration>Release</Configuration>
22+
<Platform>ARM64EC</Platform>
23+
</ProjectConfiguration>
1624
<ProjectConfiguration Include="Release|Win32">
1725
<Configuration>Release</Configuration>
1826
<Platform>Win32</Platform>
@@ -61,12 +69,18 @@
6169
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
6270
<ConfigurationType>StaticLibrary</ConfigurationType>
6371
</PropertyGroup>
72+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64EC'" Label="Configuration">
73+
<ConfigurationType>StaticLibrary</ConfigurationType>
74+
</PropertyGroup>
6475
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
6576
<ConfigurationType>StaticLibrary</ConfigurationType>
6677
</PropertyGroup>
6778
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
6879
<ConfigurationType>StaticLibrary</ConfigurationType>
6980
</PropertyGroup>
81+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64EC'" Label="Configuration">
82+
<ConfigurationType>StaticLibrary</ConfigurationType>
83+
</PropertyGroup>
7084
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
7185
<ImportGroup Label="ExtensionSettings">
7286
</ImportGroup>
@@ -84,14 +98,21 @@
8498
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
8599
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
86100
</ImportGroup>
101+
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64EC'" Label="PropertySheets">
102+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
103+
</ImportGroup>
87104
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
88105
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
89106
</ImportGroup>
90107
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
91108
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
92109
</ImportGroup>
110+
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64EC'" Label="PropertySheets">
111+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
112+
</ImportGroup>
93113
<PropertyGroup Label="UserMacros" />
94114
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" />
115+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64EC'" />
95116
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" />
96117
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
97118
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
@@ -133,6 +154,14 @@
133154
<SubSystem>Console</SubSystem>
134155
</Link>
135156
</ItemDefinitionGroup>
157+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64EC'">
158+
<ClCompile>
159+
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
160+
</ClCompile>
161+
<Link>
162+
<SubSystem>Console</SubSystem>
163+
</Link>
164+
</ItemDefinitionGroup>
136165
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
137166
<ClCompile>
138167
<FunctionLevelLinking>true</FunctionLevelLinking>
@@ -157,6 +186,18 @@
157186
<OptimizeReferences>true</OptimizeReferences>
158187
</Link>
159188
</ItemDefinitionGroup>
189+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64EC'">
190+
<ClCompile>
191+
<FunctionLevelLinking>true</FunctionLevelLinking>
192+
<IntrinsicFunctions>true</IntrinsicFunctions>
193+
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
194+
</ClCompile>
195+
<Link>
196+
<SubSystem>Console</SubSystem>
197+
<EnableCOMDATFolding>true</EnableCOMDATFolding>
198+
<OptimizeReferences>true</OptimizeReferences>
199+
</Link>
200+
</ItemDefinitionGroup>
160201
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
161202
<ImportGroup Label="ExtensionTargets">
162203
<Import Project="..\packages\KNSoft.NDK.1.2.38-beta\build\KNSoft.NDK.targets" Condition="Exists('..\packages\KNSoft.NDK.1.2.38-beta\build\KNSoft.NDK.targets')" />

0 commit comments

Comments
 (0)