releases: use LLVM 18 for macOS #30022

pull fanquake wants to merge 4 commits into bitcoin:master from fanquake:macos_llvm_18_releases changing 7 files +52 −10
  1. fanquake commented at 11:38 AM on May 2, 2024: member

    Bumps the Guix time-machine to include a bump to LLVM 18.1.6: https://git.savannah.gnu.org/cgit/guix.git/commit/?id=1fa1325c0b4bb5c28e564526f387d82083733104. Can split this out given it effects all releases.

    Needs another patch to Qt. It's internal libpng build is broken with the newer Clang, due to:

    A new Clang extension (see here) is enabled for Darwin (Apple platform) targets. Clang now defines TARGET_OS_* macros for these targets, which could break existing code bases with improper checks for the TARGET_OS_ macros.

    See https://releases.llvm.org/18.1.0/tools/clang/docs/ReleaseNotes.html?1=#clang-frontend-potentially-breaking-changes.

  2. DrahtBot commented at 11:38 AM on May 2, 2024: contributor

    <!--e57a25ab6845829454e8d69fc972939a-->

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

    <!--006a51241073e994b41acfe9ec718e94-->

    Code Coverage

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

    <!--021abf342d371248e50ceaed478a90ca-->

    Reviews

    See the guideline for information on the review process. A summary of reviews will appear here.

    <!--174a7506f384e20aa4161008e828411d-->

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #29881 (guix: use GCC 13 to builds releases by fanquake)
    • #25573 ([POC] guix: produce a fully -static-pie bitcoind 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.

  3. maflcko added the label DrahtBot Guix build requested on May 2, 2024
  4. in depends/packages/native_llvm.mk:9 in 857130ce17 outdated
       8 | -$(package)_sha256_hash=6dd62762285326f223f40b8e4f2864b5c372de3f7de0731cb7cd55ca5287b75a
       9 | +$(package)_sha256_hash=8c2f4d1606d24dc197a590acce39453abe7a302b9b92e762108f9b5a9701b1df
      10 |  else
      11 | -$(package)_file_name=clang+llvm-$($(package)_version)-x86_64-linux-gnu-ubuntu-22.04.tar.xz
      12 | -$(package)_sha256_hash=884ee67d647d77e58740c1e645649e29ae9e8a6fe87c1376be0f3a30f3cc9ab3
      13 | +$(package)_file_name=clang+llvm-$($(package)_version)-x86_64-linux-gnu-ubuntu-18.04.tar.xz
    


    dergoegge commented at 12:26 PM on May 2, 2024:

    this download link works but ubuntu-18?


    maflcko commented at 12:49 PM on May 2, 2024:

    this download link works but ubuntu-18?

    This should be fixed in LLVM 19: https://discourse.llvm.org/t/rfc-improve-binary-security/78121/56


    fanquake commented at 12:53 PM on May 2, 2024:

    Yea. While using the pre-built bins, we have to take what is available. For some reason the person building the x86_64 bins here has reverted to that. It also means we'll need to revert to installing libtinfo5 in the macOS CI, which is also annoying, because you also can't actually install that on Ubuntu 24.04 (although we currently still use 22.04 here, so it'll work for now).


    maflcko commented at 1:09 PM on May 2, 2024:

    Or waiting after #21778, which should be fine as well, as there is no rush to use clang 18?


    maflcko commented at 9:46 AM on May 29, 2024:

    It should be possible now to nuke this and require the user (if they want to cross-compile to macOS) to type apt install clang-18 instead?

    I presume leaving this to the user will allow to run the cross-compile on more distros and arches, as opposed to being possibly confined to x86_64-linux-gnu-ubuntu when using the llvm artefacts?


    fanquake commented at 9:50 AM on May 29, 2024:

    Yea, the plan is to switch away from vendoring Clang entirely, which is more straightforward now that #21778 is merged. I'll be followingup.


    fanquake commented at 11:15 AM on May 30, 2024:

    First step in #30198.

  5. fanquake force-pushed on May 2, 2024
  6. DrahtBot added the label CI failed on May 2, 2024
  7. DrahtBot removed the label CI failed on May 2, 2024
  8. DrahtBot commented at 2:44 AM on May 3, 2024: contributor

    <!--9cd9c72976c961c55c7acef8f6ba82cd-->

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

    File commit 9d1a286f20b8a602ffe72928bcd79be09fdbf9d0<br>(master) commit 651eda7bccaeb20dea2861f51d5df1c84d6c30a2<br>(master and this pull)
    SHA256SUMS.part 17566951047800af... fae6330641c45c8d...
    *-aarch64-linux-gnu-debug.tar.gz 28fac1a1669f452c... 1118cb408c370223...
    *-aarch64-linux-gnu.tar.gz a29e21c798cb4b36... a43c60c835637192...
    *-arm-linux-gnueabihf-debug.tar.gz fdde7fdf88451f95... 80743dce8fe58993...
    *-arm-linux-gnueabihf.tar.gz d591d94b2b223257... 6759256e85dbfd86...
    *-arm64-apple-darwin-unsigned.tar.gz aaaca486aac0e4e1... 53a6ed37bec4efa6...
    *-arm64-apple-darwin-unsigned.zip cd33afb81cc88b58... 5dfc1dba4b57ddfc...
    *-arm64-apple-darwin.tar.gz 31e1f7bfa358770d... f10ea9effd939c7e...
    *-powerpc64-linux-gnu-debug.tar.gz bae7b182e366fcda... 08d87c06cece0f65...
    *-powerpc64-linux-gnu.tar.gz cf8a5742e6da650f... 0704e0beb7c523f4...
    *-riscv64-linux-gnu-debug.tar.gz 76b36c63c0cd0ad0... fc3fd5b83f2a8d7a...
    *-riscv64-linux-gnu.tar.gz dbd6d4b454300761... 22926181e1d558e8...
    *-x86_64-apple-darwin-unsigned.tar.gz dfe6336ef1d750e4... 5c02eb2a80fb6aff...
    *-x86_64-apple-darwin-unsigned.zip 9485a1af55218534... 9c2424a76796e6db...
    *-x86_64-apple-darwin.tar.gz 5eb6dcea7ad64451... ee0a232311bacfb9...
    *-x86_64-linux-gnu-debug.tar.gz 95365a927f96ed56... 9ef4e9e1e489b4cc...
    *-x86_64-linux-gnu.tar.gz ae4d52b923fb6ecc... b856109924c3f928...
    *.tar.gz 1a3f8d5ec7ae7c45... 84bbe4bdd8e6510f...
    guix_build.log 5a726c2f8805dd0d... 9b47b40a6af86983...
    guix_build.log.diff a91b8b039c5781c9...
  9. DrahtBot removed the label DrahtBot Guix build requested on May 3, 2024
  10. DrahtBot added the label CI failed on May 7, 2024
  11. DrahtBot removed the label CI failed on May 8, 2024
  12. fanquake force-pushed on May 15, 2024
  13. fanquake force-pushed on May 16, 2024
  14. depends: fix Qt macOS build with Clang 18
    Patch Qts internal libpng to resolve the failure.
    d4eac998ec
  15. guix: bump time-machine to 1fa1325c0b4bb5c28e564526f387d82083733104
    Includes LLVM 18.1.6.
    https://git.savannah.gnu.org/cgit/guix.git/commit/?id=1fa1325c0b4bb5c28e564526f387d82083733104.
    a870a28706
  16. depends: bump native_llvm up to 18.1.4 338da55848
  17. guix: use clang-toolchain-18 for macOS build
    Version is 18.1.6.
    91707868bf
  18. fanquake force-pushed on May 29, 2024
  19. fanquake closed this on May 30, 2024

  20. fanquake deleted the branch on May 30, 2024
  21. bitcoin locked this on May 30, 2025

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: 2026-04-26 06:13 UTC

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