]> git.pld-linux.org Git - packages/fio.git/blame - fio.spec
- updated to 2.19
[packages/fio.git] / fio.spec
CommitLineData
4c2fe1f1
JB
1# TODO:
2# - HDFS (hadoop, --enable-libhdfs, requires also java)
3# - fusion-aw (nvm-primitives): http://opennvm.github.io/
bc626f25
JB
4#
5# Conditional build:
b4c2a340 6%bcond_with ceph # RBD (CephFS) support
bc626f25
JB
7%bcond_without glusterfs # GFAPI support
8%bcond_without gtk # GTK+ based GUI (gfio)
9%bcond_without numa # NUMA support
10#
c1909f35 11Summary: I/O tool for benchmark and stress/hardware verification
5f5044a2 12Summary(pl.UTF-8): Narzędzie do mierzenia wydajności I/O i sprawdzania sprawności sprzętu
c1909f35 13Name: fio
ee8d8518
JB
14Version: 2.19
15Release: 1
017f0e28 16License: GPL v2+
bc626f25 17Group: Applications/System
c1909f35 18Source0: http://brick.kernel.dk/snaps/%{name}-%{version}.tar.bz2
ee8d8518 19# Source0-md5: 83275de968ca2c5e9429e7b83710d20e
4c2fe1f1 20Patch0: %{name}-guasi.patch
c1909f35 21URL: http://git.kernel.dk/?p=fio.git;a=summary
bc626f25
JB
22BuildRequires: bison
23%{?with_ceph:BuildRequires: ceph-devel}
24BuildRequires: flex
25%{?with_glusterfs:BuildRequires: glusterfs-devel}
4c2fe1f1 26BuildRequires: guasi-devel
c1909f35 27BuildRequires: libaio-devel
bc626f25
JB
28BuildRequires: libibverbs-devel
29BuildRequires: librdmacm-devel
30BuildRequires: numactl-devel
31BuildRequires: sed >= 4.0
32BuildRequires: zlib-devel
33%if %{with gtk}
34BuildRequires: cairo-devel
35BuildRequires: glib2-devel >= 2.0
36BuildRequires: gtk+2-devel >= 2:2.18.0
37BuildRequires: pkgconfig
38%endif
39# x86 features detection relies on cpuid
40ExcludeArch: i386 i486
c1909f35 41BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42
43%description
44fio is an I/O tool meant to be used both for benchmark and
45stress/hardware verification. It has support for 9 different types of
46I/O engines (sync, mmap, libaio, posixaio, SG v3, splice, null,
47network, syslet), I/O priorities (for newer Linux kernels), rate I/O,
48forked or threaded jobs, and much more. It can work on block devices
49as well as files. fio accepts job descriptions in a
50simple-to-understand text format. Several example job files are
51included. fio displays all sorts of I/O performance information. It
52supports Linux, FreeBSD, and OpenSolaris.
53
5f5044a2
JB
54%description -l pl.UTF-8
55fio to narzędzie do mierzenia wydajności I/O oraz sprawdzania
3552df17 56sprawności sprzętu pod dużym obciążeniem. Obsługuje 9 różnych rodzajów
57silników I/O (sync, mmap, libaio, posixaio, SG v3, splice, null,
58network, syslet), priorytety I/O (dla nowszych jąder Linuksa),
5f5044a2 59przepustowość I/O, zadania wieloprocesowe lub wielowątkowe i wiele
3552df17 60więcej. Może działać na urządzeniach blokowych oraz na plikach. fio
61przyjmuje opisy zadań w formacie tekstowym prostym do zrozumienia. Ma
62załączone kilka przykładowych plików zadań. Wyświetla wszystkie
63rodzaje informacji o wydajności I/O. Obsługuje Linuksa, FreeBSD i
64OpenSolarisa.
c1909f35 65
b1b35878
JB
66%package devel
67Summary: Header files for developing FIO engine modules
68Summary(pl.UTF-8): Pliki nagłówkowe do tworzenia modułów silników FIO
69Group: Development/Libraries
70# doesn't require base
71
72%description devel
73Header files for developing FIO engine modules.
74
75%description devel -l pl.UTF-8
76Pliki nagłówkowe do tworzenia modułów silników FIO.
77
bc626f25
JB
78%package -n gfio
79Summary: GTK+ based graphical front-end for fio
80Summary(pl.UTF-8): Oparty na GTK+ graficzny interfejs do fio
81Group: X11/Applications
82Requires: %{name} = %{version}-%{release}
83
84%description -n gfio
85gfio is a GTK+ based graphical front-end for fio. It is often
86installed on the testers workstation whereas fio would be installed on
87the server.
88
89%description -n gfio -l pl.UTF-8
90gfio to oparty na GTK+ graficzny interfejs do fio. Zwykle jest
91instalowany na komputerze testerów, podczas gdy fio jest zainstalowany
92na serwerze.
93
c1909f35 94%prep
95%setup -q
4c2fe1f1 96%patch0 -p1
bc626f25
JB
97
98%{__sed} -i -e '1s,/usr/bin/env bash,/bin/bash,' tools/genfio
99%{__sed} -i -e '1s,/usr/bin/env python,/usr/bin/python,' tools/plot/fio2gnuplot
c1909f35 100
101%build
bc626f25
JB
102./configure \
103 --cc="%{__cc}" \
104 --extra-cflags="%{rpmcflags} %{rpmcppflags}" \
105 %{!?with_glusterfs:--enable-gfapi} \
106 %{?with_gtk:--enable-gfio} \
107 %{!?with_numa:--disable-numa} \
4c2fe1f1 108 %{!?with_ceph:--disable-rbd} \
bc626f25 109
c1909f35 110%{__make} \
c1909f35 111 LDFLAGS="%{rpmldflags}" \
8f621653 112 V=1
c1909f35 113
114%install
115rm -rf $RPM_BUILD_ROOT
116
117%{__make} install \
118 prefix="%{_prefix}" \
4ac72107 119 mandir="%{_mandir}" \
c1909f35 120 DESTDIR=$RPM_BUILD_ROOT
121
b1b35878
JB
122# development files for fio modules
123install -d $RPM_BUILD_ROOT%{_includedir}/fio/{arch,compiler,engines,lib,os,oslib}
ee8d8518 124cp -p client.h config-host.h debug.h diskutil.h fifo.h file.h fio.h fio_time.h flist.h flow.h gettime.h helper_thread.h helpers.h io_ddir.h io_u.h io_u_queue.h ioengines.h iolog.h json.h log.h minmax.h mutex.h options.h parse.h profile.h server.h stat.h steadystate.h td_error.h thread_options.h workqueue.h $RPM_BUILD_ROOT%{_includedir}/fio
b1b35878
JB
125cp -p arch/arch.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
126%ifarch %{ix86} %{x8664} x32
127cp -p arch/arch-x86.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
128%endif
129%ifarch %{x8664} x32
130cp -p arch/arch-x86_64.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
131%endif
132%ifarch %{ix86} %{x8664} x32
133cp -p arch/arch-x86-common.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
134%endif
135%ifarch ppc ppc64
136cp -p arch/arch-ppc.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
137%endif
138%ifarch ia64
139cp -p arch/arch-ia64.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
140%endif
141%ifarch alpha
142cp -p arch/arch-ia64.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
143%endif
144%ifarch s390 s390x
145cp -p arch/arch-s390.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
146%endif
147%ifarch sparc sparcv9 sparc64
148cp -p arch/arch-sparc.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
149%endif
150%ifarch sparc64
151cp -p arch/arch-sparc64.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
152%endif
153%ifarch arm aarch64
154cp -p arch/arch-arm.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
155%endif
156%ifarch mips
157cp -p arch/arch-mips.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
158%endif
159%ifarch sh
160cp -p arch/arch-sh.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
161%endif
162%ifarch hppa
163cp -p arch/arch-hppa.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
164%endif
165%ifarch aarch64
166cp -p arch/arch-aarch64.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
167%endif
168%ifnarch %{ix86} %{x8664} x32 ppc ppc64 ia64 alpha s390 s390x sparc sparcv9 sparc64 arm mips sh hppa aarch64
169cp -p arch/arch-generic.h $RPM_BUILD_ROOT%{_includedir}/fio/arch
170%endif
171cp -p compiler/{compiler,compiler-gcc*}.h $RPM_BUILD_ROOT%{_includedir}/fio/compiler
172cp -p lib/{axmap,ffz,gauss,ieee754,lfsr,output_buffer,pattern,rand,rbtree,types,zipf}.h $RPM_BUILD_ROOT%{_includedir}/fio/lib
243f14c2 173cp -p os/{binject,os,os-linux,os-linux-syscall}.h $RPM_BUILD_ROOT%{_includedir}/fio/os
b1b35878
JB
174cp -p oslib/{getopt,strlcat}.h $RPM_BUILD_ROOT%{_includedir}/fio/oslib
175
c1909f35 176%clean
177rm -rf $RPM_BUILD_ROOT
178
179%files
180%defattr(644,root,root,755)
bc626f25
JB
181%doc HOWTO MORAL-LICENSE README REPORTING-BUGS SERVER-TODO examples
182%attr(755,root,root) %{_bindir}/fio
183%attr(755,root,root) %{_bindir}/fio-btrace2fio
184%attr(755,root,root) %{_bindir}/fio-dedupe
185%attr(755,root,root) %{_bindir}/fio-genzipf
4c2fe1f1 186%attr(755,root,root) %{_bindir}/fio-verify-state
bc626f25
JB
187%attr(755,root,root) %{_bindir}/fio2gnuplot
188%attr(755,root,root) %{_bindir}/fio_generate_plots
7e44be1f
JB
189%attr(755,root,root) %{_bindir}/fio_latency2csv.py
190%attr(755,root,root) %{_bindir}/fiologparser.py
191%attr(755,root,root) %{_bindir}/fiologparser_hist.py
bc626f25
JB
192%attr(755,root,root) %{_bindir}/genfio
193%{_datadir}/fio
194%{_mandir}/man1/fio.1*
195%{_mandir}/man1/fio2gnuplot.1*
196%{_mandir}/man1/fio_generate_plots.1*
7e44be1f 197%{_mandir}/man1/fiologparser_hist.py.1*
bc626f25 198
b1b35878
JB
199%files devel
200%defattr(644,root,root,755)
201%{_includedir}/fio
202
bc626f25
JB
203%if %{with gtk}
204%files -n gfio
205%defattr(644,root,root,755)
206%doc GFIO-TODO
207%attr(755,root,root) %{_bindir}/gfio
208%endif
This page took 0.057073 seconds and 4 git commands to generate.