-
Notifications
You must be signed in to change notification settings - Fork 37.7k
build, qt: Do not require xml module for native builds in depends #21589
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
9e1b130
to
5a7c487
Compare
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. 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. |
5a7c487
to
6aaef5d
Compare
Rebased 5a7c487 -> 6aaef5d (pr21589.01 -> pr21589.02) due to the conflict with #21375. |
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.
running make -C depends qt_configured
on macOS master
with #21591 patch applied (so that there is no cross-compile and it is native):
Build type: macx-clang (x86_64, CPU features: cx16 mmx sse sse2 sse3 ssse3 sse4.1)
Compiler: clang (Apple) 12.0.0
Configuration: sse2 aesni sse3 ssse3 sse4_1 sse4_2 avx avx2 avx512f avx512bw avx512cd avx512dq avx512er avx512ifma avx512pf avx512vbmi avx512vl f16c largefile precompile_header rdrnd shani silent x86SimdAlways release c++11 c++14 c++1z reduce_exports static stl
Qt modules and options:
...
Qt Xml ................................. no
How do I test this? When does this come into play?
GUIX hashes for 6aaef5d
find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
d5baeffc654fb2847b6c731a56ec0a55c39016b16aa2cec1cc1b83f3aee75db0 guix-build-6aaef5db59f9/output/aarch64-linux-gnu/bitcoin-6aaef5db59f9-aarch64-linux-gnu-debug.tar.gz
c2b36677b096e96bcfef724c9eceed559d2a63fd02d283bf10bc9679f54bceb1 guix-build-6aaef5db59f9/output/aarch64-linux-gnu/bitcoin-6aaef5db59f9-aarch64-linux-gnu.tar.gz
b33601f8ffce5db708c1acbba7cc2fe0e6fde66eaf05e3db5a6f5941467bcdcd guix-build-6aaef5db59f9/output/arm-linux-gnueabihf/bitcoin-6aaef5db59f9-arm-linux-gnueabihf-debug.tar.gz
2aeda1fa471b8aad0a4a0d04b5f34b643b367ab5c6ecf1eeb2118c4f3a9882ad guix-build-6aaef5db59f9/output/arm-linux-gnueabihf/bitcoin-6aaef5db59f9-arm-linux-gnueabihf.tar.gz
fea10e9a36ffea172f284f07c7224c08faff4146ea0949dc2e245aa2cf81aacc guix-build-6aaef5db59f9/output/dist-archive/bitcoin-6aaef5db59f9.tar.gz
b8dce5a5195954ecf31d1f02eaddf10fc48dbb2d6fc8889c771b8349ae3b3fe1 guix-build-6aaef5db59f9/output/powerpc64-linux-gnu/bitcoin-6aaef5db59f9-powerpc64-linux-gnu-debug.tar.gz
f9d9af6387358bd08d94fdad3bbef806f4e3c7662ab2902c156f81524be3139d guix-build-6aaef5db59f9/output/powerpc64-linux-gnu/bitcoin-6aaef5db59f9-powerpc64-linux-gnu.tar.gz
7aec5392b95db52001b7bbbf35c49c637f55d1cd558e6565adf329f7ca46f12f guix-build-6aaef5db59f9/output/powerpc64le-linux-gnu/bitcoin-6aaef5db59f9-powerpc64le-linux-gnu-debug.tar.gz
9187cd7949f0c1f8c09b395de0ba3888e31060f26d0d8d79a67bf91f49af0231 guix-build-6aaef5db59f9/output/powerpc64le-linux-gnu/bitcoin-6aaef5db59f9-powerpc64le-linux-gnu.tar.gz
3062f99ff5723dd8383ba5f7d040f1300c119464a4b65cb195888e6adc343e87 guix-build-6aaef5db59f9/output/riscv64-linux-gnu/bitcoin-6aaef5db59f9-riscv64-linux-gnu-debug.tar.gz
96371d13fd00213ea08ffbe58441b2ca9a1236fa9877cec6250889ad17b0da52 guix-build-6aaef5db59f9/output/riscv64-linux-gnu/bitcoin-6aaef5db59f9-riscv64-linux-gnu.tar.gz
1506db150cd220075c8a3aa26eb55649a383812eaaf6fe7d7e81aa0c09f6c84b guix-build-6aaef5db59f9/output/x86_64-apple-darwin18/bitcoin-6aaef5db59f9-osx-unsigned.dmg
4da01833bd4f6a534015b399a3deb0e3d4070afccda9d528c9f0257d32814b28 guix-build-6aaef5db59f9/output/x86_64-apple-darwin18/bitcoin-6aaef5db59f9-osx-unsigned.tar.gz
fbaff7ffa391f90246d87dda890b9b719143aaad2c48b5a68ff758d9dfe41d69 guix-build-6aaef5db59f9/output/x86_64-apple-darwin18/bitcoin-6aaef5db59f9-osx64.tar.gz
58e561088c18d3c26c6da7cff9390daf16d8c03baa327bc877c3f083d2f9eb16 guix-build-6aaef5db59f9/output/x86_64-linux-gnu/bitcoin-6aaef5db59f9-x86_64-linux-gnu-debug.tar.gz
bbc3d771f6d2e45e448c42aef699752fcc95b9759969a84a712d3dc89ea7d60a guix-build-6aaef5db59f9/output/x86_64-linux-gnu/bitcoin-6aaef5db59f9-x86_64-linux-gnu.tar.gz
9e711f781257cf95e76e94ff23406dac0755256ea38e072a6c2999a2015c35f5 guix-build-6aaef5db59f9/output/x86_64-w64-mingw32/bitcoin-6aaef5db59f9-win-unsigned.tar.gz
50fb6b35863aaeef59bf042c9a75427dd13039a0383e8a53ecb7e6f2b3b57521 guix-build-6aaef5db59f9/output/x86_64-w64-mingw32/bitcoin-6aaef5db59f9-win64-debug.zip
2c61f1c47b771453eb99a1d2c342310b7c8796e0f51cbbb3f45768a49c9e54ea guix-build-6aaef5db59f9/output/x86_64-w64-mingw32/bitcoin-6aaef5db59f9-win64-setup-unsigned.exe
27d3bb1e045a19d87192bb35dc5be9299e58e5280f4c53fc8dd41e760c6cf054 guix-build-6aaef5db59f9/output/x86_64-w64-mingw32/bitcoin-6aaef5db59f9-win64.zip
Guix builds:
Gitian builds:
|
E.g., compiling with depends on ARM (see #18536). |
While looking at the Qt source code I found that the original issue is solved in Qt 5.15 (see qt/qttools@9e69433). So just waiting for bumping the Qt version in depends to 5.15.x could be an option. |
Updated 6aaef5d -> d3fb790 (pr21589.02 -> pr21589.03):
|
Guix builds:
|
Gitian builds:
|
Updated d3fb790 -> 3d92cc4 (pr21589.03 -> pr21589.04, diff): |
Guix builds:
Gitian builds:
|
This change makes Qt tools always bootstrapped.
Rebased 3d92cc4 -> e14d89a (pr21589.04 -> pr21589.05) due to the conflict with #22054. |
Guix builds:
|
Could the "22.0" milestone be assigned to this PR? |
NACK. After thinking about this more, I don't want to go down this path of continually hacking up Qt. I've got some changes that I'll draft PR shortly, which should remove the need for this, and some of your other open PRs, while fixing the same issues they are trying to fix. |
For now, I'm going to close this in favour of #22142. If, for some reason, we can't get that change done fairly shortly, I'll reopen this PR. |
1155978 build, qt: Do not install *.prl files (Hennadii Stepanov) 763793b build, qt: Fix wrong cross-compiling detection on macOS (Hennadii Stepanov) 3098272 build, qt: Force bootstrap while building linguist tools (Hennadii Stepanov) 689320e build, qt: Drop translations.pro hack (Hennadii Stepanov) 6a1f98f build, qt: Drop lrelease dependency patch (Hennadii Stepanov) 39e561e build, qt: Add linguist_tools list (Hennadii Stepanov) 27d3def build: Use Qt top-level build facilities (Hennadii Stepanov) Pull request description: This PR: - uses Qt top-level build facilities without the need to download all-in-one archive - is based on **BlockMechanic**'s [idea](#20600), and is an alternative to #20600 - makes it easy to integrate [new modules](#16883) into static builds - has the minimal diff - makes the qt package build process streamlined by dropping some patches and hacks (an alternative to #21420 and #20642) Fixes #18536 (a non-intrusive alternative to #21589 and #19785). Fixes #14648. Fixes #21588 (a non-intrusive alternative to #21591). Required for adding [Wayland support](#19950) on Linux. --- **Note for reviewers**: With 9046de8 from #21995 it is easy to verify that there are no changes in the resulted `qt` package archive on the per commit basis. For example, for `HOST=i686-pc-linux-gnu` no commit in this PR introduces any changes. ACKs for top commit: fanquake: ACK 1155978 Tree-SHA512: 667b06b72cb7ff26d68b9b88e8dddb51084783ca9e3d80b3392710794c1dc7fd77bbcc3ccf4ccece9919d33b9bf8fce13c5059502bd228021dc7c93fdb87ca7a
1155978 build, qt: Do not install *.prl files (Hennadii Stepanov) 763793b build, qt: Fix wrong cross-compiling detection on macOS (Hennadii Stepanov) 3098272 build, qt: Force bootstrap while building linguist tools (Hennadii Stepanov) 689320e build, qt: Drop translations.pro hack (Hennadii Stepanov) 6a1f98f build, qt: Drop lrelease dependency patch (Hennadii Stepanov) 39e561e build, qt: Add linguist_tools list (Hennadii Stepanov) 27d3def build: Use Qt top-level build facilities (Hennadii Stepanov) Pull request description: This PR: - uses Qt top-level build facilities without the need to download all-in-one archive - is based on **BlockMechanic**'s [idea](bitcoin#20600), and is an alternative to bitcoin#20600 - makes it easy to integrate [new modules](bitcoin#16883) into static builds - has the minimal diff - makes the qt package build process streamlined by dropping some patches and hacks (an alternative to bitcoin#21420 and bitcoin#20642) Fixes bitcoin#18536 (a non-intrusive alternative to bitcoin#21589 and bitcoin#19785). Fixes bitcoin#14648. Fixes bitcoin#21588 (a non-intrusive alternative to bitcoin#21591). Required for adding [Wayland support](bitcoin#19950) on Linux. --- **Note for reviewers**: With 9046de8 from bitcoin#21995 it is easy to verify that there are no changes in the resulted `qt` package archive on the per commit basis. For example, for `HOST=i686-pc-linux-gnu` no commit in this PR introduces any changes. ACKs for top commit: fanquake: ACK 1155978 Tree-SHA512: 667b06b72cb7ff26d68b9b88e8dddb51084783ca9e3d80b3392710794c1dc7fd77bbcc3ccf4ccece9919d33b9bf8fce13c5059502bd228021dc7c93fdb87ca7a
This change makes Qt tools always bootstrapped.
This PR is an alternative to #19785.
Fixes partially #14648 (the complete fix is in #21591).
Fixes #18536. On ODROID-HC1 + Armbian 21.02.2 Focal:
Related to #21588.
Guix builds:
Gitian builds: