Bug 1255915 - Pre: Remove GeckoView classycle bits. r=build-peer
This was added in
Bug 1096627 to enforce the baseline GeckoView
layering that we had at that time. Now that GeckoView is a separate
Gradle project, that layering is automatically enforced. It's time
for this to go.
MozReview-Commit-ID: Ly35QhgBdWM
--- a/mobile/android/base/Makefile.in
+++ b/mobile/android/base/Makefile.in
@@ -265,29 +265,16 @@ else
else
PROGUARD_PASSES=6
endif
endif
endif
proguard_config_dir=$(topsrcdir)/mobile/android/config/proguard
-# This stanza ensures that the set of GeckoView classes does not depend on too
-# much of Fennec, where "too much" is defined as the set of potentially
-# non-GeckoView classes that GeckoView already depended on at a certain point in
-# time. The idea is to set a high-water mark that is not to be crossed.
-classycle_jar := $(topsrcdir)/mobile/android/build/classycle/classycle-1.4.1.jar
-.geckoview.deps: geckoview.ddf $(classycle_jar) $(ALL_JARS)
- $(JAVA) -cp $(classycle_jar) \
- classycle.dependency.DependencyChecker \
- -mergeInnerClasses \
- -dependencies=@$< \
- $(ALL_JARS)
- @$(TOUCH) $@
-
# First, we delete debugging information from libraries. Having line-number
# information for libraries for which we lack the source isn't useful, so this
# saves us a bit of space. Importantly, Proguard has a bug causing it to
# sometimes corrupt this information if present (which it does for some of the
# included libraries). This corruption prevents dex from completing, so we need
# to get rid of it. This prevents us from seeing line numbers in stack traces
# for stack frames inside libraries.
#
@@ -304,17 +291,17 @@ classycle_jar := $(topsrcdir)/mobile/and
-injars $(subst ::,:,$(java_bundled_libs))\
-outjars bundled-jars-nodebug \
-libraryjars $(library_jars):gecko-R.jar
# We touch the target file before invoking Proguard so that Proguard's
# outputs are fresher than the target, preventing a subsequent
# invocation from thinking Proguard's outputs are stale. This is safe
# because Make removes the target file if any recipe command fails.
-.proguard.deps: .geckoview.deps .bundled.proguard.deps $(ALL_JARS) $(proguard_config_dir)/proguard.cfg $(PROGUARD_JAR)
+.proguard.deps: .bundled.proguard.deps $(ALL_JARS) $(proguard_config_dir)/proguard.cfg $(PROGUARD_JAR)
$(REPORT_BUILD)
@$(TOUCH) $@
$(JAVA) \
-Xmx512m -Xms128m \
-jar $(PROGUARD_JAR) \
@$(proguard_config_dir)/proguard.cfg \
-optimizationpasses $(PROGUARD_PASSES) \
-injars $(subst ::,:,$(all_jars_classpath)):bundled-jars-nodebug \
deleted file mode 100644
--- a/mobile/android/base/geckoview.ddf
+++ /dev/null
@@ -1,74 +0,0 @@
-# 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.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]
deleted file mode 100644
--- a/mobile/android/build/classycle/LICENSE.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-Copyright (c) 2003-2008, Franz-Josef Elmer, All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-- Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
-- Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
-TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
-CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
deleted file mode 100644
index bc8f2ddaac38df5e5eb22e2033546e04aa0d656f..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001