Windows: Use a shared precompiled header for dolphin code under Source/

This commit is contained in:
Shawn Hoffman
2014-08-14 23:51:13 -07:00
parent 66fdbdd18d
commit f1b82a34b2
55 changed files with 183 additions and 315 deletions

View File

@ -59,7 +59,7 @@
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<AdditionalOptions>/Zo /volatile:iso /D PSAPI_VERSION=1 /D _M_X86=1 %(AdditionalOptions)</AdditionalOptions>
<AdditionalOptions Condition="'$(Platform)'=='x64'">/D _ARCH_64=1 /D _M_X86_64=1 %(AdditionalOptions)</AdditionalOptions>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<DebugInformationFormat>OldStyle</DebugInformationFormat>
<!--
This is for GetVersionEx being marked as depreciated - which is idiotic and there's
not much else we can do since many externals use it. The bad part is that there doesn't
@ -68,10 +68,6 @@
<DisableSpecificWarnings>4996</DisableSpecificWarnings>
<OpenMPSupport>true</OpenMPSupport>
</ClCompile>
<!--ClCompile Base:StaticLibrary-->
<ClCompile Condition="'$(ConfigurationType)'=='StaticLibrary'">
<PreprocessorDefinitions>_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<!--ClCompile Debug-->
<ClCompile Condition="'$(Configuration)'=='Debug'">
<FunctionLevelLinking>true</FunctionLevelLinking>

View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros" />
<ItemDefinitionGroup>
<ClCompile>
<!--
Creator and ALL users of PCH must have exact same compiler settings!
In dolphin we accomplish this by sharing settings between targets with
Base.props.
-->
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<!--
This file will be included by other projects, so we have to manually set
the output path.
-->
<PrecompiledHeaderOutputFile>$(BuildRootDir)$(Platform)\$(Configuration)\pch\pch.pch</PrecompiledHeaderOutputFile>
</ClCompile>
</ItemDefinitionGroup>
</Project>

View File

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets">
<Import Project="PCHCommon.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<ItemDefinitionGroup>
<ClCompile>
<PrecompiledHeader>Create</PrecompiledHeader>
</ClCompile>
</ItemDefinitionGroup>
<!--
Hacks preventing PCH creators from spending time generating .lib files.
It is just an optimization to save some time since only .obj outputs are
really needed by PCH users.
-->
<ItemDefinitionGroup>
<Lib>
<!--
Clear the output path so projects referencing this one don't try to drag
in a nonexistant .lib file.
-->
<OutputFile />
</Lib>
</ItemDefinitionGroup>
<!--This prevents the _Lib target from being executed-->
<PropertyGroup>
<BuildLibTargets>$(BuildLibTargets);ClearLibCompiled</BuildLibTargets>
</PropertyGroup>
<Target Name="ClearLibCompiled">
<PropertyGroup>
<LibCompiled>false</LibCompiled>
</PropertyGroup>
</Target>
<!--End .lib hacks-->
</Project>

View File

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets">
<Import Project="PCHCommon.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<ItemDefinitionGroup>
<ClCompile>
<PrecompiledHeader>Use</PrecompiledHeader>
<ForcedIncludeFiles>pch.h</ForcedIncludeFiles>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ProjectReference Include="$(SolutionDir)PCH/pch.vcxproj">
<Project>{76563A7F-1011-4EAD-B667-7BB18D09568E}</Project>
<Private>false</Private>
<LinkLibraryDependencies>true</LinkLibraryDependencies>
<UseLibraryDependencyInputs>true</UseLibraryDependencyInputs>
</ProjectReference>
</ItemGroup>
</Project>

View File

@ -1,14 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros" />
<PropertyGroup />
<ItemDefinitionGroup>
<ClCompile>
<!--Use stdafx.h and auto-include it as the first include in every file-->
<PrecompiledHeader>Use</PrecompiledHeader>
<ForcedIncludeFiles>stdafx.h</ForcedIncludeFiles>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup />
</Project>

View File

@ -4,13 +4,17 @@
<PropertyGroup Label="UserMacros" />
<ItemDefinitionGroup>
<ClCompile>
<ForcedIncludeFiles></ForcedIncludeFiles>
<!--Created in the vcxproj-->
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>wx/wxprec.h</PrecompiledHeaderFile>
<ExceptionHandling>Async</ExceptionHandling>
<DisableSpecificWarnings>4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
<PreprocessorDefinitions>__WXMSW__;WXBUILDING;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>..\..\;..\..\include;..\..\..\zlib;..\..\..\libpng</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<AdditionalOptions>"/manifestdependency:type='Win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\" %(AdditionalOptions)</AdditionalOptions>
</Link>
</ItemDefinitionGroup>
<ItemGroup />
</Project>