Skip to content
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

Major build system enhancement: deprecate config_compilers.xml! #4537

Merged
merged 17 commits into from
Oct 7, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion cime
18 changes: 18 additions & 0 deletions cime_config/machines/cmake_macros/CNL.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
if (NOT MPILIB STREQUAL impi)
string(APPEND CMAKE_OPTS " -DCMAKE_SYSTEM_NAME=Catamount")
endif()
string(APPEND CPPDEFS " -DLINUX")
if (COMP_NAME STREQUAL gptl)
string(APPEND CPPDEFS " -DHAVE_NANOTIME -DBIT64 -DHAVE_VPRINTF -DHAVE_BACKTRACE -DHAVE_SLASHPROC -DHAVE_COMM_F2C -DHAVE_TIMES -DHAVE_GETTIMEOFDAY")
endif()
set(MPICC "cc")
set(MPICXX "CC")
set(MPIFC "ftn")
set(MPI_LIB_NAME "mpich")
set(MPI_PATH "$ENV{MPICH_DIR}")
set(NETCDF_PATH "$ENV{NETCDF_DIR}")
set(PIO_FILESYSTEM_HINTS "lustre")
set(PNETCDF_PATH "$ENV{PARALLEL_NETCDF_DIR}")
set(SCC "cc")
set(SCXX "CC")
set(SFC "ftn")
4 changes: 4 additions & 0 deletions cime_config/machines/cmake_macros/Darwin.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
string(APPEND CPPDEFS " -DSYSDARWIN")
if (COMP_CLASS STREQUAL cpl)
string(APPEND LDFLAGS " -all_load")
endif()
39 changes: 39 additions & 0 deletions cime_config/machines/cmake_macros/Macros.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
#
# Use this file to include the relevant macros based on
# machine/compiler settings. This file gets copied to CASEROOT
# and that's the one that gets included by the build system. Feel free
# to modify this file in the CASEROOT.
#
cmake_policy(SET CMP0057 NEW)

set(MACROS_DIR ${CASEROOT}/cmake_macros)

set(UNIVERSAL_MACRO ${MACROS_DIR}/universal.cmake)
set(COMPILER_MACRO ${MACROS_DIR}/${COMPILER}.cmake)
set(OS_MACRO ${MACROS_DIR}/${OS}.cmake)
set(MACHINE_MACRO ${MACROS_DIR}/${MACH}.cmake)
set(COMPILER_OS_MACRO ${MACROS_DIR}/${COMPILER}_${OS}.cmake)
set(COMPILER_MACHINE_MACRO ${MACROS_DIR}/${COMPILER}_${MACH}.cmake)

if (CONVERT_TO_MAKE)
get_cmake_property(VARS_BEFORE_BUILD_INTERNAL_IGNORE VARIABLES)
endif()

# Include order defines precedence
foreach (MACRO_FILE ${UNIVERSAL_MACRO} ${COMPILER_MACRO} ${OS_MACRO} ${MACHINE_MACRO} ${COMPILER_OS_MACRO} ${COMPILER_MACHINE_MACRO})
if (EXISTS ${MACRO_FILE})
include(${MACRO_FILE})
else()
message("No macro file found: ${MACRO_FILE}")
endif()
endforeach()

if (CONVERT_TO_MAKE)
get_cmake_property(VARS_AFTER VARIABLES)

