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

3
ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4
4

5
AM_FCFLAGS = $(SCALAPACK_FCFLAGS) @FC_MODINC@modules
6
AM_LDFLAGS = $(SCALAPACK_LDFLAGS)
7
8
9

# libelpa

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

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

50
EXTRA_libelpa@SUFFIX@_private_la_DEPENDENCIES = \
51
52
53
        src/elpa1/elpa_reduce_add_vectors.X90 \
        src/elpa1/elpa_transpose_vectors.X90 \
        src/elpa1/elpa1_compute_template.X90 \
54
55
        src/elpa2/elpa2_compute_real_template.X90 \
        src/elpa2/elpa2_compute_complex_template.X90 \
56
	src/elpa1/elpa1_template.X90 \
57
	src/elpa2/elpa2_template.X90 \
58
59
60
	src/elpa1_c_interface_template.X90 \
	src/elpa2_c_interface_template.X90 \
	src/elpa_driver_c_interface_template.X90 \
61
	src/elpa_solve_tridi_c_interface_template.X90 \
62
        src/elpa_mult_at_b_c_interface_template.X90 \
63
        src/elpa_mult_ah_b_c_interface_template.X90 \
64
        src/elpa_invert_trm_c_interface_template.X90 \
65
        src/elpa_cholesky_c_interface_template.X90 \
66
67
68
69
70
71
72
73
74
	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
75
76
	src/elpa2/pack_unpack_cpu.X90 \
	src/elpa2/pack_unpack_gpu.X90 \
77
	src/elpa2/compute_hh_trafo.X90 \
Andreas Marek's avatar
Andreas Marek committed
78
        src/elpa2/redist_band.X90 \
Andreas Marek's avatar
Andreas Marek committed
79
	src/sanity.X90 \
80
81
82
83
	src/elpa1/elpa_cholesky_template.X90 \
	src/elpa1/elpa_invert_trm.X90 \
	src/elpa1/elpa_multiply_a_b.X90 \
	src/elpa1/elpa_solve_tridi.X90 \
84
        src/precision_macros.h
85

86
lib_LTLIBRARIES = libelpa@SUFFIX@.la
87
libelpa@SUFFIX@_la_LINK = $(FCLINK) $(AM_LDFLAGS) -version-info $(ELPA_SO_VERSION)
88
89
libelpa@SUFFIX@_la_LIBADD = libelpa@SUFFIX@_public.la libelpa@SUFFIX@_private.la
libelpa@SUFFIX@_la_SOURCES =
90

91

92
if HAVE_DETAILED_TIMINGS
93
  libelpa@SUFFIX@_private_la_SOURCES += \
94
        src/helpers/timer.F90 \
95
96
97
98
99
100
101
102
        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
103
104
else
  libelpa@SUFFIX@_private_la_SOURCES += \
105
        src/helpers/timer_dummy.F90
106
107
endif

108
if WITH_GPU_VERSION
Andreas Marek's avatar
Andreas Marek committed
109
110
  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
111
112
endif

113
if !WITH_MPI
114
  libelpa@SUFFIX@_private_la_SOURCES += src/helpers/mod_time_c.F90
115
if !HAVE_DETAILED_TIMINGS
116
  libelpa@SUFFIX@_private_la_SOURCES += src/ftimings/time.c
117
118
119
endif
endif

Andreas Marek's avatar
Andreas Marek committed
120
if WITH_REAL_GENERIC_KERNEL
121
  libelpa@SUFFIX@_private_la_SOURCES +=  src/elpa2/kernels/elpa2_kernels_real.F90
122
123
endif

Andreas Marek's avatar
Andreas Marek committed
124
if WITH_COMPLEX_GENERIC_KERNEL
125
  libelpa@SUFFIX@_private_la_SOURCES +=  src/elpa2/kernels/elpa2_kernels_complex.F90
126
127
endif

Andreas Marek's avatar
Andreas Marek committed
128
if WITH_REAL_GENERIC_SIMPLE_KERNEL
129
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_simple.F90
130
131
endif

Andreas Marek's avatar
Andreas Marek committed
132
if WITH_COMPLEX_GENERIC_SIMPLE_KERNEL
133
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_simple.F90
134
135
endif

Andreas Marek's avatar
Andreas Marek committed
136
if WITH_REAL_BGP_KERNEL
137
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_bgp.f90
138
139
endif

Andreas Marek's avatar
Andreas Marek committed
140
if WITH_REAL_BGQ_KERNEL
141
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_bgq.f90
142
143
endif

144
if WITH_REAL_SSE_ASSEMBLY_KERNEL
145
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_double_precision.s
146
if WANT_SINGLE_PRECISION_REAL
147
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_single_precision.s
148
endif
149

Andreas Marek's avatar
Andreas Marek committed
150
else
151
if WITH_COMPLEX_SSE_ASSEMBLY_KERNEL
152
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_double_precision.s
153
if WANT_SINGLE_PRECISION_COMPLEX
154
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_single_precision.s
155
endif
156
157
endif
endif
Andreas Marek's avatar
Andreas Marek committed
158

159
if WITH_REAL_SSE_BLOCK2_KERNEL
160
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_2hv_double_precision.c
161
if WANT_SINGLE_PRECISION_REAL
162
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_2hv_single_precision.c
163
endif
164
165
endif

Andreas Marek's avatar
Andreas Marek committed
166
if WITH_REAL_AVX_BLOCK2_KERNEL
167
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_double_precision.c
168
if WANT_SINGLE_PRECISION_REAL
169
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_single_precision.c
170
endif
171
172
else
if WITH_REAL_AVX2_BLOCK2_KERNEL
173
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_double_precision.c
174
if WANT_SINGLE_PRECISION_REAL
175
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_single_precision.c
176
endif
177
endif
178
179
endif

180
if WITH_REAL_AVX512_BLOCK2_KERNEL
181
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_2hv_double_precision.c
182
if WANT_SINGLE_PRECISION_REAL
183
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_2hv_single_precision.c
184
endif
185
186
187
endif


188
if WITH_REAL_SSE_BLOCK4_KERNEL
189
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_4hv_double_precision.c
190
if WANT_SINGLE_PRECISION_REAL
191
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_4hv_single_precision.c
192
endif
193
194
endif

Andreas Marek's avatar
Andreas Marek committed
195
if WITH_REAL_AVX_BLOCK4_KERNEL
196
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_double_precision.c
197
if WANT_SINGLE_PRECISION_REAL
198
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_single_precision.c
199
endif
200
201
else
if WITH_REAL_AVX2_BLOCK4_KERNEL
202
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_double_precision.c
203
if WANT_SINGLE_PRECISION_REAL
204
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_single_precision.c
205
endif
206
endif
207
208
endif

209
if WITH_REAL_AVX512_BLOCK4_KERNEL
210
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_4hv_double_precision.c
211
if WANT_SINGLE_PRECISION_REAL
212
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_4hv_single_precision.c
213
endif
214
215
216
217
endif



218
if WITH_REAL_SSE_BLOCK6_KERNEL
219
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_6hv_double_precision.c
220
if WANT_SINGLE_PRECISION_REAL
221
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_6hv_single_precision.c
222
endif
223
224
endif

Andreas Marek's avatar
Andreas Marek committed
225
if WITH_REAL_AVX_BLOCK6_KERNEL
226
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_double_precision.c
227
if WANT_SINGLE_PRECISION_REAL
228
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_single_precision.c
229
endif
230
231
else
if WITH_REAL_AVX2_BLOCK6_KERNEL
232
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_double_precision.c
233
if WANT_SINGLE_PRECISION_REAL
234
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_single_precision.c
235
endif
236
endif
237
238
endif

239
if WITH_REAL_AVX512_BLOCK6_KERNEL
240
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_6hv_double_precision.c
241
if WANT_SINGLE_PRECISION_REAL
242
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_6hv_single_precision.c
243
endif
244
245
246
endif


247
if WITH_COMPLEX_SSE_BLOCK1_KERNEL
248
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_1hv_double_precision.c
249
if WANT_SINGLE_PRECISION_COMPLEX
250
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_1hv_single_precision.c
251
endif
252
253
endif

Andreas Marek's avatar
Andreas Marek committed
254
if WITH_COMPLEX_AVX_BLOCK1_KERNEL
255
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_double_precision.c
256
if WANT_SINGLE_PRECISION_COMPLEX
257
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_single_precision.c
258
endif
259
260
else
if WITH_COMPLEX_AVX2_BLOCK1_KERNEL
261
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_double_precision.c
262
if WANT_SINGLE_PRECISION_COMPLEX
263
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_single_precision.c
264
endif
265
endif
266
267
endif

268
269

if WITH_COMPLEX_AVX512_BLOCK1_KERNEL
270
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_1hv_double_precision.c
271
if WANT_SINGLE_PRECISION_COMPLEX
272
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_1hv_single_precision.c
273
endif
274
275
endif

276
if WITH_COMPLEX_SSE_BLOCK2_KERNEL
277
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_2hv_double_precision.c
278
if WANT_SINGLE_PRECISION_COMPLEX
279
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_2hv_single_precision.c
280
endif
281
282
endif

Andreas Marek's avatar
Andreas Marek committed
283
if WITH_COMPLEX_AVX_BLOCK2_KERNEL
284
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_double_precision.c
285
if WANT_SINGLE_PRECISION_COMPLEX
286
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_single_precision.c
287
endif
288
289
else
if WITH_COMPLEX_AVX2_BLOCK2_KERNEL
290
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_double_precision.c
291
if WANT_SINGLE_PRECISION_COMPLEX
292
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_single_precision.c
293
endif
294
endif
295
296
endif

