New AOSP Branch Details Potential Build System Upgrades?
While there are frequent unexplained changes and pushes to Google’s AOSP repositories, an interesting-looking new branch has been pushed out recently, called “master-soong”. Taking a look at the changes made to the manifest repository (which is used to specify the repositories to be downloaded when building Android), it appears there are some new repositories making an appearance.
Of note here are new prebuilt repositories for Go, and Ninja. Go is a programming language, created by Google, which compiles to produce native code, yet has many features which make it easier to use than the traditional natively compiled languages (such as C).
Ninja is a make replacement, by a Googler, for controlling the compilation of source code. Currently, Android is built using the make system. Interestingly, Chromium already uses the Ninja build system, and it appears there are many performance benefits in using Ninja for large projects.
Either way, we cannot be sure what is going on here, but it certainly looks like the “soong” part of the branch could be related to the use of Ninja and Go (hence ending in -ng). Quite what soong stands for, we can’t be sure, but it certainly looks like there could be some interesting changes afoot.
Compiling AOSP is already a long process, and any efforts to speed that up will be beneficial for custom ROM developers. We can only hope that any upcoming build system is better documented than the old one, to make it easier for developers to modify and extend, to fix the parts of Android that Google refuse to fix, and cause users to use custom ROMs.
What do you think? The newly added repositories are all currently empty, but everything looks to point towards some fairly large potential changes in the build system.
Thanks go to XDA Senior Recognized Developer, XpLoDWilD, who spotted this in AOSP.