Build: Use precompiled headers
This commit is contained in:
@ -68,6 +68,7 @@ add_library(util
|
||||
window_info.h
|
||||
)
|
||||
|
||||
target_precompile_headers(util PRIVATE "pch.h")
|
||||
target_include_directories(util PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/..")
|
||||
target_include_directories(util PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/..")
|
||||
target_link_libraries(util PUBLIC common simpleini imgui)
|
||||
@ -116,6 +117,7 @@ if(ENABLE_OPENGL)
|
||||
gl/context_wgl.cpp
|
||||
gl/context_wgl.h
|
||||
)
|
||||
target_link_libraries(util PRIVATE "opengl32.lib")
|
||||
endif()
|
||||
|
||||
if(LINUX OR FREEBSD OR ANDROID)
|
||||
@ -222,6 +224,28 @@ endif()
|
||||
|
||||
if(WIN32)
|
||||
target_sources(util PRIVATE
|
||||
d3d_common.cpp
|
||||
d3d_common.h
|
||||
d3d11_device.cpp
|
||||
d3d11_device.h
|
||||
d3d11_pipeline.cpp
|
||||
d3d11_pipeline.h
|
||||
d3d11_stream_buffer.cpp
|
||||
d3d11_stream_buffer.h
|
||||
d3d11_texture.cpp
|
||||
d3d11_texture.h
|
||||
d3d12_builders.cpp
|
||||
d3d12_builders.h
|
||||
d3d12_descriptor_heap_manager.cpp
|
||||
d3d12_descriptor_heap_manager.h
|
||||
d3d12_device.cpp
|
||||
d3d12_device.h
|
||||
d3d12_pipeline.cpp
|
||||
d3d12_pipeline.h
|
||||
d3d12_stream_buffer.cpp
|
||||
d3d12_stream_buffer.h
|
||||
d3d12_texture.cpp
|
||||
d3d12_texture.h
|
||||
dinput_source.cpp
|
||||
dinput_source.h
|
||||
platform_misc_win32.cpp
|
||||
@ -232,9 +256,14 @@ if(WIN32)
|
||||
xinput_source.cpp
|
||||
xinput_source.h
|
||||
)
|
||||
target_link_libraries(util PRIVATE d3d11.lib d3d12.lib d3dcompiler.lib dxgi.lib winmm.lib)
|
||||
target_link_libraries(util PRIVATE d3d12ma)
|
||||
target_link_libraries(util PRIVATE d3d11.lib d3d12.lib d3dcompiler.lib dxgi.lib winmm.lib Dwmapi.lib)
|
||||
|
||||
if("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
|
||||
target_link_libraries(util PRIVATE WinPixEventRuntime::WinPixEventRuntime)
|
||||
endif()
|
||||
elseif(APPLE)
|
||||
target_sources(util PRIVATE
|
||||
set(MAC_SOURCES
|
||||
cocoa_tools.h
|
||||
metal_device.h
|
||||
metal_device.mm
|
||||
@ -242,10 +271,12 @@ elseif(APPLE)
|
||||
metal_stream_buffer.mm
|
||||
platform_misc_mac.mm
|
||||
)
|
||||
target_sources(util PRIVATE ${MAC_SOURCES})
|
||||
find_library(IOK_LIBRARY IOKit REQUIRED)
|
||||
find_library(METAL_LIBRARY Metal)
|
||||
find_library(QUARTZCORE_LIBRARY QuartzCore)
|
||||
target_link_libraries(util PRIVATE ${METAL_LIBRARY} ${QUARTZCORE_LIBRARY} ${IOK_LIBRARY})
|
||||
set_source_files_properties(${MAC_SOURCES} PROPERTIES SKIP_PRECOMPILE_HEADERS TRUE)
|
||||
elseif(NOT ANDROID)
|
||||
target_sources(util PRIVATE
|
||||
platform_misc_unix.cpp
|
||||
|
||||
4
src/util/pch.cpp
Normal file
4
src/util/pch.cpp
Normal file
@ -0,0 +1,4 @@
|
||||
// SPDX-FileCopyrightText: 2019-2023 Connor McLaughlin <stenzek@gmail.com>
|
||||
// SPDX-License-Identifier: (GPL-3.0 OR CC-BY-NC-ND-4.0)
|
||||
|
||||
#include "pch.h"
|
||||
25
src/util/pch.h
Normal file
25
src/util/pch.h
Normal file
@ -0,0 +1,25 @@
|
||||
// SPDX-FileCopyrightText: 2019-2023 Connor McLaughlin <stenzek@gmail.com>
|
||||
// SPDX-License-Identifier: (GPL-3.0 OR CC-BY-NC-ND-4.0)
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "common/types.h"
|
||||
|
||||
#include "fmt/format.h"
|
||||
#include "gsl/span"
|
||||
|
||||
#include <array>
|
||||
#include <atomic>
|
||||
#include <cstdio>
|
||||
#include <cstring>
|
||||
#include <ctime>
|
||||
#include <functional>
|
||||
#include <initializer_list>
|
||||
#include <memory>
|
||||
#include <mutex>
|
||||
#include <optional>
|
||||
#include <string>
|
||||
#include <string_view>
|
||||
#include <tuple>
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
@ -61,6 +61,7 @@
|
||||
<ClInclude Include="memory_arena.h" />
|
||||
<ClInclude Include="page_fault_handler.h" />
|
||||
<ClInclude Include="cd_subchannel_replacement.h" />
|
||||
<ClInclude Include="pch.h" />
|
||||
<ClInclude Include="platform_misc.h" />
|
||||
<ClInclude Include="postprocessing.h" />
|
||||
<ClInclude Include="postprocessing_shader.h" />
|
||||
@ -162,6 +163,9 @@
|
||||
<ClCompile Include="opengl_texture.cpp">
|
||||
<ExcludedFromBuild Condition="'$(Platform)'=='ARM64'">true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="pch.cpp">
|
||||
<PrecompiledHeader>Create</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
<ClCompile Include="platform_misc_win32.cpp" />
|
||||
<ClCompile Include="postprocessing.cpp" />
|
||||
<ClCompile Include="postprocessing_shader.cpp" />
|
||||
@ -245,6 +249,9 @@
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);$(SolutionDir)dep\reshadefx\include</AdditionalIncludeDirectories>
|
||||
<ObjectFileName>$(IntDir)/%(RelativeDir)/</ObjectFileName>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||||
<ForcedIncludeFiles>pch.h</ForcedIncludeFiles>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<Import Project="..\..\dep\msvc\vsprops\Targets.props" />
|
||||
|
||||
@ -70,6 +70,7 @@
|
||||
<ClInclude Include="d3d11_texture.h" />
|
||||
<ClInclude Include="host.h" />
|
||||
<ClInclude Include="postprocessing_shader_fx.h" />
|
||||
<ClInclude Include="pch.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="jit_code_buffer.cpp" />
|
||||
@ -146,6 +147,7 @@
|
||||
<ClCompile Include="d3d11_texture.cpp" />
|
||||
<ClCompile Include="host.cpp" />
|
||||
<ClCompile Include="postprocessing_shader_fx.cpp" />
|
||||
<ClCompile Include="pch.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Filter Include="gl">
|
||||
|
||||
Reference in New Issue
Block a user