commit:     ef484b6b1928a79a93f8ff47547cb61d07d3e561
Author:     Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr>
AuthorDate: Sun Aug 31 02:27:17 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Sep  2 11:46:39 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ef484b6b

app-benchmarks/filebench: add 1.5.0_alpha3_p20200220

update HOMEPAGE and SRC_URI with github repo

add a snapshot after 1.5.0_alpha3
auto-completion/libtecla support removed in 1.5.0_alpha1
bug #729104 fixed in 1.5.0_alpha1
remove .la files

patches :
fix gcc-15
fix implicit function in configure
fix an issue with randomization

Closes: https://bugs.gentoo.org/729104
Closes: https://bugs.gentoo.org/906004
Closes: https://bugs.gentoo.org/943905
Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr>
Part-of: https://github.com/gentoo/gentoo/pull/43620
Closes: https://github.com/gentoo/gentoo/pull/43620
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-benchmarks/filebench/Manifest                  |   1 +
 .../filebench-1.5.0_alpha3_p20200220.ebuild        |  40 ++
 .../filebench-1.5.0_alpha3_add_suppress_asr.patch  | 116 +++++
 .../files/filebench-1.5.0_alpha3_fix_gcc15.patch   | 496 +++++++++++++++++++++
 ...lebench-1.5.0_alpha3_fix_implicit_syscall.patch |  22 +
 app-benchmarks/filebench/metadata.xml              |   3 +-
 6 files changed, 677 insertions(+), 1 deletion(-)

diff --git a/app-benchmarks/filebench/Manifest 
b/app-benchmarks/filebench/Manifest
index 75f9248d994e..56c9031b0335 100644
--- a/app-benchmarks/filebench/Manifest
+++ b/app-benchmarks/filebench/Manifest
@@ -1 +1,2 @@
 DIST filebench-1.4.9.1.tar.gz 349535 BLAKE2B 
774eab935fba422064c9c6a5c233b99545b639b4319cb9658b6555d087f1af0f59c29de57a5fef94c2256199f1c328d2309641785d8573832629fb4a28b2e716
 SHA512 
a6400aba4266fcf98e46c4824796a594adc5d5e7f9605f6e1ab01973ce448e27948991e453b186947a8d89f8603a69a3ba955edf2a1abccd2935196af7b6f0d1
+DIST filebench-1.5.0_alpha3_p20200220.tar.gz 255950 BLAKE2B 
77df6388a982d045c27e4b14bd87371dd559c1b3e428e8a6934b3b6d4632831887440ae82c0e44c993b4870c9e198ead233779f8a7df5f02c2c2130eaa0f0e3f
 SHA512 
96878a3c665b9e31d08806f49bf2a513f00751b833088d9470a94cfbac013d8d3d8fc68574e58531c6ab4bffa7fde88f6ccf6009667d70a1d8d586eb884d1dd8

diff --git a/app-benchmarks/filebench/filebench-1.5.0_alpha3_p20200220.ebuild 
b/app-benchmarks/filebench/filebench-1.5.0_alpha3_p20200220.ebuild
new file mode 100644
index 000000000000..2b2e64339bbf
--- /dev/null
+++ b/app-benchmarks/filebench/filebench-1.5.0_alpha3_p20200220.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+COMMIT_HASH="22620e602cbbebad90c0bd041896ebccf70dbf5f"
+DESCRIPTION="Filebench - A Model Based File System Workload Generator"
+HOMEPAGE="https://github.com/filebench/filebench";
+SRC_URI="https://github.com/${PN}/${PN}/archive/${COMMIT_HASH}.tar.gz -> 
${P}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT_HASH}"
+
+LICENSE="CDDL"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+
+DEPEND="
+       app-alternatives/lex
+       app-alternatives/yacc
+"
+
+PATCHES=(
+       # https://github.com/filebench/filebench/pull/143
+       "${FILESDIR}"/${PN}-1.5.0_alpha3_add_suppress_asr.patch
+       # https://github.com/filebench/filebench/pull/160 #906004
+       "${FILESDIR}"/${PN}-1.5.0_alpha3_fix_implicit_syscall.patch
+       # selected commits from https://github.com/filebench/filebench/pull/116 
#943905
+       "${FILESDIR}"/${PN}-1.5.0_alpha3_fix_gcc15.patch
+)
+
+src_prepare() {
+       default
+       eautoreconf
+}
+
+src_install() {
+       default
+       find "${ED}" -name '*.la' -delete || die
+}

