Makefile.am 59.3 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
17
18
	src/elpa_driver/legacy_interface/elpa_legacy.F90 \
        src/elpa1/legacy_interface/elpa1_legacy.F90 \
        src/elpa2/legacy_interface/elpa2_legacy.F90 \
19
        src/elpa2/legacy_interface/elpa2_utilities_legacy.F90 \
20
	src/elpa1/legacy_interface/elpa1_auxiliary_legacy.F90 \
21
	src/elpa1/elpa1_auxiliary.F90 \
Andreas Marek's avatar
Andreas Marek committed
22
	src/elpa_t.F90 \
23
        src/general/elpa_utilities.F90
24
25
26

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

59
EXTRA_libelpa@SUFFIX@_private_la_DEPENDENCIES = \
60
61
62
        src/elpa1/elpa_reduce_add_vectors.X90 \
        src/elpa1/elpa_transpose_vectors.X90 \
        src/elpa1/elpa1_compute_template.X90 \
63
64
        src/elpa2/elpa2_compute_real_template.X90 \
        src/elpa2/elpa2_compute_complex_template.X90 \
65
	src/elpa1/legacy_interface/elpa1_template_legacy.X90 \
66
	src/elpa1/elpa1_template.X90 \
67
	src/elpa2/legacy_interface/elpa2_template_legacy.X90 \
68
	src/elpa2/elpa2_template.X90 \
69
70
71
72
73
74
75
76
	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 \
77
78
79
80
81
82
83
84
85
	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
86
87
	src/elpa2/pack_unpack_cpu.X90 \
	src/elpa2/pack_unpack_gpu.X90 \
88
	src/elpa2/compute_hh_trafo.X90 \
Andreas Marek's avatar
Andreas Marek committed
89
        src/elpa2/redist_band.X90 \
90
	src/general/sanity.X90 \
91
	src/elpa1/legacy_interface/elpa_cholesky_template_legacy.X90 \
92
	src/elpa1/elpa_cholesky_template.X90 \
93
	src/elpa1/legacy_interface/elpa_invert_trm_legacy.X90 \
94
	src/elpa1/elpa_invert_trm.X90 \
95
	src/elpa1/legacy_interface/elpa_multiply_a_b_legacy.X90 \
96
	src/elpa1/elpa_multiply_a_b.X90 \
97
	src/elpa1/legacy_interface/elpa_solve_tridi_legacy.X90 \
98
	src/elpa1/elpa_solve_tridi_impl_public.X90 \
99
        src/general/precision_macros.h
100

101
lib_LTLIBRARIES = libelpa@SUFFIX@.la
102
libelpa@SUFFIX@_la_LINK = $(FCLINK) $(AM_LDFLAGS) -version-info $(ELPA_SO_VERSION)
103
104
libelpa@SUFFIX@_la_LIBADD = libelpa@SUFFIX@_public.la libelpa@SUFFIX@_private.la
libelpa@SUFFIX@_la_SOURCES =
105

106

107
if HAVE_DETAILED_TIMINGS
108
  libelpa@SUFFIX@_private_la_SOURCES += \
109
        src/helpers/timer.F90 \
110
111
112
113
114
115
116
117
        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
118
119
else
  libelpa@SUFFIX@_private_la_SOURCES += \
120
        src/helpers/timer_dummy.F90
121
122
endif

123
if WITH_GPU_VERSION
Andreas Marek's avatar
Andreas Marek committed
124
125
  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
126
127
endif

128
if !WITH_MPI
129
  libelpa@SUFFIX@_private_la_SOURCES += src/helpers/mod_time_c.F90
130
if !HAVE_DETAILED_TIMINGS
131
  libelpa@SUFFIX@_private_la_SOURCES += src/ftimings/time.c
132
133
134
endif
endif

Andreas Marek's avatar
Andreas Marek committed
135
if WITH_REAL_GENERIC_KERNEL
136
  libelpa@SUFFIX@_private_la_SOURCES +=  src/elpa2/kernels/elpa2_kernels_real.F90
137
138
endif

Andreas Marek's avatar
Andreas Marek committed
139
if WITH_COMPLEX_GENERIC_KERNEL
140
  libelpa@SUFFIX@_private_la_SOURCES +=  src/elpa2/kernels/elpa2_kernels_complex.F90
141
142
endif

Andreas Marek's avatar
Andreas Marek committed
143
if WITH_REAL_GENERIC_SIMPLE_KERNEL
144
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_simple.F90
145
146
endif

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

Andreas Marek's avatar
Andreas Marek committed
151
if WITH_REAL_BGP_KERNEL
152
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_bgp.f90
153
154
endif

Andreas Marek's avatar
Andreas Marek committed
155
if WITH_REAL_BGQ_KERNEL
156
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_bgq.f90
157
158
endif

159
if WITH_REAL_SSE_ASSEMBLY_KERNEL
160
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_double_precision.s
161
if WANT_SINGLE_PRECISION_REAL
162
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_single_precision.s
163
endif
164

Andreas Marek's avatar
Andreas Marek committed
165
else
166
if WITH_COMPLEX_SSE_ASSEMBLY_KERNEL
167
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_double_precision.s
168
if WANT_SINGLE_PRECISION_COMPLEX
169
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_single_precision.s
170
endif
171
172
endif
endif
Andreas Marek's avatar
Andreas Marek committed
173

174
if WITH_REAL_SSE_BLOCK2_KERNEL
175
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_2hv_double_precision.c
176
if WANT_SINGLE_PRECISION_REAL
177
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_2hv_single_precision.c
178
endif
179
180
endif

Andreas Marek's avatar
Andreas Marek committed
181
if WITH_REAL_AVX_BLOCK2_KERNEL
182
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_double_precision.c
183
if WANT_SINGLE_PRECISION_REAL
184
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_single_precision.c
185
endif
186
187
else
if WITH_REAL_AVX2_BLOCK2_KERNEL
188
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_double_precision.c
189
if WANT_SINGLE_PRECISION_REAL
190
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_single_precision.c
191
endif
192
endif
193
194
endif

195
if WITH_REAL_AVX512_BLOCK2_KERNEL
196
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_2hv_double_precision.c
197
if WANT_SINGLE_PRECISION_REAL
198
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_2hv_single_precision.c
199
endif
200
201
202
endif


203
if WITH_REAL_SSE_BLOCK4_KERNEL
204
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_4hv_double_precision.c
205
if WANT_SINGLE_PRECISION_REAL
206
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_4hv_single_precision.c
207
endif
208
209
endif

Andreas Marek's avatar
Andreas Marek committed
210
if WITH_REAL_AVX_BLOCK4_KERNEL
211
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_double_precision.c
212
if WANT_SINGLE_PRECISION_REAL
213
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_single_precision.c
214
endif
215
216
else
if WITH_REAL_AVX2_BLOCK4_KERNEL
217
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_double_precision.c
218
if WANT_SINGLE_PRECISION_REAL
219
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_single_precision.c
220
endif
221
endif
222
223
endif

224
if WITH_REAL_AVX512_BLOCK4_KERNEL
225
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_4hv_double_precision.c
226
if WANT_SINGLE_PRECISION_REAL
227
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_4hv_single_precision.c
228
endif
229
230
231
232
endif



233
if WITH_REAL_SSE_BLOCK6_KERNEL
234
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_6hv_double_precision.c
235
if WANT_SINGLE_PRECISION_REAL
236
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_6hv_single_precision.c
237
endif
238
239
endif

Andreas Marek's avatar
Andreas Marek committed
240
if WITH_REAL_AVX_BLOCK6_KERNEL
241
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_double_precision.c
242
if WANT_SINGLE_PRECISION_REAL
243
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_single_precision.c
244
endif
245
246
else
if WITH_REAL_AVX2_BLOCK6_KERNEL
247
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_double_precision.c
248
if WANT_SINGLE_PRECISION_REAL
249
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_single_precision.c
250
endif
251
endif
252
253
endif

