Commit 2952f3c6608dcdae52e0a3b6173cb4349ffdba02
1 parent
f10a8fbdfd
Exists in
master
Added template for gfortran+openblas
Showing 1 changed file with 295 additions and 0 deletions Inline Diff
Make.inc.gfortran.openblas
File was created | 1 | |||
2 | # IMPORTANT : | |||
3 | # Variable BTREE must have been set to the build directory | |||
4 | # ( export BTREE=/home/daniau/plpmx/svn/build ) | |||
5 | # It is possible to build with the same sources under win32 with PGI Compiler | |||
6 | # For Windows : use a cygwin bash shell and set BTREE using cygwin path ex: | |||
7 | # export BTREE=/c/dev/build | |||
8 | ||||
9 | # Location of qmake utility for qt3 and qt4, this is specific to each linux distribution | |||
10 | QMAKE3=/usr/lib/qt3/bin/qmake | |||
11 | QMAKE4=/usr/bin/qmake | |||
12 | ||||
13 | # How many thread for Make Qt programs | |||
14 | #NBTHREAD=2 | |||
15 | ||||
16 | ############################################################################### | |||
17 | # | |||
18 | # Extensions | |||
19 | # | |||
20 | # This define the extension names for : | |||
21 | # + static libraries : libext | |||
22 | # + dynamic libraries : soext | |||
23 | # + executable : exext | |||
24 | # | |||
25 | # Uncomment the following according to your platform | |||
26 | ||||
27 | ||||
28 | # Windows | |||
29 | #libext=.lib | |||
30 | #exext=.exe | |||
31 | ||||
32 | ||||
33 | # Linux | |||
34 | # | |||
35 | libext=.a | |||
36 | soext=.so | |||
37 | exext= | |||
38 | ||||
39 | ############################################################################### | |||
40 | # | |||
41 | # Dynamic libraries | |||
42 | # | |||
43 | # Set BUILDSO to y to build dynamic versions of libraries if available | |||
44 | # | |||
45 | # This has been only tested with gfortran under linux for now | |||
46 | ############################################################################### | |||
47 | BUILDSO=n | |||
48 | ||||
49 | ############################################################################### | |||
50 | # | |||
51 | # OpenMP setup | |||
52 | # | |||
53 | # The variable OMP contains either nothing, either the compiler switch to | |||
54 | # enable OpenMP | |||
55 | # | |||
56 | # If you want to build a pure serial version leave OMP empty | |||
57 | # OMP = | |||
58 | # for PGI : | |||
59 | # OMP = -mp | |||
60 | # for gfortran : | |||
61 | # OMP = -fopenmp | |||
62 | ############################################################################### | |||
63 | OMP = -fopenmp | |||
64 | ||||
65 | ############################################################################### | |||
66 | # | |||
67 | # C Compiler Configuration | |||
68 | # | |||
69 | ############################################################################### | |||
70 | # | |||
71 | # CC = C compiler | |||
72 | # CFLAGS = flags that are used for compiling C files | |||
73 | # | |||
74 | # Debug setting : | |||
75 | # CC = gcc | |||
76 | # CFLAGS = -g -fpic -m64 | |||
77 | # | |||
78 | # Production setting : | |||
79 | # CC = gcc | |||
80 | # CFLAGS = -O2 -fpic -m64 | |||
81 | # | |||
82 | # Or for pgcc : | |||
83 | # CC = pgcc | |||
84 | # CFLAGS = -g -fpic | |||
85 | # or CFLAGS = -O2 -fpic | |||
86 | ||||
87 | # For Compiling under Windows 32bits with PGI add -DPGIW32 to CFLAGS | |||
88 | #CC = pgcc | |||
89 | #CFLAGS = -O2 -Bstatic -DPGIW32 | |||
90 | ||||
91 | CC = gcc | |||
92 | CFLAGS = -O2 -fpic -m64 | |||
93 | ||||
94 | ||||
95 | ############################################################################### | |||
96 | # | |||
97 | # Fortran 95 Compiler Configuration | |||
98 | # | |||
99 | ############################################################################### | |||
100 | # | |||
101 | # F95 = fortran 95 compiler | |||
102 | # F95FLAGS = flags to be used when building objects | |||
103 | # | |||
104 | # Debug settings | |||
105 | # F95 = pgf95 | |||
106 | # F95FLAGS = -g -fpic -I$(BTREE)/modules | |||
107 | # | |||
108 | # Production settings | |||
109 | # F95 = pgf95 | |||
110 | # F95FLAGS = -fastsse -Mipa=fast -fpic -I$(BTREE)/modules | |||
111 | # | |||
112 | # Note that .mod files will be put in $(BTREE)/modules by makefiles | |||
113 | # this is the reason for -I$(BTREE)/modules | |||
114 | # | |||
115 | # An other note for portland compiler at least : by default the compiler will use | |||
116 | # all possible optimisations for the current processor, so the binaries may or may not | |||
117 | # work on another one. For example a binary compiled on an Opteron64 may not work | |||
118 | # on an Intel x86_64. If you plan to use your binaries on different platforms, | |||
119 | # you should use the -tp option | |||
120 | # | |||
121 | # -tp k8-64 => produce a binary optimized for AMD Opteron family | |||
122 | # -tp p7-64 => produce a binary optimized for Intel x64 processors | |||
123 | # -tp x64 => produce an unified binary which will run on both AMD and Intel | |||
124 | # no -tp option => produce a binary optimized for the running processor | |||
125 | ||||
126 | #F95 = pgf95 | |||
127 | #F95FLAGS = -g -fpic -I$(BTREE)/modules | |||
128 | #F95FLAGS = -fastsse -fpic -I$(BTREE)/modules | |||
129 | F95 = gfortran | |||
130 | F95FLAGS = -ffree-line-length-none -O2 -fexternal-blas -fpic -I$(BTREE)/modules | |||
131 | ||||
132 | # For Compiling under Windows 32bits with PGI | |||
133 | # Paths for -I must be specified in a windows way (not cygwin way) | |||
134 | # that is -I"c:\dev\build\modules" and not -I/c/dev/build/modules | |||
135 | #F95 = pgf95 | |||
136 | #F95FLAGS = -g -Munix -Bstatic -I"c:\dev\build\modules" | |||
137 | ||||
138 | # Win32 production setting : | |||
139 | #F95FLAGS = -fastsse -Munix -Bstatic -I"c:\dev\build\modules" | |||
140 | ||||
141 | ############################################################################### | |||
142 | # | |||
143 | # Linking Configuration | |||
144 | # | |||
145 | ############################################################################### | |||
146 | # | |||
147 | # LINK = linker program, usually same as compiler | |||
148 | # LINKFLAGS = flags to be used when linking programs | |||
149 | # | |||
150 | # Debug settings | |||
151 | # LINK = pgf95 | |||
152 | # LINKFLAGS = -g -L$(BTREE)/lib | |||
153 | # | |||
154 | # Production settings | |||
155 | # LINK = pgf95 | |||
156 | # LINKFLAGS = -fastsse -Mipa=fast -L$(BTREE)/lib | |||
157 | # | |||
158 | # Note that .a files will be put in $(BTREE)/lib by makefiles | |||
159 | # this is the reason for -L$(BTREE)/lib | |||
160 | #LINK = pgf95 | |||
161 | #LINKFLAGS = -g -L$(BTREE)/lib | |||
162 | #LINKFLAGS = -fastsse -L$(BTREE)/lib | |||
163 | ||||
164 | LINK = gfortran | |||
165 | LINKFLAGS = -ffree-line-length-none -O2 -L$(BTREE)/lib | |||
166 | ||||
167 | # For Compiling under Windows 32bits with PGI | |||
168 | # Paths for -I must be specified in a windows way (not cygwin way) | |||
169 | # that is -L"c:\dev\build\lib" and not -I/c/dev/build/lib | |||
170 | #LINK = pgf95 | |||
171 | #LINKFLAGS = -g -Munix -Bstatic -L"c:\dev\build\lib" | |||
172 | ||||
173 | # Win32 production setting : | |||
174 | #LINKFLAGS = -fastsse -Munix -Bstatic -L"c:\dev\build\lib" | |||
175 | ||||
176 | ||||
177 | ############################################################################### | |||
178 | # | |||
179 | # BLAS/LAPACK/ACML Configuration | |||
180 | # | |||
181 | ############################################################################### | |||
182 | # | |||
183 | # Location of blas and lapack | |||
184 | # | |||
185 | # Commercial fortran compilers comes with their own optimized versions of blas | |||
186 | # and lapack. If you're running on an AMD processor, you should use acml | |||
187 | # http://developer.amd.com/acml.jsp , which is an optimized version of both | |||
188 | # blas and lapack (and also some more functionnalities). | |||
189 | # | |||
190 | # Our Portland Fortran compiler comes with the 3 libraries. As we're running | |||
191 | # AMD processors, we use acml. | |||
192 | # | |||
193 | # EXTERNALLIBPATH may contain a -Ldirectory directive | |||
194 | # LAPACK = directive for lapack | |||
195 | # BLAS = directive for blas | |||
196 | # ACML = directive for acml | |||
197 | # | |||
198 | # Example 1: | |||
199 | # EXTERNALLIBPATH = -L/usr/local/pgi/linux86-64/6.1/lib/ | |||
200 | # LAPACK = -llapack | |||
201 | # BLAS = -lblas | |||
202 | # ACML = | |||
203 | # | |||
204 | # Example 2: | |||
205 | # EXTERNALLIBPATH = | |||
206 | # LAPACK = /usr/local/pgi/linux86-64/6.1/lib/liblapack.a | |||
207 | # BLAS = /usr/local/pgi/linux86-64/6.1/lib/libblas.a | |||
208 | # ACML = | |||
209 | # | |||
210 | # Example 3: | |||
211 | # EXTERNALLIBPATH = -L/usr/local/pgi/linux86-64/6.1/lib/ | |||
212 | # LAPACK = | |||
213 | # BLAS = | |||
214 | # ACML = -lacml | |||
215 | # | |||
216 | # Example 4: | |||
217 | # EXTERNALLIBPATH = | |||
218 | # LAPACK = | |||
219 | # BLAS = | |||
220 | # ACML = /usr/local/pgi/linux86-64/6.1/lib/libacml.a | |||
221 | # | |||
222 | # Simple rule is that if you set ACML then leave BLAS and LAPACK empty. | |||
223 | # | |||
224 | # | |||
225 | ||||
226 | #EXTERNALLIBPATH = | |||
227 | #LAPACK = | |||
228 | #BLAS = | |||
229 | #ACML = /usr/local/pgi/linux86-64/7.0/lib/libacml.a | |||
230 | ||||
231 | # With gfortran and reference implementation | |||
232 | #EXTERNALLIBPATH = | |||
233 | #LAPACK = $(BTREE)/lib/lapack_LINUX.a | |||
234 | #BLAS = $(BTREE)/lib/blas_LINUX.a /usr/lib64/libgfortran.so.2 | |||
235 | #ACML = | |||
236 | ||||
237 | # With gfortran and acml | |||
238 | #EXTERNALLIBPATH = | |||
239 | #LAPACK = | |||
240 | #BLAS = | |||
241 | #ACML = /usr/local/acml4.1.0/gfortran64/lib/libacml.a /usr/lib64/libgfortran.so.2 | |||
242 | ||||
243 | # With atlas compiled with gfortran and gcc | |||
244 | # EXTERNALLIBPATH = | |||
245 | # LAPACK = $(BTREE)/lib/liblapack.a | |||
246 | # BLAS = $(BTREE)/lib/libf77blas.a $(BTREE)/lib/libcblas.a $(BTREE)/lib/libatlas.a | |||
247 | # ACML = | |||
248 | ||||
249 | # With dynamic versions of atlas compiled with gfortran and gcc | |||
250 | #EXTERNALLIBPATH = | |||
251 | #LAPACK = $(BTREE)/lib/liblapack.so | |||
252 | #BLAS = $(BTREE)/lib/libf77blas.so $(BTREE)/lib/libcblas.so $(BTREE)/lib/libatlas.so | |||
253 | #ACML = | |||
254 | ||||
255 | # With dynamic version of openblas | |||
256 | EXTERNALLIBPATH = | |||
257 | LAPACK = | |||
258 | BLAS = |