123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- add_library(use_pch INTERFACE)
- add_library(build_pch pch.h pch.cpp)
- target_link_libraries(build_pch PUBLIC fmt::fmt)
- target_compile_options(build_pch PRIVATE /Ycpch.h)
- target_compile_options(build_pch PUBLIC /Fp$<TARGET_FILE_DIR:build_pch>/dolphin.pch )
- if (POLICY CMP0141)
-
- set_property(TARGET build_pch PROPERTY MSVC_DEBUG_INFORMATION_FORMAT "$<$<CONFIG:Debug,RelWithDebInfo>:Embedded>")
-
- set(CMAKE_MSVC_DEBUG_INFORMATION_FORMAT "$<$<CONFIG:Debug,RelWithDebInfo>:Embedded>" PARENT_SCOPE)
- else()
- if (CMAKE_CXX_FLAGS_DEBUG MATCHES "/Zi")
-
- string(REPLACE "/Zi" "/Z7" CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}")
- string(REPLACE "/Zi" "/Z7" CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}")
-
- set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}" PARENT_SCOPE)
- set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG}" PARENT_SCOPE)
- target_compile_options(build_pch PUBLIC "$<$<CONFIG:Debug,RelWithDebInfo>:/Z7>")
- endif()
- endif()
- target_compile_options(build_pch PUBLIC "$<$<CONFIG:Debug,RelWithDebInfo>:/Gm->")
- set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/pch.cpp PROPERTIES
- OBJECT_OUTPUTS $<TARGET_FILE_DIR:build_pch>/dolphin.pch
- )
- add_custom_target(force_build_pch
- DEPENDS $<TARGET_FILE_DIR:build_pch>/dolphin.pch
- )
- target_link_libraries(use_pch INTERFACE build_pch)
- target_compile_options(use_pch INTERFACE /Yupch.h /FIpch.h)
- add_dependencies(use_pch force_build_pch)
|