I believe these should also be deleted upon invoking make clean. It also garbles the coverage file if you try to fuzz the same harness again.
build: make clean removes .gcda and .gcno files from fuzz directory #19672
pull Crypt-iQ wants to merge 1 commits into bitcoin:master from Crypt-iQ:fuzz_cov_cleanup_0806 changing 1 files +1 −1-
Crypt-iQ commented at 4:47 AM on August 6, 2020: contributor
-
90bd476ea6
build: make clean removes .gcda and .gcno files from fuzz directory
With this commit, make clean now removes coverage files from the fuzzing directory. Without this, subsequent fuzzing runs would have garbled coverage signals for files in the fuzz directory as they were never deleted with make clean.
- fanquake added the label Build system on Aug 6, 2020
-
practicalswift commented at 10:12 PM on August 6, 2020: contributor
ACK 90bd476ea67bd80b35188b5f139f159a3836aa7d -- patch looks correct
Thanks for your continued work on improving (and reviewing)
src/test/fuzz/:) -
hebasto commented at 9:43 AM on August 7, 2020: member
I'm a bit confused.
I run
./configure --with-incompatible-bdb --enable-lcov --enable-fuzz CC=clang CXX=clang++ && makeand a bunch of
*.gcnofiles were generated in thesrc/test/fuzzdirectory.The following run
make checkfails for me (because
configure: WARNING: enable-fuzz will disable all other targets), and no*.gcdafiles wer generated in thesrc/test/fuzzdirectory.Does this mean that we should just prevent combining
--enable-lcovwith--enable-fuzz? -
Crypt-iQ commented at 10:06 AM on August 7, 2020: contributor
What is the output of
make check?*.gcdafiles should only appear if you run one of the fuzz tests andmake checkdoesn't run the binaries. - hebasto approved
-
hebasto commented at 1:23 PM on August 7, 2020: member
~ACK 90bd476ea67bd80b35188b5f139f159a3836aa7d, tested on Linux Mint 20 (x86_64).~
-
hebasto commented at 1:58 PM on August 7, 2020: member
Revoke my ACK.
Still having concerns about usefulness of combining
--enable-lcovwith--enable-fuzz:$ ./autogen.sh $ ./configure --enable-lcov --enable-fuzz --with-sanitizers=address,fuzzer,undefined CC=clang CXX=clang++ $ make $ make cov /usr/bin/lcov --gcov-tool=/usr/bin/gcov -c -i -d /home/hebasto/guix/GitHub/bitcoin/src -o baseline.info Capturing coverage data from /home/hebasto/guix/GitHub/bitcoin/src Found gcov version: 9.3.0 Using intermediate gcov format Scanning /home/hebasto/guix/GitHub/bitcoin/src for .gcno files ... Found 338 graph files in /home/hebasto/guix/GitHub/bitcoin/src Processing src/libbitcoin_consensus_a-pubkey.gcno /home/hebasto/guix/GitHub/bitcoin/src/libbitcoin_consensus_a-pubkey.gcno:version '402*', prefer 'A93*' geninfo: ERROR: GCOV failed for /home/hebasto/guix/GitHub/bitcoin/src/libbitcoin_consensus_a-pubkey.gcno! make: *** [Makefile:1318: baseline.info] Error 255 rm baseline.info - hebasto approved
- darosior approved
-
darosior commented at 12:47 PM on August 8, 2020: member
ACK 90bd476ea67bd80b35188b5f139f159a3836aa7d
- MarcoFalke merged this on Aug 8, 2020
- MarcoFalke closed this on Aug 8, 2020
- sidhujag referenced this in commit 59cd04bdf5 on Aug 8, 2020
- Crypt-iQ deleted the branch on Aug 9, 2020
- PastaPastaPasta referenced this in commit 7c488f73f9 on Sep 17, 2021
- PastaPastaPasta referenced this in commit db62c6f314 on Sep 19, 2021
- thelazier referenced this in commit 586492d15a on Sep 25, 2021
- DrahtBot locked this on Feb 15, 2022