From 3a5eb76e14cd89ffbcfff0035a31a69045946587 Mon Sep 17 00:00:00 2001
From: Christian Feld <c.feld@fz-juelich.de>
Date: Tue, 10 Jan 2023 17:36:50 +0100
Subject: [PATCH] Provide Score-P/8.0

---
 .../s/Score-P/Score-P-8.0-gompi-2022a.eb      | 67 +++++++++++++++++++
 .../s/Score-P/Score-P-8.0-gpsmpi-2022a.eb     | 67 +++++++++++++++++++
 .../s/Score-P/Score-P-8.0-ipsmpi-2022a.eb     | 67 +++++++++++++++++++
 .../s/Score-P/Score-P-8.0-npsmpic-2022a.eb    | 67 +++++++++++++++++++
 .../s/Score-P/Score-P-8.0-nvompic-2022a.eb    | 67 +++++++++++++++++++
 5 files changed, 335 insertions(+)
 create mode 100644 Golden_Repo/s/Score-P/Score-P-8.0-gompi-2022a.eb
 create mode 100644 Golden_Repo/s/Score-P/Score-P-8.0-gpsmpi-2022a.eb
 create mode 100644 Golden_Repo/s/Score-P/Score-P-8.0-ipsmpi-2022a.eb
 create mode 100644 Golden_Repo/s/Score-P/Score-P-8.0-npsmpic-2022a.eb
 create mode 100644 Golden_Repo/s/Score-P/Score-P-8.0-nvompic-2022a.eb

