tests/fuzzers: link fuzz binaries using $LIB_FUZZING_ENGINE. (#1230)
authorMax Moroz <dor3s1@gmail.com>
Mon, 13 Jan 2020 17:07:54 +0000 (09:07 -0800)
committerEven Rouault <even.rouault@spatialys.com>
Mon, 13 Jan 2020 17:07:54 +0000 (18:07 +0100)
commitb63a433ba168bad5fa10e83de04d6305e6a222e2
tree92643ba25dd5f32412c011770c727a4aeeab57ca
parent46c1eff9e98bbcf794d042f7b2e3d45556e805ce
tests/fuzzers: link fuzz binaries using $LIB_FUZZING_ENGINE. (#1230)

This was changed some time ago (https://google.github.io/oss-fuzz/getting-started/new-project-guide/) but the build didn't fail as there is a fallback mechanism. The main advantage of the new approach is that for libFuzzer this produces more performant binaries (as `$LIB_FUZZING_ENGINE` expands into `-fsanitize=fuzzer`, which links libFuzzer from the compiler-rt, allowing better optimization tricks).

I'm also experimenting with dataflow (https://github.com/google/oss-fuzz/issues/1632) on your project, and the dataflow config doesn't have a fallback (as it's a new configuration), therefore I'm proposing a change to migrate from `-lFuzzingEngine` to `$LIB_FUZZING_ENGINE`.
tests/fuzzers/GNUmakefile
tests/fuzzers/build_google_oss_fuzzers.sh