mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-01-06 02:17:34 -08:00
app-benchmarks/iozone: build fixes
* Build with LFS (append-lfs-flags) to fix Modern C issue, hits releng builds * Build w/ -std=gnu17 as fails w/ -std=gnu23 (default in GCC 15) Closes: https://bugs.gentoo.org/942587 Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
parent
7b25637c7e
commit
47b95946a0
78
app-benchmarks/iozone/iozone-3.506-r1.ebuild
Normal file
78
app-benchmarks/iozone/iozone-3.506-r1.ebuild
Normal file
@ -0,0 +1,78 @@
|
||||
# Copyright 1999-2024 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"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-3.506-include-function-parameters.patch
|
||||
)
|
||||
|
||||
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
|
||||
|
||||
# Otherwise it uses K&R function declaration where ints are sometimes omited
|
||||
# https://bugs.gentoo.org/894334
|
||||
append-cppflags -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
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user