fix use of compiler-specific --optarch value in combination with --job#2183
fix use of compiler-specific --optarch value in combination with --job#2183boegel merged 5 commits intoeasybuilders:developfrom
Conversation
|
lgtm, let's wait for confirmation from @mstud? |
|
As already mentioned in #2182, it is unfortunately not sufficient to fix the issue. While using |
|
Argh. @boegel why/where is it that happening? Shouldn't the options be keep verbatim, if they are going to be "reprocessed"? |
|
@damianam https://github.com/hpcugent/easybuild-framework/blob/master/easybuild/tools/parallelbuild.py#L136 It quotes the arguments to make sure the shell doesn't trip over them, but it seems like something is going wrong in this case, @mstud Can you look up the log line that says |
It seems like |
|
@damianam We could probably fix this by using the (monkey-patched) |
|
I guess it's not relevant anymore after damianam's discovery, but in the |
|
@boegel that will result in a token like this: Looks to me like we need to write a method to append options to a string, and wrap them around in quotes just if there are spaces outside of any quoted area. Something like this maybe? It is ugly, I know, I don't like it either....... |
|
The problem is in Here's what [..., '--optarch=\'"GCC:O3 -mtune=generic;Intel:O3 -xHost"\'', ...]So, we'll need to fix Options values that include spaces are quite rare, so this hasn't popped up before. |
|
@damianam problems should be fixed with additional changes in damianam#2, confirmed by enhanced tests |
fix eb_shell_quote + stop using list2cmdline in submit_jobs
|
@mstud Please verify whether the additional changes fix your problem? |
|
@boegel Yes, it works properly now both with and without --job. Thank you very much. |
Fixes #2182