summaryrefslogtreecommitdiff
path: root/app-emacs/gnuserv/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-10-13 18:18:15 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-10-13 18:18:15 +0100
commitb8330d80ce605a72596ccfa1bfc087b9ded559b8 (patch)
tree209587b26d39505ff0a0c21c2f20ef51652688e9 /app-emacs/gnuserv/files
parent41c2683a5cfac2bd3280dc5d5aaed73b6c377bcf (diff)
gentoo auto-resync : 13:10:2023 - 18:18:15
Diffstat (limited to 'app-emacs/gnuserv/files')
-rw-r--r--app-emacs/gnuserv/files/gnuserv-3.12.8-advice.patch7
-rw-r--r--app-emacs/gnuserv/files/gnuserv-3.12.8-cl.patch62
-rw-r--r--app-emacs/gnuserv/files/gnuserv-3.12.8-devices.patch47
-rw-r--r--app-emacs/gnuserv/files/gnuserv-3.12.8-warnings.patch (renamed from app-emacs/gnuserv/files/gnuserv-3.12.8-emacs-29.patch)77
4 files changed, 58 insertions, 135 deletions
diff --git a/app-emacs/gnuserv/files/gnuserv-3.12.8-advice.patch b/app-emacs/gnuserv/files/gnuserv-3.12.8-advice.patch
index e5f1cb9248f9..f4ac28efa662 100644
--- a/app-emacs/gnuserv/files/gnuserv-3.12.8-advice.patch
+++ b/app-emacs/gnuserv/files/gnuserv-3.12.8-advice.patch
@@ -2,7 +2,7 @@ defadvice is obsolete in Emacs 30.
--- gnuserv-3.12.8/gnuserv-compat.el
+++ gnuserv-3.12.8/gnuserv-compat.el
-@@ -112,38 +112,34 @@
+@@ -112,38 +112,35 @@
;; can do! If the device doesn't represent a live frame, we create
;; the frame as requested.
@@ -45,13 +45,14 @@ defadvice is obsolete in Emacs 30.
- first
- (predicate &optional device)
- activate)
-- ad-do-it)
+- ad-do-it))
+ (defun gnuserv-compat-filtered-frame-list (orig-fun predicate
+ &optional _device)
+ (funcall orig-fun predicate))
+
+ (advice-add 'filtered-frame-list
+ :around #'gnuserv-compat-filtered-frame-list)
- ;; )
++ )
+ ;; Emulate XEmacs devices. A device is just a frame. For the most
diff --git a/app-emacs/gnuserv/files/gnuserv-3.12.8-cl.patch b/app-emacs/gnuserv/files/gnuserv-3.12.8-cl.patch
index df5d1098ce5e..cf5c062fdab1 100644
--- a/app-emacs/gnuserv/files/gnuserv-3.12.8-cl.patch
+++ b/app-emacs/gnuserv/files/gnuserv-3.12.8-cl.patch
@@ -1,67 +1,5 @@
Most Common Lisp macros want a cl- prefix in Emacs 27 and later
---- gnuserv-3.12.8/devices.el
-+++ gnuserv-3.12.8/devices.el
-@@ -31,7 +31,7 @@
- ;; XEmacs 19.14. A 'device' for Emacs 19 is just a frame, from which we can
- ;; determine the connection to an X display, etc.
-
--(require 'cl)
-+(require 'cl-macs)
- (eval-when-compile
- (if (string-match "XEmacs" (emacs-version))
- (set 'byte-optimize nil)))
-@@ -220,43 +220,43 @@
- (setq frames (cdr frames)))))
-
- (defun device-color-cells (&optional device)
-- (case window-system
-+ (cl-case window-system
- ((x win32 w32 pm) (x-display-color-cells device))
- (ns (ns-display-color-cells device))
- (otherwise 1)))
-
- (defun device-pixel-width (&optional device)
-- (case window-system
-+ (cl-case window-system
- ((x win32 w32 pm) (x-display-pixel-width device))
- (ns (ns-display-pixel-width device))
- (otherwise (frame-width device))))
-
- (defun device-pixel-height (&optional device)
-- (case window-system
-+ (cl-case window-system
- ((x win32 w32 pm) (x-display-pixel-height device))
- (ns (ns-display-pixel-height device))
- (otherwise (frame-height device))))
-
- (defun device-mm-width (&optional device)
-- (case window-system
-+ (cl-case window-system
- ((x win32 w32 pm) (x-display-mm-width device))
- (ns (ns-display-mm-width device))
- (otherwise nil)))
-
- (defun device-mm-height (&optional device)
-- (case window-system
-+ (cl-case window-system
- ((x win32 w32 pm) (x-display-mm-height device))
- (ns (ns-display-mm-height device))
- (otherwise nil)))
-
- (defun device-bitplanes (&optional device)
-- (case window-system
-+ (cl-case window-system
- ((x win32 w32 pm) (x-display-planes device))
- (ns (ns-display-planes device))
- (otherwise 2)))
-
- (defun device-class (&optional device)
-- (case window-system
-+ (cl-case window-system
- (x ; X11
- (cond
- ((fboundp 'x-display-visual-class)
--- gnuserv-3.12.8/gnuserv-compat.el
+++ gnuserv-3.12.8/gnuserv-compat.el
@@ -49,7 +49,7 @@
diff --git a/app-emacs/gnuserv/files/gnuserv-3.12.8-devices.patch b/app-emacs/gnuserv/files/gnuserv-3.12.8-devices.patch
new file mode 100644
index 000000000000..0c509a7cd842
--- /dev/null
+++ b/app-emacs/gnuserv/files/gnuserv-3.12.8-devices.patch
@@ -0,0 +1,47 @@
+Function device-class from devices.el is not used, but collides with
+a function of the same name in frame.el of Emacs 29. So, inline what
+we need, and drop devices.el altogether.
+
+--- gnuserv-3.12.8/gnuserv-compat.el
++++ gnuserv-3.12.8/gnuserv-compat.el
+@@ -153,9 +153,39 @@
+ (if (string-match "XEmacs" (emacs-version))
+ nil
+
+- (require 'devices)
+ (defalias 'device-list 'frame-list)
+ (defalias 'selected-device 'selected-frame)
++ (defalias 'device-live-p 'frame-live-p)
++ (defalias 'frame-device 'identity)
++ (defalias 'make-tty-device 'ignore)
++
++ (defun make-x-device (&optional display)
++ (if display
++ (make-frame-on-display display)
++ (make-frame)))
++
++ (defun device-on-window-system-p (&optional device)
++ "Return non-nil if DEVICE is on a window system.
++ This generally means that there is support for the mouse, the menubar,
++ the toolbar, glyphs, etc."
++ (and (cdr-safe (assq 'display (frame-parameters device))) t))
++
++ (defvar delete-device-hook nil
++ "Function or functions to call when a device is deleted.
++ One argument, the to-be-deleted device.")
++
++ (defun delete-device (device &optional force)
++ "Delete DEVICE, permanently eliminating it from use.
++ Normally, you cannot delete the last non-minibuffer-only frame (you must
++ use `save-buffers-kill-emacs' or `kill-emacs'). However, if optional
++ second argument FORCE is non-nil, you can delete the last frame. (This
++ will automatically call `save-buffers-kill-emacs'.)"
++ (let ((frames (device-frame-list device)))
++ (run-hook-with-args 'delete-device-hook device)
++ (while frames
++ (delete-frame (car frames) force)
++ (setq frames (cdr frames)))))
++
+ (defun device-frame-list (&optional device)
+ (list
+ (if device
diff --git a/app-emacs/gnuserv/files/gnuserv-3.12.8-emacs-29.patch b/app-emacs/gnuserv/files/gnuserv-3.12.8-warnings.patch
index 7b9c8d05cb07..113d7f0f5f37 100644
--- a/app-emacs/gnuserv/files/gnuserv-3.12.8-emacs-29.patch
+++ b/app-emacs/gnuserv/files/gnuserv-3.12.8-warnings.patch
@@ -1,88 +1,25 @@
-Fix collision of function device-class in Emacs 29.
-Fix some byte-compiler warnings.
+Fix some byte-compiler warnings
---- gnuserv-3.12.8/devices.el
-+++ gnuserv-3.12.8/devices.el
-@@ -32,13 +32,7 @@
- ;; determine the connection to an X display, etc.
-
- (require 'cl-macs)
--(eval-when-compile
-- (if (string-match "XEmacs" (emacs-version))
-- (set 'byte-optimize nil)))
-
--(if (string-match "XEmacs" (emacs-version))
-- nil
--'()
- (defalias 'selected-device 'ignore)
- (defalias 'device-or-frame-p 'framep)
- (defalias 'device-console 'ignore)
-@@ -219,6 +213,10 @@
- (delete-frame (car frames) force)
- (setq frames (cdr frames)))))
-
-+;; Apparently none of the functions below are used, and device-class
-+;; collides with a function of the same name in frame.el of Emacs 29.
-+'(
-+
- (defun device-color-cells (&optional device)
- (cl-case window-system
- ((x win32 w32 pm) (x-display-color-cells device))
-@@ -333,10 +331,6 @@
- "Given a TYPE, return t if it is valid."
- (memq type (device-type-list)))
-
--) ; This closes the conditional on whether we are in XEmacs or not
-+)
-
- (provide 'devices)
--
--(eval-when-compile
-- (if (string-match "XEmacs" (emacs-version))
-- (set 'byte-optimize t)))
--- gnuserv-3.12.8/gnuserv-compat.el
+++ gnuserv-3.12.8/gnuserv-compat.el
-@@ -100,8 +100,8 @@
+@@ -100,7 +100,7 @@
;; `delete-frame' and `filtered-frame-list' to handle some device
;; stuff.
-(if (string-match "XEmacs" (emacs-version))
-- nil
-+;;(if (string-match "XEmacs" (emacs-version))
-+;; nil
++(if (featurep 'xemacs)
+ nil
;; XEmacs `make-frame' takes an optional device to create the frame
- ;; on. Since `make-device' just calls 'make-frame', we don't want
-@@ -143,15 +143,16 @@
- first
- (predicate &optional device)
- activate)
-- ad-do-it))
-+ ad-do-it)
-+;; )
-
-
- ;; Emulate XEmacs devices. A device is just a frame. For the most
+@@ -150,7 +150,7 @@
;; part we use devices.el from the Emacs-W3 distribution. In some
;; places the implementation seems wrong, so we "fix" it!
-(if (string-match "XEmacs" (emacs-version))
-- nil
-+;;(if (string-match "XEmacs" (emacs-version))
-+;; nil
++(if (featurep 'xemacs)
+ nil
- (require 'devices)
(defalias 'device-list 'frame-list)
-@@ -160,7 +161,8 @@
- (list
- (if device
- device
-- (selected-frame)))))
-+ (selected-frame))))
-+;; )
-
-
-
--- gnuserv-3.12.8/gnuserv.el
+++ gnuserv-3.12.8/gnuserv.el
@@ -455,13 +455,14 @@