Merge from origin/emacs-27
75723ec212
(origin/emacs-27) ; * lisp/emacs-lisp/benchmark.el (benchm...53e2a612ad
; * lib-src/make-fingerprint.c: Update commentary.286c632772
Reformat argument commentary in etags.c4ec740866a
Make the invocation of combine-change-calls in comment-reg...66bcec8838
* lisp/progmodes/cc-langs.el (c-<>-notable-chars-re): Fix ...03eeab469e
; Update the expected result files in test/manual/etags.d875a22bc6
Update the various INSTALL files # Conflicts: # INSTALL
This commit is contained in:
commit
4a8c1120f5
15 changed files with 120 additions and 87 deletions
28
INSTALL
28
INSTALL
|
@ -117,19 +117,25 @@ ADDITIONAL DISTRIBUTION FILES
|
|||
|
||||
* Complex Text Layout support libraries
|
||||
|
||||
On GNU and Unix systems, Emacs needs the optional libraries "m17n-db",
|
||||
"libm17n-flt", "libotf" to correctly display such complex scripts as
|
||||
Indic and Khmer, and also for scripts that require Arabic shaping
|
||||
support (Arabic and Farsi). On some systems, particularly GNU/Linux,
|
||||
these libraries may be already present or available as additional
|
||||
packages. Note that if there is a separate 'dev' or 'devel' package,
|
||||
for use at compilation time rather than run time, you will need that
|
||||
as well as the corresponding run time package; typically the dev
|
||||
package will contain header files and a library archive. Otherwise,
|
||||
you can download the libraries from <https://www.nongnu.org/m17n/>.
|
||||
On GNU and Unix systems, Emacs needs optional libraries to correctly
|
||||
display such complex scripts as Indic and Khmer, and also for scripts
|
||||
that require Arabic shaping support (Arabic and Farsi). If the
|
||||
HarfBuzz library is installed, Emacs will build with it and use it for
|
||||
this purpose. HarfBuzz is the preferred shaping engine, both on Posix
|
||||
hosts and on MS-Windows, so we recommend installing it before building
|
||||
Emacs. The alternative for GNU/Linux and Posix systems is to use the
|
||||
"m17n-db", "libm17n-flt", and "libotf" libraries. (On some systems,
|
||||
particularly GNU/Linux, these libraries may be already present or
|
||||
available as additional packages.) Note that if there is a separate
|
||||
'dev' or 'devel' package, for use at compilation time rather than run
|
||||
time, you will need that as well as the corresponding run time
|
||||
package; typically the dev package will contain header files and a
|
||||
library archive. On MS-Windows, if HarfBuzz is not available, Emacs
|
||||
will use the Uniscribe shaping engine that is part of the OS.
|
||||
|
||||
Note that Emacs cannot support complex scripts on a TTY, unless the
|
||||
terminal includes such a support.
|
||||
terminal includes such a support. However, most modern terminal
|
||||
emulators, such as xterm, do support such scripts.
|
||||
|
||||
* intlfonts-VERSION.tar.gz
|
||||
|
||||
|
|
|
@ -352,11 +352,11 @@ is the current directory.
|
|||
*** Set find-function-C-source-directory accordingly.
|
||||
|
||||
Once you have installed the source package, for example at
|
||||
/home/myself/deb-src/emacs-26.3, add the following line to your
|
||||
/home/myself/deb-src/emacs-27.1, add the following line to your
|
||||
startup file:
|
||||
|
||||
(setq find-function-C-source-directory
|
||||
"/home/myself/deb-src/emacs-26.3/src/")
|
||||
"/home/myself/deb-src/emacs-27.1/src/")
|
||||
|
||||
The installation directory of the Emacs source package will contain
|
||||
the exact package name and version number of Emacs that is installed
|
||||
|
@ -386,7 +386,7 @@ To get describe-function and similar commands to work, you can then
|
|||
add something like the following to your startup file:
|
||||
|
||||
(setq find-function-C-source-directory
|
||||
"/usr/src/debug/emacs-26.3-1.fc31.x86_64/src/")
|
||||
"/usr/src/debug/emacs-27.1-1.fc31.x86_64/src/")
|
||||
|
||||
However, the exact directory name will depend on the system, and you
|
||||
will need to both upgrade source and debug info when your system
|
||||
|
|
|
@ -1974,14 +1974,13 @@ make_tag (const char *name, /* tag name, or NULL if unnamed */
|
|||
|
||||
/* Record a tag. */
|
||||
static void
|
||||
pfnote (char *name, bool is_func, char *linestart, ptrdiff_t linelen,
|
||||
intmax_t lno, intmax_t cno)
|
||||
/* tag name, or NULL if unnamed */
|
||||
/* tag is a function */
|
||||
/* start of the line where tag is */
|
||||
/* length of the line where tag is */
|
||||
/* line number */
|
||||
/* character number */
|
||||
pfnote (char *name, /* tag name, or NULL if unnamed */
|
||||
bool is_func, /* tag is a function */
|
||||
char *linestart, /* start of the line where tag is */
|
||||
ptrdiff_t linelen, /* length of the line where tag is */
|
||||
intmax_t lno, /* line number */
|
||||
intmax_t cno) /* character number */
|
||||
|
||||
{
|
||||
register node *np;
|
||||
|
||||
|
@ -2905,15 +2904,13 @@ static void make_C_tag (bool);
|
|||
*/
|
||||
|
||||
static bool
|
||||
consider_token (char *str, ptrdiff_t len, int c, int *c_extp,
|
||||
ptrdiff_t bracelev, ptrdiff_t parlev, bool *is_func_or_var)
|
||||
/* IN: token pointer */
|
||||
/* IN: token length */
|
||||
/* IN: first char after the token */
|
||||
/* IN, OUT: C extensions mask */
|
||||
/* IN: brace level */
|
||||
/* IN: parenthesis level */
|
||||
/* OUT: function or variable found */
|
||||
consider_token (char *str, /* IN: token pointer */
|
||||
ptrdiff_t len, /* IN: token length */
|
||||
int c, /* IN: first char after the token */
|
||||
int *c_extp, /* IN, OUT: C extensions mask */
|
||||
ptrdiff_t bracelev, /* IN: brace level */
|
||||
ptrdiff_t parlev, /* IN: parenthesis level */
|
||||
bool *is_func_or_var) /* OUT: function or variable found */
|
||||
{
|
||||
/* When structdef is stagseen, scolonseen, or snone with bracelev > 0,
|
||||
structtype is the type of the preceding struct-like keyword, and
|
||||
|
@ -3312,9 +3309,8 @@ perhaps_more_input (FILE *inf)
|
|||
* C syntax and adds them to the list.
|
||||
*/
|
||||
static void
|
||||
C_entries (int c_ext, FILE *inf)
|
||||
/* extension of C */
|
||||
/* input file */
|
||||
C_entries (int c_ext, /* extension of C */
|
||||
FILE *inf) /* input file */
|
||||
{
|
||||
char c; /* latest char read; '\0' for end of line */
|
||||
char *lp; /* pointer one beyond the character `c' */
|
||||
|
|
|
@ -19,9 +19,12 @@ 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 arguments given to this program are all the object files that
|
||||
go into building GNU Emacs. There is no special search logic to find
|
||||
the files. */
|
||||
/* The argument given to this program is the initial version of the
|
||||
temacs executable file used when building GNU Emacs. This program computes
|
||||
a digest fingerprint for the executable, and modifies the binary in
|
||||
place, replacing all instances of the existing fingerprint (normally
|
||||
the default fingerprint from libgnu's lib/fingerprint.c) with the
|
||||
new value. With option -r, it just prints the digest. */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
|
|
|
@ -43,7 +43,7 @@
|
|||
;;;###autoload
|
||||
(defmacro benchmark-run (&optional repetitions &rest forms)
|
||||
"Time execution of FORMS.
|
||||
If REPETITIONS is supplied as a number, run forms that many times,
|
||||
If REPETITIONS is supplied as a number, run FORMS that many times,
|
||||
accounting for the overhead of the resulting loop. Otherwise run
|
||||
FORMS once.
|
||||
Return a list of the total elapsed time for execution, the number of
|
||||
|
|
|
@ -1292,7 +1292,15 @@ changed with `comment-style'."
|
|||
|
||||
(defun comment-region-default (beg end &optional arg)
|
||||
(if comment-combine-change-calls
|
||||
(combine-change-calls beg end (comment-region-default-1 beg end arg))
|
||||
(combine-change-calls beg
|
||||
;; A new line might get inserted and whitespace deleted
|
||||
;; after END for line comments. Ensure the next argument is
|
||||
;; after any and all changes.
|
||||
(save-excursion
|
||||
(goto-char end)
|
||||
(forward-line)
|
||||
(point))
|
||||
(comment-region-default-1 beg end arg))
|
||||
(comment-region-default-1 beg end arg)))
|
||||
|
||||
;;;###autoload
|
||||
|
|
|
@ -3683,7 +3683,7 @@ When \"(\" is present, that defun will attempt to parse a
|
|||
parenthesized expression inside the template. When \")\" is
|
||||
present it will treat an unbalanced closing paren as a sign of
|
||||
the invalidity of the putative template construct."
|
||||
t "[<;{},|+&->)]"
|
||||
t "[<;{},|+&>)-]"
|
||||
c++ "[<;{},>()]")
|
||||
(c-lang-defvar c-<>-notable-chars-re (c-lang-const c-<>-notable-chars-re))
|
||||
|
||||
|
|
18
nt/INSTALL
18
nt/INSTALL
|
@ -502,11 +502,21 @@ build will run on Windows 9X and newer systems).
|
|||
Does Emacs use -lgnutls? yes
|
||||
Does Emacs use -lxml2? yes
|
||||
Does Emacs use -lfreetype? no
|
||||
Does Emacs use HarfBuzz? yes
|
||||
Does Emacs use -lm17n-flt? no
|
||||
Does Emacs use -lotf? no
|
||||
Does Emacs use -lxft? no
|
||||
Does Emacs use -lsystemd? no
|
||||
Does Emacs use -ljansson? yes
|
||||
Does Emacs use the GMP library? yes
|
||||
Does Emacs directly use zlib? yes
|
||||
Does Emacs have dynamic modules support? yes
|
||||
Does Emacs use toolkit scroll bars? yes
|
||||
Does Emacs support Xwidgets? no
|
||||
Does Emacs have threading support in lisp? yes
|
||||
Does Emacs support the portable dumper? yes
|
||||
Does Emacs support the legacy unexec dumping? no
|
||||
Which dumping strategy does Emacs use? pdumper
|
||||
|
||||
You are almost there, hang on.
|
||||
|
||||
|
@ -815,6 +825,14 @@ build will run on Windows 9X and newer systems).
|
|||
the libjansson DLL (for 32-bit builds of Emacs) are available from
|
||||
the ezwinports site and from the MSYS2 project.
|
||||
|
||||
* Optional support for HarfBuzzz shaping library
|
||||
|
||||
Emacs supports display of complex scripts and Arabic shaping. The
|
||||
preferred library for that is HarfBuzz; prebuilt binaries are
|
||||
available from the ezwinports site (for 32-bit builds of Emacs) and
|
||||
from the MSYS2 project. If HarfBuzz is not available, Emacs will
|
||||
use the Uniscribe shaping engine that is part of MS-Windows.
|
||||
|
||||
|
||||
This file is part of GNU Emacs.
|
||||
|
||||
|
|
|
@ -55,14 +55,16 @@ packages (you can copy and paste it into the shell with Shift + Insert):
|
|||
mingw-w64-x86_64-jansson \
|
||||
mingw-w64-x86_64-libxml2 \
|
||||
mingw-w64-x86_64-gnutls \
|
||||
mingw-w64-x86_64-zlib
|
||||
mingw-w64-x86_64-zlib \
|
||||
mingw-w64-x86_64-harfbuzz
|
||||
|
||||
The packages include the base developer tools (autoconf, grep, make, etc.),
|
||||
the compiler toolchain (gcc, gdb, etc.), several image libraries, an XML
|
||||
library, the GnuTLS (transport layer security) library, and zlib for
|
||||
decompressing text. Only the first three packages are required (base-devel,
|
||||
toolchain, xpm-nox); the rest are optional. You can select only part of the
|
||||
libraries if you don't need them all.
|
||||
library, the GnuTLS (transport layer security) library, zlib for
|
||||
decompressing text, and HarfBuzz for use as the shaping engine. Only the
|
||||
first three packages are required (base-devel, toolchain, xpm-nox); the
|
||||
rest are optional. You can select only part of the libraries if you don't
|
||||
need them all.
|
||||
|
||||
You now have a complete build environment for Emacs.
|
||||
|
||||
|
|
|
@ -3153,13 +3153,13 @@ tex-src/gzip.texi,303
|
|||
@node Top,62,2139
|
||||
@node Copying,80,2652
|
||||
@node Overview,83,2705
|
||||
@node Sample,166,7272
|
||||
@node Invoking gzip,Invoking gzip210,8828
|
||||
@node Advanced usage,Advanced usage357,13496
|
||||
@node Environment,420,15208
|
||||
@node Tapes,437,15769
|
||||
@node Problems,460,16768
|
||||
@node Concept Index,Concept Index473,17288
|
||||
@node Sample,166,7273
|
||||
@node Invoking gzip,Invoking gzip210,8829
|
||||
@node Advanced usage,Advanced usage357,13497
|
||||
@node Environment,420,15209
|
||||
@node Tapes,437,15770
|
||||
@node Problems,460,16769
|
||||
@node Concept Index,Concept Index473,17289
|
||||
|
||||
tex-src/texinfo.tex,30627
|
||||
\def\texinfoversion{\texinfoversion26,1035
|
||||
|
|
|
@ -3726,13 +3726,13 @@ tex-src/gzip.texi,303
|
|||
@node Top,62,2139
|
||||
@node Copying,80,2652
|
||||
@node Overview,83,2705
|
||||
@node Sample,166,7272
|
||||
@node Invoking gzip,Invoking gzip210,8828
|
||||
@node Advanced usage,Advanced usage357,13496
|
||||
@node Environment,420,15208
|
||||
@node Tapes,437,15769
|
||||
@node Problems,460,16768
|
||||
@node Concept Index,Concept Index473,17288
|
||||
@node Sample,166,7273
|
||||
@node Invoking gzip,Invoking gzip210,8829
|
||||
@node Advanced usage,Advanced usage357,13497
|
||||
@node Environment,420,15209
|
||||
@node Tapes,437,15770
|
||||
@node Problems,460,16769
|
||||
@node Concept Index,Concept Index473,17289
|
||||
|
||||
tex-src/texinfo.tex,30627
|
||||
\def\texinfoversion{\texinfoversion26,1035
|
||||
|
|
|
@ -3560,13 +3560,13 @@ tex-src/gzip.texi,303
|
|||
@node Top,62,2139
|
||||
@node Copying,80,2652
|
||||
@node Overview,83,2705
|
||||
@node Sample,166,7272
|
||||
@node Invoking gzip,Invoking gzip210,8828
|
||||
@node Advanced usage,Advanced usage357,13496
|
||||
@node Environment,420,15208
|
||||
@node Tapes,437,15769
|
||||
@node Problems,460,16768
|
||||
@node Concept Index,Concept Index473,17288
|
||||
@node Sample,166,7273
|
||||
@node Invoking gzip,Invoking gzip210,8829
|
||||
@node Advanced usage,Advanced usage357,13497
|
||||
@node Environment,420,15209
|
||||
@node Tapes,437,15770
|
||||
@node Problems,460,16769
|
||||
@node Concept Index,Concept Index473,17289
|
||||
|
||||
tex-src/texinfo.tex,30627
|
||||
\def\texinfoversion{\texinfoversion26,1035
|
||||
|
|
|
@ -3317,13 +3317,13 @@ tex-src/gzip.texi,303
|
|||
@node Top,62,2139
|
||||
@node Copying,80,2652
|
||||
@node Overview,83,2705
|
||||
@node Sample,166,7272
|
||||
@node Invoking gzip,Invoking gzip210,8828
|
||||
@node Advanced usage,Advanced usage357,13496
|
||||
@node Environment,420,15208
|
||||
@node Tapes,437,15769
|
||||
@node Problems,460,16768
|
||||
@node Concept Index,Concept Index473,17288
|
||||
@node Sample,166,7273
|
||||
@node Invoking gzip,Invoking gzip210,8829
|
||||
@node Advanced usage,Advanced usage357,13497
|
||||
@node Environment,420,15209
|
||||
@node Tapes,437,15770
|
||||
@node Problems,460,16769
|
||||
@node Concept Index,Concept Index473,17289
|
||||
|
||||
tex-src/texinfo.tex,30627
|
||||
\def\texinfoversion{\texinfoversion26,1035
|
||||
|
|
|
@ -4297,13 +4297,13 @@ tex-src/gzip.texi,303
|
|||
@node Top,62,2139
|
||||
@node Copying,80,2652
|
||||
@node Overview,83,2705
|
||||
@node Sample,166,7272
|
||||
@node Invoking gzip,Invoking gzip210,8828
|
||||
@node Advanced usage,Advanced usage357,13496
|
||||
@node Environment,420,15208
|
||||
@node Tapes,437,15769
|
||||
@node Problems,460,16768
|
||||
@node Concept Index,Concept Index473,17288
|
||||
@node Sample,166,7273
|
||||
@node Invoking gzip,Invoking gzip210,8829
|
||||
@node Advanced usage,Advanced usage357,13497
|
||||
@node Environment,420,15209
|
||||
@node Tapes,437,15770
|
||||
@node Problems,460,16769
|
||||
@node Concept Index,Concept Index473,17289
|
||||
|
||||
tex-src/texinfo.tex,30627
|
||||
\def\texinfoversion{\texinfoversion26,1035
|
||||
|
|
|
@ -4297,13 +4297,13 @@ tex-src/gzip.texi,303
|
|||
@node Top,62,2139
|
||||
@node Copying,80,2652
|
||||
@node Overview,83,2705
|
||||
@node Sample,166,7272
|
||||
@node Invoking gzip,Invoking gzip210,8828
|
||||
@node Advanced usage,Advanced usage357,13496
|
||||
@node Environment,420,15208
|
||||
@node Tapes,437,15769
|
||||
@node Problems,460,16768
|
||||
@node Concept Index,Concept Index473,17288
|
||||
@node Sample,166,7273
|
||||
@node Invoking gzip,Invoking gzip210,8829
|
||||
@node Advanced usage,Advanced usage357,13497
|
||||
@node Environment,420,15209
|
||||
@node Tapes,437,15770
|
||||
@node Problems,460,16769
|
||||
@node Concept Index,Concept Index473,17289
|
||||
|
||||
tex-src/texinfo.tex,30627
|
||||
\def\texinfoversion{\texinfoversion26,1035
|
||||
|
|
Loading…
Add table
Reference in a new issue