gnu: lcov: Update to commit 40580cd659.
* gnu/packages/code.scm (lcov): Update to commit 40580cd659. (arguments): Enable tests and specify the test target. [phases]{patch-pwd, wrap}: Add phases. [inputs]: Add perl-json and perl-perlio-gzip.
This commit is contained in:
parent
e23e5db39b
commit
d8ccff833d
|
@ -12,6 +12,7 @@
|
||||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2019 Hartmut Goebel <h.goebel@goebel-consult.de>
|
;;; Copyright © 2019 Hartmut Goebel <h.goebel@goebel-consult.de>
|
||||||
|
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -49,6 +50,7 @@
|
||||||
#:use-module (gnu packages graphviz)
|
#:use-module (gnu packages graphviz)
|
||||||
#:use-module (gnu packages pcre)
|
#:use-module (gnu packages pcre)
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
|
#:use-module (gnu packages perl-compression)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
#:use-module (gnu packages sqlite)
|
#:use-module (gnu packages sqlite)
|
||||||
|
@ -375,36 +377,60 @@ stack traces.")
|
||||||
(license license:gpl3+)))
|
(license license:gpl3+)))
|
||||||
|
|
||||||
(define-public lcov
|
(define-public lcov
|
||||||
|
;; Use a recent commit from upstream since the latest official release
|
||||||
|
;; (1.14) doesn't support GCC 9 (see:
|
||||||
|
;; https://github.com/linux-test-project/lcov/issues/58).
|
||||||
|
(let* ((commit "40580cd65909bc8324ae09b36bca2e178652ff3f")
|
||||||
|
(revision "0")
|
||||||
|
(version (git-version "1.14" revision commit)))
|
||||||
(package
|
(package
|
||||||
(name "lcov")
|
(name "lcov")
|
||||||
(version "1.14")
|
(version "1.14")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method git-fetch)
|
||||||
(uri (string-append "mirror://sourceforge/ltp/Coverage%20Analysis"
|
(uri (git-reference
|
||||||
"/LCOV-" version "/lcov-" version ".tar.gz"))
|
(url "https://github.com/linux-test-project/lcov.git")
|
||||||
|
(commit commit)))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"06h7ixyznf6vz1qvksjgy5f3q2nw9akf6zx59npf0h3l32cmd68l"))))
|
"0shgmh6fzhnj1qfdl90jgjmlbb1ih1qh879dca8hc58yggy3hqgb"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:make-flags
|
'(#:test-target "test"
|
||||||
(let ((out (assoc-ref %outputs "out")))
|
#:make-flags (list (string-append "PREFIX="
|
||||||
(list (string-append "PREFIX=" out)))
|
(assoc-ref %outputs "out")))
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(delete 'configure)) ; no configure script
|
(add-after 'unpack 'patch-pwd
|
||||||
#:tests? #f)) ; no 'check' target
|
;; Lift the requirement of having a shell in PATH.
|
||||||
(inputs `(("perl" ,perl)))
|
(lambda _
|
||||||
|
(substitute* "bin/geninfo"
|
||||||
|
(("qw/abs_path/")
|
||||||
|
"qw/abs_path getcwd/"))
|
||||||
|
(substitute* '("bin/lcov" "bin/geninfo")
|
||||||
|
(("`pwd`")
|
||||||
|
"getcwd()"))
|
||||||
|
#t))
|
||||||
|
(delete 'configure) ;no configure script
|
||||||
|
(add-after 'install 'wrap
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let ((out (assoc-ref outputs "out")))
|
||||||
|
(wrap-program (string-append out "/bin/geninfo")
|
||||||
|
`("PERL5LIB" ":" prefix (,(getenv "PERL5LIB")))))
|
||||||
|
#t)))))
|
||||||
|
(inputs `(("perl" ,perl)
|
||||||
|
("perl-json" ,perl-json)
|
||||||
|
("perl-perlio-gzip" ,perl-perlio-gzip)))
|
||||||
(home-page "http://ltp.sourceforge.net/coverage/lcov.php")
|
(home-page "http://ltp.sourceforge.net/coverage/lcov.php")
|
||||||
(synopsis "Code coverage tool that enhances GNU gcov")
|
(synopsis "Code coverage tool that enhances GNU gcov")
|
||||||
(description
|
(description "LCOV is an extension of @command{gcov}, a tool part of the
|
||||||
"LCOV is an extension of @command{gcov}, a tool part of the
|
|
||||||
GNU@tie{}Binutils, which provides information about what parts of a program
|
GNU@tie{}Binutils, which provides information about what parts of a program
|
||||||
are actually executed (i.e., \"covered\") while running a particular test
|
are actually executed (i.e., \"covered\") while running a particular test
|
||||||
case. The extension consists of a set of Perl scripts which build on the
|
case. The extension consists of a set of Perl scripts which build on the
|
||||||
textual @command{gcov} output to implement the following enhanced
|
textual @command{gcov} output to implement the following enhanced
|
||||||
functionality such as HTML output.")
|
functionality such as HTML output.")
|
||||||
(license license:gpl2+)))
|
(license license:gpl2+))))
|
||||||
|
|
||||||
(define-public rtags
|
(define-public rtags
|
||||||
(package
|
(package
|
||||||
|
|
Loading…
Reference in New Issue