219 lines
12 KiB
XML
219 lines
12 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<!-- ISA target:x64 + ARM64 -->
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<ItemGroup Label="ProjectConfigurations">
|
||
<ProjectConfiguration Include="Debug|x64">
|
||
<Configuration>Debug</Configuration>
|
||
<Platform>x64</Platform>
|
||
</ProjectConfiguration>
|
||
<ProjectConfiguration Include="Debug|ARM64">
|
||
<Configuration>Debug</Configuration>
|
||
<Platform>ARM64</Platform>
|
||
</ProjectConfiguration>
|
||
<ProjectConfiguration Include="Release|x64">
|
||
<Configuration>Release</Configuration>
|
||
<Platform>x64</Platform>
|
||
</ProjectConfiguration>
|
||
<ProjectConfiguration Include="Release|ARM64">
|
||
<Configuration>Release</Configuration>
|
||
<Platform>ARM64</Platform>
|
||
</ProjectConfiguration>
|
||
<ProjectConfiguration Include="PerformanceDebug|x64">
|
||
<Configuration>PerformanceDebug</Configuration>
|
||
<Platform>x64</Platform>
|
||
</ProjectConfiguration>
|
||
<ProjectConfiguration Include="PerformanceDebug|ARM64">
|
||
<Configuration>PerformanceDebug</Configuration>
|
||
<Platform>ARM64</Platform>
|
||
</ProjectConfiguration>
|
||
</ItemGroup>
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<!-- Global Property -->
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<PropertyGroup Label="Globals">
|
||
<VCProjectVersion>17.0</VCProjectVersion>
|
||
<Keyword>Win32Proj</Keyword>
|
||
<ProjectGuid>{20cbff26-6746-402e-992c-7b643e9423eb}</ProjectGuid>
|
||
<RootNamespace>NitloadC</RootNamespace>
|
||
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||
<ProjectName>Nitload.Native</ProjectName>
|
||
</PropertyGroup>
|
||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<!-- Configuration -->
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<!-- Debug(x64 + ARM64 共用) -->
|
||
<PropertyGroup Condition="'$(Configuration)'=='Debug'" Label="Configuration">
|
||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||
<UseDebugLibraries>true</UseDebugLibraries>
|
||
<CharacterSet>Unicode</CharacterSet>
|
||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||
<PlatformToolset>v143</PlatformToolset>
|
||
</PropertyGroup>
|
||
<!-- Release(x64 + ARM64 共用) -->
|
||
<PropertyGroup Condition="'$(Configuration)'=='Release'" Label="Configuration">
|
||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||
<UseDebugLibraries>false</UseDebugLibraries>
|
||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||
<CharacterSet>Unicode</CharacterSet>
|
||
<PlatformToolset>v143</PlatformToolset>
|
||
</PropertyGroup>
|
||
<!-- PerformanceDebug(x64 + ARM64 共用) -->
|
||
<PropertyGroup Condition="'$(Configuration)'=='PerformanceDebug'" Label="Configuration">
|
||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||
<UseDebugLibraries>false</UseDebugLibraries>
|
||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||
<CharacterSet>Unicode</CharacterSet>
|
||
<PlatformToolset>v143</PlatformToolset>
|
||
</PropertyGroup>
|
||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||
<ImportGroup Label="ExtensionSettings">
|
||
</ImportGroup>
|
||
<ImportGroup Label="Shared">
|
||
</ImportGroup>
|
||
<!-- PropertySheets(对所有 Configuration|Platform 生效) -->
|
||
<ImportGroup Label="PropertySheets">
|
||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||
</ImportGroup>
|
||
<PropertyGroup Label="UserMacros" />
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<!-- output folder: layered -->
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<PropertyGroup>
|
||
<!-- 把 ARM64 → arm64,x64 保持 x64 -->
|
||
<_ArchTag Condition="'$(Platform)'=='x64'">x64</_ArchTag>
|
||
<_ArchTag Condition="'$(Platform)'=='ARM64'">arm64</_ArchTag>
|
||
<!-- Keep the navigation project's artifact paths aligned with CMake and managed deployment. -->
|
||
<TargetName>Nitload.Native</TargetName>
|
||
<OutDir>$(NativeBuildDir)</OutDir>
|
||
<IntDir>$(SolutionRoot)obj\$(ProjectName)\$(Configuration)\$(Platform)\</IntDir>
|
||
</PropertyGroup>
|
||
<PropertyGroup Condition="'$(Configuration)'=='Debug'">
|
||
<RunCodeAnalysis>true</RunCodeAnalysis>
|
||
<EnableClangTidyCodeAnalysis>false</EnableClangTidyCodeAnalysis>
|
||
</PropertyGroup>
|
||
<PropertyGroup Condition="'$(Configuration)'=='Release' Or '$(Configuration)'=='PerformanceDebug'">
|
||
<GenerateManifest>false</GenerateManifest>
|
||
<RunCodeAnalysis>true</RunCodeAnalysis>
|
||
<EnableClangTidyCodeAnalysis>false</EnableClangTidyCodeAnalysis>
|
||
</PropertyGroup>
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<!-- Compile options: common to all configurations -->
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<ItemDefinitionGroup>
|
||
<ClCompile>
|
||
<WarningLevel>Level3</WarningLevel>
|
||
<SDLCheck>true</SDLCheck>
|
||
<ConformanceMode>true</ConformanceMode>
|
||
<LanguageStandard>Default</LanguageStandard>
|
||
<LanguageStandard_C>stdc11</LanguageStandard_C>
|
||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||
<AdditionalIncludeDirectories>$(ProjectDir)lib;$(ProjectDir)nif-head;$(ProjectDir)nif-template;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||
</ClCompile>
|
||
<Link>
|
||
<!-- DLL 应该用 Windows,不是 Console -->
|
||
<SubSystem>Windows</SubSystem>
|
||
<AdditionalDependencies>$(CoreLibraryDependencies);%(AdditionalDependencies)</AdditionalDependencies>
|
||
</Link>
|
||
</ItemDefinitionGroup>
|
||
<!-- Debug 特有 -->
|
||
<ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'">
|
||
<ClCompile>
|
||
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||
<InlineFunctionExpansion>Disabled</InlineFunctionExpansion>
|
||
<ExpandAttributedSource>true</ExpandAttributedSource>
|
||
<AssemblerOutput>All</AssemblerOutput>
|
||
<BrowseInformation>true</BrowseInformation>
|
||
</ClCompile>
|
||
<Link>
|
||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||
</Link>
|
||
<Bscmake>
|
||
<PreserveSbr>true</PreserveSbr>
|
||
</Bscmake>
|
||
</ItemDefinitionGroup>
|
||
<!-- Release + PerformanceDebug 共用(优化开启) -->
|
||
<ItemDefinitionGroup Condition="'$(Configuration)'=='Release' Or '$(Configuration)'=='PerformanceDebug'">
|
||
<ClCompile>
|
||
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||
<AssemblerOutput>All</AssemblerOutput>
|
||
<CompileAs>CompileAsC</CompileAs>
|
||
</ClCompile>
|
||
<Link>
|
||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||
<OptimizeReferences>true</OptimizeReferences>
|
||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||
<ShowProgress>LinkVerbose</ShowProgress>
|
||
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
|
||
</Link>
|
||
</ItemDefinitionGroup>
|
||
<!-- Release 独有(InlineFunctionExpansion) -->
|
||
<ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
|
||
<ClCompile>
|
||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||
</ClCompile>
|
||
</ItemDefinitionGroup>
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<!-- glfw static lib -->
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<ItemGroup Condition="'$(Platform)'=='x64'">
|
||
<Library Include="lib\glfw\glfw3.lib" />
|
||
<Library Include="lib\glfw\glfw3_mt.lib" />
|
||
</ItemGroup>
|
||
<ItemGroup Condition="'$(Platform)'=='ARM64'">
|
||
<Library Include="lib\glfw\glfw3.lib" />
|
||
<Library Include="lib\glfw\glfw3_mt.lib" />
|
||
</ItemGroup>
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<!-- source files -->
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<ItemGroup>
|
||
<ClCompile Include="nif-src\dllmain.c" />
|
||
<ClCompile Include="nif-src\m.bufop.x86.c" />
|
||
<ClCompile Include="nif-src\m.solve.x86.c" />
|
||
<ClCompile Include="nif-src\m.transpose.x86.c" />
|
||
<ClCompile Include="nif-src\mk.fma.x86.c" />
|
||
<ClCompile Include="nif-src\mk.p_scan.x86.c" />
|
||
<ClCompile Include="nif-src\s.factorial.x86.c" />
|
||
<ClCompile Include="nif-src\sk.fma.x86.c" />
|
||
<ClCompile Include="nif-src\s.hash.x86.c" />
|
||
<ClCompile Include="nif-src\load_intrinsic.x86.c" />
|
||
<ClCompile Include="nif-src\load_glfw.c" />
|
||
<ClCompile Include="nif-src\simdid.x86.c" />
|
||
<ClCompile Include="nif-src\simdid_compare.x86.c" />
|
||
<ClCompile Include="nif-src\thread.linux.c" />
|
||
<ClCompile Include="nif-src\thread.windows.c" />
|
||
<ClCompile Include="nif-src\vector.c" />
|
||
<ClCompile Include="nif-src\vector_dot.c" />
|
||
</ItemGroup>
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<!-- header files -->
|
||
<!-- ════════════════════════════════════════════════════════ -->
|
||
<ItemGroup>
|
||
<ClInclude Include="lib\glfw\glfw3.h" />
|
||
<ClInclude Include="lib\glfw\glfw3native.h" />
|
||
<ClInclude Include="lib\stbi\stb_image.h" />
|
||
<ClInclude Include="nif-head\glfw_function.h" />
|
||
<ClInclude Include="nif-head\nif_internal.h" />
|
||
<ClInclude Include="nif-head\nif_intrinsic.context.x86.h" />
|
||
<ClInclude Include="nif-head\nif_intrinsic.std.h" />
|
||
<ClInclude Include="nif-head\nif_intrinsic.h" />
|
||
<ClInclude Include="nif-head\nif_intrinsic.matkernel.h" />
|
||
<ClInclude Include="nif-head\nif_target.h" />
|
||
<ClInclude Include="nif-head\NitloadFrameWork.h" />
|
||
<ClInclude Include="nif-template\nif_template.fma.x86.h" />
|
||
</ItemGroup>
|
||
<ItemGroup>
|
||
<None Include="naming.md" />
|
||
<None Include="SIMDID.x86.md" />
|
||
</ItemGroup>
|
||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||
<ImportGroup Label="ExtensionTargets">
|
||
</ImportGroup>
|
||
</Project>
|