aboutsummaryrefslogtreecommitdiff
path: root/configure.ac
AgeCommit message (Collapse)Author
2023-03-08Merge bitcoin/bitcoin#25696: build: Re-enable external signer on WindowsAndrew Chow
1a0d8e178c7b9a3e94d14f94b77305802ebdc93b build: Re-enable external signer on Windows (Hennadii Stepanov) 989451d0689543b25ee6bf1d5b82c863d583597b configure: Detect compatibility of Boost.Process rather than hardcode non-Windows (Luke Dashjr) Pull request description: As https://github.com/boostorg/process/issues/207 has been resolved, it is possible now to re-enable external signer on Windows when cross-compiling. Guix build hashes: ``` 78f69ea7e0dbc8338981a92c0352220ccd7c2272d8cbff6a3b082a1412a935c5 guix-build-1a0d8e178c7b/output/aarch64-linux-gnu/SHA256SUMS.part ee17456ec818ddf5a175182508966e622573ccb518807cca43a40fa1dceda092 guix-build-1a0d8e178c7b/output/aarch64-linux-gnu/bitcoin-1a0d8e178c7b-aarch64-linux-gnu-debug.tar.gz 5080551bde379c746cc67b10429aef33b9f9e49d2d4e21ee1c3bfd9c1c845d46 guix-build-1a0d8e178c7b/output/aarch64-linux-gnu/bitcoin-1a0d8e178c7b-aarch64-linux-gnu.tar.gz dfab220ce76a40bf7dcf07aab352a616a91b516503639455fe7e1b137bad3e85 guix-build-1a0d8e178c7b/output/arm-linux-gnueabihf/SHA256SUMS.part 516ceb822571a8bd88fe107dca434ef596b1e4328ccbda1d51e1d482d3050396 guix-build-1a0d8e178c7b/output/arm-linux-gnueabihf/bitcoin-1a0d8e178c7b-arm-linux-gnueabihf-debug.tar.gz 21325380638f817107c203b9a1aedb808d1a4a2b4041493753ca4cbf19aa4f2c guix-build-1a0d8e178c7b/output/arm-linux-gnueabihf/bitcoin-1a0d8e178c7b-arm-linux-gnueabihf.tar.gz cf48ed78fcfceaeb3610ccf22326d735a129dcbf9d50b557b3de359169aefdfd guix-build-1a0d8e178c7b/output/arm64-apple-darwin/SHA256SUMS.part d4d51e136148bac6a20bb3adb402c499967647736acb420bfdeb71603aba57da guix-build-1a0d8e178c7b/output/arm64-apple-darwin/bitcoin-1a0d8e178c7b-arm64-apple-darwin-unsigned.dmg 95bb62d24f860e08a392ddb74d5860ccf27e8baa183e6749af877d26a3bd6b0b guix-build-1a0d8e178c7b/output/arm64-apple-darwin/bitcoin-1a0d8e178c7b-arm64-apple-darwin-unsigned.tar.gz 68da4c92f37bb802df37141af194f47c16da1d84f77a0fbb1016013ae0338502 guix-build-1a0d8e178c7b/output/arm64-apple-darwin/bitcoin-1a0d8e178c7b-arm64-apple-darwin.tar.gz 6704e38c2d3f11321403797598d05f062648fec6f2d76900ba250dab481e29da guix-build-1a0d8e178c7b/output/dist-archive/bitcoin-1a0d8e178c7b.tar.gz 64b936bc90d1e01fe8f276511edc9bb945dcebe70332aa37d3a786348443b8e7 guix-build-1a0d8e178c7b/output/powerpc64-linux-gnu/SHA256SUMS.part 3d03532e54b6e42498ea240c86b8567e94fd462f56087b869c3d6f09e2dde878 guix-build-1a0d8e178c7b/output/powerpc64-linux-gnu/bitcoin-1a0d8e178c7b-powerpc64-linux-gnu-debug.tar.gz c5843d79a58b0a864fe723458dab4eee54ad11f4b1f7960975b086eeedc0d541 guix-build-1a0d8e178c7b/output/powerpc64-linux-gnu/bitcoin-1a0d8e178c7b-powerpc64-linux-gnu.tar.gz f861ff519bd5e3d6d5ce1646ee0a06bcef1288ddb804a4a600e4dbfe5d5be521 guix-build-1a0d8e178c7b/output/powerpc64le-linux-gnu/SHA256SUMS.part 5f477da21980dbcf9696081903dc1ba8a3f79ce3579641d208e69a6f598c8eb9 guix-build-1a0d8e178c7b/output/powerpc64le-linux-gnu/bitcoin-1a0d8e178c7b-powerpc64le-linux-gnu-debug.tar.gz b3757b11c614136934158acea5139e8abd0c5c9cdfda72ae44db436f21716b33 guix-build-1a0d8e178c7b/output/powerpc64le-linux-gnu/bitcoin-1a0d8e178c7b-powerpc64le-linux-gnu.tar.gz 1c21bdb17fe3436e685e88c62423e630fe2b3c41dd00025a99fd80d97817ac2f guix-build-1a0d8e178c7b/output/riscv64-linux-gnu/SHA256SUMS.part f36ae98473f086ae8f0dc66223b5ec407d57dc4d8d45ae284401520ff5c0b273 guix-build-1a0d8e178c7b/output/riscv64-linux-gnu/bitcoin-1a0d8e178c7b-riscv64-linux-gnu-debug.tar.gz 1603e4d0e869eb47a1dc2d26b67772d0016d90f7ba5e50d2009365cc02cb8169 guix-build-1a0d8e178c7b/output/riscv64-linux-gnu/bitcoin-1a0d8e178c7b-riscv64-linux-gnu.tar.gz f86ef652102f022827b70477bffa0a44008c6300cf62ca7b3595146cf2ed91ba guix-build-1a0d8e178c7b/output/x86_64-apple-darwin/SHA256SUMS.part f84d435d8e4709bf29bc7ac7ed8dc6b8af4077cef05e520b468b2896ce10876a guix-build-1a0d8e178c7b/output/x86_64-apple-darwin/bitcoin-1a0d8e178c7b-x86_64-apple-darwin-unsigned.dmg af2aab969b7ed7aeea0e02adbcc9e3b438086bf76b6bfc36146c53e05a27bd57 guix-build-1a0d8e178c7b/output/x86_64-apple-darwin/bitcoin-1a0d8e178c7b-x86_64-apple-darwin-unsigned.tar.gz 32a5109ba28ab74ff66238e6a8f8a04e455ebce382a3be287df92a227818fe72 guix-build-1a0d8e178c7b/output/x86_64-apple-darwin/bitcoin-1a0d8e178c7b-x86_64-apple-darwin.tar.gz 377462e9a96f4aba72c915dd5df5159a4301a1fa8ed0ee48faa6c71573de80c3 guix-build-1a0d8e178c7b/output/x86_64-linux-gnu/SHA256SUMS.part a3bf62e828d2350a483b2d16205014f66e8884597b0b72e178042a958c548336 guix-build-1a0d8e178c7b/output/x86_64-linux-gnu/bitcoin-1a0d8e178c7b-x86_64-linux-gnu-debug.tar.gz 66cda980188ea1941a7d66c8b03c447580af33db55abe3bbe3581823ae0534a3 guix-build-1a0d8e178c7b/output/x86_64-linux-gnu/bitcoin-1a0d8e178c7b-x86_64-linux-gnu.tar.gz 2117f0dd9baeb4d585f841592e94c088f4487bf2008b8f281d0c3ceee92ff6cc guix-build-1a0d8e178c7b/output/x86_64-w64-mingw32/SHA256SUMS.part d40d5dec3287f467c42232c05d82f7fb538cda34bd2e63ff7e1876f471c3a790 guix-build-1a0d8e178c7b/output/x86_64-w64-mingw32/bitcoin-1a0d8e178c7b-win64-debug.zip 92dcc92765fbc07b1cc8258bfa69280541e1b4553cc41fed18672c2c6931d5c0 guix-build-1a0d8e178c7b/output/x86_64-w64-mingw32/bitcoin-1a0d8e178c7b-win64-setup-unsigned.exe a6dd9b4d29f21d3a18cf64556cb03446ef17bf801eb6ac257b65d27cbd95080f guix-build-1a0d8e178c7b/output/x86_64-w64-mingw32/bitcoin-1a0d8e178c7b-win64-unsigned.tar.gz a4022e595d955198f73530473ef8e90a708746089ee2dd27de794176873330c1 guix-build-1a0d8e178c7b/output/x86_64-w64-mingw32/bitcoin-1a0d8e178c7b-win64.zip ``` ACKs for top commit: Sjors: tACK 1a0d8e178c7b9a3e94d14f94b77305802ebdc93b achow101: ACK 1a0d8e178c7b9a3e94d14f94b77305802ebdc93b Tree-SHA512: db7319259b1e1571cfab4bb3b99ae10a2f744e62757cae5059fd6f4dd6d5586eb09feb63a0c4bb07f7128b283f1dc281ed435224bc8e40da577fd4f04cde489a
2023-02-22build: don't define DLL_EXPORT for windowsCory Fields
This fixes libbitcoinkernel dll linking.
2023-02-17build: use _FORTIFY_SOURCE=3fanquake
glibc 2.33 introduced a new fortification level, _FORTIFY_SOURCE=3. Which improves the coverage of cases where _FORTIFY_SOURCE can use _chk functions. For example, using GCC 13 and glibc 2.36 (Fedora Rawhide), compiling master: ```bash nm -C src/bitcoind | grep _chk U __fprintf_chk@GLIBC_2.17 U __memcpy_chk@GLIBC_2.17 U __snprintf_chk@GLIBC_2.17 U __sprintf_chk@GLIBC_2.17 U __stack_chk_fail@GLIBC_2.17 U __stack_chk_guard@GLIBC_2.17 U __vsnprintf_chk@GLIBC_2.17 objdump -d src/bitcoind | grep "_chk@plt" | wc -l 33 ``` vs this branch: ```bash nm -C src/bitcoind | grep _chk U __fprintf_chk@GLIBC_2.17 U __memcpy_chk@GLIBC_2.17 U __memset_chk@GLIBC_2.17 U __snprintf_chk@GLIBC_2.17 U __sprintf_chk@GLIBC_2.17 U __stack_chk_fail@GLIBC_2.17 U __stack_chk_guard@GLIBC_2.17 U __vsnprintf_chk@GLIBC_2.17 objdump -d src/bitcoind | grep "_chk@plt" | wc -l 61 ``` Usage of level 3 requires LLVM/Clang 9+, or GCC 12+. Older compilers/glibc will still use _FORTIFY_SOURCE=2. For example, in the glibc we currently use for Linux release builds (2.24), FORTIFY_LEVEL is determined using the following: ```c ``` so any value > 1 will turn on _FORTIFY_SOURCE=2. https://sourceware.org/pipermail/libc-alpha/2021-February/122207.html https://developers.redhat.com/blog/2021/04/16/broadening-compiler-checks-for-buffer-overflows-in-_fortify_source
2023-02-13Merge bitcoin/bitcoin#27016: mapport: require miniupnpc API version 17 or laterfanquake
b3b673f7048cce1d1368819abb0b58b7c6699fa5 mapport: require miniupnpc API version 17 or later (fanquake) Pull request description: Version 17 is currently the latest version, see: https://github.com/miniupnp/miniupnp/blob/master/miniupnpc/apiversions.txt, and has been available since the release of 2.1. 2.1 or newer is readily available across all distros, see https://repology.org/project/miniupnpc/versions, so drop support for the older API versions. Split out of #22644. ACKs for top commit: hebasto: ACK b3b673f7048cce1d1368819abb0b58b7c6699fa5, tested on Ubuntu 20.04 w/ and w/o [`libminiupnpc-dev`](https://packages.ubuntu.com/focal/libminiupnpc-dev) package. TheCharlatan: ACK b3b673f7048cce1d1368819abb0b58b7c6699fa5 Tree-SHA512: f53b36b82462c4ea83d9b83413dca8097885d1620f7ca0a53a79d6b3d3cf37c7773828b23f4278ccfcc3b14fcb0faffa35f60191b519b04570f3d2783d0303e2
2023-02-08build: set boost cppflags with --enable-fuzzfanquake
Even though all other targets are disabled, we still need Boost CPPFLAGS (use_boost) to compile. This currently works everywhere, except on arm macOS (where the include path is pretty non-standard), because generally, the Boost include path is generic, i.e `/usr/include`.
2023-02-08doc: Document affected gcc versions for -fstack-reuse=none workaroundMarcoFalke
2023-02-01mapport: require miniupnpc API version 17 or laterfanquake
Version 17 is currently the latest version, and has been available since the release of 2.1. See: https://github.com/miniupnp/miniupnp/blob/master/miniupnpc/apiversions.txt.
2023-01-31Merge bitcoin/bitcoin#26952: build: Avoid `BOOST_NO_CXX98_FUNCTION_BASE` ↵fanquake
macro redefinition d4c59da8d6e3aac14306249aa12332fed55efebd build: Avoid `BOOST_NO_CXX98_FUNCTION_BASE` macro redefinition (Hennadii Stepanov) Pull request description: With GCC 12 and Boost 1.81 (from depends) having multiple warnings: ``` In file included from /home/hebasto/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/config.hpp:48: /home/hebasto/bitcoin/depends/x86_64-pc-linux-gnu/include/boost/config/stdlib/libstdcpp3.hpp:397:9: warning: 'BOOST_NO_CXX98_FUNCTION_BASE' macro redefined [-Wmacro-redefined] #define BOOST_NO_CXX98_FUNCTION_BASE ^ <command line>:8:9: note: previous definition is here #define BOOST_NO_CXX98_FUNCTION_BASE 1 ^ 1 warning generated. ``` This PR fixes those warnings. Defining of the `BOOST_NO_CXX98_FUNCTION_BASE` macro was introduced in https://github.com/bitcoin/bitcoin/pull/25436, but since https://github.com/boostorg/config/pull/430, it is required to check it before adding. ACKs for top commit: fanquake: ACK d4c59da8d6e3aac14306249aa12332fed55efebd - it works now. Tree-SHA512: 53b9ddcf8dad729638ed41251e30c80f2d7d1ae3ffe47466865834f1f10184fe0881abeb339b3e46c270c3eb11fb63d19ab12cc9461bf5c2be12b4763c1b1c34
2023-01-30Merge bitcoin/bitcoin#26896: build: Remove port-forwarding runtime setting ↵fanquake
options from configure d51f0fa4b7b19281efe65aacf414845c661d0a13 doc: add release notes for 26896 (fanquake) 2b248798d96f794db08b7725730b5fb4e00b9b10 build: remove --enable-upnp-default from configure (fanquake) 02f5a5e7b5fd7ba35e407d4409202a0e0fed003c build: remove --enable-natpmp-default from configure (fanquake) 25a0e8ba0b31d8bd265df0589fe49241a60d0fc2 Remove configure-time setting of DEFAULT_UPNP (fanquake) 06562e5fa771dab275a9cab4914cd64d961a52bc Remove configure-time setting of DEFAULT_NATPMP (fanquake) Pull request description: This PR removes the `--enable-upnp-default` and `--enable-natpmp-default` options from configure. It's odd to me that we maintain configure-time options for setting the default port-forwarding runtime state (but no other similar options), and I'm not sure what use-case it satisfies, that can't be achieved by multiple other means. I also doubt that we'll ever restart using these in release builds, or turning on any of this by default. I think the only scenario these options would be used is when you want to compile your own binaries (we don't use them in Guix), with port-forwarding on by default, but otherwise can't or don't want to use a `.conf` file, can't or don't want to pass command line options at runtime, and also don't want to modify the source code? ACKs for top commit: hebasto: ACK d51f0fa4b7b19281efe65aacf414845c661d0a13, rebased and comments have been addressed since my recent [review](https://github.com/bitcoin/bitcoin/pull/26896#pullrequestreview-1273910740). TheCharlatan: ACK d51f0fa4b7b19281efe65aacf414845c661d0a13 Tree-SHA512: 481decd8bddd8b03b7319591e3acf189f7b6b96c9a9a8c5bc1a3f8ec00d0b8f9b52d2f5c28a298a2ec947cfe9611cfd184e393ccb2e4e21bfce86ca7d4de60d3
2023-01-28build: Avoid `BOOST_NO_CXX98_FUNCTION_BASE` macro redefinitionHennadii Stepanov
2023-01-28Merge bitcoin/bitcoin#25465: build: remove boost library detectionfanquake
db648e8ccc699d629455a9d0555e5f2920b70393 build: remove unneeded var exporting (fanquake) 14afc71a61638535cdb1fc8f491b910a442f3072 build: remove Boost lib detection from ax_boost_base (fanquake) Pull request description: We no longer link against any Boost libraries, so don't need to detect them, or set any Boost related LDFLAGS. Removing this from the macro also allows cleaning up some code in our configure. Guix Build: ```bash e1ca070d085115767415121f3be8d8fa29547c9df633f9782b168a00753e995a guix-build-db648e8ccc69/output/aarch64-linux-gnu/SHA256SUMS.part fb4d229a71d64aef9de4a0301fad3d9ee5937025807a0e101f4cc0e20cf942b2 guix-build-db648e8ccc69/output/aarch64-linux-gnu/bitcoin-db648e8ccc69-aarch64-linux-gnu-debug.tar.gz 5241bb543617df5e64584741b402117a3b9e7015a423507fd6c529ad397b13a5 guix-build-db648e8ccc69/output/aarch64-linux-gnu/bitcoin-db648e8ccc69-aarch64-linux-gnu.tar.gz eb4ba0914e9a38b3804c062ffd47f4d49dc996ea249c5cdbf64a349f73f59555 guix-build-db648e8ccc69/output/arm-linux-gnueabihf/SHA256SUMS.part 497d1c0d03d52cc6469acf4c61f224e7567c2601b64df3fe5888374e3416d868 guix-build-db648e8ccc69/output/arm-linux-gnueabihf/bitcoin-db648e8ccc69-arm-linux-gnueabihf-debug.tar.gz 86daab76f41581b752a5a786c5be1b094c14b25cdc8f4090f323b914118884ff guix-build-db648e8ccc69/output/arm-linux-gnueabihf/bitcoin-db648e8ccc69-arm-linux-gnueabihf.tar.gz e8e2c58948a29b0286d17d7dfb89c81234ab28b98f44c2e1d70034da5ce9b8fc guix-build-db648e8ccc69/output/arm64-apple-darwin/SHA256SUMS.part d8f0e791cce42db0741afbb7ec23e251a40ec30f8e1e7fef0d1afc364ce32e9b guix-build-db648e8ccc69/output/arm64-apple-darwin/bitcoin-db648e8ccc69-arm64-apple-darwin-unsigned.dmg ee85b5b7942dc3361a3b05a395e271d54215f76fb67fc3c30144b089da374cd7 guix-build-db648e8ccc69/output/arm64-apple-darwin/bitcoin-db648e8ccc69-arm64-apple-darwin-unsigned.tar.gz 72efbe40e3d033165871a8e8b4719c73a085ffc17a3198bf1191e5d22dec8c3a guix-build-db648e8ccc69/output/arm64-apple-darwin/bitcoin-db648e8ccc69-arm64-apple-darwin.tar.gz 0d86d3a303669235b91b4edbd6a5248dff65e31af3f3830cc8bdc116a2637e64 guix-build-db648e8ccc69/output/dist-archive/bitcoin-db648e8ccc69.tar.gz 0f2371e331d97df50c65714ada6918565d8698637a78c7c97ba254dd5b3cc4b3 guix-build-db648e8ccc69/output/powerpc64-linux-gnu/SHA256SUMS.part 1447777f7adababc6fddad3349ac435744abef35cd30b673c62621718441ca01 guix-build-db648e8ccc69/output/powerpc64-linux-gnu/bitcoin-db648e8ccc69-powerpc64-linux-gnu-debug.tar.gz 3bf1e90df4d7fab18159ffd039dd1fa7e5251b0bdca020afd851fb7cd189cfd2 guix-build-db648e8ccc69/output/powerpc64-linux-gnu/bitcoin-db648e8ccc69-powerpc64-linux-gnu.tar.gz 67ebc32843eb83a08468496c24750ab56bfdb259eb9004732be13427da5dbbc1 guix-build-db648e8ccc69/output/powerpc64le-linux-gnu/SHA256SUMS.part 0da5fad78ab854f62db57a2f44b6ffecbf2b3e9de34b81681c66e28100a209ae guix-build-db648e8ccc69/output/powerpc64le-linux-gnu/bitcoin-db648e8ccc69-powerpc64le-linux-gnu-debug.tar.gz e96a41287040d13da4738dde43dd7283356b8af10b535b15b212da702aa7f0af guix-build-db648e8ccc69/output/powerpc64le-linux-gnu/bitcoin-db648e8ccc69-powerpc64le-linux-gnu.tar.gz b54a48e03e76672008445a174078e92a149dd9e4ce0c896b013162a6221b3abe guix-build-db648e8ccc69/output/riscv64-linux-gnu/SHA256SUMS.part b7fea8fe4c1baecff28c45fa514ec34338a7f0e04a7f58b8cb5493932242c221 guix-build-db648e8ccc69/output/riscv64-linux-gnu/bitcoin-db648e8ccc69-riscv64-linux-gnu-debug.tar.gz 775d406d4a2b1fa1750ae1924cf2f67de7d89dbf0044dc7ab08d3908812fff2e guix-build-db648e8ccc69/output/riscv64-linux-gnu/bitcoin-db648e8ccc69-riscv64-linux-gnu.tar.gz a1dcd8c95517e8b98d8584eed00b561582b74a68a1b3d06efd86d5322186b21e guix-build-db648e8ccc69/output/x86_64-apple-darwin/SHA256SUMS.part 952ea47428b9bcadb809fb02a56347a9f8b29f09eba4edf67a157f7cc4ec9a57 guix-build-db648e8ccc69/output/x86_64-apple-darwin/bitcoin-db648e8ccc69-x86_64-apple-darwin-unsigned.dmg adb226a702e24962d263edf2e95100508d6728b4dd93a5d6098c37a5721c2bcc guix-build-db648e8ccc69/output/x86_64-apple-darwin/bitcoin-db648e8ccc69-x86_64-apple-darwin-unsigned.tar.gz fd389c11cce919c53e4aeccb0e5d1ee1d12b1d9f6987a3317c4b254c3ca03387 guix-build-db648e8ccc69/output/x86_64-apple-darwin/bitcoin-db648e8ccc69-x86_64-apple-darwin.tar.gz c76314a9194733790533bbfefa7e6a234307aaa252989c2b3fd19191ae286c57 guix-build-db648e8ccc69/output/x86_64-linux-gnu/SHA256SUMS.part 5e2b023b62b77709f30d545705a61826e96ddcfea4c24cde83fe2b98010262e1 guix-build-db648e8ccc69/output/x86_64-linux-gnu/bitcoin-db648e8ccc69-x86_64-linux-gnu-debug.tar.gz a3e9dcb58aa8554cdeb211461976087b724cd81157517a9f1e00b1a73d74ab9b guix-build-db648e8ccc69/output/x86_64-linux-gnu/bitcoin-db648e8ccc69-x86_64-linux-gnu.tar.gz d6733313b8f262b214c28d44d8ee644a2435cb4da90555b30e20dbf3807b6660 guix-build-db648e8ccc69/output/x86_64-w64-mingw32/SHA256SUMS.part bc4b269f5b89200537d7175492ae31ab87eb4a1da86c1ade968a7bbdc472c5bf guix-build-db648e8ccc69/output/x86_64-w64-mingw32/bitcoin-db648e8ccc69-win64-debug.zip ccd83eb4c9ab0df288935ab655cd71b00525b57f82c8b9d7a4d1a08325d26aac guix-build-db648e8ccc69/output/x86_64-w64-mingw32/bitcoin-db648e8ccc69-win64-setup-unsigned.exe 91ee20dfbaa923066379ea22f3e3a85a52f5b323877b44c19ccec6300d25cd41 guix-build-db648e8ccc69/output/x86_64-w64-mingw32/bitcoin-db648e8ccc69-win64-unsigned.tar.gz 595baf193e0955436c4f2e5047e6842434bb4273b03c9d74e5c90972dde812f4 guix-build-db648e8ccc69/output/x86_64-w64-mingw32/bitcoin-db648e8ccc69-win64.zip ``` ACKs for top commit: TheCharlatan: ACK db648e8ccc699d629455a9d0555e5f2920b70393 Tree-SHA512: 940a148cf2db40484084cacf40e8ba4425fcbf5d6856a57be5af6f9f66d8adc0eb601c911513902bee120e7ddf97c7802e2d21b448beb4226f737164e5656b8a
2023-01-28build: remove --enable-upnp-default from configurefanquake
2023-01-28build: remove --enable-natpmp-default from configurefanquake
2023-01-23build: fix usage of -Wloop-analysisfanquake
Looks like I introduced this in 5ced92528362d8a9ea3c15a9752f3dc184108060.
2023-01-18Bump minimum python version to 3.7MarcoFalke
2023-01-13Merge bitcoin/bitcoin#26824: build: fix configuring with only bitcoin-utilfanquake
0f883df7a5430d6b229a2f190fe7daab24802ebf build: fix configuring with only bitcoin-util (fanquake) Pull request description: Fixes the issue presented in #25037 in a single (easily backportable) diff, with no additional refactoring/changes. Can be tested with: ```bash ./configure \ --disable-tests \ --disable-bench \ --without-libs \ --without-daemon \ --without-gui \ --disable-fuzz-binary \ --without-utils \ --enable-util-util ``` ACKs for top commit: TheCharlatan: tACK 0f883df7a5430d6b229a2f190fe7daab24802ebf hebasto: ACK 0f883df7a5430d6b229a2f190fe7daab24802ebf, tested on Ubuntu 22.04. Tree-SHA512: 3682712405c360852c4edd90c171e21302154bf8789252c64083974a5c873cf04d97e8721c7916d5b2dafa6acd2b8dc32deecf550e90e03bcbbabbbbf75ce959
2023-01-13build: remove unneeded var exportingfanquake
2023-01-13Merge bitcoin/bitcoin#26691: Update secp256k1 subtree to libsecp256k1 ↵fanquake
version 0.2.0 202291722300b86f36e97de7960d40a32544c2d1 Add secp256k1_selftest call (Pieter Wuille) 3bfca788b0dae879bfc745cc52c2cb6edc49fd70 Remove explicit enabling of default modules (Pieter Wuille) 4462cb04986d77eddcfc6e8f75e04dc278a8147a Adapt to libsecp256k1 API changes (Pieter Wuille) 9d47e7b71b2805430e8c7b43816efd225a6ccd8c Squashed 'src/secp256k1/' changes from 44c2452fd3..21ffe4b22a (Pieter Wuille) Pull request description: Now that libsecp256k1 has a release (https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2022-December/021271.html), update the subtree to match it. The changes themselves are not very impactful for Bitcoin Core, but include: * It's no longer needed to specify whether contexts are for signing or verification or both (all contexts support everything), so make use of that in this PR. * Verification operations can use the static context now, removing the need for some infrastructure in pubkey.cpp to make sure a context exists. * Most modules are now enabled by default, so we can drop explicit enabling for them. * CI improvements (in particular, MSVC and more recent MacOS) * Introduction of an internal int128 type, which has no effect for GCC/Clang builds, but enables 128-bit multiplication in MSVC, giving a ~20% speedup there (but still slower than GCC/Clang). * Release process changes (process documentation, changelog, ...). ACKs for top commit: Sjors: ACK 202291722300b86f36e97de7960d40a32544c2d1, but 4462cb04986d77eddcfc6e8f75e04dc278a8147a could use more eyes on it. achow101: ACK 202291722300b86f36e97de7960d40a32544c2d1 jonasnick: utACK 202291722300b86f36e97de7960d40a32544c2d1 Tree-SHA512: 8a9fe28852abe74abd6f96fef16a94d5a427b1d99bff4caab1699014d24698aab9b966a5364a46ed1001c07a7c1d825154ed4e6557c7decce952b77330a8616b
2023-01-06configure: Detect compatibility of Boost.Process rather than hardcode ↵Luke Dashjr
non-Windows
2023-01-05build: fix configuring with only bitcoin-utilfanquake
Fixes the issue presented in #25037 in a single (easily backportable) diff, with no additional refactoring/changes. Can be tested with: ```bash ./configure \ --disable-tests \ --disable-bench \ --without-libs \ --without-daemon \ --without-gui \ --disable-fuzz-binary \ --without-utils \ --enable-util-util ```
2023-01-05build: remove already tested headers from AC_CHECK_HEADERSfanquake
These headers are already included in a default set which are checked early during configure. We already use at least sys/types.h and unistd.h unconditionally in configure.
2022-12-24doc: Update license year range to 2023Suriyaa Sundararuban
2022-12-13Remove explicit enabling of default modulesPieter Wuille
2022-11-03build: Drop unneeded linking of `contrib/devtools/` scriptsHennadii Stepanov
Th build system targets run those scripts from the top source directory.
2022-10-31Merge bitcoin/bitcoin#24051: Bugfix: configure: bitcoin-{cli,tx,util} don't ↵fanquake
need UPnP, NAT-PMP, or ZMQ 98868633d1d5cd2591b9613545bd2ce2e81af212 Bugfix: configure: bitcoin-{cli,tx,util} don't need UPnP, NAT-PMP, or ZMQ (Luke Dashjr) Pull request description: As with #23345, these other tools likewise don't use various deps. ACKs for top commit: achow101: ACK 98868633d1d5cd2591b9613545bd2ce2e81af212 Tree-SHA512: 4be056b8e0c9f69834229aa257187457de1bc34214d320b770834e21ecc1f0ca7aa7b9689fba525928947bfabbb461528795f709014fb9618b82f088fe64f271
2022-10-17Merge bitcoin/bitcoin#25985: Revert "build: Use Homebrew's sqlite package if ↵Andrew Chow
it is available" d216d714aae36e6f1c95f82aef81a0be74dee2f3 Revert "build: Use Homebrew's sqlite package if it is available" (fanquake) Pull request description: This reverts ee7b84e63cbeadd5e680d69ff0548275581e9241 from #20527. That change was made without any rationale, maybe other than, a brew installed version might be newer, and that's "better". However when building from source on macOS, it just results in drastically worse performance, and issues / confusion like #25724. The difference in performance can be observed using the example from https://github.com/bitcoin/bitcoin/issues/25724#issuecomment-1213554922, but minified i.e: ```bash time src/bitcoin-cli createwallet speedy true time src/bitcoin-cli importdescriptors '[ {"desc":"raw(00145846369f3d6ba366d6f5a903fb5cf4dca3763c0e)#k9wh6v62","timestamp":"now"}, {"desc":"raw(001420800aabf13f3a4c4ce3ce4c66cecf1d17f21a6e)#6m0hlfh4","timestamp":"now"}, {"desc":"raw(0014c6bf9715e06d73ebf9b3b02d5cc48d24d8bbabc1)#wyavh36r","timestamp":"now"}, {"desc":"raw(00141ba7807b3f46af113beaea5c698428ce7138cd8a)#jctdsups","timestamp":"now"}, {"desc":"raw(00140c1bd27f10fff01b36ddf3c1febaa1acff19b080)#9s6nc3pk","timestamp":"now"}, {"desc":"raw(00141226e31987e4bc2e63c0ee12908f675e40464b20)#9pp7qm39","timestamp":"now"}, {"desc":"raw(0014f73f149f7503960a5e849c6ee7a8a8c336f631cb)#qtkxv9fc","timestamp":"now"}, {"desc":"raw(0014c8ccb4d81ffc769fc5fdd8d7eed69b0e0cae5749)#hn39qayv","timestamp":"now"}, {"desc":"raw(001498565aead2d67a22a6021d55210f2a917fc22169)#6ar3vwsx","timestamp":"now"}, {"desc":"raw(001403013248ac0cd9eabe176cad162cda2a19f771e1)#4m47mukd","timestamp":"now"} ]' ``` Running master, when building from souce and using brew installed sqlite, this takes ~3.4s. With this PR, the same operation takes ~0.3s. Resolves the "build from source" portion of #25724. Building from depends is still not ideal, however I have some other changes that might help improve things in that case. Related performance issue reports: * https://github.com/bitcoindevkit/bdk/issues/749 * https://bitcoin.stackexchange.com/questions/113898/bitcoin-v23-is-10-times-slower-than-v22-on-macos-for-basic-regtest-tests * https://github.com/bitcoin/bitcoin/issues/25724 * https://github.com/bitcoin/bitcoin/pull/25985#issuecomment-1245942400 ACKs for top commit: achow101: ACK d216d714aae36e6f1c95f82aef81a0be74dee2f3 jarolrod: ACK d216d714aae36e6f1c95f82aef81a0be74dee2f3 hebasto: ACK d216d714aae36e6f1c95f82aef81a0be74dee2f3, I have reviewed the code and it looks OK, I agree it can be merged. No conflicts with our build [docs](https://github.com/bitcoin/bitcoin/blob/d216d714aae36e6f1c95f82aef81a0be74dee2f3/doc/build-osx.md#descriptor-wallet-support). Tree-SHA512: 1bb4b44385b11fa9fe66edd7449278f9e47a6cc679b7111f9adf17db94c34e29c9cceafc917454e134420db40b24b56da29226af6f43e6dbeff822b79b77ed60
2022-09-26build: split ARM crc & crypto extension checksfanquake
We currently perform the same check twice, to put the same set of flags in two different variables. Split the checks so we test for crc and crypto extensions independently. If we don't want to split, we should just delete the second AX_CHECK_COMPILE_FLAG check, and set ARM_CRC_CXXFLAGS & ARM_CRC_CXXFLAGS at the same time.
2022-09-23build: remove stdlib.h from header checksfanquake
We already use a mix of <cstdlib> and stdlib.h unconditionally throughout the codebase. Us checking this header also duplicates work already done by autotools. Currently stdlib.h is checked for 3 times during a ./configure run, after this change, at least it's only twice.
2022-09-21build: remove stdio.h from header checksfanquake
We already use a mix of <cstdio> and stdio.h unconditionally throughout the codebase. Us checking this header also duplicates work already done by autotools. Currently stdio.h is checked for 3 times during a ./configure run, after this change, at least it's only twice.
2022-09-20build: remove strings.h from header checksfanquake
We don't include strings.h anywhere. This is also already checked for by autoconf, so us checking for it just means a 3rd existence check during ./configure.
2022-09-19build: Bump version to 24.99fanquake
On the master branch, bump to 24.99 (pre-25.0).
2022-09-12build: quiet warnings in system headers installed from homebrewCory Fields
2022-09-04build: fix configuring with --without-experimental-kernel-libfanquake
Fixes #25994.
2022-09-02Revert "build: Use Homebrew's sqlite package if it is available"fanquake
This reverts ee7b84e63cbeadd5e680d69ff0548275581e9241 from #20527. This change was made without any rationale, maybe other than a brew installed version might be newer, and that's "better". However when building from source on macOS, it just results in drastically worse perofrmance, and results in issues / confusions like #25724. Resolves the "build from source" portion of #25724. Building from depends is still not ideal, however I have some other changes that might help improve things in that case. The difference in performance can be observed using the example from https://github.com/bitcoin/bitcoin/issues/25724#issuecomment-1213554922, but minified to only 10 descriptors. i.e: ```bash time src/bitcoin-cli createwallet speedy true time src/bitcoin-cli importdescriptors '[ {"desc":"raw(00145846369f3d6ba366d6f5a903fb5cf4dca3763c0e)#k9wh6v62","timestamp":"now"}, {"desc":"raw(001420800aabf13f3a4c4ce3ce4c66cecf1d17f21a6e)#6m0hlfh4","timestamp":"now"}, {"desc":"raw(0014c6bf9715e06d73ebf9b3b02d5cc48d24d8bbabc1)#wyavh36r","timestamp":"now"}, {"desc":"raw(00141ba7807b3f46af113beaea5c698428ce7138cd8a)#jctdsups","timestamp":"now"}, {"desc":"raw(00140c1bd27f10fff01b36ddf3c1febaa1acff19b080)#9s6nc3pk","timestamp":"now"}, {"desc":"raw(00141226e31987e4bc2e63c0ee12908f675e40464b20)#9pp7qm39","timestamp":"now"}, {"desc":"raw(0014f73f149f7503960a5e849c6ee7a8a8c336f631cb)#qtkxv9fc","timestamp":"now"}, {"desc":"raw(0014c8ccb4d81ffc769fc5fdd8d7eed69b0e0cae5749)#hn39qayv","timestamp":"now"}, {"desc":"raw(001498565aead2d67a22a6021d55210f2a917fc22169)#6ar3vwsx","timestamp":"now"}, {"desc":"raw(001403013248ac0cd9eabe176cad162cda2a19f771e1)#4m47mukd","timestamp":"now"} ]' ``` Running master, when building from souce and using brew installed sqlite, this takes ~3.4s. With this PR, the same operation takes ~0.3s.
2022-08-19Merge bitcoin/bitcoin#25852: build: reorder CXXFLAGS in intrinsic checksMacroFake
4349051dd47416b8daad98f5fb87dea9b8e370d0 build: reorder cxxflags in intrinsic checks (fanquake) Pull request description: Let the user have the final say in regards to using intrinsics. As outlined in https://github.com/bitcoin/bitcoin/issues/13758, on master: ```bash ./autogen.sh ./configure CXXFLAGS="-mno-avx -mno-avx2" … checking whether C++ compiler accepts -mavx -mavx2... yes checking for AVX2 intrinsics... yes … make … crypto/sha256_avx2.cpp: In function ‘__m256i sha256d64_avx2::{anonymous}::K(uint32_t)’: crypto/sha256_avx2.cpp:15:28: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi] 15 | __m256i inline K(uint32_t x) { return _mm256_set1_epi32(x); } | ^ crypto/sha256_avx2.cpp: In function ‘__m256i sha256d64_avx2::{anonymous}::Inc(__m256i&, __m256i)’: crypto/sha256_avx2.cpp:21:16: note: the ABI for passing parameters with 32-byte alignment has changed in GCC 4.6 21 | __m256i inline Inc(__m256i& x, __m256i y) { x = Add(x, y); return x; } | ^~~ In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:43, from crypto/sha256_avx2.cpp:8: /usr/lib/gcc/x86_64-linux-gnu/11/include/avxintrin.h: In function ‘__m256i sha256d64_avx2::{anonymous}::K(uint32_t)’: /usr/lib/gcc/x86_64-linux-gnu/11/include/avxintrin.h:1326:1: error: inlining failed in call to ‘always_inline’ ‘__m256i _mm256_set1_epi32(int)’: target specific option mismatch 1326 | _mm256_set1_epi32 (int __A) | ^~~~~~~~~~~~~~~~~ crypto/sha256_avx2.cpp:15:56: note: called from here 15 | __m256i inline K(uint32_t x) { return _mm256_set1_epi32(x); } | ~~~~~~~~~~~~~~~~~^~~ make[2]: *** [Makefile:13455: crypto/libbitcoin_crypto_avx2_la-sha256_avx2.lo] Error 1 ``` with this branch: ```bash ./autogen.sh ./configure CXXFLAGS="-mno-avx -mno-avx2" … checking whether C++ compiler accepts -mavx -mavx2... yes checking for AVX2 intrinsics... no … make check ``` Fixes: #13758 Alternative to #13789, which should work for all compilers. Guix Build (x86_64): ```bash 1fe67be2fe83c79d3b01c1cd657bed09e573226bf283e335d052c65c08a8e085 guix-build-4349051dd474/output/aarch64-linux-gnu/SHA256SUMS.part 92904614f8792595c30c38c8aadfcd64ded658d58146dbae529c7b66e975d72e guix-build-4349051dd474/output/aarch64-linux-gnu/bitcoin-4349051dd474-aarch64-linux-gnu-debug.tar.gz 0e6c1d12caf87d9359d42eea4b652f10e69ab15a18bd572214f22046b2a019f1 guix-build-4349051dd474/output/aarch64-linux-gnu/bitcoin-4349051dd474-aarch64-linux-gnu.tar.gz e1b7d9b65cf0233c13affd570a0b3247c806553d968188a79f87ce9aab4fee36 guix-build-4349051dd474/output/arm-linux-gnueabihf/SHA256SUMS.part a7e0e53c2b6a0d0dc47a0740e501b280f82640e43d59e43d24dc236e9e9d3b4e guix-build-4349051dd474/output/arm-linux-gnueabihf/bitcoin-4349051dd474-arm-linux-gnueabihf-debug.tar.gz 1969980159033d1c9f73e199acb9f93ddbbbd1565ac717ac5a29b907b46aec9c guix-build-4349051dd474/output/arm-linux-gnueabihf/bitcoin-4349051dd474-arm-linux-gnueabihf.tar.gz a1d679c8a861dc7b0422505e172745157680392227724bdbb6efb83ab564dd61 guix-build-4349051dd474/output/arm64-apple-darwin/SHA256SUMS.part 37441242a3b97e51087a1b5df953f0a3ecb57a9523713bae152ac8005427118a guix-build-4349051dd474/output/arm64-apple-darwin/bitcoin-4349051dd474-arm64-apple-darwin-unsigned.dmg e86757e6f4b92080ed6504c245787d801a8f3ade07e1ed4cb0d1fa7a0088430e guix-build-4349051dd474/output/arm64-apple-darwin/bitcoin-4349051dd474-arm64-apple-darwin-unsigned.tar.gz ba2405f0b4835a3cb82bba4b281f6ffef97eb402430b47588c7ac986a29c5ae3 guix-build-4349051dd474/output/arm64-apple-darwin/bitcoin-4349051dd474-arm64-apple-darwin.tar.gz 7a4675924f23b9a57c93077d4a00a3d87a3929269301f70709079ee2491d932a guix-build-4349051dd474/output/dist-archive/bitcoin-4349051dd474.tar.gz 4f45b1cd6a819fd1f0fe81ef2c3f3bbb6614c9cbeb2115bfd15ef0f8fb50da25 guix-build-4349051dd474/output/powerpc64-linux-gnu/SHA256SUMS.part 262db5ffba4d952e0b3eb2a4f97a795058d58dbd280c48e7a389809c699c7465 guix-build-4349051dd474/output/powerpc64-linux-gnu/bitcoin-4349051dd474-powerpc64-linux-gnu-debug.tar.gz 0a230d352da964fb8bd101aa690a49604ecbfaf1756c8da9aad88635598b0102 guix-build-4349051dd474/output/powerpc64-linux-gnu/bitcoin-4349051dd474-powerpc64-linux-gnu.tar.gz f155e0039b78bf772db8047b5d9eb4445e30b210f1bfa1d184e5587a06cdc583 guix-build-4349051dd474/output/powerpc64le-linux-gnu/SHA256SUMS.part 6c32c429f5555cd5bab34a201352a3dae335f4bc23607996e170691c403db68f guix-build-4349051dd474/output/powerpc64le-linux-gnu/bitcoin-4349051dd474-powerpc64le-linux-gnu-debug.tar.gz 0c0d4d37eb75a04a702e1c7116fa89fd5d03439a0c08fdbcbc2d5349e071037e guix-build-4349051dd474/output/powerpc64le-linux-gnu/bitcoin-4349051dd474-powerpc64le-linux-gnu.tar.gz bcc72b010ef0d53811d5b21e8b65a45ec861b0dc4658286c85b4eea3c5ef3264 guix-build-4349051dd474/output/riscv64-linux-gnu/SHA256SUMS.part c9740aa9daac4a57361b563525bd273851bc607544cfa196260f715794ebbc4b guix-build-4349051dd474/output/riscv64-linux-gnu/bitcoin-4349051dd474-riscv64-linux-gnu-debug.tar.gz 049b1d9ef133fd5901bdbe1e77c5f11c43da4f3f8fca133c0be1dbfcddb6e900 guix-build-4349051dd474/output/riscv64-linux-gnu/bitcoin-4349051dd474-riscv64-linux-gnu.tar.gz 6d2ff63af68d5c6dd5709b3543e0ed59d2b6cd9c3b4f20fa873edb5a643ad929 guix-build-4349051dd474/output/x86_64-apple-darwin/SHA256SUMS.part 6dc850bed29860fc23b183ddf9bcf17c6e6ad3917a220c13d617a3bcd16b5788 guix-build-4349051dd474/output/x86_64-apple-darwin/bitcoin-4349051dd474-x86_64-apple-darwin-unsigned.dmg 2ff9849c2cf8504e1bbedc5bdc2bb1a11f439df84a6c2cfcbf195025c11289e8 guix-build-4349051dd474/output/x86_64-apple-darwin/bitcoin-4349051dd474-x86_64-apple-darwin-unsigned.tar.gz 4d284659d6df5d3ead86d313fb5794552a83102f5c30fa433f32c87a2be25679 guix-build-4349051dd474/output/x86_64-apple-darwin/bitcoin-4349051dd474-x86_64-apple-darwin.tar.gz 029b5dacfe77e865263fe3f9f0c12d65bf0fcfed152812e50cabd085a4a12b14 guix-build-4349051dd474/output/x86_64-linux-gnu/SHA256SUMS.part 3f8295482e9da6e5a3780a98ef9e58b0924f59f9e2ab76bc70e1dc9c8691a764 guix-build-4349051dd474/output/x86_64-linux-gnu/bitcoin-4349051dd474-x86_64-linux-gnu-debug.tar.gz 9dd5bb321c4bae36cfd8b6b23dd3df9462917c272bd36a7f562131db3a067d35 guix-build-4349051dd474/output/x86_64-linux-gnu/bitcoin-4349051dd474-x86_64-linux-gnu.tar.gz 632ad4f8d7c10f4eb8422e0ccb1ecf35c03260fe1eb91224b0ab3d18765960b7 guix-build-4349051dd474/output/x86_64-w64-mingw32/SHA256SUMS.part fb6609c3f74b676a67d2334c150094a1be5f5d6a41ae40edcb26b073ce3ad841 guix-build-4349051dd474/output/x86_64-w64-mingw32/bitcoin-4349051dd474-win64-debug.zip 706074270e189a6e9bd32e1b522fc0c5c9f3c076839db9cc983d171bb2f2dd4a guix-build-4349051dd474/output/x86_64-w64-mingw32/bitcoin-4349051dd474-win64-setup-unsigned.exe 78ce8c104eb6496f76633c5ee3988965b8b687583c51d97957cf936e34e8c6ef guix-build-4349051dd474/output/x86_64-w64-mingw32/bitcoin-4349051dd474-win64-unsigned.tar.gz 0db748e76cb4d414f81f8b538e4b0a79ab1281fb16e480fcada9935e2bfc709d guix-build-4349051dd474/output/x86_64-w64-mingw32/bitcoin-4349051dd474-win64.zip ``` Guix Build (arm64): ```bash e1b7d9b65cf0233c13affd570a0b3247c806553d968188a79f87ce9aab4fee36 guix-build-4349051dd474/output/arm-linux-gnueabihf/SHA256SUMS.part a7e0e53c2b6a0d0dc47a0740e501b280f82640e43d59e43d24dc236e9e9d3b4e guix-build-4349051dd474/output/arm-linux-gnueabihf/bitcoin-4349051dd474-arm-linux-gnueabihf-debug.tar.gz 1969980159033d1c9f73e199acb9f93ddbbbd1565ac717ac5a29b907b46aec9c guix-build-4349051dd474/output/arm-linux-gnueabihf/bitcoin-4349051dd474-arm-linux-gnueabihf.tar.gz a1d679c8a861dc7b0422505e172745157680392227724bdbb6efb83ab564dd61 guix-build-4349051dd474/output/arm64-apple-darwin/SHA256SUMS.part 37441242a3b97e51087a1b5df953f0a3ecb57a9523713bae152ac8005427118a guix-build-4349051dd474/output/arm64-apple-darwin/bitcoin-4349051dd474-arm64-apple-darwin-unsigned.dmg e86757e6f4b92080ed6504c245787d801a8f3ade07e1ed4cb0d1fa7a0088430e guix-build-4349051dd474/output/arm64-apple-darwin/bitcoin-4349051dd474-arm64-apple-darwin-unsigned.tar.gz ba2405f0b4835a3cb82bba4b281f6ffef97eb402430b47588c7ac986a29c5ae3 guix-build-4349051dd474/output/arm64-apple-darwin/bitcoin-4349051dd474-arm64-apple-darwin.tar.gz 7a4675924f23b9a57c93077d4a00a3d87a3929269301f70709079ee2491d932a guix-build-4349051dd474/output/dist-archive/bitcoin-4349051dd474.tar.gz 4f45b1cd6a819fd1f0fe81ef2c3f3bbb6614c9cbeb2115bfd15ef0f8fb50da25 guix-build-4349051dd474/output/powerpc64-linux-gnu/SHA256SUMS.part 262db5ffba4d952e0b3eb2a4f97a795058d58dbd280c48e7a389809c699c7465 guix-build-4349051dd474/output/powerpc64-linux-gnu/bitcoin-4349051dd474-powerpc64-linux-gnu-debug.tar.gz 0a230d352da964fb8bd101aa690a49604ecbfaf1756c8da9aad88635598b0102 guix-build-4349051dd474/output/powerpc64-linux-gnu/bitcoin-4349051dd474-powerpc64-linux-gnu.tar.gz f155e0039b78bf772db8047b5d9eb4445e30b210f1bfa1d184e5587a06cdc583 guix-build-4349051dd474/output/powerpc64le-linux-gnu/SHA256SUMS.part 6c32c429f5555cd5bab34a201352a3dae335f4bc23607996e170691c403db68f guix-build-4349051dd474/output/powerpc64le-linux-gnu/bitcoin-4349051dd474-powerpc64le-linux-gnu-debug.tar.gz 0c0d4d37eb75a04a702e1c7116fa89fd5d03439a0c08fdbcbc2d5349e071037e guix-build-4349051dd474/output/powerpc64le-linux-gnu/bitcoin-4349051dd474-powerpc64le-linux-gnu.tar.gz bcc72b010ef0d53811d5b21e8b65a45ec861b0dc4658286c85b4eea3c5ef3264 guix-build-4349051dd474/output/riscv64-linux-gnu/SHA256SUMS.part c9740aa9daac4a57361b563525bd273851bc607544cfa196260f715794ebbc4b guix-build-4349051dd474/output/riscv64-linux-gnu/bitcoin-4349051dd474-riscv64-linux-gnu-debug.tar.gz 049b1d9ef133fd5901bdbe1e77c5f11c43da4f3f8fca133c0be1dbfcddb6e900 guix-build-4349051dd474/output/riscv64-linux-gnu/bitcoin-4349051dd474-riscv64-linux-gnu.tar.gz 6d2ff63af68d5c6dd5709b3543e0ed59d2b6cd9c3b4f20fa873edb5a643ad929 guix-build-4349051dd474/output/x86_64-apple-darwin/SHA256SUMS.part 6dc850bed29860fc23b183ddf9bcf17c6e6ad3917a220c13d617a3bcd16b5788 guix-build-4349051dd474/output/x86_64-apple-darwin/bitcoin-4349051dd474-x86_64-apple-darwin-unsigned.dmg 2ff9849c2cf8504e1bbedc5bdc2bb1a11f439df84a6c2cfcbf195025c11289e8 guix-build-4349051dd474/output/x86_64-apple-darwin/bitcoin-4349051dd474-x86_64-apple-darwin-unsigned.tar.gz 4d284659d6df5d3ead86d313fb5794552a83102f5c30fa433f32c87a2be25679 guix-build-4349051dd474/output/x86_64-apple-darwin/bitcoin-4349051dd474-x86_64-apple-darwin.tar.gz 029b5dacfe77e865263fe3f9f0c12d65bf0fcfed152812e50cabd085a4a12b14 guix-build-4349051dd474/output/x86_64-linux-gnu/SHA256SUMS.part 3f8295482e9da6e5a3780a98ef9e58b0924f59f9e2ab76bc70e1dc9c8691a764 guix-build-4349051dd474/output/x86_64-linux-gnu/bitcoin-4349051dd474-x86_64-linux-gnu-debug.tar.gz 9dd5bb321c4bae36cfd8b6b23dd3df9462917c272bd36a7f562131db3a067d35 guix-build-4349051dd474/output/x86_64-linux-gnu/bitcoin-4349051dd474-x86_64-linux-gnu.tar.gz 632ad4f8d7c10f4eb8422e0ccb1ecf35c03260fe1eb91224b0ab3d18765960b7 guix-build-4349051dd474/output/x86_64-w64-mingw32/SHA256SUMS.part fb6609c3f74b676a67d2334c150094a1be5f5d6a41ae40edcb26b073ce3ad841 guix-build-4349051dd474/output/x86_64-w64-mingw32/bitcoin-4349051dd474-win64-debug.zip 706074270e189a6e9bd32e1b522fc0c5c9f3c076839db9cc983d171bb2f2dd4a guix-build-4349051dd474/output/x86_64-w64-mingw32/bitcoin-4349051dd474-win64-setup-unsigned.exe 78ce8c104eb6496f76633c5ee3988965b8b687583c51d97957cf936e34e8c6ef guix-build-4349051dd474/output/x86_64-w64-mingw32/bitcoin-4349051dd474-win64-unsigned.tar.gz 0db748e76cb4d414f81f8b538e4b0a79ab1281fb16e480fcada9935e2bfc709d guix-build-4349051dd474/output/x86_64-w64-mingw32/bitcoin-4349051dd474-win64.zip ``` Top commit has no ACKs. Tree-SHA512: 0970b0dd07f6e237f7e2fed770649cc82ef4c22c4d9603a51818c353928833546fc76a3de5054979428d7309c073ce3120dd4bfc621245ff4319e8ac9e321472
2022-08-15build: reorder cxxflags in intrinsic checksfanquake
Let the user have the final say in regards to using intrinsics. Fixes: #13758 Alternaitve to #13789.
2022-08-09build: package test_bitcoin in Windows installerfanquake
2022-08-04Merge bitcoin/bitcoin#25770: build: Fix help string for ↵fanquake
`--enable-external-signer` configure option 8df063e53712b69a346a83c599ca9cb83905b70b build: Fix help string for `--enable-external-signer` configure option (Hennadii Stepanov) Pull request description: This PR is a follow up of bitcoin/bitcoin#24065 and fixes the help string according to the actual default value https://github.com/bitcoin/bitcoin/blob/816ca01650f4cc66a61ac2f9b0f8b74cd9cd0cf8/configure.ac#L324-L327 ACKs for top commit: kristapsk: cr utACK 8df063e53712b69a346a83c599ca9cb83905b70b jarolrod: ACK 8df063e53712b69a346a83c599ca9cb83905b70b Tree-SHA512: ad3f457a53c9238ddd8ded9efd1224e564e6cb9da8b7ff7733a11e32a7daad5c0f6c6223509218f44944a874470cb0d2447897662eaf4e78c763b30785717c50
2022-08-02build: Fix help string for `--enable-external-signer` configure optionHennadii Stepanov
2022-07-27build: Do not export `PKG_CONFIG_{PATH|LIBDIR}` variablesHennadii Stepanov
2022-07-19Merge bitcoin/bitcoin#25630: Add symlinks for hardcoded Makefiles in out of ↵fanquake
tree builds 9aeeb75cf91fdfb03206284e900887211dc76ed3 Add symlinks for hardcoded Makefiles in out of tree builds (Pablo Greco) Pull request description: When doing out of tree builds, some hardwired Makefiles are not symlinked, which makes it a bit more uncomfortable to run some instances of make. There's no "real" functionality loss without this patch because the symlinked files are just for quick access to thinks in the main Makefile ACKs for top commit: hebasto: ACK 9aeeb75cf91fdfb03206284e900887211dc76ed3, tested on Ubuntu 22.04. Tree-SHA512: 656f73c387584cee34f66b3f95993267a40b915762949c7a84b73ba2ea8d37b7b5850733377110e0110ed2f7da64e6a5f9b303812080fe7815154dbb40c8a44c
2022-07-18build: Fix autoconf variable names for tools found by `AC_PATH_TOOL`Hennadii Stepanov
See the `AC_PATH_TOOL` macro implementation.
2022-07-18build: Check for std::atomic::exchange rather than std::atomic_exchangeAndrew Chow
Our usage of std::atomic is with it's own exchange function, not std::atomic_exchange. So we should be looking specifically for that function. Additionally, -pthread and -lpthread have an effect on whether -latomic will be needed, so the atomics check needs to use these flags as well. This will make the flags in use better match what is actually used when linking. This removes the need for -latomic for riscv builds, which resolves a guix cross architecture reproducibility issue.
2022-07-18Add symlinks for hardcoded Makefiles in out of tree buildsPablo Greco
2022-06-23build: use BOOST_NO_CXX98_FUNCTION_BASE to suppress warningsfanquake
Boost conatiner_hash (included via functional -> multi_index) uses std::unary_function, which was deprecated in C++11, and "removed" in C++17. It's use causes wanrings with newer compilers, i.e GCC 12.1. ```bash /bitcoin/depends/aarch64-unknown-linux-gnu/include/boost/container_hash/hash.hpp:131:33: warning: 'template<class _Arg, class _Result> struct std::unary_function' is deprecated [-Wdeprecated-declarations] 131 | struct hash_base : std::unary_function<T, std::size_t> {}; | ^~~~~~~~~~~~~~ In file included from /usr/include/c++/12/bits/unique_ptr.h:37, from /usr/include/c++/12/memory:76, from ./init.h:10, from init.cpp:10: /usr/include/c++/12/bits/stl_function.h:117:12: note: declared here 117 | struct unary_function ``` Use the MACRO outlined in https://github.com/boostorg/container_hash/issues/22, to prevent it's use. BOOST_NO_CXX98_FUNCTION_BASE: > The standard library no longer supports std::unary_function and std::binary_function. > They were deprecated in C++11 and is removed from C++14. See: https://github.com/boostorg/config/pull/430 https://en.cppreference.com/w/cpp/utility/functional/unary_function https://www.boost.org/doc/libs/master/libs/config/doc/html/boost_config/boost_macro_reference.html
2022-06-22build: Remove negated --enable-fuzz checks from build systemMarcoFalke
2022-06-22Merge bitcoin/bitcoin#25389: guix: use libtool 2.4.7laanwj
4a81ef4510948f67a233a714e565f797d806a6fb doc: update configure ar doc to mention libtool 2.4.7 (fanquake) 679ecdd14bf26b4fc3bdb73b6200f5e59d15e9a6 guix: use libtool 2.4.7 (fanquake) Pull request description: As of version 2.4.7, libtool now respects ARFLAGS, and has changed the default `ARFLAGS` from `cru` to `cr` (which, historically, we have also done, [see configure](https://github.com/bitcoin/bitcoin/blob/d6832217ef45ea0c858e3fcdec5d4fe87097c839/configure.ac#L33)). This eliminates spammy `ar` output such as: ```bash CXXLD libunivalue.la /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') AR libbitcoin_zmq.a AR libbitcoin_consensus.a CXXLD crypto/libbitcoin_crypto_base.la CXXLD crypto/libbitcoin_crypto_sse41.la /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') CXXLD crypto/libbitcoin_crypto_avx2.la CXXLD crypto/libbitcoin_crypto_x86_shani.la CXXLD leveldb/libleveldb.la /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') CXXLD crc32c/libcrc32c.la /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') CXXLD leveldb/libmemenv.la /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') /root/.guix-profile/bin/x86_64-linux-gnu-ar: `u' modifier ignored since `D' is the default (see `U') AR libbitcoin_cli.a ``` [Libtool 2.4.7 release notes](https://lists.gnu.org/archive/html/autotools-announce/2022-03/msg00000.html): ** New features: - Libtool script now supports (configure-time and runtime) ARFLAGS variable, which obsoletes AR_FLAGS. This is due to naming conventions among other *FLAGS and to be consistent with Automake's ARFLAGS. ** Important incompatible changes: - Libtool changed ARFLAGS/AR_FLAGS default from 'cru' to 'cr'. Guix Build (x86_64): ```bash a4da07d0166a7018d1cb7cddd734c9efe062bd28a6349ebdbf427adf353f2acf guix-build-4a81ef451094/output/aarch64-linux-gnu/SHA256SUMS.part e2418d772c8f409b9bfde3bcf494f3d320d89970a4305e8799a8f59ecbd66906 guix-build-4a81ef451094/output/aarch64-linux-gnu/bitcoin-4a81ef451094-aarch64-linux-gnu-debug.tar.gz 44a877696205b1d60d07e60d01d5427d9ed7efaf8cf62db719bc057a0df77636 guix-build-4a81ef451094/output/aarch64-linux-gnu/bitcoin-4a81ef451094-aarch64-linux-gnu.tar.gz b911cae3d8a73eda2f9224a6073e14e26a1aec7f2cb85dc9d949d22ca4e9f4b4 guix-build-4a81ef451094/output/arm-linux-gnueabihf/SHA256SUMS.part 6fa645e1dbaa77fd082b860852b4a32114d317d630e8791dad14d154a203cd40 guix-build-4a81ef451094/output/arm-linux-gnueabihf/bitcoin-4a81ef451094-arm-linux-gnueabihf-debug.tar.gz 3d86f047e5453ee73cd4dab4ac0b3a97928914f7469b9bcc807230b38b471f3f guix-build-4a81ef451094/output/arm-linux-gnueabihf/bitcoin-4a81ef451094-arm-linux-gnueabihf.tar.gz 1c0dbc156292c3d142e63b29d1fb9c9b6623db5698f59b2bfce96674438780a6 guix-build-4a81ef451094/output/arm64-apple-darwin/SHA256SUMS.part 17f4c3bf0527ec2bde06691c301e8c6c5290178238a21aa10d3672917eccb27d guix-build-4a81ef451094/output/arm64-apple-darwin/bitcoin-4a81ef451094-arm64-apple-darwin-unsigned.dmg 5ed1de03d5d87249fc8671f5641816513a93784d38873d277bdf49a4b98b9ba3 guix-build-4a81ef451094/output/arm64-apple-darwin/bitcoin-4a81ef451094-arm64-apple-darwin-unsigned.tar.gz fb18089efdb291714f1359a548a9f101d5fcc9bdc653cd406ab28f7e02713bcd guix-build-4a81ef451094/output/arm64-apple-darwin/bitcoin-4a81ef451094-arm64-apple-darwin.tar.gz 4f816681c778b8bb9522be31807d1d60c724383cfa4ae820dd829b716d934939 guix-build-4a81ef451094/output/dist-archive/bitcoin-4a81ef451094.tar.gz 3af9f38caf09f4424b7a982b5992407fb4ce5574a0e98af0b0558ec85a12519d guix-build-4a81ef451094/output/powerpc64-linux-gnu/SHA256SUMS.part cf88399bc6ea96df3742cb87bfa0629b22b001f49a6ccfb35b66f7dd46a47a94 guix-build-4a81ef451094/output/powerpc64-linux-gnu/bitcoin-4a81ef451094-powerpc64-linux-gnu-debug.tar.gz 93158fd0b9d3c74565917395d0199d2b9f8b1821dd4aa207f804ee93bd0e4a3d guix-build-4a81ef451094/output/powerpc64-linux-gnu/bitcoin-4a81ef451094-powerpc64-linux-gnu.tar.gz c970dd4dcbd25f2a94eaf526756fc0c01920452f4e42b4dd51fea8bf04f1c7ca guix-build-4a81ef451094/output/powerpc64le-linux-gnu/SHA256SUMS.part 80e488a199b91fc2763da94bf5c4024a7173404419f97c68b825dd6c7dccafbc guix-build-4a81ef451094/output/powerpc64le-linux-gnu/bitcoin-4a81ef451094-powerpc64le-linux-gnu-debug.tar.gz 00159823c8f0daab6c1034c9648742b6569fe07b50091f4850f5b028d9f1dc83 guix-build-4a81ef451094/output/powerpc64le-linux-gnu/bitcoin-4a81ef451094-powerpc64le-linux-gnu.tar.gz f796cbe82e3d4f8ed90647728ad76afae4691c671f5a79c87f0b7a41d67c0a3e guix-build-4a81ef451094/output/riscv64-linux-gnu/SHA256SUMS.part b51be33b674def05b1d8b0b74a2e8c0340fb911859936e3e0024ecac09540270 guix-build-4a81ef451094/output/riscv64-linux-gnu/bitcoin-4a81ef451094-riscv64-linux-gnu-debug.tar.gz 9f0e52c0b0c706359e28a591c6de71502520e6de9941a6cf378c1c83ebd66480 guix-build-4a81ef451094/output/riscv64-linux-gnu/bitcoin-4a81ef451094-riscv64-linux-gnu.tar.gz e145886b3f06d6a69db1657e19661cfb1c95f9b35aac3d3efd89f89f791fa909 guix-build-4a81ef451094/output/x86_64-apple-darwin/SHA256SUMS.part 7a3512718270cc9be241d1ca0c7f8f37ebeb620e6c5a1a70992aef99bc209854 guix-build-4a81ef451094/output/x86_64-apple-darwin/bitcoin-4a81ef451094-x86_64-apple-darwin-unsigned.dmg 0439552bc901a9fd10251c1e4a2eb685aae7b4edcf8f047a28eba837d8b6c960 guix-build-4a81ef451094/output/x86_64-apple-darwin/bitcoin-4a81ef451094-x86_64-apple-darwin-unsigned.tar.gz 4c1ce8786b3c381250b8071a17bc6d705e3e5e672909ffeacfa2171814dee527 guix-build-4a81ef451094/output/x86_64-apple-darwin/bitcoin-4a81ef451094-x86_64-apple-darwin.tar.gz 9c08271cee5f3bba08866fcc609290dd009b85793460188a4b3c5df5ac83d002 guix-build-4a81ef451094/output/x86_64-linux-gnu/SHA256SUMS.part 04285f7e68bc25834fe7830f15b1fd0102cd1f02f23701a8f423cf0835d1af5f guix-build-4a81ef451094/output/x86_64-linux-gnu/bitcoin-4a81ef451094-x86_64-linux-gnu-debug.tar.gz b0e467b2ccb1b391ddb981f1d1b16f0f6de71aa8177f7735a88989fdc4ade449 guix-build-4a81ef451094/output/x86_64-linux-gnu/bitcoin-4a81ef451094-x86_64-linux-gnu.tar.gz 6adb17642959fee8d123482bf0ec5ad0a4f10e63c87bf45447d1e57ab873d2bc guix-build-4a81ef451094/output/x86_64-w64-mingw32/SHA256SUMS.part ac1989f332d1bd5d0acabb7ce28236a80fd6a42eac93c7287f890148ef2999bc guix-build-4a81ef451094/output/x86_64-w64-mingw32/bitcoin-4a81ef451094-win64-debug.zip 31816d2ef52be01a69fd8701e3da61a32dddaccdd1d424de00a412a798d97b87 guix-build-4a81ef451094/output/x86_64-w64-mingw32/bitcoin-4a81ef451094-win64-setup-unsigned.exe ecc41932934e5e746883648fd4ee5edf4cd5cadd944d799b31e41aad249c8d7d guix-build-4a81ef451094/output/x86_64-w64-mingw32/bitcoin-4a81ef451094-win64-unsigned.tar.gz 8634ad4feb1118fc89abd96489533c81176b7172750b8f2cf18a3e10377a8d65 guix-build-4a81ef451094/output/x86_64-w64-mingw32/bitcoin-4a81ef451094-win64.zip ``` Guix Build (arm64): ```bash b70e6fc1be044e347800d7de78a1c950961f5c52abc724fa8c6fe8556b3ef3ca guix-build-4a81ef451094/output/arm-linux-gnueabihf/SHA256SUMS.part 62e670fcedc2cb746b3c589edfa9a0950097256ef974c58984a9f252c91b802a guix-build-4a81ef451094/output/arm-linux-gnueabihf/bitcoin-4a81ef451094-arm-linux-gnueabihf-debug.tar.gz 2637e5c31380fbae1ec5efb1792124a0554d49516e1964a609560487ea673ebb guix-build-4a81ef451094/output/arm-linux-gnueabihf/bitcoin-4a81ef451094-arm-linux-gnueabihf.tar.gz 1554617b965611ea618664652b566f2c5a16c94fa57572ea31b66a40bb845b3c guix-build-4a81ef451094/output/arm64-apple-darwin/SHA256SUMS.part a98efc26e78ce749d75fc467822f6e68c6b3b7abc5d24e8edaa40b19c6b40632 guix-build-4a81ef451094/output/arm64-apple-darwin/bitcoin-4a81ef451094-arm64-apple-darwin-unsigned.dmg ecd9057eaa2c7166b1320bd85555258fd6a49690b29331cdde7b4c9af05acc0d guix-build-4a81ef451094/output/arm64-apple-darwin/bitcoin-4a81ef451094-arm64-apple-darwin-unsigned.tar.gz 9417c58463488f3eeddcdfc5440d1cb341d6424517e4b69c227f4291853d3fa6 guix-build-4a81ef451094/output/arm64-apple-darwin/bitcoin-4a81ef451094-arm64-apple-darwin.tar.gz 4f816681c778b8bb9522be31807d1d60c724383cfa4ae820dd829b716d934939 guix-build-4a81ef451094/output/dist-archive/bitcoin-4a81ef451094.tar.gz 25cddb3a6a22d1e57cef92d96b106df0fff5d5c3987c3673decad63db834765b guix-build-4a81ef451094/output/powerpc64-linux-gnu/SHA256SUMS.part cb99c30a117e650b837e1e5d835be5e51b282158139b8fd591fa4b6f1aa709db guix-build-4a81ef451094/output/powerpc64-linux-gnu/bitcoin-4a81ef451094-powerpc64-linux-gnu-debug.tar.gz 66a182566f0950f7b0d9de497118ce3635ca5acf78c356a1fea6f815f61ce94b guix-build-4a81ef451094/output/powerpc64-linux-gnu/bitcoin-4a81ef451094-powerpc64-linux-gnu.tar.gz d5f65e1d6cb8de238f1c50ec30c0848675274126d197e274d51fed32de3860ad guix-build-4a81ef451094/output/powerpc64le-linux-gnu/SHA256SUMS.part 4c2fe35cc087d5e268eb2202cc6579442d4c6b9d6d7b61c55753c6600f8070e7 guix-build-4a81ef451094/output/powerpc64le-linux-gnu/bitcoin-4a81ef451094-powerpc64le-linux-gnu-debug.tar.gz 918da28dbd9c2db024a31877c3913e1e717c1099d91cb32798ea4afee6b80b72 guix-build-4a81ef451094/output/powerpc64le-linux-gnu/bitcoin-4a81ef451094-powerpc64le-linux-gnu.tar.gz ba3c1095676c3f2255a3fb581404887783d234ed44bd89b7fd96016cccadd401 guix-build-4a81ef451094/output/riscv64-linux-gnu/SHA256SUMS.part 9492973869a7f6274ffe20758ef113cc5f11465c08b465aa18d28618cee6d0fb guix-build-4a81ef451094/output/riscv64-linux-gnu/bitcoin-4a81ef451094-riscv64-linux-gnu-debug.tar.gz a4a767045b987f87994eb50ab5bc17639707e184a58aa66842d8cb9d7a4dffb4 guix-build-4a81ef451094/output/riscv64-linux-gnu/bitcoin-4a81ef451094-riscv64-linux-gnu.tar.gz e145886b3f06d6a69db1657e19661cfb1c95f9b35aac3d3efd89f89f791fa909 guix-build-4a81ef451094/output/x86_64-apple-darwin/SHA256SUMS.part 7a3512718270cc9be241d1ca0c7f8f37ebeb620e6c5a1a70992aef99bc209854 guix-build-4a81ef451094/output/x86_64-apple-darwin/bitcoin-4a81ef451094-x86_64-apple-darwin-unsigned.dmg 0439552bc901a9fd10251c1e4a2eb685aae7b4edcf8f047a28eba837d8b6c960 guix-build-4a81ef451094/output/x86_64-apple-darwin/bitcoin-4a81ef451094-x86_64-apple-darwin-unsigned.tar.gz 4c1ce8786b3c381250b8071a17bc6d705e3e5e672909ffeacfa2171814dee527 guix-build-4a81ef451094/output/x86_64-apple-darwin/bitcoin-4a81ef451094-x86_64-apple-darwin.tar.gz e19a0c510a95662fef30fc3ea1f2496ae8957df1814f237d4a7c1ef40ba47728 guix-build-4a81ef451094/output/x86_64-linux-gnu/SHA256SUMS.part 1712aca301825d985f7f9e333ebdc2ff0b7f385f79fbecc9747c8a183c15fdac guix-build-4a81ef451094/output/x86_64-linux-gnu/bitcoin-4a81ef451094-x86_64-linux-gnu-debug.tar.gz b40369ea098a02a1cc4e0f5812e9947608d218542038364fb5ce743d9c9e3686 guix-build-4a81ef451094/output/x86_64-linux-gnu/bitcoin-4a81ef451094-x86_64-linux-gnu.tar.gz 9402b3b6ce1e6642a60e5324ebef565c8c0d4b49085ff6fa2105097f4879f389 guix-build-4a81ef451094/output/x86_64-w64-mingw32/SHA256SUMS.part 0e810115ea0269311a07cf868270094ced40cb10cfb2faa5db0b8ec881bc46f9 guix-build-4a81ef451094/output/x86_64-w64-mingw32/bitcoin-4a81ef451094-win64-debug.zip 31816d2ef52be01a69fd8701e3da61a32dddaccdd1d424de00a412a798d97b87 guix-build-4a81ef451094/output/x86_64-w64-mingw32/bitcoin-4a81ef451094-win64-setup-unsigned.exe ecc41932934e5e746883648fd4ee5edf4cd5cadd944d799b31e41aad249c8d7d guix-build-4a81ef451094/output/x86_64-w64-mingw32/bitcoin-4a81ef451094-win64-unsigned.tar.gz dbf4dca62ad173df82571a996ceeef4fba715d600716062d9f851a71cbdd1c9a guix-build-4a81ef451094/output/x86_64-w64-mingw32/bitcoin-4a81ef451094-win64.zip ``` ACKs for top commit: dongcarl: ACK 4a81ef4510948f67a233a714e565f797d806a6fb hebasto: ACK 4a81ef4510948f67a233a714e565f797d806a6fb Tree-SHA512: f853580ce594d26446968466d079e68e0c432c2db96a2c686297b78abbf33e9a451a441287468b1684a2f223ba709210bfdf422b7737464d87a7b9934c198761
2022-06-21Merge bitcoin/bitcoin#25422: build: globally define NOMINMAX when building ↵laanwj
with mingw-w64 58a9601dffa6d9b3b881a476169458787d382919 build: globally define NOMINMAX (fanquake) Pull request description: Define (and document) `NOMINMAX` once, rather than across multiple source files. Defining this prevents the definition of min/max macros when using mingw-w64, which may conflict with unprefixed std::min/max usage. While that might not be the case for us, we'd always prefer to use the standard library in any case. For example: https://github.com/mingw-w64/mingw-w64/blob/73cadc06c62c6af5faf76f64ef08e684b48de48c/mingw-w64-headers/include/ntdef.h#L289-L300 Note that we already define NOMINMAX globally when building with MSVC. Guix Build (arm64): ```bash d3a3b7045dc1677f6a0a2a73a484f156c81ae764058003d9e870b346912b744a guix-build-58a9601dffa6/output/arm-linux-gnueabihf/SHA256SUMS.part 3e66540a3f8c8a10864ab2fed69581241fa41af86bbb028e5f7c3dd4ba859c64 guix-build-58a9601dffa6/output/arm-linux-gnueabihf/bitcoin-58a9601dffa6-arm-linux-gnueabihf-debug.tar.gz 78756e20d45e327cfd7f9e65858bf6d3814bcbe08f9f825fd6dfc9dff999ea6d guix-build-58a9601dffa6/output/arm-linux-gnueabihf/bitcoin-58a9601dffa6-arm-linux-gnueabihf.tar.gz 11073e88d4fd0411c5119a3dca3a90788693fa9aa5134339c84be98ae893cd77 guix-build-58a9601dffa6/output/arm64-apple-darwin/SHA256SUMS.part deffd5f8c6286be34bc35e71ec70300bacb37e1b1a83e67c0833cb57d7a45529 guix-build-58a9601dffa6/output/arm64-apple-darwin/bitcoin-58a9601dffa6-arm64-apple-darwin-unsigned.dmg acee7e98c5ec41f67e86c78dc5b45fa8bc82de86a04b8c43dbf9c59e7aff36a9 guix-build-58a9601dffa6/output/arm64-apple-darwin/bitcoin-58a9601dffa6-arm64-apple-darwin-unsigned.tar.gz 83f7cbaf6680fe8981db9260b97ca87d609a76c0857a744c7d406645d2484e1b guix-build-58a9601dffa6/output/arm64-apple-darwin/bitcoin-58a9601dffa6-arm64-apple-darwin.tar.gz b8c73b40a5e307e9e7e482ce92164990d442f3f105a5240ec6eb96a775cb35d5 guix-build-58a9601dffa6/output/dist-archive/bitcoin-58a9601dffa6.tar.gz cc435cd925771af7e261d0121047339ea8fddb0d1548b699c12108a62988cd32 guix-build-58a9601dffa6/output/powerpc64-linux-gnu/SHA256SUMS.part 7a68bd3181a054056b0a5eb6e830b90ac4ba8435114127d5f1720643011aa78f guix-build-58a9601dffa6/output/powerpc64-linux-gnu/bitcoin-58a9601dffa6-powerpc64-linux-gnu-debug.tar.gz bc55b95e263c455a964d9463a3ee60dabee1d10cefc6641ed29a3b1b317d61e0 guix-build-58a9601dffa6/output/powerpc64-linux-gnu/bitcoin-58a9601dffa6-powerpc64-linux-gnu.tar.gz 49df78009d80af02262806c6c395e2c884a979b1ea13d01aa27d8188403e29d1 guix-build-58a9601dffa6/output/powerpc64le-linux-gnu/SHA256SUMS.part 29dc7a0e10707b3511fa2afb6977df7ebbb67f796d8be5a042abc14eba764aef guix-build-58a9601dffa6/output/powerpc64le-linux-gnu/bitcoin-58a9601dffa6-powerpc64le-linux-gnu-debug.tar.gz 51b7f8e1bccff1e2ce1860bbc382eefe648b90cc3374cdfa3a95a7454386e77d guix-build-58a9601dffa6/output/powerpc64le-linux-gnu/bitcoin-58a9601dffa6-powerpc64le-linux-gnu.tar.gz e62e46d8cebbbfc0f587e930acb648fcae99cfe8b2f63aeba98e46e3338fe1e3 guix-build-58a9601dffa6/output/riscv64-linux-gnu/SHA256SUMS.part fa5d0a074ca586583bf08dbf748909b3ff5e0a54a2e5aaa88abec666e17b4e72 guix-build-58a9601dffa6/output/riscv64-linux-gnu/bitcoin-58a9601dffa6-riscv64-linux-gnu-debug.tar.gz 684b2917fd27a41f884bb6870f7fac847d52b6f8b40df5779d1c674409f7cd14 guix-build-58a9601dffa6/output/riscv64-linux-gnu/bitcoin-58a9601dffa6-riscv64-linux-gnu.tar.gz 7d7cfd0212b49eec48c7f8dc0d97add53096685dfd646feac466c27a45d20c97 guix-build-58a9601dffa6/output/x86_64-apple-darwin/SHA256SUMS.part d70ae6d060b7832f8741dc5d1958cc0d32702605c863254303107246deec0aa6 guix-build-58a9601dffa6/output/x86_64-apple-darwin/bitcoin-58a9601dffa6-x86_64-apple-darwin-unsigned.dmg 930f3ec43896404208ebdb582c9175e3a5a2470d778722e0001addde84dad99a guix-build-58a9601dffa6/output/x86_64-apple-darwin/bitcoin-58a9601dffa6-x86_64-apple-darwin-unsigned.tar.gz 2d8a9d12aadcf60634db953fcb8bd496a002608e9a64eb7d60bb7ffe1f94489f guix-build-58a9601dffa6/output/x86_64-apple-darwin/bitcoin-58a9601dffa6-x86_64-apple-darwin.tar.gz 10363729ece6e1c2cbdf435483006191bf17d1def2d318ff8357197d91c06ded guix-build-58a9601dffa6/output/x86_64-linux-gnu/SHA256SUMS.part d50ec8e4f72e8b064b196eb0ece212f7b0b126f4b8b644c4451084cbf0416072 guix-build-58a9601dffa6/output/x86_64-linux-gnu/bitcoin-58a9601dffa6-x86_64-linux-gnu-debug.tar.gz 471e12b8715ecff4d99121c4bb3288ef4b005ca468810a714c67ea3e7c6669e9 guix-build-58a9601dffa6/output/x86_64-linux-gnu/bitcoin-58a9601dffa6-x86_64-linux-gnu.tar.gz d63946401952d131fdf5df9442c52151d86e53f019234b5ad16fdef0d2976356 guix-build-58a9601dffa6/output/x86_64-w64-mingw32/SHA256SUMS.part 5359782e1eb6f449338f18e053ad82f25382d968690208ae5739d9338eb7bdc7 guix-build-58a9601dffa6/output/x86_64-w64-mingw32/bitcoin-58a9601dffa6-win64-debug.zip 0d387d5a4cb1d712556a3fe5b4bd1e928bb5fbbe57a85ee06c746f132a6b1ec5 guix-build-58a9601dffa6/output/x86_64-w64-mingw32/bitcoin-58a9601dffa6-win64-setup-unsigned.exe dbfd7419d1d764e853a9dc041e276669b488aea4a80e21e4a175b6c3e512e70c guix-build-58a9601dffa6/output/x86_64-w64-mingw32/bitcoin-58a9601dffa6-win64-unsigned.tar.gz 0ba07504d9d5a12af9144e8b386b2640b48dba067d47c694a44ecffe56b0c0fc guix-build-58a9601dffa6/output/x86_64-w64-mingw32/bitcoin-58a9601dffa6-win64.zip ``` ACKs for top commit: laanwj: Code review ACK 58a9601dffa6d9b3b881a476169458787d382919 Tree-SHA512: d1c22b3d0d21ef8f9f605ef6ca06353e3f48536d84f3531f93d613a6ccbbe62f12fae0ed09e8b9a8940b0ef33f9d41d9991eb56fbe7c4ab48f0ce7fcf44e08b1
2022-06-20build: Fix `::_wsystem` checkHennadii Stepanov
See https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/system-wsystem
2022-06-20build: globally define NOMINMAXfanquake
Define (and document) `NOMINMAX` once, rather than across multiple source files. Defining this prevents the definition of min/max macros when using mingw-w64, which may conflict with unprefixed std::min/max usage. While that might not be the case for us, we'd always prefer to use the standard library in any case. For example: https://github.com/mingw-w64/mingw-w64/blob/73cadc06c62c6af5faf76f64ef08e684b48de48c/mingw-w64-headers/include/ntdef.h#L289-L300