John Kehayias wrote 2 years ago
(name . Guix-patches)(address . guix-patches@gnu.org)
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 <john.kehayias@protonmail.com>
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(+)
Toggle diff (22 lines)
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