summaryrefslogtreecommitdiff
path: root/Documentation/AdvancedBuildInstructions.md
AgeCommit message (Collapse)Author
2021-09-27Documentation: Add build file copy instructionEdward Palmer
2021-09-15Documentation: Document new SuperBuild build infrastructureAndrew Kaster
Add additional clarification for the CMake cache, and add missing extra targets as well.
2021-08-08Documentation: Add explanation for the Clang-based toolchainDaniel Bertalan
2021-07-26Kernel: Add option to build with coverage instrumentation and KCOVPatrick Meyer
GCC and Clang allow us to inject a call to a function named __sanitizer_cov_trace_pc on every edge. This function has to be defined by us. By noting down the caller in that function we can trace the code we have encountered during execution. Such information is used by coverage guided fuzzers like AFL and LibFuzzer to determine if a new input resulted in a new code path. This makes fuzzing much more effective. Additionally this adds a basic KCOV implementation. KCOV is an API that allows user space to request the kernel to start collecting coverage information for a given user space thread. Furthermore KCOV then exposes the collected program counters to user space via a BlockDevice which can be mmaped from user space. This work is required to add effective support for fuzzing SerenityOS to the Syzkaller syscall fuzzer. :^) :^)
2021-07-12Meta+CI: Use wabt version 1.0.23 for all CI jobsAndrew Kaster
The WASM spec tests caused a stack overflow when generated with wat2wasm version 1.0.23, which ships with homebrew. To give feature parity, manually download the same version from GitHub packages for Ubuntu. Document the dependencies of the WASM spec tests option, as well.
2021-07-12Documentation: Condense the Windows build instructions some moreGunnar Beutner
2021-07-12Documentation: Remove obsolete CMake optionGunnar Beutner
2021-07-12Documentation: Show users how to build specific ninja targets directlyGunnar Beutner
2021-07-10Documentation: Reorganize the build documentationGunnar Beutner