guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Add googletest


From: Efraim Flashner
Subject: Re: [PATCH] Add googletest
Date: Thu, 9 Jun 2016 21:40:54 +0300
User-agent: Mutt/1.6.1 (2016-04-27)

On Sun, Jun 05, 2016 at 04:09:28PM -0500, Lukas Gradl wrote:
> Efraim Flashner <address@hidden> writes:
> 
> > On Thu, Jun 02, 2016 at 10:44:58AM -0500, Lukas Gradl wrote:
> >> 
> >> Hi Leo,
> >> 
> > ...
> >>
> >> The tool "pump.py" is distributed with the Googletest source.  It
> >> appears to be a part of the source rather than a bundeled dependency and
> >> the only reference to it that I found was in Googletest, so I would
> >> assume it is a part of Googletest.  Therefore I did not create a
> >> seperate package for that, but used the one provided in the Googletest
> >> source tree.  With that, the pre-generated headers can be reproduced.
> >> The attached patch does that.
> >> 
> >> Thank you!
> >> 
> >
> > A couple last things I found, otherwise it looks great.
> >
> >> From 7d4aaba39821130ba824c4b2f8bd236e0d1f1639 Mon Sep 17 00:00:00 2001
> >> From: Lukas Gradl <address@hidden>
> >> Date: Thu, 2 Jun 2016 10:36:17 -0500
> >> Subject: [PATCH] gnu: Add googletest.
> >> 
> >> * gnu/packages/check.scm (googletest): New variable.
> >> ---
> >>  gnu/packages/check.scm | 64 
> >> ++++++++++++++++++++++++++++++++++++++++++++++++++
> >>  1 file changed, 64 insertions(+)
> >> 
> >> diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
> >> index 9eef7a9..4971c71 100644
> >> --- a/gnu/packages/check.scm
> >> +++ b/gnu/packages/check.scm
> >> @@ -5,6 +5,7 @@
> >>  ;;; Copyright © 2015 Andreas Enge <address@hidden>
> >>  ;;; Copyright © 2016 Efraim Flashner <address@hidden>
> >>  ;;; Copyright © 2016 Roel Janssen <address@hidden>
> >> +;;; Copyright © 2016 Lukas Gradl <address@hidden>
> >>  ;;;
> >>  ;;; This file is part of GNU Guix.
> >>  ;;;
> >> @@ -24,6 +25,7 @@
> >>  (define-module (gnu packages check)
> >>    #:use-module (gnu packages)
> >>    #:use-module (gnu packages autotools)
> >> +  #:use-module (gnu packages python)
> >>    #:use-module (guix licenses)
> >>    #:use-module (guix packages)
> >>    #:use-module (guix download)
> >> @@ -193,3 +195,65 @@ in the code.  Cppcheck primarily detects the types of 
> >> bugs that the compilers
> >>  normally do not detect.  The goal is to detect only real errors in the 
> >> code
> >>  (i.e. have zero false positives).")
> >>      (license gpl3+)))
> >> +
> >> +(define-public googletest
> >> +  (package
> >> +    (name "googletest")
> >> +    (version "1.7.0")
> >> +    (source
> >> +     (origin
> >> +       (method url-fetch)
> >> +       (uri
> >> +        (string-append
> >> +         "https://github.com/google/googletest/archive/release-";
> >> +         version ".tar.gz"))
> >
> > add:    (file-name (string-append name "-" version ".tar.gz"))
> 
> I added it.
> 
> >
> >> +       (sha256
> >> +        (base32
> >> +         "1k0nf1l9cb3prdmsvaajl5i31bx86c1mw0d5jgzykz7rzm36afpp"))))
> >> +    (build-system gnu-build-system)
> >> +    (native-inputs
> >> +     `(("python-2" ,python-2)
> >> +       ("autoconf" ,autoconf)
> >> +       ("automake" ,automake)
> >> +       ("libtool" ,libtool)))
> >> +    (arguments
> >> +     `( #:phases
> >> +       (modify-phases %standard-phases
> >> +         (add-before 'configure 'autoconf
> >> +                      (lambda _
> >> +                        (zero? (system* "autoreconf" "-vfi"))))
> >> +         (add-before 'autoconf 'generate-headers
> >> +           (lambda _
> >> +             (begin
> >> +               (delete-file "include/gtest/gtest-param-test.h")
> >> +               (system* "python2" "scripts/pump.py"
> >> +                        "include/gtest/gtest-param-test.h.pump")
> >> +               (delete-file "include/gtest/internal/gtest-tuple.h")
> >> +               (system* "python2" "scripts/pump.py"
> >> +                        "include/gtest//internal/gtest-tuple.h.pump")
> >> +               (delete-file
> >> +                "include/gtest/internal/gtest-param-util-generated.h")
> >> +               (system*
> >> +                "python2" "scripts/pump.py"
> >> +                
> >> "include/gtest/internal/gtest-param-util-generated.h.pump")
> >> +               (delete-file "include/gtest/internal/gtest-type-util.h")
> >> +               (system* "python2" "scripts/pump.py"
> >> +                        
> >> "include/gtest/internal/gtest-type-util.h.pump"))))
> >> +         (replace 'install
> >> +           (lambda _
> >> +             (let ((out (assoc-ref %outputs "out"))
> >> +                   (version version))
> >                                       ^
> > you don't actually use this variable --
> >
> 
> Oh, Sorry about that.  This is a leftover from a previous attemt that I
> forgot to remove.
> 
> >> +               (begin
> >> +                 (install-file "lib/.libs/libgtest_main.a"
> >> +                               (string-append out "/lib"))
> >> +                 (install-file "lib/.libs/libgtest.a"
> >> +                               (string-append out "/lib"))
> >> +                 (copy-recursively
> >> +                  (string-append "include")
> >
> > don't need the string-append above
> >
> 
> Same here.
> 
> >> +                  (string-append out "/include")))))))))
> >> +    (home-page "https://github.com/google/googletest/";)
> >> +    (synopsis "Test discovery and XUnit test framework")
> >> +    (description "Google Test features an XUnit test framework, automated 
> >> test
> >> +discovery, death tests, assertions, parameterized tests and XML test 
> >> report
> >> +generation.")
> >> +    (license bsd-3)))
> >> -- 
> >> 2.7.4
> >> 
> 
> 
> Thank you for your review!
> 
> An updated patch is attached.
> 
> Best,
> Lukas
> 
> 

> From 54223517c0c05b5c5bfcca055c8b12cb650c8b40 Mon Sep 17 00:00:00 2001
> From: Lukas Gradl <address@hidden>
> Date: Sun, 5 Jun 2016 16:03:56 -0500
> Subject: [PATCH] gnu: Add googletest.
> 
> * gnu/packages/check.scm (googletest): New variable.
> ---
>  gnu/packages/check.scm | 63 
> ++++++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 63 insertions(+)
> 
> diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
> index 9eef7a9..64b5006 100644
> --- a/gnu/packages/check.scm
> +++ b/gnu/packages/check.scm
> @@ -5,6 +5,7 @@
>  ;;; Copyright © 2015 Andreas Enge <address@hidden>
>  ;;; Copyright © 2016 Efraim Flashner <address@hidden>
>  ;;; Copyright © 2016 Roel Janssen <address@hidden>
> +;;; Copyright © 2016 Lukas Gradl <address@hidden>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -24,6 +25,7 @@
>  (define-module (gnu packages check)
>    #:use-module (gnu packages)
>    #:use-module (gnu packages autotools)
> +  #:use-module (gnu packages python)
>    #:use-module (guix licenses)
>    #:use-module (guix packages)
>    #:use-module (guix download)
> @@ -193,3 +195,64 @@ in the code.  Cppcheck primarily detects the types of 
> bugs that the compilers
>  normally do not detect.  The goal is to detect only real errors in the code
>  (i.e. have zero false positives).")
>      (license gpl3+)))
> +
> +(define-public googletest
> +  (package
> +    (name "googletest")
> +    (version "1.7.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri
> +        (string-append
> +         "https://github.com/google/googletest/archive/release-";
> +         version ".tar.gz"))
> +       (file-name (string-append name "-" version ".tar.gz"))
> +       (sha256
> +        (base32
> +         "1k0nf1l9cb3prdmsvaajl5i31bx86c1mw0d5jgzykz7rzm36afpp"))))
> +    (build-system gnu-build-system)
> +    (native-inputs
> +     `(("python-2" ,python-2)
> +       ("autoconf" ,autoconf)
> +       ("automake" ,automake)
> +       ("libtool" ,libtool)))
> +    (arguments
> +     `(#:phases
> +       (modify-phases %standard-phases
> +         (add-before 'configure 'autoconf
> +                      (lambda _
> +                        (zero? (system* "autoreconf" "-vfi"))))
> +         (add-before 'autoconf 'generate-headers
> +           (lambda _
> +             (begin
> +               (delete-file "include/gtest/gtest-param-test.h")
> +               (system* "python2" "scripts/pump.py"
> +                        "include/gtest/gtest-param-test.h.pump")
> +               (delete-file "include/gtest/internal/gtest-tuple.h")
> +               (system* "python2" "scripts/pump.py"
> +                        "include/gtest//internal/gtest-tuple.h.pump")
> +               (delete-file
> +                "include/gtest/internal/gtest-param-util-generated.h")
> +               (system*
> +                "python2" "scripts/pump.py"
> +                "include/gtest/internal/gtest-param-util-generated.h.pump")
> +               (delete-file "include/gtest/internal/gtest-type-util.h")
> +               (system* "python2" "scripts/pump.py"
> +                        "include/gtest/internal/gtest-type-util.h.pump"))))
> +         (replace 'install
> +           (lambda _
> +             (let ((out (assoc-ref %outputs "out")))
> +               (begin
> +                 (install-file "lib/.libs/libgtest_main.a"
> +                               (string-append out "/lib"))
> +                 (install-file "lib/.libs/libgtest.a"
> +                               (string-append out "/lib"))
> +                 (copy-recursively "include"
> +                  (string-append out "/include")))))))))
> +    (home-page "https://github.com/google/googletest/";)
> +    (synopsis "Test discovery and XUnit test framework")
> +    (description "Google Test features an XUnit test framework, automated 
> test
> +discovery, death tests, assertions, parameterized tests and XML test report
> +generation.")
> +    (license bsd-3)))
> -- 
> 2.7.4
> 

Patch pushed!


-- 
Efraim Flashner   <address@hidden>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]