Backports:
Fixes #31009.
Nix patches cmake to remove the root directory `/` from
`CMAKE_SYSTEM_PREFIX_PATH`:
https://github.com/NixOS/nixpkgs/blob/428b49b28ebc8938a6d9f6c540d32d7a06713972/pkgs/by-name/cm/cmake/001-search-path.diff#L10
Without this, and when using the toolchain for depends builds, cmake's
`find_path()` and `find_package()` do not know where to find
dependencies, causing issues like:
https://github.com/bitcoin/bitcoin/issues/32428
Adding this path back via CMAKE_PREFIX_PATH is harmless on other
systems, and fixes the toolchain for Nix users.
We append the `/` dir a maximum of once, as the toolchain may be called
repeatedly during builds.
Co-authored-by: Russell Yanofsky <russ@yanofsky.org>
Co-authored-by: josibake <josibake@protonmail.com>
Github-Pull: #32798
Rebased-From: e27a94596f2a1f5e04722a16165717cc6e891d36
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/32810.
See the guideline for information on the review process.
Type | Reviewers |
---|---|
ACK | pinheadmz, hebasto, willcl-ark |
Stale ACK | josibake |
If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.
Possible typos and grammar issues:
No other typos were found.
drahtbot_id_4_m
The catchup loop in the outbound eviction functional test currently has
a small flaw, as the contained waiting for a `getheaders` message just
waits for any such message instead of one with the intended block hash.
The reason is that the `prev_prev_hash` variable is set incorrectly,
since the `tip_header` instance is not updated and its field `.hash` is
None. Fix that by updating `tip_header` and use the correct field -- we
want the tip header's previous hash (`.hashPrevBlock`).
Github-Pull: #32742
Rebased-From: dd8447f70faf6419b4617da3c1b57098e9cd66a6
According to the CMake documentation, `HINTS` "should be paths computed
by system introspection, such as a hint provided by the location of
another item already found", which is precisely the case in the
`FindQRencode` module.
Entries in `HINTS` are searched before those in `PATHS`. On macOS,
Homebrew’s `libqrencode` will therefore be located at its real path
rather than via the symlink in the default prefix.
Github-Pull: #32805
Rebased-From: ead44687483e9c936ba970de890c01d5e7ad3485
On macOS, this change ensures that the Boost package is located at its
real path rather than via the symlink in the default prefix.
Github-Pull: #32814
Rebased-From: 8800b5acc1ef7abe6c5260ae0be5386b1d593a19
Tested on M4 macOS 15.5 that with 5987c1b6abaefad61d8d2cca605349354432398a having qt5 and qt6 (qt@5
and qt
via Homebrew) leads to the issues described in #31009, but with fe8034b09c53f49d02b54f4e55cfe11bbd113fed it’s happy.
Will test on Intel later.
The fix also works on Intel with macOS 13.7.6
32-bit architecture is limited to 4GiB, so it doesn't make sense to set a too high value. 500 MB is
chosen as an arbitrary maximum value that seems reasonable.
Github-Pull: #32530
Rebased-From: 2c43b6adebbfabb3c8dd82fe821ce0a5d6173b3b
32-bit architecture is limited to 4GiB, so it doesn't make sense to set a too
high value. Since this setting is performance critical, pick an arbitrary value
higher than for -maxmempool but still reasonable.
Github-Pull: #32530
Rebased-From: 9f8e7b0b3b787b873045a4a8194e77d0b0a2b3b6
Github-Pull: #32833
Rebased-From: 7dc43ea503a2c145ffd4fe14b794300bfc2bcdee
ACK ef2a013e31cf6fbded5735a998b4c992c176493d
Build on macos/arm64 after experiencing issues locally building a checked-out v29.0 GUI with only qt 6 installed. Can confirm these backports solve that problem and GUI runs fine. Did not test the other backports.
0-----BEGIN PGP SIGNED MESSAGE-----
1Hash: SHA256
2
3ACK ef2a013e31cf6fbded5735a998b4c992c176493d
4-----BEGIN PGP SIGNATURE-----
5
6iQIzBAEBCAAdFiEE5hdzzW4BBA4vG9eM5+KYS2KJyToFAmhli/0ACgkQ5+KYS2KJ
7yTruOxAAm8c/A9GC5xv2ZIHK+F8sCXyDLzXKm0OHHRGXVoalows6vtRbCx6hdS17
8UhZFQA+McBLeLz/O3D5wtUROXafXSQ3qveZKjiwJWsi2gve/iK3DF2V9kX8B7YW4
963Oyje5vV+d8xa9UfyzMymWxYU6E9OORp5fjJM6hjudOhKABgaOIet0vF/mpqZL8
10IATlFjQ27pFlyzZ0yZWrB8i6IZjrFuBaIM2fWX4Msr8te56h64s0Zp6TRJbOX9r6
11ViXnw3N75Zp6zOwW9qa5i24M4Zo+mLYWup1jUhjE0IxibwnFT6/QVbdvl8Q1Vx/R
12t8xkxmZr4W+gCBoTkrDJCDb6N5xvWK9N6j70g6VykY7p2pOTbCxmnOYtDovGH+xl
13F/StVeqRwwzuH7ys5xw5LBWaWp9M8v0j2gDO4sXK+KZ6UJMEYJmTV7h3iUhGvL2U
14QE6vCE8Gbq3DJN+mn5tHPqKYn5Ecr86Wt3CElquGvzS4jtHnhqq1KB8h7UmZQjvg
15xNJhibtWa7nao+74/wWo7xiU6/MRgC9/URO/TaSu/2Z10i2U0jJE4w7WpbfOkWQT
16r0B55rOV/P2nBQj0Su1s5ltLiuy5PZAfbswoI64Nz9ZgPQIgjff9lent61jXFgNo
17TTIC7OOz8+8sL73nXRBqV9n6rCVS1h1Hr0YQcgAumqbU1Td5KfY=
18=aEyl
19-----END PGP SIGNATURE-----
pinheadmz’s public key is on openpgp.org
re-ACK ef2a013e31cf6fbded5735a998b4c992c176493d.
Missed credits to @darosior and @ryanofsky?
ACK ef2a013e31cf6fbded5735a998b4c992c176493d
…modulo hebasto’s comments.
Backports all look correct.