CMake: Remove old 3rdparty mechanism for double conversion
Change-Id: I2b20d4d9d95a1f7f59bc506046a1ebc20eb305f7 Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This commit is contained in:
parent
b04d087bd0
commit
729a73a9cf
@ -5,12 +5,11 @@ if(TARGET WrapDoubleConversion::WrapDoubleConversion)
|
||||
return()
|
||||
endif()
|
||||
|
||||
add_library(WrapDoubleConversion::WrapDoubleConversion INTERFACE IMPORTED)
|
||||
|
||||
find_package(double-conversion)
|
||||
if (double-conversion_FOUND)
|
||||
include(FeatureSummary)
|
||||
set_package_properties(double-conversion PROPERTIES TYPE REQUIRED)
|
||||
add_library(WrapDoubleConversion::WrapDoubleConversion INTERFACE IMPORTED)
|
||||
target_link_libraries(WrapDoubleConversion::WrapDoubleConversion
|
||||
INTERFACE double-conversion::double-conversion)
|
||||
set(WrapDoubleConversion_FOUND 1)
|
||||
@ -44,18 +43,11 @@ int main(int argc, char *argv[]) {
|
||||
return 0;
|
||||
}" HAVE_SPRINTF_L)
|
||||
|
||||
# In a static build, we need to find the package to bring the target into scope.
|
||||
find_package(QtDoubleConversion QUIET)
|
||||
|
||||
if (HAVE__SPRINTF_L OR HAVE_SPRINTF_L)
|
||||
add_library(WrapDoubleConversion::WrapDoubleConversion INTERFACE IMPORTED)
|
||||
target_compile_definitions(WrapDoubleConversion::WrapDoubleConversion
|
||||
INTERFACE QT_NO_DOUBLECONVERSION)
|
||||
set(WrapDoubleConversion_FOUND 1)
|
||||
elseif(TARGET QtDoubleConversion)
|
||||
# If a Config package wasn't found, and the C++ library doesn't contain the necessary functions,
|
||||
# use the library bundled with Qt.
|
||||
target_link_libraries(WrapDoubleConversion::WrapDoubleConversion INTERFACE QtDoubleConversion)
|
||||
set(WrapDoubleConversion_FOUND 1)
|
||||
else()
|
||||
set(WrapDoubleConversion_FOUND 0)
|
||||
endif()
|
||||
|
1
src/3rdparty/CMakeLists.txt
vendored
1
src/3rdparty/CMakeLists.txt
vendored
@ -1,7 +1,6 @@
|
||||
# special case skip regeneration
|
||||
# The file is maintained manually
|
||||
add_subdirectory(harfbuzz)
|
||||
add_subdirectory(double-conversion)
|
||||
|
||||
if(QT_FEATURE_png AND NOT QT_FEATURE_system_png)
|
||||
add_subdirectory(libpng)
|
||||
|
21
src/3rdparty/double-conversion/CMakeLists.txt
vendored
21
src/3rdparty/double-conversion/CMakeLists.txt
vendored
@ -1,21 +0,0 @@
|
||||
# special case begin
|
||||
|
||||
add_library(QtDoubleConversion STATIC
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/bignum.cc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/bignum-dtoa.cc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/cached-powers.cc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/diy-fp.cc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/double-conversion.cc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/fast-dtoa.cc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/fixed-dtoa.cc
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/strtod.cc
|
||||
)
|
||||
|
||||
target_include_directories(QtDoubleConversion PUBLIC
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include/double-conversion>
|
||||
)
|
||||
|
||||
qt_install_3rdparty_library(QtDoubleConversion)
|
||||
# special case end
|
@ -235,8 +235,6 @@ qt_add_module(Core
|
||||
../3rdparty/md5
|
||||
../3rdparty/sha3
|
||||
../3rdparty/tinycbor/src
|
||||
LIBRARIES
|
||||
doubleconversion
|
||||
PRECOMPILED_HEADER
|
||||
"global/qt_pch.h"
|
||||
NO_PCH_SOURCES
|
||||
@ -631,6 +629,29 @@ qt_extend_target(Core CONDITION QT_FEATURE_commandlineparser
|
||||
tools/qcommandlineparser.cpp tools/qcommandlineparser.h
|
||||
)
|
||||
|
||||
qt_extend_target(Core CONDITION QT_FEATURE_system_doubleconversion
|
||||
LIBRARIES
|
||||
WrapDoubleConversion::WrapDoubleConversion
|
||||
)
|
||||
|
||||
qt_extend_target(Core CONDITION QT_FEATURE_doubleconversion AND NOT QT_FEATURE_system_doubleconversion
|
||||
SOURCES
|
||||
../3rdparty/double-conversion/bignum.cc ../3rdparty/double-conversion/bignum.h
|
||||
../3rdparty/double-conversion/bignum-dtoa.cc ../3rdparty/double-conversion/bignum-dtoa.h
|
||||
../3rdparty/double-conversion/cached-powers.cc ../3rdparty/double-conversion/cached-powers.h
|
||||
../3rdparty/double-conversion/diy-fp.cc ../3rdparty/double-conversion/diy-fp.h
|
||||
../3rdparty/double-conversion/double-conversion.cc
|
||||
../3rdparty/double-conversion/fast-dtoa.cc ../3rdparty/double-conversion/fast-dtoa.h
|
||||
../3rdparty/double-conversion/fixed-dtoa.cc ../3rdparty/double-conversion/fixed-dtoa.h
|
||||
../3rdparty/double-conversion/ieee.h
|
||||
../3rdparty/double-conversion/include/double-conversion/double-conversion.h
|
||||
../3rdparty/double-conversion/include/double-conversion/utils.h
|
||||
../3rdparty/double-conversion/strtod.cc ../3rdparty/double-conversion/strtod.h
|
||||
INCLUDE_DIRECTORIES
|
||||
../3rdparty/double-conversion/..
|
||||
../3rdparty/double-conversion/include
|
||||
)
|
||||
|
||||
qt_extend_target(Core CONDITION QT_FEATURE_easingcurve
|
||||
SOURCES
|
||||
tools/qeasingcurve.cpp tools/qeasingcurve.h
|
||||
|
@ -2,15 +2,8 @@
|
||||
|
||||
# special case begin
|
||||
qt_find_package(Threads PROVIDED_TARGETS Threads::Threads)
|
||||
qt_find_package(WrapDoubleConversion REQUIRED
|
||||
PROVIDED_TARGETS WrapDoubleConversion::WrapDoubleConversion)
|
||||
qt_find_package(WrapPCRE2 PROVIDED_TARGETS WrapPCRE2::WrapPCRE2)
|
||||
|
||||
if (NOT WrapDoubleConversion_FOUND)
|
||||
message(FATAL_ERROR "Your C library does not provide \
|
||||
sscanf_l/snprintf_l _snprintf_l/_sscanf_l. \
|
||||
You need to use libdouble-conversion for double/string conversion.")
|
||||
endif()
|
||||
|
||||
# compute the reverse relative path from QtCoreConfigExtras to the install prefix
|
||||
# this is used in QtCoreConfigExtras to make its install paths relocatable
|
||||
@ -251,11 +244,9 @@ qt_add_module(Core
|
||||
NO_PCH_SOURCES
|
||||
"text/qstring_compat.cpp"
|
||||
LIBRARIES
|
||||
# double-conversion # special case remove
|
||||
Qt::GlobalConfigPrivate # special case
|
||||
QtHarfBuzz # special case
|
||||
Threads::Threads # special case
|
||||
WrapDoubleConversion::WrapDoubleConversion # special case
|
||||
PUBLIC_LIBRARIES # special case:
|
||||
Qt::Platform # special case:
|
||||
# special case begin
|
||||
@ -730,6 +721,29 @@ qt_extend_target(Core CONDITION QT_FEATURE_commandlineparser
|
||||
tools/qcommandlineparser.cpp tools/qcommandlineparser.h
|
||||
)
|
||||
|
||||
qt_extend_target(Core CONDITION QT_FEATURE_system_doubleconversion
|
||||
LIBRARIES
|
||||
WrapDoubleConversion::WrapDoubleConversion
|
||||
)
|
||||
|
||||
qt_extend_target(Core CONDITION QT_FEATURE_doubleconversion AND NOT QT_FEATURE_system_doubleconversion
|
||||
SOURCES
|
||||
../3rdparty/double-conversion/bignum.cc ../3rdparty/double-conversion/bignum.h
|
||||
../3rdparty/double-conversion/bignum-dtoa.cc ../3rdparty/double-conversion/bignum-dtoa.h
|
||||
../3rdparty/double-conversion/cached-powers.cc ../3rdparty/double-conversion/cached-powers.h
|
||||
../3rdparty/double-conversion/diy-fp.cc ../3rdparty/double-conversion/diy-fp.h
|
||||
../3rdparty/double-conversion/double-conversion.cc
|
||||
../3rdparty/double-conversion/fast-dtoa.cc ../3rdparty/double-conversion/fast-dtoa.h
|
||||
../3rdparty/double-conversion/fixed-dtoa.cc ../3rdparty/double-conversion/fixed-dtoa.h
|
||||
../3rdparty/double-conversion/ieee.h
|
||||
../3rdparty/double-conversion/include/double-conversion/double-conversion.h
|
||||
../3rdparty/double-conversion/include/double-conversion/utils.h
|
||||
../3rdparty/double-conversion/strtod.cc ../3rdparty/double-conversion/strtod.h
|
||||
INCLUDE_DIRECTORIES
|
||||
../3rdparty/double-conversion/..
|
||||
../3rdparty/double-conversion/include
|
||||
)
|
||||
|
||||
qt_extend_target(Core CONDITION QT_FEATURE_easingcurve
|
||||
SOURCES
|
||||
tools/qeasingcurve.cpp tools/qeasingcurve.h
|
||||
|
@ -2,6 +2,10 @@
|
||||
|
||||
#### Inputs
|
||||
|
||||
# input doubleconversion
|
||||
set(INPUT_doubleconversion "undefined" CACHE STRING "")
|
||||
set_property(CACHE INPUT_doubleconversion PROPERTY STRINGS undefined no qt system)
|
||||
|
||||
# input iconv
|
||||
set(INPUT_iconv "undefined" CACHE STRING "")
|
||||
set_property(CACHE INPUT_iconv PROPERTY STRINGS undefined no yes posix sun gnu)
|
||||
@ -10,6 +14,7 @@ set_property(CACHE INPUT_iconv PROPERTY STRINGS undefined no yes posix sun gnu)
|
||||
|
||||
#### Libraries
|
||||
|
||||
qt_find_package(WrapDoubleConversion PROVIDED_TARGETS WrapDoubleConversion::WrapDoubleConversion)
|
||||
qt_find_package(GLIB2 PROVIDED_TARGETS GLIB2::GLIB2)
|
||||
qt_find_package(ICU COMPONENTS i18n uc data PROVIDED_TARGETS ICU::i18n ICU::uc ICU::data)
|
||||
qt_find_package(Libsystemd PROVIDED_TARGETS PkgConfig::Libsystemd)
|
||||
@ -529,6 +534,16 @@ qt_feature("clock-monotonic" PUBLIC
|
||||
CONDITION QT_FEATURE_clock_gettime AND TEST_clock_monotonic
|
||||
)
|
||||
qt_feature_definition("clock-monotonic" "QT_NO_CLOCK_MONOTONIC" NEGATE VALUE "1")
|
||||
qt_feature("doubleconversion" PUBLIC PRIVATE
|
||||
LABEL "DoubleConversion"
|
||||
)
|
||||
qt_feature_definition("doubleconversion" "QT_NO_DOUBLECONVERSION" NEGATE VALUE "1")
|
||||
qt_feature("system-doubleconversion" PRIVATE
|
||||
LABEL " Using system DoubleConversion"
|
||||
CONDITION QT_FEATURE_doubleconversion AND WrapDoubleConversion_FOUND
|
||||
ENABLE INPUT_doubleconversion STREQUAL 'system'
|
||||
DISABLE INPUT_doubleconversion STREQUAL 'qt'
|
||||
)
|
||||
qt_feature("cxx11_future" PUBLIC
|
||||
LABEL "C++11 <future>"
|
||||
CONDITION TEST_cxx11_future
|
||||
|
@ -461,7 +461,6 @@ def parseInput(ctx, sinput, data, cm_fh):
|
||||
"widgets",
|
||||
"xplatform",
|
||||
"zlib",
|
||||
"doubleconversion",
|
||||
"eventfd",
|
||||
"glib",
|
||||
"icu",
|
||||
@ -772,7 +771,6 @@ def get_feature_mapping():
|
||||
},
|
||||
"debug": {"condition": "CMAKE_BUILD_TYPE STREQUAL Debug OR Debug IN_LIST CMAKE_CONFIGURATION_TYPES"},
|
||||
"dlopen": {"condition": "UNIX"},
|
||||
"doubleconversion": None,
|
||||
"enable_gdb_index": None,
|
||||
"enable_new_dtags": None,
|
||||
"force_debug_info": {
|
||||
@ -838,7 +836,6 @@ def get_feature_mapping():
|
||||
"enable": "TEST_sun_iconv",
|
||||
"disable": "NOT TEST_sun_iconv",
|
||||
},
|
||||
"system-doubleconversion": None, # No system libraries anymore!
|
||||
"system-sqlite": None,
|
||||
"system-xcb": None,
|
||||
"tiff": {"condition": "QT_FEATURE_imageformatplugin AND TIFF_FOUND"},
|
||||
|
@ -398,7 +398,7 @@ _library_map = [
|
||||
LibraryMapping("directfb", "DirectFB", "PkgConfig::DirectFB"),
|
||||
LibraryMapping("db2", "DB2", "DB2::DB2"),
|
||||
LibraryMapping("dbus", "WrapDBus1", "dbus-1", resultVariable="DBus1"),
|
||||
LibraryMapping("doubleconversion", None, None),
|
||||
LibraryMapping("doubleconversion", "WrapDoubleConversion", "WrapDoubleConversion::WrapDoubleConversion"),
|
||||
LibraryMapping("drm", "Libdrm", "Libdrm::Libdrm"),
|
||||
LibraryMapping("egl", "EGL", "EGL::EGL"),
|
||||
LibraryMapping("flite", "Flite", "Flite::Flite"),
|
||||
|
@ -1564,6 +1564,7 @@ def map_condition(condition: str) -> str:
|
||||
and is_known_3rd_party_library(feature_name[7:])
|
||||
and not feature_name.startswith("system_jpeg")
|
||||
and not feature_name.startswith("system_zlib")
|
||||
and not feature_name.startswith("system_doubleconversion")
|
||||
):
|
||||
part = "ON"
|
||||
elif feature == "dlopen":
|
||||
|
Loading…
x
Reference in New Issue
Block a user