diff --git a/Golden_Repo/s/Score-P/Score-P-8.0-gompi-2022a.eb b/Golden_Repo/s/Score-P/Score-P-8.0-gompi-2022a.eb
new file mode 100644
index 000000000..e6bd13e32
--- /dev/null
+++ b/Golden_Repo/s/Score-P/Score-P-8.0-gompi-2022a.eb
@@ -0,0 +1,67 @@
+##
+# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild
+# Copyright:: Copyright 2013-2023 Juelich Supercomputing Centre, Germany
+# Authors::   Bernd Mohr <b.mohr@fz-juelich.de>
+#             Markus Geimer <m.geimer@fz-juelich.de>
+#             Christian Feld <c.feld@fz-juelich.de>
+# License::   3-clause BSD
+#
+# This work is based on experiences from the UNITE project
+# http://apps.fz-juelich.de/unite/
+##
+
+easyblock = 'EB_Score_minus_P'
+
+name = 'Score-P'
+version = '8.0'
+
+homepage = 'https://www.score-p.org'
+description = """
+The Score-P measurement infrastructure is a highly scalable and easy-to-use
+tool suite for profiling, event tracing, and online analysis of HPC
+applications.
+"""
+
+toolchain = {'name': 'gompi', 'version': '2022a'}
+
+source_urls = ['http://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s']
+sources = ['scorep-%(version)s.tar.gz']
+checksums = [
+    '4c0f34f20999f92ebe6ca1ff706d0846b8ce6cd537ffbedb49dfaef0faa66311',  # scorep-8.0.tar.gz
+]
+
+builddependencies = [
+    ('CUDA', '11.7', '', SYSTEM),
+    ('CubeLib', '4.8'),
+    ('CubeWriter', '4.8'),
+    # Unwinding/sampling support (optional):
+    ('libunwind', '1.6.2'),
+]
+
+dependencies = [
+    # binutils is implicitly available via GCC toolchain
+    ('OPARI2', '2.0.7'),
+    ('OTF2', '3.0.2'),
+    # Hardware counter support (optional):
+    ('PAPI', '7.0.0'),
+]
+
+configopts = '--enable-shared --with-machine-name=$SYSTEMNAME '
+# Enable CUDA support
+configopts += '--with-libOpenCL=$EBROOTCUDA/targets/x86_64-linux '
+# Make OMPT default, if available
+configopts += '--enable-default=ompt '
+
+postinstallcmds = ['make installcheck']
+
+sanity_check_paths = {
+    'files': ['bin/scorep', 'include/scorep/SCOREP_User.h',
+              ('lib/libscorep_adapter_mpi_event.a', 'lib64/libscorep_adapter_mpi_event.a'),
+              ('lib/libscorep_adapter_mpi_event.%s' % SHLIB_EXT, 'lib64/libscorep_adapter_mpi_event.%s' % SHLIB_EXT)],
+    'dirs': [],
+}
+
+# Ensure that local metric documentation is found by CubeGUI
+modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'}
+
+moduleclass = 'perf'
diff --git a/Golden_Repo/s/Score-P/Score-P-8.0-gpsmpi-2022a.eb b/Golden_Repo/s/Score-P/Score-P-8.0-gpsmpi-2022a.eb
new file mode 100644
index 000000000..2c2c2e730
--- /dev/null
+++ b/Golden_Repo/s/Score-P/Score-P-8.0-gpsmpi-2022a.eb
@@ -0,0 +1,67 @@
+##
+# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild
+# Copyright:: Copyright 2013-2023 Juelich Supercomputing Centre, Germany
+# Authors::   Bernd Mohr <b.mohr@fz-juelich.de>
+#             Markus Geimer <m.geimer@fz-juelich.de>
+#             Christian Feld <c.feld@fz-juelich.de>
+# License::   3-clause BSD
+#
+# This work is based on experiences from the UNITE project
+# http://apps.fz-juelich.de/unite/
+##
+
+easyblock = 'EB_Score_minus_P'
+
+name = 'Score-P'
+version = '8.0'
+
+homepage = 'https://www.score-p.org'
+description = """
+The Score-P measurement infrastructure is a highly scalable and easy-to-use
+tool suite for profiling, event tracing, and online analysis of HPC
+applications.
+"""
+
+toolchain = {'name': 'gpsmpi', 'version': '2022a'}
+
+source_urls = ['http://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s']
+sources = ['scorep-%(version)s.tar.gz']
+checksums = [
+    '4c0f34f20999f92ebe6ca1ff706d0846b8ce6cd537ffbedb49dfaef0faa66311',  # scorep-8.0.tar.gz
+]
+
+builddependencies = [
+    ('CUDA', '11.7', '', SYSTEM),
+    ('CubeLib', '4.8'),
+    ('CubeWriter', '4.8'),
+    # Unwinding/sampling support (optional):
+    ('libunwind', '1.6.2'),
+]
+
+dependencies = [
+    # binutils is implicitly available via GCC toolchain
+    ('OPARI2', '2.0.7'),
+    ('OTF2', '3.0.2'),
+    # Hardware counter support (optional):
+    ('PAPI', '7.0.0'),
+]
+
+configopts = '--enable-shared --with-machine-name=$SYSTEMNAME '
+# Enable CUDA support
+configopts += '--with-libOpenCL=$EBROOTCUDA/targets/x86_64-linux '
+# Make OMPT default, if available
+configopts += '--enable-default=ompt '
+
+postinstallcmds = ['make installcheck']
+
+sanity_check_paths = {
+    'files': ['bin/scorep', 'include/scorep/SCOREP_User.h',
+              ('lib/libscorep_adapter_mpi_event.a', 'lib64/libscorep_adapter_mpi_event.a'),
+              ('lib/libscorep_adapter_mpi_event.%s' % SHLIB_EXT, 'lib64/libscorep_adapter_mpi_event.%s' % SHLIB_EXT)],
+    'dirs': [],
+}
+
+# Ensure that local metric documentation is found by CubeGUI
+modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'}
+
+moduleclass = 'perf'
diff --git a/Golden_Repo/s/Score-P/Score-P-8.0-ipsmpi-2022a.eb b/Golden_Repo/s/Score-P/Score-P-8.0-ipsmpi-2022a.eb
new file mode 100644
index 000000000..a18ff27e2
--- /dev/null
+++ b/Golden_Repo/s/Score-P/Score-P-8.0-ipsmpi-2022a.eb
@@ -0,0 +1,67 @@
+##
+# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild
+# Copyright:: Copyright 2013-2023 Juelich Supercomputing Centre, Germany
+# Authors::   Bernd Mohr <b.mohr@fz-juelich.de>
+#             Markus Geimer <m.geimer@fz-juelich.de>
+#             Christian Feld <c.feld@fz-juelich.de>
+# License::   3-clause BSD
+#
+# This work is based on experiences from the UNITE project
+# http://apps.fz-juelich.de/unite/
+##
+
+easyblock = 'EB_Score_minus_P'
+
+name = 'Score-P'
+version = '8.0'
+
+homepage = 'https://www.score-p.org'
+description = """
+The Score-P measurement infrastructure is a highly scalable and easy-to-use
+tool suite for profiling, event tracing, and online analysis of HPC
+applications.
+"""
+
+toolchain = {'name': 'ipsmpi', 'version': '2022a'}
+
+source_urls = ['http://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s']
+sources = ['scorep-%(version)s.tar.gz']
+checksums = [
+    '4c0f34f20999f92ebe6ca1ff706d0846b8ce6cd537ffbedb49dfaef0faa66311',  # scorep-8.0.tar.gz
+]
+
+builddependencies = [
+    ('CUDA', '11.7', '', SYSTEM),
+    ('CubeLib', '4.8'),
+    ('CubeWriter', '4.8'),
+    # Unwinding/sampling support (optional):
+    ('libunwind', '1.6.2'),
+]
+
+dependencies = [
+    # binutils is implicitly available via GCC toolchain
+    ('OPARI2', '2.0.7'),
+    ('OTF2', '3.0.2'),
+    # Hardware counter support (optional):
+    ('PAPI', '7.0.0'),
+]
+
+configopts = '--enable-shared --with-machine-name=$SYSTEMNAME '
+# Enable CUDA support
+configopts += '--with-libOpenCL=$EBROOTCUDA/targets/x86_64-linux '
+# Make OMPT default, if available
+configopts += '--enable-default=ompt '
+
+postinstallcmds = ['make installcheck']
+
+sanity_check_paths = {
+    'files': ['bin/scorep', 'include/scorep/SCOREP_User.h',
+              ('lib/libscorep_adapter_mpi_event.a', 'lib64/libscorep_adapter_mpi_event.a'),
+              ('lib/libscorep_adapter_mpi_event.%s' % SHLIB_EXT, 'lib64/libscorep_adapter_mpi_event.%s' % SHLIB_EXT)],
+    'dirs': [],
+}
+
+# Ensure that local metric documentation is found by CubeGUI
+modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'}
+
+moduleclass = 'perf'
diff --git a/Golden_Repo/s/Score-P/Score-P-8.0-npsmpic-2022a.eb b/Golden_Repo/s/Score-P/Score-P-8.0-npsmpic-2022a.eb
new file mode 100644
index 000000000..8f94f74a1
--- /dev/null
+++ b/Golden_Repo/s/Score-P/Score-P-8.0-npsmpic-2022a.eb
@@ -0,0 +1,67 @@
+##
+# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild
+# Copyright:: Copyright 2013-2023 Juelich Supercomputing Centre, Germany
+# Authors::   Bernd Mohr <b.mohr@fz-juelich.de>
+#             Markus Geimer <m.geimer@fz-juelich.de>
+#             Christian Feld <c.feld@fz-juelich.de>
+# License::   3-clause BSD
+#
+# This work is based on experiences from the UNITE project
+# http://apps.fz-juelich.de/unite/
+##
+
+easyblock = 'EB_Score_minus_P'
+
+name = 'Score-P'
+version = '8.0'
+
+homepage = 'https://www.score-p.org'
+description = """
+The Score-P measurement infrastructure is a highly scalable and easy-to-use
+tool suite for profiling, event tracing, and online analysis of HPC
+applications.
+"""
+
+toolchain = {'name': 'npsmpic', 'version': '2022a'}
+
+source_urls = ['http://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s']
+sources = ['scorep-%(version)s.tar.gz']
+checksums = [
+    '4c0f34f20999f92ebe6ca1ff706d0846b8ce6cd537ffbedb49dfaef0faa66311',  # scorep-8.0.tar.gz
+]
+
+builddependencies = [
+    ('CUDA', '11.7', '', SYSTEM),
+    ('CubeLib', '4.8'),
+    ('CubeWriter', '4.8'),
+    # Unwinding/sampling support (optional):
+    ('libunwind', '1.6.2'),
+]
+
+dependencies = [
+    # binutils is implicitly available via GCC toolchain
+    ('OPARI2', '2.0.7'),
+    ('OTF2', '3.0.2'),
+    # Hardware counter support (optional):
+    ('PAPI', '7.0.0'),
+]
+
+configopts = '--enable-shared --with-machine-name=$SYSTEMNAME '
+# Enable CUDA support
+configopts += '--with-libOpenCL=$EBROOTCUDA/targets/x86_64-linux '
+# Make OMPT default, if available
+configopts += '--enable-default=ompt '
+
+postinstallcmds = ['make installcheck']
+
+sanity_check_paths = {
+    'files': ['bin/scorep', 'include/scorep/SCOREP_User.h',
+              ('lib/libscorep_adapter_mpi_event.a', 'lib64/libscorep_adapter_mpi_event.a'),
+              ('lib/libscorep_adapter_mpi_event.%s' % SHLIB_EXT, 'lib64/libscorep_adapter_mpi_event.%s' % SHLIB_EXT)],
+    'dirs': [],
+}
+
+# Ensure that local metric documentation is found by CubeGUI
+modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'}
+
+moduleclass = 'perf'
diff --git a/Golden_Repo/s/Score-P/Score-P-8.0-nvompic-2022a.eb b/Golden_Repo/s/Score-P/Score-P-8.0-nvompic-2022a.eb
new file mode 100644
index 000000000..02b508365
--- /dev/null
+++ b/Golden_Repo/s/Score-P/Score-P-8.0-nvompic-2022a.eb
@@ -0,0 +1,67 @@
+##
+# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild
+# Copyright:: Copyright 2013-2023 Juelich Supercomputing Centre, Germany
+# Authors::   Bernd Mohr <b.mohr@fz-juelich.de>
+#             Markus Geimer <m.geimer@fz-juelich.de>
+#             Christian Feld <c.feld@fz-juelich.de>
+# License::   3-clause BSD
+#
+# This work is based on experiences from the UNITE project
+# http://apps.fz-juelich.de/unite/
+##
+
+easyblock = 'EB_Score_minus_P'
+
+name = 'Score-P'
+version = '8.0'
+
+homepage = 'https://www.score-p.org'
+description = """
+The Score-P measurement infrastructure is a highly scalable and easy-to-use
+tool suite for profiling, event tracing, and online analysis of HPC
+applications.
+"""
+
+toolchain = {'name': 'nvompic', 'version': '2022a'}
+
+source_urls = ['http://perftools.pages.jsc.fz-juelich.de/cicd/scorep/tags/scorep-%(version)s']
+sources = ['scorep-%(version)s.tar.gz']
+checksums = [
+    '4c0f34f20999f92ebe6ca1ff706d0846b8ce6cd537ffbedb49dfaef0faa66311',  # scorep-8.0.tar.gz
+]
+
+builddependencies = [
+    ('CUDA', '11.7', '', SYSTEM),
+    ('CubeLib', '4.8'),
+    ('CubeWriter', '4.8'),
+    # Unwinding/sampling support (optional):
+    ('libunwind', '1.6.2'),
+]
+
+dependencies = [
+    # binutils is implicitly available via GCC toolchain
+    ('OPARI2', '2.0.7'),
+    ('OTF2', '3.0.2'),
+    # Hardware counter support (optional):
+    ('PAPI', '7.0.0'),
+]
+
+configopts = '--enable-shared --with-machine-name=$SYSTEMNAME '
+# Enable CUDA support
+configopts += '--with-libOpenCL=$EBROOTCUDA/targets/x86_64-linux '
+# Make OMPT default, if available
+configopts += '--enable-default=ompt '
+
+postinstallcmds = ['make installcheck']
+
+sanity_check_paths = {
+    'files': ['bin/scorep', 'include/scorep/SCOREP_User.h',
+              ('lib/libscorep_adapter_mpi_event.a', 'lib64/libscorep_adapter_mpi_event.a'),
+              ('lib/libscorep_adapter_mpi_event.%s' % SHLIB_EXT, 'lib64/libscorep_adapter_mpi_event.%s' % SHLIB_EXT)],
+    'dirs': [],
+}
+
+# Ensure that local metric documentation is found by CubeGUI
+modextrapaths = {'CUBE_DOCPATH': 'share/doc/scorep/profile'}
+
+moduleclass = 'perf'
-- 
GitLab