Skip to content

Commit 1f86d85

Browse files
committed
cmake: fix GCC precompiled headers warnings
1 parent d15d9f5 commit 1f86d85

File tree

1 file changed

+7
-19
lines changed

1 file changed

+7
-19
lines changed

cmake/OpenCVPCHSupport.cmake

Lines changed: 7 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -196,18 +196,20 @@ MACRO(ADD_PRECOMPILED_HEADER_TO_TARGET _targetName _input _pch_output_to_use )
196196

197197
_PCH_GET_TARGET_COMPILE_FLAGS(_target_cflags ${_name} ${_pch_output_to_use} ${_dowarn})
198198
#MESSAGE("Add flags ${_target_cflags} to ${_targetName} " )
199+
if(CMAKE_COMPILER_IS_GNUCXX)
200+
set(_target_cflags "${_target_cflags} -include \"${CMAKE_CURRENT_BINARY_DIR}/${_name}\"")
201+
endif()
199202

200203
GET_TARGET_PROPERTY(_sources ${_targetName} SOURCES)
201204
FOREACH(src ${_sources})
202205
if(NOT "${src}" MATCHES "\\.mm$")
203206
get_source_file_property(_flags "${src}" COMPILE_FLAGS)
204-
if(_flags)
205-
set(_flags "${_flags} ${_target_cflags}")
207+
get_source_file_property(_flags2 "${src}" COMPILE_DEFINITIONS)
208+
if(NOT _flags AND NOT _flags2)
209+
set_source_files_properties("${src}" PROPERTIES COMPILE_FLAGS "${_target_cflags}")
206210
else()
207-
set(_flags "${_target_cflags}")
211+
#ocv_debug_message("Skip PCH, flags: ${oldProps} defines: ${oldProps2}, file: ${src}")
208212
endif()
209-
210-
set_source_files_properties("${src}" PROPERTIES COMPILE_FLAGS "${_flags}")
211213
endif()
212214
ENDFOREACH()
213215

@@ -284,20 +286,6 @@ MACRO(ADD_PRECOMPILED_HEADER _targetName _input)
284286
DEPENDS ${_targetName}_pch_dephelp
285287
)
286288

287-
get_target_property(_sources ${_targetName} SOURCES)
288-
foreach(src ${_sources})
289-
if(NOT "${src}" MATCHES "\\.mm$")
290-
get_source_file_property(oldProps "${src}" COMPILE_FLAGS)
291-
get_source_file_property(oldProps2 "${src}" COMPILE_DEFINITIONS)
292-
if(NOT oldProps AND NOT oldProps2)
293-
set(newProperties "-include \"${CMAKE_CURRENT_BINARY_DIR}/${_name}\"")
294-
set_source_files_properties("${src}" PROPERTIES COMPILE_FLAGS "${newProperties}")
295-
else()
296-
ocv_debug_message("Skip PCH, flags: ${oldProps} defines: ${oldProps2}, file: ${src}")
297-
endif()
298-
endif()
299-
endforeach()
300-
301289
ADD_PRECOMPILED_HEADER_TO_TARGET(${_targetName} ${_input} ${_output} ${_dowarn})
302290

303291
ENDMACRO(ADD_PRECOMPILED_HEADER)

0 commit comments

Comments
 (0)