gnu: emacs-ledger-mode: Fix autoload failure.

* gnu/packages/finance.scm (emacs-ledger-mode)[arguments]: Replace the
  'relocate-elisp' phase by a 'patch-site-dir' phase to put the files in the
  right directory and a 'generate-autoload' phase to make the autoload file.

Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
This commit is contained in:
Brant Gardner 2019-12-25 10:11:41 -06:00 committed by Guillaume Le Vaillant
parent 29ae18db05
commit 2c50e52ab8
No known key found for this signature in database
GPG key ID: 6BE8208ADF21FE3F

View file

@ -288,6 +288,12 @@ (define-public emacs-ledger-mode
#:tests? #f ; there are none
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-site-dir
(lambda _
(substitute* "CMakeLists.txt"
(("DESTINATION share/emacs/site-lisp/ledger-mode")
"DESTINATION share/emacs/site-lisp"))
#t))
(add-before 'build 'patch-path
(lambda* (#:key inputs #:allow-other-keys)
(let ((ledger (assoc-ref inputs "ledger")))
@ -303,17 +309,12 @@ (define-public emacs-ledger-mode
(invoke "makeinfo" "-o" target
"../source/doc/ledger-mode.texi"))
#t))
(add-after 'install 'relocate-elisp
(add-after 'install 'generate-autoload
(lambda* (#:key outputs #:allow-other-keys)
(let* ((site-dir (string-append (assoc-ref outputs "out")
"/share/emacs/site-lisp"))
(guix-dir (string-append site-dir "/guix.d"))
(orig-dir (string-append site-dir "/ledger-mode"))
(dest-dir (string-append guix-dir "/ledger-mode")))
(mkdir-p guix-dir)
(rename-file orig-dir dest-dir)
(emacs-generate-autoloads ,name dest-dir)
#t))))))
"/share/emacs/site-lisp")))
(emacs-generate-autoloads ,name site-dir))
#t)))))
(inputs
`(("ledger" ,ledger)))
(native-inputs