Conversation

Replying to
The Android Open Source Project builds everything including apps with ninja. The modern approach is the declarative Blueprint system. The legacy approach is the template-based Android.mk build system which was the basis for Blueprint. It's far nicer than gradle...
2
Replying to and
Kati is a reimplementation of GNU make into ninja. AOSP incorporates it in a way that's interoperable with the new declarative Blueprint build system. The old approach was essentially a poor man's declarative build system. The usage is very similar to how they use Blueprint.
2
Replying to and
We are getting around this by just reimplementing the gradle scripts in tup but if I could use this new system to import Oculus's android.mk scripts, while still getting to use a modern/functional build system for the main part of our app that would be great
1
Replying to
The Android NDK uses a build system inspired by the old Android Open Source Project build system. It's not quite the same but it uses the same format and most of the same variables for the templates. Android Studio and the SDK took a much different path than AOSP itself though.
Replying to
Oh, I see. So you're talking about AOSP, ie, developing Android itself, rather than developing apps *for* Android? I guess I should have read your documentation before asking questions lol maybe it would have made that clear
1
Replying to
Yeah, I'm talking about building AOSP. AOSP is largely implemented via a bunch of app-based components though. Many of those are regular apps without any special privileges. It builds the apps using the normal Android.bp (or legacy Android.mk) build system.
Replying to and
Android Studio / Android SDK wanted to fit into the broader Java ecosystem and tried to make things work the way Java and Kotlin developers expect. I really don't like it. I find it really hard to get anything done vs the AOSP's new build system being the best I've worked with.
1
Show replies