xref: /aosp_15_r20/external/libusb/msvc/Base.props (revision 86b64dcb59b3a0b37502ecd56e119234366a6f7e)
1<?xml version="1.0" encoding="utf-8"?>
2<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3  <PropertyGroup>
4    <LibusbRootDir>$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..'))\</LibusbRootDir>
5    <IntDir>$(LibusbRootDir)build\$(PlatformToolset)\$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
6    <OutDir>$(IntDir)..\</OutDir>
7  </PropertyGroup>
8  <ItemDefinitionGroup>
9    <!--ClCompile Base-->
10    <ClCompile>
11      <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
12      <PreprocessorDefinitions>_WIN32_WINNT=_WIN32_WINNT_VISTA;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
13      <WarningLevel>Level4</WarningLevel>
14      <TreatWarningAsError>true</TreatWarningAsError>
15      <IntrinsicFunctions>true</IntrinsicFunctions>
16      <MultiProcessorCompilation>true</MultiProcessorCompilation>
17      <!--Treat sources as utf-8-->
18      <AdditionalOptions Condition="'$(PlatformToolsetVersion)'&gt;'120'">/utf-8 %(AdditionalOptions)</AdditionalOptions>
19      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
20      <DiagnosticsFormat>Caret</DiagnosticsFormat>
21    </ClCompile>
22    <!--ClCompile Debug*-->
23    <ClCompile Condition="$(Configuration.StartsWith('Debug'))">
24      <Optimization>Disabled</Optimization>
25    </ClCompile>
26    <ClCompile Condition="$(Configuration.StartsWith('Debug')) And '$(EnableASAN)'=='true'">
27      <BasicRuntimeChecks>Default</BasicRuntimeChecks>
28    </ClCompile>
29    <!--ClCompile Release*-->
30    <ClCompile Condition="$(Configuration.StartsWith('Release'))">
31      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
32      <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
33      <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
34      <OmitFramePointers>true</OmitFramePointers>
35      <StringPooling>true</StringPooling>
36      <AdditionalOptions>/Gw %(AdditionalOptions)</AdditionalOptions>
37      <WholeProgramOptimization>true</WholeProgramOptimization>
38    </ClCompile>
39    <!--Link Base-->
40    <Link>
41      <GenerateDebugInformation>true</GenerateDebugInformation>
42      <TreatLinkerWarningAsErrors>true</TreatLinkerWarningAsErrors>
43    </Link>
44    <!--Link Release*-->
45    <Link Condition="$(Configuration.StartsWith('Release'))">
46      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
47      <OptimizeReferences>true</OptimizeReferences>
48      <EnableCOMDATFolding>true</EnableCOMDATFolding>
49      <AdditionalDependencies>kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies>
50    </Link>
51    <!--Link Base:Application-->
52    <Link Condition="'$(ConfigurationType)'=='Application'">
53      <SubSystem>Console</SubSystem>
54    </Link>
55    <Lib>
56      <TreatLibWarningAsErrors>true</TreatLibWarningAsErrors>
57      <LinkTimeCodeGeneration>true</LinkTimeCodeGeneration>
58    </Lib>
59  </ItemDefinitionGroup>
60</Project>