Bazel
summary
Claims Bazel scales large Android and iOS mono-repos and often outperforms Gradle/xcodebuild by using reproducible Starlark config, parallel configuration, and ABI/header extraction to compile against tiny interfaces while modules compile in parallel. Example: a 1.3k-module repo faces ~one minute Gradle project configuration; Bazel caches and skips configuration instead. Tools: buildifier/buildozer for mass refactoring, persistent workers to avoid JVM startup, CLI query language, IDE plugin, and support for remote caching/remote execution.
AI-written summary · about
chapters (11)
- 0:00Introduction to Bazel
- 1:58Build system use cases
- 3:01Bazel configuration overview
- 8:18Starlark language and evaluation
- 14:12Starlark language details
- 22:57Starlark for multi-module projects
- 26:08Bazel tooling and maintainability
- 28:15Bazel execution and commands
- 31:24Incremental builds and ABI extraction
- 38:21Bazel optimizations and integrations
- 42:11Q&A and summary
related talks
48mBazel for Android Development
43mBoosting Bazel adoption on Android with automation
41mBazel on Android: The Good, The Bad and The Ugly
17mGrazel - A Gradle plugin to automate Bazel migration for Android projects
39mAutomated migration of Android apps to Bazel build system
01h 12mBazel for Android Developers
41mDo You Need Bazel in Android Development?
01h 00mAndroid builds
