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 #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#1) and LIB_FUZZING_ENGINE (add
"common-main.o" to fix#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.
* [presubmit] Enforce language attribute in projectt.yaml to be always set.
* Update documentation, better presubmit check, new project template.
* add docstring to templates.py
* Add example values in the project.yaml template and remove python value for now
* Add "project: c++" to 256 projects
* format
* Add labels and selective_unpack sections to the presubmit check
* fix incorrect auto_ccs format in three projects
* fix nss emails after rebase