dnl ---------------
 dnl CHECK FUNCTIONS
 dnl ---------------
-AC_CHECK_FUNCS([wcwidth mbtowc writev lstat nl_langinfo])
+AC_CHECK_FUNCS([wcwidth mbtowc writev lstat nl_langinfo getutxent])
 
 dnl Check for multibyte character set support
 if test "x$ac_cv_header_wchar_h" = "xyes" -a "x$ac_cv_header_wctype_h" = "xyes" \
 
 #include <signal.h>
 #include <fcntl.h>
 
+#ifdef HAVE_GETUTXENT
 #include <utmpx.h>
+#endif /* HAVE_GETUTXENT */
 
 #define        SCANFMT \
 "%2(hour{dtimenow}):%02(min{dtimenow}): %<(size)%5(size) %>%<{encrypted}E%>\
 
     user = getusername();
 
+#if HAVE_GETUTXENT
     setutxent();
     while ((utp = getutxent()) != NULL) {
         if (utp->ut_type == USER_PROCESS && utp->ut_user[0] != 0
         }
     }
     endutxent();
+#endif /* HAVE_GETUTXENT */
 
     exit (RCV_MOK);
     return 0;  /* dead code to satisfy the compiler */
 
 #include NDBM_HEADER
 #endif
 
+#ifdef HAVE_GETUTXENT
 #include <utmpx.h>
+#endif /* HAVE_GETUTXENT */
 
 static struct swit switches[] = {
 #define        ADDRSW         0
 static int
 logged_in (void)
 {
+#if HAVE_GETUTXENT
     struct utmpx *utp;
 
     if (utmped)
     }
 
     endutxent();
+#endif /* HAVE_GETUTXENT */
     return (utmped = NOTOK);
 }