aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoramdmi3 <amdmi3@FreeBSD.org>2015-09-25 23:14:18 +0800
committeramdmi3 <amdmi3@FreeBSD.org>2015-09-25 23:14:18 +0800
commit6692ac5e278430731ca85c376eb9637618fd4d01 (patch)
treee1c8321ff4582b031ab506c60f0a8fb3afef1fbc
parent1f7d9b5f46df844c45985d39ae3a0b65660863b7 (diff)
downloadfreebsd-ports-gnome-6692ac5e278430731ca85c376eb9637618fd4d01.tar.gz
freebsd-ports-gnome-6692ac5e278430731ca85c376eb9637618fd4d01.tar.zst
freebsd-ports-gnome-6692ac5e278430731ca85c376eb9637618fd4d01.zip
This stress test suite will stress a computer system in various selectable ways
It was designed to exercise various physical subsystems of a computer as well as various operating system kernel interfaces. WWW: http://kernel.ubuntu.com/~cking/stress-ng/ PR: 200949 Submitted by: luca.pizzamiglio@gmail.com
-rw-r--r--benchmarks/Makefile1
-rw-r--r--benchmarks/stress-ng/Makefile29
-rw-r--r--benchmarks/stress-ng/distinfo2
-rw-r--r--benchmarks/stress-ng/files/extrapatch-Makefile11
-rw-r--r--benchmarks/stress-ng/files/extrapatch-stress-cpu.c10
-rw-r--r--benchmarks/stress-ng/files/patch-stress-cpu.c38
-rw-r--r--benchmarks/stress-ng/pkg-descr5
7 files changed, 96 insertions, 0 deletions
diff --git a/benchmarks/Makefile b/benchmarks/Makefile
index 770d523a980d..86ef12190aff 100644
--- a/benchmarks/Makefile
+++ b/benchmarks/Makefile
@@ -70,6 +70,7 @@
SUBDIR += smhasher
SUBDIR += spp
SUBDIR += stream
+ SUBDIR += stress-ng
SUBDIR += super-smack
SUBDIR += sysbench
SUBDIR += tcpblast
diff --git a/benchmarks/stress-ng/Makefile b/benchmarks/stress-ng/Makefile
new file mode 100644
index 000000000000..3c6c9b170afd
--- /dev/null
+++ b/benchmarks/stress-ng/Makefile
@@ -0,0 +1,29 @@
+# $FreeBSD$
+
+PORTNAME= stress-ng
+PORTVERSION= 0.04.20
+CATEGORIES= benchmarks
+MASTER_SITES= http://kernel.ubuntu.com/~cking/tarballs/stress-ng/
+
+MAINTAINER= luca.pizzamiglio@gmail.com
+COMMENT= Stress test benchmarks
+
+LICENSE= GPLv2 # or later
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+ALL_TARGET= # empty
+
+PLIST_FILES= bin/stress-ng man/man1/stress-ng.1.gz
+
+.include <bsd.port.pre.mk>
+
+.if ${OSVERSION} < 1000000
+EXTRA_PATCHES+= ${FILESDIR}/extrapatch-stress-cpu.c \
+ ${FILESDIR}/extrapatch-Makefile
+.endif
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/stress-ng ${STAGEDIR}${PREFIX}/bin
+ ${INSTALL_MAN} ${WRKSRC}/stress-ng.1 ${STAGEDIR}${MANDIRS}/man1
+
+.include <bsd.port.post.mk>
diff --git a/benchmarks/stress-ng/distinfo b/benchmarks/stress-ng/distinfo
new file mode 100644
index 000000000000..4f1a98de95f2
--- /dev/null
+++ b/benchmarks/stress-ng/distinfo
@@ -0,0 +1,2 @@
+SHA256 (stress-ng-0.04.20.tar.gz) = 5b00c23325e46236466e598a977c8ebcd4f786cc0c2e15118004a0462bb6f47f
+SIZE (stress-ng-0.04.20.tar.gz) = 236074
diff --git a/benchmarks/stress-ng/files/extrapatch-Makefile b/benchmarks/stress-ng/files/extrapatch-Makefile
new file mode 100644
index 000000000000..9220658e2bd8
--- /dev/null
+++ b/benchmarks/stress-ng/files/extrapatch-Makefile
@@ -0,0 +1,11 @@
+--- Makefile.orig 2015-09-25 10:15:45 UTC
++++ Makefile
+@@ -165,7 +165,7 @@ OBJS = $(SRC:.c=.o)
+ @$(CC) $(CFLAGS) -c -o $@ $<
+
+ stress-ng: $(OBJS)
+- $(CC) $(CPPFLAGS) $(CFLAGS) $(OBJS) -lm -pthread -lrt -lcrypt -o $@ $(LDFLAGS)
++ $(CC) $(CPPFLAGS) $(CFLAGS) $(OBJS) -lm -pthread -lrt -lcrypt -lstdc++ -o $@ $(LDFLAGS)
+
+ stress-cpu.o: stress-cpu.c
+ @echo $(CC) $(CFLAGS) -c -o $@ $<
diff --git a/benchmarks/stress-ng/files/extrapatch-stress-cpu.c b/benchmarks/stress-ng/files/extrapatch-stress-cpu.c
new file mode 100644
index 000000000000..689307658449
--- /dev/null
+++ b/benchmarks/stress-ng/files/extrapatch-stress-cpu.c
@@ -0,0 +1,10 @@
+--- stress-cpu.c.orig 2015-09-18 14:50:12 UTC
++++ stress-cpu.c
+@@ -23,6 +23,7 @@
+ *
+ */
+ #define _GNU_SOURCE
++#define _DECLARE_C99_LDBL_MATH 1
+
+ #include <stdio.h>
+ #include <stdlib.h>
diff --git a/benchmarks/stress-ng/files/patch-stress-cpu.c b/benchmarks/stress-ng/files/patch-stress-cpu.c
new file mode 100644
index 000000000000..9d0f5e631998
--- /dev/null
+++ b/benchmarks/stress-ng/files/patch-stress-cpu.c
@@ -0,0 +1,38 @@
+--- stress-cpu.c.orig 2015-09-18 14:50:12 UTC
++++ stress-cpu.c
+@@ -57,7 +58,6 @@
+ #define ccosl ccos
+ #define csinl csin
+ #define cpow pow
+-#define powl pow
+ #endif
+
+ /*
+@@ -866,6 +866,7 @@ stress_cpu_fp(_Decimal128, decimal128, s
+ /* Append floating point literal specifier to literal value */
+ #define FP(val, ltype) val ## ltype
+
++#if defined(__STDC_IEC_559_COMPLEX__)
+ /*
+ * Generic complex stressor macro
+ */
+@@ -891,6 +892,7 @@ static void HOT OPTIMIZE3 stress_cpu_ ##
+ stress_cpu_complex(complex float, f, complex_float, csinf, ccosf)
+ stress_cpu_complex(complex double, , complex_double, csin, ccos)
+ stress_cpu_complex(complex long double, l, complex_long_double, csinl, ccosl)
++#endif /* __STDC_IEC_559_COMPLEX__ */
+
+ #define int_float_ops(_ftype, flt_a, flt_b, flt_c, flt_d, \
+ _sin, _cos, int_a, int_b, _c1, _c2, _c3) \
+@@ -2058,9 +2060,11 @@ static stress_cpu_stressor_info_t cpu_me
+ { "ackermann", stress_cpu_ackermann },
+ { "bitops", stress_cpu_bitops },
+ { "callfunc", stress_cpu_callfunc },
++#if defined(__STDC_IEC_559_COMPLEX__)
+ { "cdouble", stress_cpu_complex_double },
+ { "cfloat", stress_cpu_complex_float },
+ { "clongdouble", stress_cpu_complex_long_double },
++#endif /* __STDC_IEC_559_COMPLEX__ */
+ { "correlate", stress_cpu_correlate },
+ { "crc16", stress_cpu_crc16 },
+ #if defined(STRESS_FLOAT_DECIMAL)
diff --git a/benchmarks/stress-ng/pkg-descr b/benchmarks/stress-ng/pkg-descr
new file mode 100644
index 000000000000..395e783194e3
--- /dev/null
+++ b/benchmarks/stress-ng/pkg-descr
@@ -0,0 +1,5 @@
+This stress test suite will stress a computer system in various selectable ways
+It was designed to exercise various physical subsystems of a computer as well
+as various operating system kernel interfaces.
+
+WWW: http://kernel.ubuntu.com/~cking/stress-ng/