diff options
author | Cristian Adam <cristian.adam@gmail.com> | 2019-05-12 22:20:56 +0200 |
---|---|---|
committer | Cristian Adam <cristian.adam@gmail.com> | 2019-05-17 13:33:28 +0000 |
commit | d855b84c5df923394ace3bb91dab379f7e0daa34 (patch) | |
tree | e184ccdf5724151465a1653f9fc308af43293de8 /src/libs | |
parent | f872a95fddd2690bb6953a17e48935c1b12d83d9 (diff) |
Qt Creator CMake port
Based on Tobias Hunger's work from a few months ago.
The CMake configuration needs libclang and Qt paths specified as
CMAKE_PREFIX_PATH.
Auto tests are run with "ctest". At the moment the pass rate is 87%.
Change-Id: Iba98e39bf22077d52706dce6c85986be67a6eab0
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Diffstat (limited to 'src/libs')
21 files changed, 1123 insertions, 131 deletions
diff --git a/src/libs/3rdparty/CMakeLists.txt b/src/libs/3rdparty/CMakeLists.txt new file mode 100644 index 0000000000..7cf97ab87f --- /dev/null +++ b/src/libs/3rdparty/CMakeLists.txt @@ -0,0 +1,2 @@ +add_subdirectory(cplusplus) +add_subdirectory(syntax-highlighting) diff --git a/src/libs/3rdparty/cplusplus/CMakeLists.txt b/src/libs/3rdparty/cplusplus/CMakeLists.txt new file mode 100644 index 0000000000..c9c9281718 --- /dev/null +++ b/src/libs/3rdparty/cplusplus/CMakeLists.txt @@ -0,0 +1,45 @@ +add_qtc_library(3rd_cplusplus OBJECT + PUBLIC_DEPENDS Qt5::Core Utils + DEFINES CPLUSPLUS_BUILD_LIB + INCLUDES "${CMAKE_SOURCE_DIR}/src/libs" + SOURCES + AST.cpp AST.h + ASTClone.cpp + ASTMatch0.cpp + ASTMatcher.cpp ASTMatcher.h + ASTPatternBuilder.h + ASTVisit.cpp + ASTVisitor.cpp ASTVisitor.h + ASTfwd.h + Bind.cpp Bind.h + CPlusPlus.h + CPlusPlusForwardDeclarations.h + Control.cpp Control.h + CoreTypes.cpp CoreTypes.h + DiagnosticClient.cpp DiagnosticClient.h + FullySpecifiedType.cpp FullySpecifiedType.h + Keywords.cpp + Lexer.cpp Lexer.h + LiteralTable.h + Literals.cpp Literals.h + Matcher.cpp Matcher.h + MemoryPool.cpp MemoryPool.h + Name.cpp Name.h + NameVisitor.cpp NameVisitor.h + Names.cpp Names.h + ObjectiveCAtKeywords.cpp + ObjectiveCTypeQualifiers.cpp ObjectiveCTypeQualifiers.h + Parser.cpp Parser.h + QtContextKeywords.cpp QtContextKeywords.h + SafeMatcher.cpp SafeMatcher.h + Scope.cpp Scope.h + Symbol.cpp Symbol.h + SymbolVisitor.h + Symbols.cpp Symbols.h + Templates.cpp Templates.h + Token.cpp Token.h + TranslationUnit.cpp TranslationUnit.h + Type.cpp Type.h + TypeVisitor.cpp TypeVisitor.h + cppassert.h +) diff --git a/src/libs/3rdparty/syntax-highlighting/CMakeLists.txt b/src/libs/3rdparty/syntax-highlighting/CMakeLists.txt index 49923fb26e..e849815098 100644 --- a/src/libs/3rdparty/syntax-highlighting/CMakeLists.txt +++ b/src/libs/3rdparty/syntax-highlighting/CMakeLists.txt @@ -1,134 +1,38 @@ -cmake_minimum_required(VERSION 3.0) - -set(KF5_VERSION "5.52.0") -project(KSyntaxHighlighting VERSION ${KF5_VERSION}) - -find_package(ECM 5.51.0 REQUIRED NO_MODULE) -set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR}) -if(POLICY CMP0063) - cmake_policy(SET CMP0063 NEW) -endif() - -include(FeatureSummary) -include(GenerateExportHeader) -include(ECMSetupVersion) -include(ECMGenerateHeaders) -include(ECMGeneratePriFile) -include(CMakePackageConfigHelpers) -include(ECMPoQmTools) -include(ECMQtDeclareLoggingCategory) -include(KDEInstallDirs) -include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE) -include(KDECMakeSettings) -include(ECMMarkNonGuiExecutable) -include(ECMAddQch) - - -ecm_setup_version(PROJECT - VARIABLE_PREFIX SyntaxHighlighting - VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/ksyntaxhighlighting_version.h" - PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5SyntaxHighlightingConfigVersion.cmake" +add_qtc_library(KSyntaxHighlighting STATIC + PUBLIC_INCLUDES autogenerated/ autogenerated/src/lib src/lib + PUBLIC_DEFINES KSYNTAXHIGHLIGHTING_LIBRARY + DEPENDS Qt5::Network Qt5::Gui + SOURCES + autogenerated/src/lib/ksyntaxhighlighting_logging.cpp autogenerated/src/lib/ksyntaxhighlighting_logging.h + autogenerated/ksyntaxhighlighting_version.h + + data/themes/theme-data.qrc + + src/lib/abstracthighlighter.cpp src/lib/abstracthighlighter.h src/lib/abstracthighlighter_p.h + src/lib/context.cpp src/lib/context_p.h + src/lib/contextswitch.cpp src/lib/contextswitch_p.h + src/lib/definition.cpp src/lib/definition.h + src/lib/definitiondownloader.cpp src/lib/definitiondownloader.h + src/lib/definitionref_p.h + src/lib/definition_p.h + src/lib/foldingregion.cpp src/lib/foldingregion.h + src/lib/format.cpp src/lib/format.h src/lib/format_p.h + src/lib/htmlhighlighter.cpp src/lib/htmlhighlighter.h + src/lib/keywordlist.cpp src/lib/keywordlist_p.h + src/lib/ksyntaxhighlighting_export.h + src/lib/matchresult_p.h + src/lib/repository.cpp src/lib/repository.h src/lib/repository_p.h + src/lib/rule.cpp src/lib/rule_p.h + src/lib/state.cpp src/lib/state.h src/lib/state_p.h + src/lib/syntaxhighlighter.cpp src/lib/syntaxhighlighter.h + src/lib/textstyledata_p.h + src/lib/theme.cpp src/lib/theme.h + src/lib/themedata.cpp src/lib/themedata_p.h + src/lib/wildcardmatcher.cpp src/lib/wildcardmatcher_p.h + src/lib/xml_p.h ) -# -# Dependencies -# -set(REQUIRED_QT_VERSION 5.8.0) -find_package(Qt5 ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED COMPONENTS Core Network Test) -option(KSYNTAXHIGHLIGHTING_USE_GUI "Build components depending on Qt5Gui" ON) -if(KSYNTAXHIGHLIGHTING_USE_GUI) - find_package(Qt5 ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED COMPONENTS Gui) -endif() -find_package(Qt5 ${REQUIRED_QT_VERSION} NO_MODULE QUIET OPTIONAL_COMPONENTS Widgets XmlPatterns) -set_package_properties(Qt5 PROPERTIES URL "http://qt-project.org/") -set_package_properties(Qt5Widgets PROPERTIES PURPOSE "Example application.") -set_package_properties(Qt5XmlPatterns PROPERTIES PURPOSE "Compile-time validation of syntax definition files.") - -find_package(Perl REQUIRED) -set_package_properties(Perl PROPERTIES PURPOSE "Auto-generate PHP syntax definition files.") - -# -# allow to install the "differently" licensed syntax xml files instead of putting them in a QRC and link them in -# -option(QRC_SYNTAX "Bundle the syntax definition files inside the library as resources" ON) -add_feature_info(SYNTAX_RESOURCE ${QRC_SYNTAX} "Bundle the syntax definition files inside the library as resources") - -# -# allow to turn of lookup for syntax files and themes via QStandardPaths -# -option(NO_STANDARD_PATHS "Skip lookup of syntax and theme definitions in QStandardPaths locations" OFF) -add_feature_info(FEATURE_NO_STANDARD_PATHS ${NO_STANDARD_PATHS} "Skip lookup of syntax and theme definitions in QStandardPaths locations") - -# -# API documentation -# -option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF) -add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)") - -# -# Translations -# -if (IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/po") - ecm_install_po_files_as_qm(po) -endif() - -# tell the framework if it shall use the syntax files from the resource -if (QRC_SYNTAX) - add_definitions(-DHAS_SYNTAX_RESOURCE) -endif() - -# skip standard paths? -if (NO_STANDARD_PATHS) - add_definitions(-DNO_STANDARD_PATHS) -endif() - -# -# Actually build the stuff -# -include_directories(${CMAKE_CURRENT_BINARY_DIR}) -add_subdirectory(data) -add_subdirectory(src) -if(TARGET Qt5::Gui) - add_subdirectory(examples) -endif() - -# -# CMake package config file generation -# -set(CMAKECONFIG_INSTALL_DIR "${CMAKECONFIG_INSTALL_PREFIX}/KF5SyntaxHighlighting") - -if (BUILD_QCH) - ecm_install_qch_export( - TARGETS KF5SyntaxHighlighting_QCH - FILE KF5SyntaxHighlightingQchTargets.cmake - DESTINATION "${CMAKECONFIG_INSTALL_DIR}" - COMPONENT Devel - ) - set(PACKAGE_INCLUDE_QCHTARGETS "include(\"\${CMAKE_CURRENT_LIST_DIR}/KF5SyntaxHighlightingQchTargets.cmake\")") -endif() - -configure_package_config_file( - "${CMAKE_CURRENT_SOURCE_DIR}/KF5SyntaxHighlightingConfig.cmake.in" - "${CMAKE_CURRENT_BINARY_DIR}/KF5SyntaxHighlightingConfig.cmake" - INSTALL_DESTINATION "${CMAKECONFIG_INSTALL_DIR}" +install( + DIRECTORY data/ + DESTINATION "${IDE_DATA_PATH}/generic-highlighter/" ) - -install(FILES - "${CMAKE_CURRENT_BINARY_DIR}/KF5SyntaxHighlightingConfig.cmake" - "${CMAKE_CURRENT_BINARY_DIR}/KF5SyntaxHighlightingConfigVersion.cmake" - DESTINATION "${CMAKECONFIG_INSTALL_DIR}" - COMPONENT Devel) - -if(TARGET KF5SyntaxHighlighting) - install(EXPORT KF5SyntaxHighlightingTargets - DESTINATION "${CMAKECONFIG_INSTALL_DIR}" - FILE KF5SyntaxHighlightingTargets.cmake - NAMESPACE KF5::) -endif() - -install(FILES "${CMAKE_CURRENT_BINARY_DIR}/ksyntaxhighlighting_version.h" - DESTINATION "${KDE_INSTALL_INCLUDEDIR_KF5}" - COMPONENT Devel) -install(FILES org_kde_ksyntaxhighlighting.categories DESTINATION ${KDE_INSTALL_CONFDIR}) - -feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES) diff --git a/src/libs/3rdparty/syntax-highlighting/CMakeLists.txt.kde b/src/libs/3rdparty/syntax-highlighting/CMakeLists.txt.kde new file mode 100644 index 0000000000..49923fb26e --- /dev/null +++ b/src/libs/3rdparty/syntax-highlighting/CMakeLists.txt.kde @@ -0,0 +1,134 @@ +cmake_minimum_required(VERSION 3.0) + +set(KF5_VERSION "5.52.0") +project(KSyntaxHighlighting VERSION ${KF5_VERSION}) + +find_package(ECM 5.51.0 REQUIRED NO_MODULE) +set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR}) +if(POLICY CMP0063) + cmake_policy(SET CMP0063 NEW) +endif() + +include(FeatureSummary) +include(GenerateExportHeader) +include(ECMSetupVersion) +include(ECMGenerateHeaders) +include(ECMGeneratePriFile) +include(CMakePackageConfigHelpers) +include(ECMPoQmTools) +include(ECMQtDeclareLoggingCategory) +include(KDEInstallDirs) +include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE) +include(KDECMakeSettings) +include(ECMMarkNonGuiExecutable) +include(ECMAddQch) + + +ecm_setup_version(PROJECT + VARIABLE_PREFIX SyntaxHighlighting + VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/ksyntaxhighlighting_version.h" + PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5SyntaxHighlightingConfigVersion.cmake" +) + +# +# Dependencies +# +set(REQUIRED_QT_VERSION 5.8.0) +find_package(Qt5 ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED COMPONENTS Core Network Test) +option(KSYNTAXHIGHLIGHTING_USE_GUI "Build components depending on Qt5Gui" ON) +if(KSYNTAXHIGHLIGHTING_USE_GUI) + find_package(Qt5 ${REQUIRED_QT_VERSION} NO_MODULE REQUIRED COMPONENTS Gui) +endif() +find_package(Qt5 ${REQUIRED_QT_VERSION} NO_MODULE QUIET OPTIONAL_COMPONENTS Widgets XmlPatterns) +set_package_properties(Qt5 PROPERTIES URL "http://qt-project.org/") +set_package_properties(Qt5Widgets PROPERTIES PURPOSE "Example application.") +set_package_properties(Qt5XmlPatterns PROPERTIES PURPOSE "Compile-time validation of syntax definition files.") + +find_package(Perl REQUIRED) +set_package_properties(Perl PROPERTIES PURPOSE "Auto-generate PHP syntax definition files.") + +# +# allow to install the "differently" licensed syntax xml files instead of putting them in a QRC and link them in +# +option(QRC_SYNTAX "Bundle the syntax definition files inside the library as resources" ON) +add_feature_info(SYNTAX_RESOURCE ${QRC_SYNTAX} "Bundle the syntax definition files inside the library as resources") + +# +# allow to turn of lookup for syntax files and themes via QStandardPaths +# +option(NO_STANDARD_PATHS "Skip lookup of syntax and theme definitions in QStandardPaths locations" OFF) +add_feature_info(FEATURE_NO_STANDARD_PATHS ${NO_STANDARD_PATHS} "Skip lookup of syntax and theme definitions in QStandardPaths locations") + +# +# API documentation +# +option(BUILD_QCH "Build API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)" OFF) +add_feature_info(QCH ${BUILD_QCH} "API documentation in QCH format (for e.g. Qt Assistant, Qt Creator & KDevelop)") + +# +# Translations +# +if (IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/po") + ecm_install_po_files_as_qm(po) +endif() + +# tell the framework if it shall use the syntax files from the resource +if (QRC_SYNTAX) + add_definitions(-DHAS_SYNTAX_RESOURCE) +endif() + +# skip standard paths? +if (NO_STANDARD_PATHS) + add_definitions(-DNO_STANDARD_PATHS) +endif() + +# +# Actually build the stuff +# +include_directories(${CMAKE_CURRENT_BINARY_DIR}) +add_subdirectory(data) +add_subdirectory(src) +if(TARGET Qt5::Gui) + add_subdirectory(examples) +endif() + +# +# CMake package config file generation +# +set(CMAKECONFIG_INSTALL_DIR "${CMAKECONFIG_INSTALL_PREFIX}/KF5SyntaxHighlighting") + +if (BUILD_QCH) + ecm_install_qch_export( + TARGETS KF5SyntaxHighlighting_QCH + FILE KF5SyntaxHighlightingQchTargets.cmake + DESTINATION "${CMAKECONFIG_INSTALL_DIR}" + COMPONENT Devel + ) + set(PACKAGE_INCLUDE_QCHTARGETS "include(\"\${CMAKE_CURRENT_LIST_DIR}/KF5SyntaxHighlightingQchTargets.cmake\")") +endif() + +configure_package_config_file( + "${CMAKE_CURRENT_SOURCE_DIR}/KF5SyntaxHighlightingConfig.cmake.in" + "${CMAKE_CURRENT_BINARY_DIR}/KF5SyntaxHighlightingConfig.cmake" + INSTALL_DESTINATION "${CMAKECONFIG_INSTALL_DIR}" +) + +install(FILES + "${CMAKE_CURRENT_BINARY_DIR}/KF5SyntaxHighlightingConfig.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/KF5SyntaxHighlightingConfigVersion.cmake" + DESTINATION "${CMAKECONFIG_INSTALL_DIR}" + COMPONENT Devel) + +if(TARGET KF5SyntaxHighlighting) + install(EXPORT KF5SyntaxHighlightingTargets + DESTINATION "${CMAKECONFIG_INSTALL_DIR}" + FILE KF5SyntaxHighlightingTargets.cmake + NAMESPACE KF5::) +endif() + +install(FILES "${CMAKE_CURRENT_BINARY_DIR}/ksyntaxhighlighting_version.h" + DESTINATION "${KDE_INSTALL_INCLUDEDIR_KF5}" + COMPONENT Devel) +install(FILES org_kde_ksyntaxhighlighting.categories DESTINATION ${KDE_INSTALL_CONFDIR}) + +feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES) diff --git a/src/libs/CMakeLists.txt b/src/libs/CMakeLists.txt new file mode 100644 index 0000000000..52cc1d35a9 --- /dev/null +++ b/src/libs/CMakeLists.txt @@ -0,0 +1,21 @@ +add_subdirectory(3rdparty) + +add_subdirectory(aggregation) +add_subdirectory(extensionsystem) +add_subdirectory(utils) +add_subdirectory(languageutils) +add_subdirectory(cplusplus) +add_subdirectory(modelinglib) +add_subdirectory(qmljs) +add_subdirectory(qmldebug) +add_subdirectory(qmleditorwidgets) +add_subdirectory(glsl) +add_subdirectory(languageserverprotocol) +add_subdirectory(ssh) +add_subdirectory(sqlite) +add_subdirectory(clangsupport) +add_subdirectory(tracing) + +if (WIN32) + add_subdirectory(qtcreatorcdbext) +endif() diff --git a/src/libs/aggregation/CMakeLists.txt b/src/libs/aggregation/CMakeLists.txt new file mode 100644 index 0000000000..6871c9ab35 --- /dev/null +++ b/src/libs/aggregation/CMakeLists.txt @@ -0,0 +1,6 @@ +add_qtc_library(Aggregation + DEPENDS Qt5::Core + SOURCES + aggregate.cpp aggregate.h + aggregation_global.h +) diff --git a/src/libs/clangsupport/CMakeLists.txt b/src/libs/clangsupport/CMakeLists.txt new file mode 100644 index 0000000000..f4731397c7 --- /dev/null +++ b/src/libs/clangsupport/CMakeLists.txt @@ -0,0 +1,138 @@ +add_qtc_library(ClangSupport + PUBLIC_DEPENDS Utils Sqlite Qt5::Core Qt5::Network + PUBLIC_INCLUDES "${CMAKE_CURRENT_LIST_DIR}" + PUBLIC_DEFINES + CLANG_VERSION="${CLANG_VERSION}" + CLANG_RESOURCE_DIR="${CLANG_RESOURCE_DIR}" + CLANG_BINDIR="${CLANG_BIN_DIR}" + DEFINES CLANGSUPPORT_BUILD_LIB + SOURCES + alivemessage.cpp alivemessage.h + annotationsmessage.cpp annotationsmessage.h + baseserverproxy.cpp baseserverproxy.h + cancelmessage.cpp cancelmessage.h + changedfilepathcompressor.h + clangcodemodelclientinterface.cpp clangcodemodelclientinterface.h + clangcodemodelclientmessages.h + clangcodemodelclientproxy.cpp clangcodemodelclientproxy.h + clangcodemodelconnectionclient.cpp clangcodemodelconnectionclient.h + clangcodemodelserverinterface.cpp clangcodemodelserverinterface.h + clangcodemodelservermessages.h + clangcodemodelserverproxy.cpp clangcodemodelserverproxy.h + clangpathwatcher.h + clangpathwatcherinterface.h + clangpathwatchernotifier.h + clangrefactoringclientmessages.h + clangrefactoringmessages.h + clangrefactoringservermessages.h + clangsupport_global.h + clangsupportdebugutils.cpp clangsupportdebugutils.h + clangsupportexceptions.h + codecompletion.cpp codecompletion.h + codecompletionchunk.cpp codecompletionchunk.h + commandlinebuilder.h + compilermacro.h + completionsmessage.cpp completionsmessage.h + connectionclient.cpp connectionclient.h + connectionserver.cpp connectionserver.h + diagnosticcontainer.cpp diagnosticcontainer.h + documentschangedmessage.cpp documentschangedmessage.h + documentsclosedmessage.cpp documentsclosedmessage.h + documentsopenedmessage.cpp documentsopenedmessage.h + documentvisibilitychangedmessage.cpp documentvisibilitychangedmessage.h + dynamicastmatcherdiagnosticcontainer.cpp dynamicastmatcherdiagnosticcontainer.h + dynamicastmatcherdiagnosticcontextcontainer.cpp dynamicastmatcherdiagnosticcontextcontainer.h + dynamicastmatcherdiagnosticmessagecontainer.cpp dynamicastmatcherdiagnosticmessagecontainer.h + dynamicmatcherdiagnostics.h + echomessage.cpp echomessage.h + endmessage.cpp endmessage.h + environment.h + executeinloop.h + filecontainer.cpp filecontainer.h + filecontainerv2.cpp filecontainerv2.h + filepath.cpp filepath.h + filepathcache.h + filepathcaching.cpp filepathcaching.h + filepathcachingfwd.h + filepathcachinginterface.h + filepathexceptions.h + filepathid.cpp filepathid.h + filepathstorage.h + filepathstoragesources.h + filepathstoragesqlitestatementfactory.h + filepathview.h + fixitcontainer.cpp fixitcontainer.h + followsymbolmessage.cpp followsymbolmessage.h + generatedfiles.cpp generatedfiles.h + generatedfilesinterface.h + idpaths.h + includesearchpath.h + ipcclientinterface.h + ipcclientprovider.h + ipcinterface.h + ipcserverinterface.cpp ipcserverinterface.h + lineprefixer.cpp lineprefixer.h + messageenvelop.cpp messageenvelop.h + modifiedtimechecker.h + modifiedtimecheckerinterface.h + nativefilepath.h + pchmanagerclientinterface.cpp pchmanagerclientinterface.h + pchmanagerclientproxy.cpp pchmanagerclientproxy.h + pchmanagerserverinterface.cpp pchmanagerserverinterface.h + pchmanagerserverproxy.cpp pchmanagerserverproxy.h + pchpaths.h + precompiledheadersupdatedmessage.cpp precompiledheadersupdatedmessage.h + processcreator.cpp processcreator.h + processexception.cpp processexception.h + processhandle.h + processstartedevent.cpp processstartedevent.h + progresscounter.h + progressmessage.h + projectmanagementserverinterface.h + projectpartartefact.cpp projectpartartefact.h + projectpartcontainer.cpp projectpartcontainer.h + projectpartid.h + projectpartpch.cpp projectpartpch.h + projectpartpchproviderinterface.h + projectpartsstorage.h + projectpartsstorageinterface.h + readmessageblock.cpp readmessageblock.h + refactoringclientinterface.cpp refactoringclientinterface.h + refactoringclientproxy.cpp refactoringclientproxy.h + refactoringdatabaseinitializer.h + refactoringserverinterface.cpp refactoringserverinterface.h + refactoringserverproxy.cpp refactoringserverproxy.h + referencesmessage.cpp referencesmessage.h + removegeneratedfilesmessage.cpp removegeneratedfilesmessage.h + removeprojectpartsmessage.h + requestannotationsmessage.cpp requestannotationsmessage.h + requestcompletionsmessage.cpp requestcompletionsmessage.h + requestfollowsymbolmessage.cpp requestfollowsymbolmessage.h + requestreferencesmessage.cpp requestreferencesmessage.h + requestsourcelocationforrenamingmessage.cpp requestsourcelocationforrenamingmessage.h + requestsourcerangesanddiagnosticsforquerymessage.cpp requestsourcerangesanddiagnosticsforquerymessage.h + requestsourcerangesforquerymessage.cpp requestsourcerangesforquerymessage.h + requesttooltipmessage.cpp requesttooltipmessage.h + sourceentry.h + sourcelocationcontainer.cpp sourcelocationcontainer.h + sourcelocationcontainerv2.cpp sourcelocationcontainerv2.h + sourcelocationscontainer.cpp sourcelocationscontainer.h + sourcelocationsforrenamingmessage.cpp sourcelocationsforrenamingmessage.h + sourcerangecontainer.cpp sourcerangecontainer.h + sourcerangecontainerv2.cpp sourcerangecontainerv2.h + sourcerangesanddiagnosticsforquerymessage.cpp sourcerangesanddiagnosticsforquerymessage.h + sourcerangescontainer.cpp sourcerangescontainer.h + sourcerangesforquerymessage.cpp sourcerangesforquerymessage.h + sourcerangewithtextcontainer.cpp sourcerangewithtextcontainer.h + stringcache.h + stringcachealgorithms.h + stringcachefwd.h + tokeninfocontainer.cpp tokeninfocontainer.h + tooltipinfo.cpp tooltipinfo.h + tooltipmessage.cpp tooltipmessage.h + unsavedfilesremovedmessage.cpp unsavedfilesremovedmessage.h + unsavedfilesupdatedmessage.cpp unsavedfilesupdatedmessage.h + updategeneratedfilesmessage.cpp updategeneratedfilesmessage.h + updateprojectpartsmessage.cpp updateprojectpartsmessage.h + writemessageblock.cpp writemessageblock.h +) diff --git a/src/libs/cplusplus/CMakeLists.txt b/src/libs/cplusplus/CMakeLists.txt new file mode 100644 index 0000000000..593d809394 --- /dev/null +++ b/src/libs/cplusplus/CMakeLists.txt @@ -0,0 +1,44 @@ +# TODO: Support static build, currently being done with CPLUSPLUS_BUILD_STATIC_LIB +# -- if really needed that is. +# TODO: Make Qt5::Gui optional -- if really needed that is. + +add_qtc_library(CPlusPlus + DEPENDS Utils + DEFINES CPLUSPLUS_BUILD_LIB + PUBLIC_DEPENDS 3rd_cplusplus Qt5::Concurrent Qt5::Gui + PUBLIC_INCLUDES "${CMAKE_SOURCE_DIR}/src/libs/3rdparty" + SOURCES + ASTParent.cpp ASTParent.h + ASTPath.cpp ASTPath.h + AlreadyConsideredClassContainer.h + BackwardsScanner.cpp BackwardsScanner.h + CppDocument.cpp CppDocument.h + CppRewriter.cpp CppRewriter.h + DependencyTable.cpp DependencyTable.h + DeprecatedGenTemplateInstance.cpp DeprecatedGenTemplateInstance.h + ExpressionUnderCursor.cpp ExpressionUnderCursor.h + FastPreprocessor.cpp FastPreprocessor.h + FindUsages.cpp FindUsages.h + Icons.cpp Icons.h + LookupContext.cpp LookupContext.h + LookupItem.cpp LookupItem.h + Macro.cpp Macro.h + MatchingText.cpp MatchingText.h + NamePrettyPrinter.cpp NamePrettyPrinter.h + Overview.cpp Overview.h + PPToken.cpp PPToken.h + PreprocessorClient.cpp PreprocessorClient.h + PreprocessorEnvironment.cpp PreprocessorEnvironment.h + ResolveExpression.cpp ResolveExpression.h + SimpleLexer.cpp SimpleLexer.h + SnapshotSymbolVisitor.cpp SnapshotSymbolVisitor.h + SymbolNameVisitor.cpp SymbolNameVisitor.h + TypeOfExpression.cpp TypeOfExpression.h + TypePrettyPrinter.cpp TypePrettyPrinter.h + cppmodelmanagerbase.cpp cppmodelmanagerbase.h + findcdbbreakpoint.cpp findcdbbreakpoint.h + pp-cctype.h pp-engine.cpp + pp-engine.h pp-scanner.cpp + pp-scanner.h + pp.h +) diff --git a/src/libs/extensionsystem/CMakeLists.txt b/src/libs/extensionsystem/CMakeLists.txt new file mode 100644 index 0000000000..864c57c1ae --- /dev/null +++ b/src/libs/extensionsystem/CMakeLists.txt @@ -0,0 +1,16 @@ +add_qtc_library(ExtensionSystem + DEPENDS Aggregation Utils Qt5::Core Qt5::Widgets + PUBLIC_DEPENDS Qt5::Core + SOURCES + extensionsystem_global.h + invoker.cpp invoker.h + iplugin.cpp iplugin.h iplugin_p.h + optionsparser.cpp optionsparser.h + plugindetailsview.cpp plugindetailsview.h plugindetailsview.ui + pluginerroroverview.cpp pluginerroroverview.h pluginerroroverview.ui + pluginerrorview.cpp pluginerrorview.h pluginerrorview.ui + pluginmanager.cpp pluginmanager.h pluginmanager_p.h + pluginspec.cpp pluginspec.h pluginspec_p.h + pluginview.cpp pluginview.h + SKIP_AUTOMOC pluginmanager.cpp +) diff --git a/src/libs/glsl/CMakeLists.txt b/src/libs/glsl/CMakeLists.txt new file mode 100644 index 0000000000..e5fcb3692b --- /dev/null +++ b/src/libs/glsl/CMakeLists.txt @@ -0,0 +1,19 @@ +add_qtc_library(GLSL + DEPENDS Qt5::Core + SOURCES + glsl.h + glslast.cpp glslast.h + glslastdump.cpp glslastdump.h + glslastvisitor.cpp glslastvisitor.h + glslengine.cpp glslengine.h + glslkeywords.cpp + glsllexer.cpp glsllexer.h + glslmemorypool.cpp glslmemorypool.h + glslparser.cpp glslparser.h + glslparsertable.cpp glslparsertable_p.h + glslsemantic.cpp glslsemantic.h + glslsymbol.cpp glslsymbol.h + glslsymbols.cpp glslsymbols.h + glsltype.cpp glsltype.h + glsltypes.cpp glsltypes.h +) diff --git a/src/libs/languageserverprotocol/CMakeLists.txt b/src/libs/languageserverprotocol/CMakeLists.txt new file mode 100644 index 0000000000..9ad446817f --- /dev/null +++ b/src/libs/languageserverprotocol/CMakeLists.txt @@ -0,0 +1,23 @@ +add_qtc_library(LanguageServerProtocol + DEPENDS Utils + SOURCES + basemessage.cpp basemessage.h + client.cpp client.h + clientcapabilities.cpp clientcapabilities.h + completion.cpp completion.h + diagnostics.cpp diagnostics.h + icontent.h + initializemessages.cpp initializemessages.h + jsonkeys.h + jsonobject.cpp jsonobject.h + jsonrpcmessages.cpp jsonrpcmessages.h + languagefeatures.cpp languagefeatures.h + languageserverprotocol_global.h + lsptypes.cpp lsptypes.h + lsputils.cpp lsputils.h + messages.cpp messages.h + servercapabilities.cpp servercapabilities.h + shutdownmessages.cpp shutdownmessages.h + textsynchronization.cpp textsynchronization.h + workspace.cpp workspace.h +) diff --git a/src/libs/languageutils/CMakeLists.txt b/src/libs/languageutils/CMakeLists.txt new file mode 100644 index 0000000000..0cc47e7c60 --- /dev/null +++ b/src/libs/languageutils/CMakeLists.txt @@ -0,0 +1,7 @@ +add_qtc_library(LanguageUtils + PUBLIC_DEPENDS Qt5::Core + SOURCES + componentversion.cpp componentversion.h + fakemetaobject.cpp fakemetaobject.h + languageutils_global.h +) diff --git a/src/libs/modelinglib/CMakeLists.txt b/src/libs/modelinglib/CMakeLists.txt new file mode 100644 index 0000000000..7b09c932e4 --- /dev/null +++ b/src/libs/modelinglib/CMakeLists.txt @@ -0,0 +1,196 @@ +add_qtc_library(Modeling + DEFINES MODELING_LIBRARY + DEPENDS Qt5::Widgets Utils + PUBLIC_DEPENDS OptionalSvg + INCLUDES qtserialization/inc + PUBLIC_INCLUDES "${CMAKE_CURRENT_LIST_DIR}" + SOURCES + qmt/config/configcontroller.cpp qmt/config/configcontroller.h + qmt/config/sourcepos.cpp qmt/config/sourcepos.h + qmt/config/stereotypedefinitionparser.cpp qmt/config/stereotypedefinitionparser.h + qmt/config/stringtextsource.cpp qmt/config/stringtextsource.h + qmt/config/textscanner.cpp qmt/config/textscanner.h + qmt/config/textsource.h + qmt/config/token.cpp qmt/config/token.h + qmt/controller/container.h + qmt/controller/namecontroller.cpp qmt/controller/namecontroller.h + qmt/controller/references.h + qmt/controller/selection.cpp qmt/controller/selection.h + qmt/controller/undocommand.cpp qmt/controller/undocommand.h + qmt/controller/undocontroller.cpp qmt/controller/undocontroller.h + qmt/diagram_controller/dclonevisitor.cpp qmt/diagram_controller/dclonevisitor.h + qmt/diagram_controller/dcontainer.h + qmt/diagram_controller/dfactory.cpp qmt/diagram_controller/dfactory.h + qmt/diagram_controller/dflatassignmentvisitor.cpp qmt/diagram_controller/dflatassignmentvisitor.h + qmt/diagram_controller/diagramcontroller.cpp qmt/diagram_controller/diagramcontroller.h + qmt/diagram_controller/dreferences.h + qmt/diagram_controller/dselection.h + qmt/diagram_controller/dupdatevisitor.cpp qmt/diagram_controller/dupdatevisitor.h + qmt/diagram_controller/dvoidvisitor.cpp qmt/diagram_controller/dvoidvisitor.h + qmt/diagram/dannotation.cpp qmt/diagram/dannotation.h + qmt/diagram/dassociation.cpp qmt/diagram/dassociation.h + qmt/diagram/dboundary.cpp qmt/diagram/dboundary.h + qmt/diagram/dclass.cpp qmt/diagram/dclass.h + qmt/diagram/dcomponent.cpp qmt/diagram/dcomponent.h + qmt/diagram/dconnection.cpp qmt/diagram/dconnection.h + qmt/diagram/dconstvisitor.h + qmt/diagram/ddependency.cpp qmt/diagram/ddependency.h + qmt/diagram/ddiagram.cpp qmt/diagram/ddiagram.h + qmt/diagram/delement.cpp qmt/diagram/delement.h + qmt/diagram/dinheritance.cpp qmt/diagram/dinheritance.h + qmt/diagram/ditem.cpp qmt/diagram/ditem.h + qmt/diagram/dobject.cpp qmt/diagram/dobject.h + qmt/diagram/dpackage.cpp qmt/diagram/dpackage.h + qmt/diagram/drelation.cpp qmt/diagram/drelation.h + qmt/diagram/dswimlane.cpp qmt/diagram/dswimlane.h + qmt/diagram/dvisitor.h + qmt/diagram_scene/capabilities/alignable.h + qmt/diagram_scene/capabilities/editable.h + qmt/diagram_scene/capabilities/intersectionable.h + qmt/diagram_scene/capabilities/latchable.h + qmt/diagram_scene/capabilities/moveable.h + qmt/diagram_scene/capabilities/relationable.h + qmt/diagram_scene/capabilities/resizable.h + qmt/diagram_scene/capabilities/selectable.h + qmt/diagram_scene/capabilities/windable.h + qmt/diagram_scene/diagramgraphicsscene.cpp qmt/diagram_scene/diagramgraphicsscene.h + qmt/diagram_scene/diagramsceneconstants.h + qmt/diagram_scene/diagramscenemodel.cpp qmt/diagram_scene/diagramscenemodel.h + qmt/diagram_scene/diagramscenemodelitemvisitors.cpp qmt/diagram_scene/diagramscenemodelitemvisitors.h + qmt/diagram_scene/items/annotationitem.cpp qmt/diagram_scene/items/annotationitem.h + qmt/diagram_scene/items/associationitem.cpp qmt/diagram_scene/items/associationitem.h + qmt/diagram_scene/items/boundaryitem.cpp qmt/diagram_scene/items/boundaryitem.h + qmt/diagram_scene/items/classitem.cpp qmt/diagram_scene/items/classitem.h + qmt/diagram_scene/items/componentitem.cpp qmt/diagram_scene/items/componentitem.h + qmt/diagram_scene/items/connectionitem.cpp qmt/diagram_scene/items/connectionitem.h + qmt/diagram_scene/items/diagramitem.cpp qmt/diagram_scene/items/diagramitem.h + qmt/diagram_scene/items/itemitem.cpp qmt/diagram_scene/items/itemitem.h + qmt/diagram_scene/items/objectitem.cpp qmt/diagram_scene/items/objectitem.h + qmt/diagram_scene/items/packageitem.cpp qmt/diagram_scene/items/packageitem.h + qmt/diagram_scene/items/relationitem.cpp qmt/diagram_scene/items/relationitem.h + qmt/diagram_scene/items/stereotypedisplayvisitor.cpp qmt/diagram_scene/items/stereotypedisplayvisitor.h + qmt/diagram_scene/items/swimlaneitem.cpp qmt/diagram_scene/items/swimlaneitem.h + qmt/diagram_scene/latchcontroller.cpp qmt/diagram_scene/latchcontroller.h + qmt/diagram_scene/parts/alignbuttonsitem.cpp qmt/diagram_scene/parts/alignbuttonsitem.h + qmt/diagram_scene/parts/alignlineitem.cpp qmt/diagram_scene/parts/alignlineitem.h + qmt/diagram_scene/parts/arrowitem.cpp qmt/diagram_scene/parts/arrowitem.h + qmt/diagram_scene/parts/contextlabelitem.cpp qmt/diagram_scene/parts/contextlabelitem.h + qmt/diagram_scene/parts/customiconitem.cpp qmt/diagram_scene/parts/customiconitem.h + qmt/diagram_scene/parts/editabletextitem.cpp qmt/diagram_scene/parts/editabletextitem.h + qmt/diagram_scene/parts/pathselectionitem.cpp qmt/diagram_scene/parts/pathselectionitem.h + qmt/diagram_scene/parts/rectangularselectionitem.cpp qmt/diagram_scene/parts/rectangularselectionitem.h + qmt/diagram_scene/parts/relationstarter.cpp qmt/diagram_scene/parts/relationstarter.h + qmt/diagram_scene/parts/stereotypesitem.cpp qmt/diagram_scene/parts/stereotypesitem.h + qmt/diagram_scene/parts/templateparameterbox.cpp qmt/diagram_scene/parts/templateparameterbox.h + qmt/diagram_ui/diagram_mime_types.h + qmt/diagram_ui/diagramsmanager.cpp qmt/diagram_ui/diagramsmanager.h + qmt/diagram_ui/diagramsviewinterface.h + qmt/diagram_ui/sceneinspector.cpp qmt/diagram_ui/sceneinspector.h + qmt/diagram_widgets_ui/diagramsview.cpp qmt/diagram_widgets_ui/diagramsview.h + qmt/diagram_widgets_ui/diagramview.cpp qmt/diagram_widgets_ui/diagramview.h + qmt/diagram_widgets_ui/stackeddiagramsview.cpp qmt/diagram_widgets_ui/stackeddiagramsview.h + qmt/document_controller/documentcontroller.cpp qmt/document_controller/documentcontroller.h + qmt/infrastructure/contextmenuaction.cpp qmt/infrastructure/contextmenuaction.h + qmt/infrastructure/exceptions.cpp qmt/infrastructure/exceptions.h + qmt/infrastructure/geometryutilities.cpp qmt/infrastructure/geometryutilities.h + qmt/infrastructure/handle.h + qmt/infrastructure/handles.h + qmt/infrastructure/ioexceptions.cpp qmt/infrastructure/ioexceptions.h + qmt/infrastructure/qcompressedfile.cpp qmt/infrastructure/qcompressedfile.h + qmt/infrastructure/qmtassert.h + qmt/infrastructure/qmt_global.h + qmt/infrastructure/uid.h + qmt/model_controller/mchildrenvisitor.cpp qmt/model_controller/mchildrenvisitor.h + qmt/model_controller/mclonevisitor.cpp qmt/model_controller/mclonevisitor.h + qmt/model_controller/mcontainer.h + qmt/model_controller/mflatassignmentvisitor.cpp qmt/model_controller/mflatassignmentvisitor.h + qmt/model_controller/modelcontroller.cpp qmt/model_controller/modelcontroller.h + qmt/model_controller/mreferences.h + qmt/model_controller/mselection.h + qmt/model_controller/mvoidvisitor.cpp qmt/model_controller/mvoidvisitor.h + qmt/model/massociation.cpp qmt/model/massociation.h + qmt/model/mcanvasdiagram.cpp qmt/model/mcanvasdiagram.h + qmt/model/mclass.cpp qmt/model/mclass.h + qmt/model/mclassmember.cpp qmt/model/mclassmember.h + qmt/model/mcomponent.cpp qmt/model/mcomponent.h + qmt/model/mconnection.cpp qmt/model/mconnection.h + qmt/model/mconstvisitor.h + qmt/model/mdependency.cpp qmt/model/mdependency.h + qmt/model/mdiagram.cpp qmt/model/mdiagram.h + qmt/model/melement.cpp qmt/model/melement.h + qmt/model/minheritance.cpp qmt/model/minheritance.h + qmt/model/mitem.cpp qmt/model/mitem.h + qmt/model/mobject.cpp qmt/model/mobject.h + qmt/model/mpackage.cpp qmt/model/mpackage.h + qmt/model/mrelation.cpp qmt/model/mrelation.h + qmt/model/msourceexpansion.cpp qmt/model/msourceexpansion.h + qmt/model/mvisitor.h + qmt/model_ui/modeltreeviewinterface.h + qmt/model_ui/sortedtreemodel.cpp qmt/model_ui/sortedtreemodel.h + qmt/model_ui/stereotypescontroller.cpp qmt/model_ui/stereotypescontroller.h + qmt/model_ui/treemodel.cpp qmt/model_ui/treemodel.h + qmt/model_ui/treemodelmanager.cpp qmt/model_ui/treemodelmanager.h + qmt/model_widgets_ui/classmembersedit.cpp qmt/model_widgets_ui/classmembersedit.h + qmt/model_widgets_ui/modeltreeview.cpp qmt/model_widgets_ui/modeltreeview.h + qmt/model_widgets_ui/palettebox.cpp qmt/model_widgets_ui/palettebox.h + qmt/model_widgets_ui/propertiesview.cpp qmt/model_widgets_ui/propertiesview.h + qmt/model_widgets_ui/propertiesviewmview.cpp qmt/model_widgets_ui/propertiesviewmview.h + qmt/project_controller/projectcontroller.cpp qmt/project_controller/projectcontroller.h + qmt/project/project.cpp qmt/project/project.h + qmt/resources/resources.qrc + qmt/serializer/diagramserializer.cpp qmt/serializer/diagramserializer.h + qmt/serializer/infrastructureserializer.cpp qmt/serializer/infrastructureserializer.h + qmt/serializer/modelserializer.cpp qmt/serializer/modelserializer.h + qmt/serializer/projectserializer.cpp qmt/serializer/projectserializer.h + qmt/stereotype/customrelation.cpp qmt/stereotype/customrelation.h + qmt/stereotype/iconshape.cpp qmt/stereotype/iconshape.h + qmt/stereotype/shape.h + qmt/stereotype/shapepaintvisitor.cpp qmt/stereotype/shapepaintvisitor.h + qmt/stereotype/shapes.cpp qmt/stereotype/shapes.h + qmt/stereotype/shapevalue.cpp qmt/stereotype/shapevalue.h + qmt/stereotype/shapevisitor.h + qmt/stereotype/stereotypecontroller.cpp qmt/stereotype/stereotypecontroller.h + qmt/stereotype/stereotypeicon.cpp qmt/stereotype/stereotypeicon.h + qmt/stereotype/toolbar.cpp qmt/stereotype/toolbar.h + qmt/style/defaultstyle.cpp + qmt/style/defaultstyleengine.cpp qmt/style/defaultstyleengine.h + qmt/style/defaultstyle.h + qmt/style/objectvisuals.cpp qmt/style/objectvisuals.h + qmt/style/relationstarterstyle.cpp qmt/style/relationstarterstyle.h + qmt/style/stylecontroller.cpp qmt/style/stylecontroller.h + qmt/style/style.cpp + qmt/style/styledobject.cpp qmt/style/styledobject.h + qmt/style/styledrelation.cpp qmt/style/styledrelation.h + qmt/style/styleengine.h + qmt/style/style.h + qmt/tasks/alignonrastervisitor.cpp qmt/tasks/alignonrastervisitor.h + qmt/tasks/diagramscenecontroller.cpp qmt/tasks/diagramscenecontroller.h + qmt/tasks/finddiagramvisitor.cpp qmt/tasks/finddiagramvisitor.h + qmt/tasks/findrootdiagramvisitor.cpp qmt/tasks/findrootdiagramvisitor.h + qmt/tasks/ielementtasks.h + qmt/tasks/isceneinspector.h + qmt/tasks/voidelementtasks.cpp qmt/tasks/voidelementtasks.h + qstringparser/qstringparser.cpp qstringparser/qstringparser.h + qtserialization/inc/qark/access.h + qtserialization/inc/qark/archivebasics.h + qtserialization/inc/qark/attribute.h + qtserialization/inc/qark/baseclass.h + qtserialization/inc/qark/flag.h + qtserialization/inc/qark/friend_access.h + qtserialization/inc/qark/impl/loadingrefmap.h + qtserialization/inc/qark/impl/objectid.h + qtserialization/inc/qark/impl/savingrefmap.h + qtserialization/inc/qark/parameters.h + qtserialization/inc/qark/qxmlinarchive.h + qtserialization/inc/qark/qxmloutarchive.h + qtserialization/inc/qark/reference.h + qtserialization/inc/qark/serialize_basic.h + qtserialization/inc/qark/serialize_container.h + qtserialization/inc/qark/serialize_enum.h + qtserialization/inc/qark/serialize.h + qtserialization/inc/qark/serialize_pointer.h + qtserialization/inc/qark/tag.h + qtserialization/inc/qark/typeregistry.h + qtserialization/src/flag.cpp + qtserialization/src/savingrefmap.cpp +) diff --git a/src/libs/qmldebug/CMakeLists.txt b/src/libs/qmldebug/CMakeLists.txt new file mode 100644 index 0000000000..cdc4c36fb4 --- /dev/null +++ b/src/libs/qmldebug/CMakeLists.txt @@ -0,0 +1,18 @@ +add_qtc_library(QmlDebug + DEPENDS Qt5::Network Utils + SOURCES + baseenginedebugclient.cpp baseenginedebugclient.h + basetoolsclient.cpp basetoolsclient.h + qdebugmessageclient.cpp qdebugmessageclient.h + qmldebug_global.h + qmldebugclient.cpp qmldebugclient.h + qmldebugcommandlinearguments.h + qmldebugconnection.cpp qmldebugconnection.h + qmldebugconnectionmanager.cpp qmldebugconnectionmanager.h + qmldebugconstants.h + qmlenginecontrolclient.cpp qmlenginecontrolclient.h + qmlenginedebugclient.h + qmloutputparser.cpp qmloutputparser.h + qmltoolsclient.cpp qmltoolsclient.h + qpacketprotocol.cpp qpacketprotocol.h +) diff --git a/src/libs/qmleditorwidgets/CMakeLists.txt b/src/libs/qmleditorwidgets/CMakeLists.txt new file mode 100644 index 0000000000..b235601754 --- /dev/null +++ b/src/libs/qmleditorwidgets/CMakeLists.txt @@ -0,0 +1,22 @@ +add_qtc_library(QmlEditorWidgets + DEPENDS qmljs Utils Qt5::Widgets + SOURCES + colorbox.cpp colorbox.h + colorbutton.cpp colorbutton.h + contextpanetext.ui + contextpanetextwidget.cpp contextpanetextwidget.h + contextpanewidget.cpp contextpanewidget.h + contextpanewidgetborderimage.ui + contextpanewidgetimage.cpp contextpanewidgetimage.h contextpanewidgetimage.ui + contextpanewidgetrectangle.cpp contextpanewidgetrectangle.h contextpanewidgetrectangle.ui + customcolordialog.cpp customcolordialog.h + easingpane/easingcontextpane.cpp easingpane/easingcontextpane.h easingpane/easingcontextpane.ui + easingpane/easinggraph.cpp easingpane/easinggraph.h + easingpane/easingpane.qrc + filewidget.cpp filewidget.h + fontsizespinbox.cpp fontsizespinbox.h + gradientline.cpp gradientline.h + huecontrol.cpp huecontrol.h + qmleditorwidgets_global.h + resources.qrc +) diff --git a/src/libs/qmljs/CMakeLists.txt b/src/libs/qmljs/CMakeLists.txt new file mode 100644 index 0000000000..6a4ef362bc --- /dev/null +++ b/src/libs/qmljs/CMakeLists.txt @@ -0,0 +1,53 @@ +add_qtc_library(qmljs + DEPENDS ExtensionSystem Utils + PUBLIC_DEPENDS CPlusPlus Qt5::Widgets Qt5::Xml LanguageUtils + SOURCES + jsoncheck.cpp jsoncheck.h + parser/qmldirparser.cpp parser/qmldirparser_p.h + parser/qmlerror.cpp parser/qmlerror.h + parser/qmljsast.cpp parser/qmljsast_p.h + parser/qmljsastfwd_p.h + parser/qmljsastvisitor.cpp parser/qmljsastvisitor_p.h + parser/qmljsengine_p.cpp parser/qmljsengine_p.h + parser/qmljsglobal_p.h + parser/qmljsgrammar.cpp parser/qmljsgrammar_p.h + parser/qmljskeywords_p.h + parser/qmljslexer.cpp parser/qmljslexer_p.h + parser/qmljsmemorypool_p.h + parser/qmljsparser.cpp parser/qmljsparser_p.h + persistenttrie.cpp persistenttrie.h + qmljs_global.h + qmljsbind.cpp qmljsbind.h + qmljsbundle.cpp qmljsbundle.h + qmljscheck.cpp qmljscheck.h + qmljscodeformatter.cpp qmljscodeformatter.h + qmljscompletioncontextfinder.cpp qmljscompletioncontextfinder.h + qmljsconstants.h + qmljscontext.cpp qmljscontext.h + qmljsdialect.cpp qmljsdialect.h + qmljsdocument.cpp qmljsdocument.h + qmljsevaluate.cpp qmljsevaluate.h + qmljsfindexportedcpptypes.cpp qmljsfindexportedcpptypes.h + qmljsicons.cpp qmljsicons.h + qmljsicontextpane.h + qmljsimportdependencies.cpp qmljsimportdependencies.h + qmljsindenter.cpp qmljsindenter.h + qmljsinterpreter.cpp qmljsinterpreter.h + qmljslineinfo.cpp qmljslineinfo.h + qmljslink.cpp qmljslink.h + qmljsmodelmanagerinterface.cpp qmljsmodelmanagerinterface.h + qmljsplugindumper.cpp qmljsplugindumper.h + qmljspropertyreader.cpp qmljspropertyreader.h + qmljsreformatter.cpp qmljsreformatter.h + qmljsrewriter.cpp qmljsrewriter.h + qmljsscanner.cpp qmljsscanner.h + qmljsscopeastpath.cpp qmljsscopeastpath.h + qmljsscopebuilder.cpp qmljsscopebuilder.h + qmljsscopechain.cpp qmljsscopechain.h + qmljssimplereader.cpp qmljssimplereader.h + qmljsstaticanalysismessage.cpp qmljsstaticanalysismessage.h + qmljstypedescriptionreader.cpp qmljstypedescriptionreader.h + qmljsutils.cpp qmljsutils.h + qmljsvalueowner.cpp qmljsvalueowner.h + qmljsviewercontext.cpp qmljsviewercontext.h +) diff --git a/src/libs/qtcreatorcdbext/CMakeLists.txt b/src/libs/qtcreatorcdbext/CMakeLists.txt new file mode 100644 index 0000000000..15ab799083 --- /dev/null +++ b/src/libs/qtcreatorcdbext/CMakeLists.txt @@ -0,0 +1,46 @@ +#todo +# - handle if there is no debug python lib python35_d +# - needs to be tested + +if (MINGW) + message(STATUS "MinGW detected. Removing qtcreatorcdbext from build.") + return() +endif() + +include(CheckIncludeFile) +check_include_file(wdbgexts.h HAVE_WDBGEXTS_H) +if (NOT HAVE_WDBGEXTS_H) + message(WARNING "wdbgexts.h not found. Removing qtcreatorcdbext from build.") + return() +endif() + +find_package(PythonLibs 3.5) +if (NOT ${PYTHONLIBS_FOUND}) + message(WARNING "PythonLibs 3.5 not found. Removing qtcreatorcdbext from build.") + return() +endif() + +add_qtc_library(qtcreatorcdbext + DEPENDS ${PYTHON_LIBRARIES} + INCLUDES ${PYTHON_INCLUDE_DIR} + DEFINES WITH_PYTHON=1 + SOURCES + common.cpp common.h + containers.cpp containers.h + eventcallback.cpp eventcallback.h + extensioncontext.cpp extensioncontext.h + gdbmihelpers.cpp gdbmihelpers.h + iinterfacepointer.h + knowntype.h + outputcallback.cpp outputcallback.h + pycdbextmodule.cpp pycdbextmodule.h + pyfield.cpp pyfield.h + pystdoutredirect.cpp pystdoutredirect.h + pytype.cpp pytype.h + pyvalue.cpp pyvalue.h + qtcreatorcdbextension.cpp + stringutils.cpp stringutils.h + symbolgroup.cpp symbolgroup.h + symbolgroupnode.cpp symbolgroupnode.h + symbolgroupvalue.cpp symbolgroupvalue.h +) diff --git a/src/libs/sqlite/CMakeLists.txt b/src/libs/sqlite/CMakeLists.txt new file mode 100644 index 0000000000..a1359feb92 --- /dev/null +++ b/src/libs/sqlite/CMakeLists.txt @@ -0,0 +1,27 @@ +add_qtc_library(Sqlite + DEFINES + SQLITE_THREADSAFE=2 SQLITE_ENABLE_FTS4 SQLITE_ENABLE_FTS3_PARENTHESIS + SQLITE_ENABLE_UNLOCK_NOTIFY SQLITE_ENABLE_COLUMN_METADATA + BUILD_SQLITE_LIBRARY + DEPENDS Qt5::Core + PUBLIC_INCLUDES "${CMAKE_CURRENT_LIST_DIR}" "${CMAKE_CURRENT_LIST_DIR}/../3rdparty/sqlite" + SOURCES + ../3rdparty/sqlite/sqlite3.c + createtablesqlstatementbuilder.cpp createtablesqlstatementbuilder.h + sqlitebasestatement.cpp sqlitebasestatement.h + sqlitecolumn.cpp sqlitecolumn.h + sqlitedatabase.cpp sqlitedatabase.h + sqlitedatabasebackend.cpp sqlitedatabasebackend.h + sqliteexception.cpp sqliteexception.h + sqliteglobal.cpp sqliteglobal.h + sqliteindex.h + sqlitereadstatement.cpp sqlitereadstatement.h + sqlitereadwritestatement.cpp sqlitereadwritestatement.h + sqlitetable.cpp sqlitetable.h + sqlitetransaction.h + sqlitewritestatement.cpp sqlitewritestatement.h + sqlstatementbuilder.cpp sqlstatementbuilder.h + sqlstatementbuilderexception.cpp sqlstatementbuilderexception.h + utf8string.cpp utf8string.h + utf8stringvector.cpp utf8stringvector.h +) diff --git a/src/libs/ssh/CMakeLists.txt b/src/libs/ssh/CMakeLists.txt new file mode 100644 index 0000000000..6f5d1cb764 --- /dev/null +++ b/src/libs/ssh/CMakeLists.txt @@ -0,0 +1,22 @@ +add_qtc_library(QtcSsh + DEPENDS Qt5::Core Qt5::Network Qt5::Widgets Utils + SOURCES + sftpdefs.cpp sftpdefs.h + sftpfilesystemmodel.cpp sftpfilesystemmodel.h + sftpsession.cpp sftpsession.h + sftptransfer.cpp sftptransfer.h + ssh.qrc + ssh_global.h + sshconnection.cpp sshconnection.h + sshconnectionmanager.cpp sshconnectionmanager.h + sshkeycreationdialog.cpp sshkeycreationdialog.h sshkeycreationdialog.ui + sshlogging.cpp sshlogging_p.h + sshprocess.cpp sshprocess.h + sshconnection.cpp sshconnection.h + sshconnectionmanager.cpp sshconnectionmanager.h + sshkeycreationdialog.cpp sshkeycreationdialog.h sshkeycreationdialog.ui + sshlogging.cpp sshlogging_p.h + sshremoteprocess.cpp sshremoteprocess.h + sshremoteprocessrunner.cpp sshremoteprocessrunner.h + sshsettings.cpp sshsettings.h +) diff --git a/src/libs/tracing/CMakeLists.txt b/src/libs/tracing/CMakeLists.txt new file mode 100644 index 0000000000..153756323e --- /dev/null +++ b/src/libs/tracing/CMakeLists.txt @@ -0,0 +1,35 @@ +if (WITH_TESTS) + set(TEST_SOURCES + runscenegraphtest.cpp runscenegraphtest.h + ) +endif() + +add_qtc_library(Tracing + DEPENDS Utils Qt5::Qml Qt5::Quick + PUBLIC_INCLUDES "${CMAKE_CURRENT_SOURCE_DIR}" + SOURCES ${TEST_SOURCES} + flamegraph.cpp flamegraph.h + flamegraphattached.h + safecastable.h + qml/tracing.qrc + timelineabstractrenderer.cpp timelineabstractrenderer.h timelineabstractrenderer_p.h + timelineformattime.cpp timelineformattime.h + timelineitemsrenderpass.cpp timelineitemsrenderpass.h + timelinemodel.cpp timelinemodel.h timelinemodel_p.h + timelinemodelaggregator.cpp timelinemodelaggregator.h + timelinenotesmodel.cpp timelinenotesmodel.h timelinenotesmodel_p.h + timelinenotesrenderpass.cpp timelinenotesrenderpass.h + timelineoverviewrenderer.cpp timelineoverviewrenderer.h timelineoverviewrenderer_p.h + timelinerenderer.cpp timelinerenderer.h timelinerenderer_p.h + timelinerenderpass.cpp timelinerenderpass.h + timelinerenderstate.cpp timelinerenderstate.h timelinerenderstate_p.h + timelineselectionrenderpass.cpp timelineselectionrenderpass.h + timelinetheme.cpp timelinetheme.h + timelinetracefile.cpp timelinetracefile.h + timelinetracemanager.cpp timelinetracemanager.h + timelinezoomcontrol.cpp timelinezoomcontrol.h + traceevent.h + traceeventtype.h + tracestashfile.h + tracing_global.h +) diff --git a/src/libs/utils/CMakeLists.txt b/src/libs/utils/CMakeLists.txt new file mode 100644 index 0000000000..4e7f0ffa6e --- /dev/null +++ b/src/libs/utils/CMakeLists.txt @@ -0,0 +1,214 @@ +set(WIN_SOURCES + consoleprocess_win.cpp + process_ctrlc_stub.cpp + touchbar/touchbar.cpp +) +set(MAC_SOURCES + consoleprocess_unix.cpp + fileutils_mac.mm fileutils_mac.h + processhandle_mac.mm + theme/theme_mac.mm theme/theme_mac.h + touchbar/touchbar_appdelegate_mac.mm touchbar/touchbar_appdelegate_mac_p.h + touchbar/touchbar_mac.mm touchbar/touchbar_mac_p.h +) +set(UNIX_SOURCES + consoleprocess_unix.cpp + touchbar/touchbar.cpp +) + +if (WIN32) + set(PLATFORM_SOURCES ${WIN_SOURCES}) + set(PLATFORM_DEPENDS user32 iphlpapi ws2_32 shell32) +elseif (APPLE) + set(PLATFORM_SOURCES ${MAC_SOURCES}) + find_library(FWFoundation Foundation) + find_library(FWAppKit AppKit) + set(PLATFORM_DEPENDS ${FWFoundation} ${FWAppKit}) +else() + set(PLATFORM_SOURCES ${UNIX_SOURCES}) + set(PLATFORM_DEPENDS) +endif() + +if (IDE_LIBEXEC_PATH AND IDE_BIN_PATH) + file(RELATIVE_PATH RELATIVE_TOOLS_PATH + "${CMAKE_INSTALL_PREFIX}/${IDE_LIBEXEC_PATH}" "${CMAKE_INSTALL_PREFIX}/${IDE_BIN_PATH}") +else() + message(WARNING "IDE_LIBEXEC_PATH or IDE_BIN_PATH undefined when calculating tools path") + set(RELATIVE_TOOLS_PATH "") +endif() + +add_qtc_library(Utils + DEPENDS ${PLATFORM_DEPENDS} Qt5::Xml + PUBLIC_DEPENDS Qt5::Concurrent Qt5::Core Qt5::Network Qt5::Qml Qt5::Gui Qt5::Widgets + DEFINES + "QTC_REL_TOOLS_PATH=\"${RELATIVE_TOOLS_PATH}\"" + SOURCES + ${PLATFORM_SOURCES} + ../3rdparty/optional/optional.hpp + ../3rdparty/variant/variant.hpp + QtConcurrentTools + algorithm.h + ansiescapecodehandler.cpp ansiescapecodehandler.h + appmainwindow.cpp appmainwindow.h + basetreeview.cpp basetreeview.h + benchmarker.cpp benchmarker.h + buildablehelperlibrary.cpp buildablehelperlibrary.h + categorysortfiltermodel.cpp categorysortfiltermodel.h + changeset.cpp changeset.h + checkablemessagebox.cpp checkablemessagebox.h + classnamevalidatinglineedit.cpp classnamevalidatinglineedit.h + codegeneration.cpp codegeneration.h + completinglineedit.cpp completinglineedit.h + completingtextedit.cpp completingtextedit.h + consoleprocess.cpp consoleprocess.h consoleprocess_p.h + cpplanguage_details.h + crumblepath.cpp crumblepath.h + delegates.cpp delegates.h + declarationmacros.h + detailsbutton.cpp detailsbutton.h + detailswidget.cpp detailswidget.h + differ.cpp differ.h + dropsupport.cpp dropsupport.h + elfreader.cpp elfreader.h + elidinglabel.cpp elidinglabel.h + environment.cpp environment.h + environmentdialog.cpp environmentdialog.h + environmentmodel.cpp environmentmodel.h + execmenu.cpp execmenu.h + executeondestruction.h + fadingindicator.cpp fadingindicator.h + faketooltip.cpp faketooltip.h + fancylineedit.cpp fancylineedit.h + fancymainwindow.cpp fancymainwindow.h + filecrumblabel.cpp filecrumblabel.h + fileinprojectfinder.cpp fileinprojectfinder.h + filenamevalidatinglineedit.cpp filenamevalidatinglineedit.h + filesearch.cpp filesearch.h + filesystemwatcher.cpp filesystemwatcher.h + fileutils.cpp fileutils.h + filewizardpage.cpp filewizardpage.h + fixedsizeclicklabel.cpp fixedsizeclicklabel.h + flowlayout.cpp flowlayout.h + functiontraits.h + fuzzymatcher.cpp fuzzymatcher.h + genericconstants.h + globalfilechangeblocker.cpp globalfilechangeblocker.h + guard.cpp guard.h + headerviewstretcher.cpp headerviewstretcher.h + highlightingitemdelegate.cpp highlightingitemdelegate.h + historycompleter.cpp historycompleter.h + hostosinfo.cpp hostosinfo.h + htmldocextractor.cpp htmldocextractor.h + icon.cpp icon.h + itemviews.cpp itemviews.h + json.cpp json.h + jsontreeitem.cpp jsontreeitem.h + linecolumn.h + link.h + listmodel.h + listutils.h + macroexpander.cpp macroexpander.h + mapreduce.h + mimetypes/mimedatabase.cpp mimetypes/mimedatabase.h mimetypes/mimedatabase_p.h + mimetypes/mimeglobpattern.cpp mimetypes/mimeglobpattern_p.h + mimetypes/mimemagicrule.cpp mimetypes/mimemagicrule_p.h + mimetypes/mimemagicrulematcher.cpp mimetypes/mimemagicrulematcher_p.h + mimetypes/mimeprovider.cpp mimetypes/mimeprovider_p.h + mimetypes/mimetype.cpp mimetypes/mimetype.h mimetypes/mimetype_p.h + mimetypes/mimetypeparser.cpp mimetypes/mimetypeparser_p.h + navigationtreeview.cpp navigationtreeview.h + networkaccessmanager.cpp networkaccessmanager.h + newclasswidget.cpp newclasswidget.h newclasswidget.ui + optional.h + osspecificaspects.h + outputformat.h + outputformatter.cpp outputformatter.h + overridecursor.cpp overridecursor.h + parameteraction.cpp parameteraction.h + pathchooser.cpp pathchooser.h + pathlisteditor.cpp pathlisteditor.h + persistentsettings.cpp persistentsettings.h + pointeralgorithm.h + port.cpp port.h + portlist.cpp portlist.h + predicates.h + processhandle.cpp processhandle.h + progressindicator.cpp progressindicator.h + projectintropage.cpp projectintropage.h projectintropage.ui + proxyaction.cpp proxyaction.h + proxycredentialsdialog.cpp proxycredentialsdialog.h proxycredentialsdialog.ui + qrcparser.cpp qrcparser.h + qtcassert.cpp qtcassert.h + qtcolorbutton.cpp qtcolorbutton.h + qtcprocess.cpp qtcprocess.h + reloadpromptutils.cpp reloadpromptutils.h + removefiledialog.cpp removefiledialog.h removefiledialog.ui + runextensions.cpp runextensions.h + savedaction.cpp savedaction.h + savefile.cpp savefile.h + scopedswap.h + settingsaccessor.cpp settingsaccessor.h + settingsselector.cpp settingsselector.h + settingsutils.h + shellcommand.cpp shellcommand.h + shellcommandpage.cpp shellcommandpage.h + sizedarray.h + smallstring.h + smallstringfwd.h + smallstringio.h + smallstringiterator.h + smallstringlayout.h + smallstringliteral.h + smallstringmemory.h + smallstringvector.h + smallstringview.h + statuslabel.cpp statuslabel.h + stringutils.cpp stringutils.h + styledbar.cpp styledbar.h + stylehelper.cpp stylehelper.h + synchronousprocess.cpp synchronousprocess.h + templateengine.cpp templateengine.h + temporarydirectory.cpp temporarydirectory.h + temporaryfile.cpp temporaryfile.h + textfieldcheckbox.cpp textfieldcheckbox.h + textfieldcombobox.cpp textfieldcombobox.h + textfileformat.cpp textfileformat.h + textutils.cpp textutils.h + theme/theme.cpp theme/theme.h theme/theme_p.h + tooltip/effects.h + tooltip/reuse.h + tooltip/tips.cpp tooltip/tips.h + tooltip/tooltip.cpp tooltip/tooltip.h + touchbar/touchbar.h + treemodel.cpp treemodel.h + treeviewcombobox.cpp treeviewcombobox.h + uncommentselection.cpp uncommentselection.h + unixutils.cpp unixutils.h + url.cpp url.h + utils.qrc + utils_global.h + utilsicons.cpp utilsicons.h + variant.h + winutils.cpp winutils.h + wizard.cpp wizard.h + wizardpage.cpp wizardpage.h +) + +if (WIN32) + target_compile_definitions(Utils + PRIVATE _UNICODE UNICODE + PUBLIC _CRT_SECURE_NO_WARNINGS _SCL_SECURE_NO_WARNINGS) +endif() + +set(PROCESS_STUB_SOURCES process_stub_unix.c) +if (WIN32) + set(PROCESS_STUB_SOURCES process_stub_win.c) +endif() + +add_executable(qtcreator_process_stub ${PROCESS_STUB_SOURCES}) +if (WIN32) + target_link_libraries(qtcreator_process_stub shell32) + target_compile_definitions(qtcreator_process_stub PRIVATE + _UNICODE UNICODE _CRT_SECURE_NO_WARNINGS) +endif() +install(TARGETS qtcreator_process_stub DESTINATION ${IDE_LIBEXEC_PATH}) |