Full Bazel support
Pigweed has full support for Bazel.
Bazel integration guide
Learn how to use Pigweed in an existing Bazel project.
Bazel quickstart
A minimal Bazel-based starter project for creating new Pigweed projects.
Bazel Support
Supports the Bazel build system for hermetic builds and dependency management.
Build systems support
Supports Bazel, GN, and CMake as primary build systems, with Soong optional.
C/C++ API references
API references for over 50 Pigweed modules.
CMake integration guide
Learn how to use Pigweed in an existing CMake project.
Partial CMake support
Pigweed has partial support for CMake.
CMake Support
Contributing guide
A guide for contributing to the Pigweed project, covering setup, code review, and merging.
Extensible target system
Pigweed's GN build includes an extensible target system allowing configuration for multiple platforms.
Facade backends
Pigweed defines facades for core system features with selectable backends.
Facades and Backends
Key architectural concept for portability and customization.
Gerrit code review
Uses Gerrit for code review, with a read-only GitHub mirror.
Partial GN support
Pigweed has partial support for GN.
GN Python build
Details on Pigweed's custom GN-based build system for managing Python code.
GN support
Extensive support for GN, though expected to decline.
Hierarchical target structure
Targets can be composed of other toolchains, enabling hierarchical configurations.
Embedded development libraries
Optimized for resource-constrained hardware, battle-tested in millions of devices.
Toolchain target variables
Core toolchain variables like ar, cc, cxx and defaults scope for build arguments.