fanquake
a7a4e11db8
cmake: scope Boost Test check to vcpkg
...
This check was added for vcpkg, given how it packages Boost. However, we
don't need to run the check for other platforms, and it's quite slow.
So, scope it to VCPKG. On my machine, this reduces the time to run
`cmake -B build` from ~12 seconds, to ~6 seconds.
Fixes : #30787
2024-09-05 16:15:27 +01:00
merge-script
6852d1d487
Merge bitcoin/bitcoin#30796 : test: Use std::span and std::string_view for raw data
...
faecca9a85
test: Use span for raw data (MarcoFalke)
fac973647d
test: Use string_view for json_tests (MarcoFalke)
Pull request description:
The build system converts raw data into a C++ header file for tests.
This change modernizes the code to use the convenience wrappers `std::span` and `std::string_view`, so that redundant copies can be avoided.
ACKs for top commit:
fjahr:
re-ACK faecca9a85
TheCharlatan:
ACK faecca9a85
stickies-v:
ACK faecca9a85
hebasto:
ACK faecca9a85
, I have reviewed the code and the generated headers.
Tree-SHA512: 1f4951c54aff11ba27c41fb70f2821bdb79e06ca0abae734b970bd0d64dda9d8cced824a891fd51b3e9d4e5715ee9eb49ed5d369010a45eca7c3bec9f8641235
2024-09-05 13:46:22 +01:00
MarcoFalke
faecca9a85
test: Use span for raw data
...
This change allows to drop brittle sizeof calls in favor of the
std::span::size method.
Other improvements include:
* Use of a namespace to mark test and bench data
* Use of the modern std::byte
* Drop of a no longer used std::vector copy and the bench/data module
2024-09-05 10:57:19 +02:00
Hennadii Stepanov
d9fcbfc372
build: Add JOBS
variable support to CoverageFuzz.cmake
script
2024-09-04 16:03:06 +01:00
Hennadii Stepanov
e7cf4a6f27
build: Add missed -g
for "Coverage" build configuration
2024-09-04 16:02:19 +01:00
Hennadii Stepanov
fe2003ab12
build: Add COMMAND_ERROR_IS_FATAL
to every process in coverage scrips
2024-09-04 16:02:14 +01:00
MarcoFalke
8888beea8d
scripted-diff: fuzz: Rename fuzz_seed_corpus to fuzz_corpora
...
-BEGIN VERIFY SCRIPT-
ren() { sed -i "s:\<$1\>:$2:g" $( git grep -l "$1" ) ; }
ren fuzz_seed_corpus fuzz_corpora
ren FUZZ_SEED_CORPUS_DIR FUZZ_CORPORA_DIR
-END VERIFY SCRIPT-
2024-09-03 20:40:35 +02:00
MarcoFalke
fac973647d
test: Use string_view for json_tests
...
This avoids a static constructor of the global std::string, and rules
out possibly expensive and implicit copies of the string completely.
2024-09-03 16:06:20 +02:00
Hennadii Stepanov
d209e4f156
doc: Drop mentions of share/genbuild.sh
2024-08-29 12:38:37 +01:00
Hennadii Stepanov
8b6f1c4353
cmake: Add Coverage
and CoverageFuzz
scripts
2024-08-16 21:19:12 +01:00
Hennadii Stepanov
747adb6ffe
cmake: Add Maintenance
module
2024-08-16 21:19:11 +01:00
Hennadii Stepanov
1f60b30df0
cmake: Add APPEND_{CPP,C,CXX,LD}FLAGS
cache variables
...
The content of those variables is appended to the each target after the
flags added by the build system.
2024-08-16 21:19:11 +01:00
Hennadii Stepanov
2b43c45b13
cmake: Add AddWindowsResources
module
2024-08-16 21:19:11 +01:00
Hennadii Stepanov
10fcc668a3
cmake: Add WITH_DBUS
option
2024-08-16 19:27:42 +01:00
Hennadii Stepanov
5bb5a4bc75
cmake: Add libqrencode
optional package support
2024-08-16 19:27:42 +01:00
Hennadii Stepanov
57a6e2ef4a
cmake: Build bitcoin-qt
executable
2024-08-16 19:27:42 +01:00
Hennadii Stepanov
a8a2e364ac
cmake: Add Python-based tests
2024-08-16 19:27:41 +01:00
Hennadii Stepanov
801735163a
cmake: Add external signer support
2024-08-16 19:27:41 +01:00
Hennadii Stepanov
353e0c9e96
cmake: Add systemtap-sdt
optional package support
2024-08-16 19:27:41 +01:00
Hennadii Stepanov
ae7b39a0e1
cmake: Add libminiupnpc
optional package support
2024-08-16 19:27:40 +01:00
Hennadii Stepanov
6480e1dcdb
cmake: Add libnatpmp
optional package support
2024-08-16 19:27:40 +01:00
Hennadii Stepanov
d10c5c34c3
cmake: Add wallet functionality
2024-08-16 19:27:40 +01:00
Hennadii Stepanov
959370bd76
cmake: Build test_bitcoin
executable
2024-08-16 19:27:39 +01:00
Hennadii Stepanov
a9813df826
cmake: Build bitcoind
executable
2024-08-16 19:27:39 +01:00
Hennadii Stepanov
97829ce2d5
cmake: Add FindLibevent
module
2024-08-16 19:27:39 +01:00
Hennadii Stepanov
0a9a521a70
cmake: Build bitcoin_crypto
library
2024-08-16 19:27:38 +01:00
Hennadii Stepanov
752747fda8
cmake: Generate obj/build.h
header
2024-08-16 19:27:38 +01:00
Hennadii Stepanov
1f0a78edf3
cmake: Build minisketch
static library
2024-08-16 19:27:38 +01:00
Hennadii Stepanov
12bfbc8154
cmake: Build leveldb
static library
...
Co-authored-by: Cory Fields <cory-nospam-@coryfields.com>
2024-08-16 19:27:38 +01:00
Hennadii Stepanov
51985c5304
cmake: Build crc32c
static library
2024-08-16 19:27:37 +01:00
Hennadii Stepanov
dbb7ed14e8
cmake: Add ccache
support
2024-08-16 19:27:37 +01:00
Hennadii Stepanov
cedfdf6c72
cmake: Redefine/adjust per-configuration flags
2024-08-16 19:27:37 +01:00
Hennadii Stepanov
f98327931b
cmake: Add TryAppendLinkerFlag
module
2024-08-16 19:27:37 +01:00
Hennadii Stepanov
4a0af29697
cmake: Add TryAppendCXXFlags
module
2024-08-16 19:27:36 +01:00
Hennadii Stepanov
07069e2bb0
cmake: Add introspection module
...
Co-authored-by: Cory Fields <cory-nospam-@coryfields.com>
Co-authored-by: Vasil Dimov <vd@FreeBSD.org>
2024-08-16 19:27:36 +01:00
Hennadii Stepanov
27d687fc1f
cmake: Add config/bitcoin-config.h
support
2024-08-16 19:27:36 +01:00
Hennadii Stepanov
fe5cdace5f
cmake: Print compiler and linker flags in summary
2024-08-16 19:27:36 +01:00
Hennadii Stepanov
70683884c5
cmake: Introduce interface libraries to encapsulate common flags
...
Also add a sanity check for non-encapsulated (directory-wide) build
properties.
2024-08-16 19:27:34 +01:00