Makefile.am 43.3 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 16
        src/elpa1.F90 \
        src/elpa2.F90 \
17
	src/elpa1_auxiliary.F90 \
18
        src/elpa1_utilities.F90 \
19
        src/elpa2_utilities.F90 \
20
        src/elpa_utilities.F90
21 22 23

# internal parts
noinst_LTLIBRARIES += libelpa@SUFFIX@_private.la
24
libelpa@SUFFIX@_private_la_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
25
libelpa@SUFFIX@_private_la_SOURCES = \
26
        src/mod_precision.F90 \
27 28 29 30 31 32 33
        src/mod_mpi.F90 \
        src/mod_mpi_stubs.F90 \
        src/mod_pack_unpack_real.F90 \
        src/mod_compute_hh_trafo_real.F90 \
        src/mod_compute_hh_trafo_complex.F90 \
        src/mod_pack_unpack_complex.F90 \
        src/aligned_mem.F90 \
34
        src/elpa1_compute_private.F90 \
35
	src/elpa2_determine_workload.F90 \
36
        src/elpa2_compute.F90 \
37 38
        src/elpa2_kernels/mod_fortran_interfaces.F90 \
        src/elpa2_kernels/mod_single_hh_trafo_real.F90 \
39
        src/elpa_c_interface.F90 \
40 41 42 43
        src/check_for_gpu.F90 \
        src/mod_cuda.F90 \
        src/interface_c_kernel.F90 \
        src/mod_pack_unpack_real_gpu.F90 \
44
        src/elpa_qr/qr_utils.F90 \
45
        src/elpa_qr/elpa_qrkernels.F90 \
46 47 48
        src/elpa_qr/elpa_pdlarfb.F90 \
        src/elpa_qr/elpa_pdgeqrf.F90

49
EXTRA_libelpa@SUFFIX@_private_la_DEPENDENCIES = \
50 51
        src/elpa_reduce_add_vectors.X90 \
        src/elpa_transpose_vectors.X90 \
52
        src/elpa1_compute_template.X90 \
53 54
        src/elpa2_compute_real_template.X90 \
        src/elpa2_compute_complex_template.X90 \
55 56 57 58 59 60 61 62 63 64
	src/elpa2_bandred_real_template.X90 \
	src/elpa2_symm_matrix_allreduce_real_template.X90 \
	src/elpa2_trans_ev_band_to_full_real_template.X90 \
	src/elpa2_tridiag_band_real_template.X90 \
	src/elpa2_trans_ev_tridi_to_band_real_template.X90 \
	src/elpa2_bandred_complex_template.X90 \
	src/elpa2_herm_matrix_allreduce_complex_template.X90 \
	src/elpa2_trans_ev_band_to_full_complex_template.X90 \
	src/elpa2_tridiag_band_complex_template.X90 \
	src/elpa2_trans_ev_tridi_to_band_complex_template.X90 \
65
	src/elpa2_kernels/elpa2_kernels_real_template.X90 \
66
	src/elpa2_kernels/elpa2_kernels_complex_template.X90 \
67
	src/elpa2_kernels/elpa2_kernels_simple_template.X90 \
68
        src/redist_band.X90 \
69 70
        src/precision_macros.h \
        src/precision_macros_complex.h
71

72
lib_LTLIBRARIES = libelpa@SUFFIX@.la
73
libelpa@SUFFIX@_la_LINK = $(FCLINK) $(AM_LDFLAGS) -version-info $(ELPA_SO_VERSION)
74 75
libelpa@SUFFIX@_la_LIBADD = libelpa@SUFFIX@_public.la libelpa@SUFFIX@_private.la
libelpa@SUFFIX@_la_SOURCES =
76

77

78
if HAVE_DETAILED_TIMINGS
79
  libelpa@SUFFIX@_private_la_SOURCES += \
80 81 82 83 84 85 86 87 88
        src/timer.F90 \
        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
89 90
else
  libelpa@SUFFIX@_private_la_SOURCES += \
