-
Notifications
You must be signed in to change notification settings - Fork 337
Description
In ctsm5.1.dev172 we updated externals for config_machines.xml from version 2 to version 3. Right now both are allowed, but I expect eventually only version 3 will be supported. So we likely will need to switch at some point. And it will be easier to support if it's more similar to the way machines are currently setup in ccs_config/machines.
@billsacks and I worked out what we think needs to happen. The machine_configuration directory that's created needs a top level config_machines.xml file that will look something like this:
<config_machines version="3.0">
<NODENAME_REGEX>
<value MACH="ctsm-build">.*</value>
</NODENAME_REGEX>
<default_run_suffix>
<default_run_exe>$CIME_OUTPUT_ROOT/case/bld/cesm.exe </default_run_exe>
<default_run_misc_suffix> >> cesm.log 2>&1 </default_run_misc_suffix>
</default_run_suffix>
</config_machines>
beneath that will be a directory called "ctsm-build" for the LILAC generic machine with the normal contents of the config_machines.xml from before...
So something like...
<machine MACH="ctsm-build">
<!-- Text description of the machine -->
<DESC>Temporary build information for a CTSM build</DESC>
<!-- OS: the operating system of this machine. Passed to cppflags for
compiled programs as -DVALUE recognized are LINUX, AIX, Darwin, CNL -->
<OS>$OS</OS>
.
.
.
</machine>
I think the cmake macros file should also be in a cmake_macros subdirectory and named ctsm-build.cmake.