emacs/java
Po Lu 7a0f4de3c1 Improve C++ standard library detection on Android
* configure.ac: Stop relaying --with-ndk-cxx-shared to the
nested invocation of configure.

* build-aux/ndk-build-helper-1.mk (SYSTEM_LIBRARIES):

* build-aux/ndk-build-helper-2.mk (SYSTEM_LIBRARIES): Insert all
of the C++ libraries available on Android.

* configure.ac: Call ndk_LATE and ndk_LATE_EARLY within if
statement at toplevel, averting needless calls to AC_PROG_CXX.

* cross/ndk-build/Makefile.in (NDK_BUILD_CXX_STL)
(NDK_BUILD_CXX_LDFLAGS):

* cross/ndk-build/ndk-build.mk.in (NDK_BUILD_CXX_STL)
(NDK_BUILD_CXX_LDFLAGS): New variables.

* cross/ndk-build/ndk-resolve.mk (NDK_SYSTEM_LIBRARIES):
Introduce several other C++ libraries sometimes present on
Android.
(NDK_SO_EXTRA_FLAGS_$(LOCAL_MODULE)): Insert NDK_BUILD_CXX_STL
when any of these new C++ libraries are requested.

* m4/ndk-build.m4: Completely rewrite C++ compiler and library
detection.

* java/org/gnu/emacs/EmacsNative.java (EmacsNative): Attempt to
load more libraries from static initializer.

* java/INSTALL: Remove obsolete information.
2024-03-17 19:34:09 +08:00
..
org/gnu/emacs Improve C++ standard library detection on Android 2024-03-17 19:34:09 +08:00
res
AndroidManifest.xml.in ; Check in missing change to AndroidManifest.xml.in 2024-03-12 10:46:20 +08:00
debug.sh
emacs.keystore
INSTALL Improve C++ standard library detection on Android 2024-03-17 19:34:09 +08:00
Makefile.in
README

This directory holds the Java sources of the port of GNU Emacs to
Android-like systems, along with files needed to create an application
package out of them.  If you need to build this port, please read the
file INSTALL in this directory.

The ``org/gnu/emacs'' subdirectory contains the Java sources under the
``org.gnu.emacs'' package identifier.

``AndroidManifest.xml'' contains a manifest describing the Java
sources to the system.

The ``res'' directory contains resources, mainly the Emacs icon and
several ``boolean resources'' which are used as a form of conditional
evaluation for manifest entries.

`emacs.keystore' is the signing key used to build Emacs.  It is kept
here, and we encourage all people redistributing Emacs to use this
key.  It holds no security value, and otherwise it will be impossible
to install different builds of Emacs on top of each other.

Please keep the Java code indented with tabs and formatted according
to the rules for C code in the GNU coding standards.  Always use
C-style comments.

Refer to the file `admin/notes/java' in the toplevel directory of the
Emacs distribution or repository for specifics regarding writing Java
code for Emacs and the organization of the Android port.