1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-04 02:51:31 -08:00
emacs/admin
Po Lu a496509ced Update Android port
* .gitignore: Add new files.
* INSTALL.android: Explain how to build Emacs for ancient
versions of Android.
* admin/merge-gnulib (GNULIB_MODULES): Add getdelim.
* build-aux/config.guess (timestamp, version):
* build-aux/config.sub (timestamp, version): Autoupdate.
* configure.ac (BUILD_DETAILS, ANDROID_MIN_SDK):
(ANDROID_STUBIFY): Allow specifying CFLAGS via ANDROID_CFLAGS.
Add new configure tests for Android API version when not
explicitly specified.

* doc/emacs/android.texi (Android): Add reference to ``Other
Input Devices''.
(Android File System): Remove restrictions on directory-files on
the assets directory.
* doc/emacs/emacs.texi (Top): Add Other Input Devices to menu.
* doc/emacs/input.texi (Other Input Devices): New node.
* doc/lispref/commands.texi (Touchscreen Events): Document
changes to touchscreen input events.
* doc/lispref/frames.texi (Pop-Up Menus): Likewise.
* etc/NEWS: Announce changes.
* java/Makefile.in: Use lib-src/asset-directory-tool to generate
an `directory-tree' file placed in /assets.
* java/debug.sh: Large adjustments to support Android 2.2 and
later.

* java/org/gnu/emacs/EmacsContextMenu.java (inflateMenuItems):
* java/org/gnu/emacs/EmacsCopyArea.java (perform):
* java/org/gnu/emacs/EmacsDialog.java (toAlertDialog):
* java/org/gnu/emacs/EmacsDrawLine.java (perform):
* java/org/gnu/emacs/EmacsDrawRectangle.java (perform):
* java/org/gnu/emacs/EmacsDrawable.java (EmacsDrawable):
* java/org/gnu/emacs/EmacsFillPolygon.java (perform):
* java/org/gnu/emacs/EmacsFillRectangle.java (perform):
* java/org/gnu/emacs/EmacsGC.java (EmacsGC):
* java/org/gnu/emacs/EmacsPixmap.java (EmacsPixmap):
(destroyHandle):
* java/org/gnu/emacs/EmacsSdk7FontDriver.java (draw): Avoid
redundant canvas saves and restores.
* java/org/gnu/emacs/EmacsService.java (run):
* java/org/gnu/emacs/EmacsView.java (EmacsView):
(handleDirtyBitmap):
* java/org/gnu/emacs/EmacsWindow.java (changeWindowBackground)
(EmacsWindow): Make compatible with Android 2.2 and later.

* lib-src/Makefile.in (DONT_INSTALL): Add asset-directory-tool
on Android.:(asset-directory-tool{EXEEXT}): New target.
* lib-src/asset-directory-tool.c (struct directory_tree, xmalloc)
(main_1, main_2, main): New file.

* lib, m4: Merge from gnulib.  This will be reverted before
merging to master.

* lisp/button.el (button-map):
(push-button):
* lisp/frame.el (display-popup-menus-p): Improve touchscreen
support.
* lisp/subr.el (event-start):
(event-end): Handle touchscreen events.
* lisp/touch-screen.el (touch-screen-handle-timeout):
(touch-screen-handle-point-update):
(touch-screen-handle-point-up):
(touch-screen-track-tap):
(touch-screen-track-drag):
(touch-screen-drag-mode-line-1):
(touch-screen-drag-mode-line): New functions.
([mode-line touchscreen-begin]):
([bottom-divider touchscreen-begin]): Bind new events.

* lisp/wid-edit.el (widget-event-point):
(widget-keymap):
(widget-event-start):
(widget-button--check-and-call-button):
(widget-button-click): Improve touchscreen support.

* src/alloc.c (make_lisp_symbol): Avoid ICE on Android NDK GCC.
(mark_pinned_symbols): Likewise.

* src/android.c (struct android_emacs_window): New struct.
(window_class): New variable.
(android_run_select_thread): Add workaround for Android platform
bug.
(android_extract_long, android_scan_directory_tree): New
functions.
(android_file_access_p): Use those functions instead.
(android_init_emacs_window): New function.
(android_init_emacs_gc_class): Update signature of `markDirty'.
(android_change_gc, android_set_clip_rectangles): Tell the GC
whether or not clip rects were dirtied.
(android_swap_buffers): Do not look up method every time.
(struct android_dir): Adjust for new directory tree lookup.
(android_opendir, android_readdir, android_closedir): Likewise.
(android_four_corners_bilinear): Fix coding style.
(android_ftruncate): New function.
* src/android.h: Update prototypes.  Replace ftruncate with
android_ftruncate when necessary.

