Subject: [bug#77681] [PATCH v2 1/6] gnu: emacs-next: Update to 31.0.50-1.9663c95.

From: Morgan Smith <[email-masked]>
Date: Wed, 9 Apr 2025 17:52:56 -0400

* gnu/packages/emacs.scm (emacs-next): Update to 31.0.50-1.9663c95.
* gnu/packages/patches/emacs-next-disable-jit-compilation.patch: New file.
* gnu/local.mk: Register new patch.

Change-Id: I2b13ce4c2ef030d8d7911ca524576d5b81e5db73
---
 gnu/local.mk                                  |  1 +
 gnu/packages/emacs.scm                        |  8 ++++----
 .../emacs-next-disable-jit-compilation.patch  | 19 +++++++++++++++++++
 3 files changed, 24 insertions(+), 4 deletions(-)
 create mode 100644 gnu/packages/patches/emacs-next-disable-jit-compilation.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 2b08ce42f2..c0b9a76cd2 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1233,6 +1233,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/emacs-native-comp-driver-options.patch   \
   %D%/packages/patches/emacs-native-comp-fix-filenames.patch   \
   %D%/packages/patches/emacs-native-comp-pin-packages.patch   \
+  %D%/packages/patches/emacs-next-disable-jit-compilation.patch			\
   %D%/packages/patches/emacs-next-exec-path.patch   \
   %D%/packages/patches/emacs-next-native-comp-fix-filenames.patch   \
   %D%/packages/patches/emacs-pasp-mode-quote-file-names.patch  \
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 7a57aad15d..9a020d89aa 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -573,8 +573,8 @@ (define-public emacs-wide-int
         #~(cons "--with-wide-int" #$flags))))))
 
 (define-public emacs-next-minimal
-  (let ((commit "60232a30e360c00fb303cb033d4aec15a9e41342")
-        (revision "0"))
+  (let ((commit "9663c959c73d6cca0c56f833d80ff1d9e9708b70")
+        (revision "1"))
   (package
     (inherit emacs-minimal)
     (name "emacs-next-minimal")
@@ -587,9 +587,9 @@ (define-public emacs-next-minimal
              (commit commit)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "1n1i20j92a8sqv224yzvyzk804h9x0lgyp3jlny3b6g08ka91034"))
+        (base32 "1a03j9zdn1fl181xcqsw4vg3v8a3sbv1r3d49ld6ysldvfkwiz39"))
        (patches
-        (search-patches "emacs-disable-jit-compilation.patch"
+        (search-patches "emacs-next-disable-jit-compilation.patch"
                         "emacs-next-exec-path.patch"
                         "emacs-fix-scheme-indent-function.patch"
                         "emacs-native-comp-driver-options.patch"
diff --git a/gnu/packages/patches/emacs-next-disable-jit-compilation.patch b/gnu/packages/patches/emacs-next-disable-jit-compilation.patch
new file mode 100644
index 0000000000..0bac7a25fb
--- /dev/null
+++ b/gnu/packages/patches/emacs-next-disable-jit-compilation.patch
@@ -0,0 +1,19 @@
+Index: emacs-29.2/src/comp.c
+===================================================================
+--- emacs-29.2.orig/src/comp.c
++++ emacs-29.2/src/comp.c
+@@ -5648,8 +5648,12 @@ For internal use. */);
+     doc: /* If non-nil, compile loaded .elc files asynchronously.
+ 
+ After compilation, each function definition is updated to use the
+-natively compiled one.  */);
+-  native_comp_jit_compilation = true;
++natively compiled one.  This variable is enabled by default upstream,
++but disabled in Guix to better make use of precompiled packages.
++Notably, Guix removes the hashes that prevent inadvertent shadowing
++from the file names of compiled libraries in order to facilitate grafts.
++Enable at your own risk!  */);
++  native_comp_jit_compilation = false;
+ 
+   DEFSYM (Qnative_comp_speed, "native-comp-speed");
+   DEFSYM (Qnative_comp_debug, "native-comp-debug");

base-commit: ca30726285b6883a3b1fa89db64177460af69c42
-- 
2.49.0