-
Notifications
You must be signed in to change notification settings - Fork 204
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
add 'rpath' toolchain option to selectively disable use of RPATH wrappers #2047
Conversation
included tests indicate that this works as intended, so I'll go ahead and merge this to include it in the upcoming EasyBuild v3.0.2 (I consider not being able to selectively disable use of RPATH a bug, so this is a bug fix). @pescobar let us know whether this works as expected for you when you find the time for it |
this seems to have an issue. see this build log I have enabled this option: But still the rpath sanity check is applied: |
@pescobar urgh, indeed, the RPATH sanity check should of course also be checked if no RPATH'ing was done... Try this patch? diff --git a/easybuild/framework/easyblock.py b/easybuild/framework/easyblock.py
index dbce5c3..8aa5cb3 100644
--- a/easybuild/framework/easyblock.py
+++ b/easybuild/framework/easyblock.py
@@ -1982,7 +1982,7 @@ class EasyBlock(object):
else:
self.dry_run_msg(" (none)")
- if build_option('rpath'):
+ if build_option('rpath') and self.toolchain.options.get('rpath', True):
self.sanity_check_rpath()
def _sanity_check_step(self, custom_paths=None, custom_commands=None, extension=False):
|
@boegel this patch doesn't seem to work
|
@pescobar I only patched the Try this (I'll open a PR with a proper fix in a bit): diff --git a/easybuild/framework/easyblock.py b/easybuild/framework/easyblock.py
index dbce5c3..49c2290 100644
--- a/easybuild/framework/easyblock.py
+++ b/easybuild/framework/easyblock.py
@@ -1982,7 +1982,8 @@ class EasyBlock(object):
else:
self.dry_run_msg(" (none)")
- if build_option('rpath'):
+ print self.toolchain.options
+ if build_option('rpath') and self.toolchain.options.get('rpath', True):
self.sanity_check_rpath()
def _sanity_check_step(self, custom_paths=None, custom_commands=None, extension=False):
@@ -2051,7 +2052,7 @@ class EasyBlock(object):
if fake_mod_data:
self.clean_up_fake_module(fake_mod_data)
- if build_option('rpath'):
+ if build_option('rpath') and self.toolchain.options.get('rpath', True):
rpath_fails = self.sanity_check_rpath()
if rpath_fails:
self.log.warning("RPATH sanity check failed!")
|
@pescobar this probably works, but needs to be tested. Can you give it a try?
I'll also look into a dedicated test for this.