[AC_MSG_FAILURE([--with-curses requested but curses was not found])])
AM_CONDITIONAL([HAVE_CURSES], [test x"$have_curses" = x"yes"])
+AM_COND_IF([HAVE_CURSES],
+[DX_CHECK_CURSES_FUNC([wresize], [0,0,0])
+DX_CHECK_CURSES_MOUSE_SUPPORT])
+
# Checks for X11
AC_PATH_XTRA
AS_IF([test x"$no_x" != x"yes"],
AC_SUBST([MOTIF_CFLAGS], [@&t@])
AC_SUBST([MOTIF_LIBS], [@&t@])
-AS_IF([test x"$dx_cv_have_motif" = x"yes"],
+AM_CONDITIONAL([HAVE_MOTIF],
+ [test x"$with_x" != x"no" && test x"$dx_cv_have_motif" = x"yes"])
+AM_COND_IF([HAVE_MOTIF],
[MOTIF_CFLAGS=$dx_cv_motif_cflags MOTIF_LIBS=$dx_cv_motif_libs],
[AC_DEFINE([X_DISPLAY_MISSING])])
-AM_CONDITIONAL([HAVE_MOTIF], [test x"$dx_cv_have_motif" = x"yes"])
AH_TEMPLATE([X11_RENDER_DEBUG],
[Define to 1 to enable visual aids for debugging X11 rendering.])
+# Check for XmPIXMAP_AND_STRING.
+#
+# Just checking for the existence of this identifier is sufficient, to ensure
+# that the C compiler accepts the name. If it turns out to not actually be
+# supported by the library used at runtime, Motif itself will catch this
+# and set to the default (i.e., XmSTRING).
+AM_COND_IF([HAVE_MOTIF],
+[AC_CACHE_CHECK([whether Motif supports XmPIXMAP_AND_STRING],
+[dx_cv_motif_have_pixmap_and_string],
+[save_CFLAGS=$CFLAGS save_LIBS=$LIBS
+CFLAGS="$MOTIF_CFLAGS $CFLAGS" LIBS="$MOTIF_LIBS $LIBS"
+AC_COMPUTE_INT([dx_tmp],
+ [XmPIXMAP != XmPIXMAP_AND_STRING && XmSTRING != XmPIXMAP_AND_STRING],
+ [#include <Xm/Label.h>], [dx_tmp=0])
+AS_IF([test x"$dx_tmp" = x"1"],
+ [dx_cv_motif_have_pixmap_and_string=yes],
+ [dx_cv_motif_have_pixmap_and_string=no])
+CFLAGS=$save_CFLAGS LIBS=$save_LIBS])
+AS_IF([test x"$dx_cv_motif_have_pixmap_and_string" = x"yes"],
+ [AC_DEFINE([HAVE_MOTIF_PIXMAP_AND_STRING], [1],
+ [Define to 1 if Motif supports XmPIXMAP_AND_STRING])])
+])
+
AC_CONFIG_TESTDIR([.], [t:.])
DX_PROG_AUTOTEST
AM_CONDITIONAL([HAVE_AUTOTEST], [test x"$dx_cv_autotest_works" = x"yes"])