gnu: emacs-libgit: Fix build.

* gnu/packages/emacs-xyz.scm (emacs-libgit)[source]: Drop bundled
emacs-module header.
[#:phases]: Add “patch-source” phase to fix build failure when building
against Emacs 28.
This commit is contained in:
Liliana Marie Prikler 2022-05-17 21:38:06 +02:00
parent 140bdbc29f
commit 665dd8211c
No known key found for this signature in database
GPG Key ID: 442A84B8C70E2F87

@ -789,7 +789,11 @@ on stdout instead of using a socket as the Emacsclient does.")
(patches (search-patches
;; Submitted for inclusion upstream (see:
;; https://github.com/magit/libegit2/pull/96).
"emacs-libgit-use-system-libgit2.patch"))))
"emacs-libgit-use-system-libgit2.patch"))
(snippet
#~(begin
;; bundled, use the one shipped with emacs instead
(delete-file "src/emacs-module.h")))))
;; Use the cmake-build-system as it provides support for cross builds.
(build-system cmake-build-system)
(arguments
@ -804,6 +808,13 @@ on stdout instead of using a socket as the Emacsclient does.")
(guix build utils))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-source
(lambda _
;; Use Emacs 28 unibyte strings.
;; XXX: This now breaks if linked against Emacs <= 26, probably
;; also 27.
(substitute* "src/egit-blob.c"
(("make_string") "make_unibyte_string"))))
(add-after 'unpack 'set-libgit--module-file
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))