Makefile.am 60.2 KB
Newer Older
1
## Process this file with automake to produce Makefile.in
2

3
ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4
4

Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
5
AM_FCFLAGS = $(SCALAPACK_FCFLAGS) $(FC_MODINC)modules
6
AM_LDFLAGS = $(SCALAPACK_LDFLAGS)
7

Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
8
9
FCLD = @ACTUAL_FC@

10
11
# libelpa

12
13
# parts with public interface
noinst_LTLIBRARIES = libelpa@SUFFIX@_public.la
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
14
libelpa@SUFFIX@_public_la_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)modules $(FC_MODINC)private_modules
15
libelpa@SUFFIX@_public_la_SOURCES = \
16
        src/elpa2/elpa2_utilities.F90 \
17
	src/elpa1/elpa1_auxiliary.F90 \
Andreas Marek's avatar
Andreas Marek committed
18
	src/elpa_t.F90 \
19
        src/general/elpa_utilities.F90
20

21
22
23
24
25
26
27
28
if WITH_LEGACY_INTERFACE
libelpa@SUFFIX@_public_la_SOURCES += \
	src/elpa_driver/legacy_interface/elpa_legacy.F90 \
        src/elpa1/legacy_interface/elpa1_legacy.F90 \
        src/elpa2/legacy_interface/elpa2_legacy.F90 \
	src/elpa1/legacy_interface/elpa1_auxiliary_legacy.F90
endif

29
30
# internal parts
noinst_LTLIBRARIES += libelpa@SUFFIX@_private.la
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
31
libelpa@SUFFIX@_private_la_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
32
libelpa@SUFFIX@_private_la_SOURCES = \
33
34
35
        src/helpers/mod_precision.F90 \
        src/helpers/mod_mpi.F90 \
        src/helpers/mod_mpi_stubs.F90 \
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
36
        src/elpa_generated_fortran_interfaces.F90 \
37
        src/elpa2/elpa2_utilities_private.F90 \
Andreas Marek's avatar
Andreas Marek committed
38
39
	src/elpa2/mod_redist_band.F90 \
        src/elpa2/mod_pack_unpack_cpu.F90 \
40
        src/elpa2/mod_compute_hh_trafo.F90 \
41
        src/helpers/aligned_mem.F90 \
42
        src/elpa1/elpa1_utilities.F90 \
43
        src/elpa1/elpa1_compute_private.F90 \
44
45
46
	src/elpa2/elpa2_determine_workload.F90 \
        src/elpa2/elpa2_compute.F90 \
        src/elpa2/kernels/mod_single_hh_trafo_real.F90 \
47
48
        src/GPU/check_for_gpu.F90 \
        src/GPU/mod_cuda.F90 \
Andreas Marek's avatar
Andreas Marek committed
49
50
        src/elpa2/GPU/interface_c_kernel.F90 \
        src/elpa2/mod_pack_unpack_gpu.F90 \
51
52
53
        src/elpa2/qr/qr_utils.F90 \
        src/elpa2/qr/elpa_qrkernels.F90 \
        src/elpa2/qr/elpa_pdlarfb.F90 \
Andreas Marek's avatar
Andreas Marek committed
54
        src/elpa2/qr/elpa_pdgeqrf.F90 \
55
56
	src/elpa1/elpa1.F90 \
	src/elpa2/elpa2.F90 \
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
57
	src/elpa_index.c \
58
	src/elpa_options.c
59

60
61
62
63
64
65
66
if WITH_LEGACY_INTERFACE
libelpa@SUFFIX@_private_la_SOURCES += \
        src/elpa_driver/legacy_interface/elpa_driver_c_interface_legacy.F90 \
        src/elpa1/legacy_interface/elpa_1stage_c_interface_legacy.F90 \
        src/elpa2/legacy_interface/elpa_2stage_c_interface_legacy.F90
endif

67
EXTRA_libelpa@SUFFIX@_private_la_DEPENDENCIES = \
68
69
70
        src/elpa1/elpa_reduce_add_vectors.X90 \
        src/elpa1/elpa_transpose_vectors.X90 \
        src/elpa1/elpa1_compute_template.X90 \
71
72
        src/elpa2/elpa2_compute_real_template.X90 \
        src/elpa2/elpa2_compute_complex_template.X90 \
73
74
	src/elpa1/elpa1_template.X90 \
	src/elpa2/elpa2_template.X90 \
75
76
77
78
79
80
81
82
83
	src/elpa2/elpa2_bandred_template.X90 \
	src/elpa2/elpa2_symm_matrix_allreduce_real_template.X90 \
	src/elpa2/elpa2_trans_ev_band_to_full_template.X90 \
	src/elpa2/elpa2_tridiag_band_template.X90 \
	src/elpa2/elpa2_trans_ev_tridi_to_band_template.X90 \
	src/elpa2/elpa2_herm_matrix_allreduce_complex_template.X90 \
	src/elpa2/kernels/elpa2_kernels_real_template.X90 \
	src/elpa2/kernels/elpa2_kernels_complex_template.X90 \
	src/elpa2/kernels/elpa2_kernels_simple_template.X90 \