* src/androidterm.c (handle_one_android_event): Pacify GCC.  Fix
touch screen tool bar bug.
* src/emacs.c (using_utf8): Fix compilation error.
* src/fileio.c (Ffile_system_info): Return Qnil when fsusage.o
is not built.
* src/filelock.c (BOOT_TIME_FILE): Fix definition for Android.
* src/frame.c (Fx_parse_geometry): Fix uninitialized variable
uses.
* src/keyboard.c (lispy_function_keys): Fix `back'.
* src/menu.c (x_popup_menu_1): Handle touch screen events.
(Fx_popup_menu): Document changes.

* src/sfnt.c (main): Improve tests.

* src/sfntfont-android.c (sfntfont_android_put_glyphs): Fix
minor problem.
(init_sfntfont_android): Check for
HAVE_DECL_ANDROID_GET_DEVICE_API_LEVEL.
* src/sfntfont.c (struct sfnt_font_desc): New fields `adstyle'
and `languages'.
(sfnt_parse_style): Append tokens to adstyle.
(sfnt_parse_languages): New function.
(sfnt_enum_font_1): Parse supported languages and adstyle.
(sfntfont_list_1): Handle new fields.
(sfntfont_text_extents): Fix uninitialized variable use.
(syms_of_sfntfont, mark_sfntfont): Adjust accordingly.
2023-01-19 22:19:06 +08:00
..
charsets ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
coccinelle Delete redisplay-end-trigger-functions and related defuns 2022-07-31 01:44:22 +02:00
grammars ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
notes Merge from origin/emacs-29 2023-01-05 06:30:20 +01:00
nt ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
unidata ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
admin.el Merge from origin/emacs-29 2023-01-01 05:47:47 -05:00
alloc-colors.c ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
authors.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
automerge ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
build-configs ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
ChangeLog.1 ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
check-doc-strings * admin/check-doc-strings: Remove XEmacs support. 2022-08-06 14:30:09 +02:00
check-man-pages ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
CPP-DEFINES * admin/CPP-DEFINES: Update for new features. 2022-04-30 16:46:33 +08:00
cus-test.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
diff-tar-files ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
emacs-shell-lib ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
emake ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
find-gc.el Merge from origin/emacs-29 2023-01-01 05:47:47 -05:00
git-bisect-start ; * admin/git-bisect-start: Update failing commits 2023-01-02 11:01:36 +01:00
gitmerge.el Merge from origin/emacs-29 2023-01-01 05:47:47 -05:00
last-chance.el ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
MAINTAINERS ; Maintain admin/update_autogen 2022-08-06 13:01:13 +02:00
make-emacs ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
make-manuals ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
make-tarball.txt New script admin/check-man-pages 2022-12-09 11:15:21 +01:00
merge-gnulib Update Android port 2023-01-19 22:19:06 +08:00
merge-pkg-config ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
quick-install-emacs ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
README ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
release-branch.txt
release-process
update-copyright ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
update_autogen ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
upload-manuals ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Copyright (C) 2001-2023 Free Software Foundation, Inc.
See the end of the file for license conditions.


			 The admin directory

This directory contains scripts and other things useful for developing
and maintaining Emacs.  These files are not part of Emacs releases
because they are not deemed generally useful, and you have to know
what you do when using them.


* Instructions and scripts used to prepare an Emacs release.

** release-process

The release process used by GNU Emacs.

** make-tarball.txt

Instructions to create pretest or release tarballs, announcements, etc.

** admin.el

Utilities for setting version numbers and alike.


* Scripts that can be used to build and test Emacs.

** build-configs

Build Emacs in various configurations.

** make-emacs

Build Emacs in various ways.

** quick-install-emacs

Install emacs quickly ("incrementally").

** alloc-colors.c

A utility program that allocates a given number of colors on X.  Can
be used to debug Emacs with dense colormaps (PseudoColor).

** check-doc-strings

Check doc strings against documentation.

** cus-test.el

Tests for custom types and load problems.

** diff-tar-files

Show files added/removed between two tar files.


Brief description of sub-directories:

charsets		scripts for generating charset map files
			in ../etc/charsets
coccinelle		patches to make coccinelle work with
			the latest Emacs version.  Since they
			apply a few minor changes in Emacs internals
			in multiple places, they are trivial for
			copyright purposes.
grammars		wisent and bovine grammars, used to produce
			files in lisp/cedet/.
notes			miscellaneous notes related to administrative
			tasks.
nt			support files for administrative tasks related
			to building MS-Windows distributions.
unidata			scripts for generating character property files
			in ../lisp/international/.


This file is part of GNU Emacs.

GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.

Local variables:
mode: outline
paragraph-separate: "[ 	]*$"
end: