Optimize R8 configuration
* java/org/gnu/emacs/EmacsWindowManager.java (WindowConsumer): Mark as package-local. * java/proguard.conf: List only symbols that must be preserved, enabling R8 to optimize the remainder.
This commit is contained in:
parent
7720c614af
commit
b9acfd7c2b
2 changed files with 35 additions and 6 deletions
|
@ -84,7 +84,7 @@ public final class EmacsWindowManager
|
|||
MANAGER = new EmacsWindowManager ();
|
||||
};
|
||||
|
||||
public interface WindowConsumer
|
||||
interface WindowConsumer
|
||||
{
|
||||
public void attachWindow (EmacsWindow window);
|
||||
public EmacsWindow getAttachedWindow ();
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# Trivial Proguard configuration file
|
||||
# Proguard configuration files for Emacs
|
||||
#
|
||||
# Copyright (C) 2024 Free Software Foundation, Inc.
|
||||
#
|
||||
|
@ -17,8 +17,37 @@
|
|||
# You should have received a copy of the GNU General Public License
|
||||
# along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
|
||||
#
|
||||
# The effect of these two lines is to prevent the removal of symbol
|
||||
# names, which Emacs requires to link to functions defined in Java.
|
||||
# The effect of the following lines is to inhibit the removal of variable or
|
||||
# method symbol names from symbols referenced from C.
|
||||
|
||||
-keep,allowoptimization interface org.gnu.emacs.*
|
||||
-keep,allowoptimization class org.gnu.emacs.* { <fields>; <methods>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsClipboard { <methods>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsContextMenu { <methods>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsCursor { <methods>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsDesktopNotification { <methods>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsDialog { <methods>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsDirectoryEntry { <fields>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsFontDriver { <methods>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsFontDriver$* { <fields>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsGC { <methods>; <fields>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsHandleObject { <methods>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsPixmap { <methods>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsService { <methods>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsWindow { <methods>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsNative { <methods>; }
|
||||
-keep,allowoptimization class org.gnu.emacs.EmacsNoninteractive { <methods>; }
|
||||
-keep,allowoptimization interface org.gnu.emacs.EmacsDrawable { <methods>; }
|
||||
|
||||
# And these lines inhibit the deletion of symbols that are referenced by
|
||||
# the operating system while enabling the compiler to minify or delete
|
||||
# symbols only referenced internally.
|
||||
|
||||
-keep,allowoptimization,allowaccessmodification public class * extends android.app.Activity
|
||||
-keep,allowoptimization,allowaccessmodification public class * extends android.app.Application
|
||||
-keep,allowoptimization,allowaccessmodification public class * extends android.app.Service
|
||||
-keep,allowoptimization,allowaccessmodification public class * extends android.content.BroadcastReceiver
|
||||
-keep,allowoptimization,allowaccessmodification public class * extends android.content.ContentProvider
|
||||
|
||||
# Local Variables:
|
||||
# truncate-lines: t
|
||||
# indent-tabs-mode: nil
|
||||
# End:
|
||||
|
|
Loading…
Add table
Reference in a new issue