From 56bd759df1d0c750a065b8c845e93d5dfa6b549d Mon Sep 17 00:00:00 2001 From: "Robin H. Johnson" Date: Sat, 8 Aug 2015 13:49:04 -0700 Subject: proj/gentoo: Initial commit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson X-Thanks: Alec Warner - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring - wrote much python to improve cvs2svn X-Thanks: Rich Freeman - validation scripts X-Thanks: Patrick Lauer - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed --- sys-block/fio/Manifest | 7 ++ .../fio/files/fio-2.0.14-pic-clobber-fix.patch | 29 +++++ sys-block/fio/files/fio-2.1.10-json.patch | 32 +++++ sys-block/fio/files/fio-2.2.9-atomic-sync.patch | 140 +++++++++++++++++++++ sys-block/fio/fio-1.17.2.ebuild | 29 +++++ sys-block/fio/fio-1.99.10.ebuild | 44 +++++++ sys-block/fio/fio-2.0.14-r1.ebuild | 52 ++++++++ sys-block/fio/fio-2.0.15.ebuild | 52 ++++++++ sys-block/fio/fio-2.1.9.ebuild | 81 ++++++++++++ sys-block/fio/fio-2.2.4-r1.ebuild | 85 +++++++++++++ sys-block/fio/fio-2.2.9.ebuild | 86 +++++++++++++ sys-block/fio/metadata.xml | 18 +++ 12 files changed, 655 insertions(+) create mode 100644 sys-block/fio/Manifest create mode 100644 sys-block/fio/files/fio-2.0.14-pic-clobber-fix.patch create mode 100644 sys-block/fio/files/fio-2.1.10-json.patch create mode 100644 sys-block/fio/files/fio-2.2.9-atomic-sync.patch create mode 100644 sys-block/fio/fio-1.17.2.ebuild create mode 100644 sys-block/fio/fio-1.99.10.ebuild create mode 100644 sys-block/fio/fio-2.0.14-r1.ebuild create mode 100644 sys-block/fio/fio-2.0.15.ebuild create mode 100644 sys-block/fio/fio-2.1.9.ebuild create mode 100644 sys-block/fio/fio-2.2.4-r1.ebuild create mode 100644 sys-block/fio/fio-2.2.9.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..4ba9b13b876f --- /dev/null +++ b/sys-block/fio/Manifest @@ -0,0 +1,7 @@ +DIST fio-1.17.2.tar.bz2 1155486 SHA256 1bf40fb709b7e7dbee778139cabae6b70ec6a89a43ddd83450a6b981bf813498 SHA512 99ea0da474f2d23d17a4c8775d1ec0421c020f072e2ccfbf920cbf52edac934e365dac38cdbd15993dfa72dd09b81540b0b9802f1896f031e8682fdfd805ee4b WHIRLPOOL 61da7007e3b591b148f3ffba45c3c1ecf646c47ad08d78c258cdca2906c441285fa0db738e5b0b0113a00ed178d99973b5b380a03690fe5d2e279a361cea0201 +DIST fio-1.99.10.tar.bz2 371892 SHA256 c6af6f685dfaa32c1f5779497f8d1b3dc1e18fc54bf35f0f3bb8120cf4ac2b3a SHA512 23bc2eaeed310d092a84cac06c701ccbe7c4ec45d98323f2e5ab3e4ccbea4b901edf2099dba1aed6fb31254c177228369e5983622a078ac33dc947a532693d87 WHIRLPOOL a4727121239f592f75f1a118f63370ee811c8f8b4396a253debd5ccc8a92641624d6bee65fb9b6c882e5dde41e5144d66457f47fef79942117a1a865f7183075 +DIST fio-2.0.14.tar.bz2 253574 SHA256 4bf01f1d2baf6d4fa905e5489e446e85e01979c427b2c38e2915e039248044e5 SHA512 f58024aeb38026e62cfec5a3ec9ceffb0bd1361a65cf89513a36615aa084974461c7f132ae803d49f02c36d36a6029c52f851e7f8b2cd1c66be0dcdc9fdcf115 WHIRLPOOL cb4812b34a59df41dfc6e293518becfe43515fa228b3dcb1400af987f465d7c1251b9d2645395fb7f2991728a67133bc1f1b0124db88963a1d9b11b29d949e26 +DIST fio-2.0.15.tar.bz2 258773 SHA256 3cc1b5e6c6955f9acad016b4d2ef619061ad9937874c7663e2a29777ed845ac4 SHA512 00289a0404cb44dd670614856932fbdf61cb1508e0eb672e5778c2ba3eba661b82892f7c969e4a82cf4fc487a744eb7411bfebf3b9612863de0197a28787f556 WHIRLPOOL 08b37573b63f812ea62c4ba323f05f510a9656e74f780117bd711bcc78e7fc7b5bef009212e7ec98f0ed153cc3786ece4d75d565845c0bc5eaba59afa1b037d8 +DIST fio-2.1.9.tar.bz2 429122 SHA256 4ae877939a1a1460ad4d93f7891a15bad8ca7295f441204b12c723758a0d4493 SHA512 91913941c0d83705c156eef550eb87b388368804ee722c8c99ea638481ee657960e333c58b54e720034e92c2c34e9a8bb901336399a209a87f5eaa1ad1dfde53 WHIRLPOOL 6f44cbfe601f436b1ed0173e1dfbcf3b342f1a191c947392f0167a2dba9c4806fa422ffaedf9475f83b49fab8832aa1076ba91d27a9f2bdbcae126fa4d708824 +DIST fio-2.2.4.tar.bz2 467312 SHA256 9e1c77216457d9e21e418a55fa28bc1f98c283723fe9dcccff6138e3fb25285b SHA512 91fa0d8f9dd8d950dd26ef5c778414acddd9d6deeb84caeecdfef08df7e00c7972566a76bd242b0d5aea33a7c588aa05cf2fdcd79ef5a475277a2139d1f111a1 WHIRLPOOL 4588601d5f44c1836f97cc223bf08cce3f29f5ea3421880c00a16dcd9e3cffd741bbdd2029518712f8808548469d7f44f1b0348189643419bfd2104eab980536 +DIST fio-2.2.9.tar.bz2 492404 SHA256 c881d9cf15500bd4436970d0467c356c5c021417131587931ba78845e965bf56 SHA512 e0cd26bb8a760ef5e40ddb73246671c1988f0c0886bd24fa510fcab93fe64d8853f120355f55fa109168c7fae0b081f63278f2233644f5ed20da4e4c3cb3f3fc WHIRLPOOL 4f5ada7f1140c7229fc3173fa0582a4ae7401121768d8dec828dcd42c1c22ec828e9c000c482b155ead4fd75ee15c4d7678fc7c6d18c8fbb9c749e83f87a4881 diff --git a/sys-block/fio/files/fio-2.0.14-pic-clobber-fix.patch b/sys-block/fio/files/fio-2.0.14-pic-clobber-fix.patch new file mode 100644 index 000000000000..fa35e27c754e --- /dev/null +++ b/sys-block/fio/files/fio-2.0.14-pic-clobber-fix.patch @@ -0,0 +1,29 @@ +diff -Nuar fio-2.0.14.orig/arch/arch-x86-common.h fio-2.0.14/arch/arch-x86-common.h +--- fio-2.0.14.orig/arch/arch-x86-common.h 2013-02-21 18:12:32.000000000 +0000 ++++ fio-2.0.14/arch/arch-x86-common.h 2013-03-27 01:48:04.000000000 +0000 +@@ -6,10 +6,24 @@ + static inline void do_cpuid(unsigned int *eax, unsigned int *ebx, + unsigned int *ecx, unsigned int *edx) + { ++#ifdef __PIC__ ++ /* 32-bit Hardened GCC (PIC) uses register EBX, so it must be preserved ++ * Fix ported from Gentoo's x86info-1.24-pic patch ++ * http://tuxion.com/2010/07/02/clobber-registers.html */ ++ asm volatile( ++ "movl %%ebx,%%edi\n" ++ "cpuid\n" ++ "movl %%ebx,%1\n" ++ "movl %%edi,%%ebx\n" ++ : "=a" (*eax), "=m" (*ebx), "=c" (*ecx), "=d" (*edx) ++ : "0" (*eax), "2" (*ecx) ++ : "memory", "%edi"); ++#else + asm volatile("cpuid" + : "=a" (*eax), "=b" (*ebx), "=c" (*ecx), "=d" (*edx) + : "0" (*eax), "2" (*ecx) + : "memory"); ++#endif + } + + static inline void cpuid(unsigned int op, + diff --git a/sys-block/fio/files/fio-2.1.10-json.patch b/sys-block/fio/files/fio-2.1.10-json.patch new file mode 100644 index 000000000000..526be9b76228 --- /dev/null +++ b/sys-block/fio/files/fio-2.1.10-json.patch @@ -0,0 +1,32 @@ +From a606a802173272002e37be6475802be8c37481d6 Mon Sep 17 00:00:00 2001 +From: Puthikorn Voravootivat +Date: Tue, 24 Jun 2014 15:59:53 -0700 +Subject: [PATCH] Cast input argument for json_object_add_value_int to long + long + +The latency related (and some other) variables type is uint32_t +but the JSON integer type is long long. So we need to cast +the numbers to long long type to make JSON output correctly. + +Signed-off-by: Puthikorn Voravootivat +Signed-off-by: Jens Axboe +--- + json.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/json.h b/json.h +index 081afd6..962c11c 100644 +--- a/json.h ++++ b/json.h +@@ -52,7 +52,7 @@ void json_free_object(struct json_object *obj); + + int json_object_add_value_type(struct json_object *obj, const char *name, int type, ...); + #define json_object_add_value_int(obj, name, val) \ +- json_object_add_value_type((obj), name, JSON_TYPE_INTEGER, (val)) ++ json_object_add_value_type((obj), name, JSON_TYPE_INTEGER, (long long) (val)) + #define json_object_add_value_float(obj, name, val) \ + json_object_add_value_type((obj), name, JSON_TYPE_FLOAT, (val)) + #define json_object_add_value_string(obj, name, val) \ +-- +2.0.0 + diff --git a/sys-block/fio/files/fio-2.2.9-atomic-sync.patch b/sys-block/fio/files/fio-2.2.9-atomic-sync.patch new file mode 100644 index 000000000000..a8b32022e44b --- /dev/null +++ b/sys-block/fio/files/fio-2.2.9-atomic-sync.patch @@ -0,0 +1,140 @@ +fix from upstream + +From 2a2743361cf643b9dd2ba3e491da62e7cb83a101 Mon Sep 17 00:00:00 2001 +From: Jens Axboe +Date: Mon, 29 Jun 2015 09:34:39 -0600 +Subject: [PATCH] workqueue: make it work on platforms without + __sync_fetch_and_add() + +Signed-off-by: Jens Axboe +--- + configure | 22 ++++++++++++++++++++++ + workqueue.c | 22 ++++++++++++++++++++++ + workqueue.h | 1 + + 3 files changed, 45 insertions(+) + +diff --git a/configure b/configure +index e459d63..e5cf34d 100755 +--- a/configure ++++ b/configure +@@ -271,6 +271,7 @@ CYGWIN*) + output_sym "CONFIG_TCP_NODELAY" + output_sym "CONFIG_TLS_THREAD" + output_sym "CONFIG_IPV6" ++ output_sym "CONFIG_SFA" + echo "CC=$CC" >> $config_host_mak + echo "BUILD_CFLAGS=$CFLAGS -include config-host.h -D_GNU_SOURCE" >> $config_host_mak + exit 0 +@@ -1492,6 +1493,24 @@ if compile_prog "" "" "getmntinfo"; then + fi + echo "getmntinfo $getmntinfo" + ++########################################## ++# Check whether we have __sync_fetch_and_add() ++sfa=="no" ++cat > $TMPC << EOF ++#include ++#include ++#include ++int main(int argc, char **argv) ++{ ++ uint64_t dst = 1, src = 3; ++ __sync_fetch_and_add(&dst, src); ++} ++EOF ++if compile_prog "" "" "__sync_fetch_and_add"; then ++ sfa="yes" ++fi ++echo "__sync_fetch_and_add $sfa" ++ + ############################################################################# + + if test "$wordsize" = "64" ; then +@@ -1671,6 +1690,9 @@ fi + if test "$getmntinfo" = "yes" ; then + output_sym "CONFIG_GETMNTINFO" + fi ++if test "$sfa" = "yes" ; then ++ output_sym "CONFIG_SFA" ++fi + + if test "$zlib" = "no" ; then + echo "Consider installing zlib-dev (zlib-devel), some fio features depend on it." +diff --git a/workqueue.c b/workqueue.c +index b9a967f..8f6963f 100644 +--- a/workqueue.c ++++ b/workqueue.c +@@ -197,6 +197,7 @@ err: + return 1; + } + ++#ifdef CONFIG_SFA + static void sum_val(uint64_t *dst, uint64_t *src) + { + if (*src) { +@@ -204,15 +205,34 @@ static void sum_val(uint64_t *dst, uint64_t *src) + *src = 0; + } + } ++#else ++static void sum_val(uint64_t *dst, uint64_t *src) ++{ ++ if (*src) { ++ *dst += *src; ++ *src = 0; ++ } ++} ++#endif + + static void sum_ddir(struct thread_data *dst, struct thread_data *src, + enum fio_ddir ddir) + { ++#ifndef CONFIG_SFA ++ pthread_mutex_lock(&dst->io_wq.stat_lock); ++ pthread_mutex_lock(&src->io_wq.stat_lock); ++#endif ++ + sum_val(&dst->io_bytes[ddir], &src->io_bytes[ddir]); + sum_val(&dst->io_blocks[ddir], &src->io_blocks[ddir]); + sum_val(&dst->this_io_blocks[ddir], &src->this_io_blocks[ddir]); + sum_val(&dst->this_io_bytes[ddir], &src->this_io_bytes[ddir]); + sum_val(&dst->bytes_done[ddir], &src->bytes_done[ddir]); ++ ++#ifndef CONFIG_SFA ++ pthread_mutex_unlock(&src->io_wq.stat_lock); ++ pthread_mutex_unlock(&dst->io_wq.stat_lock); ++#endif + } + + static void update_accounting(struct submit_worker *sw) +@@ -355,6 +375,7 @@ void workqueue_exit(struct workqueue *wq) + free(wq->workers); + pthread_mutex_destroy(&wq->flush_lock); + pthread_cond_destroy(&wq->flush_cond); ++ pthread_mutex_destroy(&wq->stat_lock); + } + + static int start_worker(struct workqueue *wq, unsigned int index) +@@ -393,6 +414,7 @@ int workqueue_init(struct thread_data *td, struct workqueue *wq, + wq->next_free_worker = 0; + pthread_cond_init(&wq->flush_cond, NULL); + pthread_mutex_init(&wq->flush_lock, NULL); ++ pthread_mutex_init(&wq->stat_lock, NULL); + + wq->workers = calloc(wq->max_workers, sizeof(struct submit_worker)); + +diff --git a/workqueue.h b/workqueue.h +index 5d47a5e..4e92449 100644 +--- a/workqueue.h ++++ b/workqueue.h +@@ -17,6 +17,7 @@ struct workqueue { + + pthread_cond_t flush_cond; + pthread_mutex_t flush_lock; ++ pthread_mutex_t stat_lock; + volatile int wake_idle; + }; + +-- +2.4.4 + diff --git a/sys-block/fio/fio-1.17.2.ebuild b/sys-block/fio/fio-1.17.2.ebuild new file mode 100644 index 000000000000..1c4de44784e2 --- /dev/null +++ b/sys-block/fio/fio-1.17.2.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit eutils toolchain-funcs flag-o-matic + +DESCRIPTION="Jens Axboe's Flexible IO tester" +HOMEPAGE="http://brick.kernel.dk/snaps/" +SRC_URI="http://brick.kernel.dk/snaps/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ~ia64 ppc ppc64 x86" +IUSE="" + +DEPEND="dev-libs/libaio" +RDEPEND="${DEPEND}" + +src_compile() { + append-flags -W + emake CC="$(tc-getCC)" OPTFLAGS="${CFLAGS}" || die "emake failed" +} + +src_install() { + emake install DESTDIR="${D}" prefix="/usr" || die "emake install failed" + dodoc README REPORTING-BUGS HOWTO + docinto examples + dodoc examples/* +} diff --git a/sys-block/fio/fio-1.99.10.ebuild b/sys-block/fio/fio-1.99.10.ebuild new file mode 100644 index 000000000000..03ebe008a57b --- /dev/null +++ b/sys-block/fio/fio-1.99.10.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="2" + +inherit eutils toolchain-funcs flag-o-matic + +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 ~ia64 ~ppc ~ppc64 ~x86" +IUSE="" + +DEPEND="dev-libs/libaio" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + sed -i \ + -e '/filter /s:-o:$(LDFLAGS) -o:' \ + -e '/: depend$/d' \ + Makefile || die +} + +src_compile() { + append-flags -W + emake CC="$(tc-getCC)" OPTFLAGS="${CFLAGS}" || die "emake failed" +} + +src_install() { + emake install DESTDIR="${D}" prefix="/usr" mandir="/usr/share/man" || die "emake install failed" + dodoc README REPORTING-BUGS HOWTO + docinto examples + dodoc examples/* + doman fio.1 +} diff --git a/sys-block/fio/fio-2.0.14-r1.ebuild b/sys-block/fio/fio-2.0.14-r1.ebuild new file mode 100644 index 000000000000..47911275f3ad --- /dev/null +++ b/sys-block/fio/fio-2.0.14-r1.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +inherit toolchain-funcs flag-o-matic eutils + +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 ia64 ~ppc ppc64 x86" +IUSE="" + +DEPEND="dev-libs/libaio" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + sed -i \ + -e '/filter /s:-o:$(LDFLAGS) -o:' \ + -e '/: depend$/d' \ + -e '/^DEBUGFLAGS/s, -D_FORTIFY_SOURCE=2,,g' \ + Makefile || die + epatch "$FILESDIR"/fio-2.0.14-pic-clobber-fix.patch +} + +src_configure() { + chmod g-w "${T}" + : # not a real configure script + ./configure --extra-cflags="${CFLAGS}" --cc="$(tc-getCC)" +} + +src_compile() { + append-flags -W + emake V=1 +} + +src_install() { + emake install DESTDIR="${D}" prefix="/usr" mandir="/usr/share/man" + dodoc README REPORTING-BUGS HOWTO + docinto examples + dodoc examples/* + doman fio.1 +} diff --git a/sys-block/fio/fio-2.0.15.ebuild b/sys-block/fio/fio-2.0.15.ebuild new file mode 100644 index 000000000000..628d3780dcdd --- /dev/null +++ b/sys-block/fio/fio-2.0.15.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +inherit toolchain-funcs flag-o-matic eutils + +MY_PV="${PV/_rc/-rc}" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="Write job files matching the I/O load one wants to simulate" +HOMEPAGE="http://brick.kernel.dk/snaps/" +SRC_URI="http://brick.kernel.dk/snaps/${MY_P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~x86" +IUSE="" + +DEPEND="dev-libs/libaio" +RDEPEND="${DEPEND}" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + sed -i \ + -e '/filter /s:-o:$(LDFLAGS) -o:' \ + -e '/: depend$/d' \ + -e '/^DEBUGFLAGS/s, -D_FORTIFY_SOURCE=2,,g' \ + Makefile || die + epatch "$FILESDIR"/fio-2.0.14-pic-clobber-fix.patch +} + +src_configure() { + chmod g-w "${T}" + : # not a real configure script + ./configure --extra-cflags="${CFLAGS}" --cc="$(tc-getCC)" +} + +src_compile() { + append-flags -W + emake V=1 +} + +src_install() { + emake install DESTDIR="${D}" prefix="/usr" mandir="/usr/share/man" + dodoc README REPORTING-BUGS HOWTO + docinto examples + dodoc examples/* + doman fio.1 +} diff --git a/sys-block/fio/fio-2.1.9.ebuild b/sys-block/fio/fio-2.1.9.ebuild new file mode 100644 index 000000000000..07dc69d0fe14 --- /dev/null +++ b/sys-block/fio/fio-2.1.9.ebuild @@ -0,0 +1,81 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +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 ~ia64 ~ppc ~ppc64 ~x86" +IUSE="aio gnuplot gtk numa zlib" + +DEPEND="aio? ( dev-libs/libaio ) + gtk? ( + dev-libs/glib:2 + x11-libs/gtk+:2 + ) + numa? ( sys-process/numactl ) + zlib? ( sys-libs/zlib )" +RDEPEND="${DEPEND} + gnuplot? ( + sci-visualization/gnuplot + ${PYTHON_DEPS} + )" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + 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 + ./configure \ + --extra-cflags="${CFLAGS} ${CPPFLAGS}" \ + --cc="$(tc-getCC)" \ + $(usex gtk '--enable-gfio' '') \ + $(usex numa '' '--disable-numa') \ + || 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.2.4-r1.ebuild b/sys-block/fio/fio-2.2.4-r1.ebuild new file mode 100644 index 000000000000..7294045a024e --- /dev/null +++ b/sys-block/fio/fio-2.2.4-r1.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +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 zlib" + +DEPEND="aio? ( dev-libs/libaio ) + glusterfs? ( !arm? ( sys-cluster/glusterfs ) ) + gtk? ( + dev-libs/glib:2 + x11-libs/gtk+:2 + ) + numa? ( sys-process/numactl ) + rbd? ( sys-cluster/ceph ) + zlib? ( sys-libs/zlib )" +RDEPEND="${DEPEND} + gnuplot? ( + sci-visualization/gnuplot + ${PYTHON_DEPS} + )" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + 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 + ./configure \ + --extra-cflags="${CFLAGS} ${CPPFLAGS}" \ + --cc="$(tc-getCC)" \ + $(usex glusterfs '' '--disable-gfapi') \ + $(usex gtk '--enable-gfio' '') \ + $(usex numa '' '--disable-numa') \ + $(usex rbd '' '--disable-rbd') \ + || 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.2.9.ebuild b/sys-block/fio/fio-2.2.9.ebuild new file mode 100644 index 000000000000..8e1c41a0bae8 --- /dev/null +++ b/sys-block/fio/fio-2.2.9.ebuild @@ -0,0 +1,86 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +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 zlib" + +DEPEND="aio? ( dev-libs/libaio ) + glusterfs? ( !arm? ( sys-cluster/glusterfs ) ) + gtk? ( + dev-libs/glib:2 + x11-libs/gtk+:2 + ) + numa? ( sys-process/numactl ) + rbd? ( sys-cluster/ceph ) + zlib? ( sys-libs/zlib )" +RDEPEND="${DEPEND} + gnuplot? ( + sci-visualization/gnuplot + ${PYTHON_DEPS} + )" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + sed -i '/^DEBUGFLAGS/s: -D_FORTIFY_SOURCE=2::g' Makefile || die + epatch "${FILESDIR}"/${P}-atomic-sync.patch + 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 + ./configure \ + --extra-cflags="${CFLAGS} ${CPPFLAGS}" \ + --cc="$(tc-getCC)" \ + $(usex glusterfs '' '--disable-gfapi') \ + $(usex gtk '--enable-gfio' '') \ + $(usex numa '' '--disable-numa') \ + $(usex rbd '' '--disable-rbd') \ + || 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/metadata.xml b/sys-block/fio/metadata.xml new file mode 100644 index 000000000000..76526f751f3b --- /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-infiniband/librdmacm + + -- cgit v1.2.3-65-gdbad