/ src / modules / FileLocksmith / FileLocksmithLibInterop / FileLocksmithLibInterop.vcxproj
FileLocksmithLibInterop.vcxproj
  1  <?xml version="1.0" encoding="utf-8"?>
  2  <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  3    <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
  4    <Import Project="$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.240111.5\build\native\Microsoft.Windows.CppWinRT.props" Condition="Exists('$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.240111.5\build\native\Microsoft.Windows.CppWinRT.props')" />
  5    <ItemGroup Label="ProjectConfigurations">
  6      <ProjectConfiguration Include="Debug|ARM64">
  7        <Configuration>Debug</Configuration>
  8        <Platform>ARM64</Platform>
  9      </ProjectConfiguration>
 10      <ProjectConfiguration Include="Release|ARM64">
 11        <Configuration>Release</Configuration>
 12        <Platform>ARM64</Platform>
 13      </ProjectConfiguration>
 14      <ProjectConfiguration Include="Debug|x64">
 15        <Configuration>Debug</Configuration>
 16        <Platform>x64</Platform>
 17      </ProjectConfiguration>
 18      <ProjectConfiguration Include="Release|x64">
 19        <Configuration>Release</Configuration>
 20        <Platform>x64</Platform>
 21      </ProjectConfiguration>
 22    </ItemGroup>
 23    <PropertyGroup Label="Globals">
 24      <VCProjectVersion>16.0</VCProjectVersion>
 25      <Keyword>Win32Proj</Keyword>
 26      <ProjectGuid>{c604b37e-9d0e-4484-8778-e8b31b0e1b3a}</ProjectGuid>
 27      <ProjectName>PowerToys.FileLocksmithLib.Interop</ProjectName>
 28      <RootNamespace>PowerToys.FileLocksmithLib.Interop</RootNamespace>
 29      <TargetFramework>net8.0-windows10.0.22621.0</TargetFramework>
 30      <OutDir>$(RepoRoot)$(Platform)\$(Configuration)\WinUI3Apps\</OutDir>
 31      <TargetName>PowerToys.FileLocksmithLib.Interop</TargetName>
 32    </PropertyGroup>
 33    <PropertyGroup Label="Configuration">
 34      <ConfigurationType>DynamicLibrary</ConfigurationType>
 35      
 36      <CharacterSet>Unicode</CharacterSet>
 37      <GenerateManifest>false</GenerateManifest>
 38    </PropertyGroup>
 39    <ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'">
 40      <ClCompile>
 41        <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 42        <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
 43        <UseDebugLibraries>true</UseDebugLibraries>
 44        <LinkIncremental>true</LinkIncremental>
 45      </ClCompile>
 46    </ItemDefinitionGroup>
 47    <ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
 48      <ClCompile>
 49        <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 50        <FunctionLevelLinking>true</FunctionLevelLinking>
 51        <IntrinsicFunctions>true</IntrinsicFunctions>
 52        <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
 53        <UseDebugLibraries>false</UseDebugLibraries>
 54        <WholeProgramOptimization>true</WholeProgramOptimization>
 55        <LinkIncremental>false</LinkIncremental>
 56      </ClCompile>
 57      <Link>
 58        <EnableCOMDATFolding>true</EnableCOMDATFolding>
 59        <OptimizeReferences>true</OptimizeReferences>
 60      </Link>
 61    </ItemDefinitionGroup>
 62    <ItemDefinitionGroup>
 63      <ClCompile>
 64        <WarningLevel>Level3</WarningLevel>
 65        <SDLCheck>true</SDLCheck>
 66        <PreprocessorDefinitions>FILELOCKSMITHLIBINTEROP_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 67        <ConformanceMode>true</ConformanceMode>
 68        <AdditionalOptions>%(AdditionalOptions) /bigobj /Zc:twoPhase-</AdditionalOptions>
 69        <AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
 70      </ClCompile>
 71      <Link>
 72        <SubSystem>Windows</SubSystem>
 73        <GenerateDebugInformation>true</GenerateDebugInformation>
 74        <EnableUAC>false</EnableUAC>
 75        <ModuleDefinitionFile>PowerToys.FileLocksmithLibInterop.def</ModuleDefinitionFile>
 76      </Link>
 77    </ItemDefinitionGroup>
 78    <PropertyGroup>
 79      <CopyCppRuntimeToOutputDir>true</CopyCppRuntimeToOutputDir>
 80    </PropertyGroup>
 81    <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
 82    <ImportGroup Label="ExtensionSettings">
 83    </ImportGroup>
 84    <ImportGroup Label="Shared">
 85    </ImportGroup>
 86    <ImportGroup Label="PropertySheets">
 87      <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
 88    </ImportGroup>
 89    <PropertyGroup Label="UserMacros" />
 90    <ItemGroup>
 91      <ClCompile Include="FileLocksmith.cpp" />
 92      <ClCompile Include="NativeMethods.cpp">
 93        <DependentUpon>NativeMethods.idl</DependentUpon>
 94      </ClCompile>
 95      <ClCompile Include="NtdllBase.cpp" />
 96      <ClCompile Include="NtdllExtensions.cpp" />
 97      <ClCompile Include="pch.cpp">
 98        <PrecompiledHeader Condition="'$(UsePrecompiledHeaders)' != 'false'">Create</PrecompiledHeader>
 99      </ClCompile>