Andreas Marek's avatar
Andreas Marek committed
84
85
	src/elpa2/pack_unpack_cpu.X90 \
	src/elpa2/pack_unpack_gpu.X90 \
86
	src/elpa2/compute_hh_trafo.X90 \
Andreas Marek's avatar
Andreas Marek committed
87
        src/elpa2/redist_band.X90 \
88
	src/general/sanity.X90 \
89
90
91
92
	src/elpa1/elpa_cholesky_template.X90 \
	src/elpa1/elpa_invert_trm.X90 \
	src/elpa1/elpa_multiply_a_b.X90 \
	src/elpa1/elpa_solve_tridi_impl_public.X90 \
93
        src/general/precision_macros.h
94

95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
if WITH_LEGACY_INTERFACE
EXTRA_libelpa@SUFFIX@_private_la_DEPENDENCIES += \
	src/elpa1/legacy_interface/elpa1_template_legacy.X90 \
	src/elpa2/legacy_interface/elpa2_template_legacy.X90 \
	src/elpa1/legacy_interface/elpa1_c_interface_template_legacy.X90 \
	src/elpa2/legacy_interface/elpa2_c_interface_template_legacy.X90 \
	src/elpa_driver/legacy_interface/elpa_driver_c_interface_template_legacy.X90 \
	src/elpa1/legacy_interface/elpa_solve_tridi_c_interface_template_legacy.X90 \
        src/elpa1/legacy_interface/elpa_mult_at_b_c_interface_template_legacy.X90 \
        src/elpa1/legacy_interface/elpa_mult_ah_b_c_interface_template_legacy.X90 \
        src/elpa1/legacy_interface/elpa_invert_trm_c_interface_template_legacy.X90 \
        src/elpa1/legacy_interface/elpa_cholesky_c_interface_template_legacy.X90 \
	src/elpa1/legacy_interface/elpa_cholesky_template_legacy.X90 \
	src/elpa1/legacy_interface/elpa_invert_trm_legacy.X90 \
	src/elpa1/legacy_interface/elpa_multiply_a_b_legacy.X90 \
	src/elpa1/legacy_interface/elpa_solve_tridi_legacy.X90
endif

113
lib_LTLIBRARIES = libelpa@SUFFIX@.la
114
libelpa@SUFFIX@_la_LINK = $(FCLINK) $(AM_LDFLAGS) -version-info $(ELPA_SO_VERSION)
115
116
libelpa@SUFFIX@_la_LIBADD = libelpa@SUFFIX@_public.la libelpa@SUFFIX@_private.la
libelpa@SUFFIX@_la_SOURCES =
117

118

119
if HAVE_DETAILED_TIMINGS
120
  libelpa@SUFFIX@_private_la_SOURCES += \
121
        src/helpers/timer.F90 \
122
123
124
125
126
127
128
129
        src/ftimings/ftimings.F90 \
        src/ftimings/ftimings_type.F90 \
        src/ftimings/ftimings_value.F90 \
        src/ftimings/highwater_mark.c \
        src/ftimings/resident_set_size.c \
        src/ftimings/time.c \
        src/ftimings/virtual_memory.c \
        src/ftimings/papi.c
130
131
else
  libelpa@SUFFIX@_private_la_SOURCES += \
132
        src/helpers/timer_dummy.F90
133
134
endif

135
if WITH_GPU_VERSION
Andreas Marek's avatar
Andreas Marek committed
136
137
  libelpa@SUFFIX@_private_la_SOURCES +=  src/GPU/cudaFunctions.cu src/GPU/cuUtils.cu src/elpa2/GPU/ev_tridi_band_gpu_c_v2.cu
  EXTRA_libelpa@SUFFIX@_private_la_DEPENDENCIES +=   src/elpa2/GPU/ev_tridi_band_gpu_c_v2_complex_template.Xcu src/elpa2/GPU/ev_tridi_band_gpu_c_v2_real_template.Xcu
138
139
endif

140
if !WITH_MPI
141
  libelpa@SUFFIX@_private_la_SOURCES += src/helpers/mod_time_c.F90
142
if !HAVE_DETAILED_TIMINGS
143
  libelpa@SUFFIX@_private_la_SOURCES += src/ftimings/time.c
144
145
146
endif
endif

Andreas Marek's avatar
Andreas Marek committed
147
if WITH_REAL_GENERIC_KERNEL
148
  libelpa@SUFFIX@_private_la_SOURCES +=  src/elpa2/kernels/elpa2_kernels_real.F90
149
150
endif

Andreas Marek's avatar
Andreas Marek committed
151
if WITH_COMPLEX_GENERIC_KERNEL
152
  libelpa@SUFFIX@_private_la_SOURCES +=  src/elpa2/kernels/elpa2_kernels_complex.F90
153
154
endif

Andreas Marek's avatar
Andreas Marek committed
155
if WITH_REAL_GENERIC_SIMPLE_KERNEL
156
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_simple.F90
157
158
endif

Andreas Marek's avatar
Andreas Marek committed
159
if WITH_COMPLEX_GENERIC_SIMPLE_KERNEL
160
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_simple.F90
161
162
endif

Andreas Marek's avatar
Andreas Marek committed
163
if WITH_REAL_BGP_KERNEL
164
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_bgp.f90
165
166
endif

Andreas Marek's avatar
Andreas Marek committed
167
if WITH_REAL_BGQ_KERNEL
168
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_bgq.f90
169
170
endif

171
if WITH_REAL_SSE_ASSEMBLY_KERNEL
172
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_double_precision.s
173
if WANT_SINGLE_PRECISION_REAL
174
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_single_precision.s
175
endif
176

Andreas Marek's avatar
Andreas Marek committed
177
else
178
if WITH_COMPLEX_SSE_ASSEMBLY_KERNEL
179
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_double_precision.s
180
if WANT_SINGLE_PRECISION_COMPLEX
181
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_single_precision.s
182
endif
183
184
endif
endif
Andreas Marek's avatar
Andreas Marek committed
185

186
if WITH_REAL_SSE_BLOCK2_KERNEL
187
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_2hv_double_precision.c
188
if WANT_SINGLE_PRECISION_REAL
189
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_2hv_single_precision.c
190
endif
191
192
endif

Andreas Marek's avatar
Andreas Marek committed
193
if WITH_REAL_AVX_BLOCK2_KERNEL
194
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_double_precision.c
195
if WANT_SINGLE_PRECISION_REAL
196
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_single_precision.c
197
endif
198
199
else
if WITH_REAL_AVX2_BLOCK2_KERNEL
200
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_double_precision.c
201
if WANT_SINGLE_PRECISION_REAL
202
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_single_precision.c
203
endif
204
endif
205
206
endif

207
if WITH_REAL_AVX512_BLOCK2_KERNEL
208
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_2hv_double_precision.c
209
if WANT_SINGLE_PRECISION_REAL
210
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_2hv_single_precision.c
211
endif
212
213
214
endif


215
if WITH_REAL_SSE_BLOCK4_KERNEL
216
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_4hv_double_precision.c
217
if WANT_SINGLE_PRECISION_REAL
218
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_4hv_single_precision.c
219
endif
220
221
endif

Andreas Marek's avatar
Andreas Marek committed
222
if WITH_REAL_AVX_BLOCK4_KERNEL
223
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_double_precision.c
224
if WANT_SINGLE_PRECISION_REAL
225
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_single_precision.c
226
endif
227
228
else
if WITH_REAL_AVX2_BLOCK4_KERNEL
229
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_double_precision.c
230
if WANT_SINGLE_PRECISION_REAL
231
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_single_precision.c
232
endif
233
endif
234
235
endif

236
if WITH_REAL_AVX512_BLOCK4_KERNEL
237
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_4hv_double_precision.c
238
if WANT_SINGLE_PRECISION_REAL
239
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_4hv_single_precision.c
240
endif
241
242
243
244
endif



245
if WITH_REAL_SSE_BLOCK6_KERNEL
246
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_6hv_double_precision.c
247
if WANT_SINGLE_PRECISION_REAL
248
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_6hv_single_precision.c
249
endif
250
251
endif

Andreas Marek's avatar
Andreas Marek committed
252
if WITH_REAL_AVX_BLOCK6_KERNEL
253
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_double_precision.c
254
if WANT_SINGLE_PRECISION_REAL
255
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_single_precision.c
256
endif
257
258
else
if WITH_REAL_AVX2_BLOCK6_KERNEL
259
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_double_precision.c
260
if WANT_SINGLE_PRECISION_REAL
261
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_single_precision.c
262
endif
263
endif
264
265
endif

266
if WITH_REAL_AVX512_BLOCK6_KERNEL
267
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_6hv_double_precision.c
268
if WANT_SINGLE_PRECISION_REAL
269
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_6hv_single_precision.c
270
endif
271
272
273
endif


274
if WITH_COMPLEX_SSE_BLOCK1_KERNEL
275
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_1hv_double_precision.c
276
if WANT_SINGLE_PRECISION_COMPLEX
277
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_1hv_single_precision.c
278
endif
279
280
endif

Andreas Marek's avatar
Andreas Marek committed
281
if WITH_COMPLEX_AVX_BLOCK1_KERNEL
282
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_double_precision.c
283
if WANT_SINGLE_PRECISION_COMPLEX
284
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_single_precision.c
285
endif
286
287
else
if WITH_COMPLEX_AVX2_BLOCK1_KERNEL
288
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_double_precision.c
289
if WANT_SINGLE_PRECISION_COMPLEX
290
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_single_precision.c
291
endif
292
endif
293
294
endif

295
296

if WITH_COMPLEX_AVX512_BLOCK1_KERNEL
297
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_1hv_double_precision.c
298
if WANT_SINGLE_PRECISION_COMPLEX
299
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_1hv_single_precision.c
300
endif
301
302
endif

