File fio.spec of Package fio

# vim: set ts=4 sw=4 et:
#
# spec file for package fio
#
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2012 Pascal Bleser <pascal.bleser@opensuse.org>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


Name:           fio
Version:        2.1.13
Release:        0
Summary:        Flexible I/O Tester/benchmarker
License:        GPL-2.0
Group:          System/Benchmark
Source:         http://brick.kernel.dk/snaps/fio-%{version}.tar.bz2
Url:            http://freshmeat.net/projects/fio/
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
Suggests:       gnuplot
Suggests:       gfio
BuildRequires:  gcc
BuildRequires:  libaio-devel
BuildRequires:  make
BuildRequires:  pkg-config

%description
fio is an I/O tool meant to be used both for benchmark and stress/hardware
verification. It has support for 4 different types of I/O engines (sync,
mmap, libaio, posixaio), I/O priorities (for newer Linux kernels), rate I/O,
forked or threaded jobs, and much more. It can work on block devices as
well as files. fio accepts job descriptions in a simple-to-understand text
format. Several example job files are included. fio displays all sorts of
I/O performance information, such as completion and submission latencies
(avg/mean/deviation), bandwidth stats, cpu and disk utilization, and more.

%package -n gfio
Summary:        Graphical front end for fio
Group:          System/Benchmark
BuildRequires:  gtk2-devel
BuildRequires:  zlib-devel

%description -n gfio
gfio is a gtk based graphical front-end for fio.  It is often installed on the
testers workstation whereas fio would be installed on the server.


%prep
%setup -q -n "fio-%{version}"

%build
./configure --enable-gfio
%__make \
    V=1 \
    OPTFLAGS="%{optflags}" \
    CC="%__cc" \
    prefix="%{_prefix}" \
    libdir="%{_libdir}/fio" \
    mandir="%{_mandir}"

%install
%__make \
    V=1 \
    DESTDIR="%{buildroot}" \
    prefix="%{_prefix}" \
    bindir="%{_bindir}" \
    libdir="%{_libdir}/fio" \
    mandir="%{_mandir}" \
    install

%clean
%{?buildroot:%__rm -rf "%{buildroot}"}

%files
%defattr(-,root,root)
%doc COPYING README examples
%doc HOWTO
%{_bindir}/fio
%{_bindir}/fio_generate_plots
%{_bindir}/genfio
%{_bindir}/fio2gnuplot
%{_bindir}/axmap
%{_bindir}/btrace2fio
%{_bindir}/dedupe
%{_bindir}/genzipf
%{_bindir}/ieee754
%{_bindir}/lfsr-test
%{_bindir}/stest
%{_datadir}/fio
%doc %{_mandir}/man1/fio.1%{ext_man}
%doc %{_mandir}/man1/fio_generate_plots.1%{ext_man}
%doc %{_mandir}/man1/fio2gnuplot.1%{ext_man}

%files -n gfio
%defattr(-,root,root)
%doc COPYING README GFIO-TODO
%{_bindir}/gfio

%changelog