SHA256
1
0
forked from pool/emacs

Accepting request 967453 from editors

- Replace emacs-27.2-pdf.tar.xz with refreshed emacs-28.1-pdf.tar.xz

- Update to GNU Emacs version 28.1
  * Emacs now optionally supports native compilation of Lisp files.
  * The Cairo graphics library is now used by default if present.
  * 'configure' now warns about building with libXft support.
  * 'configure' now warns about not using HarfBuzz if using Cairo.
  * Building without double buffering support.

- Remove patches now upstream and in 28.1
  * boo1178942-bedb3cb6.patch
  * emacs-27.2-COLORTERM-24bit.patch
  * sigsegv-stack.patch
- Remove patch emacs-24.4-xim.patch as not needed anymore
- Port and rename patch emacs-27.1.dif which is now emacs-28.1.dif

OBS-URL: https://build.opensuse.org/request/show/967453
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/emacs?expand=0&rev=165
This commit is contained in:
Dominique Leuenberger 2022-04-08 23:43:46 +00:00 committed by Git OBS Bridge
commit f0b63d9f22
24 changed files with 394 additions and 367 deletions

View File

@ -1,47 +0,0 @@
From bedb3cb66541fd4dd35cf15261c6d99f132e7d2c Mon Sep 17 00:00:00 2001
From: Eli Zaretskii <eliz@gnu.org>
Date: Wed, 15 Apr 2020 14:28:21 +0300
Subject: [PATCH] Avoid infloop in redisplay when wrap-prefix is too wide
* src/xdisp.c (move_it_to): Avoid infloop due to wrap-prefix that
is wide enough to leave no space to display even the first
character of the continuation line. (Bug#40632)
---
src/xdisp.c | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
--- src/xdisp.c
+++ src/xdisp.c 2021-09-09 10:14:45.107931449 +0000
@@ -9727,9 +9727,13 @@ move_it_to (struct it *it, ptrdiff_t to_
int line_height, line_start_x = 0, reached = 0;
int max_current_x = 0;
void *backup_data = NULL;
+ ptrdiff_t orig_charpos = -1;
+ enum it_method orig_method = NUM_IT_METHODS;
for (;;)
{
+ orig_charpos = IT_CHARPOS (*it);
+ orig_method = it->method;
if (op & MOVE_TO_VPOS)
{
/* If no TO_CHARPOS and no TO_X specified, stop at the
@@ -9963,7 +9967,17 @@ move_it_to (struct it *it, ptrdiff_t to_
}
}
else
- it->continuation_lines_width += it->current_x;
+ {
+ /* Make sure we do advance, otherwise we might infloop.
+ This could happen when the first display element is
+ wider than the window, or if we have a wrap-prefix
+ that doesn't leave enough space after it to display
+ even a single character. */
+ if (IT_CHARPOS (*it) == orig_charpos
+ && it->method == orig_method)
+ set_iterator_to_next (it, false);
+ it->continuation_lines_width += it->current_x;
+ }
break;
default:

View File

@ -16,7 +16,7 @@
--- lisp/textmodes/ispell.el --- lisp/textmodes/ispell.el
+++ lisp/textmodes/ispell.el 2016-09-19 09:01:56.930605125 +0000 +++ lisp/textmodes/ispell.el 2016-09-19 09:01:56.930605125 +0000
@@ -1544,10 +1544,18 @@ Protects against bogus binding of `enabl @@ -1502,10 +1502,18 @@ Protects against bogus binding of `enabl
nil ;; in pipe mode. Disable extended-char-mode nil ;; in pipe mode. Disable extended-char-mode
(nth 6 (or (assoc ispell-current-dictionary ispell-local-dictionary-alist) (nth 6 (or (assoc ispell-current-dictionary ispell-local-dictionary-alist)
(assoc ispell-current-dictionary ispell-dictionary-alist))))) (assoc ispell-current-dictionary ispell-dictionary-alist)))))

View File

@ -4,7 +4,7 @@
--- lisp/startup.el --- lisp/startup.el
+++ lisp/startup.el 2016-09-19 09:15:26.871345783 +0000 +++ lisp/startup.el 2016-09-19 09:15:26.871345783 +0000
@@ -2455,6 +2455,9 @@ nil default-directory" name) @@ -2470,6 +2470,9 @@ nil default-directory" name)
((equal argi "-no-splash") ((equal argi "-no-splash")
(setq inhibit-startup-screen t)) (setq inhibit-startup-screen t))

View File

