gnu: Add benchmark.
* gnu/packages/benchmark.scm(benchmark): New variable. * gnu/packages/patches/benchmark-unbundle-googletest.patch: New file. * gnu/local.mk(dist_patch_DATA): Add it.
This commit is contained in:
parent
bc70516bba
commit
4c7e8c234d
|
@ -15,7 +15,7 @@
|
||||||
# Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
# Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
# Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
|
# Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
|
||||||
# Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
# Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||||
# Copyright © 2017, 2018 Gábor Boskovits <boskovits@gmail.com>
|
# Copyright © 2017, 2018, 2019 Gábor Boskovits <boskovits@gmail.com>
|
||||||
# Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
|
# Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
|
||||||
# Copyright © 2018, 2019 Oleg Pykhalov <go.wigust@gmail.com>
|
# Copyright © 2018, 2019 Oleg Pykhalov <go.wigust@gmail.com>
|
||||||
# Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
|
# Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
|
||||||
|
@ -691,6 +691,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/bazaar-CVE-2017-14176.patch \
|
%D%/packages/patches/bazaar-CVE-2017-14176.patch \
|
||||||
%D%/packages/patches/beets-python-3.7-fix.patch \
|
%D%/packages/patches/beets-python-3.7-fix.patch \
|
||||||
%D%/packages/patches/beignet-correct-file-names.patch \
|
%D%/packages/patches/beignet-correct-file-names.patch \
|
||||||
|
%D%/packages/patches/benchmark-unbundle-googletest.patch \
|
||||||
%D%/packages/patches/biber-fix-encoding-write.patch \
|
%D%/packages/patches/biber-fix-encoding-write.patch \
|
||||||
%D%/packages/patches/binutils-loongson-workaround.patch \
|
%D%/packages/patches/binutils-loongson-workaround.patch \
|
||||||
%D%/packages/patches/blender-2.79-newer-ffmpeg.patch \
|
%D%/packages/patches/blender-2.79-newer-ffmpeg.patch \
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2019 Eric Bavier <bavier@member.fsf.org>
|
;;; Copyright © 2019 Eric Bavier <bavier@member.fsf.org>
|
||||||
|
;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -25,7 +26,10 @@
|
||||||
#:use-module (guix packages)
|
#:use-module (guix packages)
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
#:use-module (guix git-download)
|
#:use-module (guix git-download)
|
||||||
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
|
#:use-module (gnu packages)
|
||||||
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages linux)
|
#:use-module (gnu packages linux)
|
||||||
#:use-module (gnu packages maths)
|
#:use-module (gnu packages maths)
|
||||||
|
@ -193,3 +197,27 @@ extension to @code{time} which runs a command multiple times and prints the
|
||||||
timing means, standard deviations, mins, medians, and maxes having done so.
|
timing means, standard deviations, mins, medians, and maxes having done so.
|
||||||
This can give a much better understanding of the command's performance.")
|
This can give a much better understanding of the command's performance.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
|
(define-public benchmark
|
||||||
|
(package
|
||||||
|
(name "benchmark")
|
||||||
|
(version "1.5.0")
|
||||||
|
(source (origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/google/benchmark.git")
|
||||||
|
(commit (string-append "v" version))))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0r9dbg4cbk47gwmayys31a83m3y67k0kh1f6pl8i869rbd609ndh"))
|
||||||
|
(patches (search-patches "benchmark-unbundle-googletest.patch"))))
|
||||||
|
(build-system cmake-build-system)
|
||||||
|
(native-inputs
|
||||||
|
`(("googletest" ,googletest)))
|
||||||
|
(home-page "https://github.com/google/benchmark")
|
||||||
|
(synopsis "Microbenchmark support library")
|
||||||
|
(description
|
||||||
|
"Benchmark is a library to benchmark code snippets,
|
||||||
|
similar to unit tests.")
|
||||||
|
(license license:asl2.0)))
|
||||||
|
|
|
@ -0,0 +1,69 @@
|
||||||
|
From 5eb306618196ea78b8c9390e22ea2edce20760fe Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= <boskovits@gmail.com>
|
||||||
|
Date: Fri, 14 Jun 2019 22:15:49 +0200
|
||||||
|
Subject: [PATCH] Remove googletest lookup from build system.
|
||||||
|
|
||||||
|
---
|
||||||
|
cmake/GoogleTest.cmake | 18 +++++++++---------
|
||||||
|
cmake/GoogleTest.cmake.in | 12 ++++++------
|
||||||
|
2 files changed, 15 insertions(+), 15 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/cmake/GoogleTest.cmake b/cmake/GoogleTest.cmake
|
||||||
|
index fb7c6be..a6c473b 100644
|
||||||
|
--- a/cmake/GoogleTest.cmake
|
||||||
|
+++ b/cmake/GoogleTest.cmake
|
||||||
|
@@ -27,15 +27,15 @@ endif()
|
||||||
|
# settings on Windows
|
||||||
|
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
|
||||||
|
|
||||||
|
-include(${GOOGLETEST_PREFIX}/googletest-paths.cmake)
|
||||||
|
+#include(${GOOGLETEST_PREFIX}/googletest-paths.cmake)
|
||||||
|
|
||||||
|
# Add googletest directly to our build. This defines
|
||||||
|
# the gtest and gtest_main targets.
|
||||||
|
-add_subdirectory(${GOOGLETEST_SOURCE_DIR}
|
||||||
|
- ${GOOGLETEST_BINARY_DIR}
|
||||||
|
- EXCLUDE_FROM_ALL)
|
||||||
|
-
|
||||||
|
-set_target_properties(gtest PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gtest,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||||
|
-set_target_properties(gtest_main PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gtest_main,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||||
|
-set_target_properties(gmock PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gmock,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||||
|
-set_target_properties(gmock_main PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gmock_main,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||||
|
+#add_subdirectory(${GOOGLETEST_SOURCE_DIR}
|
||||||
|
+# ${GOOGLETEST_BINARY_DIR}
|
||||||
|
+# EXCLUDE_FROM_ALL)
|
||||||
|
+
|
||||||
|
+#set_target_properties(gtest PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gtest,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||||
|
+#set_target_properties(gtest_main PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gtest_main,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||||
|
+#set_target_properties(gmock PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gmock,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||||
|
+#set_target_properties(gmock_main PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gmock_main,INTERFACE_INCLUDE_DIRECTORIES>)
|
||||||
|
diff --git a/cmake/GoogleTest.cmake.in b/cmake/GoogleTest.cmake.in
|
||||||
|
index 28818ee..13b0888 100644
|
||||||
|
--- a/cmake/GoogleTest.cmake.in
|
||||||
|
+++ b/cmake/GoogleTest.cmake.in
|
||||||
|
@@ -31,7 +31,7 @@ if(EXISTS "${GOOGLETEST_PATH}" AND IS_DIRECTORY "${GOOGLETEST_PATH}"
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
if(NOT ALLOW_DOWNLOADING_GOOGLETEST)
|
||||||
|
- message(SEND_ERROR "Did not find Google Test sources! Either pass correct path in GOOGLETEST_PATH, or enable ALLOW_DOWNLOADING_GOOGLETEST, or disable BENCHMARK_ENABLE_GTEST_TESTS / BENCHMARK_ENABLE_TESTING.")
|
||||||
|
+ message(WARNING "Did not find Google Test sources! Either pass correct path in GOOGLETEST_PATH, or enable ALLOW_DOWNLOADING_GOOGLETEST, or disable BENCHMARK_ENABLE_GTEST_TESTS / BENCHMARK_ENABLE_TESTING.")
|
||||||
|
else()
|
||||||
|
message(WARNING "Did not find Google Test sources! Fetching from web...")
|
||||||
|
ExternalProject_Add(
|
||||||
|
@@ -51,8 +51,8 @@ else()
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
-ExternalProject_Get_Property(googletest SOURCE_DIR BINARY_DIR)
|
||||||
|
-file(WRITE googletest-paths.cmake
|
||||||
|
-"set(GOOGLETEST_SOURCE_DIR \"${SOURCE_DIR}\")
|
||||||
|
-set(GOOGLETEST_BINARY_DIR \"${BINARY_DIR}\")
|
||||||
|
-")
|
||||||
|
+#ExternalProject_Get_Property(googletest SOURCE_DIR BINARY_DIR)
|
||||||
|
+#file(WRITE googletest-paths.cmake
|
||||||
|
+#"set(GOOGLETEST_SOURCE_DIR \"${SOURCE_DIR}\")
|
||||||
|
+#set(GOOGLETEST_BINARY_DIR \"${BINARY_DIR}\")
|
||||||
|
+#")
|
||||||
|
--
|
||||||
|
2.22.0
|
||||||
|
|
Loading…
Reference in New Issue