297
if WITH_COMPLEX_AVX512_BLOCK2_KERNEL
298
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_2hv_double_precision.c
299
if WANT_SINGLE_PRECISION_COMPLEX
300
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_2hv_single_precision.c
301
endif
302
303
endif

304
.cu.lo:
305
	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
306

307
308
309
include generated_headers.am
BUILT_SOURCES = $(generated_headers)

310
# install public Fortran modules files in the include/ dir
311
elpa_includedir = $(includedir)/elpa@SUFFIX@-@PACKAGE_VERSION@
312
nobase_elpa_include_HEADERS = $(wildcard modules/*)
313
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
314

Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
315
dist_man_MANS = \
316
           man/solve_evp_real.3 \
317
	   man/solve_evp_real_1stage_double.3 \
Andreas Marek's avatar
Andreas Marek committed
318
	   man/solve_evp_complex.3 \
319
320
321
	   man/solve_evp_complex_1stage_double.3 \
	   man/solve_evp_real_2stage_double.3 \
	   man/solve_evp_complex_2stage_double.3 \
322
323
	   man/elpa_solve_evp_real_1stage_double.3 \
	   man/elpa_solve_evp_complex_1stage_double.3 \
Andreas Marek's avatar
Andreas Marek committed
324
325
	   man/elpa_solve_evp_real_2stage_double.3 \
	   man/elpa_solve_evp_complex_2stage_double.3 \
Andreas Marek's avatar
Andreas Marek committed
326
	   man/get_elpa_row_col_comms.3 \
327
	   man/get_elpa_communicators.3 \
328
329
	   man/elpa_mult_at_b_real_double.3 \
	   man/elpa_mult_at_b_real_single.3 \
330
331
	   man/elpa_mult_ah_b_complex_double.3 \
	   man/elpa_mult_ah_b_complex_single.3 \
332
333
	   man/elpa_invert_trm_real_double.3 \
	   man/elpa_invert_trm_real_single.3 \
334
335
	   man/elpa_invert_trm_complex_double.3 \
	   man/elpa_invert_trm_complex_single.3 \
336
337
338
339
	   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 \
340
	   man/elpa_tests.1 \
341
	   man/elpa2_print_kernels.1
Andreas Marek's avatar
Andreas Marek committed
342

343
344
if WANT_SINGLE_PRECISION_REAL

345
dist_man_MANS += man/solve_evp_real_1stage_single.3 \
346
		 man/elpa_solve_evp_real_1stage_single.3 \
Andreas Marek's avatar
Andreas Marek committed
347
		 man/elpa_solve_evp_real_2stage_single.3 \
348
         	 man/solve_evp_real_2stage_single.3
Andreas Marek's avatar
Andreas Marek committed
349

350
351
352
353
endif

if WANT_SINGLE_PRECISION_COMPLEX

354
dist_man_MANS += man/solve_evp_complex_1stage_single.3 \
355
		 man/elpa_solve_evp_complex_1stage_single.3 \
Andreas Marek's avatar
Andreas Marek committed
356
		 man/elpa_solve_evp_complex_2stage_single.3 \
357
                 man/solve_evp_complex_2stage_single.3
358
359
endif

360
361
#needed?

362
# other files to distribute
363
filesdir = $(docdir)/examples
364
dist_files_DATA = \
365
366
  test/Fortran/read_real.F90 \
  test/Fortran/test_complex2.F90 \
367
  test/Fortran/test_complex2_default.F90 \
368
  test/Fortran/test_complex2_api.F90 \
369
  test/Fortran/test_complex2_banded.F90 \
370
371
  test/Fortran/test_complex.F90 \
  test/Fortran/test_real2.F90 \
372
  test/Fortran/test_real2_default.F90 \
373
374
  test/Fortran/test_real2_qr.F90 \
  test/Fortran/test_real2_api.F90 \
375
  test/Fortran/test_real2_banded.F90 \
376
377
378
  test/Fortran/test_real.F90 \
  test/Fortran/test_real_with_c.F90 \
  test/Fortran/test_toeplitz.F90 \
379
  test/Fortran/test_transpose_multiply_real.F90 \
380
  test/Fortran/test_transpose_multiply_complex.F90 \
381
  test/Fortran/test_cholesky_real.F90 \
382
  test/Fortran/test_invert_trm_real.F90 \
383
  test/Fortran/test_cholesky_complex.F90 \
384
  test/Fortran/test_invert_trm_complex.F90 \
385
386
  test/Fortran/test_new_interface_real.F90 \
  test/Fortran/test_new_interface_complex.F90 \
387
  test/Fortran/elpa_tests.F90 \
Andreas Marek's avatar
Andreas Marek committed
388
  src/elpa2/elpa2_print_kernels.F90
389

390
391
#end needed

392
dist_doc_DATA = README.md USERS_GUIDE.md INSTALL.md CONTRIBUTING.md LICENSE Changelog COPYING/COPYING COPYING/gpl.txt COPYING/lgpl.txt
393

394
395
# pkg-config stuff
pkgconfigdir = $(libdir)/pkgconfig
396
pkgconfig_DATA = @PKG_CONFIG_FILE@
397

398
399
# programs
bin_PROGRAMS = \
400
  elpa_tests@SUFFIX@ \
401
  elpa2_print_kernels@SUFFIX@
402
403

noinst_PROGRAMS = \
404
  elpa1_test_real@SUFFIX@ \
405
406
  elpa1_test_complex@SUFFIX@ \
  elpa2_test_real@SUFFIX@ \
407
408
409
  elpa2_test_real_default@SUFFIX@ \
  elpa2_test_real_qr@SUFFIX@ \
  elpa2_test_real_api@SUFFIX@ \
410
  elpa2_test_real_banded@SUFFIX@ \
Andreas Marek's avatar
Andreas Marek committed
411
  elpa2_test_complex@SUFFIX@ \
412
  elpa2_test_complex_default@SUFFIX@ \
413
  elpa2_test_complex_api@SUFFIX@ \
414
  elpa2_test_complex_banded@SUFFIX@ \
415
  elpa_driver_real@SUFFIX@ \
416
  elpa_driver_complex@SUFFIX@ \
417
  elpa1_real_toeplitz@SUFFIX@ \
418
  elpa1_real_transpose_multiply@SUFFIX@ \
419
  elpa1_complex_transpose_multiply@SUFFIX@ \
420
  elpa1_real_cholesky@SUFFIX@ \
421
  elpa1_real_invert_trm@SUFFIX@ \
422
  elpa1_complex_cholesky@SUFFIX@ \
423
  elpa1_complex_invert_trm@SUFFIX@ \
424
  elpa1_test_real_with_c@SUFFIX@ \
Andreas Marek's avatar
Andreas Marek committed
425
426
427
  elpa1_test_real_c_version@SUFFIX@ \
  elpa1_test_complex_c_version@SUFFIX@ \
  elpa2_test_real_c_version@SUFFIX@ \
428
  elpa2_test_complex_c_version@SUFFIX@ \
429
  elpa_driver_real_c_version@SUFFIX@ \
430
431
  elpa_test_new_interface_real@SUFFIX@ \
  elpa_test_new_interface_complex@SUFFIX@ \
432
  elpa_driver_complex_c_version@SUFFIX@
Andreas Marek's avatar
Andreas Marek committed
433

434
435
if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
436
437
  elpa1_test_complex_single_precision@SUFFIX@ \
  elpa2_test_complex_single_precision@SUFFIX@ \
438
  elpa2_test_complex_default_single_precision@SUFFIX@ \
439
  elpa1_complex_transpose_multiply_single_precision@SUFFIX@ \
440
  elpa_driver_complex_single_precision@SUFFIX@ \
441
  elpa1_complex_cholesky_single_precision@SUFFIX@ \
442
  elpa1_complex_invert_trm_single_precision@SUFFIX@ \
443
  elpa2_test_complex_api_single_precision@SUFFIX@ \
444
445
  elpa_driver_complex_c_version_single_precision@SUFFIX@ \
  elpa_test_new_interface_complex_single@SUFFIX@
446
447
448
449
endif

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
450
451
  elpa1_test_real_single_precision@SUFFIX@ \
  elpa2_test_real_single_precision@SUFFIX@ \
452
453
  elpa2_test_real_default_single_precision@SUFFIX@ \
  elpa2_test_real_qr_single_precision@SUFFIX@ \
454
  elpa2_test_real_api_single_precision@SUFFIX@ \
455
  elpa_driver_real_single_precision@SUFFIX@ \
456
457
  elpa1_real_transpose_multiply_single_precision@SUFFIX@ \
  elpa1_real_cholesky_single_precision@SUFFIX@ \
458
  elpa1_real_invert_trm_single_precision@SUFFIX@ \
459
  elpa_driver_real_c_version_single_precision@SUFFIX@ \
460
461
  elpa1_real_toeplitz_single_precision@SUFFIX@ \
  elpa_test_new_interface_real_single@SUFFIX@
462
463
464
465
endif

if WITH_GPU_VERSION
noinst_PROGRAMS += \
466
467
  elpa1_test_complex_gpu@SUFFIX@ \
  elpa1_test_real_gpu@SUFFIX@ \
468
469
  elpa2_test_complex_gpu@SUFFIX@ \
  elpa2_test_real_gpu@SUFFIX@
470
471
472

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
473
  elpa1_test_real_gpu_single_precision@SUFFIX@ \
474
  elpa2_test_real_gpu_single_precision@SUFFIX@
475
476
477
478
endif

if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
479
  elpa1_test_complex_gpu_single_precision@SUFFIX@ \
480
  elpa2_test_complex_gpu_single_precision@SUFFIX@
481
482
483
484
endif

endif

Andreas Marek's avatar
Andreas Marek committed
485
build_lib = libelpatest@SUFFIX@.la libelpa@SUFFIX@.la
486
487
488
489
490

# library with shared sources for the test files
noinst_LTLIBRARIES += libelpatest@SUFFIX@.la
libelpatest@SUFFIX@_la_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
libelpatest@SUFFIX@_la_SOURCES = \
491
492
	test/shared/util.F90 \
	test/shared/read_input_parameters.F90  \
493
494
	test/shared/check_correctness.F90 \
	test/shared/check_correctness_template.X90 \
495
496
497
	test/shared/setup_mpi.F90 \
	test/shared/blacs_infrastructure.F90 \
	test/shared/prepare_matrix.F90 \
Andreas Marek's avatar
Andreas Marek committed
498
	test/shared/prepare_matrix_template.X90 \
499
500
501
	test/shared/mod_output_types.F90 \
	test/shared/mod_from_c.F90 \
	test/shared/call_elpa1.c
Andreas Marek's avatar
Andreas Marek committed
502

503
if HAVE_REDIRECT
504
libelpatest@SUFFIX@_la_SOURCES += \
505
506
	test/shared/redir.c \
	test/shared/redirect.F90
507
endif
508
509
510
511
elpa_test_new_interface_real@SUFFIX@_SOURCES = test/Fortran/test_new_interface_real.F90
elpa_test_new_interface_real@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
elpa_test_new_interface_real@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa_test_new_interface_real@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
512

513
514
515
516
elpa_test_new_interface_complex@SUFFIX@_SOURCES = test/Fortran/test_new_interface_complex.F90
elpa_test_new_interface_complex@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
elpa_test_new_interface_complex@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa_test_new_interface_complex@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
517

518
elpa1_test_real_c_version@SUFFIX@_SOURCES = test/C/elpa1_test_real_c_version.c
519
elpa1_test_real_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
520
elpa1_test_real_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
521
EXTRA_elpa1_test_real_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
522

523
elpa1_test_real_with_c@SUFFIX@_SOURCES = test/Fortran/test_real_with_c.F90
524
elpa1_test_real_with_c@SUFFIX@_LDADD = $(build_lib)
525
elpa1_test_real_with_c@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
526
EXTRA_elpa1_test_real_with_c@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
527

528
529
530
531
532
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)
elpa_driver_real_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa_driver_real_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

533
elpa1_test_complex_c_version@SUFFIX@_SOURCES = test/C/elpa1_test_complex_c_version.c
534
elpa1_test_complex_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
535
elpa1_test_complex_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
536
EXTRA_elpa1_test_complex_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
537

538
539
540
541
542
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)
elpa_driver_complex_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa_driver_complex_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

543
elpa2_test_real_c_version@SUFFIX@_SOURCES = test/C/elpa2_test_real_c_version.c
544
elpa2_test_real_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
545
elpa2_test_real_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
546
EXTRA_elpa2_test_real_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
547

548
elpa2_test_complex_c_version@SUFFIX@_SOURCES = test/C/elpa2_test_complex_c_version.c
549
elpa2_test_complex_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
550
elpa2_test_complex_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
551
EXTRA_elpa2_test_complex_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
552

553
elpa1_test_real@SUFFIX@_SOURCES = test/Fortran/test_real.F90
554
elpa1_test_real@SUFFIX@_LDADD = $(build_lib)
555
elpa1_test_real@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
556
EXTRA_elpa1_test_real@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
557

558
559
560
561
elpa1_real_toeplitz@SUFFIX@_SOURCES = test/Fortran/test_toeplitz.F90
elpa1_real_toeplitz@SUFFIX@_LDADD = $(build_lib)
elpa1_real_toeplitz@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_real_toeplitz@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
562

563
564
565
566
567
elpa1_real_transpose_multiply@SUFFIX@_SOURCES = test/Fortran/test_transpose_multiply_real.F90
elpa1_real_transpose_multiply@SUFFIX@_LDADD = $(build_lib)
elpa1_real_transpose_multiply@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_real_transpose_multiply@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

568
569
570
571
elpa1_complex_transpose_multiply@SUFFIX@_SOURCES = test/Fortran/test_transpose_multiply_complex.F90
elpa1_complex_transpose_multiply@SUFFIX@_LDADD = $(build_lib)
elpa1_complex_transpose_multiply@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_complex_transpose_multiply@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
572

573
574
575
576
577
elpa1_real_cholesky@SUFFIX@_SOURCES = test/Fortran/test_cholesky_real.F90
elpa1_real_cholesky@SUFFIX@_LDADD = $(build_lib)
elpa1_real_cholesky@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_real_cholesky@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

578
579
580
581
582
elpa1_real_invert_trm@SUFFIX@_SOURCES = test/Fortran/test_invert_trm_real.F90
elpa1_real_invert_trm@SUFFIX@_LDADD = $(build_lib)
elpa1_real_invert_trm@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_real_invert_trm@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

583
584
585
586
587
elpa1_complex_cholesky@SUFFIX@_SOURCES = test/Fortran/test_cholesky_complex.F90
elpa1_complex_cholesky@SUFFIX@_LDADD = $(build_lib)
elpa1_complex_cholesky@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_complex_cholesky@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

588
589
590
591
592
elpa1_complex_invert_trm@SUFFIX@_SOURCES = test/Fortran/test_invert_trm_complex.F90
elpa1_complex_invert_trm@SUFFIX@_LDADD = $(build_lib)
elpa1_complex_invert_trm@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_complex_invert_trm@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

593
elpa2_test_real@SUFFIX@_SOURCES = test/Fortran/test_real2.F90
594
elpa2_test_real@SUFFIX@_LDADD = $(build_lib)
595
elpa2_test_real@SUFFIX@_LDFLAGS = -static
596
elpa2_test_real@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
597
EXTRA_elpa2_test_real@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
598

599
600
601
602
elpa2_test_real_default@SUFFIX@_SOURCES = test/Fortran/test_real2_default.F90
elpa2_test_real_default@SUFFIX@_LDADD = $(build_lib)
elpa2_test_real_default@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_real_default@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
603

604
605
606
607
elpa2_test_real_qr@SUFFIX@_SOURCES = test/Fortran/test_real2_qr.F90
elpa2_test_real_qr@SUFFIX@_LDADD = $(build_lib)
elpa2_test_real_qr@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_real_qr@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
608

609
610
611
elpa2_test_real_api@SUFFIX@_SOURCES = test/Fortran/test_real2_api.F90
elpa2_test_real_api@SUFFIX@_LDADD = $(build_lib)
elpa2_test_real_api@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
Andreas Marek's avatar
Typo    
Andreas Marek committed
612
EXTRA_elpa2_test_real_api@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
613

614
615
616
617
618
elpa2_test_real_banded@SUFFIX@_SOURCES = test/Fortran/test_real2_banded.F90
elpa2_test_real_banded@SUFFIX@_LDADD = $(build_lib)
elpa2_test_real_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_real_banded@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

619
elpa1_test_complex@SUFFIX@_SOURCES = test/Fortran/test_complex.F90
620
elpa1_test_complex@SUFFIX@_LDADD = $(build_lib)
621
elpa1_test_complex@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
622
EXTRA_elpa1_test_complex@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
623

624
elpa2_test_complex@SUFFIX@_SOURCES = test/Fortran/test_complex2.F90
625
elpa2_test_complex@SUFFIX@_LDADD = $(build_lib)
626
elpa2_test_complex@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
627
EXTRA_elpa2_test_complex@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
628

629
630
631
632
elpa2_test_complex_default@SUFFIX@_SOURCES = test/Fortran/test_complex2_default.F90
elpa2_test_complex_default@SUFFIX@_LDADD = $(build_lib)
elpa2_test_complex_default@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_complex_default@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
633

634
635
636
637
elpa2_test_complex_api@SUFFIX@_SOURCES = test/Fortran/test_complex2_api.F90
elpa2_test_complex_api@SUFFIX@_LDADD = $(build_lib)
elpa2_test_complex_api@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_complex_api@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
638

639
640
641
642
643
644
elpa2_test_complex_banded@SUFFIX@_SOURCES = test/Fortran/test_complex2_banded.F90
elpa2_test_complex_banded@SUFFIX@_LDADD = $(build_lib)
elpa2_test_complex_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_complex_banded@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90


645
646
647
648
649
elpa_driver_real@SUFFIX@_SOURCES = test/Fortran/test_driver_real.F90
elpa_driver_real@SUFFIX@_LDADD = $(build_lib)
elpa_driver_real@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa_driver_real@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

650
651
652
653
654
elpa_driver_complex@SUFFIX@_SOURCES = test/Fortran/test_driver_complex.F90
elpa_driver_complex@SUFFIX@_LDADD = $(build_lib)
elpa_driver_complex@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa_driver_complex@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

Andreas Marek's avatar
Andreas Marek committed
655
elpa2_print_kernels@SUFFIX@_SOURCES = src/elpa2/elpa2_print_kernels.F90
656
elpa2_print_kernels@SUFFIX@_LDADD = $(build_lib)
657
elpa2_print_kernels@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
Andreas Marek's avatar
Andreas Marek committed
658

659
660
661
662
elpa_tests@SUFFIX@_SOURCES = test/Fortran/elpa_tests.F90
elpa_tests@SUFFIX@_LDADD = $(build_lib)
elpa_tests@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules

663
if WANT_SINGLE_PRECISION_REAL
664
665
666
667
668
elpa_test_new_interface_real_single@SUFFIX@_SOURCES = test/Fortran/test_new_interface_real_single.F90
elpa_test_new_interface_real_single@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
elpa_test_new_interface_real_single@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa_test_new_interface_real_single@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

669
elpa1_test_real_single_precision@SUFFIX@_SOURCES = test/Fortran/test_real_single.F90
670
elpa1_test_real_single_precision@SUFFIX@_LDADD = $(build_lib)
671
elpa1_test_real_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
672
EXTRA_elpa1_test_real_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
673

674
elpa2_test_real_single_precision@SUFFIX@_SOURCES = test/Fortran/test_real2_single.F90
675
676
elpa2_test_real_single_precision@SUFFIX@_LDFLAGS = -static
elpa2_test_real_single_precision@SUFFIX@_LDADD = $(build_lib)
677
elpa2_test_real_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
678
EXTRA_elpa2_test_real_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
679

680
681
682
683
684
elpa_driver_real_single_precision@SUFFIX@_SOURCES = test/Fortran/test_driver_real_single.F90
elpa_driver_real_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa_driver_real_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa_driver_real_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

685
elpa1_real_toeplitz_single_precision@SUFFIX@_SOURCES = test/Fortran/test_toeplitz_single.F90
686
687
688
689
elpa1_real_toeplitz_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa1_real_toeplitz_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_real_toeplitz_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

690
691
692
693
694
elpa1_real_transpose_multiply_single_precision@SUFFIX@_SOURCES = test/Fortran/test_transpose_multiply_real_single.F90
elpa1_real_transpose_multiply_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa1_real_transpose_multiply_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_real_transpose_multiply_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

695
696
697
698
699
elpa_driver_real_c_version_single_precision@SUFFIX@_SOURCES = test/C/elpa_driver_real_c_version_single.c
elpa_driver_real_c_version_single_precision@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
elpa_driver_real_c_version_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa_driver_real_c_version_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

700
701
702
703
704
elpa1_real_cholesky_single_precision@SUFFIX@_SOURCES = test/Fortran/test_cholesky_real_single.F90
elpa1_real_cholesky_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa1_real_cholesky_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_real_cholesky_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

705
706
707
708
709
elpa1_real_invert_trm_single_precision@SUFFIX@_SOURCES = test/Fortran/test_invert_trm_real_single.F90
elpa1_real_invert_trm_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa1_real_invert_trm_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_real_invert_trm_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

710
elpa2_test_real_default_single_precision@SUFFIX@_SOURCES = test/Fortran/test_real2_default_single.F90
711
712
713
714
elpa2_test_real_default_single_precision@SUFFIX@_LDADD = $(build_lib)
#elpa2_test_real_default_single_precision@SUFFIX@_LDFLAGS = -static
elpa2_test_real_default_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_real_default_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
715

716
717
718
719
720
elpa2_test_real_qr_single_precision@SUFFIX@_SOURCES = \
	        test/Fortran/test_real2_qr_single.F90
elpa2_test_real_qr_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa2_test_real_qr_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_real_qr_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
721

722
723
724
725
elpa2_test_real_api_single_precision@SUFFIX@_SOURCES = test/Fortran/test_real2_api_single.F90
elpa2_test_real_api_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa2_test_real_api_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_real_api_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
726
727
728
endif

if WANT_SINGLE_PRECISION_COMPLEX
729
730
731
732
733
elpa_test_new_interface_complex_single@SUFFIX@_SOURCES = test/Fortran/test_new_interface_complex_single.F90
elpa_test_new_interface_complex_single@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
elpa_test_new_interface_complex_single@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa_test_new_interface_complex_single@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

734
elpa1_test_complex_single_precision@SUFFIX@_SOURCES = test/Fortran/test_complex_single.F90
735
elpa1_test_complex_single_precision@SUFFIX@_LDADD = $(build_lib)
736
elpa1_test_complex_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
737
EXTRA_elpa1_test_complex_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
738

739
740
741
742
743
elpa_driver_complex_single_precision@SUFFIX@_SOURCES = test/Fortran/test_driver_complex_single.F90
elpa_driver_complex_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa_driver_complex_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa_driver_complex_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

744
745
746
747
748
elpa_driver_complex_c_version_single_precision@SUFFIX@_SOURCES = test/C/elpa_driver_complex_c_version_single.c
elpa_driver_complex_c_version_single_precision@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
elpa_driver_complex_c_version_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa_driver_complex_c_version_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

749
elpa2_test_complex_single_precision@SUFFIX@_SOURCES = test/Fortran/test_complex2_single.F90
750
elpa2_test_complex_single_precision@SUFFIX@_LDADD = $(build_lib)
751
elpa2_test_complex_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
752
EXTRA_elpa2_test_complex_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
753

754
755
756
757
758
elpa2_test_complex_default_single_precision@SUFFIX@_SOURCES = test/Fortran/test_complex2_default_single.F90 $(shared_sources) $(redirect_sources)
elpa2_test_complex_default_single_precision@SUFFIX@_LDADD = $(build_lib)
#elpa2_test_complex_default_single_precision@SUFFIX@_LDFLAGS = -static
elpa2_test_complex_default_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_complex_default_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
759

760
761
762
763
elpa1_complex_transpose_multiply_single_precision@SUFFIX@_SOURCES = test/Fortran/test_transpose_multiply_complex_single.F90
elpa1_complex_transpose_multiply_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa1_complex_transpose_multiply_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_complex_transpose_multiply_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
764

765
766
767
768
elpa1_complex_cholesky_single_precision@SUFFIX@_SOURCES = test/Fortran/test_cholesky_complex_single.F90
elpa1_complex_cholesky_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa1_complex_cholesky_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_complex_cholesky_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
769

770
771
772
773
774
elpa1_complex_invert_trm_single_precision@SUFFIX@_SOURCES = test/Fortran/test_invert_trm_complex_single.F90
elpa1_complex_invert_trm_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa1_complex_invert_trm_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_complex_invert_trm_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

775
776
777
778
elpa2_test_complex_api_single_precision@SUFFIX@_SOURCES = test/Fortran/test_complex2_api_single.F90
elpa2_test_complex_api_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa2_test_complex_api_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_complex_api_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
779
780
781
endif

if WITH_GPU_VERSION
782
783
784
785
786
787
788
789
790
791
elpa1_test_real_gpu@SUFFIX@_SOURCES = test/Fortran/test_real_gpu.F90
elpa1_test_real_gpu@SUFFIX@_LDADD = $(build_lib)
elpa1_test_real_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_test_real_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

elpa1_test_complex_gpu@SUFFIX@_SOURCES = test/Fortran/test_complex_gpu.F90
elpa1_test_complex_gpu@SUFFIX@_LDADD = $(build_lib)
elpa1_test_complex_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_test_complex_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

792
793
794
795
elpa2_test_real_gpu@SUFFIX@_SOURCES = test/Fortran/test_real2_gpu.F90
elpa2_test_real_gpu@SUFFIX@_LDADD = $(build_lib)
elpa2_test_real_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_real_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
796

797
798
799
800
elpa2_test_complex_gpu@SUFFIX@_SOURCES = test/Fortran/test_complex2_gpu.F90
elpa2_test_complex_gpu@SUFFIX@_LDADD = $(build_lib)
elpa2_test_complex_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_complex_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
801
802

if WANT_SINGLE_PRECISION_REAL
803
804
805
806
807
elpa1_test_real_gpu_single_precision@SUFFIX@_SOURCES = test/Fortran/test_real_gpu_single.F90
elpa1_test_real_gpu_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa1_test_real_gpu_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_test_real_gpu_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

808
809
810
811
elpa2_test_real_gpu_single_precision@SUFFIX@_SOURCES = test/Fortran/test_real2_gpu_single.F90
elpa2_test_real_gpu_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa2_test_real_gpu_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_real_gpu_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
812
813
814
endif

if WANT_SINGLE_PRECISION_COMPLEX
815
816
817
818
819
elpa1_test_complex_gpu_single_precision@SUFFIX@_SOURCES = test/Fortran/test_complex_gpu_single.F90
elpa1_test_complex_gpu_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa1_test_complex_gpu_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa1_test_complex_gpu_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

820
821
822
823
elpa2_test_complex_gpu_single_precision@SUFFIX@_SOURCES = test/Fortran/test_complex2_gpu_single.F90
elpa2_test_complex_gpu_single_precision@SUFFIX@_LDADD = $(build_lib)
elpa2_test_complex_gpu_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
EXTRA_elpa2_test_complex_gpu_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
824
825
826
endif

endif
827
#  elpa2_test_real_default_kernel_qr_decomposition@SUFFIX@.sh
828

829
check_SCRIPTS = \
830
831
  elpa1_test_real@SUFFIX@.sh \
  elpa2_test_real@SUFFIX@.sh \
832
  elpa2_test_real_default@SUFFIX@.sh \
833
834
  elpa1_test_complex@SUFFIX@.sh \
  elpa2_test_complex@SUFFIX@.sh \
835
836
837
  elpa2_test_real_qr@SUFFIX@.sh \
  elpa2_test_complex_default@SUFFIX@.sh \
  elpa2_test_real_api@SUFFIX@.sh \
838
  elpa2_test_real_banded@SUFFIX@.sh \
839
  elpa2_test_complex_api@SUFFIX@.sh \
840
  elpa2_test_complex_banded@SUFFIX@.sh \
841
  elpa_driver_real@SUFFIX@.sh \
842
  elpa_driver_complex@SUFFIX@.sh \
843
  elpa1_real_toeplitz@SUFFIX@.sh \
844
  elpa1_test_real_with_c@SUFFIX@.sh \
845
  elpa1_real_cholesky@SUFFIX@.sh \
846
  elpa1_real_invert_trm@SUFFIX@.sh \
847
  elpa1_real_transpose_multiply@SUFFIX@.sh \
848
  elpa1_complex_cholesky@SUFFIX@.sh \
849