254
if WITH_REAL_AVX512_BLOCK6_KERNEL
255
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_6hv_double_precision.c
256
if WANT_SINGLE_PRECISION_REAL
257
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_6hv_single_precision.c
258
endif
259
260
261
endif


262
if WITH_COMPLEX_SSE_BLOCK1_KERNEL
263
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_1hv_double_precision.c
264
if WANT_SINGLE_PRECISION_COMPLEX
265
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_1hv_single_precision.c
266
endif
267
268
endif

Andreas Marek's avatar
Andreas Marek committed
269
if WITH_COMPLEX_AVX_BLOCK1_KERNEL
270
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_double_precision.c
271
if WANT_SINGLE_PRECISION_COMPLEX
272
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_single_precision.c
273
endif
274
275
else
if WITH_COMPLEX_AVX2_BLOCK1_KERNEL
276
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_double_precision.c
277
if WANT_SINGLE_PRECISION_COMPLEX
278
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_single_precision.c
279
endif
280
endif
281
282
endif

283
284

if WITH_COMPLEX_AVX512_BLOCK1_KERNEL
285
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_1hv_double_precision.c
286
if WANT_SINGLE_PRECISION_COMPLEX
287
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_1hv_single_precision.c
288
endif
289
290
endif

291
if WITH_COMPLEX_SSE_BLOCK2_KERNEL
292
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_2hv_double_precision.c
293
if WANT_SINGLE_PRECISION_COMPLEX
294
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_2hv_single_precision.c
295
endif
296
297
endif

Andreas Marek's avatar
Andreas Marek committed
298
if WITH_COMPLEX_AVX_BLOCK2_KERNEL
299
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_double_precision.c
300
if WANT_SINGLE_PRECISION_COMPLEX
301
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_single_precision.c
302
endif
303
304
else
if WITH_COMPLEX_AVX2_BLOCK2_KERNEL
305
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_double_precision.c
306
if WANT_SINGLE_PRECISION_COMPLEX
307
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_single_precision.c
308
endif
309
endif
310
311
endif

312
if WITH_COMPLEX_AVX512_BLOCK2_KERNEL
313
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_2hv_double_precision.c
314
if WANT_SINGLE_PRECISION_COMPLEX
315
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_2hv_single_precision.c
316
endif
317
318
endif

319
.cu.lo:
320
	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
321

322
323
324
include generated_headers.am
BUILT_SOURCES = $(generated_headers)

325
# install public Fortran modules files in the include/ dir
326
elpa_includedir = $(includedir)/elpa@SUFFIX@-@PACKAGE_VERSION@
327
nobase_elpa_include_HEADERS = $(wildcard modules/*)
328
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
329

Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
330
dist_man_MANS = \
331
           man/solve_evp_real.3 \
332
	   man/solve_evp_real_1stage_double.3 \
Andreas Marek's avatar
Andreas Marek committed
333
	   man/solve_evp_complex.3 \
334
335
336
	   man/solve_evp_complex_1stage_double.3 \
	   man/solve_evp_real_2stage_double.3 \
	   man/solve_evp_complex_2stage_double.3 \
337
338
	   man/elpa_solve_evp_real_1stage_double.3 \
	   man/elpa_solve_evp_complex_1stage_double.3 \
Andreas Marek's avatar
Andreas Marek committed
339
340
	   man/elpa_solve_evp_real_2stage_double.3 \
	   man/elpa_solve_evp_complex_2stage_double.3 \
Andreas Marek's avatar
Andreas Marek committed
341
	   man/get_elpa_row_col_comms.3 \
342
	   man/get_elpa_communicators.3 \
343
344
	   man/elpa_mult_at_b_real_double.3 \
	   man/elpa_mult_at_b_real_single.3 \
345
346
	   man/elpa_mult_ah_b_complex_double.3 \
	   man/elpa_mult_ah_b_complex_single.3 \
347
348
	   man/elpa_invert_trm_real_double.3 \
	   man/elpa_invert_trm_real_single.3 \
349
350
	   man/elpa_invert_trm_complex_double.3 \
	   man/elpa_invert_trm_complex_single.3 \
351
352
353
354
	   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 \
355
356
	   man/elpa_tests.1 \
	   man/elpa2_print_kernels.1
Andreas Marek's avatar
Andreas Marek committed
357

358
359
if WANT_SINGLE_PRECISION_REAL

360
dist_man_MANS += man/solve_evp_real_1stage_single.3 \
361
		 man/elpa_solve_evp_real_1stage_single.3 \
Andreas Marek's avatar
Andreas Marek committed
362
		 man/elpa_solve_evp_real_2stage_single.3 \
363
         	 man/solve_evp_real_2stage_single.3
Andreas Marek's avatar
Andreas Marek committed
364

365
366
367
368
endif

if WANT_SINGLE_PRECISION_COMPLEX

369
dist_man_MANS += man/solve_evp_complex_1stage_single.3 \
370
		 man/elpa_solve_evp_complex_1stage_single.3 \
Andreas Marek's avatar
Andreas Marek committed
371
		 man/elpa_solve_evp_complex_2stage_single.3 \
372
                 man/solve_evp_complex_2stage_single.3
373
374
endif

375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
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
##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
428

429
dist_doc_DATA = README.md USERS_GUIDE.md INSTALL.md CONTRIBUTING.md LICENSE Changelog COPYING/COPYING COPYING/gpl.txt COPYING/lgpl.txt
430

431
432
# pkg-config stuff
pkgconfigdir = $(libdir)/pkgconfig
433
pkgconfig_DATA = @PKG_CONFIG_FILE@
434

435
436
# programs
bin_PROGRAMS = \
437
  elpa_tests@SUFFIX@ \
438
  elpa2_print_kernels@SUFFIX@
439
440

noinst_PROGRAMS = \
441
  elpa1_test_real@SUFFIX@ \
442
443
  elpa1_test_complex@SUFFIX@ \
  elpa2_test_real@SUFFIX@ \
444
445
446
  elpa2_test_real_default@SUFFIX@ \
  elpa2_test_real_qr@SUFFIX@ \
  elpa2_test_real_api@SUFFIX@ \
447
  elpa2_test_real_banded@SUFFIX@ \
Andreas Marek's avatar
Andreas Marek committed
448
  elpa2_test_complex@SUFFIX@ \
449
  elpa2_test_complex_default@SUFFIX@ \
450
  elpa2_test_complex_api@SUFFIX@ \
451
  elpa2_test_complex_banded@SUFFIX@ \
452
  elpa_driver_real@SUFFIX@ \
453
  elpa_driver_complex@SUFFIX@ \
454
  elpa1_real_toeplitz@SUFFIX@ \
455
  elpa1_real_transpose_multiply@SUFFIX@ \
456
  elpa1_complex_transpose_multiply@SUFFIX@ \
457
  elpa1_real_cholesky@SUFFIX@ \
458
  elpa1_real_invert_trm@SUFFIX@ \
459
  elpa1_complex_cholesky@SUFFIX@ \
460
  elpa1_complex_invert_trm@SUFFIX@ \
461
  elpa1_test_real_with_c@SUFFIX@ \
Andreas Marek's avatar
Andreas Marek committed
462
463
464
  elpa1_test_real_c_version@SUFFIX@ \
  elpa1_test_complex_c_version@SUFFIX@ \
  elpa2_test_real_c_version@SUFFIX@ \
465
  elpa2_test_complex_c_version@SUFFIX@ \
466
  elpa_driver_real_c_version@SUFFIX@ \
467
468
469
470
  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@ \
471
  elpa_driver_complex_c_version@SUFFIX@
Andreas Marek's avatar
Andreas Marek committed
472

473
474
if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
475
476
  elpa1_test_complex_single_precision@SUFFIX@ \
  elpa2_test_complex_single_precision@SUFFIX@ \
477
  elpa2_test_complex_default_single_precision@SUFFIX@ \
478
  elpa1_complex_transpose_multiply_single_precision@SUFFIX@ \
479
  elpa_driver_complex_single_precision@SUFFIX@ \
480
  elpa1_complex_cholesky_single_precision@SUFFIX@ \
481
  elpa1_complex_invert_trm_single_precision@SUFFIX@ \
482
  elpa2_test_complex_api_single_precision@SUFFIX@ \
483
484
485
  elpa_driver_complex_c_version_single_precision@SUFFIX@ \
  elpa_test_new_interface_complex_single_2stage@SUFFIX@ \
  elpa_test_new_interface_complex_single_1stage@SUFFIX@
486
487
488
489
endif

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
490
491
  elpa1_test_real_single_precision@SUFFIX@ \
  elpa2_test_real_single_precision@SUFFIX@ \
492
493
  elpa2_test_real_default_single_precision@SUFFIX@ \
  elpa2_test_real_qr_single_precision@SUFFIX@ \
494
  elpa2_test_real_api_single_precision@SUFFIX@ \
495
  elpa_driver_real_single_precision@SUFFIX@ \
496
497
  elpa1_real_transpose_multiply_single_precision@SUFFIX@ \
  elpa1_real_cholesky_single_precision@SUFFIX@ \
498
  elpa1_real_invert_trm_single_precision@SUFFIX@ \
499
  elpa_driver_real_c_version_single_precision@SUFFIX@ \
500
501
502
  elpa1_real_toeplitz_single_precision@SUFFIX@ \
  elpa_test_new_interface_real_single_2stage@SUFFIX@ \
  elpa_test_new_interface_real_single_1stage@SUFFIX@
503
504
505
506
endif

if WITH_GPU_VERSION
noinst_PROGRAMS += \
507
508
509
510
  elpa1_test_complex_gpu@SUFFIX@ \
  elpa1_test_real_gpu@SUFFIX@ \
  elpa2_test_complex_gpu@SUFFIX@ \
  elpa2_test_real_gpu@SUFFIX@ \
511
512
513
514
515
  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@

516
517
518

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
519
520
  elpa1_test_real_gpu_single_precision@SUFFIX@ \
  elpa2_test_real_gpu_single_precision@SUFFIX@ \
521
522
  elpa_test_new_interface_real_single_1stage_gpu@SUFFIX@ \
  elpa_test_new_interface_real_single_2stage_gpu@SUFFIX@
523
524
525
526
endif

if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
527
528
  elpa1_test_complex_gpu_single_precision@SUFFIX@ \
  elpa2_test_complex_gpu_single_precision@SUFFIX@ \
529
530
  elpa_test_new_interface_complex_single_1stage_gpu@SUFFIX@ \
  elpa_test_new_interface_complex_single_2stage_gpu@SUFFIX@
531
532
533
534
endif

endif

Andreas Marek's avatar
Andreas Marek committed
535
build_lib = libelpatest@SUFFIX@.la libelpa@SUFFIX@.la
536
537
538

# library with shared sources for the test files
noinst_LTLIBRARIES += libelpatest@SUFFIX@.la
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
539
libelpatest@SUFFIX@_la_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
540
libelpatest@SUFFIX@_la_SOURCES = \
541
542
	test/shared/util.F90 \
	test/shared/read_input_parameters.F90  \
543
544
	test/shared/check_correctness.F90 \
	test/shared/check_correctness_template.X90 \
545
546
547
	test/shared/setup_mpi.F90 \
	test/shared/blacs_infrastructure.F90 \
	test/shared/prepare_matrix.F90 \
548
	test/shared/mod_assert.F90 \
Andreas Marek's avatar
Andreas Marek committed
549
	test/shared/prepare_matrix_template.X90 \
550
551
552
	test/shared/mod_output_types.F90 \
	test/shared/mod_from_c.F90 \
	test/shared/call_elpa1.c
Andreas Marek's avatar
Andreas Marek committed
553

554
if HAVE_REDIRECT
555
libelpatest@SUFFIX@_la_SOURCES += \
556
557
	test/shared/redir.c \
	test/shared/redirect.F90
558
endif
559
560
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
561
elpa_test_new_interface_real_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
562
EXTRA_elpa_test_new_interface_real_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
563

564
565
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
566
elpa_test_new_interface_complex_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
567
568
569
570
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
571
elpa_test_new_interface_real_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
572
573
574
575
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
576
elpa_test_new_interface_complex_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
577
EXTRA_elpa_test_new_interface_complex_1stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
578

579
elpa1_test_real_c_version@SUFFIX@_SOURCES = test/C/elpa1_test_real_c_version.c
580
elpa1_test_real_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
581
elpa1_test_real_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
582
EXTRA_elpa1_test_real_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
583

584
elpa1_test_real_with_c@SUFFIX@_SOURCES = test/Fortran/test_real_with_c.F90
585
elpa1_test_real_with_c@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
586
elpa1_test_real_with_c@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
587
EXTRA_elpa1_test_real_with_c@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
588

589
590
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
591
elpa_driver_real_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
592
593
EXTRA_elpa_driver_real_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

594
elpa1_test_complex_c_version@SUFFIX@_SOURCES = test/C/elpa1_test_complex_c_version.c
595
elpa1_test_complex_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
596
elpa1_test_complex_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
597
EXTRA_elpa1_test_complex_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
598

599
600
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
601
elpa_driver_complex_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
602
603
EXTRA_elpa_driver_complex_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

604
elpa2_test_real_c_version@SUFFIX@_SOURCES = test/C/elpa2_test_real_c_version.c
605
elpa2_test_real_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
606
elpa2_test_real_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
607
EXTRA_elpa2_test_real_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
608

609
elpa2_test_complex_c_version@SUFFIX@_SOURCES = test/C/elpa2_test_complex_c_version.c
610
elpa2_test_complex_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
611
elpa2_test_complex_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
612
EXTRA_elpa2_test_complex_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
613

614
elpa1_test_real@SUFFIX@_SOURCES = test/Fortran/elpa1/real.F90
615
elpa1_test_real@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
616
elpa1_test_real@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
617
EXTRA_elpa1_test_real@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
618

619
elpa1_real_toeplitz@SUFFIX@_SOURCES = test/Fortran/elpa1/toeplitz.F90
620
elpa1_real_toeplitz@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
621
elpa1_real_toeplitz@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
622
EXTRA_elpa1_real_toeplitz@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
623

624
625
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
626
elpa1_real_transpose_multiply@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
627
628
EXTRA_elpa1_real_transpose_multiply@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

629
630
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
631
elpa1_complex_transpose_multiply@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
632
EXTRA_elpa1_complex_transpose_multiply@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
633

634
elpa1_real_cholesky@SUFFIX@_SOURCES = test/Fortran/elpa1/real_cholesky.F90
635
elpa1_real_cholesky@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
636
elpa1_real_cholesky@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
637
638
EXTRA_elpa1_real_cholesky@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

639
elpa1_real_invert_trm@SUFFIX@_SOURCES = test/Fortran/elpa1/real_invert_trm.F90
640
elpa1_real_invert_trm@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
641
elpa1_real_invert_trm@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
642
643
EXTRA_elpa1_real_invert_trm@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

644
elpa1_complex_cholesky@SUFFIX@_SOURCES = test/Fortran/elpa1/complex_cholesky.F90
645
elpa1_complex_cholesky@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
646
elpa1_complex_cholesky@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
647
648
EXTRA_elpa1_complex_cholesky@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

649
elpa1_complex_invert_trm@SUFFIX@_SOURCES = test/Fortran/elpa1/complex_invert_trm.F90
650
elpa1_complex_invert_trm@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
651
elpa1_complex_invert_trm@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
652
653
EXTRA_elpa1_complex_invert_trm@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

654
elpa2_test_real@SUFFIX@_SOURCES = test/Fortran/elpa2/real.F90
655
elpa2_test_real@SUFFIX@_LDADD = $(build_lib)
656
elpa2_test_real@SUFFIX@_LDFLAGS = -static
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
657
elpa2_test_real@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
658
EXTRA_elpa2_test_real@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
659

660
elpa2_test_real_default@SUFFIX@_SOURCES = test/Fortran/elpa2/real_default_kernel.F90
661
elpa2_test_real_default@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
662
elpa2_test_real_default@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
663
EXTRA_elpa2_test_real_default@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
664

665
elpa2_test_real_qr@SUFFIX@_SOURCES = test/Fortran/elpa2/real_qr.F90
666
elpa2_test_real_qr@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
667
elpa2_test_real_qr@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
668
EXTRA_elpa2_test_real_qr@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
669

670
elpa2_test_real_api@SUFFIX@_SOURCES = test/Fortran/elpa2/real_api.F90
671
elpa2_test_real_api@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
672
elpa2_test_real_api@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
Andreas Marek's avatar
Typo  
Andreas Marek committed
673
EXTRA_elpa2_test_real_api@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
674

675
676
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
677
elpa2_test_real_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
678
679
EXTRA_elpa2_test_real_banded@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

680
elpa1_test_complex@SUFFIX@_SOURCES = test/Fortran/elpa1/complex.F90
681
elpa1_test_complex@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
682
elpa1_test_complex@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
683
EXTRA_elpa1_test_complex@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
684

685
elpa2_test_complex@SUFFIX@_SOURCES = test/Fortran/elpa2/complex.F90
686
elpa2_test_complex@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
687
elpa2_test_complex@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
688
EXTRA_elpa2_test_complex@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
689

690
elpa2_test_complex_default@SUFFIX@_SOURCES = test/Fortran/elpa2/complex_default_kernel.F90
691
elpa2_test_complex_default@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
692
elpa2_test_complex_default@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
693
EXTRA_elpa2_test_complex_default@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
694

695
elpa2_test_complex_api@SUFFIX@_SOURCES = test/Fortran/elpa2/complex_api.F90
696
elpa2_test_complex_api@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
697
elpa2_test_complex_api@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
698
EXTRA_elpa2_test_complex_api@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
699

700
701
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
702
elpa2_test_complex_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
703
704
705
EXTRA_elpa2_test_complex_banded@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90


706
707
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
708
elpa_driver_real@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
709
710
EXTRA_elpa_driver_real@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

711
712
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
713
elpa_driver_complex@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
714
715
EXTRA_elpa_driver_complex@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

Andreas Marek's avatar
Andreas Marek committed
716
elpa2_print_kernels@SUFFIX@_SOURCES = src/elpa2/elpa2_print_kernels.F90
717
elpa2_print_kernels@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
718
elpa2_print_kernels@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
Andreas Marek's avatar
Andreas Marek committed
719

720
721
elpa_tests@SUFFIX@_SOURCES = test/Fortran/elpa_tests.F90
elpa_tests@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
722
elpa_tests@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
723

724
if WANT_SINGLE_PRECISION_REAL
725
726
elpa_test_new_interface_real_single_2stage@SUFFIX@_SOURCES = test/Fortran/test_new_interface_real_single_2stage.F90
elpa_test_new_interface_real_single_2stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
727
elpa_test_new_interface_real_single_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
728
729
730
731
EXTRA_elpa_test_new_interface_real_single_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

elpa_test_new_interface_real_single_1stage@SUFFIX@_SOURCES = test/Fortran/test_new_interface_real_single_1stage.F90
elpa_test_new_interface_real_single_1stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
732
elpa_test_new_interface_real_single_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules