+AC_HEADER_ASSERT
+AC_C_FLEXIBLE_ARRAY_MEMBER
+
+# Work around quoting bug in Gnulib threadlib.m4 which prevents
+# correct detection on e.g., Solaris 8. These platforms require
+# PTHREAD_IN_USE_DETECTION_HARD to be set otherwise cdecl99 will
+# crash when reporting an error as initialization is not done.
+#
+# If this gets fixed in Gnulib, we can remove this.
+AS_CASE([$host_os],
+ [[solaris2.[1-9] | solaris2.[1-9].*]],
+ [AC_DEFINE([PTHREAD_IN_USE_DETECTION_HARD])])
+
+# As the mbrtowc replacement module is not used by the library, there is
+# no need for multithreaded mbrtowc (all programs are single threaded).
+AC_DEFINE([GNULIB_MBRTOWC_SINGLE_THREAD], [1], [Define to 1.])
+
+AS_IF([test x"$gl_cv_lib_readline" = x"no"],
+ [AS_IF([test x"$with_readline" = x"yes"],
+ [AC_MSG_FAILURE([--with-readline requested but readline was not found])],
+ [dx_cv_rl_add_history=no])])
+AC_CACHE_CHECK([if readline supports add_history], [dx_cv_rl_add_history], [dnl
+dx_cv_rl_add_history=no
+dx_save_libs=$LIBS
+LIBS="$LIBS $LIBREADLINE"
+AC_LINK_IFELSE([AC_LANG_PROGRAM([dnl
+#include <stdio.h>
+#if HAVE_READLINE_HISTORY_H
+# include <readline/history.h>
+#endif
+], [dnl
+(*add_history)("");
+])], [dx_cv_rl_add_history=yes], [dx_cv_rl_add_history=no])
+LIBS=$dx_save_libs
+])
+
+AS_IF([test x"$dx_cv_rl_add_history" = x"yes"],
+ [AC_DEFINE([HAVE_RL_ADD_HISTORY], [1],
+ [Define to 1 if readline supports add_history.])])
+