Makefile.am 57.4 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 27
  src/elpa1/elpa1_auxiliary.F90 \
  src/elpa.F90 \
  src/elpa_api.F90 \
  src/elpa_constants.F90 \
  src/general/elpa_utilities.F90

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

# internal parts
noinst_LTLIBRARIES += libelpa@SUFFIX@_private.la
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
37
libelpa@SUFFIX@_private_la_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
38
libelpa@SUFFIX@_private_la_SOURCES = \
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
  src/elpa_impl.F90 \
  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_utilities.F90 \
  src/elpa1/elpa1_compute_private.F90 \
  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 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
  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 \
  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
100

101 102
if ENABLE_LEGACY
EXTRA_libelpa@SUFFIX@_private_la_DEPENDENCIES += \
103
  src/elpa1/legacy_interface/elpa1_template.X90 \
104
  src/elpa2/legacy_interface/elpa2_template.X90 \
105
  src/elpa1/legacy_interface/elpa1_c_interface_template.X90 \
106
  src/elpa2/legacy_interface/elpa2_c_interface_template.X90 \
107
  src/elpa_driver/legacy_interface/elpa_driver_c_interface_template.X90 \
108 109 110 111 112 113 114 115 116
  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
117
endif
118

119
if HAVE_DETAILED_TIMINGS
120 121 122 123 124 125 126 127 128 129
libelpa@SUFFIX@_private_la_SOURCES += \
  src/helpers/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
130
else
131 132
libelpa@SUFFIX@_private_la_SOURCES += \
  src/helpers/timer_dummy.F90
133 134
endif

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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



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

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

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


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

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

295 296

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

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

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

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

331
# Cuda files
332
.cu.lo:
333
	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
334

335 336 337 338 339
# Assembly files
LTCCASCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=compile $(CCAS) $(AM_CCASFLAGS) \
	$(CCASFLAGS)

340 341 342
include generated_headers.am
BUILT_SOURCES = $(generated_headers)

343
# install public headers and Fortran modules files in the include/ dir
344
elpa_includedir = $(includedir)/elpa@SUFFIX@-@PACKAGE_VERSION@
345
nobase_elpa_include_HEADERS = $(wildcard modules/*) $(wildcard elpa/*)
346

Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
347
dist_man_MANS = \
348 349 350 351
  man/elpa2_print_kernels.1

if ENABLE_LEGACY
dist_man_MANS += \
352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375
  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 \
376 377 378
  man/elpa_tests.1
endif

Andreas Marek's avatar
Andreas Marek committed
379

380
if WANT_SINGLE_PRECISION_REAL
381
if ENABLE_LEGACY
382 383 384 385 386
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
387
endif
388
endif
389 390

if WANT_SINGLE_PRECISION_COMPLEX
391
if ENABLE_LEGACY
392 393 394 395 396 397
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
398
endif
399

400
dist_doc_DATA = README.md USERS_GUIDE.md INSTALL.md CONTRIBUTING.md LICENSE Changelog COPYING/COPYING COPYING/gpl.txt COPYING/lgpl.txt
401

402 403
# pkg-config stuff
pkgconfigdir = $(libdir)/pkgconfig
404
pkgconfig_DATA = @PKG_CONFIG_FILE@
405

406 407
# programs
bin_PROGRAMS = \
408
  elpa2_print_kernels@SUFFIX@
409

410 411 412 413 414
if ENABLE_LEGACY
bin_PROGRAMS += \
  elpa_tests@SUFFIX@
endif

415
noinst_PROGRAMS = \
416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463
  test_real_double_1stage \
  test_real_double_2stage \
  test_complex_double_1stage \
  test_complex_double_2stage \
  elpa_test_new_interface_real_2stage@SUFFIX@ \
  elpa_test_new_interface_complex_2stage@SUFFIX@ \
  elpa_test_new_interface_real_1stage@SUFFIX@ \
  elpa_test_new_interface_complex_1stage@SUFFIX@

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
  test_real_single_1stage \
  test_real_single_2stage \
  elpa_test_new_interface_real_single_2stage@SUFFIX@ \
  elpa_test_new_interface_real_single_1stage@SUFFIX@
endif

if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
  test_complex_single_1stage \
  test_complex_single_2stage \
  elpa_test_new_interface_complex_single_2stage@SUFFIX@ \
  elpa_test_new_interface_complex_single_1stage@SUFFIX@
endif

if WITH_GPU_VERSION
noinst_PROGRAMS += \
  elpa_test_new_interface_complex_1stage_gpu@SUFFIX@ \
  elpa_test_new_interface_complex_2stage_gpu@SUFFIX@ \
  elpa_test_new_interface_real_1stage_gpu@SUFFIX@ \
  elpa_test_new_interface_real_2stage_gpu@SUFFIX@

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
  elpa_test_new_interface_real_single_1stage_gpu@SUFFIX@ \
  elpa_test_new_interface_real_single_2stage_gpu@SUFFIX@
endif

if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
  elpa_test_new_interface_complex_single_1stage_gpu@SUFFIX@ \
  elpa_test_new_interface_complex_single_2stage_gpu@SUFFIX@
endif
endif


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

492 493
if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
494 495
  elpa1_test_complex_single_precision@SUFFIX@ \
  elpa2_test_complex_single_precision@SUFFIX@ \
496
  elpa2_test_complex_default_single_precision@SUFFIX@ \
497
  elpa1_complex_transpose_multiply_single_precision@SUFFIX@ \
498
  elpa_driver_complex_single_precision@SUFFIX@ \
499
  elpa1_complex_cholesky_single_precision@SUFFIX@ \
500
  elpa1_complex_invert_trm_single_precision@SUFFIX@ \
501
  elpa2_test_complex_api_single_precision@SUFFIX@ \
502
  elpa_driver_complex_c_version_single_precision@SUFFIX@
503 504 505 506
endif

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
507 508
  elpa1_test_real_single_precision@SUFFIX@ \
  elpa2_test_real_single_precision@SUFFIX@ \
509 510
  elpa2_test_real_default_single_precision@SUFFIX@ \
  elpa2_test_real_qr_single_precision@SUFFIX@ \
511
  elpa2_test_real_api_single_precision@SUFFIX@ \
512
  elpa_driver_real_single_precision@SUFFIX@ \
513 514
  elpa1_real_transpose_multiply_single_precision@SUFFIX@ \
  elpa1_real_cholesky_single_precision@SUFFIX@ \
515
  elpa1_real_invert_trm_single_precision@SUFFIX@ \
516
  elpa_driver_real_c_version_single_precision@SUFFIX@ \
517
  elpa1_real_toeplitz_single_precision@SUFFIX@
518 519 520 521
endif

if WITH_GPU_VERSION
noinst_PROGRAMS += \
522 523 524
  elpa1_test_complex_gpu@SUFFIX@ \
  elpa1_test_real_gpu@SUFFIX@ \
  elpa2_test_complex_gpu@SUFFIX@ \
525
  elpa2_test_real_gpu@SUFFIX@
526 527 528

if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += \
529
  elpa1_test_real_gpu_single_precision@SUFFIX@ \
530
  elpa2_test_real_gpu_single_precision@SUFFIX@
531 532 533 534
endif

if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += \
535
  elpa1_test_complex_gpu_single_precision@SUFFIX@ \
536 537
  elpa2_test_complex_gpu_single_precision@SUFFIX@
endif
538 539 540
endif
endif

Andreas Marek's avatar
Andreas Marek committed
541
build_lib = libelpatest@SUFFIX@.la libelpa@SUFFIX@.la
542 543 544

# library with shared sources for the test files
noinst_LTLIBRARIES += libelpatest@SUFFIX@.la
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
545
libelpatest@SUFFIX@_la_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
546
libelpatest@SUFFIX@_la_SOURCES = \
547 548 549 550 551 552 553 554 555 556 557 558
  test/shared/util.F90 \
  test/shared/read_input_parameters.F90  \
  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
559

560
if HAVE_REDIRECT
561
libelpatest@SUFFIX@_la_SOURCES += \
562 563 564 565 566 567 568
  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)
569
elpa2_print_kernels@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
570 571 572

test_real_double_1stage_SOURCES = test/Fortran/test.F90
test_real_double_1stage_LDADD = $(build_lib) $(FCLIBS)
573
test_real_double_1stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
574 575 576 577 578 579 580
        -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)
581
test_real_double_2stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
582 583 584 585 586 587 588
        -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)
589
test_complex_double_1stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
590 591 592 593 594 595 596
        -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)
597
test_complex_double_2stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
598 599 600 601 602 603 604 605
        -DTEST_COMPLEX \
        -DTEST_DOUBLE \
        -DTEST_SOLVER_2STAGE \
        -DTEST_GPU=0

if WANT_SINGLE_PRECISION_REAL
test_real_single_1stage_SOURCES = test/Fortran/test.F90
test_real_single_1stage_LDADD = $(build_lib) $(FCLIBS)
606
test_real_single_1stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
607 608 609 610 611 612 613
        -DTEST_REAL \
        -DTEST_SINGLE \
        -DTEST_SOLVER_1STAGE \
        -DTEST_GPU=0

test_real_single_2stage_SOURCES = test/Fortran/test.F90
test_real_single_2stage_LDADD = $(build_lib) $(FCLIBS)
614
test_real_single_2stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
615 616 617 618
        -DTEST_REAL \
        -DTEST_SINGLE \
        -DTEST_SOLVER_2STAGE \
        -DTEST_GPU=0
619
endif
620 621 622 623

if WANT_SINGLE_PRECISION_COMPLEX
test_complex_single_1stage_SOURCES = test/Fortran/test.F90
test_complex_single_1stage_LDADD = $(build_lib) $(FCLIBS)
624
test_complex_single_1stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
625 626 627 628 629 630 631
        -DTEST_COMPLEX \
        -DTEST_SINGLE \
        -DTEST_SOLVER_1STAGE \
        -DTEST_GPU=0

test_complex_single_2stage_SOURCES = test/Fortran/test.F90
test_complex_single_2stage_LDADD = $(build_lib) $(FCLIBS)
632
test_complex_single_2stage_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules \
633 634 635 636 637 638
        -DTEST_COMPLEX \
        -DTEST_SINGLE \
        -DTEST_SOLVER_2STAGE \
        -DTEST_GPU=0
endif

639 640
elpa_test_new_interface_real_2stage@SUFFIX@_SOURCES = test/Fortran/test_new_interface_real_2stage.F90
elpa_test_new_interface_real_2stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
641
elpa_test_new_interface_real_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
642
EXTRA_elpa_test_new_interface_real_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
643

644 645
elpa_test_new_interface_complex_2stage@SUFFIX@_SOURCES = test/Fortran/test_new_interface_complex_2stage.F90
elpa_test_new_interface_complex_2stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
646
elpa_test_new_interface_complex_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
647 648 649 650
EXTRA_elpa_test_new_interface_complex_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

elpa_test_new_interface_real_1stage@SUFFIX@_SOURCES = test/Fortran/test_new_interface_real_1stage.F90
elpa_test_new_interface_real_1stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
651
elpa_test_new_interface_real_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
652 653 654 655
EXTRA_elpa_test_new_interface_real_1stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

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

659 660 661
if WANT_SINGLE_PRECISION_REAL
elpa_test_new_interface_real_single_2stage@SUFFIX@_SOURCES = test/Fortran/test_new_interface_real_single_2stage.F90
elpa_test_new_interface_real_single_2stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
662
elpa_test_new_interface_real_single_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
663 664 665 666
EXTRA_elpa_test_new_interface_real_single_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

elpa_test_new_interface_real_single_1stage@SUFFIX@_SOURCES = test/Fortran/test_new_interface_real_single_1stage.F90
elpa_test_new_interface_real_single_1stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
667
elpa_test_new_interface_real_single_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
668 669 670 671 672 673
EXTRA_elpa_test_new_interface_real_single_1stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
endif

if WANT_SINGLE_PRECISION_COMPLEX
elpa_test_new_interface_complex_single_2stage@SUFFIX@_SOURCES = test/Fortran/test_new_interface_complex_single_2stage.F90
elpa_test_new_interface_complex_single_2stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
674
elpa_test_new_interface_complex_single_2stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
675 676 677 678
EXTRA_elpa_test_new_interface_complex_single_2stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

elpa_test_new_interface_complex_single_1stage@SUFFIX@_SOURCES = test/Fortran/test_new_interface_complex_single_1stage.F90
elpa_test_new_interface_complex_single_1stage@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
679
elpa_test_new_interface_complex_single_1stage@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
680 681 682 683 684 685
EXTRA_elpa_test_new_interface_complex_single_1stage@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
endif

if WITH_GPU_VERSION
elpa_test_new_interface_real_1stage_gpu@SUFFIX@_SOURCES = test/Fortran/test_new_interface_real_1stage_gpu.F90
elpa_test_new_interface_real_1stage_gpu@SUFFIX@_LDADD = $(build_lib)
686
elpa_test_new_interface_real_1stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
687 688 689 690
EXTRA_elpa_test_new_interface_real_1stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

elpa_test_new_interface_complex_1stage_gpu@SUFFIX@_SOURCES = test/Fortran/test_new_interface_complex_1stage_gpu.F90
elpa_test_new_interface_complex_1stage_gpu@SUFFIX@_LDADD = $(build_lib)
691
elpa_test_new_interface_complex_1stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
692 693 694 695
EXTRA_elpa_test_new_interface_complex_1stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

elpa_test_new_interface_real_2stage_gpu@SUFFIX@_SOURCES = test/Fortran/test_new_interface_real_2stage_gpu.F90
elpa_test_new_interface_real_2stage_gpu@SUFFIX@_LDADD = $(build_lib)
696
elpa_test_new_interface_real_2stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
697 698 699 700
EXTRA_elpa_test_new_interface_real_2stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

elpa_test_new_interface_complex_2stage_gpu@SUFFIX@_SOURCES = test/Fortran/test_new_interface_complex_2stage_gpu.F90
elpa_test_new_interface_complex_2stage_gpu@SUFFIX@_LDADD = $(build_lib)
701
elpa_test_new_interface_complex_2stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
702 703 704 705 706 707
EXTRA_elpa_test_new_interface_complex_2stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
endif

if WANT_SINGLE_PRECISION_REAL
elpa_test_new_interface_real_single_1stage_gpu@SUFFIX@_SOURCES = test/Fortran/test_new_interface_real_single_1stage_gpu.F90
elpa_test_new_interface_real_single_1stage_gpu@SUFFIX@_LDADD = $(build_lib)
708
elpa_test_new_interface_real_single_1stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
709 710 711 712
EXTRA_elpa_test_new_interface_real_single_1stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

elpa_test_new_interface_real_single_2stage_gpu@SUFFIX@_SOURCES = test/Fortran/test_new_interface_real_single_2stage_gpu.F90
elpa_test_new_interface_real_single_2stage_gpu@SUFFIX@_LDADD = $(build_lib)
713
elpa_test_new_interface_real_single_2stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
714 715 716 717 718 719
EXTRA_elpa_test_new_interface_real_single_2stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
endif

if WANT_SINGLE_PRECISION_COMPLEX
elpa_test_new_interface_complex_single_1stage_gpu@SUFFIX@_SOURCES = test/Fortran/test_new_interface_complex_single_1stage_gpu.F90
elpa_test_new_interface_complex_single_1stage_gpu@SUFFIX@_LDADD = $(build_lib)
720
elpa_test_new_interface_complex_single_1stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
721 722 723 724
EXTRA_elpa_test_new_interface_complex_single_1stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

elpa_test_new_interface_complex_single_2stage_gpu@SUFFIX@_SOURCES = test/Fortran/test_new_interface_complex_single_2stage_gpu.F90
elpa_test_new_interface_complex_single_2stage_gpu@SUFFIX@_LDADD = $(build_lib)
725
elpa_test_new_interface_complex_single_2stage_gpu@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
726 727 728 729 730
EXTRA_elpa_test_new_interface_complex_single_2stage_gpu@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
endif


if ENABLE_LEGACY
731
elpa1_test_real_c_version@SUFFIX@_SOURCES = test/C/elpa1_test_real_c_version.c
732
elpa1_test_real_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
733
elpa1_test_real_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
734
EXTRA_elpa1_test_real_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
735

736
elpa1_test_real_with_c@SUFFIX@_SOURCES = test/Fortran/test_real_with_c.F90
737
elpa1_test_real_with_c@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
738
elpa1_test_real_with_c@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
739
EXTRA_elpa1_test_real_with_c@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
740

741 742
elpa_driver_real_c_version@SUFFIX@_SOURCES = test/C/elpa_driver_real_c_version.c
elpa_driver_real_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
743
elpa_driver_real_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
744 745
EXTRA_elpa_driver_real_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

746
elpa1_test_complex_c_version@SUFFIX@_SOURCES = test/C/elpa1_test_complex_c_version.c
747
elpa1_test_complex_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
748
elpa1_test_complex_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
749
EXTRA_elpa1_test_complex_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
750

751 752
elpa_driver_complex_c_version@SUFFIX@_SOURCES = test/C/elpa_driver_complex_c_version.c
elpa_driver_complex_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
753
elpa_driver_complex_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
754 755
EXTRA_elpa_driver_complex_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

756
elpa2_test_real_c_version@SUFFIX@_SOURCES = test/C/elpa2_test_real_c_version.c
757
elpa2_test_real_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
758
elpa2_test_real_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
759
EXTRA_elpa2_test_real_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
760

761
elpa2_test_complex_c_version@SUFFIX@_SOURCES = test/C/elpa2_test_complex_c_version.c
762
elpa2_test_complex_c_version@SUFFIX@_LDADD = $(build_lib) $(FCLIBS)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
763
elpa2_test_complex_c_version@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
764
EXTRA_elpa2_test_complex_c_version@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
765

766
elpa1_test_real@SUFFIX@_SOURCES = test/Fortran/elpa1/real.F90
767
elpa1_test_real@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
768
elpa1_test_real@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
769
EXTRA_elpa1_test_real@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
770

771
elpa1_real_toeplitz@SUFFIX@_SOURCES = test/Fortran/elpa1/toeplitz.F90
772
elpa1_real_toeplitz@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
773
elpa1_real_toeplitz@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
774
EXTRA_elpa1_real_toeplitz@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
775

776 777
elpa1_real_transpose_multiply@SUFFIX@_SOURCES = test/Fortran/test_transpose_multiply_real.F90
elpa1_real_transpose_multiply@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
778
elpa1_real_transpose_multiply@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
779 780
EXTRA_elpa1_real_transpose_multiply@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

781 782
elpa1_complex_transpose_multiply@SUFFIX@_SOURCES = test/Fortran/test_transpose_multiply_complex.F90
elpa1_complex_transpose_multiply@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
783
elpa1_complex_transpose_multiply@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
784
EXTRA_elpa1_complex_transpose_multiply@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
785

786
elpa1_real_cholesky@SUFFIX@_SOURCES = test/Fortran/elpa1/real_cholesky.F90
787
elpa1_real_cholesky@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
788
elpa1_real_cholesky@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
789 790
EXTRA_elpa1_real_cholesky@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

791
elpa1_real_invert_trm@SUFFIX@_SOURCES = test/Fortran/elpa1/real_invert_trm.F90
792
elpa1_real_invert_trm@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
793
elpa1_real_invert_trm@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
794 795
EXTRA_elpa1_real_invert_trm@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

796
elpa1_complex_cholesky@SUFFIX@_SOURCES = test/Fortran/elpa1/complex_cholesky.F90
797
elpa1_complex_cholesky@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
798
elpa1_complex_cholesky@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
799 800
EXTRA_elpa1_complex_cholesky@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

801
elpa1_complex_invert_trm@SUFFIX@_SOURCES = test/Fortran/elpa1/complex_invert_trm.F90
802
elpa1_complex_invert_trm@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
803
elpa1_complex_invert_trm@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
804 805
EXTRA_elpa1_complex_invert_trm@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

806
elpa2_test_real@SUFFIX@_SOURCES = test/Fortran/elpa2/real.F90
807
elpa2_test_real@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
808
elpa2_test_real@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
809
EXTRA_elpa2_test_real@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
810

811
elpa2_test_real_default@SUFFIX@_SOURCES = test/Fortran/elpa2/real_default_kernel.F90
812
elpa2_test_real_default@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
813
elpa2_test_real_default@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
814
EXTRA_elpa2_test_real_default@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
815

816
elpa2_test_real_qr@SUFFIX@_SOURCES = test/Fortran/elpa2/real_qr.F90
817
elpa2_test_real_qr@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
818
elpa2_test_real_qr@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
819
EXTRA_elpa2_test_real_qr@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
820

821
elpa2_test_real_api@SUFFIX@_SOURCES = test/Fortran/elpa2/real_api.F90
822
elpa2_test_real_api@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
823
elpa2_test_real_api@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
Andreas Marek's avatar
Typo  
Andreas Marek committed
824
EXTRA_elpa2_test_real_api@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
825

826 827
elpa2_test_real_banded@SUFFIX@_SOURCES = test/Fortran/test_real2_banded.F90
elpa2_test_real_banded@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
828
elpa2_test_real_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
829 830
EXTRA_elpa2_test_real_banded@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90

831
elpa1_test_complex@SUFFIX@_SOURCES = test/Fortran/elpa1/complex.F90
832
elpa1_test_complex@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
833
elpa1_test_complex@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
834
EXTRA_elpa1_test_complex@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
835

836
elpa2_test_complex@SUFFIX@_SOURCES = test/Fortran/elpa2/complex.F90
837
elpa2_test_complex@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
838
elpa2_test_complex@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
839
EXTRA_elpa2_test_complex@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
840

841
elpa2_test_complex_default@SUFFIX@_SOURCES = test/Fortran/elpa2/complex_default_kernel.F90
842
elpa2_test_complex_default@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
843
elpa2_test_complex_default@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
844
EXTRA_elpa2_test_complex_default@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
845

846
elpa2_test_complex_api@SUFFIX@_SOURCES = test/Fortran/elpa2/complex_api.F90
847
elpa2_test_complex_api@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
848
elpa2_test_complex_api@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
849
EXTRA_elpa2_test_complex_api@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90
Andreas Marek's avatar
Andreas Marek committed
850

851 852
elpa2_test_complex_banded@SUFFIX@_SOURCES = test/Fortran/test_complex2_banded.F90
elpa2_test_complex_banded@SUFFIX@_LDADD = $(build_lib)
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
853
elpa2_test_complex_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)private_modules $(FC_MODINC)private_modules
854 855 856
EXTRA_elpa2_test_complex_banded@SUFFIX@_DEPENDENCIES = test/Fortran/elpa_print_headers.X90


857