mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-03-19 06:12:13 +01:00
1f9b2e150ce5aa192226d2daae73f7d678c47d65 cmake: Require `zip` only for `deploy` target (Hennadii Stepanov) 0aeff2995138c247f1b1f843c30eb547e199f5f7 cmake: Check for `makensis` tool before using it (Hennadii Stepanov) Pull request description: For `x86_64-w64-mingw32` and `*-apple-darwin` targets, the optional `deploy` target requires dedicated tools: `makensis` and `zip`, respectively. This PR introduces a uniform checks for those tools when attempting to build the `deploy` target, ensuring they are not required for configuring and building any other targets. Here is an example of workflow for `x86_64-w64-mingw32`: ``` $ # `nsis` is not installed $ cmake -B build -G "GNU Makefiles" --toolchain depends/x86_64-w64-mingw32/toolchain.cmake $ cmake --build build -j $(nproc) $ cmake --build build -t deploy Error: NSIS not found. Please install NSIS and/or ensure that its executable is accessible to the find_program() command— for example, by setting the MAKENSIS_EXECUTABLE variable or another relevant CMake variable. Then re-run cmake to regenerate the build system. Built target deploy $ sudo apt install nsis $ cmake -B build $ cmake --build build -t deploy ... [100%] Generating bitcoin-win64-setup.exe [100%] Built target deploy ``` Fixes https://github.com/bitcoin/bitcoin/issues/32018. ACKs for top commit: hodlinator: re-ACK 1f9b2e150ce5aa192226d2daae73f7d678c47d65 fanquake: ACK 1f9b2e150ce5aa192226d2daae73f7d678c47d65 Tree-SHA512: 5e2bd28a13bd8fa7c4ba8cf1756d200a4651afe83c463d76ece10027cca343e124eff97012a5368028f761df60f420ab891106b4e33b50045051d57c7464ff98