+# Check for XSI-compatible strerror_r as default implementation
+AC_CACHE_CHECK(
+ [for XSI style strerror_r support],
+ [folly_cv_prog_cc_xsi_strerror_r],
+ [AC_RUN_IFELSE(
+ [AC_LANG_SOURCE[
+ #include <string.h>
+ #include <errno.h>
+ int main(int argc, char** argv) {
+ char buf[1024];
+ buf[0] = 0;
+ int ret = strerror_r(ENOMEM, buf, sizeof(buf));
+ return ret;
+ }
+ ]],
+ [folly_cv_prog_cc_xsi_strerror_r=yes],
+ [folly_cv_prog_cc_xsi_strerror_r=no])])
+
+if test "$folly_cv_prog_cc_xsi_strerror_r" = "yes"; then
+ AC_DEFINE([HAVE_XSI_STRERROR_R], [1], [Define to 1 if the runtime supports XSI-style strerror_r])
+fi
+