diff --git a/lib/autoconf/fortran.m4 b/lib/autoconf/fortran.m4
index f144c0e..d57f093 100644
--- a/lib/autoconf/fortran.m4
+++ b/lib/autoconf/fortran.m4
@@ -687,6 +687,12 @@ while test $[@%:@] != 1; do
 	  _AC_LIST_MEMBER_IF($ac_arg, $ac_cv_[]_AC_LANG_ABBREV[]_libs, ,
 			     ac_cv_[]_AC_LANG_ABBREV[]_libs="$ac_cv_[]_AC_LANG_ABBREV[]_libs $ac_arg")
 	  ;;
+	# Some compiler options put '-Bstatic' to link in their libraries statically
+	# while still using dynamic system libraries (e.g. PGI's -Bstatic_pgi and
+	# Intel's -static-intel)
+    -Bstatic | -Bdynamic)
+	  ac_cv_[]_AC_LANG_ABBREV[]_libs="$ac_cv_[]_AC_LANG_ABBREV[]_libs $ac_arg"
+      ;;
 	-zallextract*| -zdefaultextract)
 	  ac_cv_[]_AC_LANG_ABBREV[]_libs="$ac_cv_[]_AC_LANG_ABBREV[]_libs $ac_arg"
 	  ;;
