depends: Remove Qt build-time dependencies #29923

pull laanwj wants to merge 6 commits into bitcoin:master from laanwj:2024-04-qtsowrap changing 23 files +946 −429
  1. laanwj commented at 3:40 pm on April 20, 2024: member

    In the spirit of the halving, let’s (approximately) halve the number of packages in depends. Remove the following packages:

     0  bdb.mk
     1  boost.mk
     2  capnp.mk
     3- expat.mk
     4- fontconfig.mk
     5- freetype.mk
     6  libevent.mk
     7  libmultiprocess.mk
     8  libnatpmp.mk
     9- libXau.mk
    10- libxcb.mk
    11- libxcb_util.mk
    12- libxcb_util_image.mk
    13- libxcb_util_keysyms.mk
    14- libxcb_util_render.mk
    15- libxcb_util_wm.mk
    16- libxkbcommon.mk
    17  miniupnpc.mk
    18  native_capnp.mk
    19  native_cctools.mk
    20  native_libmultiprocess.mk
    21  native_libtapi.mk
    22  native_llvm.mk
    23  packages.mk
    24  qrencode.mk
    25  qt.mk
    26+ qtsowrap.mk
    27  sqlite.mk
    28  systemtap.mk
    29- xcb_proto.mk
    30- xproto.mk
    31  zeromq.mk
    

    This is done by loading all of Qt’s system dependencies at run-time, replacing them with an auto-generated wrapper library qtsowrap:

    Basic diagram

    See https://github.com/laanwj/qtsowrap for details.

    After this, bitcoin-qt has the same direct linking dependencies as bitcoind and other binaries:

    0$ ldd build/src/qt/bitcoin-qt
    1        linux-vdso.so.1 (0x00007ffc01d83000)
    2        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f76dbf1f000)
    3        libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f76dbc00000)
    4        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f76de7a7000)
    5        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f76dba1f000)
    6        /lib64/ld-linux-x86-64.so.2 (0x00007f76de7d7000)
    

    (libdl.so.X needed too depending on the libc version)

    For comparison, bitcoin-qt from release 27.0 has the following:

     0$ ldd ~/workdir/x86_64-linux-gnu/bitcoin-27.0/bin/bitcoin-qt 
     1        linux-vdso.so.1 (0x00007ffde7f73000)
     2        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fa098e37000)
     3        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fa098e2f000)
     4        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fa098d4f000)
     5        libfontconfig.so.1 => /lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007fa098cff000)
     6        libfreetype.so.6 => /lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007fa09632f000)
     7        libxcb-icccm.so.4 => /lib/x86_64-linux-gnu/libxcb-icccm.so.4 (0x00007fa098cf7000)
     8        libxcb-image.so.0 => /lib/x86_64-linux-gnu/libxcb-image.so.0 (0x00007fa098cef000)
     9        libxcb-shm.so.0 => /lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007fa098ce7000)
    10        libxcb-keysyms.so.1 => /lib/x86_64-linux-gnu/libxcb-keysyms.so.1 (0x00007fa096000000)
    11        libxcb-randr.so.0 => /lib/x86_64-linux-gnu/libxcb-randr.so.0 (0x00007fa098ccf000)
    12        libxcb-render-util.so.0 => /lib/x86_64-linux-gnu/libxcb-render-util.so.0 (0x00007fa095c00000)
    13        libxcb-render.so.0 => /lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007fa098cbf000)
    14        libxcb-shape.so.0 => /lib/x86_64-linux-gnu/libxcb-shape.so.0 (0x00007fa098cb7000)
    15        libxcb-sync.so.1 => /lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007fa098caf000)
    16        libxcb-xfixes.so.0 => /lib/x86_64-linux-gnu/libxcb-xfixes.so.0 (0x00007fa098c9f000)
    17        libxcb-xinerama.so.0 => /lib/x86_64-linux-gnu/libxcb-xinerama.so.0 (0x00007fa096327000)
    18        libxcb-xkb.so.1 => /lib/x86_64-linux-gnu/libxcb-xkb.so.1 (0x00007fa096307000)
    19        libxcb.so.1 => /lib/x86_64-linux-gnu/libxcb.so.1 (0x00007fa0962d7000)
    20        libxkbcommon-x11.so.0 => /lib/x86_64-linux-gnu/libxkbcommon-x11.so.0 (0x00007fa0962c7000)
    21        libxkbcommon.so.0 => /lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x00007fa09627f000)
    22        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fa09625f000)
    23        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fa095e1f000)
    24        /lib64/ld-linux-x86-64.so.2 (0x00007fa098e4f000)
    25        libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007fa09622f000)
    26        libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fa09620f000)
    27        libpng16.so.16 => /lib/x86_64-linux-gnu/libpng16.so.16 (0x00007fa095bc7000)
    28        libbrotlidec.so.1 => /lib/x86_64-linux-gnu/libbrotlidec.so.1 (0x00007fa095e0f000)
    29        libxcb-util.so.1 => /lib/x86_64-linux-gnu/libxcb-util.so.1 (0x00007fa095bbf000)
    30        libXau.so.6 => /lib/x86_64-linux-gnu/libXau.so.6 (0x00007fa096207000)
    31        libXdmcp.so.6 => /lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007fa095800000)
    32        libbrotlicommon.so.1 => /lib/x86_64-linux-gnu/libbrotlicommon.so.1 (0x00007fa095b97000)
    33        libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x00007fa095b7f000)
    34        libmd.so.0 => /lib/x86_64-linux-gnu/libmd.so.0 (0x00007fa095b6f000)
    

    This does not affect Windows or MacOS, which already do not have this problem of having to build half the OS in the dependency chain.

    This will make it possible to add Wayland support to the release binaries without requiring the Wayland (or X) libraries to be installed on every system that runs them.

    Reviewing/Testing

    TODOs (all done)

    (before merge, probably)

    • laanwj/qtsowrap#3
    • laanwj/qtsowrap#4
  2. laanwj added the label Linux/Unix on Apr 20, 2024
  3. laanwj added the label Build system on Apr 20, 2024
  4. DrahtBot commented at 3:40 pm on April 20, 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
    Concept ACK jonatack

    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:

    • #29880 (depends: build FreeType with CMake by fanquake)
    • #29878 (depends: build expat with CMake by fanquake)

    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. bitcoin deleted a comment on Apr 20, 2024
  6. DrahtBot added the label CI failed on Apr 20, 2024
  7. laanwj force-pushed on Apr 20, 2024
  8. laanwj force-pushed on Apr 20, 2024
  9. laanwj force-pushed on Apr 20, 2024
  10. luke-jr commented at 3:10 am on April 21, 2024: member
    Instead of Qt’s dependencies, maybe we should wrap Qt itself this way? Or do C++ templates break that too much?
  11. laanwj commented at 6:55 am on April 21, 2024: member

    Instead of Qt’s dependencies, maybe we should wrap Qt itself this way? Or do C++ templates break that too much?

    This is basically not possible with a C++ library. It is thanks to C’s lack of name mangling and its straightforward linkage model that makes this possible. Also Qt has a ton of symbols compared to these libraries. And even if you narrow it down to only the used symbols, it’s much harder to keep track of.

    Conceptually, a few low-level X11 (or in the future, Wayland) and font libraries are much more likely to be on the user’s system than a compatible version of Qt. That will only become worse with Qt 5 versus 6. This PR, as is, doesn’t change the needed libraries, only how they’re imported.

  12. maflcko added the label DrahtBot Guix build requested on Apr 21, 2024
  13. DrahtBot commented at 5:04 am on April 22, 2024: contributor

    Guix builds (on x86_64)

    File commit 67c0d93982ad214f5e0c9509e9dc3d6d792ad97c(master) commit eed10dd6f6d9a7cdc3e8379cf8b12a5a2995d575(master and this pull)
    SHA256SUMS.part 0744b1285352a368... 1a98bfe3c1beccf7...
    *-aarch64-linux-gnu-debug.tar.gz 16b414f82f4f07bd... 67822a1b1b1ba79a...
    *-aarch64-linux-gnu.tar.gz 117b35bd779ed725... c62e79c489bb0cb6...
    *-arm-linux-gnueabihf-debug.tar.gz 07e864c7389441c9... 29c2ee47a1176010...
    *-arm-linux-gnueabihf.tar.gz db135d89aa80ca9a... 1c0f91b81c0cefdf...
    *-arm64-apple-darwin-unsigned.tar.gz 98e4bf8a803c8a43... fd94966e3845c4db...
    *-arm64-apple-darwin-unsigned.zip 6aecc3420e8db5f6... d3febce3a26e5eed...
    *-arm64-apple-darwin.tar.gz 0f34ec3767a21c30... 05cb2476b672acf9...
    *-powerpc64-linux-gnu-debug.tar.gz ffee35ca9046fcfe... 566d5b48f75755bf...
    *-powerpc64-linux-gnu.tar.gz 5d7b88059c977045... eb009b208f979a01...
    *-riscv64-linux-gnu-debug.tar.gz 40554584a6519644... e3659a5086fe1b79...
    *-riscv64-linux-gnu.tar.gz 0e28036c9438f9d3... 5fd8ac0c3f1e39a4...
    *-x86_64-apple-darwin-unsigned.tar.gz c9f7d339c48b8c3a... ff199bd2a879b198...
    *-x86_64-apple-darwin-unsigned.zip 6bb037c1a1e0003c... cd284f0531fb033d...
    *-x86_64-apple-darwin.tar.gz 02856cf44b673e4d... 4d4ffc4a383a8038...
    *-x86_64-linux-gnu-debug.tar.gz 8938c00d38015b39... e539b47da948ddc1...
    *-x86_64-linux-gnu.tar.gz d6ed9bb233a75b51... 361a416eb9b6c192...
    *.tar.gz 8a85911c482de010... 1a83436d12c8d025...
    guix_build.log 1cef86b1f8b71fe8... 91d6890f319ecbbd...
    guix_build.log.diff 97e151810f253905...
  14. DrahtBot removed the label DrahtBot Guix build requested on Apr 22, 2024
  15. laanwj commented at 6:29 am on April 22, 2024: member

    One important thing to test here is that the resulting bitcoin-qt binaries work on a range of different Linux distributions (also older ones that people still care about).

    There’s no inherent reason to assume this will make compatibility worse, but it currently loads all symbols from the headers for the respective libraries (https://github.com/laanwj/qtsowrap?tab=readme-ov-file#versions) which might enforce the lower bound on version stronger than used to be done.

    Might consider downgrading the headers, if this turns out to be a problem. Or add a list in the descriptor per library of the functions actually used. But this is more work to maintain than a list of version numbers.

  16. DrahtBot removed the label CI failed on Apr 22, 2024
  17. laanwj commented at 10:04 am on April 22, 2024: member

    Example: failure on Ubuntu 22.04:

    0$ ./bitcoin-qt
    1/lib/x86_64-linux-gnu/libxcb-xfixes.so.0: undefined symbol: xcb_xfixes_set_client_disconnect_mode_checked
    2qt.qpa.xcb: Unable to load required libraries, skipping initialization of XCB backend.
    3qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
    4This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
    5
    6Available platform plugins are: xcb.
    7
    8Aborted (core dumped)
    

    Ubuntu 22.04 has the following version of libxcb-xfixes:

    0$ apt-cache show libxcb-xfixes0
    1Package: libxcb-xfixes0
    2Architecture: amd64
    3Version: 1.14-3ubuntu3
    

    1.14. That’s kind of strange! That’s the same one we have. It may be due to a difference in xcb_proto (which supplies the protocols that the header files are generated from) instead. Ours is 1.15.2 (as of 7cb88c8b46723d306b96953a6a60c90a4ab211e3), ubuntu 22.04 has 1.14. So i’ll downgrade to that.

    Edit: that was it! Ubuntu 22.04 now works.

  18. maflcko added the label DrahtBot Guix build requested on Apr 22, 2024
  19. DrahtBot added the label CI failed on Apr 22, 2024
  20. DrahtBot commented at 9:49 pm on April 22, 2024: contributor

    Guix builds (on x86_64)

    File commit 67c0d93982ad214f5e0c9509e9dc3d6d792ad97c(master) commit 510237f44755ef16db00758f1a9639350638c16e(master and this pull)
    SHA256SUMS.part 0744b1285352a368... 3ae06a46ca780c3c...
    *-aarch64-linux-gnu-debug.tar.gz 16b414f82f4f07bd... d0129eb64e24dc3f...
    *-aarch64-linux-gnu.tar.gz 117b35bd779ed725... cb011e21503ded6f...
    *-arm-linux-gnueabihf-debug.tar.gz 07e864c7389441c9... 5d6a6d11e3e615ae...
    *-arm-linux-gnueabihf.tar.gz db135d89aa80ca9a... ca915b6fc079495b...
    *-arm64-apple-darwin-unsigned.tar.gz 98e4bf8a803c8a43... 025f3135577269af...
    *-arm64-apple-darwin-unsigned.zip 6aecc3420e8db5f6... 9698d6f66962aabc...
    *-arm64-apple-darwin.tar.gz 0f34ec3767a21c30... 853bbf572d24f213...
    *-powerpc64-linux-gnu-debug.tar.gz ffee35ca9046fcfe... 1cd5511bf725a041...
    *-powerpc64-linux-gnu.tar.gz 5d7b88059c977045... 8a3d01afae413c2a...
    *-riscv64-linux-gnu-debug.tar.gz 40554584a6519644... a4471ab56fa86368...
    *-riscv64-linux-gnu.tar.gz 0e28036c9438f9d3... a80860a866930eeb...
    *-x86_64-apple-darwin-unsigned.tar.gz c9f7d339c48b8c3a... 12d8bf9080c88e99...
    *-x86_64-apple-darwin-unsigned.zip 6bb037c1a1e0003c... a245b1f75d50d4b0...
    *-x86_64-apple-darwin.tar.gz 02856cf44b673e4d... 45496c3276b269d0...
    *-x86_64-linux-gnu-debug.tar.gz 8938c00d38015b39... 446391abd341af1f...
    *-x86_64-linux-gnu.tar.gz d6ed9bb233a75b51... aa5d8a27ec441c31...
    *.tar.gz 8a85911c482de010... 28b5b41a3d16ba53...
    guix_build.log 682b861e333169fc... d817b205d0a593da...
    guix_build.log.diff bb1c42ae597e504e...
  21. DrahtBot removed the label DrahtBot Guix build requested on Apr 22, 2024
  22. DrahtBot removed the label CI failed on Apr 23, 2024
  23. laanwj commented at 10:23 am on April 23, 2024: member

    i’ve added some review notes for the Qt patch here: https://github.com/laanwj/qtsowrap?tab=readme-ov-file#patching-qt

    What is important to ensure is that initialize_ happens before any calls to a library, as calling early will cause a crash. Forgetting to wrap a header will be found during linking as the symbol will be wrong.

  24. DrahtBot added the label CI failed on Apr 23, 2024
  25. laanwj force-pushed on Apr 23, 2024
  26. DrahtBot removed the label CI failed on Apr 23, 2024
  27. theuni commented at 1:47 pm on April 26, 2024: member
    Neat!
  28. laanwj commented at 9:52 pm on April 26, 2024: member

    Okay, i implemented a script to download the upstream tarballs and extract the headers from there*..

    So everything except what is in scripts is generated–this makes it traightforward to change the required interface versions in collector.py by pointing it to a different tarball and re-running the process, and committing the changes to git.

    The entire process is deterministic so can also be used to verify that the headers in git are correct.

    * for xcb_proto this does require it to invoke a generator script, to generate the headers from xml, however that’s done in a minimalistic way, without invoking its entire build/install process

  29. laanwj force-pushed on Apr 28, 2024
  30. laanwj commented at 11:33 am on April 28, 2024: member
    Looks like we could drop ‘bison’ as a dependency here, it was used by the xkbcommon build which is dropped.
  31. DrahtBot added the label CI failed on Apr 28, 2024
  32. DrahtBot added the label Needs rebase on Apr 29, 2024
  33. laanwj force-pushed on Apr 29, 2024
  34. laanwj commented at 7:52 am on April 29, 2024: member
    Rebased for merge conflict (trivial: only modify/deletes in packages that go away) and to apply fixup commits.
  35. DrahtBot removed the label Needs rebase on Apr 29, 2024
  36. DrahtBot added the label Needs rebase on Apr 30, 2024
  37. laanwj force-pushed on Apr 30, 2024
  38. laanwj commented at 12:14 pm on April 30, 2024: member
    Rebased for #29985 (add/add).
  39. DrahtBot removed the label Needs rebase on Apr 30, 2024
  40. DrahtBot removed the label CI failed on May 13, 2024
  41. laanwj force-pushed on May 15, 2024
  42. DrahtBot added the label CI failed on May 15, 2024
  43. laanwj force-pushed on May 16, 2024
  44. laanwj force-pushed on May 16, 2024
  45. laanwj commented at 8:36 am on May 16, 2024: member
    All outstanding TODOs were done. Rebased to master, collected fixups.
  46. jonatack commented at 8:31 pm on May 16, 2024: member

    Concept ACK. This looks like amazing work, great!

    I’m not sure how to help test. Using arm64 macOS 14.4.1, this branch builds cleanly, the unit tests pass, and the GUI runs fine. Don’t see any issues on first read of the code.

    0$ clang --version
    1Homebrew clang version 18.1.5
    2Target: arm64-apple-darwin23.4.0
    3Thread model: posix
    4InstalledDir: /opt/homebrew/opt/llvm/bin
    
  47. laanwj commented at 8:54 pm on May 16, 2024: member

    I’m not sure how to help test. Using arm64 macOS 14.4.1, this branch builds cleanly, the unit tests pass, and the GUI runs fine. Don’t see any issues on first read of the code.

    Thanks for testing! To be clear, this shouldn’t affect MacOS at all, Qt on MacOS (and Windows) doesn’t have any of the huge bag of dependencies that Qt Linux/UNIX has.

  48. maflcko commented at 1:54 pm on May 17, 2024: member
    I did test an earlier draft of this pull request and the only thing I noticed was that on a fresh desktop install of a Linux distro, sometimes a package would be missing, and the GUI would fail to start. If this is expected, I guess the docs should be adjusted to clarify that users would have to install the packages themselves?
  49. laanwj commented at 3:18 pm on May 17, 2024: member

    I did test an earlier draft of this pull request and the only thing I noticed was that on a fresh desktop install of a Linux distro, sometimes a package would be missing, and the GUI would fail to start.

    Do you have specific output or details? That isn’t expected behavior. This PR doesn’t change the libraries required to be installed on the user’s system, all the dependencies that this removes were already built only to link against. The only difference is that they’re loaded at runtime using dlopen instead of by the dynamic linker before the binary runs.

    One advantage is that this allows to be more tolerant about which libraries are installed on the user’s system, by having control over the loading, not less.

  50. maflcko added the label DrahtBot Guix build requested on May 17, 2024
  51. maflcko commented at 3:22 pm on May 17, 2024: member

    Do you have specific output or details?

    The DrahtBot builds (as well as the log outputs) are deleted by now, as they are short-lived test-only assets. I’ll create fresh DrahtBot builds and try again with the current state of this pull request.

  52. DrahtBot removed the label CI failed on May 17, 2024
  53. DrahtBot commented at 10:11 am on May 22, 2024: contributor

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

    File commit a786fd2041913d82ca90b561de309421bd24e41b(master) commit 1f1acc8bf79f62fe8d444843e189081ab6eb3a5a(master and this pull)
    SHA256SUMS.part 14f282b5bf7ebcd4... 5cd90a51129444a6...
    *-aarch64-linux-gnu-debug.tar.gz b2364625629230d1... d8ce7d472bec46e4...
    *-aarch64-linux-gnu.tar.gz b05fc0561baa0966... fddcd9f96524f394...
    *-arm-linux-gnueabihf-debug.tar.gz 4545637daf89882c... 3bb71e7becebbf9f...
    *-arm-linux-gnueabihf.tar.gz 27115f4c7e251175... 571615ee8982eb9e...
    *-arm64-apple-darwin-unsigned.tar.gz cf3950f9d05fb1c0... 98ddd2d738e9b3d0...
    *-arm64-apple-darwin-unsigned.zip b1c32e004722a3b4... f6dd76b44178f3f3...
    *-arm64-apple-darwin.tar.gz f09a38acef4b141b... 08ac95f36cd12d01...
    *-powerpc64-linux-gnu-debug.tar.gz 75cfe8d73120b00d... 6902c17146d69987...
    *-powerpc64-linux-gnu.tar.gz d4f8c1296886fac4... c0f0e350ad3e3c4a...
    *-riscv64-linux-gnu-debug.tar.gz a8f56aee14e85f29... 5a50ad28ac39edf7...
    *-riscv64-linux-gnu.tar.gz d8a4ae4295e6aa9f... 2e922f98bf947423...
    *-x86_64-apple-darwin-unsigned.tar.gz ff9ae232120c85f9... 86b6122b0a21ed79...
    *-x86_64-apple-darwin-unsigned.zip 9917159a6fd59954... e49fb32a43702ba6...
    *-x86_64-apple-darwin.tar.gz 61112274cace86c4... 84f4d4b75cf59793...
    *-x86_64-linux-gnu-debug.tar.gz 557d05bc585a2910... a04a003417323042...
    *-x86_64-linux-gnu.tar.gz 4928355769a494d7... d2f9940506b6b9ea...
    *.tar.gz 49c2acd89613cf65... a6d1c45d0951e930...
    guix_build.log 88d5371b29f8bb75... ecc9eeef1e0f8051...
    guix_build.log.diff c47a48e33b450b28...
  54. DrahtBot removed the label DrahtBot Guix build requested on May 22, 2024
  55. maflcko commented at 7:27 pm on May 28, 2024: member

    This PR doesn’t change the libraries required to be installed on the user’s system

    Correct. I tested this in three different boxes and it worked.

    Screenshot from 2024-05-28 21-07-09 Screenshot from 2024-05-28 21-12-29 Screenshot from 2024-05-28 21-25-14

  56. DrahtBot added the label Needs rebase on May 30, 2024
  57. laanwj commented at 8:48 am on May 30, 2024: member

    @maflcko Thank you for testing!

    Force-push: trivial rebase for Android removal from build system

  58. laanwj force-pushed on May 30, 2024
  59. DrahtBot removed the label Needs rebase on May 30, 2024
  60. DrahtBot added the label Needs rebase on May 31, 2024
  61. laanwj closed this on Jun 4, 2024

  62. theuni commented at 1:58 pm on June 6, 2024: member
    Closed on purpose?
  63. laanwj commented at 2:40 pm on June 6, 2024: member
    i was a bit tired of seeing “you need to rebase” messages, will get around to this 😄
  64. depends: Add qtsowrap, make Qt build depend on it a26b8af1f7
  65. depends: Add qtsowrap patch for Qt 97e5c3e7e3
  66. contrib: Remove qt dependency libraries from symbol check 75f2b57b8e
  67. depends: Actually remove Qt dependencies packages 16db8541f6
  68. guix, depends, ci: Remove bison dependency
    This was required by xkbcommon build, which is no longer a dependency for build.
    3ce0fb154d
  69. laanwj reopened this on Jun 17, 2024

  70. laanwj force-pushed on Jun 17, 2024
  71. laanwj commented at 5:57 pm on June 17, 2024: member
    Force-push: rebased to master for qt version bump. Trivial changes to depends, didn’t need to change qt patch.
  72. DrahtBot removed the label Needs rebase on Jun 17, 2024
  73. DrahtBot added the label CI failed on Jun 17, 2024
  74. DrahtBot commented at 8:07 pm on June 17, 2024: contributor

    🚧 At least one of the CI tasks failed. Make sure to run all tests locally, according to the documentation.

    Possibly this is due to a silent merge conflict (the changes in this pull request being incompatible with the current code in the target branch). If so, make sure to rebase on the latest commit of the target branch.

    Leave a comment here, if you need help tracking down a confusing failure.

    Debug: https://github.com/bitcoin/bitcoin/runs/26328929494

  75. doc: Remove fontconfig and freetype from dependencies.md
    These are indirect dependencies of Qt and don't necessarily need to be
    mentioned here. Fix "target filename not found" md linter error.
    7acb6c0a17
  76. DrahtBot removed the label CI failed on Jun 18, 2024
  77. DrahtBot added the label Needs rebase on Jul 19, 2024
  78. DrahtBot commented at 9:55 am on July 19, 2024: contributor

    🐙 This pull request conflicts with the target branch and needs rebase.

  79. laanwj commented at 1:39 pm on August 27, 2024: member
    closing due to lack of interest
  80. laanwj closed this on Aug 27, 2024


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-12-21 15:12 UTC

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