-
Notifications
You must be signed in to change notification settings - Fork 37.7k
depends: qt 5.15.14 and fix macOS build with Clang 18 #30198
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Patch Qts internal libpng to resolve the failure. I would like to have this patched, so we can continue working on the removal of `FORCE_USE_SYSTEM_CLANG`. Otherwise builds will be broken using the default clang (18) on the current Ubuntu LTS (24.04).
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. Code CoverageFor detailed information about the code coverage, see the test coverage report. ReviewsSee the guideline for information on the review process.
If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update. ConflictsReviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first. |
Guix Build (aarch64 and x86_64): 1efa3e0205032d6cfe5517ce36ab63379afa22268dcbb0b92150719baa030682 guix-build-0a3631fc352e/output/aarch64-linux-gnu/SHA256SUMS.part
e3db302484148c00cab7150e3451d2c95dae14062cb4165c8e5a28d71d77e630 guix-build-0a3631fc352e/output/aarch64-linux-gnu/bitcoin-0a3631fc352e-aarch64-linux-gnu-debug.tar.gz
f9792f8db8635bb19f6a2d7c73f1b0780e5776734c12912c5e7172f357f7fa1f guix-build-0a3631fc352e/output/aarch64-linux-gnu/bitcoin-0a3631fc352e-aarch64-linux-gnu.tar.gz
708374dcac162523ae5e2e4e7d70ff9459047a81bc9361d88b13dfdd785ebce7 guix-build-0a3631fc352e/output/arm-linux-gnueabihf/SHA256SUMS.part
e52744067d4f62b923bf9632a2021dbe5ff6eb43ad31f54c217614ff8f2e1d25 guix-build-0a3631fc352e/output/arm-linux-gnueabihf/bitcoin-0a3631fc352e-arm-linux-gnueabihf-debug.tar.gz
c08428f467d559301c6033520eacc79a4072f5baaf309bec2735d9231bb1033c guix-build-0a3631fc352e/output/arm-linux-gnueabihf/bitcoin-0a3631fc352e-arm-linux-gnueabihf.tar.gz
fb2f0e76c43b608b53408a13208d80f823f7835b02a77185f24f174986f5d655 guix-build-0a3631fc352e/output/arm64-apple-darwin/SHA256SUMS.part
f1311d3211111d64ba55b3c515822903e8922722bacbd89b369cb1f27e492db0 guix-build-0a3631fc352e/output/arm64-apple-darwin/bitcoin-0a3631fc352e-arm64-apple-darwin-unsigned.tar.gz
d6d54939550b68a8c4e908fd7f45d6ecc6b06ee20453930f85fa9942849cda30 guix-build-0a3631fc352e/output/arm64-apple-darwin/bitcoin-0a3631fc352e-arm64-apple-darwin-unsigned.zip
cbcc8d26437325d8910f6f7e81dbdf29a30e8f02670cd13b78d5c2d81b88fb36 guix-build-0a3631fc352e/output/arm64-apple-darwin/bitcoin-0a3631fc352e-arm64-apple-darwin.tar.gz
0b00c0d2ae7ffd16161ecbe652409634b1d6a3ab36d50f15890a4fdae12f394c guix-build-0a3631fc352e/output/dist-archive/bitcoin-0a3631fc352e.tar.gz
49ce76f35afa05205d15ba7a187fb64d2872eca0594b3aadeb53cb75487cbf9d guix-build-0a3631fc352e/output/powerpc64-linux-gnu/SHA256SUMS.part
bec44a5a60d434c462362fe22cea05d9de5cc32ff053397bbedfcffe714e6c11 guix-build-0a3631fc352e/output/powerpc64-linux-gnu/bitcoin-0a3631fc352e-powerpc64-linux-gnu-debug.tar.gz
52121a4e6c3843569d455863fcebc494384ccaf10dcb2e5a6fe316efe1e03ab3 guix-build-0a3631fc352e/output/powerpc64-linux-gnu/bitcoin-0a3631fc352e-powerpc64-linux-gnu.tar.gz
387dc56f8990a814f98a9458e6df3d34dfa7d8d19e77c84839093f8f9fb33271 guix-build-0a3631fc352e/output/riscv64-linux-gnu/SHA256SUMS.part
1ff58588d9eae9064b29834e50b8c5ca201d599672c117fbc104e4e36c797d60 guix-build-0a3631fc352e/output/riscv64-linux-gnu/bitcoin-0a3631fc352e-riscv64-linux-gnu-debug.tar.gz
4b17f0727b683e3552343f8187f184bdc21e74b1c3a6668ab0b806a08cb9ef91 guix-build-0a3631fc352e/output/riscv64-linux-gnu/bitcoin-0a3631fc352e-riscv64-linux-gnu.tar.gz
385902545f37891d2f5dca84a695d5f80e104aaea984eabab68f1454b8453a94 guix-build-0a3631fc352e/output/x86_64-apple-darwin/SHA256SUMS.part
e52be71b1cf0eb0ef37a6488bffb384ecbf5dc0a76b5eca8c7ec49e3ea380073 guix-build-0a3631fc352e/output/x86_64-apple-darwin/bitcoin-0a3631fc352e-x86_64-apple-darwin-unsigned.tar.gz
80c726574fa9fb2822d313262c34501888dd4fa58f6c71be247b5a3b152b6b19 guix-build-0a3631fc352e/output/x86_64-apple-darwin/bitcoin-0a3631fc352e-x86_64-apple-darwin-unsigned.zip
42de5d078bfc1afb646e9c25c8adce6ad3a2f2a4bc53341c17ac17fd1a132653 guix-build-0a3631fc352e/output/x86_64-apple-darwin/bitcoin-0a3631fc352e-x86_64-apple-darwin.tar.gz
83d24dc27fa4f51382492345daa1515b73e1646c3e00b088affa2edf481c8d1a guix-build-0a3631fc352e/output/x86_64-linux-gnu/SHA256SUMS.part
5e2aa04d77f563d6261fe4575a014f6226b949282c873f4126f2f3d89645d8c6 guix-build-0a3631fc352e/output/x86_64-linux-gnu/bitcoin-0a3631fc352e-x86_64-linux-gnu-debug.tar.gz
6636337a95cf886670c88e43e6da01481efe8a415a2fea576a0ab759ac2f06f3 guix-build-0a3631fc352e/output/x86_64-linux-gnu/bitcoin-0a3631fc352e-x86_64-linux-gnu.tar.gz
628236de61ed3cf621f9f1c094e2849777c9b67cd7faf1b3ebb1fcc453e59f89 guix-build-0a3631fc352e/output/x86_64-w64-mingw32/SHA256SUMS.part
49bfa94d4c37158b32ef9e560b7211da6b998937eee46573efd3627ec9f8050c guix-build-0a3631fc352e/output/x86_64-w64-mingw32/bitcoin-0a3631fc352e-win64-debug.zip
641767ffd7fe4d72ddb326885cc74c12a79f7719c8c27d87cc2b9fe902e31669 guix-build-0a3631fc352e/output/x86_64-w64-mingw32/bitcoin-0a3631fc352e-win64-setup-unsigned.exe
c2eed2510db96247a3627766b0474ff374aa266e46f5f4376875971952b8dcf4 guix-build-0a3631fc352e/output/x86_64-w64-mingw32/bitcoin-0a3631fc352e-win64-unsigned.tar.gz
f14bad165f6a434d60befe6060573a15e9c481756046843c856c6278efc07f46 guix-build-0a3631fc352e/output/x86_64-w64-mingw32/bitcoin-0a3631fc352e-win64.zip |
0a3631f Patch and version bump looks good to me, but I'm getting an error when building with your instructions:
If I look into
So I did |
I've added that to the PR instructions here. Adding it the depends install instructions will be part of the next PR, which removes |
Is the bump to .14 also for clang 18, or is that just incidental? |
Mostly incidental. We've got to rebuild all Qts after dropping the android patches changes from #30049, so seemed like a convenient time. I also try to bump to the newest source (if possible) before introducing new patches. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK 0a3631f
Guix build (aarch64)
1efa3e0205032d6cfe5517ce36ab63379afa22268dcbb0b92150719baa030682 guix-build-0a3631fc352e/output/aarch64-linux-gnu/SHA256SUMS.part
e3db302484148c00cab7150e3451d2c95dae14062cb4165c8e5a28d71d77e630 guix-build-0a3631fc352e/output/aarch64-linux-gnu/bitcoin-0a3631fc352e-aarch64-linux-gnu-debug.tar.gz
f9792f8db8635bb19f6a2d7c73f1b0780e5776734c12912c5e7172f357f7fa1f guix-build-0a3631fc352e/output/aarch64-linux-gnu/bitcoin-0a3631fc352e-aarch64-linux-gnu.tar.gz
708374dcac162523ae5e2e4e7d70ff9459047a81bc9361d88b13dfdd785ebce7 guix-build-0a3631fc352e/output/arm-linux-gnueabihf/SHA256SUMS.part
e52744067d4f62b923bf9632a2021dbe5ff6eb43ad31f54c217614ff8f2e1d25 guix-build-0a3631fc352e/output/arm-linux-gnueabihf/bitcoin-0a3631fc352e-arm-linux-gnueabihf-debug.tar.gz
c08428f467d559301c6033520eacc79a4072f5baaf309bec2735d9231bb1033c guix-build-0a3631fc352e/output/arm-linux-gnueabihf/bitcoin-0a3631fc352e-arm-linux-gnueabihf.tar.gz
fb2f0e76c43b608b53408a13208d80f823f7835b02a77185f24f174986f5d655 guix-build-0a3631fc352e/output/arm64-apple-darwin/SHA256SUMS.part
f1311d3211111d64ba55b3c515822903e8922722bacbd89b369cb1f27e492db0 guix-build-0a3631fc352e/output/arm64-apple-darwin/bitcoin-0a3631fc352e-arm64-apple-darwin-unsigned.tar.gz
d6d54939550b68a8c4e908fd7f45d6ecc6b06ee20453930f85fa9942849cda30 guix-build-0a3631fc352e/output/arm64-apple-darwin/bitcoin-0a3631fc352e-arm64-apple-darwin-unsigned.zip
cbcc8d26437325d8910f6f7e81dbdf29a30e8f02670cd13b78d5c2d81b88fb36 guix-build-0a3631fc352e/output/arm64-apple-darwin/bitcoin-0a3631fc352e-arm64-apple-darwin.tar.gz
0b00c0d2ae7ffd16161ecbe652409634b1d6a3ab36d50f15890a4fdae12f394c guix-build-0a3631fc352e/output/dist-archive/bitcoin-0a3631fc352e.tar.gz
49ce76f35afa05205d15ba7a187fb64d2872eca0594b3aadeb53cb75487cbf9d guix-build-0a3631fc352e/output/powerpc64-linux-gnu/SHA256SUMS.part
bec44a5a60d434c462362fe22cea05d9de5cc32ff053397bbedfcffe714e6c11 guix-build-0a3631fc352e/output/powerpc64-linux-gnu/bitcoin-0a3631fc352e-powerpc64-linux-gnu-debug.tar.gz
52121a4e6c3843569d455863fcebc494384ccaf10dcb2e5a6fe316efe1e03ab3 guix-build-0a3631fc352e/output/powerpc64-linux-gnu/bitcoin-0a3631fc352e-powerpc64-linux-gnu.tar.gz
387dc56f8990a814f98a9458e6df3d34dfa7d8d19e77c84839093f8f9fb33271 guix-build-0a3631fc352e/output/riscv64-linux-gnu/SHA256SUMS.part
1ff58588d9eae9064b29834e50b8c5ca201d599672c117fbc104e4e36c797d60 guix-build-0a3631fc352e/output/riscv64-linux-gnu/bitcoin-0a3631fc352e-riscv64-linux-gnu-debug.tar.gz
4b17f0727b683e3552343f8187f184bdc21e74b1c3a6668ab0b806a08cb9ef91 guix-build-0a3631fc352e/output/riscv64-linux-gnu/bitcoin-0a3631fc352e-riscv64-linux-gnu.tar.gz
385902545f37891d2f5dca84a695d5f80e104aaea984eabab68f1454b8453a94 guix-build-0a3631fc352e/output/x86_64-apple-darwin/SHA256SUMS.part
e52be71b1cf0eb0ef37a6488bffb384ecbf5dc0a76b5eca8c7ec49e3ea380073 guix-build-0a3631fc352e/output/x86_64-apple-darwin/bitcoin-0a3631fc352e-x86_64-apple-darwin-unsigned.tar.gz
80c726574fa9fb2822d313262c34501888dd4fa58f6c71be247b5a3b152b6b19 guix-build-0a3631fc352e/output/x86_64-apple-darwin/bitcoin-0a3631fc352e-x86_64-apple-darwin-unsigned.zip
42de5d078bfc1afb646e9c25c8adce6ad3a2f2a4bc53341c17ac17fd1a132653 guix-build-0a3631fc352e/output/x86_64-apple-darwin/bitcoin-0a3631fc352e-x86_64-apple-darwin.tar.gz
83d24dc27fa4f51382492345daa1515b73e1646c3e00b088affa2edf481c8d1a guix-build-0a3631fc352e/output/x86_64-linux-gnu/SHA256SUMS.part
5e2aa04d77f563d6261fe4575a014f6226b949282c873f4126f2f3d89645d8c6 guix-build-0a3631fc352e/output/x86_64-linux-gnu/bitcoin-0a3631fc352e-x86_64-linux-gnu-debug.tar.gz
6636337a95cf886670c88e43e6da01481efe8a415a2fea576a0ab759ac2f06f3 guix-build-0a3631fc352e/output/x86_64-linux-gnu/bitcoin-0a3631fc352e-x86_64-linux-gnu.tar.gz
628236de61ed3cf621f9f1c094e2849777c9b67cd7faf1b3ebb1fcc453e59f89 guix-build-0a3631fc352e/output/x86_64-w64-mingw32/SHA256SUMS.part
49bfa94d4c37158b32ef9e560b7211da6b998937eee46573efd3627ec9f8050c guix-build-0a3631fc352e/output/x86_64-w64-mingw32/bitcoin-0a3631fc352e-win64-debug.zip
641767ffd7fe4d72ddb326885cc74c12a79f7719c8c27d87cc2b9fe902e31669 guix-build-0a3631fc352e/output/x86_64-w64-mingw32/bitcoin-0a3631fc352e-win64-setup-unsigned.exe
c2eed2510db96247a3627766b0474ff374aa266e46f5f4376875971952b8dcf4 guix-build-0a3631fc352e/output/x86_64-w64-mingw32/bitcoin-0a3631fc352e-win64-unsigned.tar.gz
f14bad165f6a434d60befe6060573a15e9c481756046843c856c6278efc07f46 guix-build-0a3631fc352e/output/x86_64-w64-mingw32/bitcoin-0a3631fc352e-win64.zip
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
utACK 0a3631f
Tested on:
|
My Guix builds:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK 0a3631f, a new patch indeed fixes cross-compiling on Ubuntu 24.04 with FORCE_USE_SYSTEM_CLANG=1
.
You forgot to update doc/dependencies.md |
e6636ff doc: fixup deps doc after #30198 (fanquake) Pull request description: Forgotten in #30198. Addresses: #30198 (comment). ACKs for top commit: TheCharlatan: ACK e6636ff Tree-SHA512: 138cba946d0482f11b604a8197177e74f4384c1962dee1d50af6baad40ceb9d064a148244d652d8e140f955f95457f7d0ffdb0e179f8622e71c57cb91c44af29
Github-Pull: bitcoin#30198 Rebased-From: b018bd7
, bitcoin#28622, bitcoin#28880, bitcoin#29185, bitcoin#29170, bitcoin#29233, bitcoin#29298, bitcoin#29598, bitcoin#29732, bitcoin#29890, bitcoin#29739, bitcoin#30074, bitcoin#30198, bitcoin#29072 (toolchain backports: part 2) 1506d9d merge bitcoin#29072: use `-no_exported_symbols` on macOS (Kittywhiskers Van Gogh) 9247960 merge bitcoin#30198: qt 5.15.14 and fix macOS build with Clang 18 (Kittywhiskers Van Gogh) 5585e7a merge bitcoin#30074: use ENV flags in get_arch (Kittywhiskers Van Gogh) decd420 merge bitcoin#29739: swap cctools otool for llvm-objdump (Kittywhiskers Van Gogh) 0f8c420 merge bitcoin#29890: remove some tools when cross-compiling for macOS (Kittywhiskers Van Gogh) 936da1a merge bitcoin#29732: qt 5.15.13 (Kittywhiskers Van Gogh) c294b47 revert: patch qt to make placeholders differ from actual text (Kittywhiskers Van Gogh) af7090c merge bitcoin#29598: don't use -h with touch on OpenBSD (Kittywhiskers Van Gogh) ebf8ff2 merge bitcoin#29298: patch libtool out of libnatpmp/miniupnpc (Kittywhiskers Van Gogh) 070b876 merge bitcoin#29233: depends move macOS C(XX) FLAGS out of C & CXX (Kittywhiskers Van Gogh) d838481 revert dash#2398: Force fvisibility=hidden when compiling on macos (Kittywhiskers Van Gogh) 59a18f9 merge bitcoin#29170: add macho branch protection check (Kittywhiskers Van Gogh) cb024d9 merge bitcoin#29185: remove `--enable-lto` (Kittywhiskers Van Gogh) 6d75a81 merge bitcoin#28880: switch to using LLVM 17.x for macOS builds (Kittywhiskers Van Gogh) 7b0a1f2 merge bitcoin#28622: use macOS 14 SDK (Xcode 15.0) (Kittywhiskers Van Gogh) 02eb735 merge bitcoin#24948: fix typo in permissions (Kittywhiskers Van Gogh) 2739107 merge bitcoin#24534: make gen-sdk deterministic (Kittywhiskers Van Gogh) ab10bf9 merge bitcoin#24241: cleanup doc on need of Developer Account to obtain macOS SDK (Kittywhiskers Van Gogh) Pull request description: ## Additional Information * Dependent on #6384 * Dependency for #6389 * The Qt patch introduced in [dash#5596](#5596), `fix_qt_placeholders.patch`, was a portion of a suggested workaround for QTBUG-92199 ([source](https://bugreports.qt.io/browse/QTBUG-92199?focusedId=669719&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-669719)) but since then, a fix ([here](https://codereview.qt-project.org/c/qt/qtbase/+/434310)) has made its way to 5.15.12 and we are upgrading to 5.15.14 from 5.15.11. So we can safely remove this patch. ## Breaking Changes None expected ## Checklist - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas **(note: N/A)** - [x] I have added or updated relevant unit/integration/functional/e2e tests - [x] I have made corresponding changes to the documentation **(note: N/A)** - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ ACKs for top commit: UdjinM6: utACK 1506d9d PastaPastaPasta: utACK 1506d9d Tree-SHA512: df8e4ea0ce9e7b269d248518698f0566b5eca1a54cdfb53f5b213b90fb5177e5a5df44eaeb6f3fc014cd93351c9245736bb2fd52bc2af4ae274d8fa93e601b07
Summary: ``` Also adds a patch to Qts internal libpng, to fix compilation using Clang 18, when targetting macOS. ``` Backport of [[bitcoin/bitcoin#30198 | core#30198]] and [[bitcoin/bitcoin#30227 | core#30227]]. Test Plan: Run the guix builds Reviewers: #bitcoin_abc, PiRK Reviewed By: #bitcoin_abc, PiRK Differential Revision: https://reviews.bitcoinabc.org/D17265
Summary: ``` Also adds a patch to Qts internal libpng, to fix compilation using Clang 18, when targetting macOS. ``` Backport of [[bitcoin/bitcoin#30198 | core#30198]] and [[bitcoin/bitcoin#30227 | core#30227]]. Test Plan: Run the guix builds Reviewers: #bitcoin_abc, PiRK Reviewed By: #bitcoin_abc, PiRK Differential Revision: https://reviews.bitcoinabc.org/D17265
Also adds a patch to Qts internal libpng, to fix compilation using Clang 18, when targetting macOS. I'd like to get this patched, so we can continue working on removing
FORCE_USE_SYSTEM_CLANG
(#30201); otherwise builds will be broken using the default Clang (18
) on the current Ubuntu LTS (24.04
).With this PR, anyone using Ubuntu 24.04 should be able to
apt install clang llvm lld
, and then cross-compile for macOS using: