@@ -373,7 +373,13 @@ ifeq ($(strip $(MPILIB)), mpi-serial)
373
373
MPIFC := $(SFC )
374
374
MPICC := $(SCC )
375
375
MPICXX := $(SCXX )
376
- CONFIG_ARGS += MCT_PATH=$(SHAREDLIBROOT ) /$(SHAREDPATH ) /mct/mpi-serial
376
+ ifndef MPI_SERIAL_PATH
377
+ CONFIG_ARGS += MCT_PATH=$(SHAREDLIBROOT ) /$(SHAREDPATH ) /mct/mpi-serial
378
+ else
379
+ CONFIG_ARGS += MCT_PATH=$(MPI_SERIAL_PATH )
380
+ INC_MPI := $(MPI_SERIAL_PATH ) /include
381
+ LIB_MPI := $(MPI_SERIAL_PATH ) /lib
382
+ endif
377
383
else
378
384
CC := $(MPICC )
379
385
FC := $(MPIFC )
@@ -567,9 +573,9 @@ ifdef MPAS_LIBDIR
567
573
# used to build the MPAS dycore if needed.
568
574
libmpas : cam_abortutils.o physconst.o
569
575
$(MAKE ) -C $(MPAS_LIBDIR ) CC=" $( CC) " FC=" $( FC) " PIODEF=" $( PIODEF) " \
570
- FFLAGS ='$(FREEFLAGS ) $(FFLAGS ) ' GPUFLAGS='$(GPUFLAGS ) ' \
571
- CASEROOT='$(CASEROOT ) ' COMPILER='$(COMPILER ) ' MACH='$(MACH ) ' \
572
- FCINCLUDES='$(INCLDIR ) $(INCS ) -I$(ABS_INSTALL_SHAREDPATH ) /include -I$(ABS_ESMF_PATH ) /include'
576
+ FFLAGS=' $(FREEFLAGS) $(FFLAGS)' GPUFLAGS=' $(GPUFLAGS)' \
577
+ CASEROOT=' $(CASEROOT)' COMPILER=' $(COMPILER)' MACH=' $(MACH)' \
578
+ FCINCLUDES=' $(INCLDIR) $(INCS) -I$(ABS_INSTALL_SHAREDPATH)/include -I$(ABS_ESMF_PATH)/include'
573
579
574
580
dyn_comp.o : libmpas
575
581
dyn_grid.o : libmpas
@@ -595,10 +601,12 @@ ifdef LAPACK_LIBDIR
595
601
SLIBS += -L$(LAPACK_LIBDIR ) -llapack -lblas
596
602
endif
597
603
ifdef LIB_MPI
598
- ifndef MPI_LIB_NAME
599
- SLIBS += -L$(LIB_MPI ) -lmpi
600
- else
601
- SLIBS += -L$(LIB_MPI ) -l$(MPI_LIB_NAME )
604
+ ifndef MPI_SERIAL_PATH
605
+ ifndef MPI_LIB_NAME
606
+ SLIBS += -L$(LIB_MPI) -lmpi
607
+ else
608
+ SLIBS += -L$(LIB_MPI) -l$(MPI_LIB_NAME)
609
+ endif
602
610
endif
603
611
endif
604
612
@@ -919,12 +927,21 @@ GENF90 ?= $(CIMEROOT)/CIME/non_py/externals/genf90/genf90.pl
919
927
.SUFFIXES : .F90 .F .f90 .f .c .cpp .o .in
920
928
921
929
ifeq ($(MPILIB ) ,mpi-serial)
922
- MPISERIAL = $(INSTALL_SHAREDPATH ) /lib/libmpi-serial.a
923
- MLIBS += -L$(INSTALL_SHAREDPATH ) /lib -lmpi-serial
924
- CMAKE_OPTS += -DMPI_C_INCLUDE_PATH=$(INSTALL_SHAREDPATH ) /include \
930
+ ifdef MPI_SERIAL_PATH
931
+ MPISERIAL = $(MPI_SERIAL_PATH ) /lib/libmpi-serial.a
932
+ MLIBS += -L$(MPI_SERIAL_PATH ) /lib -lmpi-serial
933
+ CMAKE_OPTS += -DMPI_C_INCLUDE_PATH=$(MPI_SERIAL_PATH ) /include \
934
+ -DMPI_Fortran_INCLUDE_PATH=$(MPI_SERIAL_PATH ) /include \
935
+ -DMPI_C_LIBRARIES=$(MPI_SERIAL_PATH ) /lib/libmpi-serial.a \
936
+ -DMPI_Fortran_LIBRARIES=$(MPI_SERIAL_PATH ) /lib/libmpi-serial.a
937
+ else
938
+ MPISERIAL = $(INSTALL_SHAREDPATH ) /lib/libmpi-serial.a
939
+ MLIBS += -L$(INSTALL_SHAREDPATH ) /lib -lmpi-serial
940
+ CMAKE_OPTS += -DMPI_C_INCLUDE_PATH=$(INSTALL_SHAREDPATH ) /include \
925
941
-DMPI_Fortran_INCLUDE_PATH=$(INSTALL_SHAREDPATH ) /include \
926
942
-DMPI_C_LIBRARIES=$(INSTALL_SHAREDPATH ) /lib/libmpi-serial.a \
927
943
-DMPI_Fortran_LIBRARIES=$(INSTALL_SHAREDPATH ) /lib/libmpi-serial.a
944
+ endif
928
945
endif
929
946
930
947
$(MCTLIBS ) : $(MPISERIAL )
0 commit comments