summaryrefslogtreecommitdiff
path: root/Homework/cs3460/rands/build/_deps/fmt-src/test/fuzzing/README.md
diff options
context:
space:
mode:
authorElizabeth Alexander Hunt <me@liz.coffee>2026-07-02 11:55:17 -0700
committerElizabeth Alexander Hunt <me@liz.coffee>2026-07-02 11:55:17 -0700
commit6bf4b90c90f15f4ab60833bddf5b5756d1a6b1f6 (patch)
treeed97e39ec77c5231ffd2c394493e68d00ddac5a4 /Homework/cs3460/rands/build/_deps/fmt-src/test/fuzzing/README.md
downloadmisc-undergrad-main.tar.gz
misc-undergrad-main.zip
Diffstat (limited to 'Homework/cs3460/rands/build/_deps/fmt-src/test/fuzzing/README.md')
-rw-r--r--Homework/cs3460/rands/build/_deps/fmt-src/test/fuzzing/README.md25
1 files changed, 25 insertions, 0 deletions
diff --git a/Homework/cs3460/rands/build/_deps/fmt-src/test/fuzzing/README.md b/Homework/cs3460/rands/build/_deps/fmt-src/test/fuzzing/README.md
new file mode 100644
index 0000000..bb3d0e0
--- /dev/null
+++ b/Homework/cs3460/rands/build/_deps/fmt-src/test/fuzzing/README.md
@@ -0,0 +1,25 @@
+# Running the fuzzers locally
+
+There is a [helper script](build.sh) to build the fuzzers, which has only been
+tested on Debian and Ubuntu linux so far. There should be no problems fuzzing on
+Windows (using clang>=8) or on Mac, but the script will probably not work out of
+the box.
+
+Something along
+```sh
+mkdir build
+cd build
+export CXX=clang++
+export CXXFLAGS="-fsanitize=fuzzer-no-link -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION= -g"
+cmake .. -DFMT_SAFE_DURATION_CAST=On -DFMT_FUZZ=On -DFMT_FUZZ_LINKMAIN=Off -DFMT_FUZZ_LDFLAGS="-fsanitize=fuzzer"
+cmake --build .
+```
+should work to build the fuzzers for all platforms which clang supports.
+
+Execute a fuzzer with for instance
+```sh
+cd build
+export UBSAN_OPTIONS=halt_on_error=1
+mkdir out_chrono
+bin/fuzzer_chrono_duration out_chrono
+```