Skip to main content

Other build systems

CI Fuzz generally supports several other build systems for C/C++ by allowing you to configure build-commands that enable your project to build the Fuzz Tests properly.

C/C++ projects on Windows are only supported with CMake.

Initialize a project

Initialize CI Fuzz in the root directory of your project with the following command:

cifuzz init

In the generated cifuzz.yaml, set the build-system option to other:

build-system: other

build-command and clean-command

When you set the build-system to other, CI Fuzz uses the clean-command and build-command configurations in cifuzz.yaml.

The clean-command is executed once before building the Fuzz Tests for a given build variant. This keeps shared dependencies from having to be rebuilt for each Fuzz Test.

Below is an example for a Makefile:

clean-command: make clean
build-command: make $FUZZ_TEST

Example Projects