@ -3,10 +3,10 @@
1 file changed, 8 insertions(+), 3 deletions(-) 1 file changed, 8 insertions(+), 3 deletions(-)
--- lisp/textmodes/flyspell.el --- lisp/textmodes/flyspell.el
+++ lisp/textmodes/flyspell.el 2016-09-19 09:22:48.535025631 +0000 +++ lisp/textmodes/flyspell.el 2021-10-08 09:31:55.632323098 +0000
@@ -319,6 +319,12 @@ If this variable is nil, all regions are @@ -289,6 +289,12 @@ If this variable is nil, all regions are
:type 'key-sequence "The key binding for flyspell auto correction."
:group 'flyspell) :type 'key-sequence)
+(defvar flyspell-signature-separator +(defvar flyspell-signature-separator
+ (if (boundp 'message-signature-separator) + (if (boundp 'message-signature-separator)
@ -17,7 +17,7 @@
;;*---------------------------------------------------------------------*/ ;;*---------------------------------------------------------------------*/
;;* Mode specific options */ ;;* Mode specific options */
;;* ------------------------------------------------------------- */ ;;* ------------------------------------------------------------- */
@@ -344,7 +350,6 @@ property of the major mode name.") @@ -313,7 +319,6 @@ property of the major mode name.")
;;*--- mail mode -------------------------------------------------------*/ ;;*--- mail mode -------------------------------------------------------*/
(put 'mail-mode 'flyspell-mode-predicate 'mail-mode-flyspell-verify) (put 'mail-mode 'flyspell-mode-predicate 'mail-mode-flyspell-verify)
(put 'message-mode 'flyspell-mode-predicate 'mail-mode-flyspell-verify) (put 'message-mode 'flyspell-mode-predicate 'mail-mode-flyspell-verify)
@ -25,7 +25,7 @@
(defun mail-mode-flyspell-verify () (defun mail-mode-flyspell-verify ()
"Function used for `flyspell-generic-check-word-predicate' in Mail mode." "Function used for `flyspell-generic-check-word-predicate' in Mail mode."
(let* ((header-end (save-excursion (let* ((header-end (save-excursion
@@ -356,11 +361,11 @@ property of the major mode name.") @@ -325,11 +330,11 @@ property of the major mode name.")
nil t) nil t)
(point))) (point)))
(signature-begin (signature-begin

View File

@ -4,7 +4,7 @@
--- src/xmenu.c --- src/xmenu.c
+++ src/xmenu.c 2016-09-19 09:01:56.930605125 +0000 +++ src/xmenu.c 2016-09-19 09:01:56.930605125 +0000
@@ -1979,8 +1979,8 @@ Lisp_Object @@ -2003,8 +2003,8 @@ Lisp_Object
xw_popup_dialog (struct frame *f, Lisp_Object header, Lisp_Object contents) xw_popup_dialog (struct frame *f, Lisp_Object header, Lisp_Object contents)
{ {
Lisp_Object title; Lisp_Object title;

View File

@ -5,7 +5,7 @@
--- lisp/ldefs-boot.el --- lisp/ldefs-boot.el
+++ lisp/ldefs-boot.el 2018-05-29 12:23:32.824206557 +0000 +++ lisp/ldefs-boot.el 2018-05-29 12:23:32.824206557 +0000
@@ -25982,9 +25982,9 @@ With prefix argument ARG, restart the Pr @@ -26758,9 +26758,9 @@ With prefix argument ARG, restart the Pr
;;;### (autoloads nil "ps-bdf" "ps-bdf.el" (0 0 0 0)) ;;;### (autoloads nil "ps-bdf" "ps-bdf.el" (0 0 0 0))
;;; Generated autoloads from ps-bdf.el ;;; Generated autoloads from ps-bdf.el

View File

@ -1,16 +0,0 @@
---
src/xfns.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- src/xfns.c
+++ src/xfns.c 2016-09-19 09:10:35.504833294 +0000
@@ -2332,8 +2332,8 @@ static XIMStyle best_xim_style (XIMStyle
static const XIMStyle supported_xim_styles[] =
{
- XIMPreeditPosition | XIMStatusArea,
XIMPreeditPosition | XIMStatusNothing,
+ XIMPreeditPosition | XIMStatusArea,
XIMPreeditPosition | XIMStatusNone,
XIMPreeditNothing | XIMStatusArea,
XIMPreeditNothing | XIMStatusNothing,

View File

@ -7,7 +7,7 @@ Index: emacs-25.2/configure.ac
--- emacs-27.1/configure.ac --- emacs-27.1/configure.ac
+++ emacs-27.1/configure.ac 2020-08-11 09:59:04.349950601 +0000 +++ emacs-27.1/configure.ac 2020-08-11 09:59:04.349950601 +0000
@@ -2617,7 +2617,7 @@ if test "${HAVE_X11}" = "yes" || test "$ @@ -2605,7 +2605,7 @@ if test "${HAVE_X11}" = "yes" || test "$
else else
## 6.3.5 is the earliest version known to work; see Bug#17339. ## 6.3.5 is the earliest version known to work; see Bug#17339.
## 6.8.2 makes Emacs crash; see Bug#13867. ## 6.8.2 makes Emacs crash; see Bug#13867.
@ -18,7 +18,7 @@ Index: emacs-25.2/configure.ac
if test $HAVE_IMAGEMAGICK = yes; then if test $HAVE_IMAGEMAGICK = yes; then
--- emacs-27.1/src/image.c --- emacs-27.1/src/image.c
+++ emacs-27.1/src/image.c 2020-08-11 09:49:35.500181432 +0000 +++ emacs-27.1/src/image.c 2020-08-11 09:49:35.500181432 +0000
@@ -8784,7 +8784,11 @@ imagemagick_compute_animated_image (Magi @@ -9005,7 +9005,11 @@ imagemagick_compute_animated_image (Magi
PixelWand **source, **dest; PixelWand **source, **dest;
size_t source_width, source_height; size_t source_width, source_height;
ssize_t source_left, source_top; ssize_t source_left, source_top;
@ -30,7 +30,7 @@ Index: emacs-25.2/configure.ac
DisposeType dispose; DisposeType dispose;
ptrdiff_t lines = 0; ptrdiff_t lines = 0;
@@ -8849,7 +8853,11 @@ imagemagick_compute_animated_image (Magi @@ -9070,7 +9074,11 @@ imagemagick_compute_animated_image (Magi
if (dispose == BackgroundDispose || PixelGetAlpha (source[x])) if (dispose == BackgroundDispose || PixelGetAlpha (source[x]))
{ {
PixelGetMagickColor (source[x], &pixel); PixelGetMagickColor (source[x], &pixel);
@ -42,7 +42,7 @@ Index: emacs-25.2/configure.ac
} }
} }
PixelSyncIterator (dest_iterator); PixelSyncIterator (dest_iterator);
@@ -8894,7 +8902,11 @@ imagemagick_load_image (struct frame *f, @@ -9115,7 +9123,11 @@ imagemagick_load_image (struct frame *f,
MagickWand *image_wand; MagickWand *image_wand;
PixelIterator *iterator; PixelIterator *iterator;
PixelWand **pixels, *bg_wand = NULL; PixelWand **pixels, *bg_wand = NULL;

View File

@ -10,18 +10,18 @@ even if the Xauthority file is not the default expected by XCloseDisplay()
2 files changed, 39 insertions(+), 2 deletions(-) 2 files changed, 39 insertions(+), 2 deletions(-)
--- etc/emacs.service --- etc/emacs.service
+++ etc/emacs.service 2021-03-08 13:24:42.504543632 +0000 +++ etc/emacs.service 2021-10-08 09:41:15.350644801 +0000
@@ -8,6 +8,7 @@ Documentation=info:emacs man:emacs(1) ht @@ -8,6 +8,7 @@ Documentation=info:emacs man:emacs(1) ht
[Service] [Service]
Type=notify Type=notify
+Environment=XAUTHORITY=%t/emacs/xauth +Environment=XAUTHORITY=%t/emacs/xauth
ExecStart=emacs --fg-daemon ExecStart=emacs --fg-daemon
ExecStop=emacsclient --eval "(kill-emacs)"
# The location of the SSH auth socket varies by distribution, and some # Emacs will exit with status 15 after having received SIGTERM, which
--- lisp/server.el --- lisp/server.el
+++ lisp/server.el 2021-03-08 13:12:50.619365207 +0000 +++ lisp/server.el 2021-10-08 09:40:13.683712534 +0000
@@ -281,6 +281,11 @@ the \"-f\" switch otherwise." @@ -286,6 +286,11 @@ If nil, no instructions are displayed."
"The directory in which to place the server socket. "The directory in which to place the server socket.
If local sockets are not supported, this is nil.") If local sockets are not supported, this is nil.")
@ -33,7 +33,7 @@ even if the Xauthority file is not the default expected by XCloseDisplay()
(defun server-clients-with (property value) (defun server-clients-with (property value)
"Return a list of clients with PROPERTY set to VALUE." "Return a list of clients with PROPERTY set to VALUE."
(let (result) (let (result)
@@ -630,7 +635,8 @@ the `server-process' variable." @@ -642,7 +647,8 @@ the `server-process' variable."
(t (yes-or-no-p (t (yes-or-no-p
"The current server still has clients; delete them? ")))) "The current server still has clients; delete them? "))))
(let* ((server-dir (if server-use-tcp server-auth-dir server-socket-dir)) (let* ((server-dir (if server-use-tcp server-auth-dir server-socket-dir))
@ -43,7 +43,7 @@ even if the Xauthority file is not the default expected by XCloseDisplay()
(when server-process (when server-process
;; kill it dead! ;; kill it dead!
(ignore-errors (delete-process server-process))) (ignore-errors (delete-process server-process)))
@@ -704,6 +710,14 @@ server or call `\\[server-force-delete]' @@ -726,6 +732,14 @@ server or call `\\[server-force-delete]'
:plist '(:authenticated t))))) :plist '(:authenticated t)))))
(unless server-process (error "Could not start server process")) (unless server-process (error "Could not start server process"))
(process-put server-process :server-file server-file) (process-put server-process :server-file server-file)
@ -58,7 +58,7 @@ even if the Xauthority file is not the default expected by XCloseDisplay()
(when server-use-tcp (when server-use-tcp
(let ((auth-key (server-get-auth-key))) (let ((auth-key (server-get-auth-key)))
(process-put server-process :auth-key auth-key) (process-put server-process :auth-key auth-key)
@@ -832,7 +846,7 @@ This handles splitting the command if it @@ -854,7 +868,7 @@ This handles splitting the command if it
(let ((frame (let ((frame
(server-with-environment (server-with-environment
(process-get proc 'env) (process-get proc 'env)
@ -67,7 +67,7 @@ even if the Xauthority file is not the default expected by XCloseDisplay()
;; For tgetent(3); list according to ncurses(3). ;; For tgetent(3); list according to ncurses(3).
"BAUDRATE" "COLUMNS" "ESCDELAY" "HOME" "LINES" "BAUDRATE" "COLUMNS" "ESCDELAY" "HOME" "LINES"
"NCURSES_ASSUMED_COLORS" "NCURSES_NO_PADDING" "NCURSES_ASSUMED_COLORS" "NCURSES_NO_PADDING"
@@ -1088,6 +1102,8 @@ The following commands are accepted by t @@ -1122,6 +1136,8 @@ The following commands are accepted by t
nowait ; t if emacsclient does not want to wait for us. nowait ; t if emacsclient does not want to wait for us.
frame ; Frame opened for the client (if any). frame ; Frame opened for the client (if any).
display ; Open frame on this display. display ; Open frame on this display.
@ -76,7 +76,7 @@ even if the Xauthority file is not the default expected by XCloseDisplay()
parent-id ; Window ID for XEmbed parent-id ; Window ID for XEmbed
dontkill ; t if client should not be killed. dontkill ; t if client should not be killed.
commands commands
@@ -1228,6 +1244,16 @@ The following commands are accepted by t @@ -1262,6 +1278,16 @@ The following commands are accepted by t
;; -env NAME=VALUE: An environment variable. ;; -env NAME=VALUE: An environment variable.
("-env" ("-env"
(let ((var (pop args-left))) (let ((var (pop args-left)))
@ -93,7 +93,7 @@ even if the Xauthority file is not the default expected by XCloseDisplay()
;; XXX Variables should be encoded as in getenv/setenv. ;; XXX Variables should be encoded as in getenv/setenv.
(process-put proc 'env (process-put proc 'env
(cons var (process-get proc 'env))))) (cons var (process-get proc 'env)))))
@@ -1243,6 +1269,16 @@ The following commands are accepted by t @@ -1277,6 +1303,16 @@ The following commands are accepted by t
;; Unknown command. ;; Unknown command.
(arg (error "Unknown command: %s" arg)))) (arg (error "Unknown command: %s" arg))))

View File

@ -58,7 +58,7 @@
+% +%
% Title: GNU Emacs Survival Card % Title: GNU Emacs Survival Card
% Copyright (C) 2000--2021 Free Software Foundation, Inc. % Copyright (C) 2000--2022 Free Software Foundation, Inc.
--- etc/refcards/pl-refcard.tex --- etc/refcards/pl-refcard.tex
+++ etc/refcards/pl-refcard.tex 2021-03-25 15:08:53.917386707 +0000 +++ etc/refcards/pl-refcard.tex 2021-03-25 15:08:53.917386707 +0000
@@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
@ -66,7 +66,7 @@
+% +%
% Reference Card for GNU Emacs % Reference Card for GNU Emacs
% Copyright (C) 1999, 2001--2021 Free Software Foundation, Inc. % Copyright (C) 1999, 2001--2022 Free Software Foundation, Inc.
--- etc/refcards/ru-refcard.tex --- etc/refcards/ru-refcard.tex
+++ etc/refcards/ru-refcard.tex 2021-03-25 15:07:14.519265674 +0000 +++ etc/refcards/ru-refcard.tex 2021-03-25 15:07:14.519265674 +0000
@@ -25,6 +25,7 @@ @@ -25,6 +25,7 @@
@ -108,4 +108,4 @@
+% +%
% Title: GNU Emacs Survival Card % Title: GNU Emacs Survival Card
% Copyright (C) 2000--2021 Free Software Foundation, Inc. % Copyright (C) 2000--2022 Free Software Foundation, Inc.

View File

@ -1,35 +0,0 @@
diff --git a/doc/misc/efaq.texi b/doc/misc/efaq.texi
index f5f01848f77f..8f7ed715b523 100644
--- a/doc/misc/efaq.texi
+++ b/doc/misc/efaq.texi
@@ -1595,6 +1595,10 @@ xterm-direct2 xterm with direct-color indexing (old)
xterm-direct xterm with direct-color indexing
@end example
+If Terminfo database is not available, but 24-bit direct color mode is
+supported, it can still be enabled by defining the environment
+variable @env{COLORTERM} to @samp{truecolor}.
+
Terminals with @samp{RGB} capability treat pixels #000001 - #000007 as
indexed colors to maintain backward compatibility with applications
that are unaware of direct color mode. Therefore the seven darkest
diff --git a/src/term.c b/src/term.c
index 94bf013f4a07..5cbb092ad177 100644
--- a/src/term.c
+++ b/src/term.c
@@ -4168,6 +4168,15 @@ use the Bourne shell command 'TERM=...; export TERM' (C-shell:\n\
could return 32767. */
tty->TN_max_colors = 16777216;
}
+ /* Fall back to xterm+direct (semicolon version) if requested
+ by the COLORTERM environment variable. */
+ else if ((bg = getenv("COLORTERM")) != NULL
+ && strcasecmp(bg, "truecolor") == 0)
+ {
+ tty->TS_set_foreground = "\033[%?%p1%{8}%<%t3%p1%d%e38;2;%p1%{65536}%/%d;%p1%{256}%/%{255}%&%d;%p1%{255}%&%d%;m";
+ tty->TS_set_background = "\033[%?%p1%{8}%<%t4%p1%d%e48;2;%p1%{65536}%/%d;%p1%{256}%/%{255}%&%d;%p1%{255}%&%d%;m";
+ tty->TN_max_colors = 16777216;
+ }
}
#endif

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5ec995c3227a30a62cafd4458e672f12247d4bcbec7852bd4b0ce50bf8995f36
size 2017436

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b4a7cc4e78e63f378624e0919215b910af5bb2a0afc819fad298272e9f40c1b9
size 44624480

View File

@ -1,11 +0,0 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQEcBAABAgAGBQJgXHmkAAoJEJHBJi8B6405d2EIAIPafSj+sV3Hemu9CSPL+F38
KutOo7nUF1AO0tgdijPGZ4BTBsWnsum0dLQ/JLtor7/NQuqrZTMJQbrorLluwCR7
p1aVtwQ+enWn3G0Aq/4uWo0xaMCvJlEPOQuYE8Dtt12PFZzmfAE1r4KZa4cL073h
suugT/tz7awq7QS6GbjI88mkJXVMuEwVYPPS2tzBUTkA2152dikFSyqBhUnIo3Ni
eDN6NvSYBpL1I9HgNYuiBJp9xv8CzGtwm/7Nidntzl9SPVQlZkZIHNj8tRbE67Ge
R0EXBgnDsSKlRUM51R7PejnSG6134VcLCaItMF6dIiVBu6BwQXw1t+zdqnzG6v8=
=L6J6
-----END PGP SIGNATURE-----

3
emacs-28.1-pdf.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d983bab3ca6a2c6cdbb050c16d52bcb8c7e3f581ffc6fd9b5fd4b24c2686ae83
size 2004804

View File

@ -21,7 +21,7 @@
--- Makefile.in --- Makefile.in
+++ Makefile.in 2020-08-11 10:21:15.194072175 +0000 +++ Makefile.in 2020-08-11 10:21:15.194072175 +0000
@@ -493,11 +493,11 @@ install-arch-dep: src install-arch-indep @@ -519,11 +519,11 @@ install-arch-dep: src install-arch-indep
umask 022; ${MKDIR_P} "$(DESTDIR)${bindir}" umask 022; ${MKDIR_P} "$(DESTDIR)${bindir}"
$(MAKE) -C lib-src install $(MAKE) -C lib-src install
ifeq (${ns_self_contained},no) ifeq (${ns_self_contained},no)
@ -35,7 +35,7 @@
ifndef NO_BIN_LINK ifndef NO_BIN_LINK
rm -f "$(DESTDIR)${bindir}/$(EMACS)" rm -f "$(DESTDIR)${bindir}/$(EMACS)"
cd "$(DESTDIR)${bindir}" && $(LN_S_FILEONLY) "$(EMACSFULL)" "$(EMACS)" cd "$(DESTDIR)${bindir}" && $(LN_S_FILEONLY) "$(EMACSFULL)" "$(EMACS)"
@@ -690,6 +690,7 @@ install-man: @@ -712,6 +712,7 @@ install-man:
umask 022; ${MKDIR_P} "$(DESTDIR)${man1dir}" umask 022; ${MKDIR_P} "$(DESTDIR)${man1dir}"
thisdir=`/bin/pwd`; \ thisdir=`/bin/pwd`; \
cd ${mansrcdir}; \ cd ${mansrcdir}; \
@ -43,7 +43,7 @@
for page in *.1; do \ for page in *.1; do \
test "$$page" = ChangeLog.1 && continue; \ test "$$page" = ChangeLog.1 && continue; \
dest=`echo "$${page}" | sed -e 's/\.1$$//' -e '$(TRANSFORM)'`.1; \ dest=`echo "$${page}" | sed -e 's/\.1$$//' -e '$(TRANSFORM)'`.1; \
@@ -788,7 +789,7 @@ uninstall: uninstall-$(NTDIR) uninstall- @@ -843,7 +844,7 @@ uninstall: uninstall-$(NTDIR) uninstall-
for page in *.1; do \ for page in *.1; do \
rm -f "$(DESTDIR)${man1dir}"/`echo "$${page}" | sed -e 's/\.1$$//' -e '$(TRANSFORM)'`.1$$ext; done; \ rm -f "$(DESTDIR)${man1dir}"/`echo "$${page}" | sed -e 's/\.1$$//' -e '$(TRANSFORM)'`.1$$ext; done; \
fi) fi)
@ -52,24 +52,24 @@
(if cd "$(DESTDIR)${icondir}"; then \ (if cd "$(DESTDIR)${icondir}"; then \
rm -f hicolor/*x*/apps/"${EMACS_NAME}.png" \ rm -f hicolor/*x*/apps/"${EMACS_NAME}.png" \
"hicolor/scalable/apps/${EMACS_NAME}.svg" \ "hicolor/scalable/apps/${EMACS_NAME}.svg" \
--- configure |--- configure
+++ configure 2020-08-11 10:17:21.102266456 +0000 |+++ configure 2020-08-11 10:17:21.102266456 +0000
@@ -10750,10 +10750,8 @@ fi |@@ -10750,10 +10750,8 @@ fi
LD_SWITCH_X_SITE_RPATH= | LD_SWITCH_X_SITE_RPATH=
if test "${x_libraries}" != NONE; then | if test "${x_libraries}" != NONE; then
if test -n "${x_libraries}"; then | if test -n "${x_libraries}"; then
- LD_SWITCH_X_SITE=-L`$as_echo "$x_libraries" | sed -e 's/:/ -L/g'` |- LD_SWITCH_X_SITE=-L`$as_echo "$x_libraries" | sed -e 's/:/ -L/g'`
- LD_SWITCH_X_SITE_RPATH=-Wl,-rpath,` |- LD_SWITCH_X_SITE_RPATH=-Wl,-rpath,`
- $as_echo "$x_libraries" | sed -e 's/:/ -Wl,-rpath,/g' |- $as_echo "$x_libraries" | sed -e 's/:/ -Wl,-rpath,/g'
- ` |- `
+ LD_SWITCH_X_SITE="-L ${x_libraries%%:*}" |+ LD_SWITCH_X_SITE="-L ${x_libraries%%:*}"
+ LD_SWITCH_X_SITE_RPATH="-Wl,-rpath-link,${x_libraries%%:*}" |+ LD_SWITCH_X_SITE_RPATH="-Wl,-rpath-link,${x_libraries%%:*}"
fi | fi
x_default_search_path="" | x_default_search_path=""
x_search_path=${x_libraries} | x_search_path=${x_libraries}
--- configure.ac --- configure.ac
+++ configure.ac 2020-08-11 10:17:21.102266456 +0000 +++ configure.ac 2020-08-11 10:17:21.102266456 +0000
@@ -1881,10 +1881,8 @@ fi @@ -1832,10 +1832,8 @@ fi
LD_SWITCH_X_SITE_RPATH= LD_SWITCH_X_SITE_RPATH=
if test "${x_libraries}" != NONE; then if test "${x_libraries}" != NONE; then
if test -n "${x_libraries}"; then if test -n "${x_libraries}"; then
@ -111,8 +111,8 @@
format understood by format understood by
.BR vi ( 1 )\c .BR vi ( 1 )\c
\&. Both forms of the program understand \&. Both forms of the program understand
@@ -55,7 +55,7 @@ Ruby, PHP, PostScript, Python, Prolog, S @@ -55,7 +55,7 @@ Perl, Ruby, Rust, PHP, PostScript, Pytho
most assembler\-like syntaxes. assembler\-like syntaxes.
Both forms read the files specified on the command line, and write a tag Both forms read the files specified on the command line, and write a tag
table (defaults: \fBTAGS\fP for \fBetags\fP, \fBtags\fP for table (defaults: \fBTAGS\fP for \fBetags\fP, \fBtags\fP for
-\fBctags\fP) in the current working directory. -\fBctags\fP) in the current working directory.
@ -138,7 +138,7 @@
.TP .TP
.B \-\-declarations .B \-\-declarations
In C and derived languages, create tags for function declarations, In C and derived languages, create tags for function declarations,
@@ -174,7 +174,7 @@ the previous ones. The regexps are of o @@ -181,7 +181,7 @@ the previous ones. The regexps are of o
where \fItagregexp\fP is used to match the tag. It should not match where \fItagregexp\fP is used to match the tag. It should not match
useless characters. If the match is such that more characters than useless characters. If the match is such that more characters than
needed are unavoidably matched by \fItagregexp\fP, it may be useful to needed are unavoidably matched by \fItagregexp\fP, it may be useful to
@ -147,7 +147,7 @@
ignores regexps without a \fInameregexp\fP. The syntax of regexps is ignores regexps without a \fInameregexp\fP. The syntax of regexps is
the same as in emacs. The following character escape sequences are the same as in emacs. The following character escape sequences are
supported: \\a, \\b, \\d, \\e, \\f, \\n, \\r, \\t, \\v, which supported: \\a, \\b, \\d, \\e, \\f, \\n, \\r, \\t, \\v, which
@@ -253,15 +253,15 @@ tag entries for other files in place. C @@ -260,15 +260,15 @@ tag entries for other files in place. C
by deleting the existing entries for the given files and then by deleting the existing entries for the given files and then
rewriting the new entries at the end of the tags file. It is often rewriting the new entries at the end of the tags file. It is often
faster to simply rebuild the entire tag file than to use this. faster to simply rebuild the entire tag file than to use this.
@ -177,7 +177,7 @@
version=@version@ version=@version@
## Used in $archlibdir. ## Used in $archlibdir.
@@ -158,7 +160,7 @@ MKDIR_P = @MKDIR_P@ @@ -134,7 +136,7 @@ MKDIR_P = @MKDIR_P@
CLIENTW = @CLIENTW@ CLIENTW = @CLIENTW@
# Things that a user might actually run, which should be installed in bindir. # Things that a user might actually run, which should be installed in bindir.
@ -186,7 +186,7 @@
ebrowse${EXEEXT} ebrowse${EXEEXT}
# Things that Emacs runs internally, or during the build process, # Things that Emacs runs internally, or during the build process,
@@ -371,7 +373,7 @@ etags${EXEEXT}: ${etags_deps} @@ -379,7 +381,7 @@ etags${EXEEXT}: ${etags_deps}
## etags.o files on top of each other. ## etags.o files on top of each other.
## FIXME? ## FIXME?
## Can't we use a wrapper that calls 'etags --ctags'? ## Can't we use a wrapper that calls 'etags --ctags'?
@ -207,9 +207,9 @@
#undef _WIN32_WINNT #undef _WIN32_WINNT
--- lib/Makefile.in --- lib/Makefile.in
+++ lib/Makefile.in 2020-08-11 10:17:21.102266456 +0000 +++ lib/Makefile.in 2020-08-11 10:17:21.102266456 +0000
@@ -50,6 +50,8 @@ am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) @@ -33,6 +33,8 @@ all:
am__v_at_0 = @
am__v_at_1 = HAVE_NATIVE_COMP = @HAVE_NATIVE_COMP@
+override CFLAGS := $(CFLAGS) -fPIC +override CFLAGS := $(CFLAGS) -fPIC
+ +
@ -218,14 +218,14 @@
$(GNULIB_WARN_CFLAGS) $(WERROR_CFLAGS) $(PROFILING_CFLAGS) $(CFLAGS) \ $(GNULIB_WARN_CFLAGS) $(WERROR_CFLAGS) $(PROFILING_CFLAGS) $(CFLAGS) \
--- lisp/cmuscheme.el --- lisp/cmuscheme.el
+++ lisp/cmuscheme.el 2020-08-11 10:17:21.106266385 +0000 +++ lisp/cmuscheme.el 2020-08-11 10:17:21.106266385 +0000
@@ -241,7 +241,8 @@ is run). @@ -231,7 +231,8 @@ is run).
(read-string "Run Scheme: " scheme-program-name) (read-string "Run Scheme: " scheme-program-name)
scheme-program-name))) scheme-program-name)))
(if (not (comint-check-proc "*scheme*")) (if (not (comint-check-proc "*scheme*"))
- (let ((cmdlist (split-string-and-unquote cmd))) - (let ((cmdlist (split-string-and-unquote cmd)))
+ (let ((cmdlist (split-string-and-unquote cmd)) + (let ((cmdlist (split-string-and-unquote cmd))
+ process-connection-type) + process-connection-type)
(set-buffer (apply 'make-comint "scheme" (car cmdlist) (set-buffer (apply #'make-comint "scheme" (car cmdlist)
(scheme-start-file (car cmdlist)) (cdr cmdlist))) (scheme-start-file (car cmdlist)) (cdr cmdlist)))
(inferior-scheme-mode))) (inferior-scheme-mode)))
--- lisp/international/mule-cmds.el --- lisp/international/mule-cmds.el
@ -240,7 +240,7 @@
(define-key map "F" 'set-file-name-coding-system) (define-key map "F" 'set-file-name-coding-system)
--- lisp/net/ange-ftp.el --- lisp/net/ange-ftp.el
+++ lisp/net/ange-ftp.el 2020-08-11 10:17:21.106266385 +0000 +++ lisp/net/ange-ftp.el 2020-08-11 10:17:21.106266385 +0000
@@ -5066,7 +5066,7 @@ NEWNAME should be the name to give the n @@ -5076,7 +5076,7 @@ NEWNAME should be the name to give the n
; "If a host matches this regexp then it is assumed to be running VOS.") ; "If a host matches this regexp then it is assumed to be running VOS.")
; ;
;(defun ange-ftp-vos-host (host) ;(defun ange-ftp-vos-host (host)
@ -249,7 +249,7 @@
; (save-match-data ; (save-match-data
; (string-match ange-ftp-vos-host-regexp host)))) ; (string-match ange-ftp-vos-host-regexp host))))
; ;
@@ -5181,7 +5181,7 @@ NEWNAME should be the name to give the n @@ -5191,7 +5191,7 @@ NEWNAME should be the name to give the n
;; Return non-nil if HOST is running VMS. ;; Return non-nil if HOST is running VMS.
(defun ange-ftp-vms-host (host) (defun ange-ftp-vms-host (host)
@ -258,7 +258,7 @@
(string-match-p ange-ftp-vms-host-regexp host))) (string-match-p ange-ftp-vms-host-regexp host)))
;; Because some VMS ftp servers convert filenames to lower case ;; Because some VMS ftp servers convert filenames to lower case
@@ -5689,7 +5689,7 @@ Other orders of $ and _ seem to all work @@ -5699,7 +5699,7 @@ Other orders of $ and _ seem to all work
;; Return non-nil if HOST is running MTS. ;; Return non-nil if HOST is running MTS.
(defun ange-ftp-mts-host (host) (defun ange-ftp-mts-host (host)
@ -267,7 +267,7 @@
(string-match-p ange-ftp-mts-host-regexp host))) (string-match-p ange-ftp-mts-host-regexp host)))
;; Parse the current buffer which is assumed to be in mts ftp dir format. ;; Parse the current buffer which is assumed to be in mts ftp dir format.
@@ -5887,7 +5887,7 @@ Other orders of $ and _ seem to all work @@ -5897,7 +5897,7 @@ Other orders of $ and _ seem to all work
;; Return non-nil if HOST is running CMS. ;; Return non-nil if HOST is running CMS.
(defun ange-ftp-cms-host (host) (defun ange-ftp-cms-host (host)
@ -326,7 +326,7 @@
+;;; site-load.el ends here +;;; site-load.el ends here
--- lisp/speedbar.el --- lisp/speedbar.el
+++ lisp/speedbar.el 2020-08-11 10:17:21.106266385 +0000 +++ lisp/speedbar.el 2020-08-11 10:17:21.106266385 +0000
@@ -767,6 +767,7 @@ If you want to change this while speedba @@ -732,6 +732,7 @@ If you want to change this while speedba
;; Navigation. ;; Navigation.
(define-key map "n" 'speedbar-next) (define-key map "n" 'speedbar-next)
@ -336,24 +336,30 @@
(define-key map "\M-p" 'speedbar-restricted-prev) (define-key map "\M-p" 'speedbar-restricted-prev)
--- lisp/textmodes/ispell.el --- lisp/textmodes/ispell.el
+++ lisp/textmodes/ispell.el 2020-08-11 10:30:39.847965024 +0000 +++ lisp/textmodes/ispell.el 2020-08-11 10:30:39.847965024 +0000
@@ -202,10 +202,12 @@ Must be greater than 1." @@ -191,13 +191,15 @@ Must be greater than 1."
;; cause an error; and one of the other spelling engines below is :type 'integer)
;; almost certainly installed in any case, for enchant to use.
(defcustom ispell-program-name (defcustom ispell-program-name
- (or (executable-find "aspell") - (or (executable-find "aspell")
- (executable-find "ispell") - (executable-find "ispell")
- (executable-find "hunspell") - (executable-find "hunspell")
- ;; Enchant is commonly installed as `enchant-2', so use this
- ;; name and avoid old versions of `enchant'.
- (executable-find "enchant-2")
- "ispell") - "ispell")
+ (if (functionp 'append-ispell-dict-alist) + (if (functionp 'append-ispell-dict-alist)
+ "ispell" + "ispell"
+ (or (executable-find "aspell") + (or (executable-find "aspell")
+ (executable-find "ispell") + (executable-find "ispell")
+ (executable-find "hunspell") + (executable-find "hunspell")
+ ;; Enchant is commonly installed as `enchant-2', so use this
+ ;; name and avoid old versions of `enchant'.
+ (executable-find "enchant-2")
+ "ispell")) + "ispell"))
"Program invoked by \\[ispell-word] and \\[ispell-region] commands." "Program invoked by \\[ispell-word] and \\[ispell-region] commands."
:type 'string :type 'string
:set (lambda (symbol value) :set (lambda (symbol value)
@@ -1438,6 +1440,78 @@ The variable `ispell-library-directory' @@ -1396,6 +1398,78 @@ The variable `ispell-library-directory'
;; Define commands in menu in opposite order you want them to appear. ;; Define commands in menu in opposite order you want them to appear.
(let ((map (make-sparse-keymap "Spell"))) (let ((map (make-sparse-keymap "Spell")))

3
emacs-28.1.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:28b1b3d099037a088f0a4ca251d7e7262eab5ea1677aabffa6c4426961ad75e1
size 47699512

16
emacs-28.1.tar.xz.sig Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEF+kNUhZywEYxsRg+542uDzEV4GsFAmJK2PAACgkQ542uDzEV
4GuLAxAAuUO0wrWOs8bIyoFDspz0oBgJsZD6gScqRf9jVpITqegYQA6UYhPtBg24
CZGvJYX3TUpw6B+9dzOaRcFghzmgJTOvQemo8WK7o4aumUtp4BUjl1vLsAMgsA7e
age+IY9z6Uo7GsUttpDvdZJYh+YV+p/GPu0Po441ztPAyxWzrSyRVqXXZXb0/tg6
98MyzcffZbYr/D4Aox/V0Y2PXbO+0S097jFLtKRX/UioEHeGLKdeVbVa7eB5kfJu
IUS7Kg015loBY8UxObnMAU0WGUaPbPk/+Zk4QqRnAf08F8F+ajZxv6nRyPIzv82T
ULgmSdn0SXh870+Q7RWo8Wq+s+9CdYCUVT5DKV9G3aoBGqZnUNe9Wv295GKbZYqE
9TRTFr6000FNIMocc22rVmRVq2cxUUe9uNyZM7jw4Juhczw0/vGA0nSWfqlPSTsH
88AJCyjzL/HqrU9zqS5wwx+DIkVlUW+94/0jo0AUls/2z1oFfrxsv0GEXhtQWR6N
iMdfdY1tLwoS3xx3r9+mEDivn7EW9ySJO41rQ79FTiq5UgZzw+Y+szT7CWpiK/99
DRPS4yTZsVXfAlLcjSsL+KimBhdWrgrwDIViW1WkJMngwjhRjcRuFpDjZbUYhYaH
a55ePutqf/+R5a0mlgCV3RPmqf+lGp30JohtWL5VZsK90jtdATQ=
=maOw
-----END PGP SIGNATURE-----

View File

@ -1,11 +1,12 @@
addFilter(".*no-documentation.*")
addFilter(".*zero-length.*/var/games/emacs/.*-scores.*") addFilter(".*zero-length.*/var/games/emacs/.*-scores.*")
addFilter(".*hidden-file-or-dir.*/etc/skel/.gnu-emacs.*")
addFilter(".*file-in-usr-marked-as-conffile.*/usr/share/emacs/site-lisp/site-start.el.*")
addFilter(".*non-etc-or-var-file-marked-as-conffile.*/usr/share/emacs/site-lisp/site-start.el.*") addFilter(".*non-etc-or-var-file-marked-as-conffile.*/usr/share/emacs/site-lisp/site-start.el.*")
addFilter(".*no-manual-page-for-binary.*emacs-*")
addFilter(".*name-repeated-in-summar.*") addFilter(".*name-repeated-in-summar.*")
addFilter(".*idden-file-or-dir.*\.dir-locals.el.*")
addFilter(".*position-independent-executable-suggested.*/usr/bin/emacs-.*") addFilter(".*position-independent-executable-suggested.*/usr/bin/emacs-.*")
addFilter(".*files-duplicate.*/usr/share/emacs.*") addFilter(".*files-duplicate.*/usr/share/emacs.*")
addFilter(".*desktopfile-without-binary.*/usr/share/applications/emacs.desktop.*emacs.*") addFilter(".*desktopfile-without-binary.*/usr/share/applications/emacs.desktop.*emacs.*")
addFilter(".*emacs-info.noarch:.*W:.*package-with-huge-docs:.*100%.*")
addFilter(".*emacs-eln.*:.*W:.*unstripped-binary-or-object.*")
addFilter(".*emacs-eln.*:.*E:.*shared-library-without-dependency-information.*")
addFilter(".*position-independent-executable-suggested.*")
addFilter(".*desktopfile-without-binary.*")
addFilter(".*E:.*invalid-desktopfile.*/usr/share/applications/emacsclient.*\.desktop.*")

View File

@ -1,3 +1,18 @@
-------------------------------------------------------------------
Tue Apr 5 07:00:31 UTC 2022 - Dr. Werner Fink <werner@suse.de>
- Replace emacs-27.2-pdf.tar.xz with refreshed emacs-28.1-pdf.tar.xz
-------------------------------------------------------------------
Mon Apr 4 12:45:06 UTC 2022 - Dr. Werner Fink <werner@suse.de>
- Update to GNU Emacs version 28.1
* Emacs now optionally supports native compilation of Lisp files.
* The Cairo graphics library is now used by default if present.
* 'configure' now warns about building with libXft support.
* 'configure' now warns about not using HarfBuzz if using Cairo.
* Building without double buffering support.
------------------------------------------------------------------- -------------------------------------------------------------------
Wed Feb 9 23:28:45 UTC 2022 - Bjørn Lie <bjorn.lie@gmail.com> Wed Feb 9 23:28:45 UTC 2022 - Bjørn Lie <bjorn.lie@gmail.com>
@ -9,6 +24,16 @@ Thu Jan 27 12:59:04 UTC 2022 - Andreas Schwab <schwab@suse.de>
- Remove unneeded pure size adjustments - Remove unneeded pure size adjustments
-------------------------------------------------------------------
Wed Jan 19 14:56:14 UTC 2022 - Dr. Werner Fink <werner@suse.de>
- Remove patches now upstream and in 28.1
* boo1178942-bedb3cb6.patch
* emacs-27.2-COLORTERM-24bit.patch
* sigsegv-stack.patch
- Remove patch emacs-24.4-xim.patch as not needed anymore
- Port and rename patch emacs-27.1.dif which is now emacs-28.1.dif
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Jan 13 07:25:28 UTC 2022 - Dr. Werner Fink <werner@suse.de> Thu Jan 13 07:25:28 UTC 2022 - Dr. Werner Fink <werner@suse.de>

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -2,17 +2,26 @@ From: Andreas Schwab
Index: src/emacs.c Index: src/emacs.c
=================================================================== ===================================================================
--- src/emacs.c.orig ---
+++ src/emacs.c src/emacs.c | 4 ++++
@@ -869,7 +869,11 @@ load_pdump (int argc, char **argv) 1 file changed, 4 insertions(+)
/* Look for "emacs.pdmp" in PATH_EXEC. We hardcode "emacs" in
"emacs.pdmp" so that the Emacs binary still works if the user --- src/emacs.c
copies and renames it. */ +++ src/emacs.c 2021-10-08 09:36:17.039806927 +0000
@@ -837,12 +837,16 @@ load_pdump (int argc, char **argv)
NULL
#endif
;
+#ifdef PDMP_BASE +#ifdef PDMP_BASE
+ const char *argv0_base = PDMP_BASE; + const char *argv0_base = PDMP_BASE
+#else +#else
const char *argv0_base = "emacs"; const char *argv0_base =
#ifdef NS_SELF_CONTAINED
"Emacs"
#else
"emacs"
#endif
+#endif +#endif
ptrdiff_t needed = (strlen (path_exec) ;
+ 1
+ strlen (argv0_base) /* TODO: maybe more thoroughly scrub process environment in order to

View File

@ -1,40 +0,0 @@
From f97e07ea807cc6d38774a3888a15091b20645ac6 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Tue, 9 Mar 2021 11:22:59 -0800
Subject: [PATCH] Port alternate signal stack to upcoming glibc 2.34
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* src/sysdep.c (sigsegv_stack): Increase size to 64 KiB and align
it to max_align_t. This copies from Gnulibs c-stack.c, and works
around a portability bug in draft glibc 2.34, which no longer
defines SIGSTKSZ when _GNU_SOURCE is defined.
---
src/sysdep.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/src/sysdep.c b/src/sysdep.c
index 941b4e2fa2..24d8832b2f 100644
--- a/src/sysdep.c
+++ b/src/sysdep.c
@@ -1785,7 +1785,15 @@ handle_arith_signal (int sig)
/* Alternate stack used by SIGSEGV handler below. */
-static unsigned char sigsegv_stack[SIGSTKSZ];
+/* Storage for the alternate signal stack.
+ 64 KiB is not too large for Emacs, and is large enough
+ for all known platforms. Smaller sizes may run into trouble.
+ For example, libsigsegv 2.6 through 2.8 have a bug where some
+ architectures use more than the Linux default of an 8 KiB alternate
+ stack when deciding if a fault was caused by stack overflow. */
+static max_align_t sigsegv_stack[(64 * 1024
+ + sizeof (max_align_t) - 1)
+ / sizeof (max_align_t)];
/* Return true if SIGINFO indicates a stack overflow. */
--
2.32.0