summaryrefslogtreecommitdiffstats
path: root/configure.ac
diff options
context:
space:
mode:
authorM. Scot Breitenfeld <brtnfld@hdfgroup.org>2017-07-27 16:49:38 (GMT)
committerM. Scot Breitenfeld <brtnfld@hdfgroup.org>2017-07-27 16:49:38 (GMT)
commit5bc595f6a686c43ce3d910b7e0da61c331363598 (patch)
treef9c4c2e5da438e4d999b8c2e3b9b13e733e9344c /configure.ac
parent749d0d83415ace804dc686157c6e4242c716808d (diff)
downloadhdf5-5bc595f6a686c43ce3d910b7e0da61c331363598.zip
hdf5-5bc595f6a686c43ce3d910b7e0da61c331363598.tar.gz
hdf5-5bc595f6a686c43ce3d910b7e0da61c331363598.tar.bz2
libtool does not pass the correct argument linking (-WL,-WL,,) for the
NAG Fortran compiler on Linux (other OSs have not been tested). Therefore, detect if we are using the NAG Fortran compiler, and replace the wl="-Wl," for Fortran to wl="-Wl,-WL,," in the libtool file. (HDFFV-10037) Removed FCFLAGS when building the examples since they should already be included the h5fc wrapper. NAG complains about doubly declared options.
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac43
1 files changed, 31 insertions, 12 deletions
diff --git a/configure.ac b/configure.ac
index 72909d9..f0be94d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2909,6 +2909,37 @@ else
STATIC_SHARED="none"
fi
+if test "X$HDF_FORTRAN" = "Xyes"; then
+ ## libtool does not pass the correct argument linker (wl=) for the Intel Fortran compiler
+ ## on OS X, which is needed when building shared libraries on OS X. This script
+ ## replaces the 3rd occurrence, which is for Fortran, of wl="" with wl="-Wl," (HDFFV-2772)
+ case "`uname`" in
+ Darwin*)
+ cat libtool | awk '/wl=\"/{c++;if(c==3){sub("wl=\"\"","wl=\"-Wl,\"");c=0}}1' > libtool.tmp && mv -f libtool.tmp libtool && chmod 755 libtool
+ ;;
+ esac
+
+ ### libtool does not pass the correct argument linking (-WL,-WL,,) for the NAG Fortran compiler
+ ### on Linux (other OSs have not been tested).
+ ### Therefore, detect if we are using the NAG Fortran compiler, and replace the wl="-Wl," for Fortran to
+ ### wl="-Wl,-WL,," in the libtool file. (HDFFV-10037)
+ case "`uname`" in
+ Linux*)
+
+ fortran_linux_linker_option="-Wl,"
+
+ if (grep -i 'NAG_Fortran' libtool > /dev/null); then
+ cat libtool | awk '/NAG_Fortran/{flag=1}flag&&/wl=/{$NF="wl=\"-Wl,Wl,,\"";flag=0}1' > libtool.tmp && mv -f libtool.tmp libtool && chmod 755 libtool
+ fortran_linux_linker_option="-Wl,-Wl,,"
+ fi
+
+ ## Set the correct linker option for use in h5fc.in markup
+ AC_SUBST([fortran_linux_linker_option])
+ ;;
+ esac
+
+fi
+
## ----------------------------------------------------------------------
## Set a macro if shared library is enabled.
##
@@ -2998,18 +3029,6 @@ AC_OUTPUT
chmod 755 tools/misc/h5cc
-if test "X$HDF_FORTRAN" = "Xyes"; then
- chmod 755 fortran/src/h5fc
- ## libtool does not pass the correct argument linker (wl=) for the Intel Fortran compiler
- ## on OS X, which is needed when building shared libraries on OS X. This script
- ## replaces the 3rd occurrence, which is for Fortran, of wl="" with wl="-Wl," (HDFFV-2772)
- case "`uname`" in
- Darwin*)
- cat libtool | awk '/wl=\"/{c++;if(c==3){sub("wl=\"\"","wl=\"-Wl,\"");c=0}}1' > libtool.tmp && mv -f libtool.tmp libtool && chmod 755 libtool
- ;;
- esac
-fi
-
if test "X$HDF_CXX" = "Xyes"; then
chmod 755 c++/src/h5c++
fi