diff options
Diffstat (limited to 'fortran/test/Makefile.am')
-rw-r--r-- | fortran/test/Makefile.am | 61 |
1 files changed, 36 insertions, 25 deletions
diff --git a/fortran/test/Makefile.am b/fortran/test/Makefile.am index 608b1e9..735ab7a 100644 --- a/fortran/test/Makefile.am +++ b/fortran/test/Makefile.am @@ -36,12 +36,40 @@ else AM_LDFLAGS+=-static endif +# Check if the compiler supports the Fortran 2003 standard +# which should include the intrinsic module iso_c_binding +if FORTRAN_2003_CONDITIONAL_F + ff_PREFIX = F03 +else + ff_PREFIX = F90 +endif + # Our main targets, the tests themselves -TEST_PROG=fortranlib_test fflush1 fflush2 fortranlib_test_1_8 fortranlib_test_F03 +TEST_PROG=fortranlib_test fflush1 fflush2 fortranlib_test_1_8 + +if FORTRAN_2003_CONDITIONAL_F + TEST_PROG += fortranlib_test_F03 +endif check_PROGRAMS=$(TEST_PROG) -libh5test_fortran_la_SOURCES = tf_gen.F90 tf.F90 t.c +if FORTRAN_HAVE_STORAGE_SIZE +if FORTRAN_HAVE_C_SIZEOF + libh5test_fortran_la_SOURCES = tf_F08.f90 +else + libh5test_fortran_la_SOURCES = tf_F03.f90 +endif +else +if FORTRAN_2003_CONDITIONAL_F + libh5test_fortran_la_SOURCES = tf_F03.f90 +else + libh5test_fortran_la_SOURCES = tf_F90.f90 +endif +endif + +# tf.f90 depends on either tf_F08.f90 or tf_F03.f90 so they need to be +# compiled first +libh5test_fortran_la_SOURCES += tf.f90 t.c # Source files are used for both the library and fortranlib_test. # Automake will complain about this without the following workaround. @@ -51,11 +79,13 @@ fortranlib_test_CFLAGS=$(AM_CFLAGS) fortranlib_test_SOURCES = tH5F.f90 tH5D.f90 tH5R.f90 tH5S.f90 tH5T.f90 tH5VL.f90 tH5Z.f90 \ tH5Sselect.f90 tH5P.f90 tH5A.f90 tH5I.f90 tH5G.f90 tH5E.f90 tHDF5.f90 fortranlib_test.f90 -fortranlib_test_1_8_SOURCES = tH5O.f90 tH5A_1_8.f90 tH5G_1_8.f90 tH5MISC_1_8.f90 tHDF5_1_8.f90 \ +fortranlib_test_1_8_SOURCES = tH5O.f90 tH5A_1_8.f90 tH5G_1_8.f90 tH5MISC_1_8.f90 tHDF5_1_8.f90\ fortranlib_test_1_8.f90 -fortranlib_test_F03_SOURCES = tH5E_F03.f90 tH5F_F03.f90 tH5L_F03.f90 \ - tH5O_F03.f90 tH5P_F03.f90 tH5T_F03.F90 tHDF5_F03.f90 fortranlib_test_F03.f90 +if FORTRAN_2003_CONDITIONAL_F + fortranlib_test_F03_SOURCES = tH5E_F03.f90 tH5F_F03.f90 tH5L_F03.f90 \ + tH5O_F03.f90 tH5P_F03.f90 tH5T_F03.f90 tHDF5_F03.f90 fortranlib_test_F03.f90 +endif fflush1_SOURCES=fflush1.f90 @@ -76,32 +106,13 @@ maintainer-clean-local: clean-local distclean-local: clean-local clean-local: @if test -n "$(F9XMODEXT)" && test "X$(F9XMODEXT)" != "Xo"; then \ - $(RM) *.$(F9XMODEXT) tf_gen.F90; \ + $(RM) *.$(F9XMODEXT); \ fi # Mark this directory as part of the Fortran API (this affects output # from tests in conclude.am) FORTRAN_API=yes -# helper program we need to build. -noinst_PROGRAMS = H5_test_buildiface - -# H5_test_buildiface.F90 generates all the test APIs that have a KIND type associated -# with them. - -tf_gen.F90: H5_test_buildiface$(EXEEXT) - $(RUNSERIAL) ./H5_test_buildiface$(EXEEXT) - -# H5_test_buildiface.F90 is included in the distribution, and Automake knows -# how to compile a fortran program given its sources. - -H5_test_buildiface_SOURCES = H5_test_buildiface.F90 - -# The build of the H5_test_buildiface does depend on any libraries, so set it -# to nothing. - -H5_test_buildiface_LDADD = - # fflush2 depends on files created by fflush1 fflush2.chkexe_: fflush1.chkexe_ |