Remove CMake version check when adding _lib_pri to ALL

It looks like adding dependencies to interface libraries is either not
fixed or broken in CMake versions newer than 3.20. Remove the CMake
version check to ensure that 'lib_pri' targets are executed. This will
restore the initial behavior.

Amends cfcc4ef8edc4e8256ae738bbe8c23b4204021830

Fixes: QTBUG-109240
Fixes: QTBUG-109239
Change-Id: I8c5b317fcdd0a715a1a668b4e955df1acfe4be8b
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 85b941f4251bb5207db65efc9ccdd1f5586c8d11)
This commit is contained in:
Alexey Edelev 2022-12-08 20:13:58 +01:00
parent d4ebb92178
commit e85b0ad567

View File

@ -532,11 +532,10 @@ QT.${config_module_name}_private.disabled_features = ${disabled_private_features
"-DIMPLICIT_LINK_DIRECTORIES=${implicit_link_directories}"
-P "${QT_CMAKE_DIR}/QtGenerateLibPri.cmake"
VERBATIM)
# In CMake versions older than 3.20 add_dependencies have no effect when adding interface
# libraries. So need to add the '_lib_pri' targets to ALL to make sure that the related
# rules executed.
# add_dependencies has no effect when adding interface libraries. So need to add the
# '_lib_pri' targets to ALL to make sure that the related rules executed.
unset(add_pri_target_to_all)
if(CMAKE_VERSION VERSION_LESS 3.20 AND arg_HEADER_MODULE)
if(arg_HEADER_MODULE)
set(add_pri_target_to_all ALL)
endif()
add_custom_target(${target}_lib_pri ${add_pri_target_to_all}