summaryrefslogtreecommitdiffstats
path: root/mobile/android/base/geckoview.ddf
diff options
context:
space:
mode:
Diffstat (limited to 'mobile/android/base/geckoview.ddf')
-rw-r--r--mobile/android/base/geckoview.ddf75
1 files changed, 75 insertions, 0 deletions
diff --git a/mobile/android/base/geckoview.ddf b/mobile/android/base/geckoview.ddf
new file mode 100644
index 000000000..015a0d3e7
--- /dev/null
+++ b/mobile/android/base/geckoview.ddf
@@ -0,0 +1,75 @@
+# This is a Classycle dependency definition file that asserts that the contents
+# of the GeckoView library (Classycle set [lib]) is a dependency (but does not
+# depend) on Fennec (Classycle set [main]). The additional Classycle set
+# [middle] consists of classes referenced by GeckoView that probably should not
+# be referenced. We want this middle set to shrink over time.
+
+show allResults
+
+[lib] = \
+ org.mozilla.gecko.gfx.* \
+ org.mozilla.gecko.mozglue.* \
+ org.mozilla.gecko.sqlite.* \
+ org.mozilla.gecko.util.* \
+ org.mozilla.gecko.AndroidGamepadManager \
+ org.mozilla.gecko.AppConstants \
+ org.mozilla.gecko.BaseGeckoInterface \
+ org.mozilla.gecko.ContextGetter \
+ org.mozilla.gecko.CrashHandler \
+ org.mozilla.gecko.EventDispatcher \
+ org.mozilla.gecko.GeckoAccessibility \
+ org.mozilla.gecko.GeckoAppShell \
+ org.mozilla.gecko.GeckoBatteryManager \
+ org.mozilla.gecko.GeckoEditable \
+ org.mozilla.gecko.GeckoEditableClient \
+ org.mozilla.gecko.GeckoEditableListener \
+ org.mozilla.gecko.GeckoEvent \
+ org.mozilla.gecko.GeckoInputConnection \
+ org.mozilla.gecko.GeckoJavaSampler \
+ org.mozilla.gecko.GeckoNetworkManager \
+ org.mozilla.gecko.GeckoProfile \
+ org.mozilla.gecko.GeckoScreenOrientation \
+ org.mozilla.gecko.GeckoSharedPrefs \
+ org.mozilla.gecko.GeckoThread \
+ org.mozilla.gecko.GeckoView \
+ org.mozilla.gecko.GlobalHistory \
+ org.mozilla.gecko.InputMethods \
+ org.mozilla.gecko.NSSBridge \
+ org.mozilla.gecko.NotificationClient \
+ org.mozilla.gecko.NotificationHandler \
+ org.mozilla.gecko.PrefsHelper \
+ org.mozilla.gecko.SysInfo \
+ org.mozilla.gecko.TouchEventInterceptor \
+ org.mozilla.gecko.ZoomConstraints
+
+[middle] = \
+ org.mozilla.gecko.prompts.* \
+ org.mozilla.gecko.FormAssistPopup \
+ org.mozilla.gecko.GeckoActivity \
+ org.mozilla.gecko.GeckoApp \
+ org.mozilla.gecko.GeckoProfileDirectories \
+ org.mozilla.gecko.GuestSession \
+ org.mozilla.gecko.R \
+ org.mozilla.gecko.Tab \
+ org.mozilla.gecko.Tabs \
+ org.mozilla.gecko.Telemetry \
+ org.mozilla.gecko.TelemetryContract \
+ org.mozilla.gecko.ThumbnailHelper \
+ org.mozilla.gecko.db.BrowserDB \
+ org.mozilla.gecko.db.LocalBrowserDB \
+ org.mozilla.gecko.distribution.Distribution \
+ org.mozilla.gecko.icons.*
+
+[main] = org.mozilla.gecko.* excluding [lib] [middle]
+
+check sets [lib] [middle] [main]
+
+# Bug 1107134: it appears that Classycle can be fooled if the Java
+# compiler inlines a constant from [main] into [lib]. That is, [main]
+# really does depend on [lib] but Classycle only sees the dependency
+# with some javac versions. For now, disable the check. Yes, this
+# processing is useless without this check.
+# check [lib] directlyIndependentOf [main]
+
+# This fails; if this passed, GeckoView would be ready to extract from Fennec.
+# check [lib] independentOf [middle]