diff --git a/cmake/QtCreatorAPI.cmake b/cmake/QtCreatorAPI.cmake index 722cb52a0d1..743f49f9890 100644 --- a/cmake/QtCreatorAPI.cmake +++ b/cmake/QtCreatorAPI.cmake @@ -112,7 +112,7 @@ function(qtc_source_dir varName) endfunction() function(add_qtc_library name) - cmake_parse_arguments(_arg "STATIC;OBJECT;SKIP_TRANSLATION;ALLOW_ASCII_CASTS;FEATURE_INFO;SKIP_PCH" + cmake_parse_arguments(_arg "STATIC;OBJECT;SHARED;SKIP_TRANSLATION;ALLOW_ASCII_CASTS;FEATURE_INFO;SKIP_PCH" "DESTINATION;COMPONENT;SOURCES_PREFIX;BUILD_DEFAULT" "CONDITION;DEPENDS;PUBLIC_DEPENDS;DEFINES;PUBLIC_DEFINES;INCLUDES;PUBLIC_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PROPERTIES" ${ARGN} ) @@ -158,7 +158,7 @@ function(add_qtc_library name) endif() set(library_type SHARED) - if (_arg_STATIC OR QTC_STATIC_BUILD) + if (_arg_STATIC OR (QTC_STATIC_BUILD AND NOT _arg_SHARED)) set(library_type STATIC) endif() if (_arg_OBJECT) @@ -265,7 +265,7 @@ function(add_qtc_library name) set(COMPONENT_OPTION "COMPONENT" "${_arg_COMPONENT}") endif() - if (NOT QTC_STATIC_BUILD) + if (NOT QTC_STATIC_BUILD OR _arg_SHARED) install(TARGETS ${name} EXPORT QtCreator RUNTIME diff --git a/src/libs/qtcreatorcdbext/CMakeLists.txt b/src/libs/qtcreatorcdbext/CMakeLists.txt index bf3d1c0989d..334d226af4d 100644 --- a/src/libs/qtcreatorcdbext/CMakeLists.txt +++ b/src/libs/qtcreatorcdbext/CMakeLists.txt @@ -25,7 +25,7 @@ if (CMAKE_SIZEOF_VOID_P EQUAL 8) set(ArchSuffix 64) endif() -add_qtc_library(qtcreatorcdbext +add_qtc_library(qtcreatorcdbext SHARED COMPONENT qtcreatorcdbext DEPENDS ${DbgEngLib} DESTINATION lib/qtcreatorcdbext${ArchSuffix}/ diff --git a/src/shared/proparser/CMakeLists.txt b/src/shared/proparser/CMakeLists.txt index 3a8404af7af..0277795a603 100644 --- a/src/shared/proparser/CMakeLists.txt +++ b/src/shared/proparser/CMakeLists.txt @@ -1,4 +1,4 @@ -add_qtc_library(ProParser SHARED +add_qtc_library(ProParser DEPENDS Qt5::Core Utils PUBLIC_DEFINES QMAKE_BUILTIN_PRFS QMAKE_OVERRIDE_PRFS