git: 31f202308a02 - main - sysutils/ior: New port: IOR and mdtest, parallel IO storage benchmark
Date: Fri, 20 Jan 2023 09:01:29 UTC
The branch main has been updated by yuri:
URL: https://cgit.FreeBSD.org/ports/commit/?id=31f202308a02a266aea71df8672e8ff2f0e9848c
commit 31f202308a02a266aea71df8672e8ff2f0e9848c
Author: Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2023-01-20 09:00:59 +0000
Commit: Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2023-01-20 09:01:26 +0000
sysutils/ior: New port: IOR and mdtest, parallel IO storage benchmark
---
sysutils/Makefile | 1 +
sysutils/ior/Makefile | 31 +++++++++++++++++++++++++++++++
sysutils/ior/distinfo | 3 +++
sysutils/ior/files/patch-configure.ac | 11 +++++++++++
sysutils/ior/files/patch-src_utilities.c | 11 +++++++++++
sysutils/ior/pkg-descr | 6 ++++++
6 files changed, 63 insertions(+)
diff --git a/sysutils/Makefile b/sysutils/Makefile
index 411ea575708f..2d12c50c426e 100644
--- a/sysutils/Makefile
+++ b/sysutils/Makefile
@@ -569,6 +569,7 @@
SUBDIR += iograph
SUBDIR += iohyve
SUBDIR += ioping
+ SUBDIR += ior
SUBDIR += ipa
SUBDIR += ipad_charge
SUBDIR += ipdbtools
diff --git a/sysutils/ior/Makefile b/sysutils/ior/Makefile
new file mode 100644
index 000000000000..3778958fc355
--- /dev/null
+++ b/sysutils/ior/Makefile
@@ -0,0 +1,31 @@
+PORTNAME= ior
+DISTVERSION= 3.3.0-20230112
+CATEGORIES= sysutils
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= IOR and mdtest, parallel IO storage benchmark
+WWW= https://github.com/hpc/ior
+
+LICENSE= GPLv2
+
+USES= autoreconf gmake localbase:ldflags mpi:mpich pkgconfig
+
+USE_GITHUB= yes
+GH_ACCOUNT= hpc
+GH_TAGNAME= 24d5d41
+
+GNU_CONFIGURE= yes
+
+TEST_TARGET= check
+
+PLIST_FILES= bin/ior \
+ bin/md-workbench \
+ bin/mdtest \
+ man/man1/mdtest.1.gz
+
+post-install: # see https://github.com/hpc/ior/issues/454
+ @${RM} \
+ ${STAGEDIR}${PREFIX}/lib/libaiori.a \
+ ${STAGEDIR}${PREFIX}/share/USER_GUIDE
+
+.include <bsd.port.mk>
diff --git a/sysutils/ior/distinfo b/sysutils/ior/distinfo
new file mode 100644
index 000000000000..c67af6ad00c8
--- /dev/null
+++ b/sysutils/ior/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1674200636
+SHA256 (hpc-ior-3.3.0-20230112-24d5d41_GH0.tar.gz) = 6bf404b27269e607c5f1d562a430cbdefd05da3f7cfe2ba4b3f53e6f0ae77654
+SIZE (hpc-ior-3.3.0-20230112-24d5d41_GH0.tar.gz) = 561821
diff --git a/sysutils/ior/files/patch-configure.ac b/sysutils/ior/files/patch-configure.ac
new file mode 100644
index 000000000000..aef9a0ddc960
--- /dev/null
+++ b/sysutils/ior/files/patch-configure.ac
@@ -0,0 +1,11 @@
+--- configure.ac.orig 2023-01-20 07:54:41 UTC
++++ configure.ac
+@@ -145,7 +145,7 @@ AM_COND_IF([HAVE_GPU_DIRECT],[
+ # Check for system capabilities
+ AC_SYS_LARGEFILE
+
+-AC_DEFINE([_XOPEN_SOURCE], [700], [C99 compatibility])
++#AC_DEFINE([_XOPEN_SOURCE], [700], [C99 compatibility])
+
+ # Check for lustre availability
+ AC_ARG_WITH([lustre],
diff --git a/sysutils/ior/files/patch-src_utilities.c b/sysutils/ior/files/patch-src_utilities.c
new file mode 100644
index 000000000000..bfc5e99e8b8c
--- /dev/null
+++ b/sysutils/ior/files/patch-src_utilities.c
@@ -0,0 +1,11 @@
+--- src/utilities.c.orig 2023-01-20 07:46:47 UTC
++++ src/utilities.c
+@@ -45,7 +45,7 @@
+ # include <regex.h>
+ # ifdef __sun /* SunOS does not support statfs(), instead uses statvfs() */
+ # include <sys/statvfs.h>
+-# elif (defined __APPLE__)
++# elif (defined __APPLE__) || (defined __FreeBSD__)
+ # include <sys/param.h>
+ # include <sys/mount.h>
+ # else /* ! __sun or __APPLE__ */
diff --git a/sysutils/ior/pkg-descr b/sysutils/ior/pkg-descr
new file mode 100644
index 000000000000..2928d2a18d02
--- /dev/null
+++ b/sysutils/ior/pkg-descr
@@ -0,0 +1,6 @@
+IOR is a parallel IO benchmark that can be used to test the performance of
+parallel storage systems using various interfaces and access patterns. The IOR
+repository also includes the mdtest benchmark which specifically tests the peak
+metadata rates of storage systems under different directory structures. Both
+benchmarks use a common parallel I/O abstraction backend and rely on MPI for
+synchronization.