Closed hiker closed 1 week ago
Thanks a lot for the review. I believe I have addressed most issues. Outstanding:
which
for tool availability (since using a specific command has the advantage that it tests things like ld_library_path), I moved this handling into the base class, which removes a lot of duplicate code (and still allows to customise the command to use per tool). I did use which
in one of the run_configs example.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
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 :)
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.