summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-05-27 09:59:12 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-05-31 11:20:28 -0400
commit34c8558af2d0a72a7f90dab9106addbf9b3e6c5f (patch)
treeb482cdab8438856763eb0a9ab416ef7a39612f71 /gnu
parent07909eb09210597df998d2b88ec555bb648f8066 (diff)
downloadguix-34c8558af2d0a72a7f90dab9106addbf9b3e6c5f.tar.gz
gnu: guile-ac-d-bus: Build and install info manual.
* gnu/packages/guile-xyz.scm (guile-ac-d-bus)
[arguments]: Use gexps.
[phases]{build-doc, install-doc}: New phases.
[native-inputs]: Add texinfo.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/guile-xyz.scm78
1 files changed, 43 insertions, 35 deletions
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 2c18fc138c..0b1537a963 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -3846,42 +3846,50 @@ and space linear in the size of the input text.")
                 "0rl809qimhgz6b0rixakb42r2l4g53jr09a2g0s1hxgab0blz0kb"))))
     (build-system guile-build-system)
     (arguments
-     `(#:implicit-inputs? #f                      ;needs nothing but Guile
-       #:compile-flags '("--r6rs" "-Wunbound-variable" "-Warity-mismatch")
-       #:phases (modify-phases %standard-phases
-                  (add-before 'build 'adjust-for-guile
-                    (lambda _
-                      ;; Adjust source file names for Guile.
-                      (define (guile-sls->sls file)
-                        (string-append (string-drop-right
-                                        file (string-length ".guile.sls"))
-                                       ".sls"))
-
-                      ;; Remove files targeting other implementations:
-                      ;; *.mosh.sls, etc.
-                      (for-each delete-file
-                                (find-files
-                                 "compat"
-                                 (lambda (file stat)
-                                   (not (string-contains file ".guile.")))))
-
-                      ;; Rename *.guile.sls to *.sls so the ".guile" bit does
-                      ;; not appear in .go file names.
-                      (for-each (lambda (file)
-                                  (rename-file file (guile-sls->sls file)))
-                                (find-files "compat" "\\.guile\\.sls"))
-
-                      ;; Move directories under d-bus/ to match module names.
-                      (mkdir "d-bus")
-                      (for-each (lambda (directory)
-                                  (rename-file directory
-                                               (string-append "d-bus/"
-                                                              directory)))
-                                '("compat" "protocol"))
-
-                      #t)))))
+     (list
+      #:implicit-inputs? #f             ;needs nothing but Guile
+      #:compile-flags #~(list "--r6rs" "-Wunbound-variable" "-Warity-mismatch")
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-before 'build 'adjust-for-guile
+            (lambda _
+              ;; Adjust source file names for Guile.
+              (define (guile-sls->sls file)
+                (string-append (string-drop-right
+                                file (string-length ".guile.sls"))
+                               ".sls"))
+
+              ;; Remove files targeting other implementations: *.mosh.sls,
+              ;; etc.
+              (for-each delete-file
+                        (find-files
+                         "compat"
+                         (lambda (file stat)
+                           (not (string-contains file ".guile.")))))
+
+              ;; Rename *.guile.sls to *.sls so the ".guile" bit does not
+              ;; appear in .go file names.
+              (for-each (lambda (file)
+                          (rename-file file (guile-sls->sls file)))
+                        (find-files "compat" "\\.guile\\.sls"))
+
+              ;; Move directories under d-bus/ to match module names.
+              (mkdir "d-bus")
+              (for-each (lambda (directory)
+                          (rename-file directory
+                                       (string-append "d-bus/"
+                                                      directory)))
+                        '("compat" "protocol"))))
+          (add-after 'build 'build-doc
+            (lambda _
+              (with-directory-excursion "docs"
+                (invoke "makeinfo" "ac-d-bus"))))
+          (add-after 'install 'install-doc
+            (lambda _
+              (install-file "docs/ac-d-bus.info"
+                            (string-append #$output "/share/info")))))))
     (native-inputs
-     (list guile-3.0))
+     (list guile-3.0 texinfo))
     (propagated-inputs
      (list guile-packrat))
     (synopsis "D-Bus protocol implementation in R6RS Scheme")