Gentoo Archives: gentoo-commits

From: Mike Frysinger <vapier@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-block/fio/
Date: Fri, 24 Jan 2020 18:39:38
Message-Id: 1579891151.5526e2341835f199c3781f28871bdb233d0d33fc.vapier@gentoo
1 commit: 5526e2341835f199c3781f28871bdb233d0d33fc
2 Author: Mike Frysinger <vapier <AT> chromium <DOT> org>
3 AuthorDate: Fri Jan 24 18:39:11 2020 +0000
4 Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org>
5 CommitDate: Fri Jan 24 18:39:11 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5526e234
7
8 sys-block/fio: version bump to 3.17
9
10 Signed-off-by: Mike Frysinger <vapier <AT> gentoo.org>
11
12 sys-block/fio/Manifest | 1 +
13 sys-block/fio/fio-3.17.ebuild | 129 ++++++++++++++++++++++++++++++++++++++++++
14 2 files changed, 130 insertions(+)
15
16 diff --git a/sys-block/fio/Manifest b/sys-block/fio/Manifest
17 index 458fc7b5c70..ce2256488b8 100644
18 --- a/sys-block/fio/Manifest
19 +++ b/sys-block/fio/Manifest
20 @@ -1,5 +1,6 @@
21 DIST fio-2.15.tar.bz2 545809 BLAKE2B 163530097a6ff08016c977a328bc499d052c423890c8e7074bc91fb00b02b3d951dd0369ff772fa5f36a37e0b1b7d6b358c3df99bf70db9bec2bbc7f90eee596 SHA512 fa3380031e6e0a597eb34e597af91efbc824a3d5753793fdb00cb10e693943e0358afaad9624eb4333e81182c94424a56fbd1d434eeff098dbf2fc4e19167db0
22 DIST fio-2.16.tar.bz2 558662 BLAKE2B cbc6e6000bd497fc92779c34688c0862f3adccd7c399ca5d4e4ce9ee9c40faddfec9b3fcca2fad2cd91ca00eee95c4a108273496c9e63db8017695ecf42d294d SHA512 f71c8ab8423e82ceae160bae8c17ac1222c1b2dde2ccb1b2aedb2288e0eb60485f8e9f3908640d4f6cebf166a148f4ad64026c035381c5db5141bf3059349d75
23 DIST fio-3.16.tar.bz2 881436 BLAKE2B fee99930d0245474eb67ceee2d1a6ec2f1a0eb4da6d52cf8616d7eda64699a8c2727715284134fd4931e91efad69b064f66a80a78f70ea03e66d4eab4e601120 SHA512 2d651b20cbc6c7babf3adc082dbe78e1f7de920764653cf5ffd99df7516cf6190ffefe2152d2739326d3102949d9bad7db978ff88866cfa54020f9ec3b0a2a23
24 +DIST fio-3.17.tar.bz2 888795 BLAKE2B 10277efb1234708aff336fc3c0723d0b9b5c903dce3a999ea2b8749b5034c778be4828549b9e0d9fc36a4f9429ca86ac0011f0c110e1a44ed3ad33b6e4a30a68 SHA512 27dba4c3e8f544c0fd40a5f42660f64f42e114e7b56199bc70f540b1a09b9dec9291e3fbae0fab9691189fa4a1f40edbcf4f9b53c313fd9c1a8ba0fdbb7f524e
25 DIST fio-3.2.tar.bz2 613565 BLAKE2B e721d698338dd8d2c6215780a2d9a10c643a5912d3c27b3e759b4c14585ae1afe4edab5bdc54df8cf19c6f3727f8f4b19ce9da3298a5f0ef3753a5d8f423f4ef SHA512 97ea5ed6587d1e7382a67ab7ad933b6e332ba84cb648d17dcebad3c95c9eb6b1c04a4537e3470f890607f2921da77fcd4e49079b8b78f2d15e9c199dab850d1e
26 DIST fio-3.7.tar.bz2 629354 BLAKE2B 99a1c88481c7a693e31b1a0bc23bc80e85df92385f9d5a7de8d6479be8bc425326a20d794eb4809f822adfcd06e07c66ebed321faa9dbae7a2c1d3c766a6467d SHA512 b1f5cb35fe1c06e030c570959ab9a96d936f9eaa2f7f30d5a34f34fd93fae057da07c4084a06143cd5188ad6b2cc06b564484f8867e050cfeddc0ee3fb0fe266
27
28 diff --git a/sys-block/fio/fio-3.17.ebuild b/sys-block/fio/fio-3.17.ebuild
29 new file mode 100644
30 index 00000000000..7da716589b3
31 --- /dev/null
32 +++ b/sys-block/fio/fio-3.17.ebuild
33 @@ -0,0 +1,129 @@
34 +# Copyright 1999-2020 Gentoo Authors
35 +# Distributed under the terms of the GNU General Public License v2
36 +
37 +EAPI="7"
38 +
39 +PYTHON_COMPAT=( python2_7 python3_6 )
40 +
41 +inherit python-r1 toolchain-funcs
42 +
43 +MY_PV="${PV/_rc/-rc}"
44 +MY_P="${PN}-${MY_PV}"
45 +
46 +DESCRIPTION="Jens Axboe's Flexible IO tester"
47 +HOMEPAGE="https://brick.kernel.dk/snaps/"
48 +SRC_URI="https://brick.kernel.dk/snaps/${MY_P}.tar.bz2"
49 +
50 +LICENSE="GPL-2"
51 +SLOT="0"
52 +KEYWORDS="~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86"
53 +IUSE="aio curl glusterfs gnuplot gtk libressl numa rbd rdma static tcmalloc zlib"
54 +REQUIRED_USE="gnuplot? ( ${PYTHON_REQUIRED_USE} )
55 + libressl? ( curl )"
56 +
57 +BDEPEND="virtual/pkgconfig"
58 +
59 +# GTK+:2 does not offer static libaries.
60 +LIB_DEPEND="aio? ( dev-libs/libaio[static-libs(+)] )
61 + curl? (
62 + net-misc/curl:=[static-libs(+)]
63 + !libressl? ( dev-libs/openssl:0=[static-libs(+)] )
64 + libressl? ( dev-libs/libressl:0=[static-libs(+)] )
65 + )
66 + glusterfs? ( sys-cluster/glusterfs[static-libs(+)] )
67 + gtk? ( dev-libs/glib:2[static-libs(+)] )
68 + numa? ( sys-process/numactl[static-libs(+)] )
69 + rbd? ( sys-cluster/ceph[static-libs(+)] )
70 + rdma? (
71 + sys-fabric/libibverbs[static-libs(+)]
72 + sys-fabric/librdmacm[static-libs(+)]
73 + )
74 + tcmalloc? ( dev-util/google-perftools:=[static-libs(+)] )
75 + zlib? ( sys-libs/zlib[static-libs(+)] )"
76 +RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
77 + gtk? ( x11-libs/gtk+:2 )"
78 +DEPEND="${RDEPEND}
79 + static? ( ${LIB_DEPEND} )"
80 +RDEPEND+="
81 + gnuplot? (
82 + sci-visualization/gnuplot
83 + $(python_gen_any_dep 'dev-python/pandas[${PYTHON_USEDEP}]')
84 + ${PYTHON_DEPS}
85 + )"
86 +
87 +S="${WORKDIR}/${MY_P}"
88 +
89 +PATCHES=(
90 + "${FILESDIR}"/fio-2.2.13-libmtd.patch
91 + "${FILESDIR}"/fio-3.16-verify_only_numberio.patch
92 +)
93 +
94 +python_check_deps() {
95 + has_version "dev-python/pandas[${PYTHON_USEDEP}]"
96 +}
97 +
98 +src_prepare() {
99 + default
100 +
101 + sed -i '/^DEBUGFLAGS/s: -D_FORTIFY_SOURCE=2::g' Makefile || die
102 +
103 + # Many checks don't have configure flags.
104 + sed -i \
105 + -e "s:\<pkg-config\>:$(tc-getPKG_CONFIG):" \
106 + -e '/if compile_prog "" "-lz" "zlib" *; *then/ '"s::if $(usex zlib true false) ; then:" \
107 + -e '/if compile_prog "" "-laio" "libaio" ; then/'"s::if $(usex aio true false) ; then:" \
108 + configure || die
109 +}
110 +
111 +src_configure() {
112 + chmod g-w "${T}"
113 + # not a real configure script
114 + # TODO: pmem
115 + set -- \
116 + ./configure \
117 + --disable-optimizations \
118 + --extra-cflags="${CFLAGS} ${CPPFLAGS}" \
119 + --cc="$(tc-getCC)" \
120 + --disable-pmem \
121 + $(usex curl '' '--disable-http') \
122 + $(usex glusterfs '' '--disable-gfapi') \
123 + $(usex gtk '--enable-gfio' '') \
124 + $(usex numa '' '--disable-numa') \
125 + $(usex rbd '' '--disable-rbd') \
126 + $(usex rdma '' '--disable-rdma') \
127 + $(usex static '--build-static' '') \
128 + $(usex tcmalloc '' '--disable-tcmalloc')
129 + echo "$@"
130 + "$@" || die 'configure failed'
131 +}
132 +
133 +src_compile() {
134 + emake V=1 OPTFLAGS=
135 +}
136 +
137 +src_install() {
138 + emake install DESTDIR="${D}" prefix="${EPREFIX}/usr" mandir="${EPREFIX}/usr/share/man"
139 +
140 + if use gnuplot ; then
141 + sed -i 's:python2.7:python:g' \
142 + "${ED}/usr/bin/fio2gnuplot" \
143 + "${ED}/usr/bin/fiologparser_hist.py" \
144 + "${ED}/usr/bin/fiologparser.py"
145 + python_replicate_script \
146 + "${ED}/usr/bin/fio2gnuplot" \
147 + "${ED}/usr/bin/fiologparser_hist.py" \
148 + "${ED}/usr/bin/fiologparser.py"
149 + else
150 + rm "${ED}"/usr/bin/{fio2gnuplot,fio_generate_plots} || die
151 + rm "${ED}"/usr/share/man/man1/{fio2gnuplot,fio_generate_plots}.1 || die
152 + rm "${ED}"/usr/share/fio/*.gpm || die
153 + rmdir "${ED}"/usr/share/fio/ 2>/dev/null
154 + fi
155 +
156 + # This tool has security/parallel issues -- it hardcodes /tmp/template.fio.
157 + rm "${ED}"/usr/bin/genfio || die
158 +
159 + dodoc README REPORTING-BUGS HOWTO
160 + docinto examples
161 + dodoc examples/*
162 +}