303
if WITH_COMPLEX_SSE_BLOCK2_KERNEL
304
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_2hv_double_precision.c
305
if WANT_SINGLE_PRECISION_COMPLEX
306
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_2hv_single_precision.c
307
endif
308
309
endif

Andreas Marek's avatar
Andreas Marek committed
310
if WITH_COMPLEX_AVX_BLOCK2_KERNEL
311
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_double_precision.c
312
if WANT_SINGLE_PRECISION_COMPLEX
313
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_single_precision.c
314
endif
315
316
else
if WITH_COMPLEX_AVX2_BLOCK2_KERNEL
317
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_double_precision.c
318
if WANT_SINGLE_PRECISION_COMPLEX
319
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_single_precision.c
320
endif
321
endif
322
323
endif

324
if WITH_COMPLEX_AVX512_BLOCK2_KERNEL
325
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_2hv_double_precision.c
326
if WANT_SINGLE_PRECISION_COMPLEX
327
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_2hv_single_precision.c
328
endif
329
330
endif

331
.cu.lo:
332
	NVCC="$(NVCC)" libtool --mode=compile --tag=CC $(top_srcdir)/nvcc_wrap $(NVCCFLAGS) $(LDFLAGS) -I$(top_builddir)/ -I$(top_srcdir)/  -c $< -o $@
Andreas Marek's avatar
Andreas Marek committed
333

334
335
336
include generated_headers.am
BUILT_SOURCES = $(generated_headers)

