[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/03: gnu: Add kcov.
From: |
guix-commits |
Subject: |
02/03: gnu: Add kcov. |
Date: |
Sat, 11 Jul 2020 17:48:21 -0400 (EDT) |
roptat pushed a commit to branch master
in repository guix.
commit 89c9e647489d9114861082f27f4deb1f00fdf871
Author: Julien Lepiller <julien@lepiller.eu>
AuthorDate: Sat Jul 11 23:16:27 2020 +0200
gnu: Add kcov.
* gnu/packages/code.scm (kcov): New variable.
---
gnu/packages/code.scm | 44 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)
diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm
index 6334c97..7a1dfa5 100644
--- a/gnu/packages/code.scm
+++ b/gnu/packages/code.scm
@@ -14,6 +14,7 @@
;;; Copyright © 2019 Hartmut Goebel <h.goebel@goebel-consult.de>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
+;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -47,6 +48,8 @@
#:use-module (gnu packages c)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
+ #:use-module (gnu packages curl)
+ #:use-module (gnu packages elf)
#:use-module (gnu packages emacs)
#:use-module (gnu packages gcc)
#:use-module (gnu packages graphviz)
@@ -522,6 +525,47 @@ textual @command{gcov} output to implement the following
enhanced
functionality such as HTML output.")
(license license:gpl2+))))
+(define-public kcov
+ (package
+ (name "kcov")
+ (version "38")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/SimonKagstrom/kcov")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0zqg21xwivi16csl6a5wby6679ny01bjaw4am3y4qcgjdyihifp8"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:tests? #f ;no test target
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-/bin/bash-references
+ (lambda _
+ (substitute* (find-files "src" ".*\\.cc?$")
+ (("/bin/bash") (which "bash"))
+ (("/bin/sh") (which "sh")))
+ #t)))))
+ (inputs
+ `(("curl" ,curl)
+ ("elfutils" ,elfutils)
+ ("libelf" ,libelf)
+ ("zlib" ,zlib)))
+ (native-inputs
+ `(("python" ,python)))
+ (home-page "https://github.com/SimonKagstrom/kcov")
+ (synopsis "Code coverage tester for compiled languages, Python and Bash")
+ (description "Kcov is a FreeBSD/Linux/OSX code coverage tester for compiled
+languages, Python and Bash. Kcov was originally a fork of Bcov, but has since
+evolved to support a large feature set in addition to that of Bcov.
+
+Kcov uses DWARF debugging information for compiled programs to make it
+possible to collect coverage information without special compiler switches.")
+ (license license:gpl2+)))
+
(define-public rtags
(package
(name "rtags")