v31.1-roots.1 · Commit 1: [PATCH 01/17] build(roots): establish v31 portability foundation
src/qt/CMakeLists.txt
Before: src/qt/CMakeLists.txt · After: src/qt/CMakeLists.txt
File metadata
index 58fa08b56ab90c2e038d9a2c9e515fefdef1b34b..5cd5e8e8cf66d1f184b5067cf2a29e5fa09a4829 100644
Download original patch · Release notes
Diff rows 1–82 of 82. Line numbers refer to the original before/after files.
+ Added− RemovedUnmarked lines are context.
Scroll the code area horizontally to read long lines. Before is on the left; after is on the right. Unified view fits narrow screens more easily.
src/qt/CMakeLists.txt
CHANGED
|
@@ -11,19 +11,27 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
|
| 11 |
string(APPEND CMAKE_OBJCXX_COMPILE_OBJECT " ${APPEND_CPPFLAGS} ${APPEND_CXXFLAGS}")
|
| 12 |
endif()
|
| 13 |
|
| 14 |
-
get_target_property(qt_lib_type Qt6::Core TYPE)
|
|
|
|
|
|
|
|
|
|
| 15 |
|
| 16 |
function(import_plugins target)
|
| 17 |
if(qt_lib_type STREQUAL "STATIC_LIBRARY")
|
| 18 |
-
set(plugins Qt6::QMinimalIntegrationPlugin)
|
| 19 |
if(CMAKE_SYSTEM_NAME MATCHES "^(Linux|FreeBSD)$")
|
| 20 |
-
list(APPEND plugins Qt6::QXcbIntegrationPlugin)
|
| 21 |
elseif(WIN32)
|
| 22 |
-
list(APPEND plugins Qt6::QWindowsIntegrationPlugin Qt6::QModernWindowsStylePlugin)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 23 |
elseif(APPLE)
|
| 24 |
-
list(APPEND plugins Qt6::QCocoaIntegrationPlugin Qt6::QMacStylePlugin)
|
| 25 |
endif()
|
| 26 |
-
qt6_import_plugins(${target}
|
| 27 |
INCLUDE ${plugins}
|
| 28 |
EXCLUDE_BY_TYPE
|
| 29 |
accessiblebridge
|
|
@@ -55,8 +63,8 @@ set(CMAKE_AUTOUIC_SEARCH_PATHS forms)
|
|
| 55 |
|
| 56 |
set(CMAKE_AUTORCC OFF)
|
| 57 |
configure_file(bitcoin_locale.qrc bitcoin_locale.qrc USE_SOURCE_PERMISSIONS COPYONLY)
|
| 58 |
-
qt6_add_resources(BITCOIN_QRC bitcoin.qrc)
|
| 59 |
-
qt6_add_resources(BITCOIN_LOCALE_QRC ${CMAKE_CURRENT_BINARY_DIR}/bitcoin_locale.qrc)
|
| 60 |
# See: https://bugreports.qt.io/browse/QTBUG-141858.
|
| 61 |
get_target_property(warn_flags warn_interface INTERFACE_COMPILE_OPTIONS)
|
| 62 |
if("-Wtrailing-whitespace=any" IN_LIST warn_flags)
|
|
@@ -145,7 +153,7 @@ set_property(SOURCE macnotificationhandler.mm
|
|
| 145 |
)
|
| 146 |
target_link_libraries(bitcoinqt
|
| 147 |
PUBLIC
|
| 148 |
-
Qt6::Widgets
|
| 149 |
PRIVATE
|
| 150 |
core_interface
|
| 151 |
bitcoin_cli
|
|
@@ -223,18 +231,18 @@ if(ENABLE_WALLET)
|
|
| 223 |
target_link_libraries(bitcoinqt
|
| 224 |
PRIVATE
|
| 225 |
bitcoin_wallet
|
| 226 |
-
Qt6::Network
|
| 227 |
)
|
| 228 |
endif()
|
| 229 |
|
| 230 |
if(WITH_DBUS)
|
| 231 |
-
target_link_libraries(bitcoinqt PRIVATE Qt6::DBus)
|
| 232 |
endif()
|
| 233 |
|
| 234 |
if(qt_lib_type STREQUAL "STATIC_LIBRARY")
|
| 235 |
# We want to define static plugins to link ourselves, thus preventing
|
| 236 |
# automatic linking against a "sane" set of default static plugins.
|
| 237 |
-
qt6_import_plugins(bitcoinqt
|
| 238 |
EXCLUDE_BY_TYPE
|
| 239 |
accessiblebridge
|
| 240 |
platforms
|
|
@@ -306,8 +314,8 @@ else()
|
|
| 306 |
add_custom_target(translate COMMAND ${CMAKE_COMMAND}
|
| 307 |
-D "PROJECT_SOURCE_DIR=${PROJECT_SOURCE_DIR}"
|
| 308 |
-D "COPYRIGHT_HOLDERS=${COPYRIGHT_HOLDERS}"
|
| 309 |
-
-D "LCONVERT_EXECUTABLE=$<TARGET_FILE:Qt6::lconvert>"
|
| 310 |
-
-D "LUPDATE_EXECUTABLE=$<TARGET_FILE:Qt6::lupdate>"
|
| 311 |
-D "XGETTEXT_EXECUTABLE=${XGETTEXT_EXECUTABLE}"
|
| 312 |
-P ${PROJECT_SOURCE_DIR}/share/qt/translate.cmake
|
| 313 |
)
|
|
|
|
| 11 |
string(APPEND CMAKE_OBJCXX_COMPILE_OBJECT " ${APPEND_CPPFLAGS} ${APPEND_CXXFLAGS}")
|
| 12 |
endif()
|
| 13 |
|
| 14 |
+
get_target_property(qt_lib_type Qt${WITH_QT_VERSION}::Core TYPE)
|
| 15 |
+
if(qt_lib_type STREQUAL "STATIC_LIBRARY" AND NOT COMMAND qt${WITH_QT_VERSION}_import_plugins)
|
| 16 |
+
message(FATAL_ERROR "Static Qt requires the import_plugins CMake command (Qt 5.14 or newer for Qt 5).")
|
| 17 |
+
endif()
|
| 18 |
|
| 19 |
function(import_plugins target)
|
| 20 |
if(qt_lib_type STREQUAL "STATIC_LIBRARY")
|
| 21 |
+
set(plugins Qt${WITH_QT_VERSION}::QMinimalIntegrationPlugin)
|
| 22 |
if(CMAKE_SYSTEM_NAME MATCHES "^(Linux|FreeBSD)$")
|
| 23 |
+
list(APPEND plugins Qt${WITH_QT_VERSION}::QXcbIntegrationPlugin)
|
| 24 |
elseif(WIN32)
|
| 25 |
+
list(APPEND plugins Qt${WITH_QT_VERSION}::QWindowsIntegrationPlugin)
|
| 26 |
+
if(WITH_QT_VERSION STREQUAL "5")
|
| 27 |
+
list(APPEND plugins Qt5::QWindowsVistaStylePlugin)
|
| 28 |
+
else()
|
| 29 |
+
list(APPEND plugins Qt6::QModernWindowsStylePlugin)
|
| 30 |
+
endif()
|
| 31 |
elseif(APPLE)
|
| 32 |
+
list(APPEND plugins Qt${WITH_QT_VERSION}::QCocoaIntegrationPlugin Qt${WITH_QT_VERSION}::QMacStylePlugin)
|
| 33 |
endif()
|
| 34 |
+
cmake_language(CALL qt${WITH_QT_VERSION}_import_plugins ${target}
|
| 35 |
INCLUDE ${plugins}
|
| 36 |
EXCLUDE_BY_TYPE
|
| 37 |
accessiblebridge
|
|
|
|
| 63 |
|
| 64 |
set(CMAKE_AUTORCC OFF)
|
| 65 |
configure_file(bitcoin_locale.qrc bitcoin_locale.qrc USE_SOURCE_PERMISSIONS COPYONLY)
|
| 66 |
+
cmake_language(CALL qt${WITH_QT_VERSION}_add_resources BITCOIN_QRC bitcoin.qrc)
|
| 67 |
+
cmake_language(CALL qt${WITH_QT_VERSION}_add_resources BITCOIN_LOCALE_QRC ${CMAKE_CURRENT_BINARY_DIR}/bitcoin_locale.qrc)
|
| 68 |
# See: https://bugreports.qt.io/browse/QTBUG-141858.
|
| 69 |
get_target_property(warn_flags warn_interface INTERFACE_COMPILE_OPTIONS)
|
| 70 |
if("-Wtrailing-whitespace=any" IN_LIST warn_flags)
|
|
|
|
| 153 |
)
|
| 154 |
target_link_libraries(bitcoinqt
|
| 155 |
PUBLIC
|
| 156 |
+
Qt${WITH_QT_VERSION}::Widgets
|
| 157 |
PRIVATE
|
| 158 |
core_interface
|
| 159 |
bitcoin_cli
|
|
|
|
| 231 |
target_link_libraries(bitcoinqt
|
| 232 |
PRIVATE
|
| 233 |
bitcoin_wallet
|
| 234 |
+
Qt${WITH_QT_VERSION}::Network
|
| 235 |
)
|
| 236 |
endif()
|
| 237 |
|
| 238 |
if(WITH_DBUS)
|
| 239 |
+
target_link_libraries(bitcoinqt PRIVATE Qt${WITH_QT_VERSION}::DBus)
|
| 240 |
endif()
|
| 241 |
|
| 242 |
if(qt_lib_type STREQUAL "STATIC_LIBRARY")
|
| 243 |
# We want to define static plugins to link ourselves, thus preventing
|
| 244 |
# automatic linking against a "sane" set of default static plugins.
|
| 245 |
+
cmake_language(CALL qt${WITH_QT_VERSION}_import_plugins bitcoinqt
|
| 246 |
EXCLUDE_BY_TYPE
|
| 247 |
accessiblebridge
|
| 248 |
platforms
|
|
|
|
| 314 |
add_custom_target(translate COMMAND ${CMAKE_COMMAND}
|
| 315 |
-D "PROJECT_SOURCE_DIR=${PROJECT_SOURCE_DIR}"
|
| 316 |
-D "COPYRIGHT_HOLDERS=${COPYRIGHT_HOLDERS}"
|
| 317 |
+
-D "LCONVERT_EXECUTABLE=$<TARGET_FILE:Qt${WITH_QT_VERSION}::lconvert>"
|
| 318 |
+
-D "LUPDATE_EXECUTABLE=$<TARGET_FILE:Qt${WITH_QT_VERSION}::lupdate>"
|
| 319 |
-D "XGETTEXT_EXECUTABLE=${XGETTEXT_EXECUTABLE}"
|
| 320 |
-P ${PROJECT_SOURCE_DIR}/share/qt/translate.cmake
|
| 321 |
)
|