summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Savchenko <bircoph@gentoo.org>2016-03-20 14:07:17 +0300
committerAndrew Savchenko <bircoph@gentoo.org>2016-03-20 14:07:17 +0300
commit24d9ed405b8fe2173b1c483bb01615e7ce61c50a (patch)
treed59b2d0f5fa361bdafca7db431919dfcd19546cc
parentmedia-gfx/hugin: version bump (diff)
parentapp-benchmarks/filebench: drop unused patch file (diff)
downloadgentoo-24d9ed40.tar.gz
gentoo-24d9ed40.tar.bz2
gentoo-24d9ed40.zip
Merge remote-tracking branch 'remotes/github/pr/975'
Merge app-benchmarks/filebench fixes by Gokturk Yuksek.
-rw-r--r--app-benchmarks/filebench/filebench-1.4.9.1-r1.ebuild35
-rw-r--r--app-benchmarks/filebench/files/filebench-fix-automagic-libtecla-dependency.patch22
-rw-r--r--app-benchmarks/filebench/files/linux-port.patch369
-rw-r--r--app-benchmarks/filebench/metadata.xml6
4 files changed, 63 insertions, 369 deletions
diff --git a/app-benchmarks/filebench/filebench-1.4.9.1-r1.ebuild b/app-benchmarks/filebench/filebench-1.4.9.1-r1.ebuild
new file mode 100644
index 000000000000..f3ba307cd34a
--- /dev/null
+++ b/app-benchmarks/filebench/filebench-1.4.9.1-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit autotools
+
+DESCRIPTION="Filebench - A Model Based File System Workload Generator"
+HOMEPAGE="http://sourceforge.net/projects/filebench/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="CDDL"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="auto-completion"
+
+RDEPEND="
+ auto-completion? ( dev-libs/libtecla )
+"
+DEPEND="${RDEPEND}
+ sys-devel/flex
+ sys-devel/bison
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-fix-automagic-libtecla-dependency.patch )
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf $(use_with auto-completion libtecla)
+}
diff --git a/app-benchmarks/filebench/files/filebench-fix-automagic-libtecla-dependency.patch b/app-benchmarks/filebench/files/filebench-fix-automagic-libtecla-dependency.patch
new file mode 100644
index 000000000000..8d24a62a89d6
--- /dev/null
+++ b/app-benchmarks/filebench/files/filebench-fix-automagic-libtecla-dependency.patch
@@ -0,0 +1,22 @@
+From: Göktürk Yüksek <gokturk@binghamton.edu>
+Subject: [PATCH] Fix automagic dependency on libtecla
+
+Replace the unconditional AC_CHECK_LIB logic with AC_ARG_WITH to
+eliminate the automagic dependency on libtecla.
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -164,8 +164,11 @@
+ AC_CHECK_LIB([kstat], [kstat_open])
+ # Use libtecla for autocompletion if it is available. If it
+ # is, then conditionally compile auto_comp.c (see Makefile.am)
+-AC_CHECK_LIB([tecla], [cpl_add_completion])
+-AM_CONDITIONAL(AUTOCOMP_LIBTECLA, test "$ac_cv_lib_tecla_cpl_add_completion" = yes)
++AC_ARG_WITH([libtecla], AS_HELP_STRING([--with-libtecla], [Build with libtecla for autocompletion support (default: test)]))
++AS_IF([test "x$with_libtecla" != "xno"], [
++ AC_CHECK_LIB([tecla], [cpl_add_completion])
++])
++AM_CONDITIONAL([AUTOCOMP_LIBTECLA], [test "x$ac_cv_lib_tecla_cpl_add_completion" = "xyes"])
+ # Check that librt is installed and supports async IO. First line
+ # allows to add librt to the linkers path, second one checks
+ # if aio_wait() is in it, third one checks if aio_waitn() is there (usually
diff --git a/app-benchmarks/filebench/files/linux-port.patch b/app-benchmarks/filebench/files/linux-port.patch
deleted file mode 100644
index c0608128d558..000000000000
--- a/app-benchmarks/filebench/files/linux-port.patch
+++ /dev/null
@@ -1,369 +0,0 @@
-Index: filebench-1.2.4/filebench/flowop_library.c
-===================================================================
---- filebench-1.2.4.orig/filebench/flowop_library.c
-+++ filebench-1.2.4/filebench/flowop_library.c
-@@ -789,6 +789,7 @@ flowoplib_aiowait(threadflow_t *threadfl
- for (ncompleted = 0, inprogress = 0,
- aio = flowop->fo_thread->tf_aiolist;
- ncompleted < todo, aio != NULL; aio = aio->al_next) {
-+ int result;
-
- result = aio_error64(&aio->al_aiocb);
-
-Index: filebench-1.2.4/filebench/fileset.c
-===================================================================
---- filebench-1.2.4.orig/filebench/fileset.c
-+++ filebench-1.2.4/filebench/fileset.c
-@@ -32,8 +32,9 @@
- #include <math.h>
- #include <libgen.h>
- #include <sys/mman.h>
--#include "fileset.h"
-+
- #include "filebench.h"
-+#include "fileset.h"
- #include "gamma_dist.h"
-
- /*
-@@ -631,9 +632,9 @@ fileset_create(fileset_t *fileset)
- /* we are re-using */
- reusing = 1;
- filebench_log(LOG_VERBOSE,
-- "Re-using %s %s on %s file system.",
-+ "Re-using %s %s.",
- fileset_entity_name(fileset),
-- fileset_name, sb.st_fstype);
-+ fileset_name);
- }
- }
- (void) mkdir(path, 0755);
-Index: filebench-1.2.4/filebench/filebench.h
-===================================================================
---- filebench-1.2.4.orig/filebench/filebench.h
-+++ filebench-1.2.4/filebench/filebench.h
-@@ -32,6 +32,15 @@
-
- #include <stdio.h>
- #include <string.h>
-+#include <errno.h>
-+
-+#ifndef HAVE_BOOLEAN_T
-+typedef enum { B_FALSE, B_TRUE } boolean_t;
-+#endif
-+
-+#ifndef HAVE_U_LONGLONG_T
-+typedef unsigned long long u_longlong_t;
-+#endif
-
- #include "vars.h"
- #include "misc.h"
-Index: filebench-1.2.4/filebench/eventgen.c
-===================================================================
---- filebench-1.2.4.orig/filebench/eventgen.c
-+++ filebench-1.2.4/filebench/eventgen.c
-@@ -40,9 +40,10 @@
- */
-
- #include <sys/time.h>
-+
-+#include "filebench.h"
- #include "vars.h"
- #include "eventgen.h"
--#include "filebench.h"
- #include "flowop.h"
- #include "ipc.h"
-
-Index: filebench-1.2.4/filebench/procflow.c
-===================================================================
---- filebench-1.2.4.orig/filebench/procflow.c
-+++ filebench-1.2.4/filebench/procflow.c
-@@ -30,8 +30,8 @@
- #include <sys/stat.h>
- #include <sys/wait.h>
-
--#include "procflow.h"
- #include "filebench.h"
-+#include "procflow.h"
- #include "flowop.h"
- #include "ipc.h"
-
-@@ -162,7 +162,7 @@ procflow_createproc(procflow_t *procflow
- }
-
- #else
-- if (execl(execname, procname, "-a", procname, "-i",
-+ if (execlp(execname, procname, "-a", procname, "-i",
- instance, "-s", shmaddr, "-m", shmpath, NULL) < 0) {
- filebench_log(LOG_ERROR,
- "procflow exec proc failed: %s",
-Index: filebench-1.2.4/filebench/threadflow.c
-===================================================================
---- filebench-1.2.4.orig/filebench/threadflow.c
-+++ filebench-1.2.4/filebench/threadflow.c
-@@ -31,8 +31,9 @@
- #include <sys/lwp.h>
- #endif
- #include <signal.h>
--#include "threadflow.h"
-+
- #include "filebench.h"
-+#include "threadflow.h"
- #include "flowop.h"
- #include "ipc.h"
-
-Index: filebench-1.2.4/filebench/utils.c
-===================================================================
---- filebench-1.2.4.orig/filebench/utils.c
-+++ filebench-1.2.4/filebench/utils.c
-@@ -34,6 +34,8 @@
- #ifdef HAVE_STDINT_H
- #include <stdint.h>
- #endif
-+
-+#include "filebench.h"
- #include "utils.h"
- #include "parsertypes.h"
-
-Index: filebench-1.2.4/filebench/vars.c
-===================================================================
---- filebench-1.2.4.orig/filebench/vars.c
-+++ filebench-1.2.4/filebench/vars.c
-@@ -30,12 +30,12 @@
- #include <string.h>
- #include <errno.h>
-
-+#include "filebench.h"
- #include "vars.h"
- #include "misc.h"
- #include "utils.h"
- #include "stats.h"
- #include "eventgen.h"
--#include "filebench.h"
- #include "fb_random.h"
-
- static var_t *var_find_dynamic(char *name);
-Index: filebench-1.2.4/filebench/parser_gram.y
-===================================================================
---- filebench-1.2.4.orig/filebench/parser_gram.y
-+++ filebench-1.2.4/filebench/parser_gram.y
-@@ -46,8 +46,9 @@
- #ifdef HAVE_LIBTECLA
- #include <libtecla.h>
- #endif
--#include "parsertypes.h"
-+
- #include "filebench.h"
-+#include "parsertypes.h"
- #include "utils.h"
- #include "stats.h"
- #include "vars.h"
-@@ -2642,7 +2643,7 @@ parser_help(cmd_t *cmd)
- } else {
- filebench_log(LOG_INFO,
- "load <personality> (ls "
-- "/usr/benchmarks/filebench/workloads for list)");
-+ FILEBENCHDIR "/workloads for list)");
- }
- }
-
-Index: filebench-1.2.4/filebench/parser_lex.l
-===================================================================
---- filebench-1.2.4.orig/filebench/parser_lex.l
-+++ filebench-1.2.4/filebench/parser_lex.l
-@@ -38,9 +38,10 @@
- #ifdef HAVE_STDINT_H
- #include <stdint.h>
- #endif
-+
-+#include "filebench.h"
- #include "parsertypes.h"
- #include "utils.h"
--#include "filebench.h"
-
- #include "parser_gram.h"
-
-Index: filebench-1.2.4/filebench/Makefile.am
-===================================================================
---- filebench-1.2.4.orig/filebench/Makefile.am
-+++ filebench-1.2.4/filebench/Makefile.am
-@@ -7,19 +7,19 @@
- #
-
- bin_PROGRAMS = go_filebench
--filebench_SOURCES = gamma_dist.c misc.c procflow.c threadflow.c \
-+go_filebench_SOURCES = gamma_dist.c misc.c procflow.c threadflow.c \
- utils.c flowop.c flowop_library.c ipc.c \
- vars.c stats.c eventgen.c fileset.c fb_random.c \
- parser_gram.y parser_lex.l
--filebenchdir = $(datadir)/filebench
--INCLUDES = -I../intl -DFILEBENCHDIR=\"$(prefix)/filebench\"
-+INCLUDES = -I../intl -DFILEBENCHDIR=\"$(FILEBENCHDIR)\"
-
- MV=@MV@
- LEX=@LEX@
- YACC=@YACC@
--LFLAGS = @LFLAGS@
--YFLAGS = @YFLAGS@
-+AM_LFLAGS = @LFLAGS@
-+AM_YFLAGS = @YFLAGS@
- DEFS = -D_REENTRANT @DEFINES@
-+LIBS = @LDLIBS@
- BUILD = @BUILD@
-
- parser_lex.c: parser_lex.l parser_gram.h Makefile
-Index: filebench-1.2.4/configure.in
-===================================================================
---- filebench-1.2.4.orig/configure.in
-+++ filebench-1.2.4/configure.in
-@@ -73,8 +73,8 @@ case "$host_os$host_cpu" in
- YFLAGS="-d"
- AC_DEFINE(HAVE_OFF64_T, 1,
- [ Define if we can use 64 bit files ])
-- FILEBENCHDIR=${prefix}/filebench
-- FILEBENCHBIN=${prefix}/bin
-+ FILEBENCHDIR=${datadir}/filebench
-+ FILEBENCHBIN=${bindir}
- ;;
- esac
-
-@@ -324,6 +324,6 @@ AC_SUBST(SRCDIR)
- AC_SUBST(FILEBENCHDIR)
- AC_SUBST(FILEBENCHBIN)
-
--AC_CONFIG_FILES([Makefile filebench/Makefile fastsu/Makefile workloads/Makefile workloads/build/Makefile scripts/Makefile benchpoint/Makefile benchpoint/bin/Makefile benchpoint/config/Makefile benchpoint/functions/Makefile benchpoint/profiles/Makefile])
-+AC_CONFIG_FILES([Makefile filebench/Makefile fastsu/Makefile workloads/Makefile workloads/build/Makefile scripts/Makefile benchpoint/Makefile benchpoint/bin/Makefile benchpoint/config/Makefile benchpoint/functions/Makefile benchpoint/profiles/Makefile bin/Makefile])
-
- AC_OUTPUT
-Index: filebench-1.2.4/fastsu/fastsu.c
-===================================================================
---- filebench-1.2.4.orig/fastsu/fastsu.c
-+++ filebench-1.2.4/fastsu/fastsu.c
-@@ -1,23 +1,26 @@
- #include <unistd.h>
- #include <stdio.h>
- #include <stdlib.h>
--#include <strings.h>
-+#include <string.h>
-
--void
-+int
- main(int argc, char *argv[], char *envp[])
- {
- char *shell;
- char cmd[2048];
-
-- *cmd = NULL;
-+ *cmd = '\0';
- shell=getenv("SHELL");
-- *(argv++);
-+ argv++;
- argc--;
- while(argc-- != 0) {
- (void) strcat(cmd,*argv);
- (void) strcat(cmd," ");
-- *(argv++);
-+ argv++;
- }
-
- execlp(shell, shell, "-c", cmd, (char *) 0);
-+
-+ /* control should not reach here */
-+ return -1;
- }
-Index: filebench-1.2.4/benchpoint/config/Makefile.am
-===================================================================
---- filebench-1.2.4.orig/benchpoint/config/Makefile.am
-+++ filebench-1.2.4/benchpoint/config/Makefile.am
-@@ -6,8 +6,7 @@
- # See the file LICENSING in this distribution for details.
- #
-
--filebenchdir = $(prefix)/filebench
--configdir = $(filebenchdir)/config
-+configdir = ${FILEBENCHDIR}/config
-
- config_DATA = *.conf
-
-Index: filebench-1.2.4/benchpoint/profiles/Makefile.am
-===================================================================
---- filebench-1.2.4.orig/benchpoint/profiles/Makefile.am
-+++ filebench-1.2.4/benchpoint/profiles/Makefile.am
-@@ -6,8 +6,7 @@
- # See the file LICENSING in this distribution for details.
- #
-
--filebenchdir = $(prefix)/filebench
--configdir = $(filebenchdir)/config
-+configdir = ${FILEBENCHDIR}/config
-
- config_DATA = *.prof
-
-Index: filebench-1.2.4/bin/Makefile.am
-===================================================================
---- filebench-1.2.4.orig/bin/Makefile.am
-+++ filebench-1.2.4/bin/Makefile.am
-@@ -6,8 +6,5 @@
- # See the file LICENSING in this distribution for details.
- #
-
--filebenchdir = $(prefix)/filebench
--scriptsdir = $(filebenchdir)/bin
--
--scripts_SCRIPTS = filebench
-+bin_SCRIPTS = filebench
-
-Index: filebench-1.2.4/benchpoint/functions/Makefile.am
-===================================================================
---- filebench-1.2.4.orig/benchpoint/functions/Makefile.am
-+++ filebench-1.2.4/benchpoint/functions/Makefile.am
-@@ -6,8 +6,7 @@
- # See the file LICENSING in this distribution for details.
- #
-
--filebenchdir = $(prefix)/filebench
--configdir = $(filebenchdir)/config
-+configdir = ${FILEBENCHDIR}/config
-
- config_SCRIPTS = *.func
-
-Index: filebench-1.2.4/scripts/Makefile.am
-===================================================================
---- filebench-1.2.4.orig/scripts/Makefile.am
-+++ filebench-1.2.4/scripts/Makefile.am
-@@ -6,8 +6,7 @@
- # See the file LICENSING in this distribution for details.
- #
-
--filebenchdir = $(prefix)/filebench
--scriptsdir = $(filebenchdir)/scripts
-+scriptsdir = ${FILEBENCHDIR}/scripts
-
- scripts_SCRIPTS = filebench_compare filebench_summary filebench_plot fs_flush
-
-Index: filebench-1.2.4/workloads/Makefile.am
-===================================================================
---- filebench-1.2.4.orig/workloads/Makefile.am
-+++ filebench-1.2.4/workloads/Makefile.am
-@@ -6,8 +6,6 @@
- # See the file LICENSING in this distribution for details.
- #
-
--filebenchdir = $(datadir)/filebench
--
- SUBDIRS = build
-
- pkg: filebench
-Index: filebench-1.2.4/workloads/build/Makefile.am
-===================================================================
---- filebench-1.2.4.orig/workloads/build/Makefile.am
-+++ filebench-1.2.4/workloads/build/Makefile.am
-@@ -6,8 +6,7 @@
- # See the file LICENSING in this distribution for details.
- #
-
--filebenchdir = $(prefix)/filebench
--workloadsdir = $(filebenchdir)/workloads
-+workloadsdir = ${FILEBENCHDIR}/workloads
-
- workloads_DATA = BUILD \
- bringover.f \
diff --git a/app-benchmarks/filebench/metadata.xml b/app-benchmarks/filebench/metadata.xml
index 5d5529c3de77..3b9298e7df62 100644
--- a/app-benchmarks/filebench/metadata.xml
+++ b/app-benchmarks/filebench/metadata.xml
@@ -16,6 +16,12 @@
<name>Proxy Maintainers</name>
<description>please CC on bugs</description>
</maintainer>
+ <use>
+ <flag name="auto-completion">
+ Enable command-line autocompletion using
+ <pkg>dev-libs/libtecla</pkg>.
+ </flag>
+ </use>
<upstream>
<remote-id type="sourceforge">filebench</remote-id>
</upstream>