gnu: Add Catch.

* gnu/packages/check.scm (catch-framework): New variable.
master
Eric Bavier 2015-03-27 16:12:01 -05:00
parent 2babe98e4e
commit 3bfc99c74c
1 changed files with 44 additions and 1 deletions

View File

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org> ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -23,7 +24,9 @@
#:use-module (guix licenses) #:use-module (guix licenses)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix build-system gnu)) #:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial))
(define-public check (define-public check
(package (package
@ -99,3 +102,43 @@ with a flexible variety of user interfaces.")
unit testing. Test output is in XML for automatic testing and GUI based for unit testing. Test output is in XML for automatic testing and GUI based for
supervised tests.") supervised tests.")
(license lgpl2.1))) ; no copyright notices. LGPL2.1 is in the tarball (license lgpl2.1))) ; no copyright notices. LGPL2.1 is in the tarball
(define-public catch-framework
(package
(name "catch")
(version "1.0.53") ;Sub-minor is the build number
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/philsquared/Catch")
;; Semi-arbitrary. Contains mostly documentation fixes
;; since build 53.
(commit "b9ec8a1")))
(file-name (string-append name "-" version))
(sha256
(base32
"05iijiwjwcjbza7qamwd32d0jypi0lpywmilmmj2xh280mcl4dbd"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
#:builder (begin
(use-modules (guix build utils))
(let* ((source (assoc-ref %build-inputs "source"))
(output (assoc-ref %outputs "out"))
(incdir (string-append output "/include"))
(docdir (string-append output "/share/doc/catch-"
,version)))
(begin
(for-each mkdir-p (list incdir docdir))
(copy-file (string-append source
"/single_include/catch.hpp")
(string-append incdir
"/catch.hpp"))
(copy-recursively (string-append source "/docs")
docdir))))))
(home-page "http://catch-lib.net/")
(synopsis "Automated test framework for C++ and Objective-C")
(description
"Catch stands for C++ Automated Test Cases in Headers and is a
multi-paradigm automated test framework for C++ and Objective-C.")
(license boost1.0)))