Closed
Bug 933614
Opened 12 years ago
Closed 5 years ago
Add support for creating a GeckoView library project using mach
Categories
(Firefox for Android Graveyard :: General, defect)
Tracking
(Not tracked)
RESOLVED
INCOMPLETE
People
(Reporter: bnicholson, Unassigned)
References
Details
Attachments
(1 file)
8.99 KB,
patch
|
nalexander
:
feedback+
|
Details | Diff | Splinter Review |
Right now, GeckoView development requires several steps for testing any changes (building mobile/android, running `make -C <objdir>/mobile/android/geckoview_library`, and extracting the zip/assets). With a few modifications to `mach projectify`, we can make this workflow much simpler.
`mach projectify` already generates a complete live project for Fennec, and only minor changes are required to make that project an Android library:
* the project must be flagged as a library in the IDE
* the project must use a different AndroidManfest.xml
Reporter | ||
Comment 1•12 years ago
|
||
With this patch, including the --geckoview parameter will generate a live GeckoView project whose sources are symlinked directly to mobile/android/base, and no build commands need to be manually issued between changes. Since this uses projectify, this means we'll now support an IntelliJ-compatible GeckoView module.
This will eventually disappear since Fennec and GeckoView will be completely independent entities. For now, though, I think it helps make GeckoView development more sane. Nick is changing `mach projectify` quite a bit, so if we even want to go with this approach, it will need updating once bug 853045 lands. This is just an early attempt that works with the existing projectify patches.
Attachment #825748 -
Flags: feedback?(nalexander)
Comment 2•12 years ago
|
||
Comment on attachment 825748 [details] [diff] [review]
Add --geckoview parameter to projectify
Review of attachment 825748 [details] [diff] [review]:
-----------------------------------------------------------------
So, I can see where you are going with this, but I don't like how tied this is to the specifics of Fennec versus GeckoView. (Quelle surprise!) We're going to want to define additional library projects (for example, we might separate Sync or all of Background Services. Or WebRTC.) There's good work here, though: we need to be able to tell IDEs we're dealing with a library project. I'd like to see this go as follows:
1) the parameter to |projectify| is the source directory (mobile/android/base, mobile/android/geckoview_library)
2) the source directory's moz.build knows whether we're building a library project. (This could be tricky for geckoview_library at first, since it's a weird non-project directory that we still want to define a project.)
3) |projectify| determines whether to define a library project by interrogating the moz.build file.
4) we use ifdefs in build.xml and Project.iml to include the project line accordingly.
Still, I'm pleased at how straightforward this is. Have you looked at Bug 930072? It adds a GeckoView example project to the tree, and would want projectifying. Speaking of which, I owe blassey a review.
Attachment #825748 -
Flags: feedback?(nalexander) → feedback+
Reporter | ||
Updated•10 years ago
|
Assignee: bnicholson → nobody
Status: ASSIGNED → NEW
Comment 3•5 years ago
|
||
We have completed our launch of our new Firefox on Android. The development of the new versions use GitHub for issue tracking. If the bug report still reproduces in a current version of [Firefox on Android nightly](https://play.google.com/store/apps/details?id=org.mozilla.fenix) an issue can be reported at the [Fenix GitHub project](https://github.com/mozilla-mobile/fenix/). If you want to discuss your report please use [Mozilla's chat](https://wiki.mozilla.org/Matrix#Connect_to_Matrix) server https://chat.mozilla.org and join the [#fenix](https://chat.mozilla.org/#/room/#fenix:mozilla.org) channel.
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → INCOMPLETE
Assignee | ||
Updated•5 years ago
|
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•