-
Notifications
You must be signed in to change notification settings - Fork 5
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
cmake: Regular rebasing of the cmake-staging
branch
#220
Conversation
Also add a sanity check for non-encapsulated (directory-wide) build properties.
Co-authored-by: Cory Fields <cory-nospam-@coryfields.com> Co-authored-by: Vasil Dimov <vd@FreeBSD.org>
Co-authored-by: Cory Fields <cory-nospam-@coryfields.com>
If any of {C,CXX,CPP,LD}FLAGS is specified it should be assigned to a non-type-specific variable.
To configure CMake for cross-compiling, use `--toolchain depends/${HOST}/toolchain.cmake` command-line option.
Only versioning has been updated for now.
The content of those variables is appended to the each target flags added by the build system.
Keep this commit at the top when rebasing.
This change fixes CI jobs as the `miniupnpc` source archive is not available neither at https://miniupnp.tuxfamily.org nor at https://bitcoincore.org/depends-sources at this moment.
CMake allows to incorporate compile defines into a target as its property with applying automatically where required.
For the master branch CI, please refer to bitcoin#29790 (comment): |
My Guix build:
|
LGTM Found this one a bit of a handful to rebase, I got close (1 line off) and the remaining diff I see should be removed in the staging branch so it looks good to me. Will follow up with guix build. DebainBuild ➜ bitcoin git:(6fe6ec681f) git --no-pager diff hebasto/240604-linear
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7f032d1f39..bee4d69637 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -104,6 +104,7 @@ if(WITH_BDB)
endif()
cmake_dependent_option(BUILD_WALLET_TOOL "Build bitcoin-wallet tool." ${BUILD_TESTS} "ENABLE_WALLET" OFF)
+option(ENABLE_THREADLOCAL "Enable features that depend on the C++ thread_local keyword (currently just thread names in debug logs)." ON)
option(ENABLE_HARDENING "Attempt to harden the resulting executables." ON)
option(REDUCE_EXPORTS "Attempt to reduce exported symbols in the resulting executables." OFF)
option(WERROR "Treat compiler warnings as errors." OFF)
DebainBuild ➜ bitcoin git:(6fe6ec681f) |
Thank you for your review! This branch has been force pushed into the https://github.com/hebasto/bitcoin/tree/cmake-staging. Closing. |
Post close Guix build: ce4c09a88313f99c30cfb6a3015cd3911d7cecd95d081f18dc274138eb561489 guix-build-597da8336d19/output/aarch64-linux-gnu/SHA256SUMS.part
0ab20eea9dc674ebdc4d494aa9f280cc4fb13afae3268ad3d3229068476aadfd guix-build-597da8336d19/output/aarch64-linux-gnu/bitcoin-597da8336d19-aarch64-linux-gnu-debug.tar.gz
b5797838078d6e53f4416dd21b63ba1b7ac0ae8955faa98806ff591ef3827230 guix-build-597da8336d19/output/aarch64-linux-gnu/bitcoin-597da8336d19-aarch64-linux-gnu.tar.gz
69643121ac26d4d57dcde519b6fec5e423fd9fe856cccbc92a36d14b8e2fe336 guix-build-597da8336d19/output/arm-linux-gnueabihf/SHA256SUMS.part
9f05ffc41b93b19ead38d012432c3a17c51fd88c81d4264ad8b991f464ddeade guix-build-597da8336d19/output/arm-linux-gnueabihf/bitcoin-597da8336d19-arm-linux-gnueabihf-debug.tar.gz
00c7e84ba34d0f83754e7a6d29a13e7155de9a32152e3e7a23b3627506d1d643 guix-build-597da8336d19/output/arm-linux-gnueabihf/bitcoin-597da8336d19-arm-linux-gnueabihf.tar.gz
60a7f969af7f1162f775b78d0f4669d19dd764431f93daec74221b2a1c3e3a54 guix-build-597da8336d19/output/arm64-apple-darwin/SHA256SUMS.part
5612ff259807f653bab66cd70e0bbcafd300dc7eb567bb108f22e5b321c6a350 guix-build-597da8336d19/output/arm64-apple-darwin/bitcoin-597da8336d19-arm64-apple-darwin-unsigned.tar.gz
091aeadc4c747fc7ced171ce0d0025257654d64194ee224370539d7194adf8dd guix-build-597da8336d19/output/arm64-apple-darwin/bitcoin-597da8336d19-arm64-apple-darwin-unsigned.zip
3ee588b1c8c450374e57e09f44a00d8409fbcb0319cabee30901d18911a4bb42 guix-build-597da8336d19/output/arm64-apple-darwin/bitcoin-597da8336d19-arm64-apple-darwin.tar.gz
7f0bbcc79ad67b583bfbc0ca7b940aec88570f0fb7b5560c4a43d8a74ad7d0be guix-build-597da8336d19/output/dist-archive/bitcoin-597da8336d19.tar.gz
a52e598ad949aefbdcaa1b3ed29b22422ac1d69753030c52bfc57d46e82bc756 guix-build-597da8336d19/output/powerpc64-linux-gnu/SHA256SUMS.part
090b848c1315b385458227b86946b73754833253609f1ad942c9106bae7dca52 guix-build-597da8336d19/output/powerpc64-linux-gnu/bitcoin-597da8336d19-powerpc64-linux-gnu-debug.tar.gz
1ab96e6c13661d7df87deb93f33333583c2be37d890814333389081b09e88682 guix-build-597da8336d19/output/powerpc64-linux-gnu/bitcoin-597da8336d19-powerpc64-linux-gnu.tar.gz
5992cff7dec390085ccfc2f7b1e044ea41213b6e810aae793e1daecb52eeb8e6 guix-build-597da8336d19/output/riscv64-linux-gnu/SHA256SUMS.part
6c217255e471eae8e5c016cceebaf33fdef97ad5bbfd5e3c04ecad94362340d3 guix-build-597da8336d19/output/riscv64-linux-gnu/bitcoin-597da8336d19-riscv64-linux-gnu-debug.tar.gz
e72595b3e941801c0ac1b1b34bf464a289012ed64f085d8866fbdc6a008004bc guix-build-597da8336d19/output/riscv64-linux-gnu/bitcoin-597da8336d19-riscv64-linux-gnu.tar.gz
d1fcad809f65a8baaf6f9b986b1e63b334caa90ce1a2f141e67990c99b74b9bc guix-build-597da8336d19/output/x86_64-apple-darwin/SHA256SUMS.part
2939cbcb8509d7999a09f01388669f3cdca8be4fbdc9c4676601d965cdbe8748 guix-build-597da8336d19/output/x86_64-apple-darwin/bitcoin-597da8336d19-x86_64-apple-darwin-unsigned.tar.gz
8b42ddef549eebfb6cc68cc4bb4acb6aed1b3467483185d014c34cfdfcd58f51 guix-build-597da8336d19/output/x86_64-apple-darwin/bitcoin-597da8336d19-x86_64-apple-darwin-unsigned.zip
315cf4ef6ae511bf753999a8a8b55a3615ba83c205d8889265a41c8b04febacc guix-build-597da8336d19/output/x86_64-apple-darwin/bitcoin-597da8336d19-x86_64-apple-darwin.tar.gz
255af46dd997dad3d3e28bfccfddaa80b4189dbd989178582c6407cb90c3c01a guix-build-597da8336d19/output/x86_64-linux-gnu/SHA256SUMS.part
af0c747fa8f5dfa58cf9aa6bc921fea1625bfa92b7e150d37c5e07186ae06ecd guix-build-597da8336d19/output/x86_64-linux-gnu/bitcoin-597da8336d19-x86_64-linux-gnu-debug.tar.gz
2e03a377f7d597e4105626e55a806b1704790cdfc82058d0774c640c6931a2ff guix-build-597da8336d19/output/x86_64-linux-gnu/bitcoin-597da8336d19-x86_64-linux-gnu.tar.gz
93ebd99ffc0d37fc4f9f5031d08ebc0504bc90e235dcb0b815ba0d12ecb23891 guix-build-597da8336d19/output/x86_64-w64-mingw32/SHA256SUMS.part
9d7ec48cc17127b4f5ca4c23cbe2cf2792e18344777ae4274519d72d40f15b2d guix-build-597da8336d19/output/x86_64-w64-mingw32/bitcoin-597da8336d19-win64-debug.zip
0f11a0d7a46ffe6f3a4f134d2f185c6fded74ae78ea94aef4dc178c95338bc63 guix-build-597da8336d19/output/x86_64-w64-mingw32/bitcoin-597da8336d19-win64-setup-unsigned.exe
bf5dd57209088069ed90a4e7f30b24d766c1323a1c9fe17f521e762c02ebbe83 guix-build-597da8336d19/output/x86_64-w64-mingw32/bitcoin-597da8336d19-win64-unsigned.tar.gz
2253c68d644efb5fa5693242ef7525f526d792b689a6de43bccf79e3e5abaaf3 guix-build-597da8336d19/output/x86_64-w64-mingw32/bitcoin-597da8336d19-win64.zip |
This is the cmake-staging branch rebased on the recent bitcoin/master one, which includes the main build system changes, with the squashed "!fixup" commits.
Steps to reproduce:
There are a few conflicts that have to be resolved.
Squash the commits, which renamed build options, manually (it must be a zero-diff change).
Reorder the recent commits to pop up the docs and CI changes (it must be a zero-diff change).
Port build system changes from: