summaryrefslogtreecommitdiffstats
path: root/mobile/android/installer
diff options
context:
space:
mode:
Diffstat (limited to 'mobile/android/installer')
-rw-r--r--mobile/android/installer/Makefile.in68
-rw-r--r--mobile/android/installer/allowed-dupes.mn28
-rw-r--r--mobile/android/installer/mobile-l10n.js9
-rw-r--r--mobile/android/installer/moz.build8
-rw-r--r--mobile/android/installer/package-manifest.in219
-rw-r--r--mobile/android/installer/removed-files.in3
6 files changed, 335 insertions, 0 deletions
diff --git a/mobile/android/installer/Makefile.in b/mobile/android/installer/Makefile.in
new file mode 100644
index 0000000000..5920b7a4b2
--- /dev/null
+++ b/mobile/android/installer/Makefile.in
@@ -0,0 +1,68 @@
+# 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/.
+
+STANDALONE_MAKEFILE := 1
+
+# overwrite mobile-l10n.js with a matchOS=true one for multi-locale builds
+ifeq ($(AB_CD),multi)
+L10N_PREF_JS_EXPORTS = $(srcdir)/mobile-l10n.js
+L10N_PREF_JS_EXPORTS_PATH = $(FINAL_TARGET)/$(PREF_DIR)
+L10N_PREF_JS_EXPORTS_FLAGS = $(PREF_PPFLAGS) --silence-missing-directive-warnings
+PP_TARGETS += L10N_PREF_JS_EXPORTS
+endif
+
+include $(topsrcdir)/config/rules.mk
+
+MOZ_PKG_REMOVALS = $(srcdir)/removed-files.in
+
+MOZ_PKG_MANIFEST = $(srcdir)/package-manifest.in
+MOZ_PKG_DUPEFLAGS = -f $(srcdir)/allowed-dupes.mn
+
+DEFINES += -DPKG_LOCALE_MANIFEST=$(topobjdir)/mobile/android/installer/locale-manifest.in
+MOZ_CHROME_LOCALE_ENTRIES=@BINPATH@/chrome/
+
+DEFINES += \
+ -DMOZ_APP_NAME=$(MOZ_APP_NAME) \
+ -DPREF_DIR=$(PREF_DIR) \
+ -DJAREXT= \
+ -DMOZ_CHILD_PROCESS_NAME=$(MOZ_CHILD_PROCESS_NAME) \
+ -DANDROID_CPU_ARCH=$(ANDROID_CPU_ARCH) \
+ $(NULL)
+
+ifdef MOZ_DEBUG
+DEFINES += -DMOZ_DEBUG=1
+endif
+
+ifdef MOZ_ANDROID_EXCLUDE_FONTS
+DEFINES += -DMOZ_ANDROID_EXCLUDE_FONTS=1
+endif
+
+ifdef MOZ_ARTIFACT_BUILDS
+DEFINES += -DMOZ_ARTIFACT_BUILDS=1
+endif
+
+MOZ_PKG_DIR = geckoview
+
+ifdef MOZ_ANDROID_FAT_AAR_ARCHITECTURES
+DEFINES += -DMOZ_ANDROID_FAT_AAR_ARCHITECTURES=1
+endif
+
+include $(topsrcdir)/toolkit/mozapps/installer/packager.mk
+
+ifeq (Darwin,$(OS_TARGET))
+BINPATH = $(_BINPATH)
+DEFINES += -DAPPNAME=$(_APPNAME)
+else
+# Every other platform just winds up in dist/bin
+BINPATH = bin
+endif
+DEFINES += -DBINPATH=$(BINPATH)
+
+ifdef ENABLE_WEBDRIVER
+DEFINES += -DENABLE_WEBDRIVER=1
+endif
+
+ifdef MOZ_CLANG_RT_ASAN_LIB_PATH
+DEFINES += -DMOZ_CLANG_RT_ASAN_LIB=$(notdir $(MOZ_CLANG_RT_ASAN_LIB_PATH))
+endif
diff --git a/mobile/android/installer/allowed-dupes.mn b/mobile/android/installer/allowed-dupes.mn
new file mode 100644
index 0000000000..1b9a92e058
--- /dev/null
+++ b/mobile/android/installer/allowed-dupes.mn
@@ -0,0 +1,28 @@
+# Known duplicate files
+# This file is ideally removed, but some existing files will be grandfathered in
+# See bug 1303184
+#
+# PLEASE DO NOT ADD MORE EXCEPTIONS TO THIS LIST
+#
+
+# Row and column icons are duplicated
+res/table-remove-column-active.gif
+res/table-remove-row-active.gif
+res/table-remove-column-hover.gif
+res/table-remove-row-hover.gif
+res/table-remove-column.gif
+res/table-remove-row.gif
+
+res/multilocale.txt
+update.locale
+
+#ifdef MOZ_ANDROID_FAT_AAR_ARCHITECTURES
+defaults/pref/arm64-v8a/geckoview-prefs.js
+defaults/pref/armeabi-v7a/geckoview-prefs.js
+defaults/pref/x86/geckoview-prefs.js
+defaults/pref/x86_64/geckoview-prefs.js
+arm64-v8a/greprefs.js
+armeabi-v7a/greprefs.js
+x86/greprefs.js
+x86_64/greprefs.js
+#endif # MOZ_ANDROID_FAT_AAR_ARCHITECTURES
diff --git a/mobile/android/installer/mobile-l10n.js b/mobile/android/installer/mobile-l10n.js
new file mode 100644
index 0000000000..20ddbeb819
--- /dev/null
+++ b/mobile/android/installer/mobile-l10n.js
@@ -0,0 +1,9 @@
+/* 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/. */
+
+// This pref is in its own file for complex reasons. See bug 1428099 for
+// details. Do not add other prefs to this file.
+
+// Inherit locale from the OS, used for multi-locale builds
+pref("intl.locale.requested", "");
diff --git a/mobile/android/installer/moz.build b/mobile/android/installer/moz.build
new file mode 100644
index 0000000000..2d4f67a08b
--- /dev/null
+++ b/mobile/android/installer/moz.build
@@ -0,0 +1,8 @@
+# -*- 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")
diff --git a/mobile/android/installer/package-manifest.in b/mobile/android/installer/package-manifest.in
new file mode 100644
index 0000000000..08361b8870
--- /dev/null
+++ b/mobile/android/installer/package-manifest.in
@@ -0,0 +1,219 @@
+; 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/.
+
+; Package file for the Fennec build.
+;
+; File format:
+;
+; [] designates a toplevel component. Example: [xpcom]
+; - in front of a file specifies it to be removed from the destination
+; * wildcard support to recursively copy the entire directory
+; ; file comment
+;
+
+#filter substitution
+
+[@AB_CD@]
+@BINPATH@/@PREF_DIR@/mobile-l10n.js
+@BINPATH@/update.locale
+#ifdef MOZ_UPDATER
+@BINPATH@/updater.ini
+#endif
+@BINPATH@/dictionaries/*
+@BINPATH@/hyphenation/*
+@BINPATH@/localization/*
+
+[lib destdir="lib/@ANDROID_CPU_ARCH@"]
+
+#ifdef MOZ_CLANG_RT_ASAN_LIB
+@BINPATH@/@MOZ_CLANG_RT_ASAN_LIB@
+#endif
+
+#ifndef MOZ_STATIC_JS
+@BINPATH@/@DLL_PREFIX@mozjs@DLL_SUFFIX@
+#endif
+#ifdef MOZ_DMD
+@BINPATH@/@DLL_PREFIX@dmd@DLL_SUFFIX@
+#endif
+#ifndef MOZ_FOLD_LIBS
+@BINPATH@/@DLL_PREFIX@plc4@DLL_SUFFIX@
+@BINPATH@/@DLL_PREFIX@plds4@DLL_SUFFIX@
+@BINPATH@/@DLL_PREFIX@nspr4@DLL_SUFFIX@
+#endif
+@BINPATH@/@DLL_PREFIX@lgpllibs@DLL_SUFFIX@
+@BINPATH@/@DLL_PREFIX@gkcodecs@DLL_SUFFIX@
+#ifdef MOZ_FFVPX
+@BINPATH@/@DLL_PREFIX@mozavutil@DLL_SUFFIX@
+@BINPATH@/@DLL_PREFIX@mozavcodec@DLL_SUFFIX@
+#endif
+#ifdef MOZ_OMX_PLUGIN
+@BINPATH@/@DLL_PREFIX@omxplugin@DLL_SUFFIX@
+@BINPATH@/@DLL_PREFIX@omxpluginkk@DLL_SUFFIX@
+#endif
+@BINPATH@/@DLL_PREFIX@xul@DLL_SUFFIX@
+
+@BINPATH@/@DLL_PREFIX@nssckbi@DLL_SUFFIX@
+@BINPATH@/@DLL_PREFIX@nss3@DLL_SUFFIX@
+#ifndef MOZ_FOLD_LIBS
+@BINPATH@/@DLL_PREFIX@nssutil3@DLL_SUFFIX@
+@BINPATH@/@DLL_PREFIX@smime3@DLL_SUFFIX@
+@BINPATH@/@DLL_PREFIX@ssl3@DLL_SUFFIX@
+#endif
+@BINPATH@/@DLL_PREFIX@softokn3@DLL_SUFFIX@
+@BINPATH@/@DLL_PREFIX@freebl3@DLL_SUFFIX@
+#ifndef CROSS_COMPILE
+@BINPATH@/@DLL_PREFIX@freebl3.chk
+@BINPATH@/@DLL_PREFIX@softokn3.chk
+#endif
+
+@BINPATH@/@DLL_PREFIX@ipcclientcerts@DLL_SUFFIX@
+
+#ifndef MOZ_FOLD_LIBS
+@BINPATH@/@DLL_PREFIX@mozsqlite3@DLL_SUFFIX@
+#endif
+
+@BINPATH@/@DLL_PREFIX@mozglue@DLL_SUFFIX@
+# This should be MOZ_CHILD_PROCESS_NAME, but that has a "lib/" prefix.
+@BINPATH@/@MOZ_CHILD_PROCESS_NAME@
+
+#ifdef MOZ_ANDROID_GOOGLE_VR
+@BINPATH@/@DLL_PREFIX@gvr@DLL_SUFFIX@
+#endif
+
+[xpcom]
+@BINPATH@/package-name.txt
+
+[browser]
+; [Base Browser Files]
+@BINPATH@/application.ini
+@BINPATH@/platform.ini
+@BINPATH@/defaults/settings/last_modified.json
+; The addons blocklist data is not packaged and will be downloaded after install.
+; See https://bugzilla.mozilla.org/show_bug.cgi?id=1639050#c5
+; @BINPATH@/defaults/settings/blocklists/addons-bloomfilters.json
+; @BINPATH@/defaults/settings/blocklists/addons-bloomfilters/addons-mlbf.bin
+; @BINPATH@/defaults/settings/blocklists/addons-bloomfilters/addons-mlbf.bin.meta.json
+@BINPATH@/defaults/settings/blocklists/gfx.json
+@BINPATH@/defaults/settings/main/password-recipes.json
+@BINPATH@/defaults/settings/security-state/onecrl.json
+
+; [Components]
+@BINPATH@/components/components.manifest
+
+; JavaScript components
+@BINPATH@/components/toolkitsearch.manifest
+
+@BINPATH@/components/extensions.manifest
+
+@BINPATH@/components/antitracking.manifest
+
+@BINPATH@/components/ProcessSingleton.manifest
+@BINPATH@/components/servicesComponents.manifest
+@BINPATH@/components/servicesSettings.manifest
+@BINPATH@/components/l10n-registry.manifest
+
+; Modules
+@BINPATH@/modules/*
+@BINPATH@/actors/*
+
+; [Browser Chrome Files]
+@BINPATH@/chrome/pdfjs.manifest
+@BINPATH@/chrome/pdfjs/*
+@BINPATH@/chrome/toolkit@JAREXT@
+@BINPATH@/chrome/toolkit.manifest
+
+; [Extensions]
+@BINPATH@/components/extensions-toolkit.manifest
+@BINPATH@/components/extensions-mobile.manifest
+
+; Features
+@BINPATH@/features/*
+
+; DevTools
+@BINPATH@/chrome/devtools@JAREXT@
+@BINPATH@/chrome/devtools.manifest
+
+; [Default Preferences]
+; All the pref files must be part of base to prevent migration bugs
+#ifndef MOZ_ANDROID_FAT_AAR_ARCHITECTURES
+@BINPATH@/@ANDROID_CPU_ARCH@/greprefs.js
+@BINPATH@/@PREF_DIR@/@ANDROID_CPU_ARCH@/geckoview-prefs.js
+#else
+@BINPATH@/*/greprefs.js
+@BINPATH@/@PREF_DIR@/*/geckoview-prefs.js
+#endif # !MOZ_ANDROID_FAT_AAR_ARCHITECTURES
+@BINPATH@/@PREF_DIR@/channel-prefs.js
+@BINPATH@/defaults/autoconfig/prefcalls.js
+
+; [Layout Engine Resources]
+; Style Sheets, Graphics and other Resources used by the layout engine.
+@BINPATH@/res/EditorOverride.css
+@BINPATH@/res/contenteditable.css
+@BINPATH@/res/designmode.css
+@BINPATH@/res/table-add-column-after-active.gif
+@BINPATH@/res/table-add-column-after-hover.gif
+@BINPATH@/res/table-add-column-after.gif
+@BINPATH@/res/table-add-column-before-active.gif
+@BINPATH@/res/table-add-column-before-hover.gif
+@BINPATH@/res/table-add-column-before.gif
+@BINPATH@/res/table-add-row-after-active.gif
+@BINPATH@/res/table-add-row-after-hover.gif
+@BINPATH@/res/table-add-row-after.gif
+@BINPATH@/res/table-add-row-before-active.gif
+@BINPATH@/res/table-add-row-before-hover.gif
+@BINPATH@/res/table-add-row-before.gif
+@BINPATH@/res/table-remove-column-active.gif
+@BINPATH@/res/table-remove-column-hover.gif
+@BINPATH@/res/table-remove-column.gif
+@BINPATH@/res/table-remove-row-active.gif
+@BINPATH@/res/table-remove-row-hover.gif
+@BINPATH@/res/table-remove-row.gif
+@BINPATH@/res/grabber.gif
+@BINPATH@/res/dtd/*
+@BINPATH@/res/language.properties
+@BINPATH@/res/locale/layout/HtmlForm.properties
+@BINPATH@/res/locale/layout/MediaDocument.properties
+@BINPATH@/res/locale/layout/xmlparser.properties
+@BINPATH@/res/locale/dom/dom.properties
+
+#ifndef MOZ_ANDROID_EXCLUDE_FONTS
+@BINPATH@/res/fonts/*
+#else
+@BINPATH@/res/fonts/*.properties
+#endif
+
+; Content-accessible resources.
+@BINPATH@/contentaccessible/*
+
+; svg
+@BINPATH@/res/svg.css
+
+; For process sandboxing
+#if defined(MOZ_SANDBOX)
+@BINPATH@/@DLL_PREFIX@mozsandbox@DLL_SUFFIX@
+#endif
+
+; [Crash Reporter]
+; CrashService is not used on Android but the ini files are required for L10N
+; strings, see bug 1191351.
+#ifdef MOZ_CRASHREPORTER
+@BINPATH@/crashreporter.ini
+@BINPATH@/crashreporter-override.ini
+#endif
+
+[mobile]
+@BINPATH@/chrome/geckoview@JAREXT@
+@BINPATH@/chrome/geckoview.manifest
+
+@BINPATH@/components/GeckoView.manifest
+
+; WebDriver (Marionette, Remote Agent) remote protocols
+#ifdef ENABLE_WEBDRIVER
+@BINPATH@/chrome/remote@JAREXT@
+@BINPATH@/chrome/remote.manifest
+#endif
+
+#ifdef PKG_LOCALE_MANIFEST
+#include @PKG_LOCALE_MANIFEST@
+#endif
diff --git a/mobile/android/installer/removed-files.in b/mobile/android/installer/removed-files.in
new file mode 100644
index 0000000000..125c8eb2e1
--- /dev/null
+++ b/mobile/android/installer/removed-files.in
@@ -0,0 +1,3 @@
+update.locale
+README.txt
+components/dom_webspeech.xpt