source: CPL/oasis3-mct_5.0/util/make_dir/make.gfortran10.2.0_openmpi4.1.0_fundy @ 6328

Last change on this file since 6328 was 6328, checked in by aclsce, 17 months ago

First import of oasis3-mct_5.0 (from oasis git server, branch OASIS3-MCT_5.0)

File size: 2.4 KB
Line 
1#
2# Include file for OASIS3 Makefile for a Linux system using
3# Portland Group Fortran Compiler and MPICH
4#  Dans .bashrc
5#  module load openmpi/410_gcc1020
6#
7###############################################################################
8#
9# CHAN  : communication technique used in OASIS3 (MPI1/MPI2)
10CHAN            = MPI1
11#
12# Paths for libraries, object files and binaries
13#
14# COUPLE        : path for oasis3 main directory
15COUPLE          = $(HOME)/oasis3-mct
16#
17# ARCHDIR       : directory created when compiling
18ARCHDIR         = $(COUPLE)/compile_oa3-mct_gfopenmpi_openmp
19#
20# MPI library
21MPIDIR      = /usr/local/openmpi/4.1.0_gcc1020
22MPIBIN      = $(MPIDIR)/bin
23MPI_INCLUDE = $(MPIDIR)/include
24MPILIB      = -L$(MPIDIR)/lib -lmpi
25MPIRUN      = $(MPIBIN)/mpirun --oversubscribe
26#
27# NETCDF library of the system
28NETCDF_INCLUDE = /usr/local/netcdf-fortran/4.4.4_gcc1020/include
29NETCDF_LIBRARY = -L/usr/local/netcdf-fortran/4.4.4_gcc1020/lib -Wl,-rpath,/usr/local/netcdf-fortran/4.4.4_gcc1020/lib -lnetcdff -lnetcdf -lm
30#
31# Compiling and other commands
32MAKE        = gmake
33F90         = $(MPIBIN)/mpif90 -I$(MPI_INCLUDE)
34F           = $(F90)
35f90         = $(F90)
36f           = $(F90)
37CC          = $(MPIBIN)/mpicc -I$(MPI_INCLUDE)
38LD          = $(MPIBIN)/mpif90 $(MPILIB)
39# Static libraries compilation options
40STATOPT     =
41# Shared libraries options
42DYNOPT      = -fPIC
43LDDYNOPT    = -shared
44AR          = ar
45ARFLAGS     = -ruv
46# Fortran libraries for C linking
47F2C_LIBS    = -lmpi_mpifh -lgfortran -lm
48#
49# CPP keys and compiler options
50
51CPPDEF    = -Duse_comm_$(CHAN) -D__VERBOSE -DTREAT_OVERLAY
52#
53#
54FCBASEFLAGS = -O2 -fallow-argument-mismatch -ffree-line-length-0 -fopenmp
55#FCBASEFLAGS  = -g -fallow-argument-mismatch -ffree-line-length-0 -fbounds-check -fopenmp
56CCBASEFLAGS  = -fopenmp
57#
58# INC_DIR : includes all *mod for each library
59 INC_DIR = -I$(ARCHDIR)/include
60# FLIBS : for toys when linking in local Makefile
61 FLIBS=${NETCDF_LIBRARY}
62###################
63#
64F90FLAGS    = $(FCBASEFLAGS) $(INC_DIR) $(CPPDEF) -I$(NETCDF_INCLUDE)
65f90FLAGS    = $(FCBASEFLAGS) $(INC_DIR) $(CPPDEF) -I$(NETCDF_INCLUDE)
66FFLAGS      = $(FCBASEFLAGS) $(INC_DIR) $(CPPDEF) -I$(NETCDF_INCLUDE)
67fFLAGS      = $(FCBASEFLAGS) $(INC_DIR) $(CPPDEF) -I$(NETCDF_INCLUDE)
68CCFLAGS     = $(CCBASEFLAGS) $(INC_DIR) $(CPPDEF) -I$(NETCDF_INCLUDE)
69LDFLAGS     = $(FCBASEFLAGS)
70F2C_LDFLAGS = $(F2C_LIBS)
71#
72#############################################################################
Note: See TracBrowser for help on using the repository browser.