CMake build: Add ability to disable building of individual plugins

Adds a cache entry "BUILD_PLUGIN_${NAME}", defaulting to ON which
can be set to OFF to disable building of a plugin.

Adds a extend_qtc_plugin function that should be used to add
properties to a plugin after add_qtc_plugin, instead of the
standard CMake functions target_... . The new function results
in a no-op if the plugin was disabled.

Change-Id: I57f6799620aea0aaa8b56acead4815ccced95911
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
Eike Ziller
2019-05-21 12:22:35 +02:00
parent 9645687e53
commit 6fb9bf453f
23 changed files with 663 additions and 545 deletions

View File

@@ -62,6 +62,31 @@ function(set_explicit_moc target_name file)
target_sources(${target_name} PRIVATE "${file_moc}")
endfunction()
function(add_qtc_depends target_name)
cmake_parse_arguments(_arg "" "" "PRIVATE;PUBLIC" ${ARGN})
if (${_arg_UNPARSED_ARGUMENTS})
message(FATAL_ERROR "add_qtc_depends had unparsed arguments")
endif()
separate_object_libraries("${_arg_PRIVATE}"
depends object_lib_depends object_lib_depends_objects)
separate_object_libraries("${_arg_PUBLIC}"
public_depends object_public_depends object_public_depends_objects)
target_sources(${target_name} PRIVATE ${object_lib_depends_objects} ${object_public_depends_objects})
target_link_libraries(${target_name} PRIVATE ${depends} PUBLIC ${public_depends})
foreach(obj_lib IN LISTS object_lib_depends)
target_compile_definitions(${target_name} PRIVATE $<TARGET_PROPERTY:${obj_lib},INTERFACE_COMPILE_DEFINITIONS>)
target_include_directories(${target_name} PRIVATE $<TARGET_PROPERTY:${obj_lib},INTERFACE_INCLUDE_DIRECTORIES>)
endforeach()
foreach(obj_lib IN LISTS object_public_depends)
target_compile_definitions(${target_name} PUBLIC $<TARGET_PROPERTY:${obj_lib},INTERFACE_COMPILE_DEFINITIONS>)
target_include_directories(${target_name} PUBLIC $<TARGET_PROPERTY:${obj_lib},INTERFACE_INCLUDE_DIRECTORIES>)
endforeach()
endfunction()
function(add_qtc_library name)
cmake_parse_arguments(_arg "STATIC;OBJECT" ""
"DEFINES;DEPENDS;INCLUDES;PUBLIC_DEFINES;PUBLIC_DEPENDS;PUBLIC_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;PROPERTIES" ${ARGN}
@@ -179,6 +204,11 @@ function(find_dependent_plugins varName)
set("${varName}" ${_RESULT} PARENT_SCOPE)
endfunction()
function(qtc_plugin_enabled varName name)
string(TOUPPER "BUILD_PLUGIN_${name}" _build_plugin_var)
set(${varName} ${${_build_plugin_var}} PARENT_SCOPE)
endfunction()
function(add_qtc_plugin target_name)
cmake_parse_arguments(_arg
"EXPERIMENTAL;SKIP_DEBUG_CMAKE_FILE_CHECK"
@@ -204,7 +234,10 @@ function(add_qtc_plugin target_name)
set(_extra_text "with CONDITION ${_contents}")
endif()
if (${_arg_CONDITION})
string(TOUPPER "BUILD_PLUGIN_${target_name}" _build_plugin_var)
set(${_build_plugin_var} "ON" CACHE BOOL "Build plugin ${name}.")
if ((${_arg_CONDITION}) AND ${_build_plugin_var})
set(_plugin_enabled ON)
else()
set(_plugin_enabled OFF)
@@ -273,13 +306,7 @@ function(add_qtc_plugin target_name)
configure_file("${CMAKE_CURRENT_BINARY_DIR}/${name}.json.cmakein" "${name}.json")
endif()
separate_object_libraries("${_arg_DEPENDS}"
depends object_lib_depends object_lib_depends_objects)
separate_object_libraries("${_arg_PUBLIC_DEPENDS}"
public_depends object_public_depends object_public_depends_objects)
add_library(${target_name} SHARED ${_arg_SOURCES}
${object_lib_depends_objects} ${object_public_depends_objects})
add_library(${target_name} SHARED ${_arg_SOURCES})
### Generate EXPORT_SYMBOL
string(TOUPPER "${name}_LIBRARY" EXPORT_SYMBOL)
@@ -288,10 +315,7 @@ function(add_qtc_plugin target_name)
set(TEST_DEFINES WITH_TESTS SRCDIR="${CMAKE_CURRENT_SOURCE_DIR}")
endif()
target_link_libraries(${target_name}
PRIVATE ${_DEP_PLUGINS} ${depends} ${_TEST_DEPENDS}
PUBLIC ${public_depends}
)
target_link_libraries(${target_name} PRIVATE ${_DEP_PLUGINS} ${_TEST_DEPENDS})
target_include_directories(${target_name}
PRIVATE ${_arg_INCLUDES} "${CMAKE_CURRENT_SOURCE_DIR}/.." "${CMAKE_CURRENT_BINARY_DIR}"
"${CMAKE_BINARY_DIR}/src"
@@ -301,14 +325,10 @@ function(add_qtc_plugin target_name)
PRIVATE ${EXPORT_SYMBOL} ${DEFAULT_DEFINES} ${_arg_DEFINES} ${TEST_DEFINES}
)
foreach(obj_lib IN LISTS object_lib_depends)
target_compile_definitions(${target_name} PRIVATE $<TARGET_PROPERTY:${obj_lib},INTERFACE_COMPILE_DEFINITIONS>)
target_include_directories(${target_name} PRIVATE $<TARGET_PROPERTY:${obj_lib},INTERFACE_INCLUDE_DIRECTORIES>)
endforeach()
foreach(obj_lib IN LISTS object_public_depends)
target_compile_definitions(${target_name} PUBLIC $<TARGET_PROPERTY:${obj_lib},INTERFACE_COMPILE_DEFINITIONS>)
target_include_directories(${target_name} PUBLIC $<TARGET_PROPERTY:${obj_lib},INTERFACE_INCLUDE_DIRECTORIES>)
endforeach()
add_qtc_depends(${target_name}
PRIVATE ${_arg_DEPENDS}
PUBLIC ${_arg_PUBLIC_DEPENDS}
)
set(plugin_dir "${IDE_PLUGIN_PATH}")
if (_arg_PLUGIN_PATH)
@@ -340,6 +360,44 @@ function(add_qtc_plugin target_name)
)
endfunction()
function(extend_qtc_plugin target_name)
cmake_parse_arguments(_arg
""
"SOURCES_PREFIX"
"CONDITION;DEPENDS;PUBLIC_DEPENDS;DEFINES;INCLUDES;PUBLIC_INCLUDES;SOURCES;EXPLICIT_MOC"
${ARGN}
)
if (${_arg_UNPARSED_ARGUMENTS})
message(FATAL_ERROR "extend_qtc_plugin had unparsed arguments")
endif()
qtc_plugin_enabled(_plugin_enabled ${target_name})
if (NOT _arg_CONDITION)
set(_arg_CONDITION ON)
endif()
if ((NOT (${_arg_CONDITION})) OR (NOT _plugin_enabled))
return()
endif()
add_qtc_depends(${target_name}
PRIVATE ${_arg_DEPENDS}
PUBLIC ${_arg_PUBLIC_DEPENDS}
)
target_compile_definitions(${target_name} PRIVATE ${_arg_DEFINES})
target_include_directories(${target_name} PRIVATE ${_arg_INCLUDES} PUBLIC ${_arg_PUBLIC_INCLUDES})
if (_arg_SOURCES_PREFIX)
list(TRANSFORM _arg_SOURCES PREPEND "${_arg_SOURCES_PREFIX}/")
target_include_directories(${target_name} PUBLIC "${_arg_SOURCES_PREFIX}")
endif()
target_sources(${target_name} PRIVATE ${_arg_SOURCES})
foreach(file IN LISTS _arg_EXPLICIT_MOC)
set_explicit_moc(${target_name} "${file}")
endforeach()
endfunction()
function(add_qtc_executable name)
cmake_parse_arguments(_arg "" "DESTINATION" "DEFINES;DEPENDS;INCLUDES;SOURCES;PROPERTIES" ${ARGN})

View File

@@ -74,8 +74,7 @@ add_qtc_plugin(AutoTest
EXPLICIT_MOC boost/boosttestsettingspage.h
)
if (WITH_TESTS)
target_sources(AutoTest PRIVATE
autotestunittests.cpp autotestunittests.h
extend_qtc_plugin(AutoTest
CONDITION WITH_TESTS
SOURCES autotestunittests.cpp autotestunittests.h
)
endif()

View File

@@ -47,11 +47,11 @@ add_qtc_plugin(ClangCodeModel
EXPLICIT_MOC clangcodemodelplugin.h
)
if (WITH_TESTS)
target_sources(ClangCodeModel PRIVATE
extend_qtc_plugin(ClangCodeModel
CONDITION WITH_TESTS
SOURCES
test/clangautomationutils.cpp test/clangautomationutils.h
test/clangbatchfileprocessor.cpp test/clangbatchfileprocessor.h
test/clangcodecompletion_test.cpp test/clangcodecompletion_test.h
test/data/clangtestdata.qrc
)
endif()

View File

@@ -32,10 +32,10 @@ add_qtc_plugin(ClangTools
clangtoolsutils.cpp clangtoolsutils.h
)
if (WITH_TESTS)
target_sources(ClangTools PRIVATE
extend_qtc_plugin(ClangTools
CONDITION WITH_TESTS
SOURCES
clangtoolspreconfiguredsessiontests.cpp clangtoolspreconfiguredsessiontests.h
clangtoolsunittests.cpp clangtoolsunittests.h
clangtoolsunittests.qrc
)
endif()

View File

@@ -9,8 +9,7 @@ add_qtc_plugin(CompilationDatabaseProjectManager
compilationdatabaseutils.cpp compilationdatabaseutils.h
)
if (WITH_TESTS)
target_sources(CompilationDatabaseProjectManager PRIVATE
compilationdatabasetests.cpp compilationdatabasetests.h
extend_qtc_plugin(CompilationDatabaseProjectManager
CONDITION WITH_TESTS
SOURCES compilationdatabasetests.cpp compilationdatabasetests.h
)
endif()

View File

@@ -151,22 +151,29 @@ add_qtc_plugin(Core
EXPLICIT_MOC dialogs/filepropertiesdialog.h
)
if (WITH_TESTS)
target_sources(Core PRIVATE
extend_qtc_plugin(Core
CONDITION WITH_TESTS
SOURCES
locator/locator_test.cpp
locator/locatorfiltertest.cpp locator/locatorfiltertest.h
testdatadir.cpp testdatadir.h
)
endif()
if (WIN32)
target_sources(Core PRIVATE progressmanager/progressmanager_win.cpp)
elseif (APPLE)
extend_qtc_plugin(Core
CONDITION WIN32
SOURCES progressmanager/progressmanager_win.cpp
)
find_library(FWAppKit AppKit)
target_link_libraries(Core PRIVATE ${FWAppKit})
target_sources(Core PRIVATE
extend_qtc_plugin(Core
CONDITION APPLE AND FWAppKit
DEPENDS ${FWAppKit}
SOURCES
progressmanager/progressmanager_mac.mm
locator/spotlightlocatorfilter.h locator/spotlightlocatorfilter.mm)
else()
target_sources(Core PRIVATE progressmanager/progressmanager_x11.cpp)
endif()
locator/spotlightlocatorfilter.h locator/spotlightlocatorfilter.mm
)
extend_qtc_plugin(Core
CONDITION (NOT WIN32) AND (NOT APPLE)
SOURCES progressmanager/progressmanager_x11.cpp
)

View File

@@ -31,8 +31,9 @@ add_qtc_plugin(CppEditor
EXPLICIT_MOC cppeditor.h
)
if (WITH_TESTS)
target_sources(CppEditor PRIVATE
extend_qtc_plugin(CppEditor
CONDITION WITH_TESTS
SOURCES
cppdoxygen_test.cpp cppdoxygen_test.h
cppeditortestcase.cpp cppeditortestcase.h
cppincludehierarchy_test.cpp
@@ -40,7 +41,7 @@ if (WITH_TESTS)
cppuseselections_test.cpp
fileandtokenactions_test.cpp
followsymbol_switchmethoddecldef_test.cpp
EXPLICIT_MOC
cppdoxygen_test.h
cppquickfix_test.h
)
set_explicit_moc(CppEditor cppdoxygen_test.h)
set_explicit_moc(CppEditor cppquickfix_test.h)
endif()

View File

@@ -112,8 +112,9 @@ add_qtc_plugin(CppTools
wrappablelineedit.cpp wrappablelineedit.h
)
if (WITH_TESTS)
target_sources(CppTools PRIVATE
extend_qtc_plugin(CppTools
CONDITION WITH_TESTS
SOURCES
cppcodegen_test.cpp
cppcompletion_test.cpp
cppheadersource_test.cpp
@@ -128,4 +129,3 @@ if (WITH_TESTS)
symbolsearcher_test.cpp
typehierarchybuilder_test.cpp
)
endif()

View File

@@ -95,16 +95,15 @@ add_qtc_plugin(Debugger
watchwindow.cpp watchwindow.h
)
if (WIN32)
target_sources(Debugger PRIVATE
registerpostmortemaction.cpp registerpostmortemaction.h
extend_qtc_plugin(Debugger
CONDITION WIN32
SOURCES registerpostmortemaction.cpp registerpostmortemaction.h
DEFINES UNICODE _UNICODE
)
target_compile_definitions(Debugger PRIVATE UNICODE _UNICODE)
endif()
if (WITH_TESTS)
target_sources(Debugger PRIVATE
extend_qtc_plugin(Debugger
CONDITION WITH_TESTS
SOURCES
debuggerunittests.qrc
unit-tests/simple/main.cpp
)
endif()

View File

@@ -36,6 +36,7 @@ add_qtc_plugin(Designer
settingspage.cpp settingspage.h
)
if (WITH_TESTS)
target_sources(Designer PRIVATE gotoslot_test.cpp)
endif()
extend_qtc_plugin(Designer
CONDITION WITH_TESTS AND TARGET Qt5::DesignerComponents AND TARGET Qt5::Designer
SOURCES gotoslot_test.cpp
)

View File

@@ -13,6 +13,7 @@ add_qtc_plugin(FakeVim
fakevimtr.h
)
if (WITH_TESTS)
target_sources(FakeVim PRIVATE fakevim_test.cpp)
endif()
extend_qtc_plugin(FakeVim
CONDITION WITH_TESTS
SOURCES fakevim_test.cpp
)

View File

@@ -16,6 +16,7 @@ add_qtc_plugin(GenericProjectManager
genericprojectwizard.cpp genericprojectwizard.h
)
if (WITH_TESTS)
target_sources(GenericProjectManager PRIVATE genericprojectplugin_test.cpp)
endif()
extend_qtc_plugin(GenericProjectManager
CONDITION WITH_TESTS
SOURCES genericprojectplugin_test.cpp
)

View File

@@ -29,17 +29,22 @@ add_qtc_plugin(Help
xbelsupport.cpp xbelsupport.h
)
if (APPLE)
find_library(FWWebKit WebKit)
find_library(FWAppKit AppKit)
target_link_libraries(Help PRIVATE ${FWWebKit} ${FWAppKit})
target_compile_definitions(Help PRIVATE QTC_MAC_NATIVE_HELPVIEWER)
target_sources(Help PRIVATE macwebkithelpviewer.h macwebkithelpviewer.mm)
endif()
extend_qtc_plugin(Help
CONDITION APPLE AND FWWebKit AND FWAppKit
DEPENDS ${FWWebKit} ${FWAppKit}
DEFINES QTC_MAC_NATIVE_HELPVIEWER
SOURCES
macwebkithelpviewer.h
macwebkithelpviewer.mm
)
find_package(Qt5WebEngineWidgets QUIET)
if (TARGET Qt5::WebEngineWidgets)
target_sources(Help PRIVATE webenginehelpviewer.cpp webenginehelpviewer.h)
target_link_libraries(Help PRIVATE Qt5::WebEngineWidgets)
endif()
extend_qtc_plugin(Help
CONDITION TARGET Qt5::WebEngineWidgets
DEPENDS Qt5::WebEngineWidgets
SOURCES
webenginehelpviewer.cpp
webenginehelpviewer.h
)

View File

@@ -26,8 +26,9 @@ add_qtc_plugin(Ios
simulatoroperationdialog.cpp simulatoroperationdialog.h simulatoroperationdialog.ui
)
if (APPLE)
find_library(FWCoreFoundation CoreFoundation)
find_library(FWIOKit IOKit)
target_link_libraries(Ios PRIVATE ${FWCoreFoundation} ${FWIOKit})
endif()
extend_qtc_plugin(Ios
CONDITION APPLE AND FWCoreFoundation AND FWIOKit
DEPENDS ${FWCoreFoundation} ${FWIOKit}
)

View File

@@ -32,10 +32,10 @@ add_qtc_plugin(PerfProfiler
perftracepointdialog.cpp perftracepointdialog.h perftracepointdialog.ui
)
if (WITH_TESTS)
target_sources(PerfProfiler PRIVATE
extend_qtc_plugin(PerfProfiler
CONDITION WITH_TESTS
SOURCES
tests/perfprofilertracefile_test.cpp tests/perfprofilertracefile_test.h
tests/perfresourcecounter_test.cpp tests/perfresourcecounter_test.h
tests/tests.qrc
)
endif()

View File

@@ -183,26 +183,31 @@ add_qtc_plugin(ProjectExplorer
if (TARGET libclang)
set(CLANG_BINDIR "$<TARGET_FILE_DIR:libclang>")
endif()
target_compile_definitions(ProjectExplorer PRIVATE CLANG_BINDIR="${CLANG_BINDIR}")
extend_qtc_plugin(ProjectExplorer
DEFINES "CLANG_BINDIR=\"${CLANG_BINDIR}\""
)
if (WIN32)
target_sources(ProjectExplorer PRIVATE
windebuginterface.cpp windebuginterface.h)
target_compile_definitions(ProjectExplorer PRIVATE UNICODE _UNICODE)
endif()
extend_qtc_plugin(ProjectExplorer
CONDITION WIN32
SOURCES windebuginterface.cpp windebuginterface.h
DEFINES UNICODE _UNICODE
)
if (journald)
target_sources(ProjectExplorer PRIVATE
journaldwatcher.cpp journaldwatcher.h)
target_compile_definitions(ProjectExplorer PRIVATE WITH_JOURNALD)
target_link_libraries(ProjectExplorer PRIVATE systemd)
endif()
extend_qtc_plugin(ProjectExplorer
CONDITION journald
DEPENDS systemd
SOURCES journaldwatcher.cpp journaldwatcher.h
DEFINES WITH_JOURNALD
)
if (WITH_TESTS)
target_sources(ProjectExplorer PRIVATE
extend_qtc_plugin(ProjectExplorer
CONDITION WITH_TESTS
SOURCES
jsonwizard/jsonwizard_test.cpp
outputparser_test.cpp outputparser_test.h
)
qtc_plugin_enabled(_projectexplorer_enabled ProjectExplorer)
if (WITH_TESTS AND _projectexplorer_enabled)
set_source_files_properties(jsonwizard/jsonwizard_test.cpp
PROPERTIES HEADER_FILE_ONLY ON
)

View File

@@ -35,6 +35,7 @@ if (APPLE)
endif()
add_qtc_plugin(componentsplugin
CONDITION TARGET QmlDesigner
DEPENDS Core QmlDesigner Utils Qt5::Qml
DEFINES COMPONENTS_LIBRARY
INCLUDES ${CMAKE_CURRENT_LIST_DIR}/designercore/include
@@ -51,6 +52,7 @@ add_qtc_plugin(componentsplugin
)
add_qtc_plugin(qtquickplugin
CONDITION TARGET QmlDesigner
DEPENDS Core QmlDesigner Utils Qt5::Qml
DEFINES QTQUICK_LIBRARY
INCLUDES ${CMAKE_CURRENT_LIST_DIR}/designercore/include
@@ -61,15 +63,9 @@ add_qtc_plugin(qtquickplugin
SKIP_DEBUG_CMAKE_FILE_CHECK
)
function(extend_qtc_plugin name directory)
foreach(source ${ARGN})
list(APPEND source_list ${directory}/${source})
endforeach()
target_sources(${name} PRIVATE ${source_list})
target_include_directories(${name} PUBLIC ${directory})
endfunction(extend_qtc_plugin)
extend_qtc_plugin(QmlDesigner ../../../share/qtcreator/qml/qmlpuppet/container
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX ../../../share/qtcreator/qml/qmlpuppet/container
SOURCES
addimportcontainer.cpp addimportcontainer.h
idcontainer.cpp idcontainer.h
imagecontainer.cpp imagecontainer.h
@@ -84,19 +80,23 @@ extend_qtc_plugin(QmlDesigner ../../../share/qtcreator/qml/qmlpuppet/container
)
if (UNIX)
extend_qtc_plugin(QmlDesigner ../../../share/qtcreator/qml/qmlpuppet/container
sharedmemory_unix.cpp
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX ../../../share/qtcreator/qml/qmlpuppet/container
SOURCES sharedmemory_unix.cpp
)
if (NOT APPLE)
target_link_libraries(QmlDesigner PRIVATE rt)
extend_qtc_plugin(QmlDesigner DEPENDS rt)
endif()
else()
extend_qtc_plugin(QmlDesigner ../../../share/qtcreator/qml/qmlpuppet/container
sharedmemory_qt.cpp
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX ../../../share/qtcreator/qml/qmlpuppet/container
SOURCES sharedmemory_qt.cpp
)
endif()
extend_qtc_plugin(QmlDesigner ../../../share/qtcreator/qml/qmlpuppet/commands
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX ../../../share/qtcreator/qml/qmlpuppet/commands
SOURCES
changeauxiliarycommand.cpp changeauxiliarycommand.h
changebindingscommand.cpp changebindingscommand.h
changefileurlcommand.cpp changefileurlcommand.h
@@ -125,7 +125,9 @@ extend_qtc_plugin(QmlDesigner ../../../share/qtcreator/qml/qmlpuppet/commands
valueschangedcommand.cpp valueschangedcommand.h
)
extend_qtc_plugin(QmlDesigner ../../../share/qtcreator/qml/qmlpuppet/interfaces
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX ../../../share/qtcreator/qml/qmlpuppet/interfaces
SOURCES
nodeinstanceserverinterface.cpp
commondefines.h
nodeinstanceclientinterface.h
@@ -133,11 +135,15 @@ extend_qtc_plugin(QmlDesigner ../../../share/qtcreator/qml/qmlpuppet/interfaces
nodeinstanceserverinterface.h
)
extend_qtc_plugin(QmlDesigner ../../../share/qtcreator/qml/qmlpuppet/types
enumeration.cpp enumeration.h
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX ../../../share/qtcreator/qml/qmlpuppet/types
SOURCES enumeration.cpp enumeration.h
)
extend_qtc_plugin(QmlDesigner components/componentcore
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX components/componentcore
PUBLIC_INCLUDES components/componentcore
SOURCES
abstractaction.cpp abstractaction.h
abstractactiongroup.cpp abstractactiongroup.h
actioninterface.h
@@ -160,12 +166,16 @@ extend_qtc_plugin(QmlDesigner components/componentcore
zoomaction.cpp zoomaction.h
)
extend_qtc_plugin(QmlDesigner components/debugview
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX components/debugview
SOURCES
debugview.cpp debugview.h
debugviewwidget.cpp debugviewwidget.h debugviewwidget.ui
)
extend_qtc_plugin(QmlDesigner components/formeditor
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX components/formeditor
SOURCES
abstractcustomtool.cpp abstractcustomtool.h
abstractformeditortool.cpp abstractformeditortool.h
anchorindicator.cpp anchorindicator.h
@@ -208,7 +218,9 @@ extend_qtc_plugin(QmlDesigner components/formeditor
toolbox.cpp toolbox.h
)
extend_qtc_plugin(QmlDesigner components/importmanager
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX components/importmanager
SOURCES
importlabel.cpp importlabel.h
importmanager.qrc
importmanagercombobox.cpp importmanagercombobox.h
@@ -216,7 +228,9 @@ extend_qtc_plugin(QmlDesigner components/importmanager
importswidget.cpp importswidget.h
)
extend_qtc_plugin(QmlDesigner components/integration
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX components/integration
SOURCES
componentaction.cpp componentaction.h
componentview.cpp componentview.h
designdocument.cpp designdocument.h
@@ -225,7 +239,9 @@ extend_qtc_plugin(QmlDesigner components/integration
utilitypanelcontroller.cpp utilitypanelcontroller.h
)
extend_qtc_plugin(QmlDesigner components/itemlibrary
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX components/itemlibrary
SOURCES
customfilesystemmodel.cpp customfilesystemmodel.h
itemlibrary.qrc
itemlibraryimageprovider.cpp itemlibraryimageprovider.h
@@ -238,7 +254,9 @@ extend_qtc_plugin(QmlDesigner components/itemlibrary
itemlibrarywidget.cpp itemlibrarywidget.h
)
extend_qtc_plugin(QmlDesigner components/navigator
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX components/navigator
SOURCES
iconcheckboxitemdelegate.cpp iconcheckboxitemdelegate.h
nameitemdelegate.cpp nameitemdelegate.h
navigator.qrc
@@ -249,7 +267,9 @@ extend_qtc_plugin(QmlDesigner components/navigator
navigatorwidget.cpp navigatorwidget.h
)
extend_qtc_plugin(QmlDesigner components/propertyeditor
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX components/propertyeditor
SOURCES
designerpropertymap.cpp designerpropertymap.h
fileresourcesmodel.cpp fileresourcesmodel.h
gradientmodel.cpp gradientmodel.h
@@ -268,24 +288,31 @@ extend_qtc_plugin(QmlDesigner components/propertyeditor
quick2propertyeditorview.cpp quick2propertyeditorview.h
)
extend_qtc_plugin(QmlDesigner components
resources/resources.qrc
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX components
SOURCES resources/resources.qrc
)
extend_qtc_plugin(QmlDesigner components/stateseditor
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX components/stateseditor
SOURCES
stateseditorimageprovider.cpp stateseditorimageprovider.h
stateseditormodel.cpp stateseditormodel.h
stateseditorview.cpp stateseditorview.h
stateseditorwidget.cpp stateseditorwidget.h
)
extend_qtc_plugin(QmlDesigner components/texteditor
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX components/texteditor
SOURCES
texteditorstatusbar.cpp texteditorstatusbar.h
texteditorview.cpp texteditorview.h
texteditorwidget.cpp texteditorwidget.h
)
extend_qtc_plugin(QmlDesigner designercore
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX designercore
SOURCES
exceptions/exception.cpp
exceptions/invalidargumentexception.cpp
exceptions/invalididexception.cpp
@@ -382,7 +409,9 @@ extend_qtc_plugin(QmlDesigner designercore
include/viewmanager.h
)
extend_qtc_plugin(QmlDesigner designercore/instances
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX designercore/instances
SOURCES
nodeinstance.cpp
nodeinstanceserverproxy.cpp nodeinstanceserverproxy.h
nodeinstanceview.cpp
@@ -391,7 +420,9 @@ extend_qtc_plugin(QmlDesigner designercore/instances
puppetdialog.cpp puppetdialog.h puppetdialog.ui
)
extend_qtc_plugin(QmlDesigner designercore
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX designercore
SOURCES
metainfo/itemlibraryinfo.cpp
metainfo/metainfo.cpp
metainfo/metainforeader.cpp
@@ -451,11 +482,14 @@ extend_qtc_plugin(QmlDesigner designercore
rewritertransaction.cpp rewritertransaction.h
)
extend_qtc_plugin(QmlDesigner qmldesignerextension
colortool/colortool.cpp colortool/colortool.h
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX qmldesignerextension/colortool
SOURCES colortool.cpp colortool.h
)
extend_qtc_plugin(QmlDesigner qmldesignerextension/connectioneditor
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX qmldesignerextension/connectioneditor
SOURCES
addnewbackenddialog.cpp addnewbackenddialog.h addnewbackenddialog.ui
backendmodel.cpp backendmodel.h
bindingmodel.cpp bindingmodel.h
@@ -467,7 +501,9 @@ extend_qtc_plugin(QmlDesigner qmldesignerextension/connectioneditor
dynamicpropertiesmodel.cpp dynamicpropertiesmodel.h
)
extend_qtc_plugin(QmlDesigner qmldesignerextension
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX qmldesignerextension
SOURCES
pathtool/controlpoint.cpp pathtool/controlpoint.h
pathtool/cubicsegment.cpp pathtool/cubicsegment.h
pathtool/pathitem.cpp pathtool/pathitem.h
@@ -485,7 +521,9 @@ extend_qtc_plugin(QmlDesigner qmldesignerextension
texttool/texttool.cpp texttool/texttool.h
)
extend_qtc_plugin(QmlDesigner qmldesignerextension/timelineeditor
extend_qtc_plugin(QmlDesigner
SOURCES_PREFIX qmldesignerextension/timelineeditor
SOURCES
canvas.cpp canvas.h
canvasstyledialog.cpp canvasstyledialog.h
easingcurve.cpp easingcurve.h

View File

@@ -20,6 +20,7 @@ add_qtc_plugin(QmlJSTools
qmljstoolssettings.cpp qmljstoolssettings.h
)
if (WITH_TESTS)
target_sources(QmlJSTools PRIVATE qmljstools_test.cpp)
endif()
extend_qtc_plugin(QmlJSTools
CONDITION WITH_TESTS
SOURCES qmljstools_test.cpp
)

View File

@@ -10,9 +10,9 @@ add_qtc_plugin(QmlPreview
qmlpreview_global.h
)
if (WITH_TESTS)
target_sources(QmlPreview PRIVATE
extend_qtc_plugin(QmlPreview
CONDITION WITH_TESTS
SOURCES
tests/qmlpreviewclient_test.cpp tests/qmlpreviewclient_test.h
tests/qmlpreviewplugin_test.cpp tests/qmlpreviewplugin_test.h
)
endif()

View File

@@ -47,8 +47,9 @@ add_qtc_plugin(QmlProfiler
scenegraphtimelinemodel.cpp scenegraphtimelinemodel.h
)
if (WITH_TESTS)
target_sources(QmlProfiler PRIVATE
extend_qtc_plugin(QmlProfiler
CONDITION WITH_TESTS
SOURCES
tests/debugmessagesmodel_test.cpp tests/debugmessagesmodel_test.h
tests/fakedebugserver.cpp tests/fakedebugserver.h
tests/flamegraphmodel_test.cpp tests/flamegraphmodel_test.h
@@ -72,4 +73,3 @@ if (WITH_TESTS)
tests/qmlprofilertraceview_test.cpp tests/qmlprofilertraceview_test.h
tests/tests.qrc
)
endif()

View File

@@ -102,6 +102,7 @@ add_qtc_plugin(TextEditor
typingsettings.cpp typingsettings.h
)
if (WITH_TESTS)
target_sources(TextEditor PRIVATE texteditor_test.cpp)
endif()
extend_qtc_plugin(TextEditor
CONDITION WITH_TESTS
SOURCES texteditor_test.cpp
)

View File

@@ -45,19 +45,19 @@ add_qtc_plugin(Valgrind
xmlprotocol/threadedparser.cpp xmlprotocol/threadedparser.h
)
if (WIN32)
target_compile_definitions(Valgrind PRIVATE UNICODE _UNICODE)
endif()
extend_qtc_plugin(Valgrind
CONDITION WIN32
DEFINES UNICODE _UNICODE
)
if (WITH_TESTS)
target_sources(Valgrind PRIVATE
extend_qtc_plugin(Valgrind
CONDITION WITH_TESTS
SOURCES
valgrindmemcheckparsertest.cpp valgrindmemcheckparsertest.h
valgrindtestrunnertest.cpp valgrindtestrunnertest.h
)
target_compile_definitions(Valgrind PRIVATE
DEFINES
PARSERTESTS_DATA_DIR="${CMAKE_CURRENT_SOURCE_DIR}/unit_testdata"
VALGRIND_FAKE_PATH="${PROJECT_SOURCE_DIR}/src/tools/valgrindfake"
TESTRUNNER_SRC_DIR="${PROJECT_SOURCE_DIR}/tests/auto/valgrind/memcheck/testapps"
TESTRUNNER_APP_DIR="${PROJECT_BINARY_DIR}/tests/auto/valgrind/memcheck/testapps"
)
endif()

View File

@@ -33,6 +33,7 @@ add_qtc_plugin(VcsBase
wizard/vcsjsextension.cpp wizard/vcsjsextension.h
)
if (WITH_TESTS)
target_compile_definitions(VcsBase PRIVATE SRC_DIR="${IDE_SOURCE_TREE}")
endif()
extend_qtc_plugin(VcsBase
CONDITION WITH_TESTS
DEFINES SRC_DIR="${IDE_SOURCE_TREE}"
)