Skip to content

Commit b5301eb

Browse files
authored
Merge pull request #3985 from jedwards4b/fix_make_bld_flags
Update the esmf library module on cheyenne for all compilers, update gnu compiler to 10.1.0 on cheyenne. Fix an issue in build.py that was causing the ESMF_VERSION flags not to be available to the compile line (USE_ESMF_LIB=TRUE not USE_ESMF_LIB="TRUE") Test suite: scripts regression tests with intel, gnu and pgi compilers on cheyenne with cime_driver=nuopc Test baseline: Test namelist changes: Test status: bit for bit Fixes [CIME Github issue #] User interface changes?: Update gh-pages html (Y/N)?:
2 parents 8a3320c + 0c08936 commit b5301eb

File tree

3 files changed

+52
-42
lines changed

3 files changed

+52
-42
lines changed

config/cesm/machines/config_compilers.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -895,6 +895,12 @@ using a fortran linker.
895895
<CPPDEFS>
896896
<append MODEL="pio1"> -DNO_MPIMOD </append>
897897
</CPPDEFS>
898+
<FFLAGS>
899+
<!-- -fallow-argument-mismatch is needed for building with the mpich library with gfortran10;
900+
-fallow-invalid-boz is needed for some components that have non-standard uses of BOZ literal constants with gfortran10.
901+
See https://github.com/ESMCI/cime/issues/3846 for details. -->
902+
<append> -fallow-argument-mismatch -fallow-invalid-boz </append>
903+
</FFLAGS>
898904
<SLIBS>
899905
<append> -ldl </append>
900906
</SLIBS>

config/cesm/machines/config_machines.xml

Lines changed: 40 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -559,76 +559,76 @@ This allows using a different mpirun command to launch unit tests
559559
<command name="load">mkl</command>
560560
</modules>
561561
<modules compiler="gnu">
562-
<command name="load">gnu/9.1.0</command>
563-
<command name="load">openblas/0.3.6</command>
562+
<command name="load">gnu/10.1.0</command>
563+
<command name="load">openblas/0.3.9</command>
564564
</modules>
565565
<modules compiler="pgi">
566566
<command name="load">pgi/20.4</command>
567567
</modules>
568568
<modules compiler="intel" mpilib="!mpi-serial" DEBUG="TRUE">
569569
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/intel/19.1.1/</command>
570-
<command name="load">esmf-8.1.1-ncdfio-mpt-g</command>
570+
<command name="load">esmf-8.2.0b10-ncdfio-mpt-g</command>
571571
</modules>
572572
<modules compiler="intel" mpilib="!mpi-serial" DEBUG="FALSE">
573573
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/intel/19.1.1/</command>
574-
<command name="load">esmf-8.1.1-ncdfio-mpt-O</command>
574+
<command name="load">esmf-8.2.0b10-ncdfio-mpt-O</command>
575575
</modules>
576576
<modules compiler="intel" mpilib="mpi-serial" DEBUG="TRUE">
577577
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/intel/19.1.1/</command>
578-
<command name="load">esmf-8.1.1-ncdfio-mpiuni-g</command>
578+
<command name="load">esmf-8.2.0b10-ncdfio-mpiuni-g</command>
579579
</modules>
580580
<modules compiler="intel" mpilib="mpi-serial" DEBUG="FALSE">
581581
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/intel/19.1.1/</command>
582-
<command name="load">esmf-8.1.1-ncdfio-mpiuni-O</command>
582+
<command name="load">esmf-8.2.0b10-ncdfio-mpiuni-O</command>
583583
</modules>
584584
<modules compiler="gnu" mpilib="mpt" DEBUG="TRUE">
585-
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/gnu/9.1.0/</command>
586-
<command name="load">esmf-8.1.0b41-ncdfio-mpt-g</command>
585+
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/gnu/10.1.0/</command>
586+
<command name="load">esmf-8.2.0b10-ncdfio-mpt-g</command>
587587
</modules>
588588
<modules compiler="gnu" mpilib="mpt" DEBUG="FALSE">
589-
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/gnu/9.1.0/</command>
590-
<command name="load">esmf-8.1.0b41-ncdfio-mpt-O</command>
589+
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/gnu/10.1.0/</command>
590+
<command name="load">esmf-8.2.0b10-ncdfio-mpt-O</command>
591591
</modules>
592592
<modules compiler="gnu" mpilib="openmpi" DEBUG="TRUE">
593-
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/gnu/9.1.0/</command>
594-
<command name="load">esmf-8.1.0b41-ncdfio-openmpi-g</command>
593+
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/gnu/10.1.0/</command>
594+
<command name="load">esmf-8.2.0b10-ncdfio-openmpi-g</command>
595595
</modules>
596596
<modules compiler="gnu" mpilib="openmpi" DEBUG="FALSE">
597-
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/gnu/9.1.0/</command>
598-
<command name="load">esmf-8.1.0b41-ncdfio-openmpi-O</command>
597+
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/gnu/10.1.0/</command>
598+
<command name="load">esmf-8.2.0b10-ncdfio-openmpi-O</command>
599599
</modules>
600600
<modules compiler="gnu" mpilib="mpi-serial" DEBUG="TRUE">
601-
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/gnu/9.1.0/</command>
602-
<command name="load">esmf-8.1.0b41-ncdfio-mpiuni-g</command>
601+
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/gnu/10.1.0/</command>
602+
<command name="load">esmf-8.2.0b10-ncdfio-mpiuni-g</command>
603603
</modules>
604604
<modules compiler="gnu" mpilib="mpi-serial" DEBUG="FALSE">
605-
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/gnu/9.1.0/</command>
606-
<command name="load">esmf-8.1.0b41-ncdfio-mpiuni-O</command>
605+
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/gnu/10.1.0/</command>
606+
<command name="load">esmf-8.2.0b10-ncdfio-mpiuni-O</command>
607607
</modules>
608608

609609
<modules compiler="pgi" mpilib="mpt" DEBUG="TRUE">
610610
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/pgi/20.4/</command>
611-
<command name="load">esmf-8.1.0b41-ncdfio-mpt-g</command>
611+
<command name="load">esmf-8.2.0b10-ncdfio-mpt-g</command>
612612
</modules>
613613
<modules compiler="pgi" mpilib="mpt" DEBUG="FALSE">
614614
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/pgi/20.4/</command>
615-
<command name="load">esmf-8.1.0b41-ncdfio-mpt-O</command>
615+
<command name="load">esmf-8.2.0b10-ncdfio-mpt-O</command>
616616
</modules>
617617
<modules compiler="pgi" mpilib="openmpi" DEBUG="TRUE">
618618
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/pgi/20.4/</command>
619-
<command name="load">esmf-8.1.0b41-ncdfio-openmpi-g</command>
619+
<command name="load">esmf-8.2.0b10-ncdfio-openmpi-g</command>
620620
</modules>
621621
<modules compiler="pgi" mpilib="openmpi" DEBUG="FALSE">
622622
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/pgi/20.4/</command>
623-
<command name="load">esmf-8.1.0b41-ncdfio-openmpi-O</command>
623+
<command name="load">esmf-8.2.0b10-ncdfio-openmpi-O</command>
624624
</modules>
625625
<modules compiler="pgi" mpilib="mpi-serial" DEBUG="TRUE">
626626
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/pgi/20.4/</command>
627-
<command name="load">esmf-8.1.0b41-ncdfio-mpiuni-g</command>
627+
<command name="load">esmf-8.2.0b10-ncdfio-mpiuni-g</command>
628628
</modules>
629629
<modules compiler="pgi" mpilib="mpi-serial" DEBUG="FALSE">
630630
<command name="use">/glade/p/cesmdata/cseg/PROGS/modulefiles/esmfpkgs/pgi/20.4/</command>
631-
<command name="load">esmf-8.1.0b41-ncdfio-mpiuni-O</command>
631+
<command name="load">esmf-8.2.0b10-ncdfio-mpiuni-O</command>
632632
</modules>
633633
<modules mpilib="mpt" compiler="gnu">
634634
<command name="load">mpt/2.21</command>
@@ -637,7 +637,7 @@ This allows using a different mpirun command to launch unit tests
637637
</modules>
638638
<modules mpilib="mpt" compiler="intel">
639639
<command name="load">mpt/2.22</command>
640-
<command name="load">netcdf-mpi/4.7.4</command>
640+
<command name="load">netcdf-mpi/4.8.0</command>
641641
<command name="load">pnetcdf/1.12.2</command>
642642
</modules>
643643
<modules mpilib="mpt" compiler="pgi">
@@ -3052,35 +3052,35 @@ This allows using a different mpirun command to launch unit tests
30523052
<cmd_path lang="sh">module</cmd_path>
30533053
<cmd_path lang="csh">module</cmd_path>
30543054
<modules>
3055-
<command name="purge"/>
3055+
<command name="purge"/>
30563056
</modules>
30573057
<modules compiler="intel">
3058-
<command name="load">intel20.1/20.1.217</command>
3059-
<command name="load">intel20.1/szip/2.1.1</command>
3060-
<command name="load">cmake/3.17.3</command>
3061-
<command name="load">curl/7.70.0</command>
3058+
<command name="load">intel20.1/20.1.217</command>
3059+
<command name="load">intel20.1/szip/2.1.1</command>
3060+
<command name="load">cmake/3.17.3</command>
3061+
<command name="load">curl/7.70.0</command>
30623062
</modules>
30633063
<modules mpilib="mpi-serial">
3064-
<command name="load">intel20.1/hdf5/1.12.0</command>
3065-
<command name="load">intel20.1/netcdf/C_4.7.4-F_4.5.3_CXX_4.3.1</command>
3064+
<command name="load">intel20.1/hdf5/1.12.0</command>
3065+
<command name="load">intel20.1/netcdf/C_4.7.4-F_4.5.3_CXX_4.3.1</command>
30663066
</modules>
30673067
<modules mpilib="!mpi-serial">
3068-
<command name="load">impi20.1/19.7.217</command>
3069-
<command name="load">impi20.1/hdf5/1.12.0</command>
3070-
<command name="load">impi20.1/netcdf/C_4.7.4-F_4.5.3_CXX_4.3.1</command>
3071-
<command name="load">impi20.1/parallel-netcdf/1.12.1</command>
3068+
<command name="load">impi20.1/19.7.217</command>
3069+
<command name="load">impi20.1/hdf5/1.12.0</command>
3070+
<command name="load">impi20.1/netcdf/C_4.7.4-F_4.5.3_CXX_4.3.1</command>
3071+
<command name="load">impi20.1/parallel-netcdf/1.12.1</command>
30723072
</modules>
30733073
<modules compiler="intel" mpilib="!mpi-serial" DEBUG="TRUE">
3074-
<command name="load">impi20.1/esmf/8.0.1-intelmpi-64-g</command>
3074+
<command name="load">impi20.1/esmf/8.0.1-intelmpi-64-g</command>
30753075
</modules>
30763076
<modules compiler="intel" mpilib="!mpi-serial" DEBUG="FALSE">
3077-
<command name="load">impi20.1/esmf/8.0.1-intelmpi-64-O</command>
3077+
<command name="load">impi20.1/esmf/8.0.1-intelmpi-64-O</command>
30783078
</modules>
30793079
<modules compiler="intel" mpilib="mpi-serial" DEBUG="TRUE">
3080-
<command name="load">intel20.1/esmf/8.0.1-mpiuni-64-g</command>
3080+
<command name="load">intel20.1/esmf/8.0.1-mpiuni-64-g</command>
30813081
</modules>
30823082
<modules compiler="intel" mpilib="mpi-serial" DEBUG="FALSE">
3083-
<command name="load">intel20.1/esmf/8.0.1-mpiuni-64-O</command>
3083+
<command name="load">intel20.1/esmf/8.0.1-mpiuni-64-O</command>
30843084
</modules>
30853085
</module_system>
30863086
<environment_variables>

scripts/lib/CIME/build.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,13 @@ def xml_to_make_variable(case, varname, cmake=False):
5858
varvalue = case.get_value(varname)
5959
if varvalue is None:
6060
return ""
61-
if type(varvalue) == type(True):
61+
if isinstance(varvalue, bool):
6262
varvalue = stringify_bool(varvalue)
63-
return "{}{}=\"{}\" ".format("-D" if cmake else "", varname, varvalue)
63+
64+
if cmake or isinstance(varvalue, str):
65+
return "{}{}=\"{}\" ".format("-D" if cmake else "", varname, varvalue)
66+
else:
67+
return "{}={} ".format(varname, varvalue)
6468

6569
###############################################################################
6670
def uses_kokkos(case):

0 commit comments

Comments
 (0)