Product and Board configurations define Make variables that affect the build.
This is in contrast to Android.mk files, which define Make rules. The top-level
product configuration makefiles are defined by adding them to
PRODUCT_MAKEFILES in an
AndroidProducts.mk file. Top-level board config
makefiles are called
BoardConfig.mk and contained in folders whose names are
the value of
When the build is run with
these files are converted to Starlark and executed by the Starlark interpreter
instead of executing them in Make.
Regression testing script
The regression script rbc_regression_test.sh runs the build with and without the Starlark auto-converter and compares the resulting ninja files -- they should be identical.
Issues in Makefiles
Some patterns can't be converted from Make to Starlark, and must be manually removed or refactored. This process can be done now, in order to be ready for when Starlark conversion is enabled by default. See the pages under the "issues" section in the sidebar for some common patterns and alternatives.