summary refs log tree commit diff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2017-09-22 23:24:23 -0400
committerThomas Danckaert <thomas.danckaert@gmail.com>2017-09-28 20:26:39 +0200
commitc651cbad1e38f18f98984463d7d50254b019576b (patch)
tree145f1166fac938b9315bd877bb3921077d01466a
parent9f1d112d1282216f16b2f673c8213d2839e39b7a (diff)
downloadguix-c651cbad1e38f18f98984463d7d50254b019576b.tar.gz
gnu: eudev: Update to 3.2.4 and generate manpages.
* gnu/packages/linux.scm (eudev)[version]: Bump to 3.2.4.
[uri]: Download the release from Github, which contains the script to generate
the manpages from source.
[file-name]: Add a file-name field to the origin record, per linter recommendation.
[sha256]: Adjust accordingly.
[phases]: Add a bootstrap phase to regenerate the manpages.
[configure-flags]: Add the "--enable-manpages" option, required to install the
manpages.
[native-inputs]: Add autoconf, automake and libtool for the bootstrap phase.
Add python-wrapper to run a test script that was previously skipped.
Add docbook-xml, docbook-xsl, libxml2 and libxslt for manpage generation.
-rw-r--r--gnu/packages/linux.scm50
1 files changed, 35 insertions, 15 deletions
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 46434b35c8..dd46b5e506 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -2055,30 +2055,50 @@ from the module-init-tools project.")
   ;; The post-systemd fork, maintained by Gentoo.
   (package
     (name "eudev")
-    (version "3.2.2")
+    (version "3.2.4")
     (source (origin
               (method url-fetch)
-              (uri (string-append
-                    "http://dev.gentoo.org/~blueness/eudev/eudev-"
-                    version ".tar.gz"))
+              (uri (string-append "https://github.com/gentoo/eudev/archive/v"
+                                  version ".zip"))
+              (file-name (string-append name "-" version ".zip"))
               (sha256
                (base32
-                "0qqgbgpm5wdllk0s04pf80nwc8pr93xazwri1bylm1f15zn5ck1y"))
+                "1r1ag0snarygrj5qqxi2xdq9w6g3sfjd5jx1b0fl7zmqlsz3vvxx"))
               (patches (search-patches "eudev-rules-directory.patch"))))
     (build-system gnu-build-system)
     (arguments
-     '(#:phases (modify-phases %standard-phases
-                  (add-after 'install 'build-hwdb
-                    (lambda* (#:key outputs #:allow-other-keys)
-                      ;; Build OUT/etc/udev/hwdb.bin.  This allows 'lsusb' and
-                      ;; similar tools to display product names.
-                      (let ((out (assoc-ref outputs "out")))
-                        (zero? (system* (string-append out "/bin/udevadm")
-                                        "hwdb" "--update"))))))))
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'bootstrap
+           (lambda* (#:key inputs #:allow-other-keys)
+            (substitute* "man/make.sh"
+              (("/usr/bin/xsltproc")
+                (string-append (assoc-ref inputs "xsltproc")
+                               "/bin/xsltproc")))
+            ;; Manual pages are regenerated here.
+            (zero? (system* "./autogen.sh"))))
+         (add-after 'install 'build-hwdb
+           (lambda* (#:key outputs #:allow-other-keys)
+             ;; Build OUT/etc/udev/hwdb.bin.  This allows 'lsusb' and
+             ;; similar tools to display product names.
+             (let ((out (assoc-ref outputs "out")))
+               (zero? (system* (string-append out "/bin/udevadm")
+                               "hwdb" "--update"))))))
+       #:configure-flags (list "--enable-manpages")))
     (native-inputs
-     `(("pkg-config" ,pkg-config)
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("gperf" ,gperf)
+       ("libtool" ,libtool)
+       ("pkg-config" ,pkg-config)
+       ;; For tests.
        ("perl" ,perl)
-       ("gperf" ,gperf)))
+       ("python" ,python-wrapper)
+       ;; For documentation.
+       ("docbook-xml" ,docbook-xml-4.2)
+       ("docbook-xsl" ,docbook-xsl)
+       ("libxml2" ,libxml2)             ;for $XML_CATALOG_FILES
+       ("xsltproc", libxslt)))
     (inputs
      ;; When linked against libblkid, eudev can populate /dev/disk/by-label
      ;; and similar; it also installs the '60-persistent-storage.rules' file,