1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-27 08:43:40 -07:00
emacs/m4
Po Lu 4de6b18793 Update Android port
* .gitignore: Update with new files.  Do not ignore std*.in.h.
* INSTALL.android: Explain how to build Emacs with external
dependencies.

* Makefile.in (xcompile, cross): Rename to `cross'.
(clean_dirs): Clean cross, not xcompile.

* README: Document new directories.

* build-aux/ndk-build-helper-1.mk (build_kind, NDK_SO_NAMES):
* build-aux/ndk-build-helper-2.mk (build_kind, NDK_SO_NAMES):
* build-aux/ndk-build-helper-3.mk (build_kind):
* build-aux/ndk-build-helper-4.mk:
* build-aux/ndk-build-helper.mk (NDK_BUILD_DIR, my-dir):
* build-aux/ndk-module-extract.awk: New files.
* configure.ac: Set up libgif, libwebp, and libpng for
ndk-build.
* cross/ndk-build/Makefile.in (srcdir, NDK_BUILD_ANDROID_MK):
* cross/ndk-build/ndk-build-executable.mk:
* cross/ndk-build/ndk-build-shared-library.mk (eq, objname):
* cross/ndk-build/ndk-build-static-library.mk (eq, objname):
* cross/ndk-build/ndk-build.in (NDK_BUILD_MODULES):
* cross/ndk-build/ndk-build.mk.in (NDK_BUILD_MODULES)
(NDK_BUILD_SHARED):
* cross/ndk-build/ndk-clear-vars.mk:
* cross/ndk-build/ndk-prebuilt-shared-library.mk:
* cross/ndk-build/ndk-prebuilt-static-library.mk: New files.
* doc/emacs/android.texi (Android, Android Environment):
Document clipboard support on Android.
* doc/emacs/emacs.texi (Top): Update menus.
* etc/MACHINES: Document Android.
* java/AndroidManifest.xml.in: Respect new
`--with-android-debug' option.
* java/Makefile.in (CROSS_BINS, CROSS_LIBS): Adjust for rename.
Include ndk-build.mk.:(emacs.apk-in): Depend on shared
libraries.  Then, package shared libraries.
* java/org/gnu/emacs/EmacsClipboard.java (EmacsClipboard): New
class.
* java/org/gnu/emacs/EmacsFontDriver.java: Update comment to say
this is unused.
* java/org/gnu/emacs/EmacsNative.java (EmacsNative): New
function `sendExpose'.
* java/org/gnu/emacs/EmacsSdk11Clipboard.java
(EmacsSdk11Clipboard):
* java/org/gnu/emacs/EmacsSdk8Clipboard.java
(EmacsSdk8Clipboard): New classes.
* java/org/gnu/emacs/EmacsView.java (EmacsView, handleDirtyBitmap)
(onDetachedFromWindow): When window is reattached, expose the
frame.

* lib/Makefile.in (VPATH):
(ALL_CFLAGS): Adjust for rename.

* lisp/term/android-win.el (android-clipboard-exists-p)
(android-get-clipboard, android-set-clipboard)
(android-clipboard-owner-p, android-primary-selection)
(android-get-clipboard-1, android-get-primary)
(android-selection-bounds, android-encode-select-string)
(gui-backend-get-selection, gui-backend-selection-exists-p)
(gui-backend-selection-owner-p, gui-backend-set-selection): New
functions.

* m4/ndk-build.m4: New file.
* src/Makefile.in (GIF_CFLAGS, ANDROID_LDFLAGS): New variables.
(EMACS_CFLAGS): Add GIF_CFLAGS.  Include
ndk-build.mk.
(libemacs.so): Depend on and link with required
libraries.

* src/android.c (android_check_compressed_file): New function.
(android_open): Work around Android platform bug.
(sendExpose): New function.
(android_readdir): Set d_type if this is a directory.

* src/androidgui.h (enum android_event_type)
(struct android_expose_event, union android_event): Add expose
events.

* src/androidselect.c (struct android_emacs_clipboard)
(android_init_emacs_clipboard, Fandroid_clipboard_owner_p)
(Fandroid_set_clipboard, Fandroid_get_clipboard)
(Fandroid_clipboard_exists_p, init_androidselect)
(syms_of_androidselect): New file.

* src/androidterm.c (handle_one_android_event): Handle
exposures.
* src/androidterm.h: Update prototypes.
* src/emacs.c (android_emacs_init): Initialize androidselect.
2023-01-24 10:34:40 +08:00
..
00gnulib.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
__inline.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
absolute-header.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
acl.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-13 20:03:54 -08:00
alloca.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
assert_h.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-13 20:03:54 -08:00
builtin-expect.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
byteswap.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
c-bool.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
canonicalize.m4 Update Android port 2023-01-20 21:21:15 +08:00
clock_time.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-07 15:32:56 -08:00
copy-file-range.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
d-type.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
dirent_h.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
dirfd.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
double-slash-root.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
dup2.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
eealloc.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
environ.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
errno_h.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
euidaccess.m4 Update Android port 2023-01-20 21:21:15 +08:00
execinfo.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
explicit_bzero.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
extensions.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
extern-inline.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
faccessat.m4 Update Android port 2023-01-20 21:21:15 +08:00
fchmodat.m4 Update Android port 2023-01-20 21:21:15 +08:00
fcntl.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
fcntl_h.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
fdopendir.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
filemode.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
flexmember.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
fpending.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
fpieee.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
free.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
fstatat.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
fsusage.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
fsync.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
futimens.m4 Update Android port 2023-01-20 21:21:15 +08:00
getdelim.m4 Update Android port 2023-01-20 21:21:15 +08:00
getdtablesize.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
getgroups.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
getline.m4 Update Android port 2023-01-20 21:21:15 +08:00
getloadavg.m4 Update Android port 2023-01-20 21:21:15 +08:00
getopt.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
getrandom.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-07 15:32:56 -08:00
gettime.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-13 20:03:54 -08:00
gettimeofday.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
gnulib-common.m4 Update Android port 2023-01-20 21:21:15 +08:00
gnulib-comp.m4 Update Android port 2023-01-20 21:21:15 +08:00
group-member.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
ieee754-h.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
include_next.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
inttypes.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
largefile.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
lchmod.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
libgmp.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
limits-h.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
lstat.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
malloc.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
manywarnings.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
mbstate_t.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
md5.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
memmem.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
mempcpy.m4 Update Android port 2023-01-20 21:21:15 +08:00
memrchr.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
memset_explicit.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
minmax.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
mkostemp.m4 Update Android port 2023-01-20 21:21:15 +08:00
mktime.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
mode_t.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
multiarch.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
nanosleep.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-07 15:32:56 -08:00
ndk-build.m4 Update Android port 2023-01-24 10:34:40 +08:00
nocrash.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
nproc.m4 Update Android port 2023-01-20 21:21:15 +08:00
nstrftime.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
off_t.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
open-cloexec.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
open-slash.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
open.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
pathmax.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
pid_t.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
pipe2.m4 Update Android port 2023-01-20 21:21:15 +08:00
pkg.m4 ; Fix more typos 2020-10-03 12:53:51 +02:00
pselect.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
pthread_sigmask.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-07 15:32:56 -08:00
rawmemchr.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
readlink.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
readlinkat.m4 Update Android port 2023-01-20 21:21:15 +08:00
realloc.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
regex.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
sha1.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
sha256.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
sha512.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
sig2str.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
sigdescr_np.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
signal_h.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
socklen.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ssize_t.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
st_dm_mode.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
stat-time.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
std-gnu11.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
stdalign.m4 Update Android port 2023-01-19 22:19:06 +08:00
stddef_h.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
stdint.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
stdio_h.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
stdlib_h.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
stpcpy.m4 Update Android port 2023-01-20 21:21:15 +08:00
string_h.m4 Merge from origin/emacs-29 2023-01-01 05:47:47 -05:00
strnlen.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
strtoimax.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
strtoll.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
symlink.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
sys_random_h.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
sys_select_h.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
sys_socket_h.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
sys_stat_h.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
sys_time_h.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
sys_types_h.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
tempname.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
time_h.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
time_r.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
time_rz.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
timegm.m4 Update Android port 2023-01-20 21:21:15 +08:00
timer_time.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-07 15:32:56 -08:00
timespec.m4 Update from Gnulib by running admin/merge-gnulib 2023-01-06 18:05:57 -08:00
tm_gmtoff.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
unistd_h.m4 Update Android port 2023-01-20 21:21:15 +08:00
unlocked-io.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
utimens.m4 Update Android port 2023-01-20 21:21:15 +08:00
utimensat.m4 Update Android port 2023-01-20 21:21:15 +08:00
utimes.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
vararrays.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
warnings.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
wchar_t.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
xattr.m4 Update Android port 2023-01-19 22:19:06 +08:00
year2038.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
zzgnulib.m4 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00