commit: 62817bd44deeaa5bd49d33792c7931f2c000d8c3
Author: Alessandro Barbieri gmail com>
AuthorDate: Thu Jun 2 12:30:34 2022 +
Commit: Alessandro Barbieri gmail com>
CommitDate: Thu Jun 2 13:50:03 2022 +
URL:https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=62817bd4
sys-cluster/mpi-benchmarks: new package, add 2021.3
Signed-off-by: Alessandro Barbieri gmail.com>
sys-cluster/mpi-benchmarks/Manifest| 1 +
.../files/mpi-benchmarks-2021.3-makefile.patch | 142 +
sys-cluster/mpi-benchmarks/metadata.xml| 13 ++
.../mpi-benchmarks/mpi-benchmarks-2021.3.ebuild| 28
4 files changed, 184 insertions(+)
diff --git a/sys-cluster/mpi-benchmarks/Manifest
b/sys-cluster/mpi-benchmarks/Manifest
new file mode 100644
index 0..87015f994
--- /dev/null
+++ b/sys-cluster/mpi-benchmarks/Manifest
@@ -0,0 +1 @@
+DIST IMB-v2021.3.tar.gz 221038 BLAKE2B
d776e482a6632d9a538af0f8b89928322860ca6782f7c96bb47af0f9c6387eddc487bffbf3fde3e5c0477b7c9e9cbe7856857110890389f5ee42865051ef185b
SHA512
fdb1a2426b5999c58c5d15228c64a80f28f4051d438e86a132f0fc42c3cda88f0e1bbcb792316617864d0f4d07d89143a96f3824bd4806fc8cde3c2dcb1d4094
diff --git
a/sys-cluster/mpi-benchmarks/files/mpi-benchmarks-2021.3-makefile.patch
b/sys-cluster/mpi-benchmarks/files/mpi-benchmarks-2021.3-makefile.patch
new file mode 100644
index 0..2ba8660e1
--- /dev/null
+++ b/sys-cluster/mpi-benchmarks/files/mpi-benchmarks-2021.3-makefile.patch
@@ -0,0 +1,142 @@
+--- a/src_c/Makefile
b/src_c/Makefile
+@@ -106,10 +106,10 @@
+ -mkdir -p $@
+
+ $(BINARY): $(OBJ)
+- $(CC) $(LDFLAGS) $^ -o $@
++ $(CC) $(CFLAGS) -fPIE $(LDFLAGS) $^ -o $@
+
+ $(BUILDDIR)/%.o: %.c
+- $(CC) $(CFLAGS) -D$(TARGET) -DIMB2018 -c $< -o $@
++ $(CC) $(CFLAGS) -fPIC -D$(TARGET) -DIMB2018 -c $< -o $@
+
+ clean:
+ rm -rf $(BUILDDIR) $(OBJ) $(BINARY)
+--- a/src_c/P2P/Makefile
b/src_c/P2P/Makefile
+@@ -50,11 +50,11 @@
+ TARGET=P2P
+ BINARY:=IMB-P2P
+
+-override CFLAGS += -O3 -Wall -Wextra -pedantic -Wno-long-long
++override CFLAGS += -Wall -Wextra -pedantic -Wno-long-long
+ override LDFLAGS += -lm
+
+ ifeq ($(origin CC),default)
+-CC=mpiicc
++CC=mpicc
+ endif
+
+ all: $(BINARY)
+@@ -72,10 +72,10 @@
+ IMB_OBJ = $(IMB_SRC:.c=.o)
+
+ $(BINARY): $(IMB_OBJ)
+- $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
++ $(CC) $(CFLAGS) -fPIE -o $@ $^ $(LDFLAGS)
+
+ %.o: %.c
+- $(CC) $(CFLAGS) -c -o $@ $<
++ $(CC) $(CFLAGS) -fPIC -c -o $@ $<
+
+ clean:
+ rm -f $(IMB_OBJ) $(BINARY)
+--- a/src_cpp/Makefile
b/src_cpp/Makefile
+@@ -49,11 +49,7 @@
+
+ all: announce
+
+-ifdef WITH_YAML_CPP
+-all: libyaml-cpp.a
+-else
+ all:
+-endif
+
+ ifndef TARGET
+ TARGET=example
+@@ -71,14 +67,14 @@
+ endif
+
+ ifeq ($(origin CC),default)
+-CC=mpiicc
++CC ?= mpicc
+ endif
+ ifeq ($(origin CXX),default)
+-CXX=mpiicpc
++CXX ?= mpicxx
+ endif
+ override CPPFLAGS += -I.
+-override CFLAGS += -g -O0 -Wall -Wno-long-long
+-override CXXFLAGS += -g -O0 -Wall -Wextra -pedantic -Wno-long-long
++override CFLAGS += -g -Wall -Wno-long-long
++override CXXFLAGS += -g -Wall -Wextra -pedantic -Wno-long-long
+ ifdef WITH_OPENMP
+ override CFLAGS += -fopenmp
+ override CXXFLAGS += -fopenmp
+@@ -103,7 +99,7 @@
+ all: $(BINARY)
+
+ ifdef WITH_YAML_CPP
+-override CPPFLAGS += -Iyamlcpp/include -Iyamlcpp/test
++override CPPFLAGS += -I/usr/include/yaml-cpp
+ YAMLCPP_SRC = yamlcpp/src/aliasmanager.cpp \
+ yamlcpp/src/binary.cpp \
+ yamlcpp/src/conversion.cpp \
+@@ -140,8 +136,6 @@
+ yamlcpp/test/old-api/parsertests.cpp \
+ yamlcpp/test/old-api/spectests.cpp
+
+-YAMLCPP_OBJ = $(YAMLCPP_SRC:.cpp=.o)
+-YAMLCPP_TEST_OBJ = $(YAMLCPP_TEST_SRC:.cpp=.o)
+ endif
+
+ IMB_SRC = imb.cpp args_parser.cpp args_parser_utests.cpp scope.cpp
+@@ -160,14 +154,7 @@
+ scope.h
+
+ ifdef WITH_YAML_CPP
+-libyaml-cpp.a: $(YAMLCPP_OBJ)
+- ar qc $@ $^
+- ranlib $@
+-
+-yamltest: $(YAMLCPP_TEST_OBJ) libyaml-cpp.a
+- $(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ $^
+-
+-YAML_CPP_LIB = libyaml-cpp.a
++YAML_CPP_LIB = -lyaml-cpp
+ YAML_TEST = yamltest
+ override CPPFLAGS += -DWITH_YAML_CPP
+ endif
+@@ -176,25 +163,21 @@
+ @if test "$(ANNOUNCE)" -eq "1"; then echo "NOTE: Building target:
$(TARGET), binary name: $(BINARY)"; fi
+ @if test "$(ANNOUNCE)" -eq "1"; then echo "NOTE: Use make
TARGET= to select a target suite"; fi
+
+-$(BINARY): $(IMB_OBJ) $(BECHMARK_SUITE_OBJ) $(ADDITIONAL_OBJ) $(YAML_CPP_LIB)
+- $(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ $^ $(LDFLAGS)
++$(BINARY): $(IMB_OBJ) $(BECHMARK_SUITE_OBJ) $(ADDITIONAL_OBJ)
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) -fPIE -o $@ $^ $(LDFLAGS)
$(YAML_CPP_LIB) -lmpi_cxx -lmpi
+
+ %.o: %.cpp
+- $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $<
++ $(CXX) $(CPPFLAGS) $(CXXFLAGS) -fPIC -c -o $@ $<
+
+ %.o: %.c
+- $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
++ $(CC) $(CPPFLAGS) $(CFLAGS) -fPIC -c -o $@ $<
+
+ clean: announce
+-