Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
git: workaround new requirement to use common-main
Due to upstream changes, the Git fuzzers must now link against common-main.o; however, this breaks the build in two ways: 1) Linking with common-main.o causes main() to have multiple definitions, one in common-main.o and one from the fuzzing engine. 2) To avoid google#1, the Git Makefile specifically excludes common-main.o from the fuzzer build rule. To work around these issues, we can override FUZZ_CXXFLAGS (add "-Wl,--allow-multiple-definition" to fix google#1) and LIB_FUZZING_ENGINE (add "common-main.o" to fix google#2). Once we can get a Makefile fix into Git's upstream, we can remove the override for LIB_FUZZING_ENGINE. However, this change causes `check_build` to fail for honggfuzz, and we have not yet been able to diagnose the reason. So for now, we also need to limit our engines to afl and libfuzzer.
- Loading branch information