From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lukas Gradl Subject: Re: [PATCH] Add googletest Date: Thu, 09 Jun 2016 17:17:37 -0500 Message-ID: <87inxihuri.fsf@openmailbox.org> References: <874m9fwa0k.fsf@openmailbox.org> <87lh2q2v1u.fsf@openmailbox.org> <20160531214400.GA22303@jasmine> <87twhdez33.fsf@openmailbox.org> <20160602014944.GB31306@jasmine> <87h9dbegsl.fsf@openmailbox.org> <20160605131210.GC859@debian-netbook> <877fe3pcl3.fsf@openmailbox.org> <20160609184054.GB513@debian-netbook> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:51099) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bB8Gq-0003Pb-0J for guix-devel@gnu.org; Thu, 09 Jun 2016 18:17:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bB8Gn-0004X0-6u for guix-devel@gnu.org; Thu, 09 Jun 2016 18:17:47 -0400 Received: from mail.openmailbox.org ([62.4.1.34]:40087) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bB8Gm-0004Ws-TN for guix-devel@gnu.org; Thu, 09 Jun 2016 18:17:45 -0400 In-Reply-To: <20160609184054.GB513@debian-netbook> (Efraim Flashner's message of "Thu, 9 Jun 2016 21:40:54 +0300") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Efraim Flashner Cc: guix-devel@gnu.org Efraim Flashner writes: > On Sun, Jun 05, 2016 at 04:09:28PM -0500, Lukas Gradl wrote: >> Efraim Flashner writes: >>=20 >> > On Thu, Jun 02, 2016 at 10:44:58AM -0500, Lukas Gradl wrote: >> >>=20 >> >> Hi Leo, >> >>=20 >> > ... >> >> >> >> 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. >> >>=20 >> >> Thank you! >> >>=20 >> > >> > A couple last things I found, otherwise it looks great. >> > >> >> From 7d4aaba39821130ba824c4b2f8bd236e0d1f1639 Mon Sep 17 00:00:00 2001 >> >> From: Lukas Gradl >> >> Date: Thu, 2 Jun 2016 10:36:17 -0500 >> >> Subject: [PATCH] gnu: Add googletest. >> >>=20 >> >> * gnu/packages/check.scm (googletest): New variable. >> >> --- >> >> gnu/packages/check.scm | 64 ++++++++++++++++++++++++++++++++++++++++= ++++++++++ >> >> 1 file changed, 64 insertions(+) >> >>=20 >> >> 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 =C2=A9 2015 Andreas Enge >> >> ;;; Copyright =C2=A9 2016 Efraim Flashner >> >> ;;; Copyright =C2=A9 2016 Roel Janssen >> >> +;;; Copyright =C2=A9 2016 Lukas Gradl >> >> ;;; >> >> ;;; 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 typ= es of bugs that the compilers >> >> normally do not detect. The goal is to detect only real errors in t= he 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")) >>=20 >> I added it. >>=20 >> > >> >> + (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.pu= mp")))) >> >> + (replace 'install >> >> + (lambda _ >> >> + (let ((out (assoc-ref %outputs "out")) >> >> + (version version)) >> > ^ >> > you don't actually use this variable -- >> > >>=20 >> Oh, Sorry about that. This is a leftover from a previous attemt that I >> forgot to remove. >>=20 >> >> + (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 >> > >>=20 >> Same here. >>=20 >> >> + (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, auto= mated test >> >> +discovery, death tests, assertions, parameterized tests and XML test= report >> >> +generation.") >> >> + (license bsd-3))) >> >> --=20 >> >> 2.7.4 >> >>=20 >>=20 >>=20 >> Thank you for your review! >>=20 >> An updated patch is attached. >>=20 >> Best, >> Lukas >>=20 >>=20 > >> From 54223517c0c05b5c5bfcca055c8b12cb650c8b40 Mon Sep 17 00:00:00 2001 >> From: Lukas Gradl >> Date: Sun, 5 Jun 2016 16:03:56 -0500 >> Subject: [PATCH] gnu: Add googletest. >>=20 >> * gnu/packages/check.scm (googletest): New variable. >> --- >> gnu/packages/check.scm | 63 +++++++++++++++++++++++++++++++++++++++++++= +++++++ >> 1 file changed, 63 insertions(+) >>=20 >> 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 =C2=A9 2015 Andreas Enge >> ;;; Copyright =C2=A9 2016 Efraim Flashner >> ;;; Copyright =C2=A9 2016 Roel Janssen >> +;;; Copyright =C2=A9 2016 Lukas Gradl >> ;;; >> ;;; 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.pu= mp") >> + (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, automat= ed test >> +discovery, death tests, assertions, parameterized tests and XML test re= port >> +generation.") >> + (license bsd-3))) >> --=20 >> 2.7.4 >>=20 > > Patch pushed! Thank you!