
(Foto: Asif Islam / shutterstock)
Google hat Bazel erstmals 2015 vorgestellt. Es wurde ursprünglich als internes Projekt für seine riesigen und verteilten Quellcode-Repositories entwickelt. Für das hauptsächlich in Java geschriebene Android werden sehr oft Ant, Gradle oder Maven genutzt. Für Projekte in C und C++, die Android ebenso nutzt, kommen oft Make beziehungsweise CMake zum Einsatz.
Android hat sehr lange auf klassische Make-Files gesetzt und mit Android 7 damit begonnen, diese durch Soong und Ninja zu ersetzen. Ninja wird etwa auch im Chromium-Projekt genutzt. Von der Nutzung von Bazel für Android erhofft sich Google vor allem eine höhere Flexibilität im Build-Prozess sowie ein besseres Verständnis über laufende Build-Vorgänge und deren Abhängigkeiten. Darüber hinaus soll die Konfiguration weniger komplex werden. Google hofft außerdem, dank Bazel reproduzierbare Builds von Android erstellen zu können, was ein größeres Vertrauen in die Builds schaffen kann.
Die Migrationsphase hin zu Bazel will Google über die kommenden Android-Versionen verteilen und in „verdaubare Meilensteine“ aufteilen. Der erste Schritt ist dabei die Aufnahme von Bazel in den Android-Code. Eine direkte Auswirkung auf den Android-Build soll es trotz des angekündigten Wechsels jedoch weder in diesem Jahr noch im Jahr 2021 geben.
Autor des Artikels ist Sebastian Grüner.