Skip to content

Commit 4145a94

Browse files
committed
Merge bitcoin/bitcoin#32731: depends: Build qt package for FreeBSD hosts
173394d depends: Build `qt` package for FreeBSD hosts (Hennadii Stepanov) Pull request description: This PR continues the work started in bitcoin/bitcoin#23948. Here is an excerpt from the log: ``` $ ./build/bin/bitcoin-qt -printtoconsole 2025-06-12T01:06:56Z Bitcoin Core version v29.99.0-15de25ba2a28 (release build) 2025-06-12T01:06:56Z Qt 6.7.3 (static), plugin=xcb 2025-06-12T01:06:56Z Static plugins: 2025-06-12T01:06:56Z QMinimalIntegrationPlugin, version 395008 2025-06-12T01:06:56Z QXcbIntegrationPlugin, version 395008 2025-06-12T01:06:56Z Style: fusion / QFusionStyle 2025-06-12T01:06:56Z System: FreeBSD 14.3-RELEASE, x86_64-little_endian-lp64 ``` And here are the screenshots: ![image](https://github.com/user-attachments/assets/acf3fefc-ee3f-41cb-ab9a-3bc4d49c7054) ![image](https://github.com/user-attachments/assets/6280303f-9c7b-445d-8428-172ea998343d) ACKs for top commit: vasild: ACK 173394d Tree-SHA512: 42a0bd11e4ef1a23efcfe6c4ab179dc667a076e65060891ce8358b3fe78de4e3ea33f975387d4236cc2ac620e2935b0a29c278065a47f038c66658106bf36755
2 parents 67ea4b9 + 173394d commit 4145a94

File tree

5 files changed

+10
-3
lines changed

5 files changed

+10
-3
lines changed

depends/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,10 @@ To build dependencies for the current arch+OS:
3333

3434
pkg install bash cmake curl gmake
3535

36+
Skip the following packages if you don't intend to use the GUI and will build with [`NO_QT=1`](#dependency-options):
37+
38+
pkg install bison ninja pkgconf python3
39+
3640
To build dependencies for the current arch+OS:
3741

3842
gmake

depends/packages/packages.mk

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ qrencode_darwin_packages = qrencode
99
qrencode_mingw32_packages = qrencode
1010

1111
qt_linux_packages:=qt expat libxcb xcb_proto libXau xproto freetype fontconfig libxkbcommon libxcb_util libxcb_util_cursor libxcb_util_render libxcb_util_keysyms libxcb_util_image libxcb_util_wm
12+
qt_freebsd_packages:=$(qt_linux_packages)
1213
qt_darwin_packages=qt
1314
qt_mingw32_packages=qt
1415
ifneq ($(host),$(build))

depends/packages/qt.mk

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ $(package)_sha256_hash=$(qt_details_qtbase_sha256_hash)
77
ifneq ($(host),$(build))
88
$(package)_dependencies := native_$(package)
99
endif
10-
$(package)_linux_dependencies=freetype fontconfig libxcb libxkbcommon libxcb_util libxcb_util_cursor libxcb_util_render libxcb_util_keysyms libxcb_util_image libxcb_util_wm
10+
$(package)_linux_dependencies := freetype fontconfig libxcb libxkbcommon libxcb_util libxcb_util_cursor libxcb_util_render libxcb_util_keysyms libxcb_util_image libxcb_util_wm
11+
$(package)_freebsd_dependencies := $($(package)_linux_dependencies)
1112
$(package)_patches_path := $(qt_details_patches_path)
1213
$(package)_patches := dont_hardcode_pwd.patch
1314
$(package)_patches += qtbase-moc-ignore-gcc-macro.patch
@@ -146,6 +147,7 @@ $(package)_config_opts_linux += -xcb
146147
ifneq ($(LTO),)
147148
$(package)_config_opts_linux += -ltcg
148149
endif
150+
$(package)_config_opts_freebsd := $$($(package)_config_opts_linux)
149151

150152
$(package)_config_opts_mingw32 := -no-dbus
151153
$(package)_config_opts_mingw32 += -no-freetype

depends/toolchain.cmake.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Darwin" AND NOT CMAKE_HOST_APPLE)
117117
endif()
118118

119119

120-
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
120+
if(CMAKE_SYSTEM_NAME MATCHES "^(Linux|FreeBSD)$")
121121
# Customize pkg-config behavior for finding dependencies
122122
# of the xcb QPA platform plugin:
123123
# 1. Restrict search paths to the depends.

src/qt/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ get_target_property(qt_lib_type Qt6::Core TYPE)
1616
function(import_plugins target)
1717
if(qt_lib_type STREQUAL "STATIC_LIBRARY")
1818
set(plugins Qt6::QMinimalIntegrationPlugin)
19-
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
19+
if(CMAKE_SYSTEM_NAME MATCHES "^(Linux|FreeBSD)$")
2020
list(APPEND plugins Qt6::QXcbIntegrationPlugin)
2121
elseif(WIN32)
2222
list(APPEND plugins Qt6::QWindowsIntegrationPlugin Qt6::QModernWindowsStylePlugin)

0 commit comments

Comments
 (0)