-
Notifications
You must be signed in to change notification settings - Fork 37.7k
build: Add Boost.Process usage check #24254
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approach ACK 7b80c36
The same happens on CentOS 8 with system packages. I presume a workaround would be to disable external signer? |
Correct. If |
Guix builds:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you rebase this on master?
Updated 7b80c36 -> dec3826 (pr24254.01 -> pr24254.02):
|
Guix builds:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approach ACK dec3826
Check that Boost.Process can be used without linking any libraries (header-only). Disable the functionality if that is not the case.
Updated dec3826 -> abc057c (pr24254.02 -> pr24254.03, diff):
Also the PR description has been updated. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK abc057c
Guix Build:
bash-5.1# find guix-build-$(git rev-parse --short=12 HEAD)/output/ -type f -print0 | env LC_ALL=C sort -z | xargs -r0 sha256sum
c9113a6a8433169232d63ac52750250467dddde1896465b791047879c9443667 guix-build-abc057c6030b/output/aarch64-linux-gnu/SHA256SUMS.part
ef301fac18cbb1578cfc9d7bc641867ab3dc70c3a18aaa69bd3894a383608e3a guix-build-abc057c6030b/output/aarch64-linux-gnu/bitcoin-abc057c6030b-aarch64-linux-gnu-debug.tar.gz
bfcefa06e485bd65c96c742591dc3647e6609223ed48bd25a1ac671122eb1fb3 guix-build-abc057c6030b/output/aarch64-linux-gnu/bitcoin-abc057c6030b-aarch64-linux-gnu.tar.gz
b248287deaa79473ced7c315593621640c5f5cf35aa41a7392d5cc79a96895cc guix-build-abc057c6030b/output/arm-linux-gnueabihf/SHA256SUMS.part
3b46d7640aa8bf6cfec2cc94e220a2de13416558afb63af67ff7172094e4e6c1 guix-build-abc057c6030b/output/arm-linux-gnueabihf/bitcoin-abc057c6030b-arm-linux-gnueabihf-debug.tar.gz
626d91e86e37e98b46cc0231889077c72b41990ffaf08e6985b9f05e428a5475 guix-build-abc057c6030b/output/arm-linux-gnueabihf/bitcoin-abc057c6030b-arm-linux-gnueabihf.tar.gz
fa30549e1a0d1b32355685a1821536673aec765dd1c381aa734435ac81455289 guix-build-abc057c6030b/output/arm64-apple-darwin/SHA256SUMS.part
339d73eb56253e852ef0941334d6314e1bd2f9d34f0a6870e919dd80738c6618 guix-build-abc057c6030b/output/arm64-apple-darwin/bitcoin-abc057c6030b-arm64-apple-darwin.tar.gz
7de1684da96bb4508f06eb24f198b9ce51c05ddf346ea7d7b34ba11a58e36f3f guix-build-abc057c6030b/output/arm64-apple-darwin/bitcoin-abc057c6030b-osx-unsigned.dmg
06668ed7466b8a71fb5da7227ed110358441dc199bb2ac8fdaeaceac5740bd0e guix-build-abc057c6030b/output/arm64-apple-darwin/bitcoin-abc057c6030b-osx-unsigned.tar.gz
9cf414febbb6f45d127472b702da28dbeb2c4a95bcf0a48c407c93add2a1ca87 guix-build-abc057c6030b/output/dist-archive/bitcoin-abc057c6030b.tar.gz
539ee17894c799b4fd0b97683e640eab7d6414c728d688725e467ce182b0cc04 guix-build-abc057c6030b/output/powerpc64-linux-gnu/SHA256SUMS.part
72ef9a1b6969c1d6147dfd54c320754b66fbc567b874f7e0ff0620ce59e0c3da guix-build-abc057c6030b/output/powerpc64-linux-gnu/bitcoin-abc057c6030b-powerpc64-linux-gnu-debug.tar.gz
58a29daa3441c612a5ae5635952f77d4854480ae9c372fe8b525370d5938c138 guix-build-abc057c6030b/output/powerpc64-linux-gnu/bitcoin-abc057c6030b-powerpc64-linux-gnu.tar.gz
e2f0e7f046b5bed003827388a57f38c24a173a1f6b934ee025667f577493070e guix-build-abc057c6030b/output/powerpc64le-linux-gnu/SHA256SUMS.part
0c9b5e1f5f327510510830417a5f11a2d8151be1d573f30ad7d2396739a4fdd0 guix-build-abc057c6030b/output/powerpc64le-linux-gnu/bitcoin-abc057c6030b-powerpc64le-linux-gnu-debug.tar.gz
0d5f62e66e39587c3e7b4cf553e386ab726d180473dad8dde98443330cae86b2 guix-build-abc057c6030b/output/powerpc64le-linux-gnu/bitcoin-abc057c6030b-powerpc64le-linux-gnu.tar.gz
c2f9de02e08d55131c50f5775dc4eab231a96f9bedc9fd7ae3fb245109ad4747 guix-build-abc057c6030b/output/riscv64-linux-gnu/SHA256SUMS.part
e917d5f8cad66e65f4d872a677f158b5f432c03cead6ad3382a4500c565765e8 guix-build-abc057c6030b/output/riscv64-linux-gnu/bitcoin-abc057c6030b-riscv64-linux-gnu-debug.tar.gz
45a86f5ae68cb7de3086c1b1bdc5cce21f668ddec65b5869a60f2943d6e309f6 guix-build-abc057c6030b/output/riscv64-linux-gnu/bitcoin-abc057c6030b-riscv64-linux-gnu.tar.gz
327881fb491cf0694a22c3b272e63c31b91035849a904d192da23b2b1a861a62 guix-build-abc057c6030b/output/x86_64-apple-darwin/SHA256SUMS.part
f4b78503ba7548ebd4e4981cd173f16ddb27e1dcd69a3deb9e01f3e986552f9d guix-build-abc057c6030b/output/x86_64-apple-darwin/bitcoin-abc057c6030b-osx-unsigned.dmg
b8c640ad53e653bd9e0863a4c03e4d9d29be31e1454809e940bd06670d4e96a0 guix-build-abc057c6030b/output/x86_64-apple-darwin/bitcoin-abc057c6030b-osx-unsigned.tar.gz
c6a810c10d87596482cec27cfe99881f9e7c144e8decb6c2f8ba4bd819d6fc90 guix-build-abc057c6030b/output/x86_64-apple-darwin/bitcoin-abc057c6030b-osx64.tar.gz
1192e6fc933389d29583030082d138c88e79d4fce0ec9c98606adab30a12ae20 guix-build-abc057c6030b/output/x86_64-linux-gnu/SHA256SUMS.part
e4045d834aad9ff457e02c5f74032221c09d2216ea7cb2b1d92911be4be2cbdc guix-build-abc057c6030b/output/x86_64-linux-gnu/bitcoin-abc057c6030b-x86_64-linux-gnu-debug.tar.gz
1586330dbcbe44d251669059f7acb8289c6372cd2d848164f2ad77c0507c2010 guix-build-abc057c6030b/output/x86_64-linux-gnu/bitcoin-abc057c6030b-x86_64-linux-gnu.tar.gz
abc057c build: Add Boost.Process usage check (Hennadii Stepanov) Pull request description: This PR adds a check that Boost.Process can be used without linking any libraries (header-only). Disable the functionality if that is not the case. Fixes bitcoin#24314. ACKs for top commit: fanquake: ACK abc057c Tree-SHA512: ed2a32b1f751ec6f88cc7220766edd4cdab93c1d0515c892aa3094ee8d5b13ef569830d6e7a7a00c0197b117585dc526d00d943cc99a1f8c8a66ac4e20fe2061
…BSD build guide 9ecb0a3 doc: remove passing `--disable-external-signer` in OpenBSD build guide (Sebastian Falbesoner) Pull request description: Since we have a Boost.Process usage check in the build system (#24254, commit abc057c), passing the option `--disable-external-signer` explicitly is not needed anymore on OpenBSD; the configure script will automatically detect that including `<boost/process.hpp>` leads to a compile error and disable external signer support accordingly: ``` $ ./configure MAKE=gmake ... checking whether Boost.Process can be used... no ... Options used to compile and link: external signer = no ... $ ./configure --enable-external-signer MAKE=gmake ... checking whether Boost.Process can be used... no configure: error: External signing is not supported for this Boost version ``` The PR basically reverts #22335 but keeps the part mentioning that external signer support is not available on OpenBSD. Also bumps the guide to version 7.1 (released [about a month ago](https://www.openbsd.org/71.html)), where I could verify that the instructions are still accurate. ACKs for top commit: fanquake: ACK 9ecb0a3 Tree-SHA512: a5f7e89a5a78f062a06e0047802c42ad49d89e0f0afb963886caa684966ea2e9c8a660320eedd98a5aa5eee0a9c2bb8bf7f5772338c4b49738a69c00e9367a15
…in OpenBSD build guide 9ecb0a3 doc: remove passing `--disable-external-signer` in OpenBSD build guide (Sebastian Falbesoner) Pull request description: Since we have a Boost.Process usage check in the build system (bitcoin#24254, commit abc057c), passing the option `--disable-external-signer` explicitly is not needed anymore on OpenBSD; the configure script will automatically detect that including `<boost/process.hpp>` leads to a compile error and disable external signer support accordingly: ``` $ ./configure MAKE=gmake ... checking whether Boost.Process can be used... no ... Options used to compile and link: external signer = no ... $ ./configure --enable-external-signer MAKE=gmake ... checking whether Boost.Process can be used... no configure: error: External signing is not supported for this Boost version ``` The PR basically reverts bitcoin#22335 but keeps the part mentioning that external signer support is not available on OpenBSD. Also bumps the guide to version 7.1 (released [about a month ago](https://www.openbsd.org/71.html)), where I could verify that the instructions are still accurate. ACKs for top commit: fanquake: ACK 9ecb0a3 Tree-SHA512: a5f7e89a5a78f062a06e0047802c42ad49d89e0f0afb963886caa684966ea2e9c8a660320eedd98a5aa5eee0a9c2bb8bf7f5772338c4b49738a69c00e9367a15
This PR adds a check that Boost.Process can be used without linking any libraries (header-only).
Disable the functionality if that is not the case.
Fixes #24314.