Compare commits

...
Sign in to create a new pull request.

5 commits

Author SHA1 Message Date
Benson Muite
eb7d785748 Update to 30.1 in F41 2025-05-27 21:48:25 +03:00
Benson Muite
09edb60c03 Partial update to 30.1
- Enable tests
- Build has segmentation fault on i686
2025-05-25 23:03:23 +03:00
Peter Oliver
b16738093b Relax dependencies of emacs-terminal. 2025-03-13 17:23:51 +00:00
Peter Oliver
18b74c329f Require XPM pixbuf loader for GTK builds (#2335309) 2025-01-03 14:05:16 +00:00
Peter Oliver
5efba81bd0 Fix typo in emacs-gtk+x11 Requires. 2025-01-03 14:05:05 +00:00
6 changed files with 366 additions and 43 deletions

16
0001-Base-puresize.patch Normal file
View file

@ -0,0 +1,16 @@
diff -ruN emacs-30.1/src/puresize.h emacs-30.1-mod4/src/puresize.h
--- emacs-30.1/src/puresize.h 2025-02-18 21:31:36.000000000 +0300
+++ emacs-30.1-mod4/src/puresize.h 2025-05-27 14:17:15.067370990 +0300
@@ -47,8 +47,12 @@
#endif
#ifndef BASE_PURESIZE
+#if defined __i386__
+#define BASE_PURESIZE (4500000 + SYSTEM_PURESIZE_EXTRA + SITELOAD_PURESIZE_EXTRA)
+#else
#define BASE_PURESIZE (3400000 + SYSTEM_PURESIZE_EXTRA + SITELOAD_PURESIZE_EXTRA)
#endif
+#endif
/* Increase BASE_PURESIZE by a ratio depending on the machine's word size. */
#ifndef PURESIZE_RATIO

View file

@ -0,0 +1,68 @@
diff -ruN emacs-30.1/test/lisp/emacs-lisp/lisp-mnt-tests.el emacs-30.1-mod/test/lisp/emacs-lisp/lisp-mnt-tests.el
--- emacs-30.1/test/lisp/emacs-lisp/lisp-mnt-tests.el 2025-02-18 21:31:36.000000000 +0300
+++ emacs-30.1-mod/test/lisp/emacs-lisp/lisp-mnt-tests.el 2025-05-25 09:22:08.042761149 +0300
@@ -31,6 +31,7 @@
("Mats Lidell" . "matsl@gnu.org")))))
(ert-deftest lm--tests-lm-package-requires ()
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(with-temp-buffer
(insert ";; Package-Requires: ((emacs 29.1))")
(should (equal (lm-package-requires) '((emacs 29.1)))))
diff -ruN emacs-30.1/test/lisp/emacs-lisp/package-tests.el emacs-30.1-mod/test/lisp/emacs-lisp/package-tests.el
--- emacs-30.1/test/lisp/emacs-lisp/package-tests.el 2025-02-18 21:31:36.000000000 +0300
+++ emacs-30.1-mod/test/lisp/emacs-lisp/package-tests.el 2025-05-25 09:20:39.979057989 +0300
@@ -220,6 +220,7 @@
(ert-deftest package-test-desc-from-buffer ()
"Parse an elisp buffer to get a `package-desc' object."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(with-package-test (:basedir (ert-resource-directory)
:file "simple-single-1.3.el")
(let ((pi (package-buffer-info)))
@@ -849,6 +850,7 @@
(ert-deftest package-x-test-upload-buffer ()
"Test creating an \"archive-contents\" file"
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(with-package-test (:basedir (ert-resource-directory)
:file "simple-single-1.3.el"
:upload-base t)
@@ -882,6 +884,7 @@
(ert-deftest package-x-test-upload-new-version ()
"Test uploading a new version of a package"
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(with-package-test (:basedir (ert-resource-directory)
:file "simple-single-1.3.el"
:upload-base t)
diff -ruN emacs-30.1/test/lisp/eshell/esh-var-tests.el emacs-30.1-mod/test/lisp/eshell/esh-var-tests.el
--- emacs-30.1/test/lisp/eshell/esh-var-tests.el 2025-02-18 21:31:36.000000000 +0300
+++ emacs-30.1-mod/test/lisp/eshell/esh-var-tests.el 2025-05-25 17:38:24.332568272 +0300
@@ -262,6 +262,7 @@
(ert-deftest esh-var-test/interp-temp-cmd ()
"Interpolate command result redirected to temp file."
+ :tags (if (getenv "RPM_BUILD_ROOT") '(:unstable))
(eshell-command-result-equal "cat $<echo hi>" "hi"))
(ert-deftest esh-var-test/interp-concat-lisp ()
diff -ruN emacs-30.1/test/lisp/proced-tests.el emacs-30.1-mod/test/lisp/proced-tests.el
--- emacs-30.1/test/lisp/proced-tests.el 2025-02-18 01:38:58.000000000 +0300
+++ emacs-30.1-mod/test/lisp/proced-tests.el 2025-05-25 15:50:54.429876499 +0300
@@ -115,6 +115,7 @@
(proced--assert-emacs-pid-in-buffer))))
(ert-deftest proced-refine-test ()
+ (skip-when (getenv "RPM_BUILD_ROOT"))
;; %CPU is not implemented on macOS
(skip-when (eq system-type 'darwin))
(proced--within-buffer
@@ -130,6 +131,7 @@
(forward-line)))))
(ert-deftest proced-refine-with-update-test ()
+ :tags (if (getenv "RPM_BUILD_ROOT") '(:unstable))
(skip-when (eq system-type 'darwin))
(proced--within-buffer
'verbose

View file

@ -0,0 +1,241 @@
diff -ruN emacs-30.1/test/src/treesit-tests.el emacs-30.1-mod/test/src/treesit-tests.el
--- emacs-30.1/test/src/treesit-tests.el 2025-02-18 21:31:36.000000000 +0300
+++ emacs-30.1-mod/test/src/treesit-tests.el 2025-05-25 08:15:40.255043945 +0300
@@ -62,6 +62,7 @@
(ert-deftest treesit-basic-parsing ()
"Test basic parsing routines."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(with-temp-buffer
(let ((parser (treesit-parser-create 'json)))
@@ -89,6 +90,7 @@
(ert-deftest treesit-node-api ()
"Tests for node API."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(with-temp-buffer
(let (parser root-node doc-node object-node pair-node)
@@ -190,6 +192,7 @@
(ert-deftest treesit-indirect-buffer ()
"Tests for indirect buffers."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(let ((base (get-buffer-create "*treesit test*"))
parser indirect)
@@ -226,6 +229,7 @@
(ert-deftest treesit-search-subtree ()
"Test `treesit-search-subtree'."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(with-temp-buffer
(let (parser root array)
@@ -269,6 +273,7 @@
(defmacro treesit--ert-search-setup (&rest body)
"Setup macro used by `treesit-search-forward' and friends.
BODY is the test body."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(declare (debug (&rest form)))
`(with-temp-buffer
(let (parser root array)
@@ -282,6 +287,7 @@
(ert-deftest treesit-search-forward ()
"Test `treesit-search-forward'."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(treesit--ert-search-setup
(cl-loop for cursor = (treesit-node-child array 0)
@@ -299,6 +305,7 @@
(ert-deftest treesit-search-forward-named-only ()
"Test `treesit-search-forward'."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(treesit--ert-search-setup
(cl-loop for cursor = (treesit-node-child
@@ -314,6 +321,7 @@
(ert-deftest treesit-search-backward ()
"Test `treesit-search-forward'."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(treesit--ert-search-setup
(cl-loop for cursor = (treesit-node-child array -1)
@@ -332,6 +340,7 @@
(ert-deftest treesit-search-backward-named-only ()
"Test `treesit-search-forward'."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(treesit--ert-search-setup
(cl-loop for cursor = (treesit-node-child
@@ -347,6 +356,7 @@
(ert-deftest treesit-search-forward-predicate ()
"Test various form of supported predicates in search functions."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(treesit--ert-search-setup
;; The following tests are adapted from `treesit-search-forward'.
@@ -388,6 +398,7 @@
(ert-deftest treesit-search-forward-predicate-invalid-predicate ()
"Test tree-sitter's ability to detect invalid predicates."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(treesit--ert-search-setup
(dolist (pred '( 1 (not 1) (not "2" "3") (or) (or 1) 'a))
@@ -400,6 +411,7 @@
(ert-deftest treesit-cursor-helper-with-missing-node ()
"Test treesit_cursor_helper with a missing node."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(treesit--ert-search-setup
(delete-char -1)
@@ -416,6 +428,7 @@
(ert-deftest treesit-query-api ()
"Tests for query API."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(with-temp-buffer
(let (parser root-node)
@@ -481,6 +494,7 @@
(ert-deftest treesit-narrow ()
"Tests if narrowing works."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(with-temp-buffer
(let (parser)
@@ -538,6 +552,7 @@
edits like this don't produce assertion errors. (I inserted a
bunch of assertions that checks e.g. visible_beg <=
visible_end.)"
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(with-temp-buffer
(let (parser)
@@ -619,6 +634,7 @@
(ert-deftest treesit-range ()
"Tests if range works."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(with-temp-buffer
(let (parser)
@@ -672,6 +688,7 @@
(ert-deftest treesit-range-offset ()
"Tests if range offsets work."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'javascript))
(with-temp-buffer
(let ((query '(((call_expression (identifier) @_html_template_fn
@@ -686,11 +703,13 @@
(ert-deftest treesit-range-merge ()
"Test merging ranges."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(should (equal (treesit--merge-ranges '((1 . 1) (3 . 483)) nil 1 488)
nil)))
(ert-deftest treesit-range-fixup-after-edit ()
"Tests if Emacs can fix OOB ranges after deleting text or narrowing."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(with-temp-buffer
(let ((parser (treesit-parser-create 'json)))
@@ -752,6 +771,7 @@
(ert-deftest treesit-multi-lang ()
"Tests if parsing multiple language works."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (and (treesit-language-available-p 'html)
(treesit-language-available-p 'css)
(treesit-language-available-p 'javascript)))
@@ -790,6 +810,7 @@
(ert-deftest treesit-parser-supplemental ()
"Supplemental node functions."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
;; `treesit-parse-string'.
(should (equal (treesit-node-string
@@ -809,6 +830,7 @@
(ert-deftest treesit-node-supplemental ()
"Supplemental node functions."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(let (parser root-node doc-node)
(progn
@@ -859,6 +881,7 @@
(ert-deftest treesit-node-at ()
"Test `treesit-node-at'."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(let (parser)
(progn
@@ -889,6 +912,7 @@
(ert-deftest treesit-node-check ()
"Test `treesit-node-check'."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'json))
(let (parser root-node array-node comment-node)
(progn
@@ -1184,6 +1208,7 @@
(ert-deftest treesit-defun-navigation-nested-2 ()
"Test defun navigation using `js-ts-mode'."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'javascript))
;; Nested defun navigation
(require 'js)
@@ -1195,6 +1220,7 @@
(ert-deftest treesit-defun-navigation-nested-3 ()
"Test defun navigation using `bash-ts-mode'."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'bash))
;; Nested defun navigation
(treesit--ert-test-defun-navigation
@@ -1208,6 +1234,7 @@
(ert-deftest treesit-defun-navigation-nested-4 ()
"Test defun navigation using Elixir.
This tests bug#60355."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'elixir))
;; Nested defun navigation
(let ((pred (lambda (node)
@@ -1224,6 +1251,7 @@
(ert-deftest treesit-defun-navigation-top-level ()
"Test top-level only defun navigation."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'python))
;; Nested defun navigation
(require 'python)
@@ -1235,6 +1263,7 @@
(ert-deftest treesit-search-subtree-forward-1 ()
"Test search subtree forward."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'python))
(require 'python)
(python-ts-mode)
@@ -1252,6 +1281,7 @@
(ert-deftest treesit-search-subtree-backward-1 ()
"Test search subtree with backward=t."
+ (skip-when (getenv "RPM_BUILD_ROOT"))
(skip-unless (treesit-language-available-p 'python))
(require 'python)
(python-ts-mode)

View file

@ -1,26 +1,13 @@
From eaaf4883aee50974eeb03e529a29585f8ddc1d9d Mon Sep 17 00:00:00 2001
From: Bhavin Gandhi <bhavin192@geeksocket.in>
Date: Wed, 31 May 2023 22:44:54 +0530
Subject: [PATCH] Add package names to PGTK on X error message
---
src/pgtkterm.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/pgtkterm.c b/src/pgtkterm.c
index c00e13550bd..ce51bff5947 100644
--- a/src/pgtkterm.c
+++ b/src/pgtkterm.c
@@ -6680,7 +6680,8 @@ pgtk_display_x_warning (GdkDisplay *display)
" System. That configuration is unsupported and"
" will lead to sporadic crashes during transfer of"
" large selection data. It will also lead to"
- " various problems with keyboard input.");
+ " various problems with keyboard input."
+ "\nInstall emacs-gtk+x11 or emacs-lucid package.");
diff -ruN emacs-30.1/src/pgtkterm.c emacs-30.1-mod3/src/pgtkterm.c
--- emacs-30.1/src/pgtkterm.c 2025-02-18 21:31:36.000000000 +0300
+++ emacs-30.1-mod3/src/pgtkterm.c 2025-05-25 19:12:51.952225248 +0300
@@ -7000,7 +7000,8 @@
" System. That configuration is unsupported and\n"
" will lead to sporadic crashes during transfer of\n"
" large selection data. It will also lead to\n"
- " various problems with keyboard input.\n");
+ " various problems with keyboard input.\n"
+ " Install emacs-gtk+x11 or emacs-lucid package.\n");
gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
gtk_container_add (GTK_CONTAINER (content_area), label);
gtk_widget_show (label);
--
2.40.1

View file

@ -1,11 +1,12 @@
--- a/src/gnutls.c 2016-01-24 10:29:58.000000000 +0100
+++ b/src/gnutls.c 2016-02-02 09:32:28.477274274 +0100
@@ -1557,7 +1557,7 @@
diff -ruN emacs-30.1/src/gnutls.c emacs-30.1-mod2/src/gnutls.c
--- emacs-30.1/src/gnutls.c 2025-02-18 21:31:36.000000000 +0300
+++ emacs-30.1-mod2/src/gnutls.c 2025-05-25 18:56:46.143142320 +0300
@@ -1974,7 +1974,7 @@
gnutls_certificate_credentials_t x509_cred = NULL;
gnutls_anon_client_credentials_t anon_cred = NULL;
Lisp_Object global_init;
- char const *priority_string_ptr = "NORMAL"; /* default priority string. */
+ char const *priority_string_ptr = "@SYSTEM"; /* default priority string. */
char *c_hostname;
const char *c_pass;
/* Placeholders for the property list elements. */

View file

@ -8,7 +8,7 @@
Summary: GNU Emacs text editor
Name: emacs
Epoch: 1
Version: 29.4
Version: 30.1
Release: %autorelease
License: GPL-3.0-or-later AND CC0-1.0
URL: https://www.gnu.org/software/emacs/
@ -40,25 +40,21 @@ Patch: emacs-libdir-vs-systemd.patch
Patch: emacs-desktop.patch
Patch: emacs-pgtk-on-x-error-message.patch
# Skip failing tests (patches taken from Emacs Git)
Patch: 0001-Fix-failing-help-fns-test.patch
Patch: 0001-Fix-flymake-tests-with-GCC-14.patch
# Increase BASE_PURESIZE, can likely be removed in next release
# as no longer on development branch
# https://lists.gnu.org/archive/html/emacs-devel/2025-02/txtMuC0fL80Sf.txt
# https://lists.gnu.org/archive/html/emacs-devel/2025-02/msg01027.html
Patch: 0001-Base-puresize.patch
# Fix intermittently failing test (https://debbugs.gnu.org/cgi/bugreport.cgi?bug=72073)
Patch: 0001-Fix-wdired-test-unfinished-edit-01-when-temp-dirname.patch
# Fix intermittently failing test (https://debbugs.gnu.org/cgi/bugreport.cgi?bug=72120)
Patch: 0001-Fix-intermittent-failure-of-dired-test-bug27243-02.patch
Patch: 0004-Try-harder-to-stabalise-dired-test-bug27243-02.patch
# Skip failing tests
Patch: 0001-Skip-failing-tests.patch
# Skip intermittently failing tests
Patch: 0002-Test-eshell-test-subcommand-reset-in-pipeline-is-uns.patch
Patch: 0003-Mark-multiple-mml-sec-tests-as-unstable-when-built-i.patch
Patch: 0003-Mark-multiple-mml-sec-tests-as-unstable-when-built-i.patch
# Workaround for https://bugzilla.redhat.com/show_bug.cgi?id=2276822
# (https://debbugs.gnu.org/cgi/bugreport.cgi?bug=63555). If GDK ever
# gets any new backends, this patch may need extending.
Patch: 0001-Apply-display-kluge-for-PGTK-too.patch
Patch: 0002-Fall-back-to-the-terminal-from-pure-GTK-when-no-disp.patch
BuildRequires: alsa-lib-devel
@ -96,6 +92,14 @@ BuildRequires: libxml2-devel
BuildRequires: m17n-lib-devel
BuildRequires: make
BuildRequires: ncurses-devel
BuildRequires: rust-tree-sitter-bash-devel
BuildRequires: rust-tree-sitter-cli-devel
BuildRequires: rust-tree-sitter-css-devel
BuildRequires: rust-tree-sitter-elixir-devel
BuildRequires: rust-tree-sitter-html-devel
BuildRequires: rust-tree-sitter-javascript-devel
BuildRequires: rust-tree-sitter-json-devel
BuildRequires: rust-tree-sitter-python-devel
BuildRequires: sqlite-devel
BuildRequires: systemd-devel
BuildRequires: texinfo
@ -127,12 +131,17 @@ BuildRequires: pkgconfig(systemd)
BuildRequires: util-linux
%endif
%if "%{_lib}" == "lib64"
%global marker ()(64bit)
%endif
# Emacs doesn't run without a font, rhbz#732422
Requires: google-noto-sans-mono-vf-fonts
Requires(preun): /usr/sbin/alternatives
Requires(posttrans): /usr/sbin/alternatives
Requires: emacs-common = %{epoch}:%{version}-%{release}
Requires: libpixbufloader-xpm.so%{?marker}
Provides: emacs(bin) = %{epoch}:%{version}-%{release}
Supplements: ((libwayland-server and emacs-common) unless emacs-nw)
@ -158,10 +167,11 @@ GTK toolkit.
%if %{with gtkx11}
%package gtk+x11
Summary: GNU Emacs text editor with GTK toolkit X support
Requires: libgccjit
Requires: google-noto-sans-mono-vf-fonts
Requires(preun): /usr/sbin/alternatives
Requires(posttrans): /usr/sbin/alternatives
Requires: emacs-common = %{epoch}:%{version}-%{release}
Requires: libpixbufloader-xpm.so%{?marker}
Provides: emacs(bin) = %{epoch}:%{version}-%{release}
Supplements: ((xorg-x11-server-Xorg and emacs-common) unless emacs-nw)
@ -171,7 +181,6 @@ This package provides an emacs-gtk+x11 binary with support for the X
Window System, using the GTK toolkit.
%endif
%if %{with lucid}
%package lucid
Summary: GNU Emacs text editor with Lucid toolkit X support
@ -260,7 +269,7 @@ emacs-lucid, or emacs-nw.
%package terminal
Summary: A desktop menu item for GNU Emacs terminal.
Requires: emacs = %{epoch}:%{version}-%{release}
Requires: (emacs or emacs-gtk+x11 or emacs-lucid)
BuildArch: noarch
%description terminal
@ -761,6 +770,7 @@ fi
%{_datadir}/icons/hicolor/scalable/apps/emacs.svg
%{_datadir}/icons/hicolor/scalable/apps/emacs.ico
%{_datadir}/icons/hicolor/scalable/mimetypes/emacs-document.svg
%{_infodir}/elisp_type_hierarchy.*
%{_mandir}/man1/ebrowse.1*
%{_mandir}/man1/emacs.1*
%{_mandir}/man1/etags.emacs.1*