การกำหนดค่าผลิตภัณฑ์และบอร์ดด้วย Starlark

การกำหนดค่าผลิตภัณฑ์และบอร์ดกำหนดตัวแปร Make ที่ส่งผลต่อบิลด์ ซึ่งตรงกันข้ามกับไฟล์ Android.mk ซึ่งกำหนดกฎการสร้าง makefiles การกำหนดค่าผลิตภัณฑ์ระดับบนสุดถูกกำหนดโดยการเพิ่มลงใน PRODUCT_MAKEFILES ในไฟล์ AndroidProducts.mk makefiles การกำหนดค่าบอร์ดระดับบนสุดเรียกว่า BoardConfig.mk และอยู่ในโฟลเดอร์ที่มีชื่อเป็นค่าของ TARGET_DEVICE

เมื่อบิลด์รันด้วย RBC_PRODUCT_CONFIG และ/หรือชุด RBC_BOARD_CONFIG ไฟล์เหล่านี้จะถูกแปลงเป็น Starlark และดำเนินการโดยล่าม Starlark แทนที่จะดำเนินการใน Make

สคริปต์การทดสอบการถดถอย

สคริปต์การถดถอย rbc_regression_test.sh รันบิลด์ที่มีและไม่มีตัวแปลงอัตโนมัติของ Starlark และเปรียบเทียบไฟล์นินจาที่ได้ ซึ่งควรจะเหมือนกัน

ปัญหาใน Makefiles

รูปแบบบางอย่างไม่สามารถแปลงจาก Make เป็น Starlark ได้ และจะต้องลบออกหรือปรับโครงสร้างใหม่ด้วยตนเอง กระบวนการนี้สามารถทำได้ทันที เพื่อให้พร้อมสำหรับการเปิดใช้การแปลง Starlark ตามค่าเริ่มต้น ดูหน้าต่างๆ ใต้ส่วน "ปัญหา" ในแถบด้านข้างเพื่อดูรูปแบบและทางเลือกอื่นๆ ทั่วไป