summaryrefslogtreecommitdiffstats
path: root/mobile/android/docs/geckoview
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-12 05:35:29 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-12 05:35:29 +0000
commit59203c63bb777a3bacec32fb8830fba33540e809 (patch)
tree58298e711c0ff0575818c30485b44a2f21bf28a0 /mobile/android/docs/geckoview
parentAdding upstream version 126.0.1. (diff)
downloadfirefox-59203c63bb777a3bacec32fb8830fba33540e809.tar.xz
firefox-59203c63bb777a3bacec32fb8830fba33540e809.zip
Adding upstream version 127.0.upstream/127.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'mobile/android/docs/geckoview')
-rw-r--r--mobile/android/docs/geckoview/contributor/contributing-to-mc.rst1
-rw-r--r--mobile/android/docs/geckoview/contributor/geckoview-quick-start.rst136
2 files changed, 5 insertions, 132 deletions
diff --git a/mobile/android/docs/geckoview/contributor/contributing-to-mc.rst b/mobile/android/docs/geckoview/contributor/contributing-to-mc.rst
index ee4f5be877..fa92a3466d 100644
--- a/mobile/android/docs/geckoview/contributor/contributing-to-mc.rst
+++ b/mobile/android/docs/geckoview/contributor/contributing-to-mc.rst
@@ -11,6 +11,7 @@ Table of contents
Submitting a patch to Firefox using Git.
========================================
+.. _contribute_with_git:
This guide will take you through submitting and updating a patch to
``mozilla-central`` as a git user. You need to already be `set up to use
diff --git a/mobile/android/docs/geckoview/contributor/geckoview-quick-start.rst b/mobile/android/docs/geckoview/contributor/geckoview-quick-start.rst
index 140dd62784..d111f54b01 100644
--- a/mobile/android/docs/geckoview/contributor/geckoview-quick-start.rst
+++ b/mobile/android/docs/geckoview/contributor/geckoview-quick-start.rst
@@ -19,141 +19,13 @@ project. If you want to get started using GeckoView in your app then you
should refer to the
`wiki <https://wiki.mozilla.org/Mobile/GeckoView#Get_Started>`_.
-Get set up with Mozilla Central
--------------------------------
-
-The GeckoView codebase is part of the main Firefox tree and can be found
-in ``mozilla-central``. You will need to get set up as a contributor to
-Firefox in order to contribute to GeckoView. To get set up with
-``mozilla-central``, follow the `Quick Start Guide for Git
-Users <mc-quick-start.html>`_, or the `Contributing to the Mozilla code
-base <https://firefox-source-docs.mozilla.org/setup/contributing_code.html>`_
-guide and `Firefox Contributors’ Quick Reference
-<https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html>`_
-for Mercurial users.
-
-Once you have a copy of ``mozilla-central``, you will need to build
-GeckoView.
-
-Bootstrap Gecko
----------------
-
-Bootstrap configures everything for GeckoView and Fennec (Firefox for Android) development.
-
-- Ensure you have ``mozilla-central`` checked out. If this is the first
- time you are doing this, it may take some time.
-
-.. code:: bash
-
- git checkout central/default
-
-If you are on a mac, you will need to have the Xcode build tools
-installed. You can do this by either `installing
-Xcode <https://developer.apple.com/xcode/>`__ or installing only the
-tools from the command line by running ``xcode-select --install`` and
-following the on screen instructions.
-
-You will need to ``bootstrap`` for GeckoView/Firefox for Android. The easiest way is to run the following command:
-
-.. code:: bash
-
- ./mach --no-interactive bootstrap --application-choice="GeckoView/Firefox for Android"
-
-.. note::
-
- - The ``--no-interactive`` argument will make ``bootstrap`` run start to finish without requiring any input from you. It will automatically accept any license agreements.
- - The ``--application-choice="GeckoView/Firefox for Android"`` argument is needed when using ``--no-interactive`` so that "bootstrapping" is done for the correct application (instead of the default).
-
- If you want to make all the selections yourself and/or read through the license agreements, you can simply run:
-
- .. code:: bash
-
- ./mach bootstrap
-
- Select ``4. GeckoView/Firefox for Android`` when prompted and respond to any subsequent prompts as they appear.
-
-Once ``./mach bootstrap`` is complete, it will automatically write
-the configuration into a new ``mozconfig`` file. If you already
-have a ``mozconfig``, ``mach`` will instead output new configuration
-that you should append to your existing file.
-
-Build from the command line
----------------------------
-
-In order to pick up the configuration changes we just made we need to
-build from the command line. This will update generated sources, compile
-native code, and produce GeckoView AARs and example and test APKs.
-
-.. code:: bash
-
- ./mach build
-
-Build Using Android Studio
---------------------------
-
-- Install `Android
- Studio <https://developer.android.com/studio/install>`_.
-- Choose File->Open from the toolbar
-- Navigate to the root of your ``mozilla-central`` source directory and
- click “Open”
-- Click yes if it asks if you want to use the gradle wrapper.
-
- - If the gradle sync does not automatically start, select File >
- Sync Project with Gradle Files.
-
-- Wait for the project to index and gradle to sync. Once synced, the
- workspace will reconfigure to display the different projects.
-
- - annotations contains custom Java annotations used inside GeckoView
- - app contains geckoview build settings and omnijar. omnijar contains
- the parts of Gecko and GeckoView that are not written in Java or Kotlin
- - geckoview is the GeckoView project. Here is all the Java files
- related to GeckoView
- - geckoview_example is an example browser built using GeckoView.
-
- |alt text 1|
-
-Now you’re set up and ready to go.
-
-**Important: at this time, building from Android Studio or directly from
-Gradle does not (re-)compile native code, including C++ and Rust.** This
-means you will need to run ``mach build`` yourself to pick up changes to
-native code. `Bug
-1509539 <https://bugzilla.mozilla.org/show_bug.cgi?id=1509539>`_ tracks
-making Android Studio and Gradle do this automatically.
-
-If you want set up code formatting for Kotlin, please reference
-`IntelliJ IDEA configuration
-<https://pinterest.github.io/ktlint/rules/configuration-intellij-idea/>`_.
-
-Custom mozconfig with Android Studio
-------------------------------------
-
-Out of the box, Android Studio will use the default mozconfig file, normally
-located at ``mozconfig`` in the root directory of your ``mozilla-central``
-checkout.
-
-To make Android Studio use a mozconfig in a custom location, you can add the
-following to your ``local.properties``:
-
-::
-
- mozilla-central.mozconfig=relative/path/to/mozconfig
-
-Note that, when running mach from the command line, this value will be ignored,
-and the mozconfig from the mach environment will be used instead.
-
-To override the mozconfig used by mach, you can use the `MOZCONFIG` environment
-variable, for example:
-
-::
-
- MOZCONFIG=debug.mozconfig ./mach build
-
Performing a bug fix
--------------------
-One you have got GeckoView building and running, you will want to start
+As a first step, you need to set up :ref:`mozilla-central <mozilla-central-setup>`,
+and :ref:`Bootstrap <bootstrap-setup>` and build the project.
+
+Once you have got GeckoView building and running, you will want to start
contributing. There is a general guide to `Performing a Bug Fix for Git
Developers <contributing-to-mc.html>`_ for you to follow. To contribute to
GeckoView specifically, you will need the following additional