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