Closed Bug 1453417 Opened 6 years ago Closed 6 years ago

Generate JNI wrapper and SDK binding using Gradle

Categories

(Firefox Build System :: Android Studio and Gradle Integration, enhancement)

enhancement
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: nalexander, Assigned: nalexander)

References

Details

This ticket tracks integrating the JNI wrapper and SDK binding generation into the Gradle build system flow.  It's tricky due to a fundamental ordering issue:

1) the generated .h files are needed at the time the export tier runs, since they are exported

2) to generate the .h files, we need to have built the Java source code in order to have collected the relevant annotations

My expectation is that using Make dependencies so that this actually works, and the Java source code is compiled before the export tier, will be fine.  Yes, it means that Java compilation happens really early... but that's probably _good_ for GeckoView developers, who are more likely to see failed builds due to Java issues early in the build process.  It's at least not _bad_, as far as I can tell.

This is part of a general build system push to not check generated resources into the source tree (in the case of the generated JNI wrappers), and also a general desire to make working with the generated JNI wrappers more pleasant (in particular in Android Studio).
Depends on: 1444546
I did this as part of Bug 1444546.
Assignee: nobody → nalexander
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Product: Firefox for Android → Firefox Build System
You need to log in before you can comment on or make changes to this bug.