forked from qt-creator/qt-creator
CMake Build: Properly build qtcreatorcdbext
Change-Id: I8b4a58d79124debd877442fe23798c77bff723c5 Reviewed-by: David Schulz <david.schulz@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
@@ -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}
|
||||
|
Reference in New Issue
Block a user