foreach (VAR_AFTER IN LISTS VARS_AFTER)
if (NOT VAR_AFTER IN_LIST VARS_BEFORE_BUILD_INTERNAL_IGNORE)
message("E3SM_SET_MAKEFILE_VAR ${VAR_AFTER} := ${${VAR_AFTER}}")
endif()
endforeach()
endif()
26 changes: 26 additions & 0 deletions cime_config/machines/cmake_macros/cray.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
if (compile_threaded)
string(APPEND CFLAGS " -h omp")
endif()
if (DEBUG)
string(APPEND CFLAGS " -g -O0")
endif()
string(APPEND CPPDEFS " -DFORTRANUNDERSCORE -DNO_R16 -DCPRCRAY")
set(FC_AUTO_R8 "-s real64")
set(FFLAGS "-f free -N 255 -h byteswapio -em")
if (compile_threaded)
string(APPEND FFLAGS " -h omp")
endif()
if (NOT compile_threaded)
string(APPEND FFLAGS " -M1077")
endif()
if (DEBUG)
string(APPEND FFLAGS " -g -O0")
endif()
set(FFLAGS_NOOPT "-O0")
set(HAS_F2008_CONTIGUOUS "TRUE")
set(LDFLAGS "-Wl,--allow-multiple-definition -h byteswapio")
if (compile_threaded)
string(APPEND LDFLAGS " -h omp")
endif()
set(SUPPORTS_CXX "TRUE")
set(CXX_LINKER "FORTRAN")
21 changes: 21 additions & 0 deletions cime_config/machines/cmake_macros/cray_theta.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
if (NOT DEBUG)
string(APPEND CFLAGS " -O1")
endif()
if (NOT DEBUG)
string(APPEND FFLAGS " -O1")
endif()
if (COMP_NAME STREQUAL eam)
string(APPEND FFLAGS " -vector0")
endif()
set(CXX_LINKER "CXX")
set(KOKKOS_OPTIONS "--gcc-toolchain=/opt/gcc/9.3.0/snos --with-serial")
set(CXXFLAGS "-std=c++14")
if (compile_threaded)
string(APPEND CXXFLAGS " -fopenmp")
endif()
if (DEBUG)
string(APPEND CXXFLAGS " -g -Wall")
endif()
if (NOT DEBUG)
string(APPEND CXXFLAGS " -O1")
endif()
56 changes: 56 additions & 0 deletions cime_config/machines/cmake_macros/gnu.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
set(CFLAGS "-mcmodel=medium")
if (compile_threaded)
string(APPEND CFLAGS " -fopenmp")
endif()
if (DEBUG)
string(APPEND CFLAGS " -g -Wall -fbacktrace -fcheck=bounds -ffpe-trap=invalid,zero,overflow")
endif()
if (NOT DEBUG)
string(APPEND CFLAGS " -O")
endif()
if (COMP_NAME STREQUAL csm_share)
string(APPEND CFLAGS " -std=c99")
endif()
set(CXXFLAGS "-std=c++14")
if (compile_threaded)
string(APPEND CXXFLAGS " -fopenmp")
endif()
if (DEBUG)
string(APPEND CXXFLAGS " -g -Wall -fbacktrace")
endif()
if (NOT DEBUG)
string(APPEND CXXFLAGS " -O")
endif()
if (COMP_NAME STREQUAL cism)
string(APPEND CMAKE_OPTS " -D CISM_GNU=ON")
endif()
string(APPEND CPPDEFS " -DFORTRANUNDERSCORE -DNO_R16 -DCPRGNU")
if (DEBUG)
string(APPEND CPPDEFS " -DYAKL_DEBUG")
endif()
set(CXX_LINKER "FORTRAN")
set(FC_AUTO_R8 "-fdefault-real-8")
set(FFLAGS "-mcmodel=medium -fconvert=big-endian -ffree-line-length-none -ffixed-line-length-none")
if (compile_threaded)
string(APPEND FFLAGS " -fopenmp")
endif()
if (DEBUG)
string(APPEND FFLAGS " -g -Wall -fbacktrace -fcheck=bounds -ffpe-trap=zero,overflow")
endif()
if (NOT DEBUG)
string(APPEND FFLAGS " -O")
endif()
set(FFLAGS_NOOPT "-O0")
set(FIXEDFLAGS "-ffixed-form")
set(FREEFLAGS "-ffree-form")
set(HAS_F2008_CONTIGUOUS "FALSE")
if (compile_threaded)
string(APPEND LDFLAGS " -fopenmp")
endif()
set(MPICC "mpicc")
set(MPICXX "mpicxx")
set(MPIFC "mpif90")
set(SCC "gcc")
set(SCXX "g++")
set(SFC "gfortran")
set(SUPPORTS_CXX "TRUE")
15 changes: 15 additions & 0 deletions cime_config/machines/cmake_macros/gnu_anlworkstation.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
set(ALBANY_PATH "/projects/install/rhel6-x86_64/ACME/AlbanyTrilinos/Albany/build/install")
if (NOT DEBUG)
string(APPEND CFLAGS " -O2")
endif()
set(CXX_LIBS "-lstdc++")
if (NOT DEBUG)
string(APPEND FFLAGS " -O2")
endif()
execute_process(COMMAND $ENV{NETCDF_PATH}/bin/nf-config --flibs OUTPUT_VARIABLE SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0 OUTPUT_STRIP_TRAILING_WHITESPACE)
string(APPEND SLIBS " ${SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0} -lblas -llapack")
set(NETCDF_PATH "$ENV{NETCDF_PATH}")
set(PNETCDF_PATH "$ENV{PNETCDF_PATH}")
set(HDF5_PATH "$ENV{HDF5_PATH}")
set(SZIP_PATH "$ENV{SZIP_PATH}")
set(ZLIB_PATH "$ENV{ZLIB_PATH}")
12 changes: 12 additions & 0 deletions cime_config/machines/cmake_macros/gnu_anvil.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
if (COMP_NAME STREQUAL gptl)
string(APPEND CPPDEFS " -DHAVE_NANOTIME -DBIT64 -DHAVE_SLASHPROC -DHAVE_GETTIMEOFDAY")
endif()
set(PIO_FILESYSTEM_HINTS "gpfs")
execute_process(COMMAND $ENV{NETCDF_FORTRAN_PATH}/bin/nf-config --flibs OUTPUT_VARIABLE SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0 OUTPUT_STRIP_TRAILING_WHITESPACE)
string(APPEND SLIBS " ${SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0} -L$ENV{MKLROOT}/lib/intel64 -Wl,--no-as-needed -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -ldl")
execute_process(COMMAND $ENV{NETCDF_C_PATH}/bin/nc-config --libs OUTPUT_VARIABLE SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0 OUTPUT_STRIP_TRAILING_WHITESPACE)
string(APPEND SLIBS " ${SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0}")
set(CXX_LIBS "-lstdc++")
set(NETCDF_C_PATH "$ENV{NETCDF_C_PATH}")
set(NETCDF_FORTRAN_PATH "$ENV{NETCDF_FORTRAN_PATH}")
set(PNETCDF_PATH "$ENV{PNETCDF_PATH}")
27 changes: 27 additions & 0 deletions cime_config/machines/cmake_macros/gnu_ascent.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
if (NOT DEBUG)
string(APPEND CFLAGS " -O2")
endif()
if (NOT DEBUG)
string(APPEND FFLAGS " -O2")
endif()
if (COMP_NAME STREQUAL gptl)
string(APPEND CPPDEFS " -DHAVE_SLASHPROC")
endif()
if (MPILIB STREQUAL mpi-serial)
string(APPEND SLIBS " -L$ENV{NETCDF_C_PATH}/lib -lnetcdf -L$ENV{NETCDF_FORTRAN_PATH}/lib -lnetcdff -L$ENV{ESSL_PATH}/lib64 -lessl -L$ENV{OLCF_NETLIB_LAPACK_ROOT}/lib -llapack")
endif()
if (NOT MPILIB STREQUAL mpi-serial)
string(APPEND SLIBS " -L$ENV{PNETCDF_PATH}/lib -lpnetcdf -L$ENV{HDF5_PATH}/lib -lhdf5_hl -lhdf5 -L$ENV{NETCDF_C_PATH}/lib -lnetcdf -L$ENV{NETCDF_FORTRAN_PATH}/lib -lnetcdff -L$ENV{ESSL_PATH}/lib64 -lessl -L$ENV{OLCF_NETLIB_LAPACK_ROOT}/lib -llapack")
endif()
set(CXX_LIBS "-lstdc++")
set(MPICC "mpicc")
set(MPICXX "mpiCC")
set(MPIFC "mpif90")
set(SCC "gcc")
set(SCXX "g++")
set(SFC "gfortran")
set(PIO_FILESYSTEM_HINTS "gpfs")
set(NETCDF_C_PATH "$ENV{NETCDF_C_PATH}")
set(NETCDF_FORTRAN_PATH "$ENV{NETCDF_FORTRAN_PATH}")
set(PNETCDF_PATH "$ENV{PNETCDF_PATH}")
set(SUPPORTS_CXX "TRUE")
16 changes: 16 additions & 0 deletions cime_config/machines/cmake_macros/gnu_badger.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
set(PIO_FILESYSTEM_HINTS "lustre")
set(MPICC "mpicc")
set(MPIFC "mpif90")
set(MPICXX "mpic++")
set(SFC "gfortran")
set(SCC "gcc")
set(SCXX "g++")
execute_process(COMMAND nc-config --libs OUTPUT_VARIABLE SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0 OUTPUT_STRIP_TRAILING_WHITESPACE)
string(APPEND SLIBS " ${SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0}")
execute_process(COMMAND nf-config --flibs OUTPUT_VARIABLE SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0 OUTPUT_STRIP_TRAILING_WHITESPACE)
string(APPEND SLIBS " ${SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0} -lnetcdff -llapack -lblas")
string(APPEND SLIBS " $ENV{MKLROOT}/lib/intel64/libmkl_scalapack_lp64.a -Wl,--start-group $ENV{MKLROOT}/lib/intel64/libmkl_intel_lp64.a $ENV{MKLROOT}/lib/intel64/libmkl_core.a $ENV{MKLROOT}/lib/intel64/libmkl_sequential.a -Wl,--end-group $ENV{MKLROOT}/lib/intel64/libmkl_blacs_intelmpi_lp64.a -lpthread -lm -lz")
set(CXX_LIBS "-lstdc++")
set(NETCDF_C_PATH "$ENV{NETCDF_PATH}")
set(NETCDF_FORTRAN_PATH "$ENV{NETCDF_PATH}")
set(PNETCDF_PATH "$ENV{PNETCDF_PATH}")
11 changes: 11 additions & 0 deletions cime_config/machines/cmake_macros/gnu_bebop.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
if (COMP_NAME STREQUAL gptl)
string(APPEND CPPDEFS " -DHAVE_SLASHPROC")
endif()
set(CXX_LIBS "-lstdc++")
execute_process(COMMAND $ENV{NETCDF_FORTRAN_PATH}/bin/nf-config --flibs OUTPUT_VARIABLE SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0 OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND $ENV{NETCDF_C_PATH}/bin/nc-config --libs OUTPUT_VARIABLE SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE1 OUTPUT_STRIP_TRAILING_WHITESPACE)
string(APPEND SLIBS " ${SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0} ${SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE1}")
string(APPEND SLIBS " -L$ENV{MKLROOT}/lib/intel64 -Wl,--no-as-needed -lmkl_gf_lp64 -lmkl_sequential -lmkl_core -lpthread -lm -ldl")
set(NETCDF_C_PATH "$ENV{NETCDF_C_PATH}")
set(NETCDF_FORTRAN_PATH "$ENV{NETCDF_FORTRAN_PATH}")
set(PNETCDF_PATH "$ENV{PNETCDF_PATH}")
33 changes: 33 additions & 0 deletions cime_config/machines/cmake_macros/gnu_cades.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
if (compile_threaded)
string(APPEND CFLAGS " -fopenmp")
endif()
if (COMP_NAME STREQUAL cism)
string(APPEND CMAKE_OPTS " -D CISM_GNU=ON")
endif()
string(APPEND CPPDEFS " -DFORTRANUNDERSCORE -DNO_R16")
set(CXX_LINKER "FORTRAN")
set(FC_AUTO_R8 "-fdefault-real-8")
set(FFLAGS "-O -fconvert=big-endian -ffree-line-length-none -ffixed-line-length-none -fno-range-check")
if (compile_threaded)
string(APPEND FFLAGS " -fopenmp")
endif()
if (DEBUG)
string(APPEND FFLAGS " -g -Wall")
endif()
set(FIXEDFLAGS "-ffixed-form")
set(FREEFLAGS "-ffree-form")
set(HDF5_PATH "/software/dev_tools/swtree/cs400_centos7.2_pe2016-08/hdf5-parallel/1.8.17/centos7.2_gnu5.3.0")
set(NETCDF_PATH "/software/dev_tools/swtree/cs400_centos7.2_pe2016-08/netcdf-hdf5parallel/4.3.3.1/centos7.2_gnu5.3.0")
set(PNETCDF_PATH "/software/dev_tools/swtree/cs400_centos7.2_pe2016-08/pnetcdf/1.9.0/centos7.2_gnu5.3.0")
set(LAPACK_LIBDIR "/software/tools/compilers/intel_2017/mkl/lib/intel64")
if (compile_threaded)
string(APPEND LDFLAGS " -fopenmp")
endif()
string(APPEND SLIBS " -L${NETCDF_PATH}/lib -Wl,-rpath=${NETCDF_PATH}/lib -lnetcdff -lnetcdf")
set(MPICC "mpicc")
set(MPICXX "mpic++")
set(MPIFC "mpif90")
set(SCC "gcc")
set(SCXX "gcpp")
set(SFC "gfortran")
set(SUPPORTS_CXX "TRUE")
12 changes: 12 additions & 0 deletions cime_config/machines/cmake_macros/gnu_chrysalis.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
if (COMP_NAME STREQUAL gptl)
string(APPEND CPPDEFS " -DHAVE_NANOTIME -DBIT64 -DHAVE_SLASHPROC -DHAVE_GETTIMEOFDAY")
endif()
set(PIO_FILESYSTEM_HINTS "gpfs")
execute_process(COMMAND $ENV{NETCDF_FORTRAN_PATH}/bin/nf-config --flibs OUTPUT_VARIABLE SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0 OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND $ENV{NETCDF_C_PATH}/bin/nc-config --libs OUTPUT_VARIABLE SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE1 OUTPUT_STRIP_TRAILING_WHITESPACE)
string(APPEND SLIBS " ${SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0} ${SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE1}")
string(APPEND SLIBS " -Wl,--start-group $ENV{MKLROOT}/lib/intel64/libmkl_gf_lp64.a $ENV{MKLROOT}/lib/intel64/libmkl_sequential.a $ENV{MKLROOT}/lib/intel64/libmkl_core.a -Wl,--end-group -lpthread -lm -ldl")
set(CXX_LIBS "-lstdc++")
set(NETCDF_C_PATH "$ENV{NETCDF_C_PATH}")
set(NETCDF_FORTRAN_PATH "$ENV{NETCDF_FORTRAN_PATH}")
set(PNETCDF_PATH "$ENV{PNETCDF_PATH}")
7 changes: 7 additions & 0 deletions cime_config/machines/cmake_macros/gnu_cori-haswell.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
if (NOT DEBUG)
string(APPEND CFLAGS " -O2")
endif()
if (NOT DEBUG)
string(APPEND FFLAGS " -O2")
endif()
set(CXX_LIBS "-lstdc++")
7 changes: 7 additions & 0 deletions cime_config/machines/cmake_macros/gnu_cori-knl.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
if (NOT DEBUG)
string(APPEND CFLAGS " -O2")
endif()
if (NOT DEBUG)
string(APPEND FFLAGS " -O2")
endif()
set(CXX_LIBS "-lstdc++")
18 changes: 18 additions & 0 deletions cime_config/machines/cmake_macros/gnu_eddi.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
set(SUPPORTS_CXX "TRUE")
if (COMP_NAME STREQUAL gptl)
string(APPEND CPPDEFS " -DHAVE_VPRINTF -DHAVE_GETTIMEOFDAY -DHAVE_BACKTRACE")
endif()
set(NETCDF_PATH "$ENV{NETCDF_HOME}")
if (NOT DEBUG)
string(APPEND FFLAGS " -fno-unsafe-math-optimizations")
endif()
if (DEBUG)
string(APPEND FFLAGS " -g -fbacktrace -fbounds-check -ffpe-trap=invalid,zero,overflow")
endif()
string(APPEND SLIBS " -L$ENV{NETCDF_HOME}/lib/ -lnetcdff -lnetcdf -lcurl -llapack -lblas")
if (MPILIB STREQUAL mpi-serial)
set(SCC "gcc")
endif()
if (MPILIB STREQUAL mpi-serial)
set(SFC "gfortran")
endif()
20 changes: 20 additions & 0 deletions cime_config/machines/cmake_macros/gnu_gcp.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
set(SUPPORTS_CXX "TRUE")
if (COMP_NAME STREQUAL gptl)
string(APPEND CPPDEFS " -DHAVE_VPRINTF -DHAVE_GETTIMEOFDAY -DHAVE_BACKTRACE -DHAVE_SLASHPROC")
endif()
set(CXX_LIBS "-lstdc++")
if (NOT DEBUG)
string(APPEND FFLAGS " -fno-unsafe-math-optimizations")
endif()
if (DEBUG)
string(APPEND FFLAGS " -g -fbacktrace -fbounds-check -ffpe-trap=invalid,zero,overflow")
endif()
string(APPEND SLIBS " -L$ENV{HDF5_PATH}/lib -lhdf5_fortran -lhdf5 -lhdf5_hl -lhdf5hl_fortran")
string(APPEND SLIBS " -L$ENV{NETCDF_C_PATH}/lib -lnetcdf -L$ENV{NETCDF_FORTRAN_PATH}/lib -lnetcdff")
string(APPEND SLIBS " -L$ENV{CURL_PATH}/lib -lcurl -lblas -llapack")
string(APPEND SLIBS " -L$ENV{LAPACK_PATH}/lib64 -lblas -llapack")
string(APPEND SLIBS " -L$ENV{PNETCDF_PATH}/lib -lpnetcdf")
set(HDF5_PATH "$ENV{HDF5_PATH}")
set(NETCDF_C_PATH "$ENV{NETCDF_C_PATH}")
set(NETCDF_FORTRAN_PATH "$ENV{NETCDF_FORTRAN_PATH}")
set(PNETCDF_PATH "$ENV{PNETCDF_PATH}")
16 changes: 16 additions & 0 deletions cime_config/machines/cmake_macros/gnu_grizzly.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
set(PIO_FILESYSTEM_HINTS "lustre")
set(MPICC "mpicc")
set(MPIFC "mpif90")
set(MPICXX "mpic++")
set(SFC "gfortran")
set(SCC "gcc")
set(SCXX "g++")
execute_process(COMMAND nc-config --libs OUTPUT_VARIABLE SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0 OUTPUT_STRIP_TRAILING_WHITESPACE)
string(APPEND SLIBS " ${SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0}")
execute_process(COMMAND nf-config --flibs OUTPUT_VARIABLE SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0 OUTPUT_STRIP_TRAILING_WHITESPACE)
string(APPEND SLIBS " ${SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0} -lnetcdff -llapack -lblas")
string(APPEND SLIBS " $ENV{MKLROOT}/lib/intel64/libmkl_scalapack_lp64.a -Wl,--start-group $ENV{MKLROOT}/lib/intel64/libmkl_intel_lp64.a $ENV{MKLROOT}/lib/intel64/libmkl_core.a $ENV{MKLROOT}/lib/intel64/libmkl_sequential.a -Wl,--end-group $ENV{MKLROOT}/lib/intel64/libmkl_blacs_intelmpi_lp64.a -lpthread -lm -lz")
set(CXX_LIBS "-lstdc++")
set(NETCDF_C_PATH "$ENV{NETCDF_PATH}")
set(NETCDF_FORTRAN_PATH "$ENV{NETCDF_PATH}")
set(PNETCDF_PATH "$ENV{PNETCDF_PATH}")
14 changes: 14 additions & 0 deletions cime_config/machines/cmake_macros/gnu_jlse.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
string(APPEND CPPDEFS " -DHAVE_SLASHPROC")
if (NOT DEBUG)
string(APPEND CFLAGS " -O2")
endif()
if (NOT DEBUG)
string(APPEND FFLAGS " -O2")
endif()
execute_process(COMMAND $ENV{NETCDF_PATH}/bin/nf-config --flibs OUTPUT_VARIABLE SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0 OUTPUT_STRIP_TRAILING_WHITESPACE)
string(APPEND SLIBS " ${SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0} -Wl,-rpath -Wl,$ENV{NETCDF_PATH}/lib")
execute_process(COMMAND $ENV{NETCDF_PATH}/bin/nc-config --libs OUTPUT_VARIABLE SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0 OUTPUT_STRIP_TRAILING_WHITESPACE)
string(APPEND SLIBS " ${SHELL_CMD_OUTPUT_BUILD_INTERNAL_IGNORE0}")
string(APPEND SLIBS " -L/home/azamat/soft/libs -llapack -lblas")
set(NETCDF_PATH "$ENV{NETCDF_PATH}")
set(PNETCDF_PATH "$ENV{PNETCDF_PATH}")
Loading