forked from qt-creator/qt-creator
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:
@@ -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})
|
||||
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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
|
||||
)
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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
|
||||
)
|
||||
|
||||
@@ -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
|
||||
)
|
||||
|
||||
@@ -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
|
||||
)
|
||||
|
||||
@@ -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
|
||||
)
|
||||
|
||||
@@ -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}
|
||||
)
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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
|
||||
)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
)
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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
|
||||
)
|
||||
|
||||
@@ -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()
|
||||
|
||||
@@ -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}"
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user