337
# install public Fortran modules files in the include/ dir
338
elpa_includedir = $(includedir)/elpa@SUFFIX@-@PACKAGE_VERSION@
339
nobase_elpa_include_HEADERS = $(wildcard modules/*)
340
nobase_elpa_include_HEADERS += elpa/elpa.h elpa/elpa_kernel_constants.h elpa/elpa_solver_constants.h elpa/elpa_constants.h elpa/elpa_generated.h
341

Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
342
dist_man_MANS = \
343
344
345
346
	   man/elpa2_print_kernels.1

if WITH_LEGACY_INTERFACE
dist_man_MANS += \
347
           man/solve_evp_real.3 \
348
	   man/solve_evp_real_1stage_double.3 \
Andreas Marek's avatar
Andreas Marek committed
349
	   man/solve_evp_complex.3 \
350
351
352
	   man/solve_evp_complex_1stage_double.3 \
	   man/solve_evp_real_2stage_double.3 \
	   man/solve_evp_complex_2stage_double.3 \
353
354
	   man/elpa_solve_evp_real_1stage_double.3 \
	   man/elpa_solve_evp_complex_1stage_double.3 \
Andreas Marek's avatar
Andreas Marek committed
355
356
	   man/elpa_solve_evp_real_2stage_double.3 \
	   man/elpa_solve_evp_complex_2stage_double.3 \
Andreas Marek's avatar
Andreas Marek committed
357
	   man/get_elpa_row_col_comms.3 \
358
	   man/get_elpa_communicators.3 \
359
360
	   man/elpa_mult_at_b_real_double.3 \
	   man/elpa_mult_at_b_real_single.3 \
361
362
	   man/elpa_mult_ah_b_complex_double.3 \
	   man/elpa_mult_ah_b_complex_single.3 \
363
364
	   man/elpa_invert_trm_real_double.3 \
	   man/elpa_invert_trm_real_single.3 \
365
366
	   man/elpa_invert_trm_complex_double.3 \
	   man/elpa_invert_trm_complex_single.3 \
367
368
369
370
	   man/elpa_solve_evp_real_double.3 \
	   man/elpa_solve_evp_real_single.3 \
	   man/elpa_solve_evp_complex_double.3 \
	   man/elpa_solve_evp_complex_single.3 \
371
372
	   man/elpa_tests.1
endif
Andreas Marek's avatar
Andreas Marek committed
373

374
375
if WANT_SINGLE_PRECISION_REAL

376
dist_man_MANS += man/solve_evp_real_1stage_single.3 \
377
		 man/elpa_solve_evp_real_1stage_single.3 \
Andreas Marek's avatar
Andreas Marek committed
378
		 man/elpa_solve_evp_real_2stage_single.3 \
379
         	 man/solve_evp_real_2stage_single.3
Andreas Marek's avatar
Andreas Marek committed
380

381
382
383
384
endif

if WANT_SINGLE_PRECISION_COMPLEX

385
dist_man_MANS += man/solve_evp_complex_1stage_single.3 \
386
		 man/elpa_solve_evp_complex_1stage_single.3 \
Andreas Marek's avatar
Andreas Marek committed
387
		 man/elpa_solve_evp_complex_2stage_single.3 \
388
                 man/solve_evp_complex_2stage_single.3
389
390
endif

391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
##needed?
#
## other files to distribute
#filesdir = $(docdir)/examples
#dist_files_DATA = \
#  test/Fortran/read_real.F90 \
#  test/Fortran/elpa2/complex.F90 \
#  test/Fortran/elpa2/single_complex.F90 \
#  test/Fortran/elpa2/complex_gpu.F90 \
#  test/Fortran/elpa2/single_complex_gpu.F90 \
#  test/Fortran/elpa2/complex_default_kernel.F90 \
#  test/Fortran/elpa2/single_complex_default_kernel.F90 \
#  test/Fortran/elpa2/complex_api.F90 \
#  test/Fortran/elpa2/single_complex_api.F90 \
#  test/Fortran/test_complex2_banded.F90 \
#  test/Fortran/elpa1/complex.F90 \
#  test/Fortran/elpa1/single_complex.F90 \
#  test/Fortran/elpa1/complex_gpu.F90 \
#  test/Fortran/elpa1/single_complex_gpu.F90 \
#  test/Fortran/elpa1/real_gpu.F90 \
#  test/Fortran/elpa1/single_real_gpu.F90 \
#  test/Fortran/elpa2/real.F90 \
#  test/Fortran/elpa2/single_real.F90 \
#  test/Fortran/elpa2/real_gpu.F90 \
#  test/Fortran/elpa2/single_real_gpu.F90 \
#  test/Fortran/elpa2/real_default_kernel.F90 \
#  test/Fortran/elpa2/single_real_default_kernel.F90 \
#  test/Fortran/elpa2/real_qr.F90 \
#  test/Fortran/elpa2/single_real_qr.F90 \
#  test/Fortran/elpa2/real_api.F90 \
#  test/Fortran/test_real2_banded.F90 \
#  test/Fortran/elpa1/real.F90 \
#  test/Fortran/elpa1/single_real.F90 \
#  test/Fortran/test_real_with_c.F90 \
#  test/Fortran/elpa1/toeplitz.F90 \
#  test/Fortran/test_transpose_multiply_real.F90 \
#  test/Fortran/test_transpose_multiply_complex.F90 \
#  test/Fortran/elpa1/real_cholesky.F90 \
#  test/Fortran/elpa1/single_real_cholesky.F90 \
#  test/Fortran/elpa1/real_invert_trm.F90 \
#  test/Fortran/elpa1/single_real_invert_trm.F90 \
#  test/Fortran/elpa1/complex_cholesky.F90 \
#  test/Fortran/elpa1/single_complex_cholesky.F90 \
#  test/Fortran/elpa1/complex_invert_trm.F90 \
#  test/Fortran/elpa1/single_complex_invert_trm.F90 \
#  test/Fortran/test_new_interface_real_2stage.F90 \
#  test/Fortran/test_new_interface_complex_2stage.F90 \
#  test/Fortran/elpa_tests.F90 \
#  test/Fortran/test_new_interface_real_1stage.F90 \
#  test/Fortran/test_new_interface_complex_1stage.F90 \
#  src/elpa2/elpa2_print_kernels.F90
#
##end needed
444

445
dist_doc_DATA = README.md USERS_GUIDE.md INSTALL.md CONTRIBUTING.md LICENSE Changelog COPYING/COPYING COPYING/gpl.txt COPYING/lgpl.txt
446

447
448
# pkg-config stuff
pkgconfigdir = $(libdir)/pkgconfig
449
pkgconfig_DATA = @PKG_CONFIG_FILE@
450

451
452
# programs
bin_PROGRAMS = \
453
  elpa2_print_kernels@SUFFIX@
454

455
456
457
458
459
if WITH_LEGACY_INTERFACE
bin_PROGRAMS += \
  elpa_tests@SUFFIX@
endif

460
noinst_PROGRAMS = \
461
462
463
464
465
466
467
  elpa_test_new_interface_real_2stage@SUFFIX@ \
  elpa_test_new_interface_complex_2stage@SUFFIX@ \
  elpa_test_new_interface_real_1stage@SUFFIX@ \
  elpa_test_new_interface_complex_1stage@SUFFIX@

if WITH_LEGACY_INTERFACE
noinst_PROGRAMS += \
468
  elpa1_test_real@SUFFIX@ \
469
470
  elpa1_test_complex@SUFFIX@ \
  elpa2_test_real@SUFFIX@ \
471
472
473
  elpa2_test_real_default@SUFFIX@ \
  elpa2_test_real_qr@SUFFIX@ \
  elpa2_test_real_api@SUFFIX@ \
474
  elpa2_test_real_banded@SUFFIX@ \
Andreas Marek's avatar
Andreas Marek committed
475
  elpa2_test_complex@SUFFIX@ \
476
  elpa2_test_complex_default@SUFFIX@ \
477
  elpa2_test_complex_api@SUFFIX@ \
478
  elpa2_test_complex_banded@SUFFIX@ \
479
  elpa_driver_real@SUFFIX@ \
480
  elpa_driver_complex@SUFFIX@ \
481
  elpa1_real_toeplitz@SUFFIX@ \
482
  elpa1_real_transpose_multiply@SUFFIX@ \
483
  elpa1_complex_transpose_multiply@SUFFIX@ \
484
  elpa1_real_cholesky@SUFFIX@ \
485
  elpa1_real_invert_trm@SUFFIX@ \
486
  elpa1_complex_cholesky@SUFFIX@ \
487
  elpa1_complex_invert_trm@SUFFIX@ \
488
  elpa1_test_real_with_c@SUFFIX@ \
Andreas Marek's avatar
Andreas Marek committed
489
490
491
  elpa1_test_real_c_version@SUFFIX@ \
  elpa1_test_complex_c_version@SUFFIX@ \
  elpa2_test_real_c_version@SUFFIX@ \
492
  elpa2_test_complex_c_version@SUFFIX@ \
493
  elpa_driver_real_c_version@SUFFIX@ \
494
  elpa_driver_complex_c_version@SUFFIX@
495
endif
Andreas Marek's avatar
Andreas Marek committed
496

497
if WANT_SINGLE_PRECISION_COMPLEX
498
499
500
501
502
noinst_PROGRAMS += \
  elpa_test_new_interface_complex_single_2stage@SUFFIX@ \
  elpa_test_new_interface_complex_single_1stage@SUFFIX@

if WITH_LEGACY_INTERFACE
503
noinst_PROGRAMS += \
504
505
  elpa1_test_complex_single_precision@SUFFIX@ \
  elpa2_test_complex_single_precision@SUFFIX@ \
506
  elpa2_test_complex_default_single_precision@SUFFIX@ \
507
  elpa1_complex_transpose_multiply_single_precision@SUFFIX@ \
508
  elpa_driver_complex_single_precision@SUFFIX@ \
509
  elpa1_complex_cholesky_single_precision@SUFFIX@ \
510
  elpa1_complex_invert_trm_single_precision@SUFFIX@ \
511
  elpa2_test_complex_api_single_precision@SUFFIX@ \
512
513
514
  elpa_driver_complex_c_version_single_precision@SUFFIX@
endif

515
516
517
endif

if WANT_SINGLE_PRECISION_REAL
518
519
520
521
522
noinst_PROGRAMS += \
  elpa_test_new_interface_real_single_2stage@SUFFIX@ \
  elpa_test_new_interface_real_single_1stage@SUFFIX@

if WITH_LEGACY_INTERFACE
523
noinst_PROGRAMS += \
524
525
  elpa1_test_real_single_precision@SUFFIX@ \
  elpa2_test_real_single_precision@SUFFIX@ \
526
527
  elpa2_test_real_default_single_precision@SUFFIX@ \
  elpa2_test_real_qr_single_precision@SUFFIX@ \
528
  elpa2_test_real_api_single_precision@SUFFIX@ \
529
  elpa_driver_real_single_precision@SUFFIX@ \
530
531
  elpa1_real_transpose_multiply_single_precision@SUFFIX@ \
  elpa1_real_cholesky_single_precision@SUFFIX@ \
532
  elpa1_real_invert_trm_single_precision@SUFFIX@ \
533
  elpa_driver_real_c_version_single_precision@SUFFIX@ \
534
535
  elpa1_real_toeplitz_single_precision@SUFFIX@
endif
536
537
538
539
endif

if WITH_GPU_VERSION
noinst_PROGRAMS += \
540
541
542
543
544
  elpa_test_new_interface_complex_1stage_gpu@SUFFIX@ \
  elpa_test_new_interface_complex_2stage_gpu@SUFFIX@ \
  elpa_test_new_interface_real_1stage_gpu@SUFFIX@ \
  elpa_test_new_interface_real_2stage_gpu@SUFFIX@

545
546
547
548
549
550
551
if WITH_LEGACY_INTERFACE
noinst_PROGRAMS += \
  elpa1_test_complex_gpu@SUFFIX@ \
  elpa1_test_real_gpu@SUFFIX@ \
  elpa2_test_complex_gpu@SUFFIX@ \
  elpa2_test_real_gpu@SUFFIX@
endif
552
553
554

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
555
556
  elpa_test_new_interface_real_single_1stage_gpu@SUFFIX@ \
  elpa_test_new_interface_real_single_2stage_gpu@SUFFIX@
557
558
559
560
561
562

if WITH_LEGACY_INTERFACE
noinst_PROGRAMS += \
  elpa1_test_real_gpu_single_precision@SUFFIX@ \
  elpa2_test_real_gpu_single_precision@SUFFIX@
endif
563
564
565
566
endif

if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
567
568
  elpa_test_new_interface_complex_single_1stage_gpu@SUFFIX@ \
  elpa_test_new_interface_complex_single_2stage_gpu@SUFFIX@
569
570
571
572
573
574

if WITH_LEGACY_INTERFACE
noinst_PROGRAMS += \
  elpa1_test_complex_gpu_single_precision@SUFFIX@ \
  elpa2_test_complex_gpu_single_precision@SUFFIX@
endif
575
576
577
578
endif

endif

Andreas Marek's avatar
Andreas Marek committed
579
build_lib = libelpatest@SUFFIX@.la libelpa@SUFFIX@.la
580
581
582

# library with shared sources for the test files
noinst_LTLIBRARIES += libelpatest@SUFFIX@.la
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
583
libelpatest@SUFFIX@_la_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
584
libelpatest@SUFFIX@_la_SOURCES = \
585
586
	test/shared/util.F90 \
	test/shared/read_input_parameters.F90  \
587
588
	test/shared/check_correctness.F90 \
	test/shared/check_correctness_template.X90 \
589
590
591
	test/shared/setup_mpi.F90 \
	test/shared/blacs_infrastructure.F90 \
	test/shared/prepare_matrix.F90 \
592
	test/shared/mod_assert.F90 \
Andreas Marek's avatar
Andreas Marek committed
593
	test/shared/prepare_matrix_template.X90 \
594
595
596
	test/shared/mod_output_types.F90 \
	test/shared/mod_from_c.F90 \
	test/shared/call_elpa1.c
Andreas Marek's avatar
Andreas Marek committed
597

598
if HAVE_REDIRECT
599
libelpatest@SUFFIX@_la_SOURCES += \
600
601
	test/shared/redir.c \
	test/shared/redirect.F90
602
endif
603
604
elpa_test_new_interface_real_2stage@SUFFIX@_SOURCES = test/Fortran/test_new_interface_real_2stage.F90
elpa_test_new_interface_real_2stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
605
elpa_test_new_interface_real_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
606
EXTRA_elpa_test_new_interface_real_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
607

608
609
elpa_test_new_interface_complex_2stage@SUFFIX@_SOURCES = test/Fortran/test_new_interface_complex_2stage.F90
elpa_test_new_interface_complex_2stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
610
elpa_test_new_interface_complex_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
611
612
613
614
EXTRA_elpa_test_new_interface_complex_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

elpa_test_new_interface_real_1stage@SUFFIX@_SOURCES = test/Fortran/test_new_interface_real_1stage.F90
elpa_test_new_interface_real_1stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
615
elpa_test_new_interface_real_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
616
617
618
619
EXTRA_elpa_test_new_interface_real_1stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

elpa_test_new_interface_complex_1stage@SUFFIX@_SOURCES = test/Fortran/test_new_interface_complex_1stage.F90
elpa_test_new_interface_complex_1stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
620
elpa_test_new_interface_complex_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
621
EXTRA_elpa_test_new_interface_complex_1stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
622

623
elpa1_test_real_c_version@SUFFIX@_SOURCES = test/C/elpa1_test_real_c_version.c
624
elpa1_test_real_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
625
elpa1_test_real_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
626
EXTRA_elpa1_test_real_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
627

628
elpa1_test_real_with_c@SUFFIX@_SOURCES = test/Fortran/test_real_with_c.F90
629
elpa1_test_real_with_c@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
630
elpa1_test_real_with_c@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
631
EXTRA_elpa1_test_real_with_c@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
632

633
634
elpa_driver_real_c_version@SUFFIX@_SOURCES = test/C/elpa_driver_real_c_version.c
elpa_driver_real_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
635
elpa_driver_real_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
636
637
EXTRA_elpa_driver_real_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

638
elpa1_test_complex_c_version@SUFFIX@_SOURCES = test/C/elpa1_test_complex_c_version.c
639
elpa1_test_complex_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
640
elpa1_test_complex_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
641
EXTRA_elpa1_test_complex_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
642

643
644
elpa_driver_complex_c_version@SUFFIX@_SOURCES = test/C/elpa_driver_complex_c_version.c
elpa_driver_complex_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
645
elpa_driver_complex_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
646
647
EXTRA_elpa_driver_complex_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

648
elpa2_test_real_c_version@SUFFIX@_SOURCES = test/C/elpa2_test_real_c_version.c
649
elpa2_test_real_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
650
elpa2_test_real_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
651
EXTRA_elpa2_test_real_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
652

653
elpa2_test_complex_c_version@SUFFIX@_SOURCES = test/C/elpa2_test_complex_c_version.c
654
elpa2_test_complex_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
655
elpa2_test_complex_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
656
EXTRA_elpa2_test_complex_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
657

658
elpa1_test_real@SUFFIX@_SOURCES = test/Fortran/elpa1/real.F90
659
elpa1_test_real@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
660
elpa1_test_real@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
661
EXTRA_elpa1_test_real@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
662

663
elpa1_real_toeplitz@SUFFIX@_SOURCES = test/Fortran/elpa1/toeplitz.F90
664
elpa1_real_toeplitz@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
665
elpa1_real_toeplitz@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
666
EXTRA_elpa1_real_toeplitz@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
667

668
669
elpa1_real_transpose_multiply@SUFFIX@_SOURCES = test/Fortran/test_transpose_multiply_real.F90
elpa1_real_transpose_multiply@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
670
elpa1_real_transpose_multiply@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
671
672
EXTRA_elpa1_real_transpose_multiply@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

673
674
elpa1_complex_transpose_multiply@SUFFIX@_SOURCES = test/Fortran/test_transpose_multiply_complex.F90
elpa1_complex_transpose_multiply@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
675
elpa1_complex_transpose_multiply@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
676
EXTRA_elpa1_complex_transpose_multiply@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
677

678
elpa1_real_cholesky@SUFFIX@_SOURCES = test/Fortran/elpa1/real_cholesky.F90
679
elpa1_real_cholesky@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
680
elpa1_real_cholesky@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
681
682
EXTRA_elpa1_real_cholesky@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

683
elpa1_real_invert_trm@SUFFIX@_SOURCES = test/Fortran/elpa1/real_invert_trm.F90
684
elpa1_real_invert_trm@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
685
elpa1_real_invert_trm@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
686
687
EXTRA_elpa1_real_invert_trm@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

688
elpa1_complex_cholesky@SUFFIX@_SOURCES = test/Fortran/elpa1/complex_cholesky.F90
689
elpa1_complex_cholesky@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
690
elpa1_complex_cholesky@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
691
692
EXTRA_elpa1_complex_cholesky@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

693
elpa1_complex_invert_trm@SUFFIX@_SOURCES = test/Fortran/elpa1/complex_invert_trm.F90
694
elpa1_complex_invert_trm@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
695
elpa1_complex_invert_trm@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
696
697
EXTRA_elpa1_complex_invert_trm@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

698
elpa2_test_real@SUFFIX@_SOURCES = test/Fortran/elpa2/real.F90
699
elpa2_test_real@SUFFIX@_LDADD = $(build_lib)
700
elpa2_test_real@SUFFIX@_LDFLAGS = -static
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
701
elpa2_test_real@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
702
EXTRA_elpa2_test_real@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
703

704
elpa2_test_real_default@SUFFIX@_SOURCES = test/Fortran/elpa2/real_default_kernel.F90
705
elpa2_test_real_default@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
706
elpa2_test_real_default@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
707
EXTRA_elpa2_test_real_default@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
708

709
elpa2_test_real_qr@SUFFIX@_SOURCES = test/Fortran/elpa2/real_qr.F90
710
elpa2_test_real_qr@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
711
elpa2_test_real_qr@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
712
EXTRA_elpa2_test_real_qr@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
713

714
elpa2_test_real_api@SUFFIX@_SOURCES = test/Fortran/elpa2/real_api.F90
715
elpa2_test_real_api@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
716
elpa2_test_real_api@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
Andreas Marek's avatar
Typo  
Andreas Marek committed
717
EXTRA_elpa2_test_real_api@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
718

719
720
elpa2_test_real_banded@SUFFIX@_SOURCES = test/Fortran/test_real2_banded.F90
elpa2_test_real_banded@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
721
elpa2_test_real_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
722
723
EXTRA_elpa2_test_real_banded@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

724
elpa1_test_complex@SUFFIX@_SOURCES = test/Fortran/elpa1/complex.F90
725
elpa1_test_complex@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
726
elpa1_test_complex@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
727
EXTRA_elpa1_test_complex@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
728

729
elpa2_test_complex@SUFFIX@_SOURCES = test/Fortran/elpa2/complex.F90
730
elpa2_test_complex@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
731
elpa2_test_complex@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
732
EXTRA_elpa2_test_complex@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
733

734
elpa2_test_complex_default@SUFFIX@_SOURCES = test/Fortran/elpa2/complex_default_kernel.F90
735
elpa2_test_complex_default@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
736
elpa2_test_complex_default@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
737
EXTRA_elpa2_test_complex_default@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
738

739
elpa2_test_complex_api@SUFFIX@_SOURCES = test/Fortran/elpa2/complex_api.F90
740
elpa2_test_complex_api@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
741
elpa2_test_complex_api@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
742
EXTRA_elpa2_test_complex_api@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
743

744
745
elpa2_test_complex_banded@SUFFIX@_SOURCES = test/Fortran/test_complex2_banded.F90
elpa2_test_complex_banded@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
746
elpa2_test_complex_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
747
748
749
EXTRA_elpa2_test_complex_banded@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90


750
751
elpa_driver_real@SUFFIX@_SOURCES = test/Fortran/test_driver_real.F90
elpa_driver_real@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
752
elpa_driver_real@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
753
754
EXTRA_elpa_driver_real@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

755
756
elpa_driver_complex@SUFFIX@_SOURCES = test/Fortran/test_driver_complex.F90
elpa_driver_complex@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
757
elpa_driver_complex@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
758
759
EXTRA_elpa_driver_complex@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

Andreas Marek's avatar
Andreas Marek committed
760
elpa2_print_kernels@SUFFIX@_SOURCES = src/elpa2/elpa2_print_kernels.F90
761
elpa2_print_kernels@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
762
elpa2_print_kernels@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
Andreas Marek's avatar
Andreas Marek committed
763

764
765
elpa_tests@SUFFIX@_SOURCES = test/Fortran/elpa_tests.F90
elpa_tests@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
766
elpa_tests@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
767

768
if WANT_SINGLE_PRECISION_REAL