summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Brown <ecbrown@ericcbrown.com>2020-04-13 20:34:11 -0500
committerGuix Patches Tester <>2020-04-14 19:16:43 +0100
commitcf71248baf618595c589da19e902c8dd0b7ee5b5 (patch)
tree438f392a3f75c366390bf4e107ca500aa5a94cfb
parentd94271f9ca68062435c35f788dcb22483b38ef31 (diff)
downloadpatches-series-3535.tar
patches-series-3535.tar.gz
gnu: Add sysbench.series-3535
* gnu/packages/benchmark.scm (sysbench): New variable.
-rw-r--r--gnu/packages/benchmark.scm64
1 files changed, 64 insertions, 0 deletions
diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm
index 4e6c416518..b27cd5436e 100644
--- a/gnu/packages/benchmark.scm
+++ b/gnu/packages/benchmark.scm
@@ -7,6 +7,7 @@
;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
+;;; Copyright © 2020 Eric Brown <ecbrown@ericcbrown.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -31,16 +32,22 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
+ #:use-module (gnu packages autotools)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages databases)
#:use-module (gnu packages linux)
+ #:use-module (gnu packages lua)
+ #:use-module (gnu packages m4)
#:use-module (gnu packages maths)
#:use-module (gnu packages mpi)
#:use-module (gnu packages perl)
+ #:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages storage)
+ #:use-module (gnu packages tls)
#:use-module (ice-9 match))
(define-public fio
@@ -258,3 +265,60 @@ benchmark how your file systems perform with respect to data read and write
speed, the number of seeks that can be performed per second, and the number of
file metadata operations that can be performed per second.")
(license license:gpl2))) ;GPL 2 only, see copyright.txt
+
+(define-public sysbench
+ (package
+ (name "sysbench")
+ (version "1.0.19")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/akopytov/sysbench")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1zgqb9cr7ld3vw4a3jhq1mlszhcyjlpr0c8q1jcp1d27l9dcvd1w"))
+ (modules '((guix build utils)))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; until shebangs fixed
+ #:configure-flags '("--with-system-luajit")
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'bootstrap)
+ (add-after 'patch-source-shebangs 'libtoolize
+ (lambda _ (invoke "libtoolize" "--copy" "--force")))
+ (add-after 'libtoolize 'aclocal
+ (lambda _ (invoke "aclocal" "-I" "m4")))
+ (add-after 'aclocal 'autoreconf
+ (lambda _ (invoke "autoreconf" "--install")))
+ (add-after 'autoreconf 'automake
+ (lambda _ (invoke "automake"
+ "-c" "--foreign" "--add-missing")))
+ (add-after 'automake 'autoconf
+ (lambda _ (invoke "autoconf"))))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("lua" ,lua)
+ ("m4" ,m4)
+ ("perl" ,perl)
+ ("pkg-config" ,pkg-config)
+ ("python" ,python-minimal)))
+ (inputs
+ `(("libaio" ,libaio)
+ ("luajit" ,luajit)
+ ("mysql" ,mysql)
+ ("openssl" ,openssl)
+ ("postgresql" ,postgresql)
+ ("zlib" ,zlib)))
+ (home-page "https://github.com/akopytov/sysbench/")
+ (synopsis "Scriptable multi-threaded benchmark tool ")
+ (description "sysbench is a scriptable multi-threaded benchmark tool based
+on LuaJIT. It is most frequently used for database benchmarks, but can also be
+used to create arbitrarily complex workloads that do not involve a database
+server.")
+ (license license:gpl2+)))
+