summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorCristian Adam <cristian.adam@qt.io>2019-09-27 22:52:15 +0200
committerCristian Adam <cristian.adam@qt.io>2019-10-08 13:26:53 +0000
commit87023db572321360b51dc9c7787cfdb7b404b81e (patch)
tree5724d67d1094dc6e0cfcdf2323fbf7f0a8617ee4 /cmake
parenta19d905ea502362d75c1a8115320328c20f8fbf3 (diff)
downloadqt-creator-87023db572321360b51dc9c7787cfdb7b404b81e.tar.gz
CMake Build: Properly build qtcreatorcdbext
Change-Id: I8b4a58d79124debd877442fe23798c77bff723c5 Reviewed-by: David Schulz <david.schulz@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Diffstat (limited to 'cmake')
-rw-r--r--cmake/QtCreatorAPI.cmake24
1 files changed, 18 insertions, 6 deletions
diff --git a/cmake/QtCreatorAPI.cmake b/cmake/QtCreatorAPI.cmake
index 8a729e9f5e..09f9e3f05c 100644
--- a/cmake/QtCreatorAPI.cmake
+++ b/cmake/QtCreatorAPI.cmake
@@ -329,12 +329,14 @@ function(enable_pch target)
"${PROJECT_SOURCE_DIR}/src/shared/qtcreator_pch.h" Qt5::Core)
endif()
- set(PCH_TARGET QtCreatorPchConsole)
+ unset(PCH_TARGET)
if ("Qt5::Widgets" IN_LIST dependencies)
set(PCH_TARGET QtCreatorPchGui)
+ elseif ("Qt5::Core" IN_LIST dependencies)
+ set(PCH_TARGET QtCreatorPchConsole)
endif()
- if (TARGET ${PCH_TARGET})
+ if (TARGET "${PCH_TARGET}")
set_target_properties(${target} PROPERTIES
PRECOMPILE_HEADERS_REUSE_FROM ${PCH_TARGET})
endif()
@@ -364,7 +366,7 @@ endfunction()
#
function(add_qtc_library name)
- cmake_parse_arguments(_arg "STATIC;OBJECT;SKIP_TRANSLATION" ""
+ cmake_parse_arguments(_arg "STATIC;OBJECT;SKIP_TRANSLATION;BUILD_BY_DEFAULT" "DESTINATION"
"DEFINES;DEPENDS;EXTRA_TRANSLATIONS;INCLUDES;PUBLIC_DEFINES;PUBLIC_DEPENDS;PUBLIC_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;PROPERTIES" ${ARGN}
)
@@ -384,8 +386,13 @@ function(add_qtc_library name)
set(library_type OBJECT)
endif()
+ set(_exclude_from_all EXCLUDE_FROM_ALL)
+ if (_arg_BUILD_BY_DEFAULT)
+ unset(_exclude_from_all)
+ endif()
+
# Do not just build libraries...
- add_library(${name} ${library_type} EXCLUDE_FROM_ALL ${_arg_SOURCES})
+ add_library(${name} ${library_type} ${_exclude_from_all} ${_arg_SOURCES})
add_library(${IDE_CASED_ID}::${name} ALIAS ${name})
set_public_headers(${name} "${_arg_SOURCES}")
@@ -432,6 +439,11 @@ function(add_qtc_library name)
set(skip_translation ON)
endif()
+ set(_DESTINATION "${IDE_BIN_PATH}")
+ if (_arg_DESTINATION)
+ set(_DESTINATION "${_arg_DESTINATION}")
+ endif()
+
qtc_output_binary_dir(_output_binary_dir)
set_target_properties(${name} PROPERTIES
SOURCES_DIR "${CMAKE_CURRENT_SOURCE_DIR}"
@@ -440,7 +452,7 @@ function(add_qtc_library name)
VISIBILITY_INLINES_HIDDEN ON
BUILD_RPATH "${_LIB_RPATH}"
INSTALL_RPATH "${_LIB_RPATH}"
- RUNTIME_OUTPUT_DIRECTORY "${_output_binary_dir}/${IDE_BIN_PATH}"
+ RUNTIME_OUTPUT_DIRECTORY "${_output_binary_dir}/${_DESTINATION}"
LIBRARY_OUTPUT_DIRECTORY "${_output_binary_dir}/${IDE_LIBRARY_PATH}"
ARCHIVE_OUTPUT_DIRECTORY "${_output_binary_dir}/${IDE_LIBRARY_PATH}"
${_arg_PROPERTIES}
@@ -454,7 +466,7 @@ function(add_qtc_library name)
install(TARGETS ${name}
EXPORT ${IDE_CASED_ID}
- RUNTIME DESTINATION "${IDE_BIN_PATH}"
+ RUNTIME DESTINATION "${_DESTINATION}"
LIBRARY
DESTINATION "${IDE_LIBRARY_PATH}"
${NAMELINK_OPTION}