-
Notifications
You must be signed in to change notification settings - Fork 3
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
3 better compiler support #309
3 better compiler support #309
Conversation
…`pytest tests` at source directory
Minor documentation update for #277.
278 absolute paths in compilation
…ed, as reported by CI pipeline on Github
#5 Fix test warnings
Thanks a lot for the review. I believe I have addressed most issues. Outstanding:
I believe there might be another issue or two that I should mentioned here, but I believe I have comments on all your feedback, so it will be in mu answers. I've opened a few tickets (#311, #312, #313, #314) to keep track of follow-up work. Thanks for the review |
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.
Good progress, I think we are close on this change.
Please conclude any conversations you are happy with to let me know that they are done with.
source/fab/tools/versioning.py
Outdated
def is_working_copy(self, path: Union[str, Path]) -> bool: | ||
""":returns: whether the given path is a working copy or not. It | ||
runs the command specific to the instance. | ||
|
||
:param path: directory to be checked. | ||
""" | ||
try: | ||
self.run([self._working_copy_command], cwd=path, | ||
capture_output=False) | ||
except RuntimeError: | ||
return False | ||
return True |
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.
Lets have it out and reduce this size of this change by a few lines.
OK, I believe I have addressed all issues, and as you suggested I closed all conversations where I think we have agreed :) I left a few things open where I think you should provide feedback to confirm :) |
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.
Time to take the plunge.
This is the big one - it introduces
Tool
as baseclass for anything called via subprocess (and removedrun_command
therefore). It introduces the ToolRepository and ToolBox. Best to read the documentation (atm site-specific-configuration.rst).Note that this is not really complete, outstanding issues are support for compiler-specific flags, better support for linking, handling openmp (so that we can trigger fparser's OMP sentinel handling instead of using a work around).
We did fix up the run_configs, but they won't really work better than before (as in, still hard-coded compiler etc). Once we have a fully working LFRic build system (including the above todos), we will update all the run configs.