doc: Add note for building on macOS (Intel) with CMake ≥ 4.0 #32289

pull hebasto wants to merge 1 commits into bitcoin:master from hebasto:250416-macos-intel changing 1 files +2 −0
  1. hebasto commented at 4:23 pm on April 16, 2025: member

    Due to changes in CMake 4.0, building on macOS (Intel) no longer silences warnings from Homebrew-installed packages, such as boost or libevent.

    This PR adds a note to the macOS Build Guide to work around this issue.

    For technical background, see the following discussions:

  2. doc: Add note for building on macOS (Intel) with CMake ≥ 4.0
    See: https://gitlab.kitware.com/cmake/cmake/-/merge_requests/10636.
    05b77b55cc
  3. hebasto added the label Docs on Apr 16, 2025
  4. hebasto added the label macOS on Apr 16, 2025
  5. DrahtBot commented at 4:23 pm on April 16, 2025: contributor

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

    Code Coverage & Benchmarks

    For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/32289.

    Reviews

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

  6. in doc/build-osx.md:148 in 05b77b55cc
    144@@ -145,6 +145,8 @@ It is required that you have `python` and `zip` installed.
    145 
    146 ### 1. Configuration
    147 
    148+Note: On macOS (x86_64), users with CMake ≥ 4.0 and Homebrew installed in `/usr/local` should pass `-DCMAKE_OSX_SYSROOT=macosx` or `export SDKROOT=macosx` when not building with Homebrew-provided tools.
    


    fanquake commented at 9:21 am on April 17, 2025:
    This says it applies to users with Homebrew installed, when not building with homebrew-provided tools? What are the “tools” here? This seems vauge, and as a user reading this I probably wouldn’t know if it applies to me.

    hebasto commented at 9:50 am on April 17, 2025:

    This says it applies to users with Homebrew installed, when not building with homebrew-provided tools? What are the “tools” here?

    For example, LLVM toolchain.

  7. fanquake commented at 9:22 am on April 17, 2025: member
    Not sure. I see this is just copied from the CMake release notes, but it doesn’t really explain anything, and it’s not clear what warnings that were being supressed no-longer are. Also seems like the warnings are a sideeffect of some other issues, that should probably be fixed properly, in some way.
  8. hebasto commented at 9:48 am on April 17, 2025: member

    … that should probably be fixed properly, in some way.

    I haven’t found a way to do it that covers all use cases, is user-friendly, and doesn’t introduce excessive complexity.

  9. janb84 commented at 8:06 am on April 18, 2025: contributor

    … that should probably be fixed properly, in some way.

    I haven’t found a way to do it that covers all use cases, is user-friendly, and doesn’t introduce excessive complexity.

    Maybe one “solution” is not to lean only on homebrew but offer also an alternative package manager e.g. nix ? (nix is still on cmake 3.31 so not sure what will happen when they are on 4.0 )


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: 2025-04-19 06:12 UTC

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