commit:     a08956964cd85b459e9e1b4ff17af180152cb973
Author:     Z. Liu <zhixu.liu <AT> gmail <DOT> com>
AuthorDate: Thu Jun  5 14:39:32 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Sep 15 19:59:53 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a0895696

app-benchmarks/iozone: add 3.507

Signed-off-by: Z. Liu <zhixu.liu <AT> gmail.com>
Part-of: https://github.com/gentoo/gentoo/pull/42469
Closes: https://github.com/gentoo/gentoo/pull/42469
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-benchmarks/iozone/Manifest            |  1 +
 app-benchmarks/iozone/iozone-3.507.ebuild | 81 +++++++++++++++++++++++++++++++
 2 files changed, 82 insertions(+)

diff --git a/app-benchmarks/iozone/Manifest b/app-benchmarks/iozone/Manifest
index 00f266a83500..36a295dba731 100644
--- a/app-benchmarks/iozone/Manifest
+++ b/app-benchmarks/iozone/Manifest
@@ -1 +1,2 @@
 DIST iozone3_506.tar 1894400 BLAKE2B 
7434b691114aa5fabe10d659d47abe60b7efd76b75dff1c6cd0fc9205807f48cb3452022dc300b454acfbcf07df26f972ffa5ff62b51fa858eecb0340fb26402
 SHA512 
908919aef957ee587e23ab1d29c0e7cdb985caa1ec80ddee0d3fcdad8aa78978de0f8fc83161b37223237119c50e0626a8366ce6b29debefbfee00240e97105e
+DIST iozone3_507.tar 1904640 BLAKE2B 
ecd30e4f5986448f0d530dc83cbd57f94182876d91481fdc433671106121385f94e8208d849376a8dd7db2f29057c1a3ea7cf62cc7ae43093928100ce0dc9126
 SHA512 
28f2cf091e3d7e1e17ce712cf9530160c55ea928ba1eb64514deb8581fa3de59bd79e2c2de2bddd786fb0e7f05749b8251afb4127fea2fe4e736ad4fd1a6ae9c

diff --git a/app-benchmarks/iozone/iozone-3.507.ebuild 
b/app-benchmarks/iozone/iozone-3.507.ebuild
new file mode 100644
index 000000000000..8ae153cc858d
--- /dev/null
+++ b/app-benchmarks/iozone/iozone-3.507.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Filesystem benchmarking program"
+HOMEPAGE="http://www.iozone.org/";
+SRC_URI="http://www.iozone.org/src/current/${PN}${PV/./_}.tar";
+S="${WORKDIR}/${PN}${PV/./_}"
+
+LICENSE="freedist"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+src_prepare() {
+       default
+
+       # Options FIX
+       sed -e '/CC     =.*/d' \
+               -e 's:-O[23]:$(CFLAGS):g' \
+               -e 's:-Dlinux:$(LDFLAGS) -Dlinux:g' \
+               -i src/current/makefile || die
+}
+
+src_configure() {
+       tc-export CC
+
+       case ${ARCH} in
+               x86|alpha|riscv)  PLATFORM="linux";;
+               arm)              PLATFORM="linux-arm";;
+               ppc)              PLATFORM="linux-powerpc";;
+               ppc64)            PLATFORM="linux-powerpc64";;
+               amd64)            PLATFORM="linux-AMD64";;
+               ia64)             PLATFORM="linux-ia64";;
+               s390)             PLATFORM="linux-S390";;
+               *)                PLATFORM="linux-${ARCH}";;
+       esac
+
+       # makefile uses $(GCC) in a few places, probably
+       # by mistake.
+       export GCC="$(tc-getCC)"
+
+       # bug #942587
+       append-lfs-flags
+
+       append-cflags -std=gnu17
+
+       # iozone's Makefile lacks some explicit rules, causing the implicit 
.c.o rule
+       # (which uses both CPPFLAGS and CFLAGS) to be used during parallel 
builds. Since
+       # CPPFLAGS is not explicitly used anywhere in the makefile, we append 
the LFS flags
+       # to CFLAGS as a workaround.
+       append-cflags ${CPPFLAGS} # bug #947708
+
+       # Otherwise it uses K&R function declaration where ints are sometimes 
omited, for
+       # the same reason above, append it to CFLAGS.
+       # https://bugs.gentoo.org/894334
+       append-cflags -DHAVE_ANSIC_C
+}
+
+src_compile() {
+       emake -C src/current ${PLATFORM}
+}
+
+src_test() {
+       cd "${T}" || die
+       "${S}"/src/current/iozone testfile || die "self test failed"
+}
+
+src_install() {
+       dosbin src/current/{iozone,fileop}
+
+       # decompress pre-compressed file to make QA check happy
+       gunzip docs/Iozone_ps.gz || die
+
+       dodoc docs/I* docs/Run_rules.doc src/current/Changes.txt
+       doman docs/iozone.1
+       cd src/current || die
+       dodoc Generate_Graphs Gnuplot.txt gengnuplot.sh gnu3d.dem
+}

Reply via email to