Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# Define our compilers.................................
#
# MVAPICH2
MPI_HOME=/software/tools/mvapich2-1.6-pgi
F90 = $(MPI_HOME)/bin/mpif90
F77 = $(MPI_HOME)/bin/mpif90
CC = $(MPI_HOME)/bin/mpicc
AR=ar
BITS=_v0.2a-pgi_11.7-mvapich2_1.6
# Define FORTRAN compiler flags.......................
#
# For the PGI compiler
F90FLAGS = -O0
F77FLAGS = -O0
#F90FLAGS = -O1
#F77FLAGS = -O1
#F90FLAGS = -O2
#F77FLAGS = -O2
#F90FLAGS = -O3
#F77FLAGS = -O3
#F90FLAGS = -fast
#F77FLAGS = -fast
#F90FLAGS = -O0 -mp -tpp7 -g -debug all -check all -implicitnone -warn unused -fp-stack-check -heap-arrays -ftrapuv -check pointers -check bounds
#F77FLAGS = -O0 -mp -tpp7 -g -debug all -check all -implicitnone -warn unused -fp-stack-check -heap-arrays -ftrapuv -check pointers -check bounds
#F90FLAGS = -O0 -i8 -fp-model strict -g -debug all -implicitnone -fp-stack-check -heap-arrays -ftrapuv -check pointers
#F77FLAGS = -O0 -i8 -fp-model strict -g -debug all -implicitnone -fp-stack-check -heap-arrays -ftrapuv -check pointers
#F90FLAGS = -O0 -fp-model strict -g -debug all -traceback
#F77FLAGS = -O0 -fp-model strict -g -debug all -traceback
#F90FLAGS = -O0 -check all -warn all,nodec,interfaces -gen_interfaces -traceback -fpe0
#F77FLAGS = -O0 -check all -warn all,nodec,interfaces -gen_interfaces -traceback -fpe0
# Define C compiler flags.............................
#
CFLAGS = -O0
#CFLAGS = -O1 -I.
#CFLAGS = -O2 -I.
#CFLAGS = -O3 -I.
#CFLAGS = -fast -I.
#CFLAGS = -O0 -DMKL_ILP64 -I. -fp-model strict -g -debug all
#CFLAGS = -O0 -I. -fp-model strict -g -debug all -traceback
#CFLAGS = -O0 -check all -warn all,nodec,interfaces -gen_interfaces -traceback -fpe0
# Libraries.............................
# ScaLAPACK
SCALAPACK = -L/software/libraries/SCALAPACK -lscalapack_mvapich2_pgi
# Blacs
#
BLACSCINIT = /software/libraries/BLACS/mvapich2-pgi/blacsCinit_MPI-LINUX-0.a
BLACSFINIT = /software/libraries/BLACS/mvapich2-pgi/blacsF77init_MPI-LINUX-0.a
BLACSL = /software/libraries/BLACS/mvapich2-pgi/blacs_MPI-LINUX-0.a
BLACSC = $(BLACSCINIT) $(BLACSL) $(BLACSCINIT)
BLACSF = $(BLACSFINIT) $(BLACSL) $(BLACSFINIT)
BLACS = $(BLACSC) $(BLACSF)
# MPI
MPI = -L$(MPI_HOME)/lib -lmpich
WSMP = /home/dwhipp/software/wsmp/wsmp-Linux64-Other_x86/lib/PGI
LIBS = \
-LOCTREE -lOctree$(BITS) \
-LNN -lnn_f$(BITS) \
-LNN -lnn_c$(BITS) \
-LCASCADE -lcascade$(BITS) \
-LRESAMPLE -lresample$(BITS) \
-L$(WSMP) -lpwsmp64 \
$(SCALAPACK) $(BLACS) \
$(MPI) -lpthread
# The Makefiles look at compile output with this
PAGER=more
# compile rules.......................................
#
COMPILE_OUT=$(NAME)$(BITS).compile
.SUFFIXES:
.SUFFIXES: .o .c .f .f90
.f90.o:
@echo "--" >>$(COMPILE_OUT) 2>&1
@echo "$(F90) $(F90FLAGS) $(INCLUDES) -c $<" >>$(COMPILE_OUT) 2>&1
$(F90) $(F90FLAGS) $(INCLUDES) -c $< >>$(COMPILE_OUT) 2>&1
.f.o:
@echo "--" >>$(COMPILE_OUT) 2>&1
@echo "$(F77) $(F77FLAGS) $(INCLUDES) -c $<" >>$(COMPILE_OUT) 2>&1
$(F77) $(F77FLAGS) $(INCLUDES) -c $< >>$(COMPILE_OUT) 2>&1
.c.o:
@echo "--" >>$(COMPILE_OUT) 2>&1
@echo "$(CC) $(CFLAGS) -c $<" >>$(COMPILE_OUT) 2>&1
$(CC) $(CFLAGS) -c $< >>$(COMPILE_OUT) 2>&1