Skip to content

Commit db683e9

Browse files
committed
added:windows arm64 build support
1 parent 51b75dc commit db683e9

File tree

10 files changed

+443
-42
lines changed

10 files changed

+443
-42
lines changed

.github/workflows/msbuild.yml

Lines changed: 33 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
fail-fast: false
1616
matrix:
1717
configuration: [Debug ,Release]
18-
platform: [x86 ,x64]
18+
platform: [x86 ,x64, ARM64]
1919

2020
runs-on: windows-latest # 最新的 Windows 环境
2121

@@ -59,7 +59,21 @@ jobs:
5959
echo "XENGINE_INCLUDE=${{ github.workspace }}/XEngine_Windows" | Out-File -FilePath $env:GITHUB_ENV -Append
6060
echo "XENGINE_LIB32=${{ github.workspace }}/XEngine_Windows/XEngine_Windows" | Out-File -FilePath $env:GITHUB_ENV -Append
6161
shell: pwsh
62-
62+
- name: Set up Dependency ARM64 Environment
63+
if: matrix.platform == 'ARM64'
64+
run: |
65+
$response = Invoke-RestMethod -Uri "https://api.github.com/repos/libxengine/libxengine/releases/latest" -Headers @{"Accept"="application/vnd.github.v3+json"}
66+
$latest_tag = $response.tag_name
67+
Write-Host "Latest Tag: $latest_tag"
68+
69+
$url = "https://github.com/libxengine/libxengine/releases/download/$latest_tag/XEngine_Windows_Arm64.zip"
70+
Invoke-WebRequest -Uri $url -OutFile "XEngine_Windows_Arm64.zip"
71+
Expand-Archive -Path ./XEngine_Windows_Arm64.zip -DestinationPath ./XEngine_Windows -Force
72+
73+
echo "XENGINE_INCLUDE=${{ github.workspace }}/XEngine_Windows" | Out-File -FilePath $env:GITHUB_ENV -Append
74+
echo "XENGINE_LIBARM64=${{ github.workspace }}/XEngine_Windows/XEngine_Windows" | Out-File -FilePath $env:GITHUB_ENV -Append
75+
shell: pwsh
76+
6377
- name: Setup MSBuild
6478
uses: microsoft/setup-msbuild@v2
6579

