build: Bump minimum required clang/libc++ to 8.0 #24164

pull MarcoFalke wants to merge 2 commits into bitcoin:master from MarcoFalke:2201-clangRoll changing 3 files +5 −13
  1. MarcoFalke commented at 7:27 am on January 26, 2022: member

    This is not for 23.0, but for 24.0. It comes with the following benefits:

    This should be fine, given that all supported operating systems ship with at least clang-10:

  2. MarcoFalke added the label Build system on Jan 26, 2022
  3. MarcoFalke added this to the milestone 24.0 on Jan 26, 2022
  4. hebasto commented at 9:05 am on January 26, 2022: member
    Concept ACK.
  5. shaavan commented at 11:59 am on January 26, 2022: contributor

    Concept ACK

    On a side note, I was wondering about one thing. Would this PR remain unmerged until v23.0 finally releases on April 1st?

  6. hebasto commented at 12:00 pm on January 26, 2022: member

    Would this PR remain unmerged until v23.0 finally releases on April 1st?

    Until branching 23.x off, I guess.

  7. DrahtBot commented at 11:35 pm on January 26, 2022: member

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

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #24322 ([kernel 1/n] Introduce initial libbitcoinkernel by dongcarl)
    • #23565 (doc: rewrite dependencies.md 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.

  8. MarcoFalke force-pushed on Feb 3, 2022
  9. MarcoFalke commented at 6:05 pm on February 3, 2022: member

    Rebased to get fresh CI.

    Fun fact: I couldn’t compile current master with clang-7 and system libs on Bionic, so this could theoretically even be merged before 23.0

  10. hebasto commented at 9:25 pm on February 3, 2022: member

    @MarcoFalke

    Fun fact: I couldn’t compile current master with clang-7 and system libs on Bionic, so this could theoretically even be merged before 23.0

    Is it similar to #21294 (comment)?

  11. MarcoFalke force-pushed on Feb 15, 2022
  12. DrahtBot added the label Needs rebase on Feb 23, 2022
  13. MarcoFalke force-pushed on Feb 23, 2022
  14. DrahtBot removed the label Needs rebase on Feb 23, 2022
  15. DrahtBot added the label Needs rebase on Mar 3, 2022
  16. ci/doc: Set minimum required clang/libc++ version to 8.0 fab53b5fd4
  17. Revert "Avoid the use of P0083R3 std::set::merge"
    This reverts commit 6cf4ea71878c0a83f2e49831e4dfa119c53761b7.
    fae20e6b50
  18. MarcoFalke force-pushed on Mar 4, 2022
  19. DrahtBot removed the label Needs rebase on Mar 4, 2022
  20. fanquake approved
  21. fanquake commented at 10:54 am on March 11, 2022: member
    ACK fae20e6b50306f91c74037e915aa0ab75a0a6b3b - I think this is fine to do. I would be surprised if in another 6 months time someone was stuck on a system we supported, needing to compile Core, and only had access to Clang 7 or older. As mentioned in the PR description, all systems we currently support, already support multiple newer versions of Clang.
  22. in doc/dependencies.md:10 in fae20e6b50
     6@@ -7,7 +7,7 @@ These are the dependencies currently used by Bitcoin Core. You can find instruct
     7 | --- | --- | --- | --- | --- | --- |
     8 | Berkeley DB | [4.8.30](https://www.oracle.com/technetwork/database/database-technologies/berkeleydb/downloads/index.html) | 4.8.x | No |  |  |
     9 | Boost | [1.77.0](https://www.boost.org/users/download/) | [1.64.0](https://github.com/bitcoin/bitcoin/pull/22320) | No |  |  |
    10-| Clang<sup>[ \* ](#note1)</sup> |  | [7.0](https://releases.llvm.org/download.html) (C++17 & std::filesystem support) |  |  |  |
    11+| Clang |  | [8.0](https://releases.llvm.org/download.html) (C++17 & std::filesystem support) |  |  |  |
    


    hebasto commented at 8:04 am on March 12, 2022:
    0| Clang |  | [8.0](https://releases.llvm.org/download.html) (C++17, std::filesystem, and P0083R3 support) |  |  |  |
    

    MarcoFalke commented at 8:12 am on March 12, 2022:
    I don’t think mentioning a paper in the dependencies will give users any useful information. If they are interested in this, they can use https://en.cppreference.com/w/cpp/compiler_support or the documentation of their compiler. Practically they should only care about the minimum required version.
  23. hebasto approved
  24. hebasto commented at 8:04 am on March 12, 2022: member
    ACK fae20e6b50306f91c74037e915aa0ab75a0a6b3b, I have reviewed the code and it looks OK, I agree it can be merged.
  25. MarcoFalke merged this on Mar 12, 2022
  26. MarcoFalke closed this on Mar 12, 2022

  27. MarcoFalke deleted the branch on Mar 12, 2022
  28. fanquake referenced this in commit 239bc68720 on May 30, 2022
  29. fanquake referenced this in commit 460854c1eb on May 30, 2022
  30. fanquake referenced this in commit a7973bf8f4 on May 31, 2022
  31. MarcoFalke referenced this in commit bd6c5e4108 on May 31, 2022
  32. sidhujag referenced this in commit 5c11078df9 on May 31, 2022
  33. DrahtBot locked this on Mar 12, 2023

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

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