summaryrefslogtreecommitdiffstats
path: root/fortran/src/h5fc.in
diff options
context:
space:
mode:
authorLarry Knox <lrknox@hdfgroup.org>2013-03-22 21:02:07 (GMT)
committerLarry Knox <lrknox@hdfgroup.org>2013-03-22 21:02:07 (GMT)
commit99b15244742caf98b5ff634f34d880fd0089d8d4 (patch)
tree054cf34f27f5133469210ca62c2762492030070f /fortran/src/h5fc.in
parent3f1c23b3151153395c6001b895532bf101bdd746 (diff)
downloadhdf5-99b15244742caf98b5ff634f34d880fd0089d8d4.zip
hdf5-99b15244742caf98b5ff634f34d880fd0089d8d4.tar.gz
hdf5-99b15244742caf98b5ff634f34d880fd0089d8d4.tar.bz2
[svn-r23431] Fix for HDFFV-8141.
Changes default value for USE_SHARED_LIB in compile scripts to yes when static is disabled. Comments in scripts about the order of flag variables containing library paths was also corrected. Tested with h5committest on duck, jam, koala, and ostrich in addition to specific testing for the compile script change.
Diffstat (limited to 'fortran/src/h5fc.in')
-rw-r--r--fortran/src/h5fc.in32
1 files changed, 20 insertions, 12 deletions
diff --git a/fortran/src/h5fc.in b/fortran/src/h5fc.in
index c55b496..c58eab0 100644
--- a/fortran/src/h5fc.in
+++ b/fortran/src/h5fc.in
@@ -80,12 +80,11 @@ FLINKERBASE="@FC@"
# FFLAGS and LDFLAGS are reserved for use by the script user.
# FLAGS brought from the hdf5 build are put in H5BLD_*FLAGS.
-# User's FFLAGS come after their H5BLD counterparts to override
-# them. User's LDFLAGS come just before clibpath, user's LIBS come after
-# $link_objs and before the hdf5 libraries in $link_args, followed by any
-# external library paths and libraries from AM_LDFLAGS, LDFLAGS, AM_LIBS
-# or LIBS carried in from the hdf5 build.
-
+# User's FFLAGS come after their H5BLD counterparts. User's LDFLAGS come just
+# before clibpath, user's LIBS come after $link_objs and before the hdf5
+# libraries in $link_args, followed by any external library paths and libraries
+# from AM_LDFLAGS, LDFLAGS, AM_LIBS or LIBS carried in from the hdf5 build.
+# The order of the flags is intended to give precedence to the user's flags.
H5BLD_FFLAGS="@AM_FCFLAGS@ @FCFLAGS@"
F9XMODFLAG="@F9XMODFLAG@"
F9XSUFFIXFLAG="@F9XSUFFIXFLAG@"
@@ -98,7 +97,16 @@ FFLAGS="${HDF5_FFLAGS:-$FFLAGSBASE}"
LDFLAGS="${HDF5_LDFLAGS:-$LDFLAGSBASE}"
LIBS="${HDF5_LIBS:-$LIBSBASE}"
-USE_SHARED_LIB="${HDF5_USE_SHLIB:-no}"
+# If a static library is available, the default will be to use it. If the only
+# available library is shared, it will be used by default. The user can
+# override either default, although choosing an unavailable library will result
+# in link errors.
+STATIC_AVAILABLE="@enable_static@"
+if test "${STATIC_AVAILABLE}" = "yes"; then
+ USE_SHARED_LIB="${HDF5_USE_SHLIB:-no}"
+else
+ USE_SHARED_LIB="${HDF5_USE_SHLIB:-yes}"
+fi
usage() {
# A wonderfully informative "usage" message.
@@ -349,11 +357,11 @@ if test "x$do_link" = "xyes"; then
# module. It's okay if they're included twice in the compile line.
link_args="$link_args $H5BLD_LDFLAGS $H5BLD_LIBS"
- # User's FFLAGS come after their H5BLD counterparts to override
- # them. User's LDFLAGS come just before clibpath, user's LIBS come after
- # $link_objs and before the hdf5 libraries in $link_args, followed by any
- # external library paths and libraries from AM_LDFLAGS, LDFLAGS, AM_LIBS
- # or LIBS carried in from the hdf5 build.
+ # User's FFLAGS come after their H5BLD counterparts. User's LDFLAGS come just
+ # before clibpath, user's LIBS come after $link_objs and before the hdf5
+ # libraries in $link_args, followed by any external library paths and libraries
+ # from AM_LDFLAGS, LDFLAGS, AM_LIBS or LIBS carried in from the hdf5 build.
+ # The order of the flags is intended to give precedence to the user's flags.
$SHOW $FLINKER $FFLAGS $H5BLD_FFLAGS $F9XSUFFIXFLAG $LDFLAGS $fmodules $link_objs $LIBS $link_args $shared_link
status=$?
fi