Andreas Marek's avatar
Andreas Marek committed
91
        src/timer_dummy.F90
92 93
endif

94
if WITH_GPU_VERSION
95 96
  libelpa@SUFFIX@_private_la_SOURCES +=  src/cudaFunctions.cu src/cuUtils.cu src/ev_tridi_band_gpu_c_v2.cu
  EXTRA_libelpa@SUFFIX@_private_la_DEPENDENCIES +=   src/ev_tridi_band_gpu_c_v2_complex_template.Xcu src/ev_tridi_band_gpu_c_v2_real_template.Xcu
97 98
endif

99
if !WITH_MPI
100
  libelpa@SUFFIX@_private_la_SOURCES += src/mod_time_c.F90
101
if !HAVE_DETAILED_TIMINGS
102
  libelpa@SUFFIX@_private_la_SOURCES += src/ftimings/time.c
103 104 105
endif
endif

Andreas Marek's avatar
Andreas Marek committed
106
if WITH_REAL_GENERIC_KERNEL
107
  libelpa@SUFFIX@_private_la_SOURCES +=  src/elpa2_kernels/elpa2_kernels_real.F90
108 109
endif

Andreas Marek's avatar
Andreas Marek committed
110
if WITH_COMPLEX_GENERIC_KERNEL
111
  libelpa@SUFFIX@_private_la_SOURCES +=  src/elpa2_kernels/elpa2_kernels_complex.F90
112 113
endif

Andreas Marek's avatar
Andreas Marek committed
114
if WITH_REAL_GENERIC_SIMPLE_KERNEL
115
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_simple.F90
116 117
endif

Andreas Marek's avatar
Andreas Marek committed
118
if WITH_COMPLEX_GENERIC_SIMPLE_KERNEL
119
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_complex_simple.F90
120 121
endif

Andreas Marek's avatar
Andreas Marek committed
122
if WITH_REAL_BGP_KERNEL
123
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_bgp.f90
124 125
endif

Andreas Marek's avatar
Andreas Marek committed
126
if WITH_REAL_BGQ_KERNEL
127
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_bgq.f90
128 129
endif

130
if WITH_REAL_SSE_ASSEMBLY_KERNEL
131
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_asm_x86_64_double_precision.s
132
if WANT_SINGLE_PRECISION_REAL
133
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_asm_x86_64_single_precision.s
134
endif
135

Andreas Marek's avatar
Andreas Marek committed
136
else
137
if WITH_COMPLEX_SSE_ASSEMBLY_KERNEL
138
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_asm_x86_64_double_precision.s
139
if WANT_SINGLE_PRECISION_COMPLEX
140
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_asm_x86_64_single_precision.s
141
endif
142 143
endif
endif
Andreas Marek's avatar
Andreas Marek committed
144

145
if WITH_REAL_SSE_BLOCK2_KERNEL
146
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_sse_2hv_double_precision.c
147
if WANT_SINGLE_PRECISION_REAL
148
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_sse_2hv_single_precision.c
149
endif
150 151
endif

Andreas Marek's avatar
Andreas Marek committed
152
if WITH_REAL_AVX_BLOCK2_KERNEL
153
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_avx-avx2_2hv_double_precision.c
154
if WANT_SINGLE_PRECISION_REAL
155
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_avx-avx2_2hv_single_precision.c
156
endif
157 158
else
if WITH_REAL_AVX2_BLOCK2_KERNEL
159
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_avx-avx2_2hv_double_precision.c
160
if WANT_SINGLE_PRECISION_REAL
161
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_avx-avx2_2hv_single_precision.c
162
endif
163
endif
164 165
endif

166
if WITH_REAL_SSE_BLOCK4_KERNEL
167
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_sse_4hv_double_precision.c
168
if WANT_SINGLE_PRECISION_REAL
169
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_sse_4hv_single_precision.c
170
endif
171 172
endif

