diff --git a/CMakeLists.txt b/CMakeLists.txt index 8aa6c5190..02724fe03 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1815,6 +1815,9 @@ ${GNSSSDR_BINARY_DIR}/thirdparty/glog/glog-${GNSSSDR_GLOG_LOCAL_VERSION}/configu endif() if(NOT (CMAKE_VERSION VERSION_LESS "3.22")) target_precompile_headers(Glog::glog INTERFACE ${GNSSSDR_BINARY_DIR}/glog-${GNSSSDR_GLOG_LOCAL_VERSION}/glog/export.h) + if(CMAKE_CXX_COMPILER_ID MATCHES "Clang") + set(CMAKE_CXX_COMPILE_OPTIONS_USE_PCH -Winvalid-pch -x c++-header -include ${GNSSSDR_BINARY_DIR}/glog-${GNSSSDR_GLOG_LOCAL_VERSION}/glog/export.h) + endif() endif() if(LIBUNWIND_FOUND) diff --git a/cmake/Modules/FindGLOG.cmake b/cmake/Modules/FindGLOG.cmake index bef1f7b6a..3bec26aa9 100644 --- a/cmake/Modules/FindGLOG.cmake +++ b/cmake/Modules/FindGLOG.cmake @@ -183,4 +183,7 @@ endif() # Fix for glog 0.7.0 if(EXISTS ${GLOG_INCLUDE_DIRS}/export.h) target_precompile_headers(Glog::glog INTERFACE ${GLOG_INCLUDE_DIRS}/export.h) + if(CMAKE_CXX_COMPILER_ID MATCHES "Clang") + set(CMAKE_CXX_COMPILE_OPTIONS_USE_PCH -Winvalid-pch -x c++-header -include ${GLOG_INCLUDE_DIRS}/export.h) + endif() endif() \ No newline at end of file