--- configure.orig	2007-10-22 00:31:04.000000000 -0400
+++ configure	2007-10-22 00:34:52.000000000 -0400
@@ -29593,15 +29592,13 @@ fi
 { echo "$as_me:$LINENO: result: $ac_cv_lib_util_login" >&5
 echo "${ECHO_T}$ac_cv_lib_util_login" >&6; }
 if test $ac_cv_lib_util_login = yes; then
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBUTIL 1
+  cat >>confdefs.h <<\_ACEOF
+#define HAVE_LOGIN 1
 _ACEOF
-
-  LIBS="-lutil $LIBS"
-
+
+			  	EXTRA_DAEMON_LIBS="$EXTRA_DAEMON_LIBS -lutil"
 fi
 
-
 { echo "$as_me:$LINENO: checking for logout in -lutil" >&5
 echo $ECHO_N "checking for logout in -lutil... $ECHO_C" >&6; }
 if test "${ac_cv_lib_util_logout+set}" = set; then
@@ -29664,12 +29661,80 @@ fi
 { echo "$as_me:$LINENO: result: $ac_cv_lib_util_logout" >&5
 echo "${ECHO_T}$ac_cv_lib_util_logout" >&6; }
 if test $ac_cv_lib_util_logout = yes; then
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBUTIL 1
+  cat >>confdefs.h <<\_ACEOF
+#define HAVE_LOGOUT 1
+_ACEOF
+
+			   	EXTRA_DAEMON_LIBS="$EXTRA_DAEMON_LIBS -lutil"
+fi
+
+{ echo "$as_me:$LINENO: checking for logwtmp in -lutil" >&5
+echo $ECHO_N "checking for logwtmp in -lutil... $ECHO_C" >&6; }
+if test "${ac_cv_lib_util_logwtmp+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lutil  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char logwtmp ();
+int
+main ()
+{
+return logwtmp ();
+  ;
+  return 0;
+}
 _ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_link") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest$ac_exeext &&
+       $as_test_x conftest$ac_exeext; then
+  ac_cv_lib_util_logwtmp=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
 
-  LIBS="-lutil $LIBS"
+	ac_cv_lib_util_logwtmp=no
+fi
 
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+      conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_lib_util_logwtmp" >&5
+echo "${ECHO_T}$ac_cv_lib_util_logwtmp" >&6; }
+if test $ac_cv_lib_util_logwtmp = yes; then
+  cat >>confdefs.h <<\_ACEOF
+#define HAVE_LOGWTMP 1
+_ACEOF
+
+			    	EXTRA_DAEMON_LIBS="$EXTRA_DAEMON_LIBS -lutil"
 fi
 
 
@@ -33472,18 +33537,18 @@ esac
 
 # allow user to override the host-specific default
 
-test "x$GDM_USER_PATH" == x && GDM_USER_PATH=${HOST_GDM_USER_PATH}
-test "x$GDM_HALT_COMMAND" == x && GDM_HALT_COMMAND=${HOST_GDM_HALT_COMMAND}
-test "x$HALT_COMMAND" == x && HALT_COMMAND=${HOST_HALT_COMMAND}
-test "x$REBOOT_COMMAND" == x && REBOOT_COMMAND=${HOST_REBOOT_COMMAND}
-test "x$SUSPEND_COMMAND" == x && SUSPEND_COMMAND=${HOST_SUSPEND_COMMAND}
-test "x$XSESSION_SHELL" == x && XSESSION_SHELL=${HOST_XSESSION_SHELL}
-test "x$SOUND_PROGRAM" == x && SOUND_PROGRAM=${HOST_SOUND_PROGRAM}
-test "x$GDMGNOMESESSIONCMD" == x && GDMGNOMESESSIONCMD=${HOST_GDMGNOMESESSIONCMD}
-test "x$UTMP_LINE_ATTACHED" == x && UTMP_LINE_ATTACHED=${HOST_UTMP_LINE_ATTACHED}
-test "x$UTMP_LINE_REMOTE" == x && UTMP_LINE_REMOTE=${HOST_UTMP_LINE_REMOTE}
-test "x$UTMP_PSEUDO_DEVICE" == x && UTMP_PSEUDO_DEVICE=${HOST_UTMP_PSEUDO_DEVICE}
-test "x$GDM_RBAC_SYSCMD_KEYS" == x && GDM_RBAC_SYSCMD_KEYS=${HOST_GDM_RBAC_SYSCMD_KEYS}
+test "x$GDM_USER_PATH" = x && GDM_USER_PATH=${HOST_GDM_USER_PATH}
+test "x$GDM_HALT_COMMAND" = x && GDM_HALT_COMMAND=${HOST_GDM_HALT_COMMAND}
+test "x$HALT_COMMAND" = x && HALT_COMMAND=${HOST_HALT_COMMAND}
+test "x$REBOOT_COMMAND" = x && REBOOT_COMMAND=${HOST_REBOOT_COMMAND}
+test "x$SUSPEND_COMMAND" = x && SUSPEND_COMMAND=${HOST_SUSPEND_COMMAND}
+test "x$XSESSION_SHELL" = x && XSESSION_SHELL=${HOST_XSESSION_SHELL}
+test "x$SOUND_PROGRAM" = x && SOUND_PROGRAM=${HOST_SOUND_PROGRAM}
+test "x$GDMGNOMESESSIONCMD" = x && GDMGNOMESESSIONCMD=${HOST_GDMGNOMESESSIONCMD}
+test "x$UTMP_LINE_ATTACHED" = x && UTMP_LINE_ATTACHED=${HOST_UTMP_LINE_ATTACHED}
+test "x$UTMP_LINE_REMOTE" = x && UTMP_LINE_REMOTE=${HOST_UTMP_LINE_REMOTE}
+test "x$UTMP_PSEUDO_DEVICE" = x && UTMP_PSEUDO_DEVICE=${HOST_UTMP_PSEUDO_DEVICE}
+test "x$GDM_RBAC_SYSCMD_KEYS" = x && GDM_RBAC_SYSCMD_KEYS=${HOST_GDM_RBAC_SYSCMD_KEYS}
 
 # On Solaris, the /usr/bin/Xserver script is used to decide whether to
 # use Xsun or Xorg, so this is used on Solaris.
