Konfigurasi produk dan papan dengan Starlark

Konfigurasi Produk dan Papan menentukan variabel Make yang memengaruhi build. Hal ini berbeda dengan file Android.mk, yang menentukan aturan Make. Makefile konfigurasi produk tingkat atas ditentukan dengan menambahkannya ke PRODUCT_MAKEFILES dalam file AndroidProducts.mk . Makefile konfigurasi papan tingkat atas disebut BoardConfig.mk dan terdapat dalam folder yang namanya merupakan nilai TARGET_DEVICE .

Ketika build dijalankan dengan set RBC_PRODUCT_CONFIG dan/atau RBC_BOARD_CONFIG , file-file ini dikonversi ke Starlark dan dieksekusi oleh penerjemah Starlark alih-alih mengeksekusinya di Make.

Skrip pengujian regresi

Skrip regresi rbc_regression_test.sh menjalankan build dengan dan tanpa konverter otomatis Starlark dan membandingkan file ninja yang dihasilkan -- file tersebut harus identik.

Masalah di Makefiles

Beberapa pola tidak dapat dikonversi dari Make ke Starlark, dan harus dihapus atau difaktorkan ulang secara manual. Proses ini dapat dilakukan sekarang, agar siap ketika konversi Starlark diaktifkan secara default. Lihat halaman di bawah bagian "masalah" di sidebar untuk mengetahui beberapa pola umum dan alternatif.