summaryrefslogtreecommitdiffstats
path: root/fortran/src
diff options
context:
space:
mode:
authorBill Wendling <wendling@ncsa.uiuc.edu>2003-04-23 19:25:58 (GMT)
committerBill Wendling <wendling@ncsa.uiuc.edu>2003-04-23 19:25:58 (GMT)
commit7927acd7f31e2fb4136ac7e1826dc07a758ef11f (patch)
tree784becd8674ccab6265e13814a36ae0ff34d68c3 /fortran/src
parent46cb3df9f5cd100c77f2e8a8f4bc7b7c8dafd2b0 (diff)
downloadhdf5-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')
-rwxr-xr-xfortran/src/h5fc.in5
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