scorep: ensure gcc-plugin is built, patch gcc@14 (#49257)

* scorep: ensure gcc-plugin is built, patch gcc@14
* scorep: patch only to non-deprecated versions
This commit is contained in:
Melven Roehrig-Zoellner 2025-03-25 22:45:53 +01:00 committed by GitHub
parent b0dba4ff5a
commit bd41863797
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -84,6 +84,11 @@ def url_for_version(self, version):
patch("gcc7.patch", when="@1.4:3")
patch("gcc10.patch", when="@3.1:6.0")
patch(
"https://gitlab.com/score-p/scorep/-/commit/093ff84f0e155ac1db99bbaa312e028f89affddb.diff",
when="@7:8.4 +gcc-plugin",
sha256="d20b3046ba6a89ad9c106bcf372bceb1bd9ab780d4c7dd9e7373f0099b92d933",
)
variant("mpi", default=True, description="Enable MPI support")
variant("papi", default=True, description="Enable PAPI")
@ -92,6 +97,7 @@ def url_for_version(self, version):
variant("unwind", default=False, description="Enable sampling via libunwind and lib wrapping")
variant("cuda", default=False, description="Enable CUDA support")
variant("hip", default=False, description="Enable ROCm/HIP support", when="@8.0:")
variant("gcc-plugin", default=True, description="Enable gcc-plugin", when="%gcc")
# Dependencies for SCORE-P are quite tight. See the homepage for more
# information. Starting with scorep 4.0 / cube 4.4, Score-P only depends on
# two components of cube -- cubew and cubelib.
@ -230,6 +236,13 @@ def configure_args(self):
if spec.satisfies("^binutils"):
config_args.append("--with-libbfd=%s" % spec["binutils"].prefix)
# when you build with gcc, you usually want to use the gcc-plugin!
# see, e.g., GNU Compiler Plug-In in https://scorepci.pages.jsc.fz-juelich.de/scorep-pipelines/docs/scorep-5.0/html/installationfile.html
if "+gcc-plugin" in spec:
config_args.append("--enable-gcc-plugin")
else:
config_args.append("--disable-gcc-plugin")
config_args.extend(
[
"CFLAGS={0}".format(self.compiler.cc_pic_flag),