diff options
Diffstat (limited to 'src/corelib/CMakeLists.txt')
-rw-r--r-- | src/corelib/CMakeLists.txt | 75 |
1 files changed, 72 insertions, 3 deletions
diff --git a/src/corelib/CMakeLists.txt b/src/corelib/CMakeLists.txt index ce3def3cd6..d18bee4feb 100644 --- a/src/corelib/CMakeLists.txt +++ b/src/corelib/CMakeLists.txt @@ -2,7 +2,17 @@ # SPDX-License-Identifier: BSD-3-Clause qt_find_package(WrapPCRE2 PROVIDED_TARGETS WrapPCRE2::WrapPCRE2) +qt_internal_extend_sbom(WrapPCRE2::WrapPCRE2 + CPE_VENDOR "pcre" + CPE_PRODUCT "pcre2" + DOWNLOAD_LOCATION "https://github.com/PCRE2Project/pcre2" +) qt_find_package(WrapZLIB PROVIDED_TARGETS WrapZLIB::WrapZLIB) +qt_internal_extend_sbom(WrapZLIB::WrapZLIB + CPE_VENDOR "zlib" + CPE_PRODUCT "zlib" + DOWNLOAD_LOCATION "https://github.com/madler/zlib" +) if(ANDROID) set(corelib_extra_cmake_files @@ -111,6 +121,7 @@ qt_internal_add_module(Core io/qfilesystementry.cpp io/qfilesystementry_p.h io/qfilesystemiterator_p.h io/qfilesystemmetadata_p.h + io/qfloat16format.h io/qfsfileengine.cpp io/qfsfileengine_p.h io/qfsfileengine_iterator.cpp io/qfsfileengine_iterator_p.h io/qiodevice.cpp io/qiodevice.h io/qiodevice_p.h @@ -127,6 +138,7 @@ qt_internal_add_module(Core io/qstorageinfo.cpp io/qstorageinfo.h io/qstorageinfo_p.h io/qtemporarydir.cpp io/qtemporarydir.h io/qtemporaryfile.cpp io/qtemporaryfile.h io/qtemporaryfile_p.h + io/qtformat_impl.h io/qurl.cpp io/qurl.h io/qurl_p.h io/qurlidna.cpp io/qurlquery.cpp io/qurlquery.h @@ -334,7 +346,6 @@ qt_internal_add_module(Core WrapZLIB::WrapZLIB PRECOMPILED_HEADER "global/qt_pch.h" - GENERATE_CPP_EXPORTS PUBLIC_LIBRARIES Qt::Platform EXTRA_CMAKE_FILES @@ -346,6 +357,16 @@ qt_internal_add_module(Core POLICIES QTP0002 QTP0003 + ATTRIBUTION_FILE_DIR_PATHS + text + tools + ../3rdparty/blake2 + ../3rdparty/md4 + ../3rdparty/md5 + ../3rdparty/sha1 + ../3rdparty/sha3 + ../3rdparty/rfc6234 + ../3rdparty/tinycbor ) _qt_internal_setup_deploy_support() @@ -609,6 +630,8 @@ qt_internal_extend_target(Core CONDITION APPLE # This makes sure that the tst_qmakelib passes. For some reason, # QtCore ends up returning a corrupted error message in # write_file(): fail + ATTRIBUTION_FILE_DIR_PATHS + kernel ) qt_internal_extend_target(Core CONDITION MACOS @@ -778,6 +801,8 @@ qt_internal_extend_target(Core CONDITION QT_FEATURE_doubleconversion AND NOT QT_ INCLUDE_DIRECTORIES ../3rdparty/double-conversion/double-conversion ../3rdparty/double-conversion + ATTRIBUTION_FILE_DIR_PATHS + ../3rdparty/double-conversion ) qt_internal_extend_target(Core CONDITION QT_FEATURE_system_libb2 @@ -789,6 +814,8 @@ qt_internal_extend_target(Core CONDITION QT_FEATURE_easingcurve SOURCES tools/qeasingcurve.cpp tools/qeasingcurve.h tools/qtimeline.cpp tools/qtimeline.h + ATTRIBUTION_FILE_DIR_PATHS + ../3rdparty/easing ) qt_internal_extend_target(Core CONDITION UNIX AND NOT HAIKU AND NOT INTEGRITY AND NOT VXWORKS AND NOT WASM AND NOT MACOS @@ -816,12 +843,16 @@ qt_internal_extend_target(Core CONDITION WASM text/qlocale_wasm.cpp ) -# On MS-Win, clang has two flavors, one of which immitates MSVC (so claims to be it) qt_internal_extend_target(Core CONDITION MSVC LIBRARIES runtimeobject ) +qt_internal_extend_target(Core CONDITION MSVC AND CLANG + LIBRARIES + clang_rt.builtins-x86_64 +) + qt_internal_extend_target(Core CONDITION QT_FEATURE_icu SOURCES text/qcollator_icu.cpp @@ -897,7 +928,7 @@ qt_internal_extend_target(Core CONDITION QT_FEATURE_timezone AND UNIX AND NOT AN qt_internal_extend_target(Core CONDITION - QT_FEATURE_icu AND QT_FEATURE_timezone AND NOT ANDROID AND NOT APPLE + QT_FEATURE_icu AND QT_FEATURE_timezone AND NOT UNIX SOURCES time/qtimezoneprivate_icu.cpp ) @@ -1004,6 +1035,8 @@ qt_internal_extend_target(Core CONDITION QT_FEATURE_process AND UNIX io/forkfd_qt.c INCLUDE_DIRECTORIES ../3rdparty/forkfd + ATTRIBUTION_FILE_DIR_PATHS + ../3rdparty/forkfd ) qt_internal_extend_target(Core CONDITION APPLE AND QT_FEATURE_processenvironment @@ -1484,3 +1517,39 @@ qt_internal_extend_target(Core # QReadWriteLock::destroyRecursive(QReadWriteLockPrivate*) "_ZN*14QReadWriteLock16destroyRecursiveEP*21QReadWriteLockPrivate*" ) + +function(qt_internal_library_deprecation_level) + # QT_DISABLE_DEPRECATED_UP_TO controls which version we use as a cut-off + # compiling in to the library. E.g. if it is set to QT_VERSION then no + # code which was deprecated before QT_VERSION will be compiled in. + if(NOT DEFINED QT_DISABLE_DEPRECATED_UP_TO) + if(WIN32) + # On Windows, due to the way DLLs work, we need to export all functions, + # including the inlines + set(QT_DISABLE_DEPRECATED_UP_TO "0x040800") + else() + # On other platforms, Qt's own compilation does need to compile the Qt 5.0 API + set(QT_DISABLE_DEPRECATED_UP_TO "0x050000") + endif() + elseif(NOT QT_DISABLE_DEPRECATED_UP_TO MATCHES "^0x[0-9][0-9][0-9][0-9][0-9][0-9]$") + message(FATAL_ERROR "Ivalid format of the QT_DISABLE_DEPRECATED_UP_TO macro:" + " ${QT_DISABLE_DEPRECATED_UP_TO}. The expected format is the hexadecimal number," + " e.g. 0x060102") + endif() + # QT_WARN_DEPRECATED_UP_TO controls the upper-bound of deprecation + # warnings that are emitted. E.g. if it is set to 0x060500 then all use of + # things deprecated in or before 6.5.0 will be warned against. + set(QT_WARN_DEPRECATED_UP_TO 0x070000) + + set(output_header "${CMAKE_CURRENT_BINARY_DIR}/global/qtdeprecationdefinitions.h") + configure_file( + "${CMAKE_CURRENT_SOURCE_DIR}/global/qtdeprecationdefinitions.h.in" + "${output_header}" + @ONLY + NEWLINE_STYLE UNIX + ) + + target_sources(Core PRIVATE "${output_header}") + set_source_files_properties("${output_header}" PROPERTIES GENERATED TRUE) +endfunction() +qt_internal_library_deprecation_level() |