Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use proper Python dependency for OTF2 #21325

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 7 additions & 2 deletions easybuild/easyconfigs/o/OTF2/OTF2-3.0-GCCcore-11.3.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
# Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany
# Authors:: Bernd Mohr <[email protected]>
# Markus Geimer <[email protected]>
# Jan Andre Reuter <[email protected]>
# License:: 3-clause BSD
#
# This work is based on experiences from the UNITE project
Expand Down Expand Up @@ -34,17 +35,21 @@ builddependencies = [
dependencies = [
# SIONlib container support (optional):
('SIONlib', '1.7.7', '-tools'),
# OTF2 Python bindings
('Python', '3.10.4'),
]

local_pyshortver = '3.10'
configopts = '--enable-shared'

modextrapaths = {'PYTHONPATH': ['lib64/python%s/site-packages' % local_pyshortver]}

sanity_check_paths = {
'files': ['bin/otf2-config', 'include/otf2/otf2.h',
'lib/libotf2.a', 'lib/libotf2.%s' % SHLIB_EXT],
'dirs': [],
}

sanity_check_commands = ['%(namelower)s-config --help']
sanity_check_commands = ['%(namelower)s-config --help',
'python -c "import %(namelower)s"']

moduleclass = 'perf'
8 changes: 7 additions & 1 deletion easybuild/easyconfigs/o/OTF2/OTF2-3.0.2-GCCcore-11.2.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
# Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany
# Authors:: Bernd Mohr <[email protected]>
# Markus Geimer <[email protected]>
# Jan Andre Reuter <[email protected]>
# License:: 3-clause BSD
#
# This work is based on experiences from the UNITE project
Expand Down Expand Up @@ -34,17 +35,22 @@ builddependencies = [
dependencies = [
# SIONlib container support (optional):
('SIONlib', '1.7.7', '-tools'),
# OTF2 Python bindings
('Python', '3.9.6'),
]

local_pyshortver = '3.9'
configopts = '--enable-shared'

modextrapaths = {'PYTHONPATH': ['lib64/python%s/site-packages' % local_pyshortver]}

sanity_check_paths = {
'files': ['bin/otf2-config', 'include/otf2/otf2.h',
'lib/libotf2.a', 'lib/libotf2.%s' % SHLIB_EXT],
'dirs': [],
}
sanity_check_commands = ['%(namelower)s-config --help',
'python -c "import %(namelower)s"']

sanity_check_commands = ['%(namelower)s-config --help']

moduleclass = 'perf'
9 changes: 7 additions & 2 deletions easybuild/easyconfigs/o/OTF2/OTF2-3.0.2-GCCcore-11.3.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
# Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany
# Authors:: Bernd Mohr <[email protected]>
# Markus Geimer <[email protected]>
# Jan Andre Reuter <[email protected]>
# License:: 3-clause BSD
#
# This work is based on experiences from the UNITE project
Expand Down Expand Up @@ -34,17 +35,21 @@ builddependencies = [
dependencies = [
# SIONlib container support (optional):
('SIONlib', '1.7.7', '-tools'),
# OTF2 Python bindings
('Python', '3.10.4'),
]

local_pyshortver = '3.10'
configopts = '--enable-shared'

modextrapaths = {'PYTHONPATH': ['lib64/python%s/site-packages' % local_pyshortver]}

sanity_check_paths = {
'files': ['bin/otf2-config', 'include/otf2/otf2.h',
'lib/libotf2.a', 'lib/libotf2.%s' % SHLIB_EXT],
'dirs': [],
}

sanity_check_commands = ['%(namelower)s-config --help']
sanity_check_commands = ['%(namelower)s-config --help',
'python -c "import %(namelower)s"']

moduleclass = 'perf'
9 changes: 7 additions & 2 deletions easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-12.2.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
# Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany
# Authors:: Bernd Mohr <[email protected]>
# Markus Geimer <[email protected]>
# Jan Andre Reuter <[email protected]>
# License:: 3-clause BSD
#
# This work is based on experiences from the UNITE project
Expand Down Expand Up @@ -34,17 +35,21 @@ builddependencies = [
dependencies = [
# SIONlib container support (optional):
('SIONlib', '1.7.7', '-tools'),
# OTF2 Python bindings
('Python', '3.10.8'),
]

local_pyshortver = '3.10'
configopts = '--enable-shared'

modextrapaths = {'PYTHONPATH': ['lib64/python%s/site-packages' % local_pyshortver]}

sanity_check_paths = {
'files': ['bin/otf2-config', 'include/otf2/otf2.h',
'lib/libotf2.a', 'lib/libotf2.%s' % SHLIB_EXT],
'dirs': [],
}

sanity_check_commands = ['%(namelower)s-config --help']
sanity_check_commands = ['%(namelower)s-config --help',
'python -c "import %(namelower)s"']

moduleclass = 'perf'
10 changes: 8 additions & 2 deletions easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-12.3.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
# Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany
# Authors:: Bernd Mohr <[email protected]>
# Markus Geimer <[email protected]>
# Jan Andre Reuter <[email protected]>
# License:: 3-clause BSD
#
# This work is based on experiences from the UNITE project
Expand Down Expand Up @@ -34,17 +35,22 @@ builddependencies = [
dependencies = [
# SIONlib container support (optional):
('SIONlib', '1.7.7', '-tools'),
# OTF2 Python bindings
('Python', '3.11.3'),
('Python-bundle-PyPI', '2023.06'),
]

local_pyshortver = '3.11'
configopts = '--enable-shared'

modextrapaths = {'PYTHONPATH': ['lib64/python%s/site-packages' % local_pyshortver]}

sanity_check_paths = {
'files': ['bin/otf2-config', 'include/otf2/otf2.h',
'lib/libotf2.a', 'lib/libotf2.%s' % SHLIB_EXT],
'dirs': [],
}

sanity_check_commands = ['%(namelower)s-config --help']
sanity_check_commands = ['%(namelower)s-config --help',
'python -c "import %(namelower)s"']

moduleclass = 'perf'
10 changes: 8 additions & 2 deletions easybuild/easyconfigs/o/OTF2/OTF2-3.0.3-GCCcore-13.2.0.eb
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
# Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany
# Authors:: Bernd Mohr <[email protected]>
# Markus Geimer <[email protected]>
# Jan Andre Reuter <[email protected]>
# License:: 3-clause BSD
#
# This work is based on experiences from the UNITE project
Expand Down Expand Up @@ -34,17 +35,22 @@ builddependencies = [
dependencies = [
# SIONlib container support (optional):
('SIONlib', '1.7.7', '-tools'),
# OTF2 Python bindings
('Python', '3.11.5'),
('Python-bundle-PyPI', '2023.10'),
]

local_pyshortver = '3.11'
configopts = '--enable-shared'

modextrapaths = {'PYTHONPATH': ['lib64/python%s/site-packages' % local_pyshortver]}

sanity_check_paths = {
'files': ['bin/otf2-config', 'include/otf2/otf2.h',
'lib/libotf2.a', 'lib/libotf2.%s' % SHLIB_EXT],
'dirs': [],
}

sanity_check_commands = ['%(namelower)s-config --help']
sanity_check_commands = ['%(namelower)s-config --help',
'python -c "import %(namelower)s"']
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would suggest to use -s here as otherwise the $HOME packages might be used causing failures/success:

-                         'python -c "import %(namelower)s"']
+                         'python -s -c "import %(namelower)s"']

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, it makes sense to include that flag, just to make sure that nothing breaks because of user packages. Do you want to make a follow-up PR? I probably don't have the time for that today.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done: #21362 which also does the same for other existing ECs

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Flamefire This is relevant for several easyblocks too where we use python -c?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes it is

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


moduleclass = 'perf'
Loading