From 4f2d7949f03e1c198bc888f2d05f421d35c57e21 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 9 Oct 2017 18:53:29 +0100 Subject: reinit the tree, so we can have metadata --- sys-block/fio/Manifest | 9 +++ sys-block/fio/files/fio-2.2.13-libmtd.patch | 12 ++++ sys-block/fio/files/fio-2.2.15-rdma.patch | 52 ++++++++++++++ sys-block/fio/fio-2.15.ebuild | 96 +++++++++++++++++++++++++ sys-block/fio/fio-2.16.ebuild | 107 ++++++++++++++++++++++++++++ sys-block/fio/metadata.xml | 18 +++++ 6 files changed, 294 insertions(+) create mode 100644 sys-block/fio/Manifest create mode 100644 sys-block/fio/files/fio-2.2.13-libmtd.patch create mode 100644 sys-block/fio/files/fio-2.2.15-rdma.patch create mode 100644 sys-block/fio/fio-2.15.ebuild create mode 100644 sys-block/fio/fio-2.16.ebuild create mode 100644 sys-block/fio/metadata.xml (limited to 'sys-block/fio') diff --git a/sys-block/fio/Manifest b/sys-block/fio/Manifest new file mode 100644 index 000000000000..c4c26fb3a3ee --- /dev/null +++ b/sys-block/fio/Manifest @@ -0,0 +1,9 @@ +AUX fio-2.2.13-libmtd.patch 398 SHA256 0a29c0db0f35d7a8ac95736700e0e43356ecbac89f8eb9151211039733e994b3 SHA512 18792d4ea3dbc2664d9e24541a07d82a50cd60bb7ff2d14bcdadd2207341c003ad2d298d99d65fd72c88813073b17d03a710a50db4df52ee72d49d9e9bcfe400 WHIRLPOOL e05185a4df293b7cea440607b04bb07534981ae2080cf2d4012c872c9aa4b0ad001ba00bb46bc17d863890ff8951c6f711e2433d66b4d2e4fc849c3d9ce9fa8d +AUX fio-2.2.15-rdma.patch 1667 SHA256 8eb155e6d545c948d99535b8e0983f568ae3a40546214265a7873f31a511eb02 SHA512 aad747697693a8cef151ae9f60ea5c187cfab92aefd68046fd08c28bc1f173d5bd3c3315f5f5f6de082e7d5ceb357beb3becd159bfec1507e3ab1707eb8b796d WHIRLPOOL 1269a9ea6b28988c32f2458cb558d64c2364fd9e923742b96bc7b284f1ec7de511fe38a853a7d805596fcd015649c3934db5a81468b063edac0c98eaf1394023 +DIST fio-2.15.tar.bz2 545809 SHA256 60044f92cfbd2f656162864aae309ab88ff5983c2e49f4b9f8271c445852f5bd SHA512 fa3380031e6e0a597eb34e597af91efbc824a3d5753793fdb00cb10e693943e0358afaad9624eb4333e81182c94424a56fbd1d434eeff098dbf2fc4e19167db0 WHIRLPOOL 32215d63a373c88041d90c6d07d87f9b4e6d4070d1b263676a817dc9ddd8cb175cbbc25e8359cec956ea26a39f40c1cb501ba897475f628ce4f6a5502939239e +DIST fio-2.16.tar.bz2 558662 SHA256 7d8dd6897a5fa181b4b707ffb7b87306c23a5a99a3aefa1d6f510150302cb6ec SHA512 f71c8ab8423e82ceae160bae8c17ac1222c1b2dde2ccb1b2aedb2288e0eb60485f8e9f3908640d4f6cebf166a148f4ad64026c035381c5db5141bf3059349d75 WHIRLPOOL cdd11fd09dce3fec04b12f82fef6d53c8ae70623b35a39cbfe50039bf9be5d80e00715c58e9fa6dee67a471327bf6da7f741add880bfefa9eb26f432b265e9ac +EBUILD fio-2.15.ebuild 2693 SHA256 79f90f5daa6e6af11befe4c6c932af66e738139f6dc2c8adc86f796ac0547e13 SHA512 5052d1f15e6250f0802a6a9786aef3ea95fa61a54cb1c7a58c29e80a8b79ed3170096b51fe20f3e8cf4b7ba264fcc4beb25a8e32f222ef7619af6324d73b7a91 WHIRLPOOL 11ddafac0c66c925cab08c5622eb045e7078efe58b6536d4d9003557168abd3ed7ab26ab920c52c8926631be241d95416d0219c3b62fd38459e3516b9c354335 +EBUILD fio-2.16.ebuild 2907 SHA256 3efc33f63ffed255fb228e70421755256496a883a4c9facc5198f45e85be19f1 SHA512 ae8bd404cddedd37a41729e1ec570df997dd9b4484daa9e77a75c4887ee0bb26d5cffbb015fd1e154103d276f2db11486bb49d09b8dbc897f3d5ba5865fb1559 WHIRLPOOL fe794a846846735e0cd1828182c6bf8164f08f0e2ee8f95c5ed0ef8929f7e427d5c1905ab5cbb9fe5f1a522708a41b1c52c92e89160b8be888a65aa2a78be424 +MISC ChangeLog 6173 SHA256 adef05fb421079960fc68803a920d1c6157d3c148c009ad03aef60b260240c89 SHA512 eb9f07204991287c6ad334658cc154813426b2e86e21660ff9896d5d092d0e42555ebfdba5233d9a2e565760018bc0d6023486cb2fa41227a21543668238c2e2 WHIRLPOOL 75f8ce86190e858575a1c4fa8791ec37f73a923b917c3f674f259a0ed0947252a1cdb759cacfce611e287145806cb0f363b12089d2f73b3554c2505c238a9824 +MISC ChangeLog-2015 9820 SHA256 e0f9739e729e87beb140743647bd329b5ac5949ba2ee39db5ad3ea1a7edcd86e SHA512 8129ab7889a16db3347a748d812112b50e8b135652aec050e05aaa015f42e0230befc4fdf5988b0cb2391c4f4b0688ddc946e375f3a902246a63d867097531eb WHIRLPOOL 73535dc0698b6b3e13fcc0a84a8c791bc64d121c5f9042f418e5d226347aa23b605697ba52ca821924980d30a15f94bb5aaf97d6d15983229a611f2383a8094f +MISC metadata.xml 761 SHA256 70e04d96344e330125e443fdeee4e8f7ac65f706ca1584874a55917999e79a90 SHA512 b5f10abbb437a0833b0a02e870b91b56c49c264d190e65e2a88fe45f4d19f40040c300e91dc11d8055118a30a7f334cc2283b9f55852f5baf985eae44cb26e01 WHIRLPOOL 32cbb2feed3801759690297f8413a9904cbc5146af9ca9f8a750f8fd29f68f02bfc5a3b11b0133eee4b2ab803cc102e22602b64e73284087136fb7ae79a5fa31 diff --git a/sys-block/fio/files/fio-2.2.13-libmtd.patch b/sys-block/fio/files/fio-2.2.13-libmtd.patch new file mode 100644 index 000000000000..7ab9a96c25e3 --- /dev/null +++ b/sys-block/fio/files/fio-2.2.13-libmtd.patch @@ -0,0 +1,12 @@ +diff -Nuar --exclude config.log fio-2.2.13/oslib/libmtd.h fio-2.2.13.new/oslib/libmtd.h +--- fio-2.2.13/oslib/libmtd.h 2016-01-26 18:02:07.000000000 -0800 ++++ fio-2.2.13.new/oslib/libmtd.h 2016-02-03 08:10:19.104693006 -0800 +@@ -29,6 +29,8 @@ + extern "C" { + #endif + ++#include ++ + /* Maximum MTD device name length */ + #define MTD_NAME_MAX 127 + /* Maximum MTD device type string length */ diff --git a/sys-block/fio/files/fio-2.2.15-rdma.patch b/sys-block/fio/files/fio-2.2.15-rdma.patch new file mode 100644 index 000000000000..3ca9198840e4 --- /dev/null +++ b/sys-block/fio/files/fio-2.2.15-rdma.patch @@ -0,0 +1,52 @@ +From fd6d9c789bcb8b7c7b1edf34249e034094d341fc Mon Sep 17 00:00:00 2001 +From: Mike Frysinger +Date: Tue, 28 Feb 2017 22:25:58 -0700 +Subject: [PATCH] configure: add a --disable-rdma flag to control rdma deps + +Signed-off-by: Mike Frysinger +--- + configure | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/configure b/configure +index 15b87fac0e4c..187ac3583805 100755 +--- a/configure ++++ b/configure +@@ -166,6 +166,8 @@ for opt do + ;; + --disable-numa) disable_numa="yes" + ;; ++ --disable-rdma) disable_rdma="yes" ++ ;; + --disable-rbd) disable_rbd="yes" + ;; + --disable-rbd-blkin) disable_rbd_blkin="yes" +@@ -204,6 +206,7 @@ if test "$show_help" = "yes" ; then + echo "--esx Configure build options for esx" + echo "--enable-gfio Enable building of gtk gfio" + echo "--disable-numa Disable libnuma even if found" ++ echo "--disable-rdma Disable RDMA support even if found" + echo "--disable-gfapi Disable gfapi" + echo "--enable-libhdfs Enable hdfs support" + echo "--disable-lex Disable use of lex/yacc for math" +@@ -642,7 +645,7 @@ int main(int argc, char **argv) + return 0; + } + EOF +-if compile_prog "" "-libverbs" "libverbs" ; then ++if test "$disable_rdma" != "yes" && compile_prog "" "-libverbs" "libverbs" ; then + libverbs="yes" + LIBS="-libverbs $LIBS" + fi +@@ -660,7 +663,7 @@ int main(int argc, char **argv) + return 0; + } + EOF +-if compile_prog "" "-lrdmacm" "rdma"; then ++if test "$disable_rdma" != "yes" && compile_prog "" "-lrdmacm" "rdma"; then + rdmacm="yes" + LIBS="-lrdmacm $LIBS" + fi +-- +2.11.1 + diff --git a/sys-block/fio/fio-2.15.ebuild b/sys-block/fio/fio-2.15.ebuild new file mode 100644 index 000000000000..a599db324b68 --- /dev/null +++ b/sys-block/fio/fio-2.15.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" + +PYTHON_COMPAT=( python2_7 ) + +inherit eutils python-r1 toolchain-funcs + +MY_PV="${PV/_rc/-rc}" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="Jens Axboe's Flexible IO tester" +HOMEPAGE="http://brick.kernel.dk/snaps/" +SRC_URI="http://brick.kernel.dk/snaps/${MY_P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 arm ia64 ppc ppc64 x86" +IUSE="aio glusterfs gnuplot gtk numa rbd rdma static zlib" +REQUIRED_USE="gnuplot? ( ${PYTHON_REQUIRED_USE} )" + +# GTK+:2 does not offer static libaries. +LIB_DEPEND="aio? ( dev-libs/libaio[static-libs(+)] ) + glusterfs? ( sys-cluster/glusterfs[static-libs(+)] ) + gtk? ( dev-libs/glib:2[static-libs(+)] ) + numa? ( sys-process/numactl[static-libs(+)] ) + rbd? ( sys-cluster/ceph[static-libs(+)] ) + zlib? ( sys-libs/zlib[static-libs(+)] )" +RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} ) + gtk? ( x11-libs/gtk+:2 )" +DEPEND="${RDEPEND} + static? ( ${LIB_DEPEND} )" +RDEPEND+=" + gnuplot? ( + sci-visualization/gnuplot + ${PYTHON_DEPS} + )" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + epatch "${FILESDIR}"/fio-2.2.13-libmtd.patch + epatch "${FILESDIR}"/fio-2.2.15-rdma.patch #542640 + sed -i '/^DEBUGFLAGS/s: -D_FORTIFY_SOURCE=2::g' Makefile || die + epatch_user + + # Many checks don't have configure flags. + sed -i \ + -e "s:\:$(tc-getPKG_CONFIG):" \ + -e '/if compile_prog "" "-lz" "zlib" *; *then/ '"s::if $(usex zlib true false) ; then:" \ + -e '/if compile_prog "" "-laio" "libaio" ; then/'"s::if $(usex aio true false) ; then:" \ + configure || die +} + +src_configure() { + chmod g-w "${T}" + # not a real configure script + set -- \ + ./configure \ + --disable-optimizations \ + --extra-cflags="${CFLAGS} ${CPPFLAGS}" \ + --cc="$(tc-getCC)" \ + $(usex glusterfs '' '--disable-gfapi') \ + $(usex gtk '--enable-gfio' '') \ + $(usex numa '' '--disable-numa') \ + $(usex rbd '' '--disable-rbd') \ + $(usex rdma '' '--disable-rdma') \ + $(usex static '--build-static' '') + echo "$@" + "$@" || die 'configure failed' +} + +src_compile() { + emake V=1 OPTFLAGS= +} + +src_install() { + emake install DESTDIR="${D}" prefix="${EPREFIX}/usr" mandir="${EPREFIX}/usr/share/man" + + if use gnuplot ; then + python_replicate_script "${ED}/usr/bin/fio2gnuplot" + else + rm "${ED}"/usr/bin/{fio2gnuplot,fio_generate_plots} || die + rm "${ED}"/usr/share/man/man1/{fio2gnuplot,fio_generate_plots}.1 || die + rm "${ED}"/usr/share/fio/*.gpm || die + rmdir "${ED}"/usr/share/fio/ 2>/dev/null + fi + + # This tool has security/parallel issues -- it hardcodes /tmp/template.fio. + rm "${ED}"/usr/bin/genfio || die + + dodoc README REPORTING-BUGS HOWTO + docinto examples + dodoc examples/* +} diff --git a/sys-block/fio/fio-2.16.ebuild b/sys-block/fio/fio-2.16.ebuild new file mode 100644 index 000000000000..41ad19361c11 --- /dev/null +++ b/sys-block/fio/fio-2.16.ebuild @@ -0,0 +1,107 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python2_7 ) + +inherit eutils python-r1 toolchain-funcs + +MY_PV="${PV/_rc/-rc}" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="Jens Axboe's Flexible IO tester" +HOMEPAGE="http://brick.kernel.dk/snaps/" +SRC_URI="http://brick.kernel.dk/snaps/${MY_P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86" +IUSE="aio glusterfs gnuplot gtk numa rbd rdma static zlib" +REQUIRED_USE="gnuplot? ( ${PYTHON_REQUIRED_USE} )" + +# GTK+:2 does not offer static libaries. +LIB_DEPEND="aio? ( dev-libs/libaio[static-libs(+)] ) + glusterfs? ( sys-cluster/glusterfs[static-libs(+)] ) + gtk? ( dev-libs/glib:2[static-libs(+)] ) + numa? ( sys-process/numactl[static-libs(+)] ) + rbd? ( sys-cluster/ceph[static-libs(+)] ) + rdma? ( + sys-fabric/libibverbs[static-libs(+)] + sys-fabric/librdmacm[static-libs(+)] + ) + zlib? ( sys-libs/zlib[static-libs(+)] )" +RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} ) + gtk? ( x11-libs/gtk+:2 )" +DEPEND="${RDEPEND} + static? ( ${LIB_DEPEND} )" +RDEPEND+=" + gnuplot? ( + sci-visualization/gnuplot + ${PYTHON_DEPS} + )" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}"/fio-2.2.13-libmtd.patch + "${FILESDIR}"/fio-2.2.15-rdma.patch #542640 +) + +src_prepare() { + sed -i '/^DEBUGFLAGS/s: -D_FORTIFY_SOURCE=2::g' Makefile || die + + # Many checks don't have configure flags. + sed -i \ + -e "s:\:$(tc-getPKG_CONFIG):" \ + -e '/if compile_prog "" "-lz" "zlib" *; *then/ '"s::if $(usex zlib true false) ; then:" \ + -e '/if compile_prog "" "-laio" "libaio" ; then/'"s::if $(usex aio true false) ; then:" \ + configure || die + default +} + +src_configure() { + chmod g-w "${T}" + # not a real configure script + set -- \ + ./configure \ + --disable-optimizations \ + --extra-cflags="${CFLAGS} ${CPPFLAGS}" \ + --cc="$(tc-getCC)" \ + $(usex glusterfs '' '--disable-gfapi') \ + $(usex gtk '--enable-gfio' '') \ + $(usex numa '' '--disable-numa') \ + $(usex rbd '' '--disable-rbd') \ + $(usex rdma '' '--disable-rdma') \ + $(usex static '--build-static' '') + echo "$@" + "$@" || die 'configure failed' +} + +src_compile() { + emake V=1 OPTFLAGS= +} + +src_install() { + emake install DESTDIR="${D}" prefix="${EPREFIX}/usr" mandir="${EPREFIX}/usr/share/man" + + if use gnuplot ; then + python_replicate_script \ + "${ED}/usr/bin/fio2gnuplot" \ + "${ED}/usr/bin/fiologparser_hist.py" \ + "${ED}/usr/bin/fio_latency2csv.py" \ + "${ED}/usr/bin/fiologparser.py" + else + rm "${ED}"/usr/bin/{fio2gnuplot,fio_generate_plots} || die + rm "${ED}"/usr/share/man/man1/{fio2gnuplot,fio_generate_plots}.1 || die + rm "${ED}"/usr/share/fio/*.gpm || die + rmdir "${ED}"/usr/share/fio/ 2>/dev/null + fi + + # This tool has security/parallel issues -- it hardcodes /tmp/template.fio. + rm "${ED}"/usr/bin/genfio || die + + dodoc README REPORTING-BUGS HOWTO + docinto examples + dodoc examples/* +} diff --git a/sys-block/fio/metadata.xml b/sys-block/fio/metadata.xml new file mode 100644 index 000000000000..008fec0e1b2a --- /dev/null +++ b/sys-block/fio/metadata.xml @@ -0,0 +1,18 @@ + + + + + robbat2@gentoo.org + + + prometheanfire@gentoo.org + + + Enable AIO ioengine + Enable GlusterFS gfapi support via sys-cluster/glusterfs + Install tools for generating gnuplots + Enable numa support + Enable Rados block device support via sys-cluster/ceph + Enable infiniband support via sys-fabric/librdmacm + + -- cgit v1.2.3