diff --git a/m4/check-package.m4 b/m4/check-package.m4
index 7556331cd1f4a746e8d8f389973aff97e7790b55..b806de127890934d1ba333823b94e608431e6e84 100644
--- a/m4/check-package.m4
+++ b/m4/check-package.m4
@@ -184,7 +184,14 @@ m4_if($8,[optional],
   [AC_CHECK_LIB(${UPNAME[_NAME]}, main,
      [UPNAME[_LIB]="-L${UPNAME[_LIB_PATH]} -l${UPNAME[_NAME]}"
       UPNAME[_ALL_LIB]="-L${UPNAME[_LIB_PATH]} -l${UPNAME[_NAME]} $4"],
-     [AC_MSG_ERROR([Library "lib${UPNAME[_NAME]}" was not found])],
+     [case "$host" in
+	*darwin*)
+		AC_MSG_RESULT([Running the test for "$1" again with -framework switch])
+		;;
+	*)
+		AC_MSG_ERROR([Library "lib${UPNAME[_NAME]}" was not found])
+		;;
+	esac],
      -L$UPNAME[_LIB_PATH] $4)])
 
 dnl
@@ -195,7 +202,6 @@ dnl
 if test "x${UPNAME[_LIB]}" = "x" ; then
   case "$host" in
 	*darwin*)
-	AC_MSG_RESULT([Running the test for "$1" again with -framework switch])
 	eval "unset ac_cv_lib_${UPNAME[_NAME]}___main"
 m4_if($8,[optional],
   [AC_CHECK_FRAMEWORK(${UPNAME[_NAME]}, main,