100      <ClCompile Include="ProcessResult.cpp">
101        <DependentUpon>ProcessResult.idl</DependentUpon>
102      </ClCompile>
103      <ClCompile Include="$(GeneratedFilesDir)module.g.cpp" />
104    </ItemGroup>
105    <ItemGroup>
106      <ClInclude Include="FileLocksmith.h" />
107      <ClInclude Include="NativeMethods.h">
108        <DependentUpon>NativeMethods.idl</DependentUpon>
109      </ClInclude>
110      <ClInclude Include="NtdllBase.h" />
111      <ClInclude Include="NtdllExtensions.h" />
112      <ClInclude Include="pch.h" />
113      <ClInclude Include="ProcessResult.h">
114        <DependentUpon>ProcessResult.idl</DependentUpon>
115      </ClInclude>
116      <ClInclude Include="resource.h" />
117    </ItemGroup>
118    <ItemGroup>
119      <ProjectReference Include="$(RepoRoot)src\common\interop\PowerToys.Interop.vcxproj">
120        <Project>{f055103b-f80b-4d0c-bf48-057c55620033}</Project>
121      </ProjectReference>
122    </ItemGroup>
123    <ItemGroup>
124      <ResourceCompile Include="FileLocksmithLibInterop.rc" />
125    </ItemGroup>
126    <ItemGroup>
127      <None Include="packages.config" />
128      <None Include="PowerToys.Interop.def" />
129    </ItemGroup>
130    <ItemGroup>
131      <Midl Include="NativeMethods.idl" />
132      <Midl Include="ProcessResult.idl" />
133    </ItemGroup>
134    <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
135    <ImportGroup Label="ExtensionTargets">
136      <Import Project="$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.240111.5\build\native\Microsoft.Windows.CppWinRT.targets" Condition="Exists('$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.240111.5\build\native\Microsoft.Windows.CppWinRT.targets')" />
137    </ImportGroup>
138    <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
139      <PropertyGroup>
140        <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
141      </PropertyGroup>
142      <Error Condition="!Exists('$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.240111.5\build\native\Microsoft.Windows.CppWinRT.props')" Text="$([System.String]::Format('$(ErrorText)', '$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.240111.5\build\native\Microsoft.Windows.CppWinRT.props'))" />
143      <Error Condition="!Exists('$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.240111.5\build\native\Microsoft.Windows.CppWinRT.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.240111.5\build\native\Microsoft.Windows.CppWinRT.targets'))" />
144    </Target>
145  </Project>