gnu: multipath-tools: Enable tests.
authorMarius Bakke <mbakke@fastmail.com>
Sat, 16 May 2020 18:56:20 +0000 (20:56 +0200)
committerMarius Bakke <mbakke@fastmail.com>
Sat, 16 May 2020 18:56:20 +0000 (20:56 +0200)
* gnu/packages/linux.scm (multipath-tools)[arguments]: Remove #:tests?.  Add
 #:test-target.  Add phase to add missing linker flag.
[native-inputs]: Add CMOCKA.

gnu/packages/linux.scm

index 2d8acea..aa52068 100644 (file)
@@ -4205,7 +4205,7 @@ arrays when needed.")
                   #t))))
     (build-system gnu-build-system)
     (arguments
-     '(#:tests? #f                      ; no tests
+     '(#:test-target "test"
        #:parallel-build? #f             ;XXX: broken in 0.8.4
        #:make-flags (list "CC=gcc"
                           (string-append "DESTDIR="
@@ -4242,11 +4242,22 @@ arrays when needed.")
                (("bool is_queueing;")
                 "bool is_queueing = false;"))
              #t))
+         (add-after 'unpack 'fix-linking-tests
+           (lambda _
+             ;; Add missing linker flag for -lmpathcmd.  This should be fixed
+             ;; for versions > 0.8.4.
+             (substitute* "tests/Makefile"
+               (("-lmultipath -lcmocka")
+                "-lmultipath -L$(mpathcmddir) -lmpathcmd -lcmocka"))
+             #t))
          (delete 'configure))))         ; no configure script
     (native-inputs
      `(("perl" ,perl)
        ("pkg-config" ,pkg-config)
-       ("valgrind" ,valgrind)))
+       ("valgrind" ,valgrind)
+
+       ;; For tests.
+       ("cmocka" ,cmocka)))
     (inputs
      `(("json-c" ,json-c)
        ("libaio" ,libaio)