Skip to content

oss-fuzz: added no-fuzz target / updated build command to match actual flags#6060

Merged
chrchr-github merged 1 commit into
cppcheck-opensource:mainfrom
firewave:no-fuzz
Mar 6, 2024
Merged

oss-fuzz: added no-fuzz target / updated build command to match actual flags#6060
chrchr-github merged 1 commit into
cppcheck-opensource:mainfrom
firewave:no-fuzz

Conversation

@firewave

Copy link
Copy Markdown
Collaborator

No description provided.

@firewave

firewave commented Feb 28, 2024

Copy link
Copy Markdown
Collaborator Author

Having an executable without the fuzzing makes it easier to debug things. I had several issues reproducing crashes with the production binary so this should help to figure out what is different.

This will also allow us to profile the binary used for fuzzing and make it more performant. We can even use the FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION define (which is specified by OSS-Fuzz) to disable parts of the code which might impact that.

The Makefile actually has many shortcomings. -j does not work because we specify all files in one command and we also do not use the matchcompiler. Since no object files are being stored it will also always compile the whole source which makes things very tedious if you are using it locally. We should probably have a Makefile based on the actual one also generate by dmake. I have a prototype of that locally but it is not ready yet.

@firewave firewave force-pushed the no-fuzz branch 2 times, most recently from 261f29a to fe0ebd5 Compare March 6, 2024 02:22
@firewave firewave marked this pull request as draft March 6, 2024 02:27
@firewave firewave marked this pull request as ready for review March 6, 2024 03:16
@chrchr-github chrchr-github merged commit ca47f54 into cppcheck-opensource:main Mar 6, 2024
@firewave firewave deleted the no-fuzz branch March 6, 2024 10:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants