-
Notifications
You must be signed in to change notification settings - Fork 24
/
Makeoptions.in
132 lines (123 loc) · 3.08 KB
/
Makeoptions.in
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
# @WARNING1@
# @WARNING2@
#===============================================================================
# FILE: Makeoptions.in
#
# PURPOSE: Template for src/Makeoptions. When 'configure' is run, a new
# Makeoptions will be created (overwriting the last) from this template.
#
# TO BY-PASS CONFIGURE: copy this file into Makeoptions, and edit by hand to
# set the appropriate object files, compiler options, and library paths.
#
#------------------- macro definitions ---------------------------------------
MACHINE = default
#------------------- default definitions -------------------------------------
CC = @CC@
LDR = @CC@
OPT = @COMPILER_OPTS@
CUSTLIBS =
MPIINC =
MPILIB =
FFTWLIB =
FFTWINC =
BLOCKINC =
BLOCKLIB =
CUSTLIBS = -ldl -lm
ifeq (@FFT_MODE@,FFT_ENABLED)
BLOCKINC = -I fftsrc
FFTWLIB = -L/usr/lib -lfftw3
FFTWINC = -I/usr/include
endif
ifeq (@MPI_MODE@,MPI_PARALLEL)
CC = mpicc
LDR = mpicc
endif
#------------------- compiler/library definitions ----------------------------
# select using MACHINE=<name> in command line. For example
# ophir> make all MACHINE=ophir
# New machines can be added to ifeq blocks below.
ifeq ($(MACHINE),kraken)
CC = cc
LDR = cc
OPT = -O3
else
ifeq ($(MACHINE),ophir)
CC = /usr/peyton/intel/10.0/cce/bin/icc
LDR = /usr/peyton/intel/10.0/cce/bin/icc
OPT = -O3 -xW -ipo -i-static
FFTWLIB = -L/scr1/lemaster/fftw-3.1.2/lib -lfftw3
FFTWINC = -I/scr1/lemaster/fftw-3.1.2/include
else
ifeq ($(MACHINE),antares)
CC = icc
LDR = icc
ifeq (@MPI_MODE@,MPI_PARALLEL)
CC = /usr/peyton/openmpi/bin/mpicc
LDR = /usr/peyton/openmpi/bin/mpicc
endif
OPT = -O3 -g
MPIINC = -I/usr/peyton/openmpi/include
MPILIB = -L/usr/peyton/openmpi/lib -lmpi
FFTWLIB = -L/usr/local/fftw/gcc/3.3.3/lib64 -lfftw3
FFTWINC = -I/usr/local/fftw/gcc/3.3.3/include
else
ifeq ($(MACHINE),peyton-mpi)
CC = /usr/peyton/openmpi/bin/mpicc
LDR = /usr/peyton/openmpi/bin/mpicc
OPT = -O3 -g
MPIINC = -I/usr/peyton/openmpi/include
MPILIB = -L/usr/peyton/openmpi/lib -lmpi
FFTWLIB = -L/scr0/lemaster/fftw-3.1.2/lib -lfftw3
FFTWINC = -I/scr0/lemaster/fftw-3.1.2/include
else
ifeq ($(MACHINE),artemis)
CC = mpicc
LDR = mpicc
OPT = -O3 -xW -ipo -i-static
MPIINC =
MPILIB = -lmpi
FFTWLIB = -L/opt/fftw3/lib64 -lfftw3
FFTWINC = -I/opt/fftw3/include
else
ifeq ($(MACHINE),aether)
CC = mpicc
LDR = mpicc
OPT = -O3
MPIINC = -I~/lam-7.1.4/include
MPILIB = -L~/lam-7.1.4/lib
else
ifeq ($(MACHINE),zenith)
CC = mpicc
LDR = mpicc
OPT = -O3
MPIINC = -I/opt/mpich2/intel/include
MPILIB = -L/opt/mpich2/intel/lib -lmpich
FFTWLIB = -L/usr/local/fftw3 -lfftw3
FFTWINC = -I/usr/local/fftw3
else
ifeq ($(MACHINE),macosx)
CC = gcc
LDR = gcc
OPT = -O3
FFTWLIB = -L/opt/local/lib -lfftw3
FFTWINC = -I/opt/local/include
else
abort Unsupported MACHINE=$(MACHINE)
endif
endif
endif
endif
endif
endif
endif
endif
ifeq (@MPI_MODE@,NO_MPI_PARALLEL)
MPIINC =
MPILIB =
endif
ifeq (@FFT_MODE@,NO_FFT)
FFTWINC =
FFTWLIB =
endif
CFLAGS = $(OPT) $(BLOCKINC) $(MPIINC) $(FFTWINC)
LIB = $(BLOCKLIB) $(MPILIB) $(FFTWLIB) $(CUSTLIBS)