forked from qt-creator/qt-creator
Add compile options to cmake declarative interface
It offers an clean interface to disable warnings Change-Id: Ia19360994d7ca439d067d2370d001d5aeae3999d Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This commit is contained in:
@@ -126,7 +126,7 @@ endfunction()
|
||||
function(add_qtc_library name)
|
||||
cmake_parse_arguments(_arg "STATIC;OBJECT;SHARED;SKIP_TRANSLATION;ALLOW_ASCII_CASTS;FEATURE_INFO;SKIP_PCH;EXCLUDE_FROM_INSTALL"
|
||||
"DESTINATION;COMPONENT;SOURCES_PREFIX;BUILD_DEFAULT"
|
||||
"CONDITION;DEPENDS;PUBLIC_DEPENDS;DEFINES;PUBLIC_DEFINES;INCLUDES;SYSTEM_INCLUDES;PUBLIC_INCLUDES;PUBLIC_SYSTEM_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PROPERTIES" ${ARGN}
|
||||
"CONDITION;DEPENDS;PUBLIC_DEPENDS;DEFINES;PUBLIC_DEFINES;INCLUDES;SYSTEM_INCLUDES;PUBLIC_INCLUDES;PUBLIC_SYSTEM_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PROPERTIES;PRIVATE_COMPILE_OPTIONS;PUBLIC_COMPILE_OPTIONS;INTERFACE_COMPILE_OPTIONS" ${ARGN}
|
||||
)
|
||||
|
||||
get_default_defines(default_defines_copy ${_arg_ALLOW_ASCII_CASTS})
|
||||
@@ -209,6 +209,8 @@ function(add_qtc_library name)
|
||||
EXPLICIT_MOC ${_arg_EXPLICIT_MOC}
|
||||
SKIP_AUTOMOC ${_arg_SKIP_AUTOMOC}
|
||||
EXTRA_TRANSLATIONS ${_arg_EXTRA_TRANSLATIONS}
|
||||
PRIVATE_COMPILE_OPTIONS ${_arg_PRIVATE_COMPILE_OPTIONS}
|
||||
PUBLIC_COMPILE_OPTIONS ${_arg_PUBLIC_COMPILE_OPTIONS}
|
||||
)
|
||||
|
||||
if (QTC_STATIC_BUILD)
|
||||
@@ -330,7 +332,7 @@ function(add_qtc_plugin target_name)
|
||||
cmake_parse_arguments(_arg
|
||||
"SKIP_INSTALL;INTERNAL_ONLY;SKIP_TRANSLATION;EXPORT;SKIP_PCH"
|
||||
"VERSION;COMPAT_VERSION;PLUGIN_PATH;PLUGIN_NAME;OUTPUT_NAME;BUILD_DEFAULT;PLUGIN_CLASS"
|
||||
"CONDITION;DEPENDS;PUBLIC_DEPENDS;DEFINES;PUBLIC_DEFINES;INCLUDES;SYSTEM_INCLUDES;PUBLIC_INCLUDES;PUBLIC_SYSTEM_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PLUGIN_DEPENDS;PLUGIN_RECOMMENDS;PLUGIN_TEST_DEPENDS;PLUGIN_MANUAL_DEPENDS;PROPERTIES"
|
||||
"CONDITION;DEPENDS;PUBLIC_DEPENDS;DEFINES;PUBLIC_DEFINES;INCLUDES;SYSTEM_INCLUDES;PUBLIC_INCLUDES;PUBLIC_SYSTEM_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PLUGIN_DEPENDS;PLUGIN_RECOMMENDS;PLUGIN_TEST_DEPENDS;PLUGIN_MANUAL_DEPENDS;PROPERTIES;PRIVATE_COMPILE_OPTIONS;PUBLIC_COMPILE_OPTIONS"
|
||||
${ARGN}
|
||||
)
|
||||
|
||||
@@ -498,6 +500,8 @@ function(add_qtc_plugin target_name)
|
||||
EXPLICIT_MOC ${_arg_EXPLICIT_MOC}
|
||||
SKIP_AUTOMOC ${_arg_SKIP_AUTOMOC}
|
||||
EXTRA_TRANSLATIONS ${_arg_EXTRA_TRANSLATIONS}
|
||||
PRIVATE_COMPILE_OPTIONS ${_arg_PRIVATE_COMPILE_OPTIONS}
|
||||
PUBLIC_COMPILE_OPTIONS ${_arg_PUBLIC_COMPILE_OPTIONS}
|
||||
)
|
||||
|
||||
if (QTC_STATIC_BUILD)
|
||||
@@ -635,7 +639,7 @@ endfunction()
|
||||
function(add_qtc_executable name)
|
||||
cmake_parse_arguments(_arg "SKIP_INSTALL;SKIP_TRANSLATION;ALLOW_ASCII_CASTS;SKIP_PCH;QTC_RUNNABLE"
|
||||
"DESTINATION;COMPONENT;BUILD_DEFAULT"
|
||||
"CONDITION;DEPENDS;DEFINES;INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PROPERTIES" ${ARGN})
|
||||
"CONDITION;DEPENDS;DEFINES;INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PROPERTIES;PRIVATE_COMPILE_OPTIONS;PUBLIC_COMPILE_OPTIONS" ${ARGN})
|
||||
|
||||
if (${_arg_UNPARSED_ARGUMENTS})
|
||||
message(FATAL_ERROR "add_qtc_executable had unparsed arguments!")
|
||||
@@ -711,6 +715,8 @@ function(add_qtc_executable name)
|
||||
EXPLICIT_MOC ${_arg_EXPLICIT_MOC}
|
||||
SKIP_AUTOMOC ${_arg_SKIP_AUTOMOC}
|
||||
EXTRA_TRANSLATIONS ${_arg_EXTRA_TRANSLATIONS}
|
||||
PRIVATE_COMPILE_OPTIONS ${_arg_PRIVATE_COMPILE_OPTIONS}
|
||||
PUBLIC_COMPILE_OPTIONS ${_arg_PUBLIC_COMPILE_OPTIONS}
|
||||
)
|
||||
|
||||
set(skip_translation OFF)
|
||||
@@ -838,7 +844,7 @@ endfunction()
|
||||
|
||||
function(add_qtc_test name)
|
||||
cmake_parse_arguments(_arg "GTEST;MANUALTEST;EXCLUDE_FROM_PRECHECK;NEEDS_GUI" "TIMEOUT"
|
||||
"DEFINES;DEPENDS;INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;SKIP_PCH;CONDITION;PROPERTIES" ${ARGN})
|
||||
"DEFINES;DEPENDS;INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;SKIP_PCH;CONDITION;PROPERTIES;PRIVATE_COMPILE_OPTIONS;PUBLIC_COMPILE_OPTIONS" ${ARGN})
|
||||
|
||||
if (${_arg_UNPARSED_ARGUMENTS})
|
||||
message(FATAL_ERROR "add_qtc_test had unparsed arguments!")
|
||||
@@ -890,6 +896,8 @@ function(add_qtc_test name)
|
||||
DEFINES ${_arg_DEFINES} ${TEST_DEFINES} ${default_defines_copy}
|
||||
EXPLICIT_MOC ${_arg_EXPLICIT_MOC}
|
||||
SKIP_AUTOMOC ${_arg_SKIP_AUTOMOC}
|
||||
PRIVATE_COMPILE_OPTIONS ${_arg_PRIVATE_COMPILE_OPTIONS}
|
||||
PUBLIC_COMPILE_OPTIONS ${_arg_PUBLIC_COMPILE_OPTIONS}
|
||||
)
|
||||
|
||||
set_target_properties(${name} PROPERTIES
|
||||
|
@@ -481,7 +481,7 @@ function(extend_qtc_target target_name)
|
||||
cmake_parse_arguments(_arg
|
||||
""
|
||||
"SOURCES_PREFIX;SOURCES_PREFIX_FROM_TARGET;FEATURE_INFO"
|
||||
"CONDITION;DEPENDS;PUBLIC_DEPENDS;DEFINES;PUBLIC_DEFINES;INCLUDES;SYSTEM_INCLUDES;PUBLIC_INCLUDES;PUBLIC_SYSTEM_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PROPERTIES;SOURCES_PROPERTIES"
|
||||
"CONDITION;DEPENDS;PUBLIC_DEPENDS;DEFINES;PUBLIC_DEFINES;INCLUDES;SYSTEM_INCLUDES;PUBLIC_INCLUDES;PUBLIC_SYSTEM_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PROPERTIES;SOURCES_PROPERTIES;PRIVATE_COMPILE_OPTIONS;PUBLIC_COMPILE_OPTIONS"
|
||||
${ARGN}
|
||||
)
|
||||
|
||||
@@ -569,6 +569,16 @@ function(extend_qtc_target target_name)
|
||||
if (_arg_SOURCES_PROPERTIES)
|
||||
set_source_files_properties(${_arg_SOURCES} PROPERTIES ${_arg_SOURCES_PROPERTIES})
|
||||
endif()
|
||||
|
||||
|
||||
if (_arg_PRIVATE_COMPILE_OPTIONS)
|
||||
target_compile_options(${target_name} PRIVATE ${_arg_PRIVATE_COMPILE_OPTIONS})
|
||||
endif()
|
||||
|
||||
if (_arg_PUBLIC_COMPILE_OPTIONS)
|
||||
target_compile_options(${target_name} PUBLIC ${_arg_PUBLIC_COMPILE_OPTIONS})
|
||||
endif()
|
||||
|
||||
endfunction()
|
||||
|
||||
function (qtc_env_with_default envName varToSet default)
|
||||
|
@@ -1,5 +1,6 @@
|
||||
add_qtc_library(Nanotrace
|
||||
PUBLIC_DEFINES NANOTRACE_ENABLED
|
||||
PUBLIC_COMPILE_OPTIONS $<$<COMPILE_LANG_AND_ID:CXX,MSVC>:/wd5030>
|
||||
SOURCES
|
||||
nanotraceglobals.h
|
||||
nanotrace.cpp nanotrace.h
|
||||
@@ -11,10 +12,6 @@ add_qtc_library(Nanotrace
|
||||
VISIBILITY_INLINES_HIDDEN OFF
|
||||
)
|
||||
|
||||
if(TARGET Nanotrace)
|
||||
target_compile_options(Nanotrace PUBLIC $<$<COMPILE_LANG_AND_ID:CXX,MSVC>:/wd5030>)
|
||||
endif()
|
||||
|
||||
option(DESIGNSTUDIO_USE_NANOTRACE
|
||||
"Enables collecting performance data with nanotrace for Design Studio" OFF)
|
||||
extend_qtc_library(Nanotrace
|
||||
|
@@ -20,7 +20,7 @@ add_qtc_library(SqliteInternal OBJECT
|
||||
|
||||
extend_qtc_library(SqliteInternal
|
||||
CONDITION QTC_STATIC_BUILD
|
||||
PROPERTIES COMPILE_OPTIONS $<IF:$<CXX_COMPILER_ID:MSVC>,/FIsqlite_static_config.h,-includesqlite_static_config.h>
|
||||
PRIVATE_COMPILE_OPTIONS $<IF:$<CXX_COMPILER_ID:MSVC>,/FIsqlite_static_config.h,-includesqlite_static_config.h>
|
||||
)
|
||||
|
||||
if (APPLE)
|
||||
@@ -80,5 +80,5 @@ extend_qtc_library(Sqlite
|
||||
|
||||
extend_qtc_library(Sqlite
|
||||
CONDITION QTC_STATIC_BUILD
|
||||
PROPERTIES COMPILE_OPTIONS $<IF:$<CXX_COMPILER_ID:MSVC>,/FIsqlite_static_config.h,-includesqlite_static_config.h>
|
||||
PRIVATE_COMPILE_OPTIONS $<IF:$<CXX_COMPILER_ID:MSVC>,/FIsqlite_static_config.h,-includesqlite_static_config.h>
|
||||
)
|
||||
|
@@ -8,13 +8,13 @@ if (APPLE)
|
||||
set(QmlDesignerPluginInstallPrefix "${IDE_PLUGIN_PATH}/QmlDesigner")
|
||||
endif()
|
||||
|
||||
|
||||
set(BUILD_NOT_DESIGNSTUDIO NOT ${BUILD_NOT_DESIGNSTUDIO})
|
||||
option(QTC_USE_QML_DESIGNER_LITE "Use Qml Designer Lite" ${BUILD_NOT_DESIGNSTUDIO})
|
||||
add_feature_info("Qml Designer Lite" ${QTC_USE_QML_DESIGNER_LITE} "")
|
||||
|
||||
option(USE_PROJECTSTORAGE "Use ProjectStorage" ${QTC_USE_QML_DESIGNER_LITE})
|
||||
|
||||
|
||||
env_with_default("QTC_ENABLE_PROJECT_STORAGE_TRACING" ENV_QTC_ENABLE_PROJECT_STORAGE_TRACING OFF)
|
||||
option(ENABLE_PROJECT_STORAGE_TRACING "Enable sqlite tracing" ${ENV_QTC_ENABLE_PROJECT_STORAGE_TRACING})
|
||||
add_feature_info("Sqlite tracing" ${ENABLE_PROJECT_STORAGE_TRACING} "")
|
||||
@@ -34,9 +34,10 @@ add_feature_info("Meta info tracing" ${ENABLE_METAINFO_TRACING} "")
|
||||
add_qtc_library(QmlDesignerUtils STATIC
|
||||
DEPENDS
|
||||
Qt::Gui Utils Qt::QmlPrivate
|
||||
|
||||
PUBLIC_INCLUDES ${CMAKE_CURRENT_LIST_DIR}/utils
|
||||
SOURCES_PREFIX ${CMAKE_CURRENT_LIST_DIR}/utils
|
||||
PUBLIC_COMPILE_OPTIONS
|
||||
$<$<COMPILE_LANG_AND_ID:CXX,Clang>:-Wno-unneeded-internal-declaration>
|
||||
SOURCES
|
||||
asset.cpp asset.h
|
||||
designeralgorithm.h
|
||||
@@ -49,12 +50,11 @@ add_qtc_library(QmlDesignerUtils STATIC
|
||||
qmldesignerutils_global.h
|
||||
)
|
||||
|
||||
target_compile_options(QmlDesignerUtils PUBLIC $<$<COMPILE_LANG_AND_ID:CXX,Clang,GNU>:-Wno-error=maybe-uninitialized>)
|
||||
target_compile_options(QmlDesignerUtils PUBLIC $<$<COMPILE_LANG_AND_ID:CXX,Clang>:-Wno-unneeded-internal-declaration>)
|
||||
|
||||
extend_qtc_library(QmlDesignerUtils
|
||||
CONDITION ENABLE_COMPILE_WARNING_AS_ERROR
|
||||
PROPERTIES COMPILE_WARNING_AS_ERROR ON
|
||||
PUBLIC_COMPILE_OPTIONS
|
||||
$<$<COMPILE_LANG_AND_ID:CXX,Clang,GNU>:-Wno-error=maybe-uninitialized>
|
||||
)
|
||||
|
||||
add_qtc_library(QmlDesignerCore STATIC
|
||||
@@ -115,6 +115,7 @@ extend_qtc_library(QmlDesignerCore
|
||||
extend_qtc_library(QmlDesignerCore
|
||||
CONDITION ENABLE_COMPILE_WARNING_AS_ERROR
|
||||
PROPERTIES COMPILE_WARNING_AS_ERROR ON
|
||||
PUBLIC_COMPILE_OPTIONS $<$<COMPILE_LANG_AND_ID:CXX,Clang,GNU>:-Wno-error=maybe-uninitialized>
|
||||
)
|
||||
|
||||
extend_qtc_library(QmlDesignerCore
|
||||
@@ -549,6 +550,7 @@ add_qtc_plugin(QmlDesigner
|
||||
extend_qtc_plugin(QmlDesigner
|
||||
CONDITION ENABLE_COMPILE_WARNING_AS_ERROR
|
||||
PROPERTIES COMPILE_WARNING_AS_ERROR ON
|
||||
PUBLIC_COMPILE_OPTIONS $<$<COMPILE_LANG_AND_ID:CXX,Clang,GNU>:-Wno-error=maybe-uninitialized>
|
||||
)
|
||||
|
||||
function(get_and_add_as_subdirectory name repository git_tag build_dir source_dir source_subdir)
|
||||
|
Reference in New Issue
Block a user