Suggested in #30997 (review):
There's probably enough GUI-only stuff here, i.e
bison,ninja-build,python3,xz-utils, that this could be moved to it's own#### Guisection.
Suggested in #30997 (review):
There's probably enough GUI-only stuff here, i.e
bison,ninja-build,python3,xz-utils, that this could be moved to it's own#### Guisection.
<!--e57a25ab6845829454e8d69fc972939a-->
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
<!--006a51241073e994b41acfe9ec718e94-->
For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/31192.
<!--021abf342d371248e50ceaed478a90ca-->
See the guideline for information on the review process.
If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.
<!--174a7506f384e20aa4161008e828411d-->
Reviewers, this pull request conflicts with the following ones:
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.
46 | + 47 | +#### GUI 48 | + 49 | +Skip the following packages if you don't intend to use the GUI and will build with [`NO_QT=1`](#dependency-options): 50 | + 51 | + apt install bison pkg-config python3 xz-utils
For make -C depends MULTIPROCESS=1 NO_QT=1 the pkg-config package seems not required though.
It would be more of a convinience. I guess this doesn't make too much difference as 31181 is likely to be merged soon in any case.
I suggest either leaving out apt install or also naming brew install and friends, to make it clear this applies to all platforms.
I wouldn't expect that all packages have the same names across Ubuntu/Debian and Homebrew repositories.
~I agree that a macOS-specific section can be added here, but this is not a goal of this PR.~
I've double-checked prerequisites required for building depends on macOS, and there are no additional requirements specific to depends beyond those listed in https://github.com/bitcoin/bitcoin/blob/master/doc/build-osx.md#3-install-required-dependencies.
<!--85328a0da195eb286784d51f73fa0af9-->
🚧 At least one of the CI tasks failed. <sub>Debug: https://github.com/bitcoin/bitcoin/runs/32336801754</sub>
<details><summary>Hints</summary>
Try to run the tests locally, according to the documentation. However, a CI failure may still happen due to a number of reasons, for example:
Possibly 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.
A sanitizer issue, which can only be found by compiling with the sanitizer and running the affected test.
An intermittent issue.
Leave a comment here, if you need help tracking down a confusing failure.
</details>
Concept ACK.
Additionally, the
cmakehas been removed from the required packages, as it is no longer specific to depends.
If cmake is needed to build depends it should remain listed. The same as make, or a compiler.
Additionally, the
cmakehas been removed from the required packages, as it is no longer specific to depends.If
cmakeis needed to build depends it should remain listed. The same asmake, or a compiler.
Thanks! Reworked per feedback.
46 | + 47 | +#### GUI 48 | + 49 | +Skip the following packages if you don't intend to use the GUI and will build with [`NO_QT=1`](#dependency-options): 50 | + 51 | + apt install bison g++ pkg-config python3 xz-utils
If you're adding g++ here, you can remove it from the macOS section below.
Thanks! Removed.
Its... imo a bit strange to mention skipping g++ as it's so clearly a dependency for building bitcoin core itself. While correct in a strict sense, we know having it not installed is going to fail later. Also the multiprocess lib (and deps) require a C++ compiler.
The user can use a different compiler to build depends, but Qt 5 still insists on GCC for building the native qmake.
Okay, sure, then it makes sense.
ACK 4747f030956d6876ec7cef4e2500a8579bc82146