From 5fc75b051fc623a4f614a7abe09f08d127ed9ccd Mon Sep 17 00:00:00 2001 From: Po Lu Date: Wed, 12 Jun 2024 13:52:33 +0800 Subject: Improve compression of Emacs packages on Android 2.2 * configure.ac (ZIP): Search for a `zip' executable and substitute the same if targeting SDK 8. * java/INSTALL: Document new requirement. * java/Makefile.in (GZIP_PROG, ZIP): New substitutions. (.PHONY): Delete references to directory-tree. (install_temp): On SDK 8 and earlier, compress large *.el and Info files with gzip, and divide install_temp into three separate directories, with one for large files, another for gzipped files, and one more for the remainder. (install_temp/assets/directory-tree, install_temp/assets/version) (install_temp/assets/build_info): Merge these rules into install_tmp, that they may execute before the assets directory is split. (emacs.apk-in): Package each directory separately, accounting for their varied compression requirements. * lisp/term/android-win.el (input-decode-map): Define select to return in input-decode-map. --- java/INSTALL | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'java/INSTALL') diff --git a/java/INSTALL b/java/INSTALL index 1d6f1535647..91916c6586c 100644 --- a/java/INSTALL +++ b/java/INSTALL @@ -158,10 +158,13 @@ the NDK r10b or later. We wanted to make Emacs work on even older versions of Android, but they are missing the required JNI graphics library that allows Emacs to display text from C code. -Due to an extremely nasty bug in the Android 2.2 system, the generated -Emacs package cannot be compressed in builds for Android 2.2. As a -result, the Emacs package will be approximately 100 megabytes larger -than a compressed package for a newer version of Android. +There is an extremely nasty bug in the Android 2.2 system, the upshot of +which is that large files within the generated Emacs package cannot be +compressed in builds for Android 2.2, so that the Emacs package will be +approximately 15 megabytes larger than a compressed package for a newer +version of Android. For such systems the `zip' utility is also required +to produce packages that will not be misinterpreted by the package +manager. BUILDING C++ DEPENDENCIES -- cgit v1.2.1