qtdeclarative now directly handles more qml-specific logic
Associated changes in the qtdeclarative repo now ensure that arguments for qml plugins are handled on the calling side. This reduces the qml-specific logic needed in qtbase and gives qtdeclarative clearer control over qml build and install locations. As part of that work, the INSTALL_LOCATION keyword used in qt_internal_record_rcc_object_files() has been renamed to INSTALL_DIRECTORY to make it consistent with the keyword used for the same concept in other commands. Pick-to: 6.1 Change-Id: Iebd319899f63d79fbe15ce965b84ce324c28a508 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
This commit is contained in:
parent
1df915ee1d
commit
78a64e310e
@ -461,7 +461,6 @@ set(__qt_add_plugin_single_args
|
||||
OUTPUT_DIRECTORY
|
||||
INSTALL_DIRECTORY
|
||||
ARCHIVE_INSTALL_DIRECTORY
|
||||
QML_TARGET_PATH
|
||||
OUTPUT_NAME
|
||||
${__default_target_info_args}
|
||||
)
|
||||
|
@ -35,12 +35,6 @@ function(qt_internal_add_plugin target)
|
||||
set(output_directory_default "${QT_BUILD_DIR}/${INSTALL_PLUGINSDIR}/${arg_TYPE}")
|
||||
set(install_directory_default "${INSTALL_PLUGINSDIR}/${arg_TYPE}")
|
||||
|
||||
if (arg_QML_TARGET_PATH)
|
||||
set(target_path "${arg_QML_TARGET_PATH}")
|
||||
set(output_directory_default "${QT_BUILD_DIR}/${INSTALL_QMLDIR}/${target_path}")
|
||||
set(install_directory_default "${INSTALL_QMLDIR}/${target_path}")
|
||||
endif()
|
||||
|
||||
# Derive the class name from the target name if it's not explicitly specified.
|
||||
# Don't set it for qml plugins though.
|
||||
set(plugin_class_name "")
|
||||
|
@ -23,13 +23,13 @@ function(qt_internal_add_resource target resourceName)
|
||||
)
|
||||
|
||||
qt_internal_record_rcc_object_files("${target}" "${out_targets}"
|
||||
INSTALL_LOCATION "${INSTALL_LIBDIR}")
|
||||
INSTALL_DIRECTORY "${INSTALL_LIBDIR}")
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
function(qt_internal_record_rcc_object_files target resource_targets)
|
||||
set(args_optional "")
|
||||
set(args_single INSTALL_LOCATION)
|
||||
set(args_single INSTALL_DIRECTORY)
|
||||
set(args_multi "")
|
||||
|
||||
cmake_parse_arguments(arg
|
||||
@ -48,7 +48,7 @@ function(qt_internal_record_rcc_object_files target resource_targets)
|
||||
# Compute the install location of a resource object file in a prefix build.
|
||||
# It's comprised of thee following path parts:
|
||||
#
|
||||
# part (1) INSTALL_LOCATION.
|
||||
# part (1) INSTALL_DIRECTORY.
|
||||
# A usual value is '${INSTALL_LIBDIR}/' for libraries
|
||||
# and '${INSTALL_QMLDIR}/foo/bar/' for qml plugin resources.
|
||||
#
|
||||
@ -70,9 +70,9 @@ function(qt_internal_record_rcc_object_files target resource_targets)
|
||||
set(object_file_name "${generated_cpp_file_relative_path}${CMAKE_CXX_OUTPUT_EXTENSION}")
|
||||
qt_path_join(rcc_object_file_path
|
||||
"objects-$<CONFIG>" ${out_target} "${object_file_name}")
|
||||
if(arg_INSTALL_LOCATION)
|
||||
if(arg_INSTALL_DIRECTORY)
|
||||
qt_path_join(rcc_object_file_path
|
||||
"${arg_INSTALL_LOCATION}" "${rcc_object_file_path}")
|
||||
"${arg_INSTALL_DIRECTORY}" "${rcc_object_file_path}")
|
||||
else()
|
||||
message(FATAL_ERROR "No install location given for object files to be installed"
|
||||
" for the following resource target: '${out_target}'")
|
||||
|
Loading…
x
Reference in New Issue
Block a user