Revert "CMake: make compile options consistent for Qt created libraries"

This reverts commit 389507a047.

Reason for revert: The original patch unintentionally changes
the deprecation warning behavior for user projects. Merging
the current change will resurface the original static qt build
bug until a new fix is developed.

Pick-to: 6.6
Change-Id: I29b41b43fdd76b19bc46439470e04443dc2b8ddb
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Yuhang Zhao <yuhangzhao@deepin.org>
This commit is contained in:
Alexandru Croitor 2023-06-07 07:41:52 +00:00
parent 788b400d0e
commit e3c6754760
4 changed files with 16 additions and 10 deletions

View File

@ -487,6 +487,8 @@ function(qt_internal_add_module target)
endif()
endif()
qt_internal_library_deprecation_level(deprecation_define)
if(NOT arg_HEADER_MODULE)
qt_autogen_tools_initial_setup(${target})
endif()
@ -576,6 +578,7 @@ function(qt_internal_add_module target)
QT_DEPRECATED_WARNINGS
QT_BUILDING_QT
QT_BUILD_${module_define_infix}_LIB ### FIXME: use QT_BUILD_ADDON for Add-ons or remove if we don't have add-ons anymore
${deprecation_define}
)
list(APPEND arg_LIBRARIES Qt::PlatformModuleInternal)
endif()

View File

@ -63,10 +63,6 @@ function(qt_internal_setup_public_platform_target)
# Generate a pkgconfig for Qt::Platform.
qt_internal_generate_pkg_config_file(Platform)
# Make sure Qt users use the same symbols as how we build Qt.
qt_internal_library_deprecation_level(deprecation_defines)
target_compile_definitions(Platform INTERFACE ${deprecation_defines})
endfunction()
function(qt_internal_get_platform_definition_include_dir install_interface build_interface)

View File

@ -16,14 +16,14 @@ qt_add_library(QtLibraryInfo OBJECT
qmakelibraryinfo.cpp qmakelibraryinfo.h
)
# Make sure we use same parameters when building QtLibraryInfo and other Qt libraries,
# otherwise some compilers may have compilation errors, such as clang-cl.
target_link_libraries(QtLibraryInfo PUBLIC PlatformCommonInternal)
target_link_libraries(QtLibraryInfo PUBLIC Qt::CorePrivate)
qt_internal_add_sync_header_dependencies(QtLibraryInfo Core)
set_target_properties(QtLibraryInfo PROPERTIES
COMPILE_OPTIONS $<TARGET_PROPERTY:Qt::Core,INTERFACE_COMPILE_OPTIONS>
COMPILE_DEFINITIONS $<TARGET_PROPERTY:Qt::Core,INTERFACE_COMPILE_DEFINITIONS>
INCLUDE_DIRECTORIES $<TARGET_PROPERTY:Qt::Core,INTERFACE_INCLUDE_DIRECTORIES>
INCLUDE_DIRECTORIES $<TARGET_PROPERTY:Qt::CorePrivate,INTERFACE_INCLUDE_DIRECTORIES>
)
target_include_directories(QtLibraryInfo PUBLIC
"${CMAKE_CURRENT_SOURCE_DIR}"
"${CMAKE_CURRENT_SOURCE_DIR}/library"
@ -35,13 +35,18 @@ if("${hostdatadir}" STREQUAL "")
set(hostdatadir ".")
endif()
qt_internal_library_deprecation_level(deprecation_define)
target_compile_definitions(QtLibraryInfo PUBLIC
PROEVALUATOR_FULL
QT_BUILD_QMAKE
QT_USE_QSTRINGBUILDER
QT_NO_FOREACH
QT_VERSION_STR="${PROJECT_VERSION}"
QT_HOST_MKSPEC="${QT_QMAKE_HOST_MKSPEC}"
QT_TARGET_MKSPEC="${QT_QMAKE_TARGET_MKSPEC}"
QT_HOST_DATADIR="${hostdatadir}"
${deprecation_define}
)
qt_internal_set_exceptions_flags(QtLibraryInfo OFF)
@ -95,6 +100,7 @@ qt_internal_add_tool(${target_name}
PRECOMPILED_HEADER
"qmake_pch.h"
LIBRARIES
Qt::CorePrivate
QtLibraryInfo
)
qt_internal_return_unless_building_tools()

View File

@ -26,6 +26,7 @@ qt_internal_return_unless_building_tools()
qt_internal_extend_target(${target_name} CONDITION QT_FEATURE_settings
LIBRARIES
QtLibraryInfo
Qt::CorePrivate
)
if(WIN32 AND TARGET ${target_name})