Commit 3385f14e authored by Lorenz Huedepohl's avatar Lorenz Huedepohl
Browse files

Move module 'elpa_utilities' into legacy API

The module is intended to be hidden, thus I moved it into the public
part of the legacy API.

Some test programs use it, thus the test programs have now also access
to ELPA's private modules. This is of course anyway necessary to test
ELPA internals that are not exposed via the public API.
parent 6efb2007
...@@ -19,8 +19,7 @@ libelpa@SUFFIX@_public_la_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)modules $(FC_MODIN ...@@ -19,8 +19,7 @@ libelpa@SUFFIX@_public_la_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)modules $(FC_MODIN
libelpa@SUFFIX@_public_la_SOURCES = \ libelpa@SUFFIX@_public_la_SOURCES = \
src/elpa.F90 \ src/elpa.F90 \
src/elpa_api.F90 \ src/elpa_api.F90 \
src/elpa_constants.F90 \ src/elpa_constants.F90
src/general/elpa_utilities.F90
if ENABLE_LEGACY if ENABLE_LEGACY
libelpa@SUFFIX@_public_la_SOURCES += \ libelpa@SUFFIX@_public_la_SOURCES += \
...@@ -64,6 +63,16 @@ libelpa@SUFFIX@_private_la_SOURCES = \ ...@@ -64,6 +63,16 @@ libelpa@SUFFIX@_private_la_SOURCES = \
src/elpa_c_interface.c \ src/elpa_c_interface.c \
src/elpa_index.c src/elpa_index.c
# elpa_utilities.F90 is private in new API, public in legacy
if ENABLE_LEGACY
libelpa@SUFFIX@_public_la_SOURCES += \
src/general/elpa_utilities.F90
else
libelpa@SUFFIX@_private_la_SOURCES += \
src/general/elpa_utilities.F90
endif
if ENABLE_LEGACY if ENABLE_LEGACY
libelpa@SUFFIX@_private_la_SOURCES += \ libelpa@SUFFIX@_private_la_SOURCES += \
src/elpa_driver/legacy_interface/elpa_driver_c_interface.F90 \ src/elpa_driver/legacy_interface/elpa_driver_c_interface.F90 \
...@@ -445,11 +454,12 @@ endif ...@@ -445,11 +454,12 @@ endif
noinst_PROGRAMS = noinst_PROGRAMS =
check_SCRIPTS = check_SCRIPTS =
build_lib = libelpatest@SUFFIX@.la libelpa@SUFFIX@.la test_program_ldadd = libelpatest@SUFFIX@.la libelpa@SUFFIX@.la
test_program_fcflags = $(AM_FCFLAGS) $(FC_MODOUT)test_modules $(FC_MODINC)test_modules $(FC_MODINC)modules $(FC_MODINC)private_modules
# library with shared sources for the test files # library with shared sources for the test files
noinst_LTLIBRARIES += libelpatest@SUFFIX@.la noinst_LTLIBRARIES += libelpatest@SUFFIX@.la
libelpatest@SUFFIX@_la_FCFLAGS = $(AM_FCFLAGS) $(FC_MODOUT)test_modules $(FC_MODINC)modules libelpatest@SUFFIX@_la_FCFLAGS = $(test_program_fcflags)
libelpatest@SUFFIX@_la_SOURCES = \ libelpatest@SUFFIX@_la_SOURCES = \
test/shared/test_util.F90 \ test/shared/test_util.F90 \
test/shared/test_read_input_parameters.F90 \ test/shared/test_read_input_parameters.F90 \
...@@ -470,7 +480,7 @@ endif ...@@ -470,7 +480,7 @@ endif
elpa2_print_kernels@SUFFIX@_SOURCES = src/elpa2/elpa2_print_kernels.F90 elpa2_print_kernels@SUFFIX@_SOURCES = src/elpa2/elpa2_print_kernels.F90
elpa2_print_kernels@SUFFIX@_LDADD = $(build_lib) elpa2_print_kernels@SUFFIX@_LDADD = libelpa@SUFFIX@.la
elpa2_print_kernels@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODINC)modules elpa2_print_kernels@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODINC)modules
include test_programs.am include test_programs.am
...@@ -482,26 +492,26 @@ endif ...@@ -482,26 +492,26 @@ endif
noinst_PROGRAMS += double_instance@SUFFIX@ noinst_PROGRAMS += double_instance@SUFFIX@
check_SCRIPTS += double_instance@SUFFIX@.sh check_SCRIPTS += double_instance@SUFFIX@.sh
double_instance@SUFFIX@_SOURCES = test/Fortran/elpa2/double_instance.F90 double_instance@SUFFIX@_SOURCES = test/Fortran/elpa2/double_instance.F90
double_instance@SUFFIX@_LDADD = $(build_lib) double_instance@SUFFIX@_LDADD = $(test_program_ldadd)
double_instance@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODINC)test_modules $(FC_MODINC)modules double_instance@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODINC)test_modules $(FC_MODINC)modules
noinst_PROGRAMS += real_2stage_banded@SUFFIX@ noinst_PROGRAMS += real_2stage_banded@SUFFIX@
check_SCRIPTS += real_2stage_banded@SUFFIX@.sh check_SCRIPTS += real_2stage_banded@SUFFIX@.sh
real_2stage_banded@SUFFIX@_SOURCES = test/Fortran/elpa2/real_2stage_banded.F90 real_2stage_banded@SUFFIX@_SOURCES = test/Fortran/elpa2/real_2stage_banded.F90
real_2stage_banded@SUFFIX@_LDADD = $(build_lib) real_2stage_banded@SUFFIX@_LDADD = $(test_program_ldadd)
real_2stage_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODINC)test_modules $(FC_MODINC)modules real_2stage_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODINC)test_modules $(FC_MODINC)modules
noinst_PROGRAMS += complex_2stage_banded@SUFFIX@ noinst_PROGRAMS += complex_2stage_banded@SUFFIX@
check_SCRIPTS += complex_2stage_banded@SUFFIX@.sh check_SCRIPTS += complex_2stage_banded@SUFFIX@.sh
complex_2stage_banded@SUFFIX@_SOURCES = test/Fortran/elpa2/complex_2stage_banded.F90 complex_2stage_banded@SUFFIX@_SOURCES = test/Fortran/elpa2/complex_2stage_banded.F90
complex_2stage_banded@SUFFIX@_LDADD = $(build_lib) complex_2stage_banded@SUFFIX@_LDADD = $(test_program_ldadd)
complex_2stage_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODINC)test_modules $(FC_MODINC)modules complex_2stage_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODINC)test_modules $(FC_MODINC)modules
if WANT_SINGLE_PRECISION_REAL if WANT_SINGLE_PRECISION_REAL
noinst_PROGRAMS += single_real_2stage_banded@SUFFIX@ noinst_PROGRAMS += single_real_2stage_banded@SUFFIX@
check_SCRIPTS += single_real_2stage_banded@SUFFIX@.sh check_SCRIPTS += single_real_2stage_banded@SUFFIX@.sh
single_real_2stage_banded@SUFFIX@_SOURCES = test/Fortran/elpa2/single_real_2stage_banded.F90 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@_LDADD = $(test_program_ldadd)
single_real_2stage_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODINC)test_modules $(FC_MODINC)modules single_real_2stage_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODINC)test_modules $(FC_MODINC)modules
endif endif
...@@ -509,7 +519,7 @@ if WANT_SINGLE_PRECISION_COMPLEX ...@@ -509,7 +519,7 @@ if WANT_SINGLE_PRECISION_COMPLEX
noinst_PROGRAMS += single_complex_2stage_banded@SUFFIX@ noinst_PROGRAMS += single_complex_2stage_banded@SUFFIX@
check_SCRIPTS += single_complex_2stage_banded@SUFFIX@.sh check_SCRIPTS += single_complex_2stage_banded@SUFFIX@.sh
single_complex_2stage_banded@SUFFIX@_SOURCES = test/Fortran/elpa2/single_complex_2stage_banded.F90 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@_LDADD = $(test_program_ldadd)
single_complex_2stage_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODINC)test_modules $(FC_MODINC)modules single_complex_2stage_banded@SUFFIX@_FCFLAGS = $(AM_FCFLAGS) $(FC_MODINC)test_modules $(FC_MODINC)modules
endif endif
......
...@@ -72,8 +72,8 @@ for m, g, t, p, d, s in product(sorted(matrix_flag.keys()), ...@@ -72,8 +72,8 @@ for m, g, t, p, d, s in product(sorted(matrix_flag.keys()),
print("noinst_PROGRAMS += " + name) print("noinst_PROGRAMS += " + name)
print("check_SCRIPTS += " + name + ".sh") print("check_SCRIPTS += " + name + ".sh")
print(name + "_SOURCES = test/Fortran/test.F90") print(name + "_SOURCES = test/Fortran/test.F90")
print(name + "_LDADD = $(build_lib)") print(name + "_LDADD = $(test_program_ldadd)")
print(name + "_FCFLAGS = $(AM_FCFLAGS) $(FC_MODINC)test_modules $(FC_MODINC)modules \\") print(name + "_FCFLAGS = $(test_program_fcflags) \\")
print(" " + " \\\n ".join([ print(" " + " \\\n ".join([
domain_flag[d], domain_flag[d],
prec_flag[p], prec_flag[p],
......
This diff is collapsed.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment