Makefile.am 59.9 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
# libelpa
11 12 13 14
lib_LTLIBRARIES = libelpa@SUFFIX@.la
libelpa@SUFFIX@_la_LINK = $(FCLINK) $(AM_LDFLAGS) -version-info $(ELPA_SO_VERSION)
libelpa@SUFFIX@_la_LIBADD = libelpa@SUFFIX@_public.la libelpa@SUFFIX@_private.la
libelpa@SUFFIX@_la_SOURCES =
15

16 17
# parts with public interface
noinst_LTLIBRARIES = libelpa@SUFFIX@_public.la
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
18
libelpa@SUFFIX@_public_la_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)modules $(FC_MODINC)private_modules
19
libelpa@SUFFIX@_public_la_SOURCES = \
20 21 22 23 24 25 26
  src/elpa.F90 \
  src/elpa_api.F90 \
  src/elpa_constants.F90 \
  src/general/elpa_utilities.F90

if ENABLE_LEGACY
libelpa@SUFFIX@_public_la_SOURCES += \
27
  src/elpa_driver/legacy_interface/elpa.F90 \
28
  src/elpa1/legacy_interface/elpa1.F90 \
29 30
  src/elpa2/legacy_interface/elpa2.F90 \
  src/elpa2/legacy_interface/elpa2_utilities.F90 \
31
  src/elpa1/legacy_interface/elpa1_auxiliary.F90
32
endif
33 34 35

# internal parts
noinst_LTLIBRARIES += libelpa@SUFFIX@_private.la
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
36
libelpa@SUFFIX@_private_la_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
37
libelpa@SUFFIX@_private_la_SOURCES = \
38
  src/elpa_impl.F90 \
39
  src/elpa_abstract_impl.F90 \
40 41 42 43 44 45 46 47 48
  src/helpers/mod_precision.F90 \
  src/helpers/mod_mpi.F90 \
  src/helpers/mod_mpi_stubs.F90 \
  src/elpa_generated_fortran_interfaces.F90 \
  src/elpa2/mod_redist_band.F90 \
  src/elpa2/mod_pack_unpack_cpu.F90 \
  src/elpa2/mod_compute_hh_trafo.F90 \
  src/helpers/aligned_mem.F90 \
  src/elpa1/elpa1_compute_private.F90 \
49
  src/elpa1/elpa1_auxiliary.F90 \
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
  src/elpa2/elpa2_determine_workload.F90 \
  src/elpa2/elpa2_compute.F90 \
  src/elpa2/kernels/mod_single_hh_trafo_real.F90 \
  src/GPU/check_for_gpu.F90 \
  src/GPU/mod_cuda.F90 \
  src/elpa2/GPU/interface_c_kernel.F90 \
  src/elpa2/mod_pack_unpack_gpu.F90 \
  src/elpa2/qr/qr_utils.F90 \
  src/elpa2/qr/elpa_qrkernels.F90 \
  src/elpa2/qr/elpa_pdlarfb.F90 \
  src/elpa2/qr/elpa_pdgeqrf.F90 \
  src/elpa1/elpa1.F90 \
  src/elpa2/elpa2.F90 \
  src/elpa_c_interface.c \
  src/elpa_index.c

if ENABLE_LEGACY
libelpa@SUFFIX@_private_la_SOURCES += \
68
  src/elpa_driver/legacy_interface/elpa_driver_c_interface.F90 \
69
  src/elpa1/legacy_interface/elpa_1stage_c_interface.F90 \
70
  src/elpa2/legacy_interface/elpa_2stage_c_interface.F90
71
endif
72

73
EXTRA_libelpa@SUFFIX@_private_la_DEPENDENCIES = \
74 75 76 77 78 79 80
  src/elpa1/elpa_reduce_add_vectors.X90 \
  src/elpa1/elpa_transpose_vectors.X90 \
  src/elpa1/elpa1_compute_template.X90 \
  src/elpa2/elpa2_compute_real_template.X90 \
  src/elpa2/elpa2_compute_complex_template.X90 \
  src/elpa1/elpa1_template.X90 \
  src/elpa2/elpa2_template.X90 \
81 82 83
  src/elpa2/qr/qr_utils_template.X90 \
  src/elpa2/qr/elpa_pdlarfb_template.X90 \
  src/elpa2/qr/elpa_pdgeqrf_template.X90 \
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
  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 \
  src/elpa2/pack_unpack_cpu.X90 \
  src/elpa2/pack_unpack_gpu.X90 \
  src/elpa2/compute_hh_trafo.X90 \
  src/elpa2/redist_band.X90 \
  src/general/sanity.X90 \
  src/elpa1/elpa_cholesky_template.X90 \
  src/elpa1/elpa_invert_trm.X90 \
  src/elpa1/elpa_multiply_a_b.X90 \
  src/elpa1/elpa_solve_tridi_impl_public.X90 \
  src/general/precision_macros.h
103

104 105
if ENABLE_LEGACY
EXTRA_libelpa@SUFFIX@_private_la_DEPENDENCIES += \
106
  src/elpa1/legacy_interface/elpa1_template.X90 \
107
  src/elpa2/legacy_interface/elpa2_template.X90 \
108
  src/elpa1/legacy_interface/elpa1_c_interface_template.X90 \
109
  src/elpa2/legacy_interface/elpa2_c_interface_template.X90 \
110
  src/elpa_driver/legacy_interface/elpa_driver_c_interface_template.X90 \
111 112 113 114 115 116 117 118 119
  src/elpa1/legacy_interface/elpa_solve_tridi_c_interface_template.X90 \
  src/elpa1/legacy_interface/elpa_mult_at_b_c_interface_template.X90 \
  src/elpa1/legacy_interface/elpa_mult_ah_b_c_interface_template.X90 \
  src/elpa1/legacy_interface/elpa_invert_trm_c_interface_template.X90 \
  src/elpa1/legacy_interface/elpa_cholesky_c_interface_template.X90 \
  src/elpa1/legacy_interface/elpa_cholesky_template.X90 \
  src/elpa1/legacy_interface/elpa_invert_trm.X90 \
  src/elpa1/legacy_interface/elpa_multiply_a_b.X90 \
  src/elpa1/legacy_interface/elpa_solve_tridi.X90
120
endif
121

122
if HAVE_DETAILED_TIMINGS
123 124 125 126 127 128 129 130 131
libelpa@SUFFIX@_private_la_SOURCES += \
  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
132 133 134 135 136 137

if ENABLE_LEGACY
libelpa@SUFFIX@_private_la_SOURCES += \
  src/helpers/timer.F90
endif

138
else
139 140
libelpa@SUFFIX@_private_la_SOURCES += \
  src/helpers/timer_dummy.F90
141 142
endif

143
if WITH_GPU_VERSION
Andreas Marek's avatar
Andreas Marek committed
144 145
  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
146 147
endif

148
if !WITH_MPI
149
  libelpa@SUFFIX@_private_la_SOURCES += src/helpers/mod_time_c.F90
150
if !HAVE_DETAILED_TIMINGS
151
  libelpa@SUFFIX@_private_la_SOURCES += src/ftimings/time.c
152 153 154
endif
endif

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

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

Andreas Marek's avatar
Andreas Marek committed
163
if WITH_REAL_GENERIC_SIMPLE_KERNEL
164
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_simple.F90
165 166
endif

Andreas Marek's avatar
Andreas Marek committed
167
if WITH_COMPLEX_GENERIC_SIMPLE_KERNEL
168
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_simple.F90
169 170
endif

Andreas Marek's avatar
Andreas Marek committed
171
if WITH_REAL_BGP_KERNEL
172
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_bgp.f90
173 174
endif

Andreas Marek's avatar
Andreas Marek committed
175
if WITH_REAL_BGQ_KERNEL
176
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_bgq.f90
177 178
endif

179
if WITH_REAL_SSE_ASSEMBLY_KERNEL
180
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_double_precision.s
181
if WANT_SINGLE_PRECISION_REAL
182
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_single_precision.s
183
endif
184

Andreas Marek's avatar
Andreas Marek committed
185
else
186
if WITH_COMPLEX_SSE_ASSEMBLY_KERNEL
187
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_double_precision.s
188
if WANT_SINGLE_PRECISION_COMPLEX
189
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_asm_x86_64_single_precision.s
190
endif
191 192
endif
endif
Andreas Marek's avatar
Andreas Marek committed
193

194
if WITH_REAL_SSE_BLOCK2_KERNEL
195
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_2hv_double_precision.c
196
if WANT_SINGLE_PRECISION_REAL
197
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_2hv_single_precision.c
198
endif
199 200
endif

Andreas Marek's avatar
Andreas Marek committed
201
if WITH_REAL_AVX_BLOCK2_KERNEL
202
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_double_precision.c
203
if WANT_SINGLE_PRECISION_REAL
204
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_single_precision.c
205
endif
206 207
else
if WITH_REAL_AVX2_BLOCK2_KERNEL
208
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_double_precision.c
209
if WANT_SINGLE_PRECISION_REAL
210
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_2hv_single_precision.c
211
endif
212
endif
213 214
endif

215
if WITH_REAL_AVX512_BLOCK2_KERNEL
216
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_2hv_double_precision.c
217
if WANT_SINGLE_PRECISION_REAL
218
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_2hv_single_precision.c
219
endif
220 221 222
endif


223
if WITH_REAL_SSE_BLOCK4_KERNEL
224
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_4hv_double_precision.c
225
if WANT_SINGLE_PRECISION_REAL
226
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_4hv_single_precision.c
227
endif
228 229
endif

Andreas Marek's avatar
Andreas Marek committed
230
if WITH_REAL_AVX_BLOCK4_KERNEL
231
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_double_precision.c
232
if WANT_SINGLE_PRECISION_REAL
233
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_single_precision.c
234
endif
235 236
else
if WITH_REAL_AVX2_BLOCK4_KERNEL
237
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_double_precision.c
238
if WANT_SINGLE_PRECISION_REAL
239
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_4hv_single_precision.c
240
endif
241
endif
242 243
endif

244
if WITH_REAL_AVX512_BLOCK4_KERNEL
245
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_4hv_double_precision.c
246
if WANT_SINGLE_PRECISION_REAL
247
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_4hv_single_precision.c
248
endif
249 250 251 252
endif



253
if WITH_REAL_SSE_BLOCK6_KERNEL
254
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_6hv_double_precision.c
255
if WANT_SINGLE_PRECISION_REAL
256
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_sse_6hv_single_precision.c
257
endif
258 259
endif

Andreas Marek's avatar
Andreas Marek committed
260
if WITH_REAL_AVX_BLOCK6_KERNEL
261
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_double_precision.c
262
if WANT_SINGLE_PRECISION_REAL
263
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_single_precision.c
264
endif
265 266
else
if WITH_REAL_AVX2_BLOCK6_KERNEL
267
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_double_precision.c
268
if WANT_SINGLE_PRECISION_REAL
269
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx-avx2_6hv_single_precision.c
270
endif
271
endif
272 273
endif

274
if WITH_REAL_AVX512_BLOCK6_KERNEL
275
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_6hv_double_precision.c
276
if WANT_SINGLE_PRECISION_REAL
277
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_real_avx512_6hv_single_precision.c
278
endif
279 280 281
endif


282
if WITH_COMPLEX_SSE_BLOCK1_KERNEL
283
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_1hv_double_precision.c
284
if WANT_SINGLE_PRECISION_COMPLEX
285
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_1hv_single_precision.c
286
endif
287 288
endif

Andreas Marek's avatar
Andreas Marek committed
289
if WITH_COMPLEX_AVX_BLOCK1_KERNEL
290
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_double_precision.c
291
if WANT_SINGLE_PRECISION_COMPLEX
292
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_single_precision.c
293
endif
294 295
else
if WITH_COMPLEX_AVX2_BLOCK1_KERNEL
296
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_double_precision.c
297
if WANT_SINGLE_PRECISION_COMPLEX
298
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_1hv_single_precision.c
299
endif
300
endif
301 302
endif

303 304

if WITH_COMPLEX_AVX512_BLOCK1_KERNEL
305
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_1hv_double_precision.c
306
if WANT_SINGLE_PRECISION_COMPLEX
307
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_1hv_single_precision.c
308
endif
309 310
endif

311
if WITH_COMPLEX_SSE_BLOCK2_KERNEL
312
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_2hv_double_precision.c
313
if WANT_SINGLE_PRECISION_COMPLEX
314
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_sse_2hv_single_precision.c
315
endif
316 317
endif

Andreas Marek's avatar
Andreas Marek committed
318
if WITH_COMPLEX_AVX_BLOCK2_KERNEL
319
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_double_precision.c
320
if WANT_SINGLE_PRECISION_COMPLEX
321
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_single_precision.c
322
endif
323 324
else
if WITH_COMPLEX_AVX2_BLOCK2_KERNEL
325
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_double_precision.c
326
if WANT_SINGLE_PRECISION_COMPLEX
327
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx-avx2_2hv_single_precision.c
328
endif
329
endif
330 331
endif

332
if WITH_COMPLEX_AVX512_BLOCK2_KERNEL
333
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_2hv_double_precision.c
334
if WANT_SINGLE_PRECISION_COMPLEX
335
  libelpa@SUFFIX@_private_la_SOURCES += src/elpa2/kernels/elpa2_kernels_complex_avx512_2hv_single_precision.c
336
endif
337 338
endif

339
# Cuda files
340
.cu.lo:
341
	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
342

343 344 345 346 347
# Assembly files
LTCCASCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=compile $(CCAS) $(AM_CCASFLAGS) \
	$(CCASFLAGS)

348 349 350
include generated_headers.am
BUILT_SOURCES = $(generated_headers)

351
# install public headers and Fortran modules files in the include/ dir
352
elpa_includedir = $(includedir)/elpa@SUFFIX@-@PACKAGE_VERSION@
353
nobase_elpa_include_HEADERS = $(wildcard modules/*) $(wildcard elpa/*)
354

Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
355
dist_man_MANS = \
356 357 358 359
  man/elpa2_print_kernels.1

if ENABLE_LEGACY
dist_man_MANS += \
360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383
  man/solve_evp_real.3 \
  man/solve_evp_real_1stage_double.3 \
  man/solve_evp_complex.3 \
  man/solve_evp_complex_1stage_double.3 \
  man/solve_evp_real_2stage_double.3 \
  man/solve_evp_complex_2stage_double.3 \
  man/elpa_solve_evp_real_1stage_double.3 \
  man/elpa_solve_evp_complex_1stage_double.3 \
  man/elpa_solve_evp_real_2stage_double.3 \
  man/elpa_solve_evp_complex_2stage_double.3 \
  man/get_elpa_row_col_comms.3 \
  man/get_elpa_communicators.3 \
  man/elpa_mult_at_b_real_double.3 \
  man/elpa_mult_at_b_real_single.3 \
  man/elpa_mult_ah_b_complex_double.3 \
  man/elpa_mult_ah_b_complex_single.3 \
  man/elpa_invert_trm_real_double.3 \
  man/elpa_invert_trm_real_single.3 \
  man/elpa_invert_trm_complex_double.3 \
  man/elpa_invert_trm_complex_single.3 \
  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 \
384 385 386
  man/elpa_tests.1
endif

Andreas Marek's avatar
Andreas Marek committed
387

388
if WANT_SINGLE_PRECISION_REAL
389
if ENABLE_LEGACY
390 391 392 393 394
dist_man_MANS += \
  man/solve_evp_real_1stage_single.3 \
  man/elpa_solve_evp_real_1stage_single.3 \
  man/elpa_solve_evp_real_2stage_single.3 \
  man/solve_evp_real_2stage_single.3
395
endif
396
endif
397 398

if WANT_SINGLE_PRECISION_COMPLEX
399
if ENABLE_LEGACY
400 401 402 403 404 405
dist_man_MANS += \
  man/solve_evp_complex_1stage_single.3 \
  man/elpa_solve_evp_complex_1stage_single.3 \
  man/elpa_solve_evp_complex_2stage_single.3 \
  man/solve_evp_complex_2stage_single.3
endif
406
endif
407

408
dist_doc_DATA = README.md USERS_GUIDE.md INSTALL.md CONTRIBUTING.md LICENSE Changelog COPYING/COPYING COPYING/gpl.txt COPYING/lgpl.txt
409

410 411
# pkg-config stuff
pkgconfigdir = $(libdir)/pkgconfig
412
pkgconfig_DATA = @PKG_CONFIG_FILE@
413

414 415
# programs
bin_PROGRAMS = \
416
  elpa2_print_kernels@SUFFIX@
417

418 419 420 421 422
if ENABLE_LEGACY
bin_PROGRAMS += \
  elpa_tests@SUFFIX@
endif

423
noinst_PROGRAMS = \
424 425 426 427
  test_real_double_1stage \
  test_real_double_2stage \
  test_complex_double_1stage \
  test_complex_double_2stage \
428 429 430 431
  test_c_real_double_1stage \
  test_c_real_double_2stage \
  test_c_complex_double_1stage \
  test_c_complex_double_2stage \
432
  double_instance@SUFFIX@ \
433 434 435 436 437 438
  real_2stage_banded@SUFFIX@ \
  complex_2stage_banded@SUFFIX@ \
  real_2stage@SUFFIX@ \
  complex_2stage@SUFFIX@ \
  real_1stage@SUFFIX@ \
  complex_1stage@SUFFIX@
439 440 441

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
442 443
  test_single_real_1stage \
  test_single_real_2stage \
444 445
  test_c_single_real_1stage \
  test_c_single_real_2stage \
446 447 448
  single_real_2stage_banded@SUFFIX@ \
  single_real_2stage@SUFFIX@ \
  single_real_1stage@SUFFIX@
449 450 451 452
endif

if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
453 454
  test_single_complex_1stage \
  test_single_complex_2stage \
455 456
  test_c_single_complex_1stage \
  test_c_single_complex_2stage \
457 458 459
  single_complex_2stage_banded@SUFFIX@ \
  single_complex_2stage@SUFFIX@ \
  single_complex_1stage@SUFFIX@
460 461 462 463
endif

if WITH_GPU_VERSION
noinst_PROGRAMS += \
464 465 466 467
  complex_1stage_gpu@SUFFIX@ \
  complex_2stage_gpu@SUFFIX@ \
  real_1stage_gpu@SUFFIX@ \
  real_2stage_gpu@SUFFIX@
468 469 470

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
471 472
  single_real_1stage_gpu@SUFFIX@ \
  single_real_2stage_gpu@SUFFIX@
473 474 475 476
endif

if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
477 478
  single_complex_1stage_gpu@SUFFIX@ \
  single_complex_2stage_gpu@SUFFIX@
479 480 481 482 483 484
endif
endif


if ENABLE_LEGACY
noinst_PROGRAMS += \
Andreas Marek's avatar
Andreas Marek committed
485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509
  legacy_real_1stage@SUFFIX@ \
  legacy_complex_1stage@SUFFIX@ \
  legacy_real_2stage@SUFFIX@ \
  legacy_real_2stage_default@SUFFIX@ \
  legacy_real_2stage_qr@SUFFIX@ \
  legacy_real_2stage_api@SUFFIX@ \
  legacy_complex_2stage@SUFFIX@ \
  legacy_complex_2stage_default@SUFFIX@ \
  legacy_complex_2stage_api@SUFFIX@ \
  legacy_real_driver@SUFFIX@ \
  legacy_complex_driver@SUFFIX@ \
  legacy_real_toeplitz@SUFFIX@ \
  legacy_real_transpose_multiply@SUFFIX@ \
  legacy_complex_transpose_multiply@SUFFIX@ \
  legacy_real_cholesky@SUFFIX@ \
  legacy_real_invert_trm@SUFFIX@ \
  legacy_complex_cholesky@SUFFIX@ \
  legacy_complex_invert_trm@SUFFIX@ \
  legacy_real_1stage_with_c@SUFFIX@ \
  legacy_real_1stage_c_version@SUFFIX@ \
  legacy_complex_1stage_c_version@SUFFIX@ \
  legacy_real_2stage_c_version@SUFFIX@ \
  legacy_complex_2stage_c_version@SUFFIX@ \
  legacy_real_driver_c_version@SUFFIX@ \
  legacy_complex_driver_c_version@SUFFIX@
Andreas Marek's avatar
Andreas Marek committed
510

511 512
if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
Andreas Marek's avatar
Andreas Marek committed
513 514 515 516 517 518 519 520 521
  legacy_single_complex_1stage@SUFFIX@ \
  legacy_single_complex_2stage@SUFFIX@ \
  legacy_single_complex_2stage_default@SUFFIX@ \
  legacy_single_complex_transpose_multiply@SUFFIX@ \
  legacy_single_complex_driver@SUFFIX@ \
  legacy_single_complex_cholesky@SUFFIX@ \
  legacy_single_complex_invert_trm@SUFFIX@ \
  legacy_single_complex_2stage_api@SUFFIX@ \
  legacy_single_complex_driver_c_version@SUFFIX@
522 523 524 525
endif

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
Andreas Marek's avatar
Andreas Marek committed
526 527 528 529 530 531 532 533 534 535 536
  legacy_single_real_1stage@SUFFIX@ \
  legacy_single_real_2stage@SUFFIX@ \
  legacy_single_real_2stage_default@SUFFIX@ \
  legacy_single_real_2stage_qr@SUFFIX@ \
  legacy_single_real_2stage_api@SUFFIX@ \
  legacy_single_real_driver@SUFFIX@ \
  legacy_single_real_transpose_multiply@SUFFIX@ \
  legacy_single_real_cholesky@SUFFIX@ \
  legacy_single_real_invert_trm@SUFFIX@ \
  legacy_single_real_driver_c_version@SUFFIX@ \
  legacy_single_real_toeplitz@SUFFIX@
537 538 539 540
endif

if WITH_GPU_VERSION
noinst_PROGRAMS += \
Andreas Marek's avatar
Andreas Marek committed
541 542 543 544
  legacy_complex_1stage_gpu@SUFFIX@ \
  legacy_real_1stage_gpu@SUFFIX@ \
  legacy_complex_2stage_gpu@SUFFIX@ \
  legacy_real_2stage_gpu@SUFFIX@
545 546 547

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
Andreas Marek's avatar
Andreas Marek committed
548 549
  legacy_single_real_1stage_gpu@SUFFIX@ \
  legacy_single_real_2stage_gpu@SUFFIX@
550 551 552 553
endif

if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
Andreas Marek's avatar
Andreas Marek committed
554 555
  legacy_single_complex_1stage_gpu@SUFFIX@ \
  legacy_single_complex_2stage_gpu@SUFFIX@
556
endif
557 558 559
endif
endif

Andreas Marek's avatar
Andreas Marek committed
560
build_lib = libelpatest@SUFFIX@.la libelpa@SUFFIX@.la
561 562 563

# library with shared sources for the test files
noinst_LTLIBRARIES += libelpatest@SUFFIX@.la
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
564
libelpatest@SUFFIX@_la_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
565
libelpatest@SUFFIX@_la_SOURCES = \
566
  test/shared/util.F90 \
567
  test/shared/read_input_parameters.F90 \
568 569 570 571 572 573 574 575 576 577
  test/shared/check_correctness.F90 \
  test/shared/check_correctness_template.X90 \
  test/shared/setup_mpi.F90 \
  test/shared/blacs_infrastructure.F90 \
  test/shared/prepare_matrix.F90 \
  test/shared/mod_assert.F90 \
  test/shared/prepare_matrix_template.X90 \
  test/shared/mod_output_types.F90 \
  test/shared/mod_from_c.F90 \
  test/shared/call_elpa1.c
Andreas Marek's avatar
Andreas Marek committed
578

579
if HAVE_REDIRECT
580
libelpatest@SUFFIX@_la_SOURCES += \
581 582 583 584 585 586 587
  test/shared/redir.c \
  test/shared/redirect.F90
endif


elpa2_print_kernels@SUFFIX@_SOURCES = src/elpa2/elpa2_print_kernels.F90
elpa2_print_kernels@SUFFIX@_LDADD = $(build_lib)
588
elpa2_print_kernels@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
589 590 591

test_real_double_1stage_SOURCES = test/Fortran/test.F90
test_real_double_1stage_LDADD = $(build_lib) $(FCLIBS)
592
test_real_double_1stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
593 594 595 596 597 598 599
        -DTEST_REAL \
        -DTEST_DOUBLE \
        -DTEST_SOLVER_1STAGE \
        -DTEST_GPU=0

test_real_double_2stage_SOURCES = test/Fortran/test.F90
test_real_double_2stage_LDADD = $(build_lib) $(FCLIBS)
600
test_real_double_2stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
601 602 603 604 605 606 607
        -DTEST_REAL \
        -DTEST_DOUBLE \
        -DTEST_SOLVER_2STAGE \
        -DTEST_GPU=0

test_complex_double_1stage_SOURCES = test/Fortran/test.F90
test_complex_double_1stage_LDADD = $(build_lib) $(FCLIBS)
608
test_complex_double_1stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
609 610 611 612 613 614 615
        -DTEST_COMPLEX \
        -DTEST_DOUBLE \
        -DTEST_SOLVER_1STAGE \
        -DTEST_GPU=0

test_complex_double_2stage_SOURCES = test/Fortran/test.F90
test_complex_double_2stage_LDADD = $(build_lib) $(FCLIBS)
616
test_complex_double_2stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
617 618 619 620 621 622
        -DTEST_COMPLEX \
        -DTEST_DOUBLE \
        -DTEST_SOLVER_2STAGE \
        -DTEST_GPU=0

if WANT_SINGLE_PRECISION_REAL
623 624 625
test_single_real_1stage_SOURCES = test/Fortran/test.F90
test_single_real_1stage_LDADD = $(build_lib) $(FCLIBS)
test_single_real_1stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
626 627 628 629 630
        -DTEST_REAL \
        -DTEST_SINGLE \
        -DTEST_SOLVER_1STAGE \
        -DTEST_GPU=0

631 632 633
test_single_real_2stage_SOURCES = test/Fortran/test.F90
test_single_real_2stage_LDADD = $(build_lib) $(FCLIBS)
test_single_real_2stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
634 635 636 637
        -DTEST_REAL \
        -DTEST_SINGLE \
        -DTEST_SOLVER_2STAGE \
        -DTEST_GPU=0
638
endif
639 640

if WANT_SINGLE_PRECISION_COMPLEX
641 642 643
test_single_complex_1stage_SOURCES = test/Fortran/test.F90
test_single_complex_1stage_LDADD = $(build_lib) $(FCLIBS)
test_single_complex_1stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
644 645 646 647 648
        -DTEST_COMPLEX \
        -DTEST_SINGLE \
        -DTEST_SOLVER_1STAGE \
        -DTEST_GPU=0

649 650 651
test_single_complex_2stage_SOURCES = test/Fortran/test.F90
test_single_complex_2stage_LDADD = $(build_lib) $(FCLIBS)
test_single_complex_2stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
652 653 654 655 656
        -DTEST_COMPLEX \
        -DTEST_SINGLE \
        -DTEST_SOLVER_2STAGE \
        -DTEST_GPU=0
endif
657

658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725
test_c_real_double_1stage_SOURCES = test/C/test.c
test_c_real_double_1stage_LDADD = $(build_lib) $(FCLIBS)
test_c_real_double_1stage_CFLAGS = $(AM_CFLAGS) \
        -DTEST_REAL \
        -DTEST_DOUBLE \
        -DTEST_SOLVER_1STAGE \
        -DTEST_GPU=0

test_c_real_double_2stage_SOURCES = test/C/test.c
test_c_real_double_2stage_LDADD = $(build_lib) $(FCLIBS)
test_c_real_double_2stage_CFLAGS = $(AM_CFLAGS) \
        -DTEST_REAL \
        -DTEST_DOUBLE \
        -DTEST_SOLVER_2STAGE \
        -DTEST_GPU=0

test_c_complex_double_1stage_SOURCES = test/C/test.c
test_c_complex_double_1stage_LDADD = $(build_lib) $(FCLIBS)
test_c_complex_double_1stage_CFLAGS = $(AM_CFLAGS) \
        -DTEST_COMPLEX \
        -DTEST_DOUBLE \
        -DTEST_SOLVER_1STAGE \
        -DTEST_GPU=0

test_c_complex_double_2stage_SOURCES = test/C/test.c
test_c_complex_double_2stage_LDADD = $(build_lib) $(FCLIBS)
test_c_complex_double_2stage_CFLAGS = $(AM_CFLAGS) \
        -DTEST_COMPLEX \
        -DTEST_DOUBLE \
        -DTEST_SOLVER_2STAGE \
        -DTEST_GPU=0

if WANT_SINGLE_PRECISION_REAL
test_c_single_real_1stage_SOURCES = test/C/test.c
test_c_single_real_1stage_LDADD = $(build_lib) $(FCLIBS)
test_c_single_real_1stage_CFLAGS = $(AM_CFLAGS) \
        -DTEST_REAL \
        -DTEST_SINGLE \
        -DTEST_SOLVER_1STAGE \
        -DTEST_GPU=0

test_c_single_real_2stage_SOURCES = test/C/test.c
test_c_single_real_2stage_LDADD = $(build_lib) $(FCLIBS)
test_c_single_real_2stage_CFLAGS = $(AM_CFLAGS) \
        -DTEST_REAL \
        -DTEST_SINGLE \
        -DTEST_SOLVER_2STAGE \
        -DTEST_GPU=0
endif

if WANT_SINGLE_PRECISION_COMPLEX
test_c_single_complex_1stage_SOURCES = test/C/test.c
test_c_single_complex_1stage_LDADD = $(build_lib) $(FCLIBS)
test_c_single_complex_1stage_CFLAGS = $(AM_CFLAGS) \
        -DTEST_COMPLEX \
        -DTEST_SINGLE \
        -DTEST_SOLVER_1STAGE \
        -DTEST_GPU=0

test_c_single_complex_2stage_SOURCES = test/C/test.c
test_c_single_complex_2stage_LDADD = $(build_lib) $(FCLIBS)
test_c_single_complex_2stage_CFLAGS = $(AM_CFLAGS) \
        -DTEST_COMPLEX \
        -DTEST_SINGLE \
        -DTEST_SOLVER_2STAGE \
        -DTEST_GPU=0
endif

726 727 728 729 730
double_instance@SUFFIX@_SOURCES = test/Fortran/elpa2/double_instance.F90
double_instance@SUFFIX@_LDADD = $(build_lib)
double_instance@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_double_instance@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

Andreas Marek's avatar
Andreas Marek committed
731 732 733 734
real_2stage_banded@SUFFIX@_SOURCES = test/Fortran/elpa2/real_2stage_banded.F90
real_2stage_banded@SUFFIX@_LDADD = $(build_lib)
real_2stage_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_real_2stage_banded@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
735

Andreas Marek's avatar
Andreas Marek committed
736 737 738 739 740 741
complex_2stage_banded@SUFFIX@_SOURCES = test/Fortran/elpa2/complex_2stage_banded.F90
complex_2stage_banded@SUFFIX@_LDADD = $(build_lib)
complex_2stage_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_complex_2stage_banded@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

real_2stage@SUFFIX@_SOURCES = test/Fortran/elpa2/real_2stage.F90
742 743 744
real_2stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
real_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_real_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
745

Andreas Marek's avatar
Andreas Marek committed
746
complex_2stage@SUFFIX@_SOURCES = test/Fortran/elpa2/complex_2stage.F90
747 748 749
complex_2stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
complex_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_complex_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
750

Andreas Marek's avatar
Andreas Marek committed
751
real_1stage@SUFFIX@_SOURCES = test/Fortran/elpa1/real_1stage.F90
752 753 754
real_1stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
real_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_real_1stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
755

Andreas Marek's avatar
Andreas Marek committed
756
complex_1stage@SUFFIX@_SOURCES = test/Fortran/elpa1/complex_1stage.F90
757 758 759
complex_1stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
complex_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_complex_1stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
760

761
if WANT_SINGLE_PRECISION_REAL
Andreas Marek's avatar
Andreas Marek committed
762
single_real_2stage@SUFFIX@_SOURCES = test/Fortran/elpa2/single_real_2stage.F90
763 764 765
single_real_2stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
single_real_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_single_real_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
766

Andreas Marek's avatar
Andreas Marek committed
767
single_real_1stage@SUFFIX@_SOURCES = test/Fortran/elpa1/single_real_1stage.F90
768 769 770
single_real_1stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
single_real_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_single_real_1stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
771 772 773
endif

if WANT_SINGLE_PRECISION_COMPLEX
Andreas Marek's avatar
Andreas Marek committed
774
single_complex_2stage@SUFFIX@_SOURCES = test/Fortran/elpa2/single_complex_2stage.F90
775 776 777
single_complex_2stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
single_complex_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_single_complex_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
778

Andreas Marek's avatar
Andreas Marek committed
779
single_complex_1stage@SUFFIX@_SOURCES = test/Fortran/elpa1/single_complex_1stage.F90
780 781 782
single_complex_1stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
single_complex_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_single_complex_1stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
783 784 785
endif

if WITH_GPU_VERSION
Andreas Marek's avatar
Andreas Marek committed
786
real_1stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa1/real_1stage_gpu.F90
787 788 789
real_1stage_gpu@SUFFIX@_LDADD = $(build_lib)
real_1stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_real_1stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
790

Andreas Marek's avatar
Andreas Marek committed
791
complex_1stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa1/complex_1stage_gpu.F90
792 793 794
complex_1stage_gpu@SUFFIX@_LDADD = $(build_lib)
complex_1stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_complex_1stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
795

Andreas Marek's avatar
Andreas Marek committed
796
real_2stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa2/real_2stage_gpu.F90
797 798 799
real_2stage_gpu@SUFFIX@_LDADD = $(build_lib)
real_2stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_real_2stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
800

Andreas Marek's avatar
Andreas Marek committed
801
complex_2stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa2/complex_2stage_gpu.F90
802 803 804
complex_2stage_gpu@SUFFIX@_LDADD = $(build_lib)
complex_2stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_complex_2stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
805 806 807
endif

if WANT_SINGLE_PRECISION_REAL
Andreas Marek's avatar
Andreas Marek committed
808 809 810 811 812 813
single_real_2stage_banded@SUFFIX@_SOURCES = test/Fortran/elpa2/single_real_2stage_banded.F90
single_real_2stage_banded@SUFFIX@_LDADD = $(build_lib)
single_real_2stage_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_single_real_2stage_banded@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

single_real_1stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa1/single_real_1stage_gpu.F90
814 815 816
single_real_1stage_gpu@SUFFIX@_LDADD = $(build_lib)
single_real_1stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_single_real_1stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
817

Andreas Marek's avatar
Andreas Marek committed
818
single_real_2stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa2/single_real_2stage_gpu.F90
819 820 821
single_real_2stage_gpu@SUFFIX@_LDADD = $(build_lib)
single_real_2stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_single_real_2stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
822 823 824
endif

if WANT_SINGLE_PRECISION_COMPLEX
Andreas Marek's avatar
Andreas Marek committed
825 826 827 828 829 830
single_complex_2stage_banded@SUFFIX@_SOURCES = test/Fortran/elpa2/single_complex_2stage_banded.F90
single_complex_2stage_banded@SUFFIX@_LDADD = $(build_lib)
single_complex_2stage_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_single_complex_2stage_banded@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

single_complex_1stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa1/single_complex_1stage_gpu.F90
831 832 833
single_complex_1stage_gpu@SUFFIX@_LDADD = $(build_lib)
single_complex_1stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_single_complex_1stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
834

Andreas Marek's avatar
Andreas Marek committed
835
single_complex_2stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa2/single_complex_2stage_gpu.F90
836 837 838
single_complex_2stage_gpu@SUFFIX@_LDADD = $(build_lib)
single_complex_2stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_single_complex_2stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
839 840 841 842
endif


if ENABLE_LEGACY
Andreas Marek's avatar
Andreas Marek committed
843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887
legacy_real_1stage_c_version@SUFFIX@_SOURCES = test/C/elpa1/legacy_interface/legacy_real_1stage_c_version.c
legacy_real_1stage_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
legacy_real_1stage_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_1stage_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_real_1stage_with_c@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_real_1stage_with_c.F90
legacy_real_1stage_with_c@SUFFIX@_LDADD = $(build_lib)
legacy_real_1stage_with_c@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_1stage_with_c@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_real_driver_c_version@SUFFIX@_SOURCES = test/C/driver/legacy_interface/legacy_real_driver_c_version.c
legacy_real_driver_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
legacy_real_driver_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_driver_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_complex_1stage_c_version@SUFFIX@_SOURCES = test/C/elpa1/legacy_interface/legacy_complex_1stage_c_version.c
legacy_complex_1stage_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
legacy_complex_1stage_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_complex_1stage_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_complex_driver_c_version@SUFFIX@_SOURCES = test/C/driver/legacy_interface/legacy_complex_driver_c_version.c
legacy_complex_driver_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
legacy_complex_driver_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_complex_driver_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_real_2stage_c_version@SUFFIX@_SOURCES = test/C/elpa2/legacy_interface/legacy_real_2stage_c_version.c
legacy_real_2stage_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
legacy_real_2stage_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_2stage_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_complex_2stage_c_version@SUFFIX@_SOURCES = test/C/elpa2/legacy_interface/legacy_complex_2stage_c_version.c
legacy_complex_2stage_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
legacy_complex_2stage_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_complex_2stage_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_real_1stage@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_real.F90
legacy_real_1stage@SUFFIX@_LDADD = $(build_lib)
legacy_real_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_1stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_real_toeplitz@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_toeplitz.F90
legacy_real_toeplitz@SUFFIX@_LDADD = $(build_lib)
legacy_real_toeplitz@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_toeplitz@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

Andreas Marek's avatar
Andreas Marek committed
888
legacy_real_transpose_multiply@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_real_transp_multiply.F90
Andreas Marek's avatar
Andreas Marek committed
889 890 891 892
legacy_real_transpose_multiply@SUFFIX@_LDADD = $(build_lib)
legacy_real_transpose_multiply@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_transpose_multiply@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

Andreas Marek's avatar
Andreas Marek committed
893
legacy_complex_transpose_multiply@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_complex_transp_multiply.F90
Andreas Marek's avatar
Andreas Marek committed
894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966
legacy_complex_transpose_multiply@SUFFIX@_LDADD = $(build_lib)
legacy_complex_transpose_multiply@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_complex_transpose_multiply@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_real_cholesky@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_real_cholesky.F90
legacy_real_cholesky@SUFFIX@_LDADD = $(build_lib)
legacy_real_cholesky@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_cholesky@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_real_invert_trm@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_real_invert_trm.F90
legacy_real_invert_trm@SUFFIX@_LDADD = $(build_lib)
legacy_real_invert_trm@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_invert_trm@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_complex_cholesky@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_complex_cholesky.F90
legacy_complex_cholesky@SUFFIX@_LDADD = $(build_lib)
legacy_complex_cholesky@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_complex_cholesky@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_complex_invert_trm@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_complex_invert_trm.F90
legacy_complex_invert_trm@SUFFIX@_LDADD = $(build_lib)
legacy_complex_invert_trm@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_complex_invert_trm@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_real_2stage@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_real.F90
legacy_real_2stage@SUFFIX@_LDADD = $(build_lib)
legacy_real_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_real_2stage_default@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_real_default_kernel.F90
legacy_real_2stage_default@SUFFIX@_LDADD = $(build_lib)
legacy_real_2stage_default@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_2stage_default@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_real_2stage_qr@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_real_qr.F90
legacy_real_2stage_qr@SUFFIX@_LDADD = $(build_lib)
legacy_real_2stage_qr@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_2stage_qr@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_real_2stage_api@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_real_api.F90
legacy_real_2stage_api@SUFFIX@_LDADD = $(build_lib)
legacy_real_2stage_api@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_2stage_api@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_complex_1stage@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_complex.F90
legacy_complex_1stage@SUFFIX@_LDADD = $(build_lib)
legacy_complex_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_complex_1stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_complex_2stage@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_complex.F90
legacy_complex_2stage@SUFFIX@_LDADD = $(build_lib)
legacy_complex_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_complex_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_complex_2stage_default@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_complex_default_kernel.F90
legacy_complex_2stage_default@SUFFIX@_LDADD = $(build_lib)
legacy_complex_2stage_default@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_complex_2stage_default@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_complex_2stage_api@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_complex_api.F90
legacy_complex_2stage_api@SUFFIX@_LDADD = $(build_lib)
legacy_complex_2stage_api@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_complex_2stage_api@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_real_driver@SUFFIX@_SOURCES = test/Fortran/driver/legacy_interface/legacy_real_driver.F90
legacy_real_driver@SUFFIX@_LDADD = $(build_lib)
legacy_real_driver@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_driver@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_complex_driver@SUFFIX@_SOURCES = test/Fortran/driver/legacy_interface/legacy_complex_driver.F90
legacy_complex_driver@SUFFIX@_LDADD = $(build_lib)
legacy_complex_driver@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_complex_driver@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
967

968 969
elpa_tests@SUFFIX@_SOURCES = test/Fortran/elpa_tests.F90
elpa_tests@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
970
elpa_tests@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
971

972
if WANT_SINGLE_PRECISION_REAL
Andreas Marek's avatar
Andreas Marek committed
973

Andreas Marek's avatar
Andreas Marek committed
974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993
legacy_single_real_1stage@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_single_real.F90
legacy_single_real_1stage@SUFFIX@_LDADD = $(build_lib)
legacy_single_real_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_real_1stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_real_2stage@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_single_real.F90
legacy_single_real_2stage@SUFFIX@_LDADD = $(build_lib)
legacy_single_real_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_real_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_real_driver@SUFFIX@_SOURCES = test/Fortran/driver/legacy_interface/legacy_single_real_driver.F90
legacy_single_real_driver@SUFFIX@_LDADD = $(build_lib)
legacy_single_real_driver@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_real_driver@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_real_toeplitz@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_single_toeplitz.F90
legacy_single_real_toeplitz@SUFFIX@_LDADD = $(build_lib)
legacy_single_real_toeplitz@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_real_toeplitz@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

Andreas Marek's avatar
Andreas Marek committed
994
legacy_single_real_transpose_multiply@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_single_real_transp_multiply.F90
Andreas Marek's avatar
Andreas Marek committed
995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028
legacy_single_real_transpose_multiply@SUFFIX@_LDADD = $(build_lib)
legacy_single_real_transpose_multiply@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_real_transpose_multiply@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_real_driver_c_version@SUFFIX@_SOURCES = test/C/driver/legacy_interface/legacy_single_real_driver_c_version.c
legacy_single_real_driver_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
legacy_single_real_driver_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_real_driver_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_real_cholesky@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_single_real_cholesky.F90
legacy_single_real_cholesky@SUFFIX@_LDADD = $(build_lib)
legacy_single_real_cholesky@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_real_cholesky@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_real_invert_trm@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_single_real_invert_trm.F90
legacy_single_real_invert_trm@SUFFIX@_LDADD = $(build_lib)
legacy_single_real_invert_trm@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_real_invert_trm@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_real_2stage_default@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_single_real_default_kernel.F90
legacy_single_real_2stage_default@SUFFIX@_LDADD = $(build_lib)
legacy_single_real_2stage_default@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_real_2stage_default@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_real_2stage_qr@SUFFIX@_SOURCES = \
                test/Fortran/elpa2/legacy_interface/legacy_single_real_qr.F90
legacy_single_real_2stage_qr@SUFFIX@_LDADD = $(build_lib)
legacy_single_real_2stage_qr@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_real_2stage_qr@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_real_2stage_api@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_single_real_api.F90
legacy_single_real_2stage_api@SUFFIX@_LDADD = $(build_lib)
legacy_single_real_2stage_api@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_real_2stage_api@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
1029 1030 1031
endif

if WANT_SINGLE_PRECISION_COMPLEX
Andreas Marek's avatar
Andreas Marek committed
1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056
legacy_single_complex_1stage@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_single_complex.F90
legacy_single_complex_1stage@SUFFIX@_LDADD = $(build_lib)
legacy_single_complex_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_complex_1stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_complex_driver@SUFFIX@_SOURCES = test/Fortran/driver/legacy_interface/legacy_single_complex_driver.F90
legacy_single_complex_driver@SUFFIX@_LDADD = $(build_lib)
legacy_single_complex_driver@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_complex_driver@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_complex_driver_c_version@SUFFIX@_SOURCES = test/C/driver/legacy_interface/legacy_single_complex_driver_c_version.c
legacy_single_complex_driver_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
legacy_single_complex_driver_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
legacy_single_complex_driver_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_complex_2stage@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_single_complex.F90
legacy_single_complex_2stage@SUFFIX@_LDADD = $(build_lib)
legacy_single_complex_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_complex_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_complex_2stage_default@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_single_complex_default_kernel.F90 $(shared_sources) $(redirect_sources)
legacy_single_complex_2stage_default@SUFFIX@_LDADD = $(build_lib)
legacy_single_complex_2stage_default@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_complex_2stage_default@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

Andreas Marek's avatar
Andreas Marek committed
1057
legacy_single_complex_transpose_multiply@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_single_complex_transp_multiply.F90
Andreas Marek's avatar
Andreas Marek committed
1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075
legacy_single_complex_transpose_multiply@SUFFIX@_LDADD = $(build_lib)
legacy_single_complex_transpose_multiply@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_complex_transpose_multiply@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_complex_cholesky@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_single_complex_cholesky.F90
legacy_single_complex_cholesky@SUFFIX@_LDADD = $(build_lib)
legacy_single_complex_cholesky@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_complex_cholesky@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_complex_invert_trm@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_single_complex_invert_trm.F90
legacy_single_complex_invert_trm@SUFFIX@_LDADD = $(build_lib)
legacy_single_complex_invert_trm@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_complex_invert_trm@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_single_complex_2stage_api@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_single_complex_api.F90
legacy_single_complex_2stage_api@SUFFIX@_LDADD = $(build_lib)
legacy_single_complex_2stage_api@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_complex_2stage_api@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
1076 1077 1078
endif

if WITH_GPU_VERSION
Andreas Marek's avatar
Andreas Marek committed
1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097
legacy_real_1stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_real_gpu.F90
legacy_real_1stage_gpu@SUFFIX@_LDADD = $(build_lib)
legacy_real_1stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_1stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_complex_1stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_complex_gpu.F90
legacy_complex_1stage_gpu@SUFFIX@_LDADD = $(build_lib)
legacy_complex_1stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_complex_1stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_real_2stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_real_gpu.F90
legacy_real_2stage_gpu@SUFFIX@_LDADD = $(build_lib)
legacy_real_2stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_real_2stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

legacy_complex_2stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_complex_gpu.F90
legacy_complex_2stage_gpu@SUFFIX@_LDADD = $(build_lib)
legacy_complex_2stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_complex_2stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
1098 1099

if WANT_SINGLE_PRECISION_REAL
Andreas Marek's avatar
Andreas Marek committed
1100 1101 1102 1103
legacy_single_real_1stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_single_real_gpu.F90
legacy_single_real_1stage_gpu@SUFFIX@_LDADD = $(build_lib)
legacy_single_real_1stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_real_1stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
1104

Andreas Marek's avatar
Andreas Marek committed
1105 1106 1107 1108
legacy_single_real_2stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_single_real_gpu.F90
legacy_single_real_2stage_gpu@SUFFIX@_LDADD = $(build_lib)
legacy_single_real_2stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_real_2stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
1109 1110 1111
endif

if WANT_SINGLE_PRECISION_COMPLEX
Andreas Marek's avatar
Andreas Marek committed
1112 1113 1114 1115
legacy_single_complex_1stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa1/legacy_interface/legacy_single_complex_gpu.F90
legacy_single_complex_1stage_gpu@SUFFIX@_LDADD = $(build_lib)
legacy_single_complex_1stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_complex_1stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
1116

Andreas Marek's avatar
Andreas Marek committed
1117 1118 1119 1120
legacy_single_complex_2stage_gpu@SUFFIX@_SOURCES = test/Fortran/elpa2/legacy_interface/legacy_single_complex_gpu.F90
legacy_single_complex_2stage_gpu@SUFFIX@_LDADD = $(build_lib)
legacy_single_complex_2stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
EXTRA_legacy_single_complex_2stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar