/
githubmirror
/
PowerToys
Обзор
Документация
Войти
/
githubmirror
/
PowerToys
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/common/CalculatorEngineCommon/CalculatorEngineCommon.vcxproj
190 строк
10 KB
Clint Rutkas
Fix full rebuild: upgrade CalculatorEngineCommon to C++20 coroutines (#48790)
23 июн 2026, 02:16
Не верифицирован
23 июн 2026, 02:16
106c970
Код
Авторство
О чём код?
<?xml version="1.0" encoding="utf-8"?> <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> <Import Project="$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.250303.1\build\native\Microsoft.Windows.CppWinRT.props" Condition="Exists('$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.250303.1\build\native\Microsoft.Windows.CppWinRT.props')" /> <PropertyGroup Label="Globals"> <CppWinRTRootNamespaceAutoMerge>true</CppWinRTRootNamespaceAutoMerge> <CppWinRTGenerateWindowsMetadata>true</CppWinRTGenerateWindowsMetadata> <ProjectGuid>{2cf78cf7-8feb-4be1-9591-55fa25b48fc6}</ProjectGuid> <ProjectName>CalculatorEngineCommon</ProjectName> <RootNamespace>CalculatorEngineCommon</RootNamespace> <AppxPackage>false</AppxPackage> </PropertyGroup> <!-- BEGIN common.build.pre.props --> <PropertyGroup Label="Configuration"> <EnableHybridCRT>true</EnableHybridCRT> <UseCrtSDKReferenceStaticWarning Condition="'$(EnableHybridCRT)'=='true'">false</UseCrtSDKReferenceStaticWarning> </PropertyGroup> <!-- END common.build.pre.props --> <!-- BEGIN cppwinrt.build.pre.props --> <PropertyGroup Label="Globals"> <CppWinRTEnabled>true</CppWinRTEnabled> <CppWinRTOptimized>true</CppWinRTOptimized> <DefaultLanguage>en-US</DefaultLanguage> <MinimumVisualStudioVersion>17.0</MinimumVisualStudioVersion> <ApplicationTypeRevision>10.0</ApplicationTypeRevision> </PropertyGroup> <PropertyGroup> <MinimalCoreWin>true</MinimalCoreWin> <AppContainerApplication>true</AppContainerApplication> <WindowsStoreApp>true</WindowsStoreApp> <ApplicationType>Windows Store</ApplicationType> <UseCrtSDKReference Condition="'$(EnableHybridCRT)'=='true'">false</UseCrtSDKReference> <!-- The SDK reference breaks the Hybrid CRT --> </PropertyGroup> <PropertyGroup> <!-- We have to use the Desktop platform for Hybrid CRT to work. --> <_VC_Target_Library_Platform>Desktop</_VC_Target_Library_Platform> <_NoWinAPIFamilyApp>true</_NoWinAPIFamilyApp> </PropertyGroup> <!-- END cppwinrt.build.pre.props --> <PropertyGroup Label="Configuration"> <ConfigurationType>DynamicLibrary</ConfigurationType> <CharacterSet>Unicode</CharacterSet> <GenerateManifest>false</GenerateManifest> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)'=='Debug'" Label="Configuration"> <UseDebugLibraries>true</UseDebugLibraries> <LinkIncremental>true</LinkIncremental> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)'=='Release'" Label="Configuration"> <UseDebugLibraries>false</UseDebugLibraries> <WholeProgramOptimization>true</WholeProgramOptimization> <LinkIncremental>false</LinkIncremental> </PropertyGroup> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> <ImportGroup Label="ExtensionSettings"> </ImportGroup> <ImportGroup Label="Shared"> </ImportGroup> <ImportGroup Label="PropertySheets"> <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> </ImportGroup> <ImportGroup Label="PropertySheets"> <Import Project="PropertySheet.props" /> </ImportGroup> <PropertyGroup> <TargetName>CalculatorEngineCommon</TargetName> <OutDir>$(RepoRoot)$(Platform)\$(Configuration)\</OutDir> </PropertyGroup> <ItemDefinitionGroup> <ClCompile> <PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile> <WarningLevel>Level4</WarningLevel> <AdditionalOptions>%(AdditionalOptions) /bigobj</AdditionalOptions> <PreprocessorDefinitions>_WINRT_DLL;WINRT_LEAN_AND_MEAN;%(PreprocessorDefinitions)</PreprocessorDefinitions> <AdditionalIncludeDirectories>../../..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories> </ClCompile> <Link> <SubSystem>Console</SubSystem> <GenerateWindowsMetadata>false</GenerateWindowsMetadata> <ModuleDefinitionFile>CalculatorEngineCommon.def</ModuleDefinitionFile> <AdditionalDependencies>Shell32.lib;user32.lib;%(AdditionalDependencies)</AdditionalDependencies> </Link> </ItemDefinitionGroup> <ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'"> <ClCompile> <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> </ClCompile> </ItemDefinitionGroup> <ItemDefinitionGroup Condition="'$(Configuration)'=='Release'"> <ClCompile> <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> </ClCompile> <Link> <EnableCOMDATFolding>true</EnableCOMDATFolding> <OptimizeReferences>true</OptimizeReferences> </Link> </ItemDefinitionGroup> <ItemGroup> <ProjectReference Include="..\version\version.vcxproj"> <Project>{cc6e41ac-8174-4e8a-8d22-85dd7f4851df}</Project> </ProjectReference> </ItemGroup> <ItemGroup> <ClInclude Include="ExprtkEvaluator.h" /> <ClInclude Include="pch.h" /> <ClInclude Include="exprtk.hpp" /> <ClInclude Include="Calculator.h"> <DependentUpon>Calculator.idl</DependentUpon> </ClInclude> <ClInclude Include="resource.h" /> </ItemGroup> <ItemGroup> <ClCompile Include="ExprtkEvaluator.cpp"> <PrecompiledHeader>NotUsing</PrecompiledHeader> </ClCompile> <ClCompile Include="pch.cpp"> <PrecompiledHeader>Create</PrecompiledHeader> </ClCompile> <ClCompile Include="Calculator.cpp"> <DependentUpon>Calculator.idl</DependentUpon> </ClCompile> <ClCompile Include="$(GeneratedFilesDir)module.g.cpp" /> </ItemGroup> <ItemGroup> <Midl Include="Calculator.idl" /> </ItemGroup> <ItemGroup> <None Include="packages.config" /> <None Include="CalculatorEngineCommon.def" /> </ItemGroup> <ItemGroup> <None Include="PropertySheet.props" /> </ItemGroup> <ItemGroup> <ResourceCompile Include="CalculatorEngineCommon.rc" /> </ItemGroup> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <Import Project="$(RepoRoot)deps\spdlog.props" /> <ImportGroup Label="ExtensionTargets"> <Import Project="$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.250303.1\build\native\Microsoft.Windows.CppWinRT.targets" Condition="Exists('$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.250303.1\build\native\Microsoft.Windows.CppWinRT.targets')" /> </ImportGroup> <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> <PropertyGroup> <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> </PropertyGroup> <Error Condition="!Exists('$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.250303.1\build\native\Microsoft.Windows.CppWinRT.props')" Text="$([System.String]::Format('$(ErrorText)', '$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.250303.1\build\native\Microsoft.Windows.CppWinRT.props'))" /> <Error Condition="!Exists('$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.250303.1\build\native\Microsoft.Windows.CppWinRT.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(RepoRoot)packages\Microsoft.Windows.CppWinRT.2.0.250303.1\build\native\Microsoft.Windows.CppWinRT.targets'))" /> </Target> <!-- BEGIN common.build.post.props --> <!-- The Hybrid CRT model statically links the runtime and STL and dynamically links the UCRT instead of the VC++ CRT. The UCRT ships with Windows. WinAppSDK asserts that this is "supported according to the CRT maintainer." This must come before Microsoft.Cpp.targets because it manipulates ClCompile.RuntimeLibrary. --> <ItemDefinitionGroup Condition="'$(EnableHybridCRT)'=='true' and '$(Configuration)'=='Debug'"> <ClCompile> <!-- We use MultiThreadedDebug, rather than MultiThreadedDebugDLL, to avoid DLL dependencies on VCRUNTIME140d.dll and MSVCP140d.dll. --> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <LanguageStandard>stdcpp20</LanguageStandard> </ClCompile> <Link> <!-- Link statically against the runtime and STL, but link dynamically against the CRT by ignoring the static CRT lib and instead linking against the Universal CRT DLL import library. This "hybrid" linking mechanism is supported according to the CRT maintainer. Dynamic linking against the CRT makes the binaries a bit smaller than they would otherwise be if the CRT, runtime, and STL were all statically linked in. --> <IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries);libucrtd.lib</IgnoreSpecificDefaultLibraries> <AdditionalOptions>%(AdditionalOptions) /defaultlib:ucrtd.lib</AdditionalOptions> </Link> </ItemDefinitionGroup> <ItemDefinitionGroup Condition="'$(EnableHybridCRT)'=='true' and ('$(Configuration)'=='Release' or '$(Configuration)'=='AuditMode')"> <ClCompile> <!-- We use MultiThreaded, rather than MultiThreadedDLL, to avoid DLL dependencies on VCRUNTIME140.dll and MSVCP140.dll. --> <RuntimeLibrary>MultiThreaded</RuntimeLibrary> </ClCompile> <Link> <!-- Link statically against the runtime and STL, but link dynamically against the CRT by ignoring the static CRT lib and instead linking against the Universal CRT DLL import library. This "hybrid" linking mechanism is supported according to the CRT maintainer. Dynamic linking against the CRT makes the binaries a bit smaller than they would otherwise be if the CRT, runtime, and STL were all statically linked in. --> <IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries);libucrt.lib</IgnoreSpecificDefaultLibraries> <AdditionalOptions>%(AdditionalOptions) /defaultlib:ucrt.lib</AdditionalOptions> </Link> </ItemDefinitionGroup> <!-- END common.build.post.props --> </Project>