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
Let mpi_family return None if MPI is not supported by a toolchain #1164
Conversation
rather than fail hard with an exception
Automatic reply from Jenkins: Can I test this? |
This makes perfect sense, thanks for looking into this @geimer! |
Jenkins: test this please |
Refer to this link for build results (access rights to CI server needed): |
Looks great, but I'd love to see a dedicated unit test for this, i.e. a new |
Jenkins: test this please |
Refer to this link for build results (access rights to CI server needed): |
|
||
# cleanup | ||
shutil.rmtree(tmpdir) | ||
open(imkl_module_path, 'w').write(imkl_module_txt) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
use write_file
here, and please also include this in the other places where the imkl
module is being fiddled with...
the problem is: if the test fails, the imkl
module will not be restored (this issue was already there, it's not something you're causing)
Jenkins: ok to test |
Looks perfect, I'll merge it as soon as Jenkins gives it a green light (last commit was untested). |
Refer to this link for build results (access rights to CI server needed): |
Looking good, so merging this in, thanks @geimer! |
Let mpi_family return None if MPI is not supported by a toolchain
Some easyblocks (e.g., Score-P) are used by multiple packages, some of which use MPI and others don't. Now, when building a package which doesn't use MPI with a subtoolchain (e.g., plain GCC), the easyblock will currently fail hard with an exception raised by the generic
mpi_family
implementation. This change allows the easyblock to check whether MPI is supported by the toolchain and then "do the right thing" (in case of Score-P, optionally pass the--with-mpi=
configure option).