Конфигурации продукта и платы определяют переменные Make, влияющие на сборку. Это отличается от файлов Android.mk, которые определяют правила Make. Make-файлы конфигурации продукта верхнего уровня определяются путем их добавления в PRODUCT_MAKEFILES
в файле AndroidProducts.mk
. Make-файлы конфигурации платы верхнего уровня называются BoardConfig.mk
и содержатся в папках, имена которых являются значением TARGET_DEVICE
.
Когда сборка запускается с RBC_PRODUCT_CONFIG
и/или RBC_BOARD_CONFIG
, эти файлы преобразуются в Starlark и выполняются интерпретатором Starlark, а не в Make.
Скрипт регрессионного тестирования
Сценарий регрессии rbc_regression_test.sh запускает сборку с автоконвертером Starlark и без него и сравнивает полученные файлы ninja — они должны быть идентичными.
Проблемы в файлах Makefile
Некоторые паттерны невозможно преобразовать из Make в Starlark, и их необходимо удалить или реорганизовать вручную. Этот процесс можно выполнить сейчас, чтобы быть готовым к тому, что преобразование Starlark будет включено по умолчанию. См. страницы в разделе «проблемы» на боковой панели, чтобы узнать о некоторых распространенных шаблонах и альтернативах.