This change adds a top-level build group for application images, as well
as documentation for the upstream GN build layout.
Change-Id: Ib559a9747e9758648cd97b5192126028a01526f2
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/13520
Commit-Queue: Alexei Frolov <frolv@google.com>
Reviewed-by: Armando Montanez <amontanez@google.com>
Reviewed-by: Rob Oliver <rgoliver@google.com>
This change replaces the implicit overrides of the default GN target
types in BUILDCONFIG.gn with explicit pw_* versions. This is done to
allow Pigweed to build within larger GN projects without modifying their
BUILDCONFIG files.
Change-Id: I1d1e41d5e9bde8fe076f7031f3c2b98b9630ff70
- Automatically add simple modules with pw_auto_add_simmple_module.
- Define libraries in a module with pw_add_module_library.
- Define tests and test groups with pw_add_test and
pw_add_test_to_groups.
- Tests execute with full Ninja dependency resolution, as in the GN
build.
- Add CMakeLists.txt for existing modules.
- Currently there is no support for targets, but these libraries would
be trivial to integrate with an existing CMake build.
Change-Id: If73d8b61bce88f91141737eb773f1ebce3a7676e
This change defines a template that allows listing input file
dependencies in a build target that does not output anything. This code
code was previously inlined in pw_docgen but is extracted into a general
template for use elsewhere.
The pw_build module docs are expanded to describe the GN templates
provided by the module.
Change-Id: I5f2624c792dccb47c379727285f22f05eb05dfdf