diff --git 
a/app-benchmarks/filebench/files/filebench-1.5.0_alpha3_add_suppress_asr.patch 
b/app-benchmarks/filebench/files/filebench-1.5.0_alpha3_add_suppress_asr.patch
new file mode 100644
index 000000000000..d32bee2831c7
--- /dev/null
+++ 
b/app-benchmarks/filebench/files/filebench-1.5.0_alpha3_add_suppress_asr.patch
@@ -0,0 +1,116 @@
+PR pending to fix an issue with randomization, see upstream #110
+https://github.com/filebench/filebench/pull/143.patch
+From 18c708a9771d9414fb3fa44bd916c05cdd43868c Mon Sep 17 00:00:00 2001
+From: Tony Mason <[email protected]>
+Date: Sat, 20 Jun 2020 20:39:23 +0000
+Subject: [PATCH] Add ASR suppression logic
+
+--- a/parser_gram.y
++++ b/parser_gram.y
+@@ -45,6 +45,7 @@
+ #include <fcntl.h>
+ #include <sys/mman.h>
+ #include <sys/wait.h>
++#include <syscall.h>
+ #include "parsertypes.h"
+ #include "filebench.h"
+ #include "utils.h"
+@@ -1569,7 +1570,6 @@ parser_abort(int arg)
+ static void
+ master_mode(struct fbparams *fbparams) {
+       int ret;
+-
+       printf("Filebench Version %s\n", FILEBENCH_VERSION);
+ 
+       yyin = fopen(fbparams->fscriptname, "r");
+@@ -1620,6 +1620,66 @@ init_common()
+       fb_set_rlimit();
+ }
+ 
++static void suppress_asr(char *const argv[], char * const envp[])
++{
++#if defined(SYS_personality)
++      unsigned index = 0;
++      size_t space = 0;
++      char **newenvp = (char **)malloc(space);
++      char *detect_string = "FILEBENCH_ASR_REINVOKED";
++      int current;
++      unsigned long persona = (unsigned long)~0;
++      const unsigned long asr_disabled = 0x0040000;
++
++      // Is this a reinvocation?
++      for (index = 0; envp[index]; index++) {
++              if (0 == strcmp(envp[index], detect_string)) {
++                      // Yes - no further checking.
++                      return;
++              }
++      }
++
++      // check if ASR is already disabled
++      current = (long) syscall(SYS_personality, persona);
++      if (-1 != current) {
++              persona = (unsigned long) current;
++              
++              if (asr_disabled == (persona & asr_disabled)) { // ASR disabled
++                      return;
++              }
++
++              persona |= 0x0040000;
++              errno = 0;
++              current = (long) syscall(SYS_personality, persona);
++
++              if (-1 == current) {
++                      // failed - give up
++                      fprintf(stderr, "ASR disable failed - good luck\n");
++                      return;
++              }
++
++              space = (index + 2) * sizeof(char *); // + 1 null entry + 1 new 
entry
++              if (NULL == newenvp) {
++                      fprintf(stderr, "Reinvocation after disable ASR malloc 
failed\n");
++                      return;
++              }
++
++              for (unsigned i = 0; i < index; i++) {
++                      newenvp[i] = envp[i];
++              }
++              newenvp[index] = detect_string;
++              newenvp[index+1] = NULL;
++
++              if (-1 != current) {
++                      if (0 > execvpe(argv[0], argv, newenvp)) {
++                              fprintf(stderr, "execvpe failed (errno %d - 
%s)\n", errno, strerror(errno));
++                      }
++              }
++      }
++#endif // SYS_personality
++
++}
++
+ /*
+  * Entry point for Filebench. Processes command line arguments. The -f option
+  * will read in a workload file (the full name and extension must must be
+@@ -1635,11 +1695,13 @@ init_common()
+  * supplied workload file, or enters interactive mode.
+  */
+ int
+-main(int argc, char *argv[])
++main(int argc, char *argv[], char *envp[])
+ {
+       struct fbparams fbparams;
+       int mode;
+ 
++      suppress_asr(argv, envp);
++
+       /* parse_options() exits if detects wrong usage */
+       mode = parse_options(argc, argv, &fbparams);
+ 
+@@ -1651,7 +1713,7 @@ main(int argc, char *argv[])
+ 
+       init_common();
+ 
+-      if (mode == FB_MODE_MASTER)
++      if (mode == FB_MODE_MASTER) 
+               master_mode(&fbparams);
+ 
+       if (mode == FB_MODE_WORKER)

diff --git 
a/app-benchmarks/filebench/files/filebench-1.5.0_alpha3_fix_gcc15.patch 
b/app-benchmarks/filebench/files/filebench-1.5.0_alpha3_fix_gcc15.patch
new file mode 100644
index 000000000000..4128f0e55e07
--- /dev/null
+++ b/app-benchmarks/filebench/files/filebench-1.5.0_alpha3_fix_gcc15.patch
@@ -0,0 +1,496 @@
+PR pending, selected commits to fix compilation with gcc15
+fix unprototyped functions :
+https://github.com/filebench/filebench/pull/116/commits/07194b64f7a9c7c473896934339775ab54f1da78.patch
+remove bool occurences / bug #943905 :
+https://github.com/filebench/filebench/pull/116/commits/64a08cf7caa1beb1de078ab1099de0f7a1fed8ec.patch
+https://github.com/filebench/filebench/pull/116/commits/fd3565c371d87a5d6cdebcedac557a231aa4a85e.patch
+From 07194b64f7a9c7c473896934339775ab54f1da78 Mon Sep 17 00:00:00 2001
+From: Nathaniel Wesley Filardo <[email protected]>
+Date: Wed, 1 Nov 2017 17:50:59 -0400
+Subject: [PATCH] Make real prototypes in some places
+
+--- a/aslr.c
++++ b/aslr.c
+@@ -23,7 +23,7 @@
+ 
+ #if defined(HAVE_SYS_PERSONALITY_H) && defined(HAVE_ADDR_NO_RANDOMIZE)
+ void
+-linux_disable_aslr()
++linux_disable_aslr(void)
+ {
+       int r;
+ 
+@@ -34,7 +34,7 @@ linux_disable_aslr()
+ }
+ #else /* HAVE_SYS_PERSONALITY_H && HAVE_ADDR_NO_RANDOMIZE */
+ void
+-other_disable_aslr()
++other_disable_aslr(void)
+ {
+       filebench_log(LOG_INFO, "Per-process disabling of ASLR is not "
+                               "supported on this system. "
+--- a/aslr.h
++++ b/aslr.h
+@@ -5,19 +5,19 @@
+ 
+ #if defined(HAVE_SYS_PERSONALITY_H) && defined(HAVE_ADDR_NO_RANDOMIZE)
+ extern void
+-linux_disable_aslr();
++linux_disable_aslr(void);
+ 
+ static inline void
+-disable_aslr()
++disable_aslr(void)
+ {
+       return linux_disable_aslr();
+ }
+ #else /* HAVE_SYS_PERSONALITY_H && HAVE_ADDR_NO_RANDOMIZE */
+ extern void
+-other_disable_aslr();
++other_disable_aslr(void);
+ 
+ static inline void
+-disable_aslr() {
++disable_aslr(void) {
+       return other_disable_aslr();
+ }
+ #endif /* HAVE_SYS_PERSONALITY_H && HAVE_ADDR_NO_RANDOMIZE */
+--- a/cvars/cvar-erlang.c
++++ b/cvars/cvar-erlang.c
+@@ -122,7 +122,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void 
*ptr))
+       cvar_free(handle);
+ }
+ 
+-const char *cvar_usage()
++const char *cvar_usage(void)
+ {
+       int offset;
+ 
+@@ -155,7 +155,7 @@ const char *cvar_usage()
+       return usage;
+ }
+ 
+-const char *cvar_version()
++const char *cvar_version(void)
+ {
+       return VERSION;
+ }
+--- a/cvars/cvar-exponential.c
++++ b/cvars/cvar-exponential.c
+@@ -108,7 +108,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void 
*ptr))
+       cvar_free(handle);
+ }
+ 
+-const char *cvar_usage()
++const char *cvar_usage(void)
+ {
+       int offset;
+ 
+@@ -135,7 +135,7 @@ const char *cvar_usage()
+       return usage;
+ }
+ 
+-const char *cvar_version()
++const char *cvar_version(void)
+ {
+       return VERSION;
+ }
+--- a/cvars/cvar-gamma.c
++++ b/cvars/cvar-gamma.c
+@@ -242,7 +242,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void 
*ptr))
+       cvar_free(handle);
+ }
+ 
+-const char *cvar_usage()
++const char *cvar_usage(void)
+ {
+       int offset;
+ 
+@@ -274,7 +274,7 @@ const char *cvar_usage()
+       return usage;
+ }
+ 
+-const char *cvar_version()
++const char *cvar_version(void)
+ {
+       return VERSION;
+ }
+--- a/cvars/cvar-lognormal.c
++++ b/cvars/cvar-lognormal.c
+@@ -121,7 +121,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void 
*ptr))
+       cvar_free(handle);
+ }
+ 
+-const char *cvar_usage()
++const char *cvar_usage(void)
+ {
+       int offset;
+ 
+@@ -154,7 +154,7 @@ const char *cvar_usage()
+       return usage;
+ }
+ 
+-const char *cvar_version()
++const char *cvar_version(void)
+ {
+       return VERSION;
+ }
+--- a/cvars/cvar-normal.c
++++ b/cvars/cvar-normal.c
+@@ -109,7 +109,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void 
*ptr))
+       cvar_free(handle);
+ }
+ 
+-const char *cvar_usage()
++const char *cvar_usage(void)
+ {
+       int offset;
+ 
+@@ -142,7 +142,7 @@ const char *cvar_usage()
+       return usage;
+ }
+ 
+-const char *cvar_version()
++const char *cvar_version(void)
+ {
+       return VERSION;
+ }
+--- a/cvars/cvar-triangular.c
++++ b/cvars/cvar-triangular.c
+@@ -132,7 +132,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void 
*ptr))
+       cvar_free(handle);
+ }
+ 
+-const char *cvar_usage()
++const char *cvar_usage(void)
+ {
+       int offset;
+ 
+@@ -169,7 +169,7 @@ const char *cvar_usage()
+       return usage;
+ }
+ 
+-const char *cvar_version()
++const char *cvar_version(void)
+ {
+       return VERSION;
+ }
+--- a/cvars/cvar-uniform.c
++++ b/cvars/cvar-uniform.c
+@@ -115,7 +115,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void 
*ptr))
+       cvar_free(handle);
+ }
+ 
+-const char *cvar_usage()
++const char *cvar_usage(void)
+ {
+       int offset;
+ 
+@@ -147,7 +147,7 @@ const char *cvar_usage()
+       return usage;
+ }
+ 
+-const char *cvar_version()
++const char *cvar_version(void)
+ {
+       return VERSION;
+ }
+--- a/cvars/cvar-weibull.c
++++ b/cvars/cvar-weibull.c
+@@ -122,7 +122,7 @@ void cvar_free_handle(void *handle, void (*cvar_free)(void 
*ptr))
+       cvar_free(handle);
+ }
+ 
+-const char *cvar_usage()
++const char *cvar_usage(void)
+ {
+       int offset;
+ 
+@@ -155,7 +155,7 @@ const char *cvar_usage()
+       return usage;
+ }
+ 
+-const char *cvar_version()
++const char *cvar_version(void)
+ {
+       return VERSION;
+ }
+--- a/cvars/cvar.h
++++ b/cvars/cvar.h
+@@ -19,7 +19,7 @@
+  * Return 0 on success and a non-zero error code on failure.
+  */
+ 
+-int cvar_module_init();
++int cvar_module_init(void);
+ 
+ /*
+  * Allocate a new custom variable handle. A handle is subsequently used to
+@@ -84,7 +84,7 @@ void cvar_free_handle(void *cvar_handle, void 
(*cvar_free)(void *ptr));
+  * to quit without invoking cvar_module_exit.
+  */
+ 
+-void cvar_module_exit();
++void cvar_module_exit(void);
+ 
+ /*
+  * Show usage, including information on the list of parameters supported and 
the
+@@ -95,7 +95,7 @@ void cvar_module_exit();
+  * Return a non-null, formatted string to be displayed on screen.
+  */
+ 
+-const char *cvar_usage();
++const char *cvar_usage(void);
+ 
+ /*
+  * Show version.
+@@ -105,6 +105,6 @@ const char *cvar_usage();
+  * Return a non-null version string.
+  */
+ 
+-const char *cvar_version();
++const char *cvar_version(void);
+ 
+ #endif /* _CVAR_H */
+--- a/fb_cvar.c
++++ b/fb_cvar.c
+@@ -204,7 +204,7 @@ static char
+  * Returns 0 on success and non-zero on error.
+  */
+ int
+-init_cvar_libraries()
++init_cvar_libraries(void)
+ {
+       int count;
+       int ret = -1;
+@@ -425,7 +425,7 @@ get_cvar_value(cvar_t *cvar)
+  * Return 0 on success and a non-zero error code on failure.
+  */
+ int
+-revalidate_cvar_handles()
++revalidate_cvar_handles(void)
+ {
+       cvar_t *t;
+       cvar_library_t *cvar_lib;
+--- a/fb_cvar.h
++++ b/fb_cvar.h
+@@ -59,7 +59,7 @@ typedef struct cvar_operations {
+       int (*cvar_revalidate_handle)(void *cvar_handle);
+       int (*cvar_next_value)(void *cvar_handle, double *value);
+       void (*cvar_free_handle)(void *cvar_handle, void (*cvar_free)(void 
*ptr));
+-      void (*cvar_module_exit)();
++      void (*cvar_module_exit)(void);
+       const char *(*cvar_usage)(void);
+       const char *(*cvar_version)(void);
+ } cvar_operations_t;
+@@ -78,9 +78,9 @@ extern cvar_library_t **cvar_libraries;
+ 
+ cvar_t * cvar_alloc(void);
+ int init_cvar_library_info(const char *dirpath);
+-int init_cvar_libraries();
++int init_cvar_libraries(void);
+ int init_cvar_handle(cvar_t *cvar, const char *type, const char *parameters);
+ double get_cvar_value(cvar_t *cvar);
+-int revalidate_cvar_handles();
++int revalidate_cvar_handles(void);
+ 
+ #endif /* _FB_CVAR_H */
+--- a/fb_random.c
++++ b/fb_random.c
+@@ -103,7 +103,7 @@ fb_random32(uint32_t *randp,
+  * Same as filebench_randomno64, but for probability [0-1].
+  */
+ static double
+-fb_random_probability()
++fb_random_probability(void)
+ {
+       uint64_t randnum;
+ 
+--- a/fileset.c
++++ b/fileset.c
+@@ -1749,7 +1749,7 @@ fileset_checkraw(fileset_t *fileset)
+  * fail.
+  */
+ int
+-fileset_createsets()
++fileset_createsets(void)
+ {
+       fileset_t *list;
+       int ret = 0;
+--- a/fileset.h
++++ b/fileset.h
+@@ -142,7 +142,7 @@ typedef struct fileset {
+       pthread_mutex_t fs_histo_lock;  /* lock for incr of histo */
+ } fileset_t;
+ 
+-int fileset_createsets();
++int fileset_createsets(void);
+ 
+ void fileset_delete_all_filesets(void);
+ int fileset_openfile(fb_fdesc_t *fd, fileset_t *fileset,
+--- a/flowop.h
++++ b/flowop.h
+@@ -37,9 +37,9 @@ typedef struct flowop {
+       struct flowop   *fo_comp_fops;  /* List of flowops in composite fo */
+       var_t           *fo_lvar_list;  /* List of composite local vars */
+       struct threadflow *fo_thread;   /* Backpointer to thread */
+-      int             (*fo_func)();   /* Method */
+-      int             (*fo_init)();   /* Init Method */
+-      void            (*fo_destruct)(); /* Destructor Method */
++      int             (*fo_func)(threadflow_t *, struct flowop *);    /* 
Method */
++      int             (*fo_init)(struct flowop *);    /* Init Method */
++      void            (*fo_destruct)(struct flowop *); /* Destructor Method */
+       int             fo_type;        /* Type */
+       int             fo_attrs;       /* Flow op attribute */
+       avd_t           fo_filename;    /* file/fileset name */
+@@ -118,9 +118,9 @@ typedef struct flowop_proto {
+       int     fl_type;
+       int     fl_attrs;
+       char    *fl_name;
+-      int     (*fl_init)();
+-      int     (*fl_func)();
+-      void    (*fl_destruct)();
++      int     (*fl_init)(flowop_t *);
++      int     (*fl_func)(threadflow_t *, flowop_t *);
++      void    (*fl_destruct)(flowop_t *);
+ } flowop_proto_t;
+ 
+ extern struct flowstats controlstats;
+@@ -148,7 +148,7 @@ void flowop_printall(void);
+ void flowop_init(int ismaster);
+ 
+ /* Local file system specific */
+-void fb_lfs_funcvecinit();
+-void fb_lfs_newflowops();
++void fb_lfs_funcvecinit(void);
++void fb_lfs_newflowops(void);
+ 
+ #endif        /* _FB_FLOWOP_H */
+--- a/parser_gram.y
++++ b/parser_gram.y
+@@ -69,7 +69,7 @@ static attr_t *alloc_attr(void);
+ static attr_t *alloc_lvar_attr(var_t *var);
+ static attr_t *get_attr(cmd_t *cmd, int64_t name);
+ static void get_attr_lvars(cmd_t *cmd, flowop_t *flowop);
+-static list_t *alloc_list();
++static list_t *alloc_list(void);
+ static probtabent_t *alloc_probtabent(void);
+ static void add_lvar_to_list(var_t *newlvar, var_t **lvar_list);
+ 
+@@ -1619,7 +1619,7 @@ master_mode(struct fbparams *fbparams) {
+ }
+ 
+ static void
+-init_common()
++init_common(void)
+ {
+       disable_aslr();
+       my_pid = getpid();
+@@ -3117,7 +3117,7 @@ get_attr_lvars(cmd_t *cmd, flowop_t *flowop)
+  * returns a pointer to it. On failure, returns NULL.
+  */
+ static list_t *
+-alloc_list()
++alloc_list(void)
+ {
+       list_t *list;
+ 
+--- a/procflow.c
++++ b/procflow.c
+@@ -560,7 +560,7 @@ procflow_cleanup(procflow_t *procflow)
+  * in which case it returns -1.
+  */
+ static int
+-procflow_allstarted()
++procflow_allstarted(void)
+ {
+       procflow_t *procflow = filebench_shm->shm_procflowlist;
+       int running_procs = 0;
+@@ -787,7 +787,7 @@ procflow_define(char *name, avd_t instances)
+  * system.
+  */
+ void
+-proc_create()
++proc_create(void)
+ {
+       filebench_shm->shm_1st_err = 0;
+       filebench_shm->shm_f_abort = FILEBENCH_OK;
+@@ -828,7 +828,7 @@ proc_create()
+  * It does not exit the filebench program though.
+  */
+ void
+-proc_shutdown()
++proc_shutdown(void)
+ {
+       filebench_log(LOG_INFO, "Shutting down processes");
+       procflow_shutdown();
+From 64a08cf7caa1beb1de078ab1099de0f7a1fed8ec Mon Sep 17 00:00:00 2001
+From: Marc Dionne <[email protected]>
+Date: Mon, 13 Jan 2025 15:12:37 -0400
+Subject: [PATCH] vars: Avoid using keyword "bool" as an argument name
+
+With gcc 15, "bool" is a restricted keyword that can't be used as
+an argument name.
+
+Signed-off-by: Marc Dionne <[email protected]>
+--- a/vars.c
++++ b/vars.c
+@@ -417,7 +417,7 @@ var_find_alloc(char *name)
+ }
+ 
+ int
+-var_assign_boolean(char *name, boolean_t bool)
++var_assign_boolean(char *name, boolean_t val)
+ {
+       var_t *var;
+ 
+@@ -427,7 +427,7 @@ var_assign_boolean(char *name, boolean_t bool)
+               return -1;
+       }
+ 
+-      VAR_SET_BOOL(var, bool);
++      VAR_SET_BOOL(var, val);
+ 
+       return 0;
+ }
+@@ -786,7 +786,7 @@ var_lvar_assign_var(char *name, char *src_name)
+ }
+ 
+ var_t *
+-var_lvar_assign_boolean(char *name, boolean_t bool)
++var_lvar_assign_boolean(char *name, boolean_t val)
+ {
+       var_t *var;
+ 
+@@ -797,7 +797,7 @@ var_lvar_assign_boolean(char *name, boolean_t bool)
+               return NULL;
+       }
+ 
+-      VAR_SET_BOOL(var, bool);
++      VAR_SET_BOOL(var, val);
+ 
+       return var;
+ }
+From fd3565c371d87a5d6cdebcedac557a231aa4a85e Mon Sep 17 00:00:00 2001
+From: Nathaniel Wesley Filardo <[email protected]>
+Date: Wed, 1 Nov 2017 23:46:20 -0400
+Subject: [PATCH] vars.h: don't use bool keyword as variable
+
+--- a/vars.h
++++ b/vars.h
+@@ -160,13 +160,13 @@ typedef struct var {
+               (vp)->var_type = VAR_UNKNOWN; \
+       }
+ 
+-avd_t avd_bool_alloc(boolean_t bool);
++avd_t avd_bool_alloc(boolean_t boolval);
+ avd_t avd_int_alloc(uint64_t integer);
+ avd_t avd_dbl_alloc(double integer);
+ avd_t avd_str_alloc(char *string);
+ avd_t avd_var_alloc(char *varname);
+ 
+-int var_assign_boolean(char *name, boolean_t bool);
++int var_assign_boolean(char *name, boolean_t boolval);
+ int var_assign_integer(char *name, uint64_t integer);
+ int var_assign_double(char *name, double dbl);
+ int var_assign_string(char *name, char *string);

diff --git 
a/app-benchmarks/filebench/files/filebench-1.5.0_alpha3_fix_implicit_syscall.patch
 
b/app-benchmarks/filebench/files/filebench-1.5.0_alpha3_fix_implicit_syscall.patch
new file mode 100644
index 000000000000..4eab874344a3
--- /dev/null
+++ 
b/app-benchmarks/filebench/files/filebench-1.5.0_alpha3_fix_implicit_syscall.patch
@@ -0,0 +1,22 @@
+PR pending / bug #906004
+https://github.com/filebench/filebench/pull/160.patch
+From bee9657493f66432a20d1e9e02132da5819b6133 Mon Sep 17 00:00:00 2001
+From: Florian Weimer <[email protected]>
+Date: Tue, 20 Dec 2022 10:11:08 +0100
+Subject: [PATCH] configure.ac: Improve C99 compatibility of HAVE_IOPRIO check
+
+Include <unistd.h> to obtain a declaration of the syscall function.
+Implicit function declarations are likely to be rejected by future
+compilers by default.
+--- a/configure.ac
++++ b/configure.ac
+@@ -370,7 +370,8 @@ AC_TRY_COMPILE([
+ # check for I/O priority system calls
+ AC_MSG_CHECKING(for I/O priority system calls)
+ AC_TRY_COMPILE([
+-      #include <syscall.h>],
++      #include <syscall.h>
++      #include <unistd.h>],
+       [(void)syscall(__NR_ioprio_set, 0, 0, 0);
+       ],[
+           AC_DEFINE(HAVE_IOPRIO, 1, [ Define if you have I/O priority 
syscalls. ])

diff --git a/app-benchmarks/filebench/metadata.xml 
b/app-benchmarks/filebench/metadata.xml
index 27e50dded71e..1284e2628858 100644
--- a/app-benchmarks/filebench/metadata.xml
+++ b/app-benchmarks/filebench/metadata.xml
@@ -6,6 +6,7 @@
                <flag name="auto-completion">Enable command-line autocompletion 
using <pkg>dev-libs/libtecla</pkg></flag>
        </use>
        <upstream>
-               <remote-id type="sourceforge">filebench</remote-id>
+               <remote-id type="sourceforge">filebench</remote-id><!-- old -->
+               <remote-id type="github">filebench/filebench</remote-id>
        </upstream>
 </pkgmetadata>

Reply via email to