summary refs log tree commit diff
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <me@tobias.gr>2020-06-25 18:55:20 +0200
committerTobias Geerinckx-Rice <me@tobias.gr>2020-06-25 18:55:55 +0200
commitafba93efd43ef58d1c9920f119250c58c5505b87 (patch)
treec0a44fee584fd1b964ed3d3f80730fde0588893c
parentd613991a8ebe5d4b3a7706f8f0dd52f16fc1c50a (diff)
downloadguix-afba93efd43ef58d1c9920f119250c58c5505b87.tar.gz
gnu: diffoscope: Install the man page.
* gnu/packages/diffoscope.scm (diffoscope)[arguments]:
Add ‘build-man-page’ and ‘install-man-page’ phases.
[native-inputs]: Add help2man.
-rw-r--r--gnu/packages/diffoscope.scm23
1 files changed, 16 insertions, 7 deletions
diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm
index f5387f8501..6ccb4fd169 100644
--- a/gnu/packages/diffoscope.scm
+++ b/gnu/packages/diffoscope.scm
@@ -132,17 +132,25 @@
                         (("\\['getfacl',")
                          (string-append "['" (which "getfacl") "',")))
                       #t))
+                  (add-after 'build 'build-man-page
+                    (lambda* (#:key (make-flags '()) #:allow-other-keys)
+                      (apply invoke "make" "-C" "doc" make-flags)))
                   (add-before 'check 'writable-test-data
                     (lambda _
-                      ;; tests may need needs write access to tests
-                      ;; directory
+                      ;; Tests may need write access to tests directory.
                       (for-each make-file-writable (find-files "tests"))
                       #t))
                   (add-before 'check 'delete-failing-test
                     (lambda _
-                      ;; this requires /sbin to be on the path
+                      ;; This requires /sbin to be in $PATH.
                       (delete-file "tests/test_tools.py")
-                      #t)))))
+                      #t))
+                  (add-after 'install 'install-man-page
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let* ((out (assoc-ref outputs "out"))
+                             (man (string-append out "/share/man/man1")))
+                        (install-file "doc/diffoscope.1" man)
+                        #t))))))
     (inputs `(("rpm" ,rpm)              ;for rpm-python
               ("python-file" ,python-file)
               ("python-debian" ,python-debian)
@@ -151,14 +159,15 @@
               ("acl" ,acl)              ;for getfacl
               ("colordiff" ,colordiff)
               ("xxd" ,xxd)))
-    ;; Below are modules used for tests.
-    (native-inputs `(("python-pytest" ,python-pytest)
+    (native-inputs `(("help2man" ,help2man)
+                     ;; Below are modules used for tests.
+                     ("python-pytest" ,python-pytest)
                      ("python-chardet" ,python-chardet)
                      ("python-binwalk" ,python-binwalk)
                      ("python-h5py" ,python-h5py)
                      ("python-pypdf2" ,python-pypdf2)
                      ("python-progressbar33" ,python-progressbar33)
-                     ;; test suite skips tests when tool is missing
+                     ;; The test suite skips tests when these are missing.
                      ,@(match (%current-system)
                          ;; ghc is only available on x86 currently.
                          ((or "x86_64-linux" "i686-linux")