diff options
author | Bill Wendling <wendling@ncsa.uiuc.edu> | 2003-04-23 19:25:58 (GMT) |
---|---|---|
committer | Bill Wendling <wendling@ncsa.uiuc.edu> | 2003-04-23 19:25:58 (GMT) |
commit | 7927acd7f31e2fb4136ac7e1826dc07a758ef11f (patch) | |
tree | 784becd8674ccab6265e13814a36ae0ff34d68c3 /fortran/src/h5fc.in | |
parent | 46cb3df9f5cd100c77f2e8a8f4bc7b7c8dafd2b0 (diff) | |
download | hdf5-7927acd7f31e2fb4136ac7e1826dc07a758ef11f.zip hdf5-7927acd7f31e2fb4136ac7e1826dc07a758ef11f.tar.gz hdf5-7927acd7f31e2fb4136ac7e1826dc07a758ef11f.tar.bz2 |
[svn-r6739] Purpose:
Bug Fix
Description:
H5FC was failing on Copper (IBM P690). The reason: the xlf compiler
needs files to end in .f in stead of .f90. If you have .f90 files,
you need the "-qsuffix=f=f90" flag defined. This was defined for
compiling things via the "-c" option (to object files) but not for
straight compilation of a file.
I also noticed that the directory modules were being extracted from
was "." and "../src". H5FC would find these alright when doing a
"make check-install" but if Suzie User were to try this, it might
fail for her. Suzie would have to specify explicitly where to grab
these files.
Solution:
The solution to the problem was a bit more involved. I added a new
variable called "F9XSUFFIXFLAG" which is set to this value if the
machine needs it.
Added new variable called "FSEARCH_DIRS" which can be set to the
directories to find modules during compilation. The H5FC script knows
where to find the correct modules (it's in the lib/ directory), so it
uses the F9XMODFLAG to find them and not the FSEARCH_DIRS flag.
Platforms tested:
Modi4 (Fortran & Parallel)
Verbena (Fortran) C++ not needed since this is Fortran-only fix
Arabica (Fortran)
Copper (Fortran)
Ran "make install" and "make check-install" afterwards...
Misc. update:
Diffstat (limited to 'fortran/src/h5fc.in')
-rwxr-xr-x | fortran/src/h5fc.in | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fortran/src/h5fc.in b/fortran/src/h5fc.in index 6046ee0..d264af0 100755 --- a/fortran/src/h5fc.in +++ b/fortran/src/h5fc.in @@ -54,6 +54,7 @@ FCBASE="@F9X@" FLINKERBASE="@F9X@" FFLAGS="@FFLAGS@" F9XMODFLAG="@F9XMODFLAG@" +F9XSUFFIXFLAG="@F9XSUFFIXFLAG@" LDFLAGS="@LDFLAGS@" LIBS="@LIBS@" @@ -186,7 +187,7 @@ if test "x$do_compile" = "xyes"; then compile_args="-c $compile_args" fi - $SHOW $FC $FFLAGS $compile_args + $SHOW $FC $FFLAGS ${F9XSUFFIXFLAG} $compile_args status=$? if test "$status" != "0"; then @@ -204,7 +205,7 @@ if test "x$do_link" = "xyes"; then link_args="$link_args ${libdir}/libhdf5_fortran.a ${libdir}/libhdf5.a" link_args="$link_args $LIBS" - $SHOW $FLINKER ${fmodules} $link_objs $link_args ${LDFLAGS} + $SHOW $FLINKER ${FFLAGS} ${F9XSUFFIXFLAG} ${fmodules} $link_objs $link_args ${LDFLAGS} status=$? fi |