116 lines
2.3 KiB
Plaintext
116 lines
2.3 KiB
Plaintext
# Version "$Id: Makeinclude.Linux2_x86_64ifort 1 2017-06-10 18:05:20Z coats $"
|
|
#
|
|
# Michael Bane (UManchester UK) reports that for ifort version 9,
|
|
# -stack_temps -safe_cray_ptr are not supported and that there are
|
|
# problems with "-unroll" without an unroll-count (bug reported
|
|
# to Intel)
|
|
|
|
AR = ar
|
|
CC = mpicc
|
|
CXX = icpc
|
|
FC = mpifort -auto -warn notruncated_source -Bstatic -static-intel
|
|
M4 = m4
|
|
LINK = $(CC)
|
|
|
|
## Module-include-directory command
|
|
MODI = -I
|
|
E132 = -extend-source 132
|
|
|
|
# MFLAGS = -traceback # generic
|
|
# MFLAGS = -traceback -msse4.1 -xSSE4.1 # penryn
|
|
# MFLAGS = -traceback -mavx2 -xAVX -march=corei7-avx # SandyBridge
|
|
# MFLAGS = -traceback -mavx -xAVX2 -march=corei7-avx2 # Haswell
|
|
MFLAGS = -traceback -xHost # this-machine
|
|
|
|
OMPFLAGS = -qopenmp # for Intel compilers, version 15 or earlier
|
|
OMPLIBS = -openmp
|
|
# OMPFLAGS = -openmp -qopenmp
|
|
# OMPLIBS = -openmp -qopenmp -qopenmp-link=static -shared_intel
|
|
|
|
COPTFLAGS = -O3 ${MFLAGS}
|
|
FOPTFLAGS = -O3 -unroll -stack_temps -safe_cray_ptr \
|
|
-convert big_endian -assume byterecl ${MFLAGS}
|
|
FPPFLAGS = -DF90=1
|
|
FSFLAGS = -save
|
|
ARCHFLAGS = \
|
|
-DAUTO_ARRAYS=1 \
|
|
-DF90=1 -DFLDMN=1 \
|
|
-DFSTR_L=int \
|
|
-DIOAPI_NO_STDOUT=1 \
|
|
-DAVOID_FLUSH=1 -DBIT32=1
|
|
PARFLAGS =
|
|
ARCHLIB = -Bstatic
|
|
|
|
# M4DEFFILE = $(PVM_ROOT)/conf/$(PVM_ARCH).m4
|
|
# PVMLIBS = -L$(PVM_ROOT)/lib/$(PVM_ARCH) -lpvm3
|
|
|
|
PVMLIBS =
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AR = ar
|
|
CC = icc
|
|
CXX = icpc
|
|
FC = ifort
|
|
|
|
M4 = m4
|
|
LINK = $(FC)
|
|
|
|
MODI = -I
|
|
E132 = -extend-source 132
|
|
|
|
# Optimization
|
|
MFLAGS = -traceback -xHost
|
|
|
|
# OpenMP (modern Intel)
|
|
OMPFLAGS = -qopenmp
|
|
OMPLIBS = -qopenmp
|
|
|
|
# Compiler flags
|
|
COPTFLAGS = -O3 $(MFLAGS)
|
|
|
|
FOPTFLAGS = -O3 -unroll \
|
|
-convert big_endian -assume byterecl \
|
|
$(MFLAGS)
|
|
|
|
FPPFLAGS = -DF90=1
|
|
FSFLAGS = -save
|
|
|
|
# Architecture flags
|
|
ARCHFLAGS = \
|
|
-DAUTO_ARRAYS=1 \
|
|
-DF90=1 -DFLDMN=1 \
|
|
-DFSTR_L=int \
|
|
-DIOAPI_NO_STDOUT=1 \
|
|
-DAVOID_FLUSH=1
|
|
|
|
# MPI + NetCDF (IMPORTANT)
|
|
PARFLAGS = -DIOAPI_PNCF=1
|
|
|
|
# Remove static linking (containers hate this)
|
|
ARCHLIB =
|
|
|
|
# Libraries (you must link these)
|
|
NETCDFLIB = -L$(NETCDF_LIBDIR) -lnetcdff -lnetcdf
|
|
MPILIBS = -lmpi
|
|
|
|
# Combine
|
|
LIBS = $(NETCDFLIB) $(MPILIBS) $(OMPLIBS)
|
|
|
|
PVMLIBS = |