--- a/build/apr_common.m4
+++ b/build/apr_common.m4
@@ -526,8 +526,9 @@ dnl  string.
 dnl
 dnl
 AC_DEFUN([APR_CHECK_STRERROR_R_RC], [
-AC_MSG_CHECKING(for type of return code from strerror_r)
-AC_TRY_RUN([
+AC_CACHE_CHECK([whether return code from strerror_r has type int],
+[ac_cv_strerror_r_rc_int],
+[AC_TRY_RUN([
 #include <errno.h>
 #include <string.h>
 #include <stdio.h>
@@ -543,14 +544,10 @@ main()
 }], [
     ac_cv_strerror_r_rc_int=yes ], [
     ac_cv_strerror_r_rc_int=no ], [
-    ac_cv_strerror_r_rc_int=no ] )
+    ac_cv_strerror_r_rc_int=no ] ) ] )
 if test "x$ac_cv_strerror_r_rc_int" = xyes; then
   AC_DEFINE(STRERROR_R_RC_INT, 1, [Define if strerror returns int])
-  msg="int"
-else
-  msg="pointer"
 fi
-AC_MSG_RESULT([$msg])
 ] )
 
 dnl
