You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Some background: I was debugging a problem on summit and I discovered that I needed to have the pnetcdf link come earlier in the link line, so I changed the config_compilers.xml like this:
In other words, just moved the pnetcdf SLIBS append earlier. To my surprise, this had no impact on the link flag order generated in Macros.cmake. I checked out BuildTools/macroconditiontree.py and discovered that it does not appear to be order-preserving. Things are being sorted, stored in unordered dicts, and written without regard to the original order.
Since compilation and link flags can be order-sensitive, this strikes me as a fatal flaw... I think the entire BuildTools library may need to be rewritten.
The text was updated successfully, but these errors were encountered:
Change E3SM to use cmake macro file system
This is a big change for E3SM but should have no impact on other models and did not require big changes to CIME code.
This PR lays the groundwork for E3SM leaving the config_compilers.xml/BuildTools.configure behind for good, replacing that system with a Cmake-based cache file system that can, if needed, be used to generate a Makefile macro when needed (for some sharedlibs).
I will lay out detail documentation for this change when I create the corresponding PR in E3SM that activates these new macros.
Test suite: scripts_regression_tests (both with and without new macros in the host repo)
Test baseline:
Test namelist changes:
Test status: [bit for bit, roundoff, climate changing]
Fixes#3287Fixes#3446Fixes#3341Fixes#2965
User interface changes?:
Update gh-pages html (Y/N)?:
Some background: I was debugging a problem on summit and I discovered that I needed to have the pnetcdf link come earlier in the link line, so I changed the config_compilers.xml like this:
FROM:
TO:
In other words, just moved the pnetcdf SLIBS append earlier. To my surprise, this had no impact on the link flag order generated in Macros.cmake. I checked out BuildTools/macroconditiontree.py and discovered that it does not appear to be order-preserving. Things are being sorted, stored in unordered dicts, and written without regard to the original order.
Since compilation and link flags can be order-sensitive, this strikes me as a fatal flaw... I think the entire BuildTools library may need to be rewritten.
The text was updated successfully, but these errors were encountered: