Функция myx_cmake_qt_autogen_target_properties
This commit is contained in:
@ -175,3 +175,32 @@ function(myx_cmake_common_target_properties_post_link target)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(myx_cmake_qt_autogen_target_properties target)
|
||||
if(NOT TARGET ${target})
|
||||
myx_cmake_message_error("MyxCMake: Target ${target} does not exists.")
|
||||
endif()
|
||||
|
||||
get_target_property(_target_type ${target} TYPE)
|
||||
if(NOT _target_type STREQUAL OBJECT_LIBRARY)
|
||||
myx_cmake_message_error("MyxCMake: Target ${target} must have type OBJECT ${_target_type}.")
|
||||
endif()
|
||||
|
||||
myx_cmake_common_target_properties(${target})
|
||||
get_target_property(__sources ${target} SOURCES)
|
||||
foreach(src IN LISTS __sources)
|
||||
string(REGEX MATCH ".*/ui_.*\\.h$" __ui ${src})
|
||||
if(__ui)
|
||||
target_include_directories(${target} SYSTEM PUBLIC ${Qt5Widgets_INCLUDE_DIRS})
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
foreach(src IN LISTS __sources)
|
||||
string(REGEX MATCH ".*/moc_.*\\.cpp$" __moc ${src})
|
||||
if(__moc)
|
||||
target_include_directories(${target} SYSTEM PUBLIC ${Qt5Core_INCLUDE_DIRS})
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
set_target_properties(${target} PROPERTIES CXX_CLANG_TIDY "")
|
||||
endfunction()
|
||||
|
||||
|
Reference in New Issue
Block a user