summaryrefslogtreecommitdiffstats
path: root/mobile/android/moz.build
diff options
context:
space:
mode:
Diffstat (limited to 'mobile/android/moz.build')
-rw-r--r--mobile/android/moz.build90
1 files changed, 90 insertions, 0 deletions
diff --git a/mobile/android/moz.build b/mobile/android/moz.build
new file mode 100644
index 0000000000..689ec82933
--- /dev/null
+++ b/mobile/android/moz.build
@@ -0,0 +1,90 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+with Files("**"):
+ BUG_COMPONENT = ("GeckoView", "General")
+ SCHEDULES.exclusive = ["android"]
+
+with Files("geckoview_example/**"):
+ BUG_COMPONENT = ("GeckoView", "GeckoViewExample")
+
+# The recursive make backend treats the first output specially: it's passed as
+# an open FileAvoidWrite to the invoked script. That doesn't work well with
+# the Gradle task that generates all of the outputs, so we add a dummy first
+# output.
+t = ("android_apks",)
+
+GENERATED_FILES += [t]
+GENERATED_FILES[t].force = True
+GENERATED_FILES[t].script = "/mobile/android/gradle.py:assemble_app"
+
+# The Android APKs are assembled in the `export` tier, which usually occurs
+# before the following files are generated. However, mechanisms in `recurse.mk`
+# are used to pull the generated files into the `pre-export` tier, so do not
+# require an explicit dependency here.
+config_keys = (
+ "MOZ_ANDROID_CONTENT_SERVICE_COUNT",
+ "MOZ_ANDROID_CONTENT_SERVICE_ISOLATED_PROCESS",
+)
+flags = ["%s=%s" % (k, CONFIG[k] if CONFIG[k] else "") for k in config_keys]
+
+GeneratedFile(
+ ("geckoview/src/main/AndroidManifest_overlay.xml",),
+ script="gen_from_jinja.py",
+ inputs=["geckoview/src/main/AndroidManifest_overlay.jinja"],
+ flags=flags,
+)
+
+GeneratedFile(
+ (
+ "geckoview/src/main/java/org/mozilla/gecko/process/GeckoChildProcessServices.java",
+ ),
+ script="gen_from_jinja.py",
+ inputs=[
+ "geckoview/src/main/java/org/mozilla/gecko/process/GeckoChildProcessServices.jinja"
+ ],
+ flags=flags,
+)
+
+GeneratedFile(
+ ("geckoview/src/main/java/org/mozilla/gecko/util/XPCOMError.java",),
+ script="/xpcom/base/ErrorList.py",
+ entry_point="gen_jinja",
+ inputs=["geckoview/src/main/java/org/mozilla/gecko/util/XPCOMError.jinja"],
+)
+
+CONFIGURE_SUBST_FILES += ["installer/Makefile"]
+
+DIRS += [
+ "../locales",
+ "locales",
+]
+
+DIRS += [
+ "actors",
+ "chrome",
+ "components",
+ "modules",
+ "themes/geckoview",
+ "geckoview/src/androidTest/assets",
+ "app",
+ "fonts",
+]
+
+TEST_HARNESS_FILES.testing.mochitest.tests.junit += [
+ "geckoview/src/androidTest/assets/www/forms_iframe.html",
+ "geckoview/src/androidTest/assets/www/forms_xorigin.html",
+ "geckoview/src/androidTest/assets/www/hello.html",
+ "geckoview/src/androidTest/assets/www/hsts_header.sjs",
+ "geckoview/src/androidTest/assets/www/iframe_http_only.html",
+ "geckoview/src/androidTest/assets/www/simple_redirect.sjs",
+ "geckoview/src/androidTest/assets/www/update_manifest.json",
+]
+
+SPHINX_TREES["/mobile/android"] = "docs"
+
+with Files("docs/**"):
+ SCHEDULES.exclusive = ["docs"]