depends: Fix build of Qt for 32-bit platforms with recent glibc #29985

pull laanwj wants to merge 1 commits into bitcoin:master from laanwj:2024-04-qt-gzip-time64 changing 2 files +33 −0
  1. laanwj commented at 11:42 am on April 28, 2024: member

    The 32 to 64-bit time_t transition causes a build failure in the built-in zlib about conflicting _TIME_BITS and _FILE_OFFSET_BITS.

    Note that zlib doesn’t use time_t at all, so it is a false alarm.

    Take the following patch from upstream zlib: https://github.com/madler/zlib/commit/a566e156b3fa07b566ddbf6801b517a9dba04fa3.patch

    Closes #29980.

  2. laanwj added the label GUI on Apr 28, 2024
  3. laanwj added the label Build system on Apr 28, 2024
  4. DrahtBot commented at 11:42 am on April 28, 2024: contributor

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    Code Coverage

    For detailed information about the code coverage, see the test coverage report.

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    ACK hebasto, fanquake

    If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #29923 (depends: Remove Qt build-time dependencies by laanwj)

    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.

  5. hebasto commented at 11:43 am on April 28, 2024: member
    Concept ACK. I was thinking about picking up the same patch :)
  6. laanwj renamed this:
    depends: Fix build of Qt for 32-bit platforms
    depends: Fix build of Qt for 32-bit platforms with recent glibcs
    on Apr 28, 2024
  7. laanwj renamed this:
    depends: Fix build of Qt for 32-bit platforms with recent glibcs
    depends: Fix build of Qt for 32-bit platforms with recent glibc
    on Apr 28, 2024
  8. hebasto commented at 11:54 am on April 28, 2024: member

    Approach ACK e4c1a0c62900e8e560b99ee2749460c15355c556, reviewed and tested on Ubuntu 24.04.

    I’m going to submit Guix build hashes shortly.

  9. in depends/packages/qt.mk:25 in e4c1a0c629 outdated
    21@@ -22,6 +22,7 @@ $(package)_patches += fix-macos-linker.patch
    22 $(package)_patches += memory_resource.patch
    23 $(package)_patches += utc_from_string_no_optimize.patch
    24 $(package)_patches += windows_lto.patch
    25+$(package)_patches += gzip-timebits64.patch
    


    laanwj commented at 11:59 am on April 28, 2024:
    whoops, should probably do s/gzip/zlib here too
  10. laanwj force-pushed on Apr 28, 2024
  11. laanwj force-pushed on Apr 28, 2024
  12. laanwj commented at 12:10 pm on April 28, 2024: member
    Force-pushed because somehow had gzip and zlib names mixed up in my head, only the branch name remains 😄 No other changes.
  13. hebasto commented at 2:53 pm on April 28, 2024: member

    My Guix builds:

     0x86_64
     11a25e6c850955fe222604b29409f46da89d1dd987b9e4ecb1e0c584638d0b306  guix-build-2fb0092a9cc5/output/aarch64-linux-gnu/SHA256SUMS.part
     21616ef50b4eb68240353fea259ceb9dbe387047389b56ea97049121d00cccb7a  guix-build-2fb0092a9cc5/output/aarch64-linux-gnu/bitcoin-2fb0092a9cc5-aarch64-linux-gnu-debug.tar.gz
     327815c05ea9efb38297e9df97a042876063f83bec3f9054a4170b406b80b31a9  guix-build-2fb0092a9cc5/output/aarch64-linux-gnu/bitcoin-2fb0092a9cc5-aarch64-linux-gnu.tar.gz
     46a5172a7a2377745237f019ec8904b3d349e3719be1430c860245bc309079196  guix-build-2fb0092a9cc5/output/arm-linux-gnueabihf/SHA256SUMS.part
     5b0cd99df30bd1538adbd3a3b8ddbfbf88ce8f727cd64473b051eeb25048bb860  guix-build-2fb0092a9cc5/output/arm-linux-gnueabihf/bitcoin-2fb0092a9cc5-arm-linux-gnueabihf-debug.tar.gz
     6b24b9751ea02ab48287f5c769277bda705d1118529df2d86092ba44e2e530296  guix-build-2fb0092a9cc5/output/arm-linux-gnueabihf/bitcoin-2fb0092a9cc5-arm-linux-gnueabihf.tar.gz
     738ed6ec21ec0e3db4e04680a1465a2730bd272f5d4c827e84bf6db7c2d4f6a00  guix-build-2fb0092a9cc5/output/arm64-apple-darwin/SHA256SUMS.part
     82c83f5f4708b6945af7442eb06419bbe80845294ff7b4a250e3304d562b1df50  guix-build-2fb0092a9cc5/output/arm64-apple-darwin/bitcoin-2fb0092a9cc5-arm64-apple-darwin-unsigned.tar.gz
     9778c3b0669e92882f4466afff4357dd2bdd2692aec713f8ddfd27dc466c1977f  guix-build-2fb0092a9cc5/output/arm64-apple-darwin/bitcoin-2fb0092a9cc5-arm64-apple-darwin-unsigned.zip
    100bbe336088365464c96dc48cca6a648b6a5242e5a9bd23ceb95a4294f1cba05a  guix-build-2fb0092a9cc5/output/arm64-apple-darwin/bitcoin-2fb0092a9cc5-arm64-apple-darwin.tar.gz
    1109e541507b55916960ece135d999d61df6f3384d1ac8b2e68977ad5afa403664  guix-build-2fb0092a9cc5/output/dist-archive/bitcoin-2fb0092a9cc5.tar.gz
    1203ffcaad9bc100e7a404838bb2c668f932112c0cca0c8b796dc78b24ddd9f0da  guix-build-2fb0092a9cc5/output/powerpc64-linux-gnu/SHA256SUMS.part
    134c9e380a8460c2cddda184cda8cb798a2e9833ac01a594c8a00c32139a2a5ddf  guix-build-2fb0092a9cc5/output/powerpc64-linux-gnu/bitcoin-2fb0092a9cc5-powerpc64-linux-gnu-debug.tar.gz
    14287ba4098d6c4b2bee508b3e081d43d7f93f7f7bb67e3d312f5432875806613d  guix-build-2fb0092a9cc5/output/powerpc64-linux-gnu/bitcoin-2fb0092a9cc5-powerpc64-linux-gnu.tar.gz
    15aa5fba6ced4f9ab2924973320f7800de0812ba8bdf5f238652afc34dcb912c9f  guix-build-2fb0092a9cc5/output/riscv64-linux-gnu/SHA256SUMS.part
    16b3d38359beef8abd28d3329cf78179b202940a64844fcbf5fdf3a85e2599e663  guix-build-2fb0092a9cc5/output/riscv64-linux-gnu/bitcoin-2fb0092a9cc5-riscv64-linux-gnu-debug.tar.gz
    1785964644704d03ae3d2343ef63bcbd884b216a41929b26fbf56cbe2fa079fc50  guix-build-2fb0092a9cc5/output/riscv64-linux-gnu/bitcoin-2fb0092a9cc5-riscv64-linux-gnu.tar.gz
    18611a0e960d6cd5b3ad9d7c29f6d021d9519356ceb57ade57e4de02d2a908c177  guix-build-2fb0092a9cc5/output/x86_64-apple-darwin/SHA256SUMS.part
    19c267336053217e1b430d36de4df33403168217083dbc1115f75f7e5f188560fe  guix-build-2fb0092a9cc5/output/x86_64-apple-darwin/bitcoin-2fb0092a9cc5-x86_64-apple-darwin-unsigned.tar.gz
    203acb58f370eee8631fba0d71ff596edc32527fcd3f1d566c037663e739bf9605  guix-build-2fb0092a9cc5/output/x86_64-apple-darwin/bitcoin-2fb0092a9cc5-x86_64-apple-darwin-unsigned.zip
    211b4385e864ad9a9797e8fb24ff591e9d65f7e2f191535592ccbed83043068fd3  guix-build-2fb0092a9cc5/output/x86_64-apple-darwin/bitcoin-2fb0092a9cc5-x86_64-apple-darwin.tar.gz
    220712463a3c3e3bf76355ff707ee0435ac8f8ec7cabdc52635b0e991c861627b0  guix-build-2fb0092a9cc5/output/x86_64-linux-gnu/SHA256SUMS.part
    2340d8c047f4082154a0741e3e72e39d8d1f58871f15ee5cbf6c8c20d55bdfb772  guix-build-2fb0092a9cc5/output/x86_64-linux-gnu/bitcoin-2fb0092a9cc5-x86_64-linux-gnu-debug.tar.gz
    2451a6ed9297ea96407bce997de3e610d62fd487e84df1bab52915b899f57bc0f8  guix-build-2fb0092a9cc5/output/x86_64-linux-gnu/bitcoin-2fb0092a9cc5-x86_64-linux-gnu.tar.gz
    25a7ff61b4e6f6a04c2b22738c01b7fdf16ef067b23996ecb74d6a90abf6098c84  guix-build-2fb0092a9cc5/output/x86_64-w64-mingw32/SHA256SUMS.part
    265de5c82b1adb2a26e6b174113086a53609109b6017d6fed0ed2ce7b5fc189db0  guix-build-2fb0092a9cc5/output/x86_64-w64-mingw32/bitcoin-2fb0092a9cc5-win64-debug.zip
    278fba05a67e3b7ad8e584f447ec8d424334f6b16c10c23c7484fa52ce148dd296  guix-build-2fb0092a9cc5/output/x86_64-w64-mingw32/bitcoin-2fb0092a9cc5-win64-setup-unsigned.exe
    28fcffe3b368ea7ae8183b906539d7562307ddf345e43426f48d81b4ff74b31679  guix-build-2fb0092a9cc5/output/x86_64-w64-mingw32/bitcoin-2fb0092a9cc5-win64-unsigned.tar.gz
    29fb94ca7e2a9da43e6a8db6ceb5a4b9dd3e49703effef6d977b4c68cc3c116601  guix-build-2fb0092a9cc5/output/x86_64-w64-mingw32/bitcoin-2fb0092a9cc5-win64.zip
    
  14. in depends/patches/qt/zlib-timebits64.patch:20 in 2fb0092a9c outdated
    15+
    16+diff --git a/qtbase/src/3rdparty/zlib/src/gzguts.h b/qtbase/src/3rdparty/zlib/src/gzguts.h
    17+index e23f831f5..f9375047e 100644
    18+--- a/qtbase/src/3rdparty/zlib/src/gzguts.h
    19++++ b/qtbase/src/3rdparty/zlib/src/gzguts.h
    20+@@ -7,9 +7,8 @@
    


    hebasto commented at 2:59 pm on April 28, 2024:

    nit:

    0@@ -26,9 +26,8 @@
    

    to avoid:

    0patching file qtbase/src/3rdparty/zlib/src/gzguts.h
    1Hunk [#1](/bitcoin-bitcoin/1/) succeeded at 26 (offset 19 lines).
    

    laanwj commented at 6:40 pm on April 28, 2024:
    Thanks, will update
  15. hebasto approved
  16. hebasto commented at 3:00 pm on April 28, 2024: member
    ACK 2fb0092a9cc506d567523835e6a198032c581105.
  17. fanquake added the label Needs backport (27.x) on Apr 29, 2024
  18. depends: Fix build of Qt for 32-bit platforms
    The 32 to 64-bit time_t transition causes a build failure in the built-in
    zlib about conflicting _TIME_BITS and _FILE_OFFSET_BITS.
    
    Note that zlib doesn't use time_t at all, so it is a false alarm.
    
    Take the following patch from upstream zlib:
    https://github.com/madler/zlib/commit/a566e156b3fa07b566ddbf6801b517a9dba04fa3.patch
    
    Closes #29980.
    2e266f33b5
  19. laanwj force-pushed on Apr 29, 2024
  20. laanwj commented at 7:54 am on April 29, 2024: member
    Force-pushed to apply @hebasto’s comment to make the patch apply cleanly.
  21. maflcko added the label DrahtBot Guix build requested on Apr 29, 2024
  22. hebasto approved
  23. hebasto commented at 9:23 am on April 29, 2024: member
    re-ACK 2e266f33b5d2be5c233c2c692481f75785714fa1.
  24. hebasto commented at 11:34 am on April 29, 2024: member

    My Guix builds:

     0x86_64
     17bd0bf18cb3b17ee5829ca24e7488d0d022e280d0f56ff04c20f9199f787178a  guix-build-2e266f33b5d2/output/aarch64-linux-gnu/SHA256SUMS.part
     29c07a926fbdafff0f189c454652ccf9028e4ba9c44826b7874affc69bc5b5ae9  guix-build-2e266f33b5d2/output/aarch64-linux-gnu/bitcoin-2e266f33b5d2-aarch64-linux-gnu-debug.tar.gz
     38d9ce23406bbcc33f2cc4147f06c715c44c5b0cc18af6be296862c3e531f3f97  guix-build-2e266f33b5d2/output/aarch64-linux-gnu/bitcoin-2e266f33b5d2-aarch64-linux-gnu.tar.gz
     434a379522f5ef899c49b90aab7a4aca24a73388d392f5003bd17e60e09fc482e  guix-build-2e266f33b5d2/output/arm-linux-gnueabihf/SHA256SUMS.part
     5ceb4c3b2d74d4f3bbb38a884eeb3de428e2d1451894b46bef4cfde133411402b  guix-build-2e266f33b5d2/output/arm-linux-gnueabihf/bitcoin-2e266f33b5d2-arm-linux-gnueabihf-debug.tar.gz
     69fac0f6c20f632f7800943fe4da85a5bafee0c31bf31c53f1800cfe13fc3bbd0  guix-build-2e266f33b5d2/output/arm-linux-gnueabihf/bitcoin-2e266f33b5d2-arm-linux-gnueabihf.tar.gz
     70bac22b4cc7a8cd528bd3db4422ea33a8a53ded6313ee501574e9b3116a76db3  guix-build-2e266f33b5d2/output/arm64-apple-darwin/SHA256SUMS.part
     845e58870ddbfd68f30933b546149e29ed5fe49cfe43e9fe46707e7cbaff2c8bf  guix-build-2e266f33b5d2/output/arm64-apple-darwin/bitcoin-2e266f33b5d2-arm64-apple-darwin-unsigned.tar.gz
     919df683339246458595aa692729f19fbb19e037bc6cddb4f7b137c34b511736c  guix-build-2e266f33b5d2/output/arm64-apple-darwin/bitcoin-2e266f33b5d2-arm64-apple-darwin-unsigned.zip
    103a8bf0b89f7685753cb2d20bd4841ed156652d7354ddc8935f37c2782cd1865d  guix-build-2e266f33b5d2/output/arm64-apple-darwin/bitcoin-2e266f33b5d2-arm64-apple-darwin.tar.gz
    11fba7b8d201310534539262eee6f204d1de2a0042a990516474c71573d514f6ac  guix-build-2e266f33b5d2/output/dist-archive/bitcoin-2e266f33b5d2.tar.gz
    12a10cdac9e133a5062d38cbab2dfd53ed44f3a9ae17260f3aa26dd61f3f473a15  guix-build-2e266f33b5d2/output/powerpc64-linux-gnu/SHA256SUMS.part
    138e22e2b099179573bd03d0d5d312416e89be193ce7f7ce4fab0975d2d59efbfd  guix-build-2e266f33b5d2/output/powerpc64-linux-gnu/bitcoin-2e266f33b5d2-powerpc64-linux-gnu-debug.tar.gz
    143b0f54d2cce44a0e0640c48a3c91c73b3d7c595dea75dcb0f9d60423ee222ac0  guix-build-2e266f33b5d2/output/powerpc64-linux-gnu/bitcoin-2e266f33b5d2-powerpc64-linux-gnu.tar.gz
    1598bb33c78a52eb36c2aa49415dba087fdf2af77ffc7993b0a99f0d4fb15c402f  guix-build-2e266f33b5d2/output/riscv64-linux-gnu/SHA256SUMS.part
    16b6e637ad410d34c6b677e198250969c6a91240cc81cfc8d1499921234f188544  guix-build-2e266f33b5d2/output/riscv64-linux-gnu/bitcoin-2e266f33b5d2-riscv64-linux-gnu-debug.tar.gz
    17137bbe13ba8462f0ea5f3f9a26be8010671140841e20d492b9812f38ea277b58  guix-build-2e266f33b5d2/output/riscv64-linux-gnu/bitcoin-2e266f33b5d2-riscv64-linux-gnu.tar.gz
    18cdaaa0da94885c177264d24a9660387ff131df04066e063433f54d20d93f5116  guix-build-2e266f33b5d2/output/x86_64-apple-darwin/SHA256SUMS.part
    1936743ef1b9f787ff970be30123d6b21cef88c7c22ee60d94982055dadb257544  guix-build-2e266f33b5d2/output/x86_64-apple-darwin/bitcoin-2e266f33b5d2-x86_64-apple-darwin-unsigned.tar.gz
    20ea4e94583d55f56a2a3476da748d03d60bf9204bd591b6a88b184a36917cc9d0  guix-build-2e266f33b5d2/output/x86_64-apple-darwin/bitcoin-2e266f33b5d2-x86_64-apple-darwin-unsigned.zip
    21f47b5c097e069d340bc2cc4a03ffc268e138361efdd5ef1f15871f71135fe399  guix-build-2e266f33b5d2/output/x86_64-apple-darwin/bitcoin-2e266f33b5d2-x86_64-apple-darwin.tar.gz
    22feb166f93297d32f197ee534a76e41f0c8bcaa81b18f0e18dad7eb3af622611f  guix-build-2e266f33b5d2/output/x86_64-linux-gnu/SHA256SUMS.part
    231a1817074042243c5f61713c601aa96da9afc5e23bd45d728eb5e2a593a8219d  guix-build-2e266f33b5d2/output/x86_64-linux-gnu/bitcoin-2e266f33b5d2-x86_64-linux-gnu-debug.tar.gz
    247cb9c3ae3630e2507f908e8ecc8d93fa878ad40676f011a86978370bed9713f9  guix-build-2e266f33b5d2/output/x86_64-linux-gnu/bitcoin-2e266f33b5d2-x86_64-linux-gnu.tar.gz
    258619706e7362dc4ced64efb2d756786260e808b3fd80d070fe6d25a431bd1dcc  guix-build-2e266f33b5d2/output/x86_64-w64-mingw32/SHA256SUMS.part
    261750a5b1c84b9d3afc6143767078d233867994bfc78512f378b6a358a637728f  guix-build-2e266f33b5d2/output/x86_64-w64-mingw32/bitcoin-2e266f33b5d2-win64-debug.zip
    27d07e72ed727a6e70c709fe9a2ec95ebf6bc7f752320a9dfd2e1b1bd1a7b7fda5  guix-build-2e266f33b5d2/output/x86_64-w64-mingw32/bitcoin-2e266f33b5d2-win64-setup-unsigned.exe
    283978baa7e9c02b606a5477185a990be12ebe818c0e991c85b34d6198999ed66f  guix-build-2e266f33b5d2/output/x86_64-w64-mingw32/bitcoin-2e266f33b5d2-win64-unsigned.tar.gz
    2937e2fcbc9f609b9ef52488a14d5994646347872f34e12a5e13136c776b6ebfda  guix-build-2e266f33b5d2/output/x86_64-w64-mingw32/bitcoin-2e266f33b5d2-win64.zip
    
  25. DrahtBot commented at 1:42 am on April 30, 2024: contributor

    Guix builds (on x86_64) [untrusted test-only build, possibly unsafe, not for production use]

    File commit 19865a8350a8181ab658bef48976a728bae6a8bd(master) commit d87acce7cb9a988a88114cf9e6785f9c881e0f30(master and this pull)
    SHA256SUMS.part ca02d3c22ae3b162... 86008e0cb18a3f2a...
    *-aarch64-linux-gnu-debug.tar.gz 57761917fbb430e7... 7cf2cafa372e5a22...
    *-aarch64-linux-gnu.tar.gz 513787cb7963a8d8... 81ba3516644b9c0b...
    *-arm-linux-gnueabihf-debug.tar.gz 6c6469803816f506... e006b5adac7fb45a...
    *-arm-linux-gnueabihf.tar.gz 5dc55e8ad81d29bf... f1b3cdce4198abcb...
    *-arm64-apple-darwin-unsigned.tar.gz 9d05ad7307b509e2... 0329c35e0780c1de...
    *-arm64-apple-darwin-unsigned.zip d2d03f05fd5da040... 874860e4d087d774...
    *-arm64-apple-darwin.tar.gz 5b424f7dfc5bef17... 6dbed4b782e44c96...
    *-powerpc64-linux-gnu-debug.tar.gz df26fb100d0ce96b... fa5b9e675c3063cc...
    *-powerpc64-linux-gnu.tar.gz 45c86329c83f1bf5... c44fe6dccb207426...
    *-riscv64-linux-gnu-debug.tar.gz 1c03ff26ae96d543... dc834ebcfbc0004e...
    *-riscv64-linux-gnu.tar.gz 11c4ea12f2ad6f39... b1116cf93185375c...
    *-x86_64-apple-darwin-unsigned.tar.gz 5497663bd30c0fbb... 52d0b2a22212aaec...
    *-x86_64-apple-darwin-unsigned.zip 2399330e1d066f72... a041a47103968835...
    *-x86_64-apple-darwin.tar.gz c602d99708508a47... 830f08fab60f6772...
    *-x86_64-linux-gnu-debug.tar.gz 157ed4139f319089... 4194ee103f6b996a...
    *-x86_64-linux-gnu.tar.gz c6ff182003d5c0b6... 234fa6bfb445ef30...
    *.tar.gz 926faafca6853913... 1ef6d606f0f05647...
    guix_build.log 3bc64e5930ba3020... de3395458c1b6e34...
    guix_build.log.diff 7927babbdf68536d...
  26. DrahtBot removed the label DrahtBot Guix build requested on Apr 30, 2024
  27. fanquake approved
  28. fanquake commented at 6:18 am on April 30, 2024: member
    ACK 2e266f33b5d2be5c233c2c692481f75785714fa1 - at some point qt’s open source 5.15.x branch will catch up to where they bumped the internal zlib to >= 1.3 (which contains this change), and we’ll be able to drop this patch. Checked that it fixes the build issue in the interim.
  29. fanquake merged this on Apr 30, 2024
  30. fanquake closed this on Apr 30, 2024

  31. fanquake referenced this in commit a995902d60 on Apr 30, 2024
  32. fanquake removed the label Needs backport (27.x) on Apr 30, 2024
  33. fanquake commented at 6:22 am on April 30, 2024: member
    Backported to 27.x in #29888.

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-09-28 22:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me