[DO NOT MERGE] cmake: Migrate CI scripts to CMake-based build system – WIP #29790
pull hebasto wants to merge 1 commits into bitcoin:master from hebasto:240402-cmake-DA changing 107 files +5792 −447-
hebasto commented at 3:07 pm on April 2, 2024: memberThis PR goal is to facilitate testing CI scripts migration to the CMake.
-
DrahtBot commented at 3:07 pm on April 2, 2024: contributor
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
Code Coverage
For detailed information about the code coverage, see the test coverage report.
Reviews
See the guideline for information on the review process. A summary of reviews will appear here.
Conflicts
Reviewers, this pull request conflicts with the following ones:
- #30597 (doc: Drop no longer needed workaround for WSL by hebasto)
- #30527 (Bump python minimum supported version to 3.10 by maflcko)
- #30465 (depends: Set
CMAKE_SYSTEM_VERSION
for CMake builds by hebasto) - #29881 (guix: use GCC 13 to builds releases by fanquake)
- #29868 (Reintroduce external signer support for Windows by hebasto)
- #25573 ([POC] guix: produce a fully
-static-pie
bitcoind by fanquake) - #19461 (multiprocess: Add bitcoin-gui -ipcconnect option by ryanofsky)
- #19460 (multiprocess: Add bitcoin-wallet -ipcconnect option by ryanofsky)
- #10102 (Multiprocess bitcoin by ryanofsky)
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.
-
hebasto force-pushed on Apr 2, 2024
-
hebasto force-pushed on Apr 2, 2024
-
DrahtBot added the label Needs rebase on Apr 2, 2024
-
hebasto force-pushed on Apr 2, 2024
-
DrahtBot added the label CI failed on Apr 2, 2024
-
DrahtBot commented at 6:27 pm on April 2, 2024: contributor
🚧 At least one of the CI tasks failed. Make sure to run all tests locally, according to the documentation.
Possibly this is 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.
Leave a comment here, if you need help tracking down a confusing failure.
-
DrahtBot removed the label Needs rebase on Apr 2, 2024
-
hebasto force-pushed on Apr 2, 2024
-
hebasto force-pushed on Apr 3, 2024
-
hebasto force-pushed on Apr 3, 2024
-
DrahtBot added the label Needs rebase on Apr 4, 2024
-
hebasto force-pushed on Apr 4, 2024
-
DrahtBot removed the label Needs rebase on Apr 4, 2024
-
hebasto force-pushed on Apr 4, 2024
-
hebasto force-pushed on Apr 5, 2024
-
hebasto force-pushed on Apr 6, 2024
-
DrahtBot added the label Needs rebase on Apr 7, 2024
-
hebasto force-pushed on Apr 8, 2024
-
DrahtBot removed the label Needs rebase on Apr 8, 2024
-
hebasto force-pushed on Apr 8, 2024
-
hebasto force-pushed on Apr 8, 2024
-
hebasto force-pushed on Apr 9, 2024
-
hebasto force-pushed on Apr 9, 2024
-
DrahtBot removed the label CI failed on Apr 9, 2024
-
hebasto force-pushed on Apr 10, 2024
-
DrahtBot added the label CI failed on Apr 10, 2024
-
DrahtBot removed the label CI failed on Apr 10, 2024
-
DrahtBot added the label Needs rebase on Apr 15, 2024
-
hebasto force-pushed on Apr 18, 2024
-
DrahtBot removed the label Needs rebase on Apr 18, 2024
-
hebasto force-pushed on Apr 18, 2024
-
DrahtBot commented at 1:54 pm on April 18, 2024: contributor
🚧 At least one of the CI tasks failed. Make sure to run all tests locally, according to the documentation.
Possibly this is 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.
Leave a comment here, if you need help tracking down a confusing failure.
-
DrahtBot added the label CI failed on Apr 18, 2024
-
hebasto force-pushed on Apr 18, 2024
-
DrahtBot removed the label CI failed on Apr 18, 2024
-
hebasto force-pushed on Apr 21, 2024
-
hebasto commented at 1:25 pm on April 21, 2024: memberThe recent push uses approach from the https://github.com/hebasto/bitcoin/pull/157.
-
DrahtBot added the label CI failed on Apr 21, 2024
-
DrahtBot added the label Needs rebase on Apr 24, 2024
-
hebasto force-pushed on May 12, 2024
-
hebasto force-pushed on May 12, 2024
-
hebasto force-pushed on May 12, 2024
-
hebasto force-pushed on May 12, 2024
-
hebasto commented at 8:58 am on May 12, 2024: memberRebased and updated with usage of https://github.com/hebasto/bitcoin/pull/184.
-
hebasto force-pushed on May 12, 2024
-
in ci/test/00_setup_env_native_fuzz_with_msan.sh:21 in 5bd592c003 outdated
17@@ -18,7 +18,7 @@ export PACKAGES="ninja-build" 18 export DEP_OPTS="DEBUG=1 NO_BDB=1 NO_QT=1 CC=clang CXX=clang++ CFLAGS='${MSAN_FLAGS}' CXXFLAGS='${MSAN_AND_LIBCXX_FLAGS}'" 19 export GOAL="install" 20 # _FORTIFY_SOURCE is not compatible with MSAN. 21-export BITCOIN_CONFIG="--enable-fuzz --with-sanitizers=fuzzer,memory CPPFLAGS='-DBOOST_MULTI_INDEX_ENABLE_SAFE_MODE -U_FORTIFY_SOURCE'" 22+export BITCOIN_CONFIG="-DFUZZ=ON -DSANITIZERS=fuzzer,memory -DHARDENING=OFF -DAPPEND_CPPFLAGS='-DBOOST_MULTI_INDEX_ENABLE_SAFE_MODE -U_FORTIFY_SOURCE'"
fanquake commented at 8:50 am on May 13, 2024:Should remove-DHARDENING=OFF
here.
hebasto commented at 3:57 pm on May 13, 2024:Thanks! Removed.DrahtBot removed the label Needs rebase on May 13, 2024hebasto force-pushed on May 13, 2024hebasto force-pushed on May 13, 2024DrahtBot removed the label CI failed on May 13, 2024hebasto commented at 9:59 am on May 14, 2024: member@maflcko Would you mind having a look into this, please?
People who works on CMake migration are highly anticipating your opinion on use cases for
APPEND_{CPP,C,CXX,LD}FLAGS
in the CI scripts.cc @theuni
maflcko commented at 10:35 am on May 14, 2024: memberPersonally I like the append approach, because it specifies that everything is the “default” plus the given flags appended. Otherwise there would be ambiguity and hard-to-debug issues which default flags are omitted (or kept) by setting CXXFLAGS. (c.f. https://github.com/bitcoin/bitcoin/pull/29205/files#diff-8b9cb286f7af766e7d4615428ff76c84947644ed42032c54e97e0aa4aeee751e)
Other than that, I think the CI system should not receive more thought. I think the primary concern should be that it is clear for end-users. The CI can always be adjusted to fit in.
maflcko commented at 9:17 am on May 15, 2024: memberIf the CI uses the same patterns that end-users will use, that is ideal. If it does not, then it is fine, too.hebasto force-pushed on May 17, 2024hebasto force-pushed on May 17, 2024hebasto force-pushed on May 18, 2024hebasto referenced this in commit 1d7605615e on May 20, 2024hebasto force-pushed on May 20, 2024hebasto commented at 10:56 pm on May 20, 2024: memberThis branch has been rebased on top of the https://github.com/hebasto/bitcoin/pull/202.
I’ve noticed two issues in the “tidy” job so far:
Cannot open mapping file '/ci_container_base/ci/scratch/build-/contrib/devtools/iwyu/bitcoin.core.imp': No such file or directory.
- Missed disabling
EXPORT_COMPILE_COMMANDS
property for targets in thecrc32c
subtree.
hebasto commented at 12:14 pm on May 21, 2024: memberThe last two commits in this branch have been cherry-picked into https://github.com/hebasto/bitcoin/pull/177.
Would you mind leave your comment in there please?
hebasto force-pushed on May 21, 2024hebasto force-pushed on May 21, 2024DrahtBot added the label CI failed on May 21, 2024DrahtBot commented at 2:10 pm on May 21, 2024: contributor🚧 At least one of the CI tasks failed. Make sure to run all tests locally, according to the documentation.
Possibly this is 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.
Leave a comment here, if you need help tracking down a confusing failure.
DrahtBot removed the label CI failed on May 21, 2024DrahtBot added the label Needs rebase on May 22, 2024hebasto force-pushed on May 22, 2024DrahtBot removed the label Needs rebase on May 22, 2024hebasto commented at 2:24 pm on May 22, 2024: memberI’ve noticed two issues in the “tidy” job so far:
-
Cannot open mapping file '/ci_container_base/ci/scratch/build-/contrib/devtools/iwyu/bitcoin.core.imp': No such file or directory.
-
Missed disabling
EXPORT_COMPILE_COMMANDS
property for targets in thecrc32c
subtree.
The recent push includes:
- commits from https://github.com/hebasto/bitcoin/pull/205, which fixes the point 1
- commits from https://github.com/hebasto/bitcoin/pull/206, which fixes the point 2
hebasto referenced this in commit 6c2be70c06 on May 23, 2024hebasto force-pushed on May 23, 2024hebasto commented at 10:01 am on May 23, 2024: memberI’ve noticed two issues in the “tidy” job so far:
Cannot open mapping file '/ci_container_base/ci/scratch/build-/contrib/devtools/iwyu/bitcoin.core.imp': No such file or directory.
The recent push includes commits from https://github.com/hebasto/bitcoin/pull/205, which fixes the point 1.
- Missed disabling
EXPORT_COMPILE_COMMANDS
property for targets in thecrc32c
subtree.
The point 2 has been fixed already.
DrahtBot added the label CI failed on May 23, 2024DrahtBot commented at 11:16 am on May 23, 2024: contributor🚧 At least one of the CI tasks failed. Make sure to run all tests locally, according to the documentation.
Possibly this is 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.
Leave a comment here, if you need help tracking down a confusing failure.
hebasto referenced this in commit f5f951d4f0 on May 23, 2024DrahtBot removed the label CI failed on May 23, 2024DrahtBot added the label Needs rebase on May 30, 2024hebasto force-pushed on Jun 4, 2024hebasto commented at 1:50 pm on June 4, 2024: memberRebased. Same as https://github.com/hebasto/bitcoin/pull/220.
UPD. Markdown link errors have to addressed in the staging branch.
DrahtBot added the label CI failed on Jun 4, 2024DrahtBot commented at 3:11 pm on June 4, 2024: contributor🚧 At least one of the CI tasks failed. Make sure to run all tests locally, according to the documentation.
Possibly this is 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.
Leave a comment here, if you need help tracking down a confusing failure.
DrahtBot removed the label Needs rebase on Jun 4, 2024DrahtBot removed the label CI failed on Jun 4, 2024hebasto referenced this in commit b0ee403339 on Jun 5, 2024DrahtBot added the label Needs rebase on Jun 10, 2024hebasto force-pushed on Jun 30, 2024DrahtBot added the label CI failed on Jun 30, 2024DrahtBot commented at 6:25 pm on June 30, 2024: contributor🚧 At least one of the CI tasks failed. Make sure to run all tests locally, according to the documentation.
Possibly this is 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.
Leave a comment here, if you need help tracking down a confusing failure.
DrahtBot removed the label Needs rebase on Jun 30, 2024hebasto force-pushed on Jun 30, 2024hebasto referenced this in commit 6afc48f2d3 on Jul 1, 2024DrahtBot removed the label CI failed on Jul 1, 2024DrahtBot added the label Needs rebase on Jul 2, 2024hebasto force-pushed on Jul 3, 2024hebasto force-pushed on Jul 3, 2024hebasto force-pushed on Jul 4, 2024DrahtBot added the label CI failed on Jul 4, 2024hebasto force-pushed on Jul 4, 2024DrahtBot removed the label Needs rebase on Jul 4, 2024DrahtBot removed the label CI failed on Jul 4, 2024DrahtBot added the label Needs rebase on Jul 4, 2024hebasto force-pushed on Jul 13, 2024DrahtBot removed the label Needs rebase on Jul 13, 2024DrahtBot added the label CI failed on Jul 13, 2024hebasto force-pushed on Jul 16, 2024hebasto force-pushed on Jul 16, 2024hebasto closed this on Jul 16, 2024
hebasto commented at 7:08 am on July 20, 2024: memberTemporarily reopening this PR to demonstrate the correctness of the https://github.com/hebasto/bitcoin/pull/273.hebasto reopened this on Jul 20, 2024
hebasto force-pushed on Jul 20, 2024DrahtBot removed the label CI failed on Jul 20, 2024DrahtBot added the label Needs rebase on Jul 20, 2024hebasto force-pushed on Jul 23, 2024hebasto force-pushed on Jul 23, 2024DrahtBot removed the label Needs rebase on Jul 23, 2024fanquake referenced this in commit 1518c086fd on Jul 24, 2024DrahtBot added the label Needs rebase on Jul 24, 2024hebasto force-pushed on Jul 24, 2024DrahtBot removed the label Needs rebase on Jul 24, 2024DrahtBot added the label Needs rebase on Jul 25, 2024hebasto force-pushed on Jul 30, 2024DrahtBot removed the label Needs rebase on Jul 30, 2024hebasto force-pushed on Jul 31, 2024hebasto force-pushed on Jul 31, 2024DrahtBot added the label Needs rebase on Aug 2, 2024hebasto force-pushed on Aug 5, 2024DrahtBot removed the label Needs rebase on Aug 5, 2024DrahtBot added the label Needs rebase on Aug 5, 2024build: Introduce CMake-based build system 40814c34ddhebasto force-pushed on Aug 6, 2024DrahtBot removed the label Needs rebase on Aug 6, 2024hebasto closed this on Aug 8, 2024
This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-11-23 15:12 UTC
More mirrored repositories can be found on mirror.b10c.me