Andreas Marek's avatar
Andreas Marek committed
173
if WITH_REAL_AVX_BLOCK4_KERNEL
174
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_avx-avx2_4hv_double_precision.c
175
if WANT_SINGLE_PRECISION_REAL
176
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_avx-avx2_4hv_single_precision.c
177
endif
178 179
else
if WITH_REAL_AVX2_BLOCK4_KERNEL
180
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_avx-avx2_4hv_double_precision.c
181
if WANT_SINGLE_PRECISION_REAL
182
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_avx-avx2_4hv_single_precision.c
183
endif
184
endif
185 186
endif

187
if WITH_REAL_SSE_BLOCK6_KERNEL
188
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_sse_6hv_double_precision.c
189
if WANT_SINGLE_PRECISION_REAL
190
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_sse_6hv_single_precision.c
191
endif
192 193
endif

Andreas Marek's avatar
Andreas Marek committed
194
if WITH_REAL_AVX_BLOCK6_KERNEL
195
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_avx-avx2_6hv_double_precision.c
196
if WANT_SINGLE_PRECISION_REAL
197
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_avx-avx2_6hv_single_precision.c
198
endif
199 200
else
if WITH_REAL_AVX2_BLOCK6_KERNEL
201
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_avx-avx2_6hv_double_precision.c
202
if WANT_SINGLE_PRECISION_REAL
203
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_real_avx-avx2_6hv_single_precision.c
204
endif
205
endif
206 207
endif

208
if WITH_COMPLEX_SSE_BLOCK1_KERNEL
209
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_complex_sse_1hv_double_precision.c
210
if WANT_SINGLE_PRECISION_COMPLEX
211
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_complex_sse_1hv_single_precision.c
212
endif
213 214
endif

Andreas Marek's avatar
Andreas Marek committed
215
if WITH_COMPLEX_AVX_BLOCK1_KERNEL
216
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_complex_avx-avx2_1hv_double_precision.c
217
if WANT_SINGLE_PRECISION_COMPLEX
218
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_complex_avx-avx2_1hv_single_precision.c
219
endif
220 221
else
if WITH_COMPLEX_AVX2_BLOCK1_KERNEL
222
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_complex_avx-avx2_1hv_double_precision.c
223
if WANT_SINGLE_PRECISION_COMPLEX
224
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_complex_avx-avx2_1hv_single_precision.c
225
endif
226
endif
227 228
endif

229
if WITH_COMPLEX_SSE_BLOCK2_KERNEL
230
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_complex_sse_2hv_double_precision.c
231
if WANT_SINGLE_PRECISION_COMPLEX
232
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_complex_sse_2hv_single_precision.c
233
endif
234 235
endif

Andreas Marek's avatar
Andreas Marek committed
236
if WITH_COMPLEX_AVX_BLOCK2_KERNEL
237
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_complex_avx-avx2_2hv_double_precision.c
238
if WANT_SINGLE_PRECISION_COMPLEX
239
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_complex_avx-avx2_2hv_single_precision.c
240
endif
241 242
else
if WITH_COMPLEX_AVX2_BLOCK2_KERNEL
243
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_complex_avx-avx2_2hv_double_precision.c
244
if WANT_SINGLE_PRECISION_COMPLEX
245
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2_kernels/elpa2_kernels_complex_avx-avx2_2hv_single_precision.c
246
endif
247
endif
248 249
endif

250
.cu.lo:
251
	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
252

253 254 255
include generated_headers.am
BUILT_SOURCES = $(generated_headers)

