Pigweed’s modules aim to be easily integratable into both new and existing
embedded projects. To that goal, the
pw_build module provides support for
multiple build systems. Our personal favorite is GN/Ninja, which is used
by upstream developers for its speed and flexibility. CMake and Bazel
build files are also provided by all modules, allowing Pigweed to be added to a
project with minimal effort.
Beyond just compiling code, Pigweed’s GN build system can also:
Generate HTML documentation, via our Sphinx integration (with
Display memory usage report cards (with
Incrementally run unit tests after code changes (with
These are only supported in the GN build, so we recommend using it if possible.