@@ -85,19 +99,34 @@ jobs:
8599
cd XEngine_Release
86100
./VSCopy_x64.bat
87101
shell: pwsh
88-
102+
- name: Conditional Step for ARM64 Release
103+
if: matrix.configuration == 'Release' && matrix.platform == 'ARM64'
104+
run: |
105+
cp -r XEngine_Source/ARM64/Release/*.dll XEngine_Release/
106+
cp -r XEngine_Source/ARM64/Release/*.exe XEngine_Release/
107+
cp -r XEngine_Source/VSCopy_Arm64.bat XEngine_Release/
108+
cd XEngine_Release
109+
./VSCopy_Arm64.bat
110+
shell: pwsh
111+
89112
- name: Upload folder as artifact with x86
90113
if: matrix.configuration == 'Release' && matrix.platform == 'x64'
91114
uses: actions/upload-artifact@v4
92115
with:
93116
name: XEngine_ProxyServiceApp-x86_32-Windows
94117
path: XEngine_Release/
95118
retention-days: 1
96-
97119
- name: Upload folder as artifact with x64
98120
if: matrix.configuration == 'Release' && matrix.platform == 'x64'
99121
uses: actions/upload-artifact@v4
100122
with:
101123
name: XEngine_ProxyServiceApp-x86_64-Windows
102124
path: XEngine_Release/
125+
retention-days: 1
126+
- name: Upload folder as artifact with ARM64
127+
if: matrix.configuration == 'Release' && matrix.platform == 'ARM64'
128+
uses: actions/upload-artifact@v4
129+
with:
130+
name: XEngine_ProxyServiceApp-ARM64-Windows
131+
path: XEngine_Release/
103132
retention-days: 1

XEngine_Source/VSCopy_Arm64.bat

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
copy /y "%XEngine_LibArm64%\XEngine_BaseLib\XEngine_BaseLib.dll" "./"
2+
copy /y "%XEngine_LibArm64%\XEngine_BaseLib\XEngine_BaseSafe.dll" "./"
3+
copy /y "%XEngine_LibArm64%\XEngine_BaseLib\XEngine_Algorithm.dll" "./"
4+
copy /y "%XEngine_LibArm64%\XEngine_Core\XEngine_Core.dll" "./"
5+
copy /y "%XEngine_LibArm64%\XEngine_Core\XEngine_Cryption.dll" "./"
6+
copy /y "%XEngine_LibArm64%\XEngine_Core\XEngine_ManagePool.dll" "./"
7+
8+
copy /y "%XEngine_LibArm64%\XEngine_Client\XClient_Socket.dll" "./"
9+
copy /y "%XEngine_LibArm64%\XEngine_Client\XClient_APIHelp.dll" "./"
10+
11+
copy /y "%XEngine_LibArm64%\XEngine_NetHelp\NetHelp_APIHelp.dll" "./"
12+
copy /y "%XEngine_LibArm64%\XEngine_NetHelp\NetHelp_APIAddr.dll" "./"
13+
copy /y "%XEngine_LibArm64%\XEngine_NetHelp\NetHelp_XSocket.dll" "./"
14+
15+
copy /y "%XEngine_LibArm64%\XEngine_HelpComponents\HelpComponents_XLog.dll" "./"
16+
copy /y "%XEngine_LibArm64%\XEngine_HelpComponents\HelpComponents_Packets.dll" "./"
17+
copy /y "%XEngine_LibArm64%\XEngine_RfcComponents\RfcComponents_ProxyProtocol.dll" "./"
18+
19+
copy /y "%XEngine_LibArm64%\XEngine_SystemSdk\XEngine_SystemApi.dll" "./"
20+
copy /y "%XEngine_LibArm64%\XEngine_SystemSdk\XEngine_SystemConfig.dll" "./"

XEngine_Source/XEngine.sln

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,56 +40,82 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_InfoReport", "XEngi
4040
EndProject
4141
Global
4242
GlobalSection(SolutionConfigurationPlatforms) = preSolution
43+
Debug|ARM64 = Debug|ARM64
4344
Debug|x64 = Debug|x64
4445
Debug|x86 = Debug|x86
46+
Release|ARM64 = Release|ARM64
4547
Release|x64 = Release|x64
4648
Release|x86 = Release|x86
4749
EndGlobalSection
4850
GlobalSection(ProjectConfigurationPlatforms) = postSolution
51+
{B94018F9-541B-4BE4-A2A8-AD49DD35357B}.Debug|ARM64.ActiveCfg = Debug|ARM64
52+
{B94018F9-541B-4BE4-A2A8-AD49DD35357B}.Debug|ARM64.Build.0 = Debug|ARM64
4953
{B94018F9-541B-4BE4-A2A8-AD49DD35357B}.Debug|x64.ActiveCfg = Debug|x64
5054
{B94018F9-541B-4BE4-A2A8-AD49DD35357B}.Debug|x64.Build.0 = Debug|x64
5155
{B94018F9-541B-4BE4-A2A8-AD49DD35357B}.Debug|x86.ActiveCfg = Debug|Win32
5256
{B94018F9-541B-4BE4-A2A8-AD49DD35357B}.Debug|x86.Build.0 = Debug|Win32
57+
{B94018F9-541B-4BE4-A2A8-AD49DD35357B}.Release|ARM64.ActiveCfg = Release|ARM64
58+
{B94018F9-541B-4BE4-A2A8-AD49DD35357B}.Release|ARM64.Build.0 = Release|ARM64
5359
{B94018F9-541B-4BE4-A2A8-AD49DD35357B}.Release|x64.ActiveCfg = Release|x64
5460
{B94018F9-541B-4BE4-A2A8-AD49DD35357B}.Release|x64.Build.0 = Release|x64
5561
{B94018F9-541B-4BE4-A2A8-AD49DD35357B}.Release|x86.ActiveCfg = Release|Win32
5662
{B94018F9-541B-4BE4-A2A8-AD49DD35357B}.Release|x86.Build.0 = Release|Win32
63+
{F54F152C-594F-4465-A44E-2DB915B39760}.Debug|ARM64.ActiveCfg = Debug|ARM64
64+
{F54F152C-594F-4465-A44E-2DB915B39760}.Debug|ARM64.Build.0 = Debug|ARM64
5765
{F54F152C-594F-4465-A44E-2DB915B39760}.Debug|x64.ActiveCfg = Debug|x64
5866
{F54F152C-594F-4465-A44E-2DB915B39760}.Debug|x64.Build.0 = Debug|x64
5967
{F54F152C-594F-4465-A44E-2DB915B39760}.Debug|x86.ActiveCfg = Debug|Win32
6068
{F54F152C-594F-4465-A44E-2DB915B39760}.Debug|x86.Build.0 = Debug|Win32
69+
{F54F152C-594F-4465-A44E-2DB915B39760}.Release|ARM64.ActiveCfg = Release|ARM64
70+
{F54F152C-594F-4465-A44E-2DB915B39760}.Release|ARM64.Build.0 = Release|ARM64
6171
{F54F152C-594F-4465-A44E-2DB915B39760}.Release|x64.ActiveCfg = Release|x64
6272
{F54F152C-594F-4465-A44E-2DB915B39760}.Release|x64.Build.0 = Release|x64
6373
{F54F152C-594F-4465-A44E-2DB915B39760}.Release|x86.ActiveCfg = Release|Win32
6474
{F54F152C-594F-4465-A44E-2DB915B39760}.Release|x86.Build.0 = Release|Win32
75+
{237AF017-9AD2-44D8-A6C4-ECDEF7674FF2}.Debug|ARM64.ActiveCfg = Debug|ARM64
76+
{237AF017-9AD2-44D8-A6C4-ECDEF7674FF2}.Debug|ARM64.Build.0 = Debug|ARM64
6577
{237AF017-9AD2-44D8-A6C4-ECDEF7674FF2}.Debug|x64.ActiveCfg = Debug|x64
6678
{237AF017-9AD2-44D8-A6C4-ECDEF7674FF2}.Debug|x64.Build.0 = Debug|x64
6779
{237AF017-9AD2-44D8-A6C4-ECDEF7674FF2}.Debug|x86.ActiveCfg = Debug|Win32
6880
{237AF017-9AD2-44D8-A6C4-ECDEF7674FF2}.Debug|x86.Build.0 = Debug|Win32
81+
{237AF017-9AD2-44D8-A6C4-ECDEF7674FF2}.Release|ARM64.ActiveCfg = Release|ARM64
82+
{237AF017-9AD2-44D8-A6C4-ECDEF7674FF2}.Release|ARM64.Build.0 = Release|ARM64
6983
{237AF017-9AD2-44D8-A6C4-ECDEF7674FF2}.Release|x64.ActiveCfg = Release|x64
7084
{237AF017-9AD2-44D8-A6C4-ECDEF7674FF2}.Release|x64.Build.0 = Release|x64
7185
{237AF017-9AD2-44D8-A6C4-ECDEF7674FF2}.Release|x86.ActiveCfg = Release|Win32
7286
{237AF017-9AD2-44D8-A6C4-ECDEF7674FF2}.Release|x86.Build.0 = Release|Win32
87+
{9512A610-7197-4522-9AEF-1486619C99FE}.Debug|ARM64.ActiveCfg = Debug|ARM64
88+
{9512A610-7197-4522-9AEF-1486619C99FE}.Debug|ARM64.Build.0 = Debug|ARM64
7389
{9512A610-7197-4522-9AEF-1486619C99FE}.Debug|x64.ActiveCfg = Debug|x64
7490
{9512A610-7197-4522-9AEF-1486619C99FE}.Debug|x64.Build.0 = Debug|x64
7591
{9512A610-7197-4522-9AEF-1486619C99FE}.Debug|x86.ActiveCfg = Debug|Win32
7692
{9512A610-7197-4522-9AEF-1486619C99FE}.Debug|x86.Build.0 = Debug|Win32
93+
{9512A610-7197-4522-9AEF-1486619C99FE}.Release|ARM64.ActiveCfg = Release|ARM64
94+
{9512A610-7197-4522-9AEF-1486619C99FE}.Release|ARM64.Build.0 = Release|ARM64
7795
{9512A610-7197-4522-9AEF-1486619C99FE}.Release|x64.ActiveCfg = Release|x64
7896
{9512A610-7197-4522-9AEF-1486619C99FE}.Release|x64.Build.0 = Release|x64
7997
{9512A610-7197-4522-9AEF-1486619C99FE}.Release|x86.ActiveCfg = Release|Win32
8098
{9512A610-7197-4522-9AEF-1486619C99FE}.Release|x86.Build.0 = Release|Win32
99+
{F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Debug|ARM64.ActiveCfg = Debug|ARM64
100+
{F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Debug|ARM64.Build.0 = Debug|ARM64
81101
{F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Debug|x64.ActiveCfg = Debug|x64
82102
{F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Debug|x64.Build.0 = Debug|x64
83103
{F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Debug|x86.ActiveCfg = Debug|Win32
84104
{F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Debug|x86.Build.0 = Debug|Win32
105+
{F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Release|ARM64.ActiveCfg = Release|ARM64
106+
{F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Release|ARM64.Build.0 = Release|ARM64
85107
{F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Release|x64.ActiveCfg = Release|x64
86108
{F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Release|x64.Build.0 = Release|x64
87109
{F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Release|x86.ActiveCfg = Release|Win32
88110
{F1736B3F-03A2-4FC7-B045-A12BA8D724FB}.Release|x86.Build.0 = Release|Win32
111+
{F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Debug|ARM64.ActiveCfg = Debug|ARM64
112+
{F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Debug|ARM64.Build.0 = Debug|ARM64
89113
{F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Debug|x64.ActiveCfg = Debug|x64
90114
{F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Debug|x64.Build.0 = Debug|x64
91115
{F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Debug|x86.ActiveCfg = Debug|Win32
92116
{F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Debug|x86.Build.0 = Debug|Win32
117+
{F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Release|ARM64.ActiveCfg = Release|ARM64
118+
{F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Release|ARM64.Build.0 = Release|ARM64
93119
{F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Release|x64.ActiveCfg = Release|x64
94120
{F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Release|x64.Build.0 = Release|x64
95121
{F6520D2C-BB8E-45BB-964B-F5D6A4318A89}.Release|x86.ActiveCfg = Release|Win32

XEngine_Source/XEngine_ModuleConfigure/XEngine_ModuleConfigure.vcxproj

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,18 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
33
<ItemGroup Label="ProjectConfigurations">
4+
<ProjectConfiguration Include="Debug|ARM64">
5+
<Configuration>Debug</Configuration>
6+
<Platform>ARM64</Platform>
7+
</ProjectConfiguration>
48
<ProjectConfiguration Include="Debug|Win32">
59
<Configuration>Debug</Configuration>
610
<Platform>Win32</Platform>
711
</ProjectConfiguration>
12+
<ProjectConfiguration Include="Release|ARM64">
13+
<Configuration>Release</Configuration>
14+
<Platform>ARM64</Platform>
15+
</ProjectConfiguration>
816
<ProjectConfiguration Include="Release|Win32">
917
<Configuration>Release</Configuration>
1018
<Platform>Win32</Platform>
@@ -45,13 +53,26 @@
4553
<PlatformToolset>v143</PlatformToolset>
4654
<CharacterSet>Unicode</CharacterSet>
4755
</PropertyGroup>
56+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
57+
<ConfigurationType>DynamicLibrary</ConfigurationType>
58+
<UseDebugLibraries>true</UseDebugLibraries>
59+
<PlatformToolset>v143</PlatformToolset>
60+
<CharacterSet>Unicode</CharacterSet>
61+
</PropertyGroup>
4862
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
4963
<ConfigurationType>DynamicLibrary</ConfigurationType>
5064
<UseDebugLibraries>false</UseDebugLibraries>
5165
<PlatformToolset>v143</PlatformToolset>
5266
<WholeProgramOptimization>true</WholeProgramOptimization>
5367
<CharacterSet>Unicode</CharacterSet>
5468
</PropertyGroup>
69+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
70+
<ConfigurationType>DynamicLibrary</ConfigurationType>
71+
<UseDebugLibraries>false</UseDebugLibraries>
72+
<PlatformToolset>v143</PlatformToolset>
73+
<WholeProgramOptimization>true</WholeProgramOptimization>
74+
<CharacterSet>Unicode</CharacterSet>
75+
</PropertyGroup>
5576
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
5677
<ImportGroup Label="ExtensionSettings">
5778
</ImportGroup>
@@ -66,9 +87,15 @@
6687
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
6788
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
6889
</ImportGroup>
90+
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
91+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
92+
</ImportGroup>
6993
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
7094
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
7195
</ImportGroup>
96+
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
97+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
98+
</ImportGroup>
7299
<PropertyGroup Label="UserMacros" />
73100
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
74101
<LinkIncremental>true</LinkIncremental>
@@ -85,11 +112,21 @@
85112
<IncludePath>$(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath)</IncludePath>
86113
<LibraryPath>$(XEngine_Lib64);$(LibraryPath)</LibraryPath>
87114
</PropertyGroup>
115+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
116+
<LinkIncremental>true</LinkIncremental>
117+
<IncludePath>$(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath)</IncludePath>
118+
<LibraryPath>$(XEngine_LibArm64);$(LibraryPath)</LibraryPath>
119+
</PropertyGroup>
88120
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
89121
<LinkIncremental>false</LinkIncremental>
90122
<IncludePath>$(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath)</IncludePath>
91123
<LibraryPath>$(XEngine_Lib64);$(LibraryPath)</LibraryPath>
92124
</PropertyGroup>
125+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
126+
<LinkIncremental>false</LinkIncremental>
127+
<IncludePath>$(XEngine_Include);../XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath)</IncludePath>
128+
<LibraryPath>$(XEngine_LibArm64);$(LibraryPath)</LibraryPath>
129+
</PropertyGroup>
93130
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
94131
<ClCompile>
95132
<WarningLevel>Level3</WarningLevel>
@@ -152,6 +189,24 @@
152189
<ModuleDefinitionFile>XEngine_ModuleConfigure.def</ModuleDefinitionFile>
153190
</Link>
154191
</ItemDefinitionGroup>
192+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
193+
<ClCompile>
194+
<WarningLevel>Level3</WarningLevel>
195+
<SDLCheck>true</SDLCheck>
196+
<PreprocessorDefinitions>_DEBUG;XENGINEMODULECONFIGURE_EXPORTS;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
197+
<ConformanceMode>true</ConformanceMode>
198+
<PrecompiledHeader>Use</PrecompiledHeader>
199+
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
200+
<LanguageStandard>stdcpp20</LanguageStandard>
201+
<LanguageStandard_C>stdc17</LanguageStandard_C>
202+
</ClCompile>
203+
<Link>
204+
<SubSystem>Windows</SubSystem>
205+
<GenerateDebugInformation>true</GenerateDebugInformation>
206+
<EnableUAC>false</EnableUAC>
207+
<ModuleDefinitionFile>XEngine_ModuleConfigure.def</ModuleDefinitionFile>
208+
</Link>
209+
</ItemDefinitionGroup>
155210
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
156211
<ClCompile>
157212
<WarningLevel>Level3</WarningLevel>
@@ -177,6 +232,31 @@
177232
<ModuleDefinitionFile>XEngine_ModuleConfigure.def</ModuleDefinitionFile>
178233
</Link>
179234
</ItemDefinitionGroup>
235+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
236+
<ClCompile>
237+
<WarningLevel>Level3</WarningLevel>
238+
<FunctionLevelLinking>true</FunctionLevelLinking>
239+
<IntrinsicFunctions>true</IntrinsicFunctions>
240+
<SDLCheck>true</SDLCheck>
241+
<PreprocessorDefinitions>NDEBUG;XENGINEMODULECONFIGURE_EXPORTS;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
242+
<ConformanceMode>true</ConformanceMode>
243+
<PrecompiledHeader>Use</PrecompiledHeader>
244+
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
245+
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
246+
<DisableSpecificWarnings>4819</DisableSpecificWarnings>
247+
<LanguageStandard>stdcpp20</LanguageStandard>
248+
<LanguageStandard_C>stdc17</LanguageStandard_C>
249+
<AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions>
250+
</ClCompile>
251+
<Link>
252+
<SubSystem>Windows</SubSystem>
253+
<EnableCOMDATFolding>true</EnableCOMDATFolding>
254+
<OptimizeReferences>true</OptimizeReferences>
255+
<GenerateDebugInformation>true</GenerateDebugInformation>
256+
<EnableUAC>false</EnableUAC>
257+
<ModuleDefinitionFile>XEngine_ModuleConfigure.def</ModuleDefinitionFile>
258+
</Link>
259+
</ItemDefinitionGroup>
180260
<ItemGroup>
181261
<ClInclude Include="framework.h" />
182262
<ClInclude Include="ModuleConfigure_Json\ModuleConfigure_Json.h" />
@@ -190,8 +270,10 @@
190270
<ClCompile Include="pch.cpp">
191271
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
192272
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
273+
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">Create</PrecompiledHeader>
193274
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
194275
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
276+
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">Create</PrecompiledHeader>
195277
</ClCompile>
196278
</ItemGroup>
197279
<ItemGroup>

XEngine_Source/XEngine_ModuleConfigure/pch.h

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -40,16 +40,20 @@ extern XLONG Config_dwErrorCode;
4040

4141
#ifdef _MSC_BUILD
4242
#ifdef _DEBUG
43-
#ifdef _WIN64
44-
#pragma comment(lib,"../x64/Debug/jsoncpp")
45-
#else
46-
#pragma comment(lib,"../Debug/jsoncpp")
43+
#ifdef _M_X64
44+
#pragma comment(lib,"../x64/Debug/jsoncpp.lib")
45+
#elif _M_ARM64
46+
#pragma comment(lib,"../ARM64/Debug/jsoncpp.lib")
47+
#elif _M_IX86
48+
#pragma comment(lib,"../Debug/jsoncpp.lib")
4749
#endif
4850
#else
49-
#ifdef _WIN64
50-
#pragma comment(lib,"../x64/Release/jsoncpp")
51-
#else
52-
#pragma comment(lib,"../Release/jsoncpp")
51+
#ifdef _M_X64
52+
#pragma comment(lib,"../x64/Release/jsoncpp.lib")
53+
#elif _M_ARM64
54+
#pragma comment(lib,"../ARM64/Release/jsoncpp.lib")
55+
#elif _M_IX86
56+
#pragma comment(lib,"../Release/jsoncpp.lib")
5357
#endif
5458
#endif
5559
#endif

0 commit comments

Comments
 (0)