256
# install public Fortran modules files in the include/ dir
257
elpa_includedir = $(includedir)/elpa@SUFFIX@-@PACKAGE_VERSION@
258
nobase_elpa_include_HEADERS = $(wildcard modules/*)
Andreas Marek's avatar
Andreas Marek committed
259
nobase_elpa_include_HEADERS += elpa/elpa.h elpa/elpa_kernel_constants.h elpa/elpa_generated.h
260

Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
261
dist_man_MANS = \
262
           man/solve_evp_real.3 \
263
	   man/solve_evp_real_1stage_double.3 \
Andreas Marek's avatar
Andreas Marek committed
264
	   man/solve_evp_complex.3 \
265 266 267
	   man/solve_evp_complex_1stage_double.3 \
	   man/solve_evp_real_2stage_double.3 \
	   man/solve_evp_complex_2stage_double.3 \
268 269
	   man/elpa_solve_evp_real_1stage_double.3 \
	   man/elpa_solve_evp_complex_1stage_double.3 \
Andreas Marek's avatar
Andreas Marek committed
270 271
	   man/elpa_solve_evp_real_2stage_double.3 \
	   man/elpa_solve_evp_complex_2stage_double.3 \
Andreas Marek's avatar
Andreas Marek committed
272
	   man/get_elpa_row_col_comms.3 \
273
	   man/get_elpa_communicators.3 \
274 275
	   man/elpa_mult_at_b_real_double.3 \
	   man/elpa_mult_at_b_real_single.3 \
276 277
	   man/elpa_mult_ah_b_complex_double.3 \
	   man/elpa_mult_ah_b_complex_single.3 \
278 279
	   man/elpa_invert_trm_real_double.3 \
	   man/elpa_invert_trm_real_single.3 \
280 281
	   man/elpa_invert_trm_complex_double.3 \
	   man/elpa_invert_trm_complex_single.3 \
282 283 284 285
	   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 \
286
	   man/elpa2_print_kernels.1
Andreas Marek's avatar
Andreas Marek committed
287

288 289
if WANT_SINGLE_PRECISION_REAL

290
dist_man_MANS += man/solve_evp_real_1stage_single.3 \
291
		 man/elpa_solve_evp_real_1stage_single.3 \
Andreas Marek's avatar
Andreas Marek committed
292
		 man/elpa_solve_evp_real_2stage_single.3 \
293
         	 man/solve_evp_real_2stage_single.3
Andreas Marek's avatar
Andreas Marek committed
294

295 296 297 298
endif

if WANT_SINGLE_PRECISION_COMPLEX

299
dist_man_MANS += man/solve_evp_complex_1stage_single.3 \
300
		 man/elpa_solve_evp_complex_1stage_single.3 \
Andreas Marek's avatar
Andreas Marek committed
301
		 man/elpa_solve_evp_complex_2stage_single.3 \
302
                 man/solve_evp_complex_2stage_single.3
303 304
endif

305 306
#needed?

307
# other files to distribute
308
filesdir = $(docdir)/examples
309
dist_files_DATA = \
310 311
  test/Fortran/read_real.F90 \
  test/Fortran/test_complex2.F90 \
312
  test/Fortran/test_complex2_default.F90 \
313 314 315
  test/Fortran/test_complex2_api.F90 \
  test/Fortran/test_complex.F90 \
  test/Fortran/test_real2.F90 \
316
  test/Fortran/test_real2_default.F90 \
317 318 319 320 321
  test/Fortran/test_real2_qr.F90 \
  test/Fortran/test_real2_api.F90 \
  test/Fortran/test_real.F90 \
  test/Fortran/test_real_with_c.F90 \
  test/Fortran/test_toeplitz.F90 \
322
  test/Fortran/test_transpose_multiply_real.F90 \
323
  test/Fortran/test_transpose_multiply_complex.F90 \
324
  test/Fortran/test_cholesky_real.F90 \
325
  test/Fortran/test_invert_trm_real.F90 \
326
  test/Fortran/test_cholesky_complex.F90 \
327
  test/Fortran/test_invert_trm_complex.F90 \
328
  src/elpa2_print_kernels.F90
329

330 331
#end needed

332
dist_doc_DATA = README.md USERS_GUIDE.md INSTALL.md CONTRIBUTING.md LICENSE Changelog COPYING/COPYING COPYING/gpl.txt COPYING/lgpl.txt
333

334 335
# pkg-config stuff
pkgconfigdir = $(libdir)/pkgconfig
336
pkgconfig_DATA = @PKG_CONFIG_FILE@
337

338 339
# programs
bin_PROGRAMS = \
340
  elpa2_print_kernels@SUFFIX@
341 342

noinst_PROGRAMS = \
343
  elpa1_test_real@SUFFIX@ \
344 345
  elpa1_test_complex@SUFFIX@ \
  elpa2_test_real@SUFFIX@ \
346 347 348
  elpa2_test_real_default@SUFFIX@ \
  elpa2_test_real_qr@SUFFIX@ \
  elpa2_test_real_api@SUFFIX@ \
Andreas Marek's avatar
Andreas Marek committed
349
  elpa2_test_complex@SUFFIX@ \
350
  elpa2_test_complex_default@SUFFIX@ \
351
  elpa2_test_complex_api@SUFFIX@ \
352 353
  elpa2_test_complex_api@SUFFIX@ \
  elpa_driver_real@SUFFIX@ \
354
  elpa_driver_complex@SUFFIX@ \
355
  elpa1_real_toeplitz@SUFFIX@ \
356
  elpa1_real_transpose_multiply@SUFFIX@ \
357
  elpa1_complex_transpose_multiply@SUFFIX@ \
358
  elpa1_real_cholesky@SUFFIX@ \
359
  elpa1_real_invert_trm@SUFFIX@ \
360
  elpa1_complex_cholesky@SUFFIX@ \
361
  elpa1_complex_invert_trm@SUFFIX@ \
362
  elpa1_test_real_with_c@SUFFIX@ \
Andreas Marek's avatar
Andreas Marek committed
363 364 365
  elpa1_test_real_c_version@SUFFIX@ \
  elpa1_test_complex_c_version@SUFFIX@ \
  elpa2_test_real_c_version@SUFFIX@ \
366
  elpa2_test_complex_c_version@SUFFIX@ \
367
  elpa_driver_real_c_version@SUFFIX@ \
368
  elpa_driver_complex_c_version@SUFFIX@
369

370 371
if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
372 373
  elpa1_test_complex_single_precision@SUFFIX@ \
  elpa2_test_complex_single_precision@SUFFIX@ \
374
  elpa2_test_complex_default_single_precision@SUFFIX@ \
375
  elpa1_complex_transpose_multiply_single_precision@SUFFIX@ \
376
  elpa_driver_complex_single_precision@SUFFIX@ \
377
  elpa1_complex_cholesky_single_precision@SUFFIX@ \
378
  elpa1_complex_invert_trm_single_precision@SUFFIX@ \
379 380
  elpa2_test_complex_api_single_precision@SUFFIX@ \
  elpa_driver_complex_c_version_single_precision@SUFFIX@
381 382 383 384
endif

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
385 386
  elpa1_test_real_single_precision@SUFFIX@ \
  elpa2_test_real_single_precision@SUFFIX@ \
387 388
  elpa2_test_real_default_single_precision@SUFFIX@ \
  elpa2_test_real_qr_single_precision@SUFFIX@ \
389
  elpa2_test_real_api_single_precision@SUFFIX@ \
390
  elpa_driver_real_single_precision@SUFFIX@ \
391 392
  elpa1_real_transpose_multiply_single_precision@SUFFIX@ \
  elpa1_real_cholesky_single_precision@SUFFIX@ \
393
  elpa1_real_invert_trm_single_precision@SUFFIX@ \
394
  elpa_driver_real_c_version_single_precision@SUFFIX@ \
395
  elpa1_real_toeplitz_single_precision@SUFFIX@
396 397 398 399
endif

if WITH_GPU_VERSION
noinst_PROGRAMS += \
400 401
  elpa1_test_complex_gpu@SUFFIX@ \
  elpa1_test_real_gpu@SUFFIX@ \
402 403
  elpa2_test_complex_gpu@SUFFIX@ \
  elpa2_test_real_gpu@SUFFIX@
404 405 406

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
407
  elpa1_test_real_gpu_single_precision@SUFFIX@ \
408
  elpa2_test_real_gpu_single_precision@SUFFIX@
409 410 411 412
endif

if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
413
  elpa1_test_complex_gpu_single_precision@SUFFIX@ \
414
  elpa2_test_complex_gpu_single_precision@SUFFIX@
415 416 417 418
endif

endif

Andreas Marek's avatar
Andreas Marek committed
419
build_lib = libelpatest@SUFFIX@.la libelpa@SUFFIX@.la
420 421 422 423 424

# 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 = \
425 426 427 428 429 430 431 432 433
	test/shared/util.F90 \
	test/shared/read_input_parameters.F90  \
	test/shared/check_correctnes.F90 \
	test/shared/setup_mpi.F90 \
	test/shared/blacs_infrastructure.F90 \
	test/shared/prepare_matrix.F90 \
	test/shared/mod_output_types.F90 \
	test/shared/mod_from_c.F90 \
	test/shared/call_elpa1.c
Andreas Marek's avatar
Andreas Marek committed
434

435
if HAVE_REDIRECT
436
libelpatest@SUFFIX@_la_SOURCES += \
437 438
	test/shared/redir.c \
	test/shared/redirect.F90
439 440
endif

441
elpa1_test_real_c_version@SUFFIX@_SOURCES = test/C/elpa1_test_real_c_version.c
442
elpa1_test_real_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
443
elpa1_test_real_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
444
EXTRA_elpa1_test_real_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
445

446
elpa1_test_real_with_c@SUFFIX@_SOURCES = test/Fortran/test_real_with_c.F90
447
elpa1_test_real_with_c@SUFFIX@_LDADD = $(build_lib)
448
elpa1_test_real_with_c@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
449
EXTRA_elpa1_test_real_with_c@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
450

451 452 453 454 455
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

456
elpa1_test_complex_c_version@SUFFIX@_SOURCES = test/C/elpa1_test_complex_c_version.c
457
elpa1_test_complex_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
458
elpa1_test_complex_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
459
EXTRA_elpa1_test_complex_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
460

461 462 463 464 465
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

466
elpa2_test_real_c_version@SUFFIX@_SOURCES = test/C/elpa2_test_real_c_version.c
467
elpa2_test_real_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
468
elpa2_test_real_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
469
EXTRA_elpa2_test_real_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
470

471
elpa2_test_complex_c_version@SUFFIX@_SOURCES = test/C/elpa2_test_complex_c_version.c
472
elpa2_test_complex_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
473
elpa2_test_complex_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
474
EXTRA_elpa2_test_complex_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
475

476
elpa1_test_real@SUFFIX@_SOURCES = test/Fortran/test_real.F90
477
elpa1_test_real@SUFFIX@_LDADD = $(build_lib)
478
elpa1_test_real@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
479
EXTRA_elpa1_test_real@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
480

481 482 483 484
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
485

486 487 488 489 490
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

491 492 493 494
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
495

496 497 498 499 500
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

501 502 503 504 505
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

506 507 508 509 510
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

511 512 513 514 515
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

516
elpa2_test_real@SUFFIX@_SOURCES = test/Fortran/test_real2.F90
517
elpa2_test_real@SUFFIX@_LDADD = $(build_lib)
518
elpa2_test_real@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
519
EXTRA_elpa2_test_real@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
520

521 522 523 524
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
525

526 527 528 529
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
530

531 532 533
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
534
EXTRA_elpa2_test_real_api@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
535

536
elpa1_test_complex@SUFFIX@_SOURCES = test/Fortran/test_complex.F90
537
elpa1_test_complex@SUFFIX@_LDADD = $(build_lib)
538
elpa1_test_complex@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
539
EXTRA_elpa1_test_complex@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
540

541
elpa2_test_complex@SUFFIX@_SOURCES = test/Fortran/test_complex2.F90
542
elpa2_test_complex@SUFFIX@_LDADD = $(build_lib)
543
elpa2_test_complex@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
544
EXTRA_elpa2_test_complex@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
545

546 547 548 549
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
550

551 552 553 554
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
555

556 557 558 559 560
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

561 562 563 564 565
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

566
elpa2_print_kernels@SUFFIX@_SOURCES = src/elpa2_print_kernels.F90
567
elpa2_print_kernels@SUFFIX@_LDADD = $(build_lib)
568
elpa2_print_kernels@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
Andreas Marek's avatar
Andreas Marek committed
569

570
if WANT_SINGLE_PRECISION_REAL
571
elpa1_test_real_single_precision@SUFFIX@_SOURCES = test/Fortran/test_real_single.F90
572
elpa1_test_real_single_precision@SUFFIX@_LDADD = $(build_lib)
573
elpa1_test_real_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
574
EXTRA_elpa1_test_real_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
575

576
elpa2_test_real_single_precision@SUFFIX@_SOURCES = test/Fortran/test_real2_single.F90
577 578
elpa2_test_real_single_precision@SUFFIX@_LDFLAGS = -static
elpa2_test_real_single_precision@SUFFIX@_LDADD = $(build_lib)
579
elpa2_test_real_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
580
EXTRA_elpa2_test_real_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
581

582 583 584 585 586
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

587
elpa1_real_toeplitz_single_precision@SUFFIX@_SOURCES = test/Fortran/test_toeplitz_single.F90
588 589 590 591
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

592 593 594 595 596
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

597 598 599 600 601
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

602 603 604 605 606
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

607 608 609 610 611
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

612
elpa2_test_real_default_single_precision@SUFFIX@_SOURCES = test/Fortran/test_real2_default_single.F90
613 614 615 616
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
617

618 619 620 621 622
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
623

624 625 626 627
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
628 629 630
endif

if WANT_SINGLE_PRECISION_COMPLEX
631
elpa1_test_complex_single_precision@SUFFIX@_SOURCES = test/Fortran/test_complex_single.F90
632
elpa1_test_complex_single_precision@SUFFIX@_LDADD = $(build_lib)
633
elpa1_test_complex_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
634
EXTRA_elpa1_test_complex_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
635

636 637 638 639 640
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

641 642 643 644 645
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

646
elpa2_test_complex_single_precision@SUFFIX@_SOURCES = test/Fortran/test_complex2_single.F90
647
elpa2_test_complex_single_precision@SUFFIX@_LDADD = $(build_lib)
648
elpa2_test_complex_single_precision@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) @FC_MODOUT@private_modules @FC_MODINC@private_modules
649
EXTRA_elpa2_test_complex_single_precision@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
650

651 652 653 654 655
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
656

657 658 659 660 661 662 663 664 665 666
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

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

667 668 669 670 671
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

672 673 674 675
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
676 677 678
endif

if WITH_GPU_VERSION
679 680 681 682 683 684 685 686 687 688
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

689 690 691 692
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
693

694 695 696 697
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
698 699

if WANT_SINGLE_PRECISION_REAL
700 701 702 703 704
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

705 706 707 708
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
709 710 711
endif

if WANT_SINGLE_PRECISION_COMPLEX
712 713 714 715 716
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

717 718 719 720
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
721 722 723
endif

endif
724
#  elpa2_test_real_default_kernel_qr_decomposition@SUFFIX@.sh
725

726
check_SCRIPTS = \
727 728
  elpa1_test_real@SUFFIX@.sh \
  elpa2_test_real@SUFFIX@.sh \
729
  elpa2_test_real_default@SUFFIX@.sh \
730 731
  elpa1_test_complex@SUFFIX@.sh \
  elpa2_test_complex@SUFFIX@.sh \
732 733 734 735
  elpa2_test_real_qr@SUFFIX@.sh \
  elpa2_test_complex_default@SUFFIX@.sh \
  elpa2_test_real_api@SUFFIX@.sh \
  elpa2_test_complex_api@SUFFIX@.sh \
736
  elpa_driver_real@SUFFIX@.sh \
737
  elpa_driver_complex@SUFFIX@.sh \
738
  elpa1_real_toeplitz@SUFFIX@.sh \
739
  elpa1_test_real_with_c@SUFFIX@.sh \
740
  elpa1_real_cholesky@SUFFIX@.sh \
741
  elpa1_real_invert_trm@SUFFIX@.sh \
742
  elpa1_real_transpose_multiply@SUFFIX@.sh \
743
  elpa1_complex_cholesky@SUFFIX@.sh \
744
  elpa1_complex_invert_trm@SUFFIX@.sh \
745
  elpa1_complex_transpose_multiply@SUFFIX@.sh \
746
  elpa2_print_kernels@SUFFIX@ \
747 748 749
  elpa1_test_real_c_version@SUFFIX@.sh \
  elpa1_test_complex_c_version@SUFFIX@.sh \
  elpa2_test_real_c_version@SUFFIX@.sh \
750
  elpa2_test_complex_c_version@SUFFIX@.sh \
751
  elpa_driver_real_c_version@SUFFIX@.sh \
752
  elpa_driver_complex_c_version@SUFFIX@.sh
Andreas Marek's avatar
Andreas Marek committed
753

754 755
if WANT_SINGLE_PRECISION_REAL
check_SCRIPTS += \
756 757
  elpa1_test_real_single_precision@SUFFIX@.sh \
  elpa2_test_real_single_precision@SUFFIX@.sh \
758 759
  elpa2_test_real_default_single_precision@SUFFIX@.sh \
  elpa2_test_real_qr_single_precision@SUFFIX@.sh \
760
  elpa_driver_real_single_precision@SUFFIX@.sh \
761
  elpa1_real_cholesky_single_precision@SUFFIX@.sh \
762
  elpa1_real_invert_trm_single_precision@SUFFIX@.sh \
763
  elpa1_real_transpose_multiply_single_precision@SUFFIX@.sh \
764 765
  elpa2_test_real_api_single_precision@SUFFIX@.sh \
  elpa_driver_real_c_version_single_precision@SUFFIX@.sh
766 767 768 769
endif

if WANT_SINGLE_PRECISION_COMPLEX
check_SCRIPTS += \
770 771
  elpa1_test_complex_single_precision@SUFFIX@.sh \
  elpa2_test_complex_single_precision@SUFFIX@.sh \
772
  elpa2_test_complex_default_single_precision@SUFFIX@.sh \
773
  elpa1_complex_cholesky_single_precision@SUFFIX@.sh \
774
  elpa_driver_complex_single_precision@SUFFIX@.sh \
775
  elpa1_complex_invert_trm_single_precision@SUFFIX@.sh \
776
  elpa1_complex_transpose_multiply_single_precision@SUFFIX@.sh \
777 778
  elpa2_test_complex_api_single_precision@SUFFIX@.sh \
  elpa_driver_complex_c_version_single_precision@SUFFIX@.sh
779
endif
780

781 782
if WITH_GPU_VERSION
check_SCRIPTS += \
783 784
  elpa1_test_real_gpu@SUFFIX@.sh \
  elpa1_test_complex_gpu@SUFFIX@.sh \
Andreas Marek's avatar
Andreas Marek committed
785 786
  elpa2_test_real_gpu@SUFFIX@.sh \
  elpa2_test_complex_gpu@SUFFIX@.sh
787 788
if WANT_SINGLE_PRECISION_REAL
check_SCRIPTS += \
789
  elpa1_test_real_gpu_single_precision@SUFFIX@.sh \
Andreas Marek's avatar
Andreas Marek committed
790
  elpa2_test_real_gpu_single_precision@SUFFIX@.sh
791 792 793
endif
if WANT_SINGLE_PRECISION_COMPLEX
check_SCRIPTS += \
794
  elpa1_test_complex_gpu_single_precision@SUFFIX@.sh \
Andreas Marek's avatar
Andreas Marek committed
795
  elpa2_test_complex_gpu_single_precision@SUFFIX@.sh
796 797 798 799
endif

endif

800
# test scripts
801
MPIEXEC ?= $(MPI_BINARY) -n 2
Andreas Marek's avatar