Subject: [bug#62314] [PATCH] gnu: emacs-buttercup: Fix build with native compilation.

From: John Kehayias <[email-masked]>
Date: Tue, 21 Mar 2023 02:26:44 +0000

Hi Guix,

Here's a patch to fix emacs-buttercup failing with native-comp, i.e. guix build emacs-buttercup --with-input=emacs-minimal=emacs.

Here is the link to the upstream issue: <https://github.com/jorgenschaefer/emacs-buttercup/issues/236>

In short, it should be fixed but the fix used a variable name in current git Emacs which is different in the current release. So this patch adds the older variable name with the same fix.

I checked that it lints and native-comp and regular both build. I'll wait for QA to check for any other breakages. And I welcome any input on the commit message/code comment here.

Thanks!
John
From e6a0fda045ef016845c1b247c1b57074702a9b59 Mon Sep 17 00:00:00 2001
From: John Kehayias <[email-masked]>
Date: Mon, 20 Mar 2023 22:13:40 -0400
Subject: [PATCH] gnu: emacs-buttercup: Fix build with native compilation.

The spy-on test fails with native compilation, which was fixed in v1.30 but
with a variable name for newer versions than stable Emacs.  Here we add the
same fix but using the current variable name.

* gnu/packages/emacs-xyz.scm (emacs-buttercup)[phases]{fix-spy-on-test}: New
phase.
---
 gnu/packages/emacs-xyz.scm | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 0a1846ea4c..74968d421b 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27141,6 +27141,15 @@ (define-public emacs-buttercup
       #:test-command #~(list "make" "test")
       #:phases
       #~(modify-phases %standard-phases
+          (add-after 'unpack 'fix-spy-on-test
+            (lambda _
+              (substitute* "buttercup.el"
+                ;; The spy-on test fails with native compilation, which was
+                ;; fixed in v1.30 but with a variable name for Emacs newer
+                ;; than 28.2.  Add in the same fix with the current variable
+                ;; name.  Upstream bug and fix:
+                ;; <https://github.com/jorgenschaefer/emacs-buttercup/issues/236>
+                (("61880") "61880\n(comp-enable-subr-trampolines nil)\n"))))
           (add-after 'install 'install-bin
             (lambda _
               (install-file "bin/buttercup"
-- 
2.39.2