Index: patches/shadow-4.1.4.1-sysroot_hacks-1.patch
===================================================================
--- patches/shadow-4.1.4.1-sysroot_hacks-1.patch	(revision fc7c84aa8fdcbcecf21fcce0b800db578bfd7b60)
+++ patches/shadow-4.1.4.1-sysroot_hacks-1.patch	(revision fc7c84aa8fdcbcecf21fcce0b800db578bfd7b60)
@@ -0,0 +1,2100 @@
+Submitted By: Joe Ciccone <jciccone@gmail.com>
+Date: 2006-11-24
+Initial Package Version: 4.0.18.1
+        Rediffed Against 4.1.2.2 by Joe Ciccone on 2009-01-03
+        Rediffed Against 4.1.4.1 by Joe Ciccone on 2009-07-11
+Origin: Joe Ciccone
+Upstream Status: None
+Description: Changes the hardcoded /etc to the value of the --sysconfdir
+             parameter passed to configure. Allows the utilities to be run
+             as a user other then root and properly modify the passwd and group
+             files for the target system. This patch also disables the
+             calls that flushes the nscd cache. There is no point in flushing
+             the hosts cache db when it wasn't modified.
+
+diff -Naur shadow-4.1.4.1.orig/aclocal.m4 shadow-4.1.4.1/aclocal.m4
+--- shadow-4.1.4.1.orig/aclocal.m4	2009-05-22 09:55:38.000000000 -0400
++++ shadow-4.1.4.1/aclocal.m4	2009-07-11 22:35:20.185755870 -0400
+@@ -1,4 +1,4 @@
+-# generated automatically by aclocal 1.10.2 -*- Autoconf -*-
++# generated automatically by aclocal 1.10.1 -*- Autoconf -*-
+ 
+ # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+ # 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+@@ -13,7 +13,7 @@
+ 
+ m4_ifndef([AC_AUTOCONF_VERSION],
+   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
+-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.63],,
++m4_if(AC_AUTOCONF_VERSION, [2.63],,
+ [m4_warning([this file was generated for autoconf 2.63.
+ You have another version of autoconf.  It may work, but is not guaranteed to.
+ If you have problems, you may need to regenerate the build system entirely.
+@@ -4122,18 +4122,6 @@
+   dynamic_linker='GNU/Linux ld.so'
+   ;;
+ 
+-netbsdelf*-gnu)
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=no
+-  hardcode_into_libs=yes
+-  dynamic_linker='NetBSD ld.elf_so'
+-  ;;
+-
+ netbsd*)
+   version_type=sunos
+   need_lib_prefix=no
+@@ -4725,7 +4713,7 @@
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+-netbsd* | netbsdelf*-gnu)
++netbsd*)
+   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
+   else
+@@ -5406,7 +5394,7 @@
+ 	    ;;
+ 	esac
+ 	;;
+-      netbsd* | netbsdelf*-gnu)
++      netbsd*)
+ 	;;
+       *qnx* | *nto*)
+         # QNX uses GNU C++, but need to define -shared option too, otherwise
+@@ -5831,9 +5819,6 @@
+   cygwin* | mingw* | cegcc*)
+     _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
+   ;;
+-  linux* | k*bsd*-gnu)
+-    _LT_TAGVAR(link_all_deplibs, $1)=no
+-  ;;
+   *)
+     _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
+   ;;
+@@ -5898,9 +5883,6 @@
+   openbsd*)
+     with_gnu_ld=no
+     ;;
+-  linux* | k*bsd*-gnu)
+-    _LT_TAGVAR(link_all_deplibs, $1)=no
+-    ;;
+   esac
+ 
+   _LT_TAGVAR(ld_shlibs, $1)=yes
+@@ -6083,7 +6065,7 @@
+       fi
+       ;;
+ 
+-    netbsd* | netbsdelf*-gnu)
++    netbsd*)
+       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ 	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+ 	wlarc=
+@@ -6258,7 +6240,6 @@
+ 	if test "$aix_use_runtimelinking" = yes; then
+ 	  shared_flag="$shared_flag "'${wl}-G'
+ 	fi
+-	_LT_TAGVAR(link_all_deplibs, $1)=no
+       else
+ 	# not using gcc
+ 	if test "$host_cpu" = ia64; then
+@@ -6497,7 +6478,7 @@
+       _LT_TAGVAR(link_all_deplibs, $1)=yes
+       ;;
+ 
+-    netbsd* | netbsdelf*-gnu)
++    netbsd*)
+       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ 	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
+       else
+@@ -10181,7 +10162,7 @@
+ AC_SUBST($1)dnl
+ ])
+ 
+-# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
++# Copyright (C) 2002, 2003, 2005, 2006, 2007  Free Software Foundation, Inc.
+ #
+ # This file is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+@@ -10196,7 +10177,7 @@
+ [am__api_version='1.10'
+ dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
+ dnl require some minimum version.  Point them to the right macro.
+-m4_if([$1], [1.10.2], [],
++m4_if([$1], [1.10.1], [],
+       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
+ ])
+ 
+@@ -10210,12 +10191,12 @@
+ # AM_SET_CURRENT_AUTOMAKE_VERSION
+ # -------------------------------
+ # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
+-# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
++# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
+ AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
+-[AM_AUTOMAKE_VERSION([1.10.2])dnl
++[AM_AUTOMAKE_VERSION([1.10.1])dnl
+ m4_ifndef([AC_AUTOCONF_VERSION],
+   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
+-_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
++_AM_AUTOCONF_VERSION(AC_AUTOCONF_VERSION)])
+ 
+ # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
+ 
+@@ -10465,28 +10446,19 @@
+ 
+ # Generate code to set up dependency tracking.              -*- Autoconf -*-
+ 
+-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
++# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+ # Free Software Foundation, Inc.
+ #
+ # This file is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+ # with or without modifications, as long as this notice is preserved.
+ 
+-#serial 4
++#serial 3
+ 
+ # _AM_OUTPUT_DEPENDENCY_COMMANDS
+ # ------------------------------
+ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
+-[# Autoconf 2.62 quotes --file arguments for eval, but not when files
+-# are listed without --file.  Let's play safe and only enable the eval
+-# if we detect the quoting.
+-case $CONFIG_FILES in
+-*\'*) eval set x "$CONFIG_FILES" ;;
+-*)   set x $CONFIG_FILES ;;
+-esac
+-shift
+-for mf
+-do
++[for mf in $CONFIG_FILES; do
+   # Strip MF so we end up with the name of the file.
+   mf=`echo "$mf" | sed -e 's/:.*$//'`
+   # Check whether this is an Automake generated Makefile or not.
+@@ -10847,13 +10819,13 @@
+ 
+ # Helper functions for option handling.                     -*- Autoconf -*-
+ 
+-# Copyright (C) 2001, 2002, 2003, 2005, 2008  Free Software Foundation, Inc.
++# Copyright (C) 2001, 2002, 2003, 2005  Free Software Foundation, Inc.
+ #
+ # This file is free software; the Free Software Foundation
+ # gives unlimited permission to copy and/or distribute it,
+ # with or without modifications, as long as this notice is preserved.
+ 
+-# serial 4
++# serial 3
+ 
+ # _AM_MANGLE_OPTION(NAME)
+ # -----------------------
+@@ -10870,7 +10842,7 @@
+ # ----------------------------------
+ # OPTIONS is a space-separated list of Automake options.
+ AC_DEFUN([_AM_SET_OPTIONS],
+-[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
++[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
+ 
+ # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
+ # -------------------------------------------
+diff -Naur shadow-4.1.4.1.orig/configure shadow-4.1.4.1/configure
+--- shadow-4.1.4.1.orig/configure	2009-05-22 09:55:41.000000000 -0400
++++ shadow-4.1.4.1/configure	2009-07-11 22:35:22.129088886 -0400
+@@ -6786,7 +6786,7 @@
+   lt_cv_deplibs_check_method=pass_all
+   ;;
+ 
+-netbsd* | netbsdelf*-gnu)
++netbsd*)
+   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
+     lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
+   else
+@@ -9444,9 +9444,6 @@
+   openbsd*)
+     with_gnu_ld=no
+     ;;
+-  linux* | k*bsd*-gnu)
+-    link_all_deplibs=no
+-    ;;
+   esac
+ 
+   ld_shlibs=yes
+@@ -9629,7 +9626,7 @@
+       fi
+       ;;
+ 
+-    netbsd* | netbsdelf*-gnu)
++    netbsd*)
+       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ 	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+ 	wlarc=
+@@ -9804,7 +9801,6 @@
+ 	if test "$aix_use_runtimelinking" = yes; then
+ 	  shared_flag="$shared_flag "'${wl}-G'
+ 	fi
+-	link_all_deplibs=no
+       else
+ 	# not using gcc
+ 	if test "$host_cpu" = ia64; then
+@@ -10219,7 +10215,7 @@
+       link_all_deplibs=yes
+       ;;
+ 
+-    netbsd* | netbsdelf*-gnu)
++    netbsd*)
+       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
+ 	archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
+       else
+@@ -11196,18 +11192,6 @@
+   dynamic_linker='GNU/Linux ld.so'
+   ;;
+ 
+-netbsdelf*-gnu)
+-  version_type=linux
+-  need_lib_prefix=no
+-  need_version=no
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+-  soname_spec='${libname}${release}${shared_ext}$major'
+-  shlibpath_var=LD_LIBRARY_PATH
+-  shlibpath_overrides_runpath=no
+-  hardcode_into_libs=yes
+-  dynamic_linker='NetBSD ld.elf_so'
+-  ;;
+-
+ netbsd*)
+   version_type=sunos
+   need_lib_prefix=no
+@@ -12141,7 +12125,7 @@
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 12144 "configure"
++#line 12128 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+@@ -12237,7 +12221,7 @@
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 12240 "configure"
++#line 12224 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+@@ -24899,16 +24883,7 @@
+ 
+ 
+   case $ac_file$ac_mode in
+-    "depfiles":C) test x"$AMDEP_TRUE" != x"" || # Autoconf 2.62 quotes --file arguments for eval, but not when files
+-# are listed without --file.  Let's play safe and only enable the eval
+-# if we detect the quoting.
+-case $CONFIG_FILES in
+-*\'*) eval set x "$CONFIG_FILES" ;;
+-*)   set x $CONFIG_FILES ;;
+-esac
+-shift
+-for mf
+-do
++    "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do
+   # Strip MF so we end up with the name of the file.
+   mf=`echo "$mf" | sed -e 's/:.*$//'`
+   # Check whether this is an Automake generated Makefile or not.
+diff -Naur shadow-4.1.4.1.orig/contrib/Makefile.in shadow-4.1.4.1/contrib/Makefile.in
+--- shadow-4.1.4.1.orig/contrib/Makefile.in	2009-05-22 09:55:43.000000000 -0400
++++ shadow-4.1.4.1/contrib/Makefile.in	2009-07-11 22:35:22.838280410 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -200,8 +200,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+diff -Naur shadow-4.1.4.1.orig/doc/Makefile.in shadow-4.1.4.1/doc/Makefile.in
+--- shadow-4.1.4.1.orig/doc/Makefile.in	2009-05-22 09:55:43.000000000 -0400
++++ shadow-4.1.4.1/doc/Makefile.in	2009-07-11 22:35:22.875755513 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -199,8 +199,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+diff -Naur shadow-4.1.4.1.orig/etc/Makefile.in shadow-4.1.4.1/etc/Makefile.in
+--- shadow-4.1.4.1.orig/etc/Makefile.in	2009-05-22 09:55:43.000000000 -0400
++++ shadow-4.1.4.1/etc/Makefile.in	2009-07-11 22:35:22.925755384 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -238,8 +238,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -396,7 +396,7 @@
+ 	unique=`for i in $$list; do \
+ 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ 	  done | \
+-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
++	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+ 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
+ 	mkid -fID $$unique
+ tags: TAGS
+diff -Naur shadow-4.1.4.1.orig/etc/pam.d/Makefile.in shadow-4.1.4.1/etc/pam.d/Makefile.in
+--- shadow-4.1.4.1.orig/etc/pam.d/Makefile.in	2009-05-22 09:55:43.000000000 -0400
++++ shadow-4.1.4.1/etc/pam.d/Makefile.in	2009-07-11 22:35:22.964921740 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -230,8 +230,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+diff -Naur shadow-4.1.4.1.orig/lib/commonio.c shadow-4.1.4.1/lib/commonio.c
+--- shadow-4.1.4.1.orig/lib/commonio.c	2009-05-10 09:49:05.000000000 -0400
++++ shadow-4.1.4.1/lib/commonio.c	2009-07-11 22:34:19.184931422 -0400
+@@ -215,16 +215,6 @@
+ 		return NULL;
+ 	}
+ 
+-#ifdef HAVE_FCHOWN
+-	if (fchown (fileno (fp), sb->st_uid, sb->st_gid) != 0) {
+-		goto fail;
+-	}
+-#else
+-	if (chown (name, sb->st_mode) != 0) {
+-		goto fail;
+-	}
+-#endif
+-
+ #ifdef HAVE_FCHMOD
+ 	if (fchmod (fileno (fp), sb->st_mode & 0664) != 0) {
+ 		goto fail;
+@@ -408,8 +398,8 @@
+ 			/* Tell nscd when lock count goes to zero,
+ 			   if any of the files were changed.  */
+ 			if (nscd_need_reload) {
+-				nscd_flush_cache ("passwd");
+-				nscd_flush_cache ("group");
++//				nscd_flush_cache ("passwd");
++//				nscd_flush_cache ("group");
+ 				nscd_need_reload = false;
+ 			}
+ #ifdef HAVE_LCKPWDF
+@@ -872,7 +862,7 @@
+ 		 * Default permissions for new [g]shadow files.
+ 		 * (passwd and group always exist...)
+ 		 */
+-		sb.st_mode = 0400;
++		sb.st_mode = 0600;
+ 		sb.st_uid = 0;
+ 		sb.st_gid = 0;
+ 	}
+diff -Naur shadow-4.1.4.1.orig/lib/defines.h shadow-4.1.4.1/lib/defines.h
+--- shadow-4.1.4.1.orig/lib/defines.h	2009-05-19 04:05:10.000000000 -0400
++++ shadow-4.1.4.1/lib/defines.h	2009-07-11 22:34:19.184931422 -0400
+@@ -299,20 +299,20 @@
+ 	(strncpy((A), (B), sizeof(A) - 1), (A)[sizeof(A) - 1] = '\0')
+ 
+ #ifndef PASSWD_FILE
+-#define PASSWD_FILE "/etc/passwd"
++#define PASSWD_FILE SYSCONFDIR"/passwd"
+ #endif
+ 
+ #ifndef GROUP_FILE
+-#define GROUP_FILE "/etc/group"
++#define GROUP_FILE SYSCONFDIR"/group"
+ #endif
+ 
+ #ifndef SHADOW_FILE
+-#define SHADOW_FILE "/etc/shadow"
++#define SHADOW_FILE SYSCONFDIR"/shadow"
+ #endif
+ 
+ #ifdef SHADOWGRP
+ #ifndef SGROUP_FILE
+-#define SGROUP_FILE "/etc/gshadow"
++#define SGROUP_FILE SYSCONFDIR"/gshadow"
+ #endif
+ #endif
+ 
+diff -Naur shadow-4.1.4.1.orig/lib/getdef.c shadow-4.1.4.1/lib/getdef.c
+--- shadow-4.1.4.1.orig/lib/getdef.c	2009-04-23 07:46:47.000000000 -0400
++++ shadow-4.1.4.1/lib/getdef.c	2009-07-11 22:34:19.184931422 -0400
+@@ -128,7 +128,7 @@
+ };
+ 
+ #ifndef LOGINDEFS
+-#define LOGINDEFS "/etc/login.defs"
++#define LOGINDEFS SYSCONFDIR"/login.defs"
+ #endif
+ 
+ static char def_fname[] = LOGINDEFS;	/* login config defs file       */
+diff -Naur shadow-4.1.4.1.orig/lib/gshadow_.h shadow-4.1.4.1/lib/gshadow_.h
+--- shadow-4.1.4.1.orig/lib/gshadow_.h	2009-04-24 20:20:11.000000000 -0400
++++ shadow-4.1.4.1/lib/gshadow_.h	2009-07-11 22:34:19.184931422 -0400
+@@ -71,5 +71,5 @@
+ int putsgent ();
+ #endif
+ 
+-#define	GSHADOW	"/etc/gshadow"
++#define	GSHADOW	SYSCONFDIR"/gshadow"
+ #endif				/* ifndef _H_GSHADOW */
+diff -Naur shadow-4.1.4.1.orig/lib/Makefile.am shadow-4.1.4.1/lib/Makefile.am
+--- shadow-4.1.4.1.orig/lib/Makefile.am	2009-04-24 05:47:28.000000000 -0400
++++ shadow-4.1.4.1/lib/Makefile.am	2009-07-11 22:34:19.184931422 -0400
+@@ -2,6 +2,7 @@
+ AUTOMAKE_OPTIONS = 1.0 foreign
+ 
+ DEFS = 
++AM_CPPFLAGS = -DSYSCONFDIR=\"$(sysconfdir)\"
+ 
+ noinst_LTLIBRARIES = libshadow.la
+ 
+diff -Naur shadow-4.1.4.1.orig/lib/Makefile.in shadow-4.1.4.1/lib/Makefile.in
+--- shadow-4.1.4.1.orig/lib/Makefile.in	2009-05-22 09:55:43.000000000 -0400
++++ shadow-4.1.4.1/lib/Makefile.in	2009-07-11 22:35:23.021588901 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -214,6 +214,7 @@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+ AUTOMAKE_OPTIONS = 1.0 foreign
++AM_CPPFLAGS = -DSYSCONFDIR=\"$(sysconfdir)\"
+ noinst_LTLIBRARIES = libshadow.la
+ libshadow_la_LDFLAGS = -version-info 0:0:0
+ libshadow_la_SOURCES = \
+@@ -275,8 +276,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -377,7 +378,7 @@
+ 	unique=`for i in $$list; do \
+ 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ 	  done | \
+-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
++	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+ 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
+ 	mkid -fID $$unique
+ tags: TAGS
+diff -Naur shadow-4.1.4.1.orig/lib/port.h shadow-4.1.4.1/lib/port.h
+--- shadow-4.1.4.1.orig/lib/port.h	2008-04-26 20:40:13.000000000 -0400
++++ shadow-4.1.4.1/lib/port.h	2009-07-11 22:34:19.184931422 -0400
+@@ -52,7 +52,7 @@
+  * PORT_DAY - Day of the week to a bit value (0 = Sunday).
+  */
+ 
+-#define	PORTS	"/etc/porttime"
++#define	PORTS	SYSCONFDIR"/porttime"
+ #define	PORT_IDS	64
+ #define	PORT_TTY	64
+ #define	PORT_TIMES	24
+diff -Naur shadow-4.1.4.1.orig/libmisc/limits.c shadow-4.1.4.1/libmisc/limits.c
+--- shadow-4.1.4.1.orig/libmisc/limits.c	2009-04-30 17:08:50.000000000 -0400
++++ shadow-4.1.4.1/libmisc/limits.c	2009-07-11 22:34:19.188262019 -0400
+@@ -54,7 +54,7 @@
+ #endif
+ #ifdef LIMITS
+ #ifndef LIMITS_FILE
+-#define LIMITS_FILE "/etc/limits"
++#define LIMITS_FILE SYSCONFDIR"/limits"
+ #endif
+ #define LOGIN_ERROR_RLIMIT	1
+ #define LOGIN_ERROR_LOGIN	2
+diff -Naur shadow-4.1.4.1.orig/libmisc/Makefile.am shadow-4.1.4.1/libmisc/Makefile.am
+--- shadow-4.1.4.1.orig/libmisc/Makefile.am	2009-05-17 14:39:06.000000000 -0400
++++ shadow-4.1.4.1/libmisc/Makefile.am	2009-07-11 22:34:19.188262019 -0400
+@@ -1,6 +1,8 @@
+ 
+ EXTRA_DIST = .indent.pro xgetXXbyYY.c
+ 
++AM_CPPFLAGS = -DSYSCONFDIR=\"$(sysconfdir)\"
++
+ INCLUDES = -I$(top_srcdir)/lib
+ 
+ noinst_LIBRARIES = libmisc.a
+diff -Naur shadow-4.1.4.1.orig/libmisc/Makefile.in shadow-4.1.4.1/libmisc/Makefile.in
+--- shadow-4.1.4.1.orig/libmisc/Makefile.in	2009-05-22 09:55:43.000000000 -0400
++++ shadow-4.1.4.1/libmisc/Makefile.in	2009-07-11 22:35:23.078255559 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -233,6 +233,7 @@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+ EXTRA_DIST = .indent.pro xgetXXbyYY.c
++AM_CPPFLAGS = -DSYSCONFDIR=\"$(sysconfdir)\"
+ INCLUDES = -I$(top_srcdir)/lib
+ noinst_LIBRARIES = libmisc.a
+ libmisc_a_SOURCES = \
+@@ -305,8 +306,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -438,7 +439,7 @@
+ 	unique=`for i in $$list; do \
+ 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ 	  done | \
+-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
++	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+ 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
+ 	mkid -fID $$unique
+ tags: TAGS
+diff -Naur shadow-4.1.4.1.orig/Makefile.in shadow-4.1.4.1/Makefile.in
+--- shadow-4.1.4.1.orig/Makefile.in	2009-05-22 09:55:44.000000000 -0400
++++ shadow-4.1.4.1/Makefile.in	2009-07-11 22:35:24.044922145 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -283,7 +283,7 @@
+ 	-rm -rf .libs _libs
+ 
+ distclean-libtool:
+-	-rm -f libtool config.lt
++	-rm -f libtool
+ 
+ # This directory's subdirectories are mostly independent; you can cd
+ # into them and run `make' without going through this Makefile.
+@@ -360,7 +360,7 @@
+ 	unique=`for i in $$list; do \
+ 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ 	  done | \
+-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
++	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+ 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
+ 	mkid -fID $$unique
+ tags: TAGS
+diff -Naur shadow-4.1.4.1.orig/man/cs/Makefile.in shadow-4.1.4.1/man/cs/Makefile.in
+--- shadow-4.1.4.1.orig/man/cs/Makefile.in	2009-05-22 09:55:43.000000000 -0400
++++ shadow-4.1.4.1/man/cs/Makefile.in	2009-07-11 22:35:23.184922170 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -223,8 +223,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -265,8 +265,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -310,8 +310,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -355,8 +355,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/de/Makefile.in shadow-4.1.4.1/man/de/Makefile.in
+--- shadow-4.1.4.1.orig/man/de/Makefile.in	2009-05-22 09:55:43.000000000 -0400
++++ shadow-4.1.4.1/man/de/Makefile.in	2009-07-11 22:35:23.231588838 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -223,8 +223,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -265,8 +265,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -310,8 +310,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -355,8 +355,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/es/Makefile.in shadow-4.1.4.1/man/es/Makefile.in
+--- shadow-4.1.4.1.orig/man/es/Makefile.in	2009-05-22 09:55:43.000000000 -0400
++++ shadow-4.1.4.1/man/es/Makefile.in	2009-07-11 22:35:23.268255758 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -206,8 +206,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+diff -Naur shadow-4.1.4.1.orig/man/fi/Makefile.in shadow-4.1.4.1/man/fi/Makefile.in
+--- shadow-4.1.4.1.orig/man/fi/Makefile.in	2009-05-22 09:55:43.000000000 -0400
++++ shadow-4.1.4.1/man/fi/Makefile.in	2009-07-11 22:35:23.304922244 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -204,8 +204,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -246,8 +246,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/fr/Makefile.in shadow-4.1.4.1/man/fr/Makefile.in
+--- shadow-4.1.4.1.orig/man/fr/Makefile.in	2009-05-22 09:55:43.000000000 -0400
++++ shadow-4.1.4.1/man/fr/Makefile.in	2009-07-11 22:35:23.354922350 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -229,8 +229,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -271,8 +271,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -316,8 +316,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    3*) ;; \
+@@ -361,8 +361,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -406,8 +406,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/hu/Makefile.in shadow-4.1.4.1/man/hu/Makefile.in
+--- shadow-4.1.4.1.orig/man/hu/Makefile.in	2009-05-22 09:55:43.000000000 -0400
++++ shadow-4.1.4.1/man/hu/Makefile.in	2009-07-11 22:35:23.394922201 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -213,8 +213,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -255,8 +255,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -300,8 +300,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -345,8 +345,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/id/Makefile.in shadow-4.1.4.1/man/id/Makefile.in
+--- shadow-4.1.4.1.orig/man/id/Makefile.in	2009-05-22 09:55:43.000000000 -0400
++++ shadow-4.1.4.1/man/id/Makefile.in	2009-07-11 22:35:23.434922183 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -204,8 +204,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -246,8 +246,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -291,8 +291,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/it/Makefile.in shadow-4.1.4.1/man/it/Makefile.in
+--- shadow-4.1.4.1.orig/man/it/Makefile.in	2009-05-22 09:55:44.000000000 -0400
++++ shadow-4.1.4.1/man/it/Makefile.in	2009-07-11 22:35:23.481588879 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -227,8 +227,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -269,8 +269,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -314,8 +314,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    3*) ;; \
+@@ -359,8 +359,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -404,8 +404,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/ja/Makefile.in shadow-4.1.4.1/man/ja/Makefile.in
+--- shadow-4.1.4.1.orig/man/ja/Makefile.in	2009-05-22 09:55:44.000000000 -0400
++++ shadow-4.1.4.1/man/ja/Makefile.in	2009-07-11 22:35:23.521588814 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -219,8 +219,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -261,8 +261,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -306,8 +306,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -351,8 +351,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/ko/Makefile.in shadow-4.1.4.1/man/ko/Makefile.in
+--- shadow-4.1.4.1.orig/man/ko/Makefile.in	2009-05-22 09:55:44.000000000 -0400
++++ shadow-4.1.4.1/man/ko/Makefile.in	2009-07-11 22:35:23.564921655 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -213,8 +213,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -255,8 +255,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -300,8 +300,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -345,8 +345,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/Makefile.in shadow-4.1.4.1/man/Makefile.in
+--- shadow-4.1.4.1.orig/man/Makefile.in	2009-05-22 09:55:58.000000000 -0400
++++ shadow-4.1.4.1/man/Makefile.in	2009-07-11 22:35:23.144922197 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -353,8 +353,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -397,8 +397,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -442,8 +442,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    3*) ;; \
+@@ -487,8 +487,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -532,8 +532,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+@@ -642,7 +642,7 @@
+ 	unique=`for i in $$list; do \
+ 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ 	  done | \
+-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
++	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+ 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
+ 	mkid -fID $$unique
+ tags: TAGS
+diff -Naur shadow-4.1.4.1.orig/man/pl/Makefile.in shadow-4.1.4.1/man/pl/Makefile.in
+--- shadow-4.1.4.1.orig/man/pl/Makefile.in	2009-05-22 09:55:44.000000000 -0400
++++ shadow-4.1.4.1/man/pl/Makefile.in	2009-07-11 22:35:23.611588917 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -230,8 +230,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -272,8 +272,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -317,8 +317,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -362,8 +362,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/pt_BR/Makefile.in shadow-4.1.4.1/man/pt_BR/Makefile.in
+--- shadow-4.1.4.1.orig/man/pt_BR/Makefile.in	2009-05-22 09:55:44.000000000 -0400
++++ shadow-4.1.4.1/man/pt_BR/Makefile.in	2009-07-11 22:35:23.651588848 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -209,8 +209,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -251,8 +251,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -296,8 +296,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -341,8 +341,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/ru/Makefile.in shadow-4.1.4.1/man/ru/Makefile.in
+--- shadow-4.1.4.1.orig/man/ru/Makefile.in	2009-05-22 09:55:44.000000000 -0400
++++ shadow-4.1.4.1/man/ru/Makefile.in	2009-07-11 22:35:23.698255416 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -230,8 +230,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -272,8 +272,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -317,8 +317,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    3*) ;; \
+@@ -362,8 +362,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -407,8 +407,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/sv/Makefile.in shadow-4.1.4.1/man/sv/Makefile.in
+--- shadow-4.1.4.1.orig/man/sv/Makefile.in	2009-05-22 09:55:44.000000000 -0400
++++ shadow-4.1.4.1/man/sv/Makefile.in	2009-07-11 22:35:23.744922116 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -228,8 +228,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -270,8 +270,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -315,8 +315,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    3*) ;; \
+@@ -360,8 +360,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -405,8 +405,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/tr/Makefile.in shadow-4.1.4.1/man/tr/Makefile.in
+--- shadow-4.1.4.1.orig/man/tr/Makefile.in	2009-05-22 09:55:44.000000000 -0400
++++ shadow-4.1.4.1/man/tr/Makefile.in	2009-07-11 22:35:23.784922158 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -216,8 +216,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -258,8 +258,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -303,8 +303,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -348,8 +348,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/zh_CN/Makefile.in shadow-4.1.4.1/man/zh_CN/Makefile.in
+--- shadow-4.1.4.1.orig/man/zh_CN/Makefile.in	2009-05-22 09:55:44.000000000 -0400
++++ shadow-4.1.4.1/man/zh_CN/Makefile.in	2009-07-11 22:35:23.824922223 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -217,8 +217,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -259,8 +259,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -304,8 +304,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -349,8 +349,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/man/zh_TW/Makefile.in shadow-4.1.4.1/man/zh_TW/Makefile.in
+--- shadow-4.1.4.1.orig/man/zh_TW/Makefile.in	2009-05-22 09:55:44.000000000 -0400
++++ shadow-4.1.4.1/man/zh_TW/Makefile.in	2009-07-11 22:35:23.868255516 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -217,8 +217,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -259,8 +259,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    1*) ;; \
+@@ -304,8 +304,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    5*) ;; \
+@@ -349,8 +349,8 @@
+ 	  esac; \
+ 	done; \
+ 	for i in $$list; do \
+-	  if test -f $$i; then file=$$i; \
+-	  else file=$(srcdir)/$$i; fi; \
++	  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
++	  else file=$$i; fi; \
+ 	  ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ 	  case "$$ext" in \
+ 	    8*) ;; \
+diff -Naur shadow-4.1.4.1.orig/src/chage.c shadow-4.1.4.1/src/chage.c
+--- shadow-4.1.4.1.orig/src/chage.c	2009-04-30 17:39:39.000000000 -0400
++++ shadow-4.1.4.1/src/chage.c	2009-07-11 22:34:19.188262019 -0400
+@@ -808,7 +808,7 @@
+ 
+ 	ruid = getuid ();
+ 	rgid = getgid ();
+-	amroot = (ruid == 0);
++	amroot = 1; /* (ruid == 0); */
+ #ifdef WITH_SELINUX
+ 	if (amroot && (is_selinux_enabled () > 0)) {
+ 		amroot = (selinux_check_passwd_access (PASSWD__ROOTOK) == 0);
+diff -Naur shadow-4.1.4.1.orig/src/chfn.c shadow-4.1.4.1/src/chfn.c
+--- shadow-4.1.4.1.orig/src/chfn.c	2009-04-30 17:39:39.000000000 -0400
++++ shadow-4.1.4.1/src/chfn.c	2009-07-11 22:34:19.188262019 -0400
+@@ -719,7 +719,7 @@
+ 
+ 	SYSLOG ((LOG_INFO, "changed user '%s' information", user));
+ 
+-	nscd_flush_cache ("passwd");
++//	nscd_flush_cache ("passwd");
+ 
+ 	closelog ();
+ 	exit (E_SUCCESS);
+diff -Naur shadow-4.1.4.1.orig/src/chgpasswd.c shadow-4.1.4.1/src/chgpasswd.c
+--- shadow-4.1.4.1.orig/src/chgpasswd.c	2009-04-30 17:39:39.000000000 -0400
++++ shadow-4.1.4.1/src/chgpasswd.c	2009-07-11 22:34:19.188262019 -0400
+@@ -537,7 +537,7 @@
+ 
+ 	close_files ();
+ 
+-	nscd_flush_cache ("group");
++//	nscd_flush_cache ("group");
+ 
+ 	return (0);
+ }
+diff -Naur shadow-4.1.4.1.orig/src/chpasswd.c shadow-4.1.4.1/src/chpasswd.c
+--- shadow-4.1.4.1.orig/src/chpasswd.c	2009-05-10 09:49:05.000000000 -0400
++++ shadow-4.1.4.1/src/chpasswd.c	2009-07-11 22:34:19.188262019 -0400
+@@ -578,7 +578,7 @@
+ 	close_files ();
+ #endif
+ 
+-	nscd_flush_cache ("passwd");
++//	nscd_flush_cache ("passwd");
+ 
+ 	return (0);
+ }
+diff -Naur shadow-4.1.4.1.orig/src/chsh.c shadow-4.1.4.1/src/chsh.c
+--- shadow-4.1.4.1.orig/src/chsh.c	2009-04-30 17:39:39.000000000 -0400
++++ shadow-4.1.4.1/src/chsh.c	2009-07-11 22:34:19.188262019 -0400
+@@ -56,7 +56,7 @@
+ #include "exitcodes.h"
+ 
+ #ifndef SHELLS_FILE
+-#define SHELLS_FILE "/etc/shells"
++#define SHELLS_FILE SYSCONFDIR"/shells"
+ #endif
+ /*
+  * Global variables
+@@ -443,7 +443,7 @@
+ 	/*
+ 	 * This command behaves different for root and non-root users.
+ 	 */
+-	amroot = (getuid () == 0);
++	amroot = 1; //(getuid () == 0);
+ 
+ 	/*
+ 	 * Get the program name. The program name is used as a prefix to
+@@ -543,7 +543,7 @@
+ 
+ 	SYSLOG ((LOG_INFO, "changed user '%s' shell to '%s'", user, loginsh));
+ 
+-	nscd_flush_cache ("passwd");
++//	nscd_flush_cache ("passwd");
+ 
+ 	closelog ();
+ 	exit (E_SUCCESS);
+diff -Naur shadow-4.1.4.1.orig/src/gpasswd.c shadow-4.1.4.1/src/gpasswd.c
+--- shadow-4.1.4.1.orig/src/gpasswd.c	2009-04-30 17:39:40.000000000 -0400
++++ shadow-4.1.4.1/src/gpasswd.c	2009-07-11 22:34:19.188262019 -0400
+@@ -86,7 +86,7 @@
+ /* The UID of the caller */
+ static uid_t bywho;
+ /* Indicate if gpasswd was called by root */
+-#define amroot	(0 == bywho)
++#define amroot	1 /* (0 == bywho) */
+ 
+ /* The number of retries for th user to provide and repeat a new password */
+ #ifndef	RETRIES
+@@ -1173,12 +1173,14 @@
+ 	 * output, etc.
+ 	 */
+       output:
++/*
+ 	if (setuid (0) != 0) {
+ 		fputs (_("Cannot change ID to root.\n"), stderr);
+ 		SYSLOG ((LOG_ERR, "can't setuid(0)"));
+ 		closelog ();
+ 		exit (E_NOPERM);
+ 	}
++*/
+ 	pwd_init ();
+ 
+ 	open_files ();
+@@ -1191,7 +1193,7 @@
+ 
+ 	close_files ();
+ 
+-	nscd_flush_cache ("group");
++//	nscd_flush_cache ("group");
+ 
+ 	exit (E_SUCCESS);
+ }
+diff -Naur shadow-4.1.4.1.orig/src/groupadd.c shadow-4.1.4.1/src/groupadd.c
+--- shadow-4.1.4.1.orig/src/groupadd.c	2009-04-30 17:39:40.000000000 -0400
++++ shadow-4.1.4.1/src/groupadd.c	2009-07-11 22:34:19.191595316 -0400
+@@ -602,7 +602,7 @@
+ 	grp_update ();
+ 	close_files ();
+ 
+-	nscd_flush_cache ("group");
++//	nscd_flush_cache ("group");
+ 
+ 	exit (E_SUCCESS);
+ 	/*@notreached@*/
+diff -Naur shadow-4.1.4.1.orig/src/groupdel.c shadow-4.1.4.1/src/groupdel.c
+--- shadow-4.1.4.1.orig/src/groupdel.c	2009-04-30 17:39:40.000000000 -0400
++++ shadow-4.1.4.1/src/groupdel.c	2009-07-11 22:34:19.191595316 -0400
+@@ -426,7 +426,7 @@
+ 
+ 	close_files ();
+ 
+-	nscd_flush_cache ("group");
++//	nscd_flush_cache ("group");
+ 
+ 	return E_SUCCESS;
+ }
+diff -Naur shadow-4.1.4.1.orig/src/groupmod.c shadow-4.1.4.1/src/groupmod.c
+--- shadow-4.1.4.1.orig/src/groupmod.c	2009-04-30 17:39:40.000000000 -0400
++++ shadow-4.1.4.1/src/groupmod.c	2009-07-11 22:34:19.191595316 -0400
+@@ -812,7 +812,7 @@
+ 
+ 	close_files ();
+ 
+-	nscd_flush_cache ("group");
++//	nscd_flush_cache ("group");
+ 
+ 	return E_SUCCESS;
+ }
+diff -Naur shadow-4.1.4.1.orig/src/grpck.c shadow-4.1.4.1/src/grpck.c
+--- shadow-4.1.4.1.orig/src/grpck.c	2009-05-09 17:20:57.000000000 -0400
++++ shadow-4.1.4.1/src/grpck.c	2009-07-11 22:34:19.191595316 -0400
+@@ -836,7 +836,7 @@
+ 	/* Commit the change in the database if needed */
+ 	close_files (changed);
+ 
+-	nscd_flush_cache ("group");
++//	nscd_flush_cache ("group");
+ 
+ 	/*
+ 	 * Tell the user what we did and exit.
+diff -Naur shadow-4.1.4.1.orig/src/grpconv.c shadow-4.1.4.1/src/grpconv.c
+--- shadow-4.1.4.1.orig/src/grpconv.c	2008-09-06 08:51:54.000000000 -0400
++++ shadow-4.1.4.1/src/grpconv.c	2009-07-11 22:34:19.191595316 -0400
+@@ -217,7 +217,7 @@
+ 	}
+ 	gr_locked = false;
+ 
+-	nscd_flush_cache ("group");
++//	nscd_flush_cache ("group");
+ 
+ 	return 0;
+ }
+diff -Naur shadow-4.1.4.1.orig/src/grpunconv.c shadow-4.1.4.1/src/grpunconv.c
+--- shadow-4.1.4.1.orig/src/grpunconv.c	2008-09-06 08:51:54.000000000 -0400
++++ shadow-4.1.4.1/src/grpunconv.c	2009-07-11 22:34:19.194928564 -0400
+@@ -186,7 +186,7 @@
+ 		/* continue */
+ 	}
+ 
+-	nscd_flush_cache ("group");
++//	nscd_flush_cache ("group");
+ 
+ 	return 0;
+ }
+diff -Naur shadow-4.1.4.1.orig/src/login_nopam.c shadow-4.1.4.1/src/login_nopam.c
+--- shadow-4.1.4.1.orig/src/login_nopam.c	2008-09-13 14:03:51.000000000 -0400
++++ shadow-4.1.4.1/src/login_nopam.c	2009-07-11 22:34:19.194928564 -0400
+@@ -59,7 +59,7 @@
+ 
+  /* Path name of the access control file. */
+ #ifndef	TABLE
+-#define TABLE	"/etc/login.access"
++#define TABLE	SYSCONFDIR"/login.access"
+ #endif
+ 
+ /* Delimiters for fields and for lists of users, ttys or hosts. */
+diff -Naur shadow-4.1.4.1.orig/src/logoutd.c shadow-4.1.4.1/src/logoutd.c
+--- shadow-4.1.4.1.orig/src/logoutd.c	2009-04-30 17:08:50.000000000 -0400
++++ shadow-4.1.4.1/src/logoutd.c	2009-07-11 22:34:19.194928564 -0400
+@@ -50,7 +50,7 @@
+ #endif
+ 
+ #ifndef HUP_MESG_FILE
+-#define HUP_MESG_FILE "/etc/logoutd.mesg"
++#define HUP_MESG_FILE SYSCONFDIR"/logoutd.mesg"
+ #endif
+ 
+ /* local function prototypes */
+diff -Naur shadow-4.1.4.1.orig/src/Makefile.am shadow-4.1.4.1/src/Makefile.am
+--- shadow-4.1.4.1.orig/src/Makefile.am	2009-05-09 17:10:18.000000000 -0400
++++ shadow-4.1.4.1/src/Makefile.am	2009-07-11 22:34:19.194928564 -0400
+@@ -3,7 +3,7 @@
+ 	.indent.pro
+ 
+ ubindir = ${prefix}/bin
+-usbindir = ${prefix}/sbin
++usbindir = ${prefix}/bin
+ suidperms = 4755
+ 
+ INCLUDES = \
+@@ -56,7 +56,7 @@
+ LDADD          = $(INTLLIBS) \
+ 		 $(top_builddir)/libmisc/libmisc.a \
+ 		 $(top_builddir)/lib/libshadow.la
+-AM_CPPFLAGS    = -DLOCALEDIR=\"$(datadir)/locale\"
++AM_CPPFLAGS    = -DSYSCONFDIR=\"$(sysconfdir)\" -DLOCALEDIR=\"$(datadir)/locale\" -DSG=\"`echo sg | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`\" -DVIGR=\"`echo vigr | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`\"
+ 
+ if ACCT_TOOLS_SETUID
+ LIBPAM_SUID  = $(LIBPAM)
+@@ -106,11 +106,11 @@
+ 
+ install-am: all-am
+ 	$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+-	ln -sf newgrp	$(DESTDIR)$(ubindir)/sg
+-	ln -sf vipw	$(DESTDIR)$(usbindir)/vigr
++	ln -sf `echo newgrp | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'` $(DESTDIR)$(ubindir)/`echo sg | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
++	ln -sf `echo vipw | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'` $(DESTDIR)$(usbindir)/`echo vigr | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ 	for i in $(suidbins); do \
+-		chmod -f $(suidperms) $(DESTDIR)$(bindir)/$$i; \
++		chmod -f 4755 $(DESTDIR)$(bindir)/`echo $$i | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+ 	done
+ 	for i in $(suidubins); do \
+-		chmod -f $(suidperms) $(DESTDIR)$(ubindir)/$$i; \
++		chmod -f 4755 $(DESTDIR)$(ubindir)/`echo $$i | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+ 	done
+diff -Naur shadow-4.1.4.1.orig/src/Makefile.in shadow-4.1.4.1/src/Makefile.in
+--- shadow-4.1.4.1.orig/src/Makefile.in	2009-05-22 09:55:44.000000000 -0400
++++ shadow-4.1.4.1/src/Makefile.in	2009-07-11 22:35:23.998255352 -0400
+@@ -1,4 +1,4 @@
+-# Makefile.in generated by automake 1.10.2 from Makefile.am.
++# Makefile.in generated by automake 1.10.1 from Makefile.am.
+ # @configure_input@
+ 
+ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+@@ -382,7 +382,7 @@
+ 	.indent.pro
+ 
+ ubindir = ${prefix}/bin
+-usbindir = ${prefix}/sbin
++usbindir = ${prefix}/bin
+ suidperms = 4755
+ INCLUDES = \
+ 	-I${top_srcdir}/lib \
+@@ -394,7 +394,7 @@
+ 		 $(top_builddir)/libmisc/libmisc.a \
+ 		 $(top_builddir)/lib/libshadow.la
+ 
+-AM_CPPFLAGS = -DLOCALEDIR=\"$(datadir)/locale\"
++AM_CPPFLAGS = -DSYSCONFDIR=\"$(sysconfdir)\" -DLOCALEDIR=\"$(datadir)/locale\" -DSG=\"`echo sg | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`\" -DVIGR=\"`echo vigr | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`\"
+ @ACCT_TOOLS_SETUID_FALSE@LIBPAM_SUID = 
+ @ACCT_TOOLS_SETUID_TRUE@LIBPAM_SUID = $(LIBPAM)
+ @USE_PAM_FALSE@LIBCRYPT_NOPAM = $(LIBCRYPT)
+@@ -442,8 +442,8 @@
+ 	@for dep in $?; do \
+ 	  case '$(am__configure_deps)' in \
+ 	    *$$dep*) \
+-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+-	        && { if test -f $@; then exit 0; else break; fi; }; \
++	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
++		&& exit 0; \
+ 	      exit 1;; \
+ 	  esac; \
+ 	done; \
+@@ -760,7 +760,7 @@
+ 	unique=`for i in $$list; do \
+ 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ 	  done | \
+-	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
++	  $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+ 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
+ 	mkid -fID $$unique
+ tags: TAGS
+@@ -941,13 +941,13 @@
+ 
+ install-am: all-am
+ 	$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+-	ln -sf newgrp	$(DESTDIR)$(ubindir)/sg
+-	ln -sf vipw	$(DESTDIR)$(usbindir)/vigr
++	ln -sf `echo newgrp | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'` $(DESTDIR)$(ubindir)/`echo sg | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
++	ln -sf `echo vipw | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'` $(DESTDIR)$(usbindir)/`echo vigr | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`
+ 	for i in $(suidbins); do \
+-		chmod -f $(suidperms) $(DESTDIR)$(bindir)/$$i; \
++		chmod -f 4755 $(DESTDIR)$(bindir)/`echo $$i | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+ 	done
+ 	for i in $(suidubins); do \
+-		chmod -f $(suidperms) $(DESTDIR)$(ubindir)/$$i; \
++		chmod -f 4755 $(DESTDIR)$(ubindir)/`echo $$i | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+ 	done
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
+diff -Naur shadow-4.1.4.1.orig/src/newgrp.c shadow-4.1.4.1/src/newgrp.c
+--- shadow-4.1.4.1.orig/src/newgrp.c	2009-05-22 07:10:04.000000000 -0400
++++ shadow-4.1.4.1/src/newgrp.c	2009-07-11 22:34:19.194928564 -0400
+@@ -296,7 +296,7 @@
+ 		if ((pid_t)-1 == child) {
+ 			/* error in fork() */
+ 			fprintf (stderr, _("%s: failure forking: %s\n"),
+-				 is_newgrp ? "newgrp" : "sg", strerror (errno));
++				 is_newgrp ? "newgrp" : SG, strerror (errno));
+ #ifdef WITH_AUDIT
+ 			if (group) {
+ 				snprintf (audit_buf, sizeof(audit_buf),
+@@ -417,7 +417,7 @@
+ 	 */
+ 	Prog = Basename (argv[0]);
+ 	is_newgrp = (strcmp (Prog, "newgrp") == 0);
+-	OPENLOG (is_newgrp ? "newgrp" : "sg");
++	OPENLOG (is_newgrp ? "newgrp" : SG);
+ 	gid = getgid ();
+ 	argc--;
+ 	argv++;
+diff -Naur shadow-4.1.4.1.orig/src/newusers.c shadow-4.1.4.1/src/newusers.c
+--- shadow-4.1.4.1.orig/src/newusers.c	2009-05-10 09:49:05.000000000 -0400
++++ shadow-4.1.4.1/src/newusers.c	2009-07-11 22:34:19.194928564 -0400
+@@ -1041,8 +1041,8 @@
+ 
+ 	close_files ();
+ 
+-	nscd_flush_cache ("passwd");
+-	nscd_flush_cache ("group");
++//	nscd_flush_cache ("passwd");
++//	nscd_flush_cache ("group");
+ 
+ #ifdef USE_PAM
+ 	unsigned int i;
+diff -Naur shadow-4.1.4.1.orig/src/passwd.c shadow-4.1.4.1/src/passwd.c
+--- shadow-4.1.4.1.orig/src/passwd.c	2009-05-22 09:32:30.000000000 -0400
++++ shadow-4.1.4.1/src/passwd.c	2009-07-11 22:34:19.194928564 -0400
+@@ -775,7 +775,7 @@
+ 	 * The program behaves differently when executed by root than when
+ 	 * executed by a normal user.
+ 	 */
+-	amroot = (getuid () == 0);
++	amroot = 1; //(getuid () == 0);
+ 
+ 	/*
+ 	 * Get the program name. The program name is used as a prefix to
+@@ -1088,20 +1088,22 @@
+ 		exit (E_SUCCESS);
+ 	}
+ #endif				/* USE_PAM */
++/*
+ 	if (setuid (0) != 0) {
+ 		fputs (_("Cannot change ID to root.\n"), stderr);
+ 		SYSLOG ((LOG_ERR, "can't setuid(0)"));
+ 		closelog ();
+ 		exit (E_NOPERM);
+ 	}
++*/
+ 	if (spw_file_present ()) {
+ 		update_shadow ();
+ 	} else {
+ 		update_noshadow ();
+ 	}
+ 
+-	nscd_flush_cache ("passwd");
+-	nscd_flush_cache ("group");
++	//nscd_flush_cache ("passwd");
++	//nscd_flush_cache ("group");
+ 
+ 	SYSLOG ((LOG_INFO, "password for '%s' changed by '%s'", name, myname));
+ 	closelog ();
+diff -Naur shadow-4.1.4.1.orig/src/pwck.c shadow-4.1.4.1/src/pwck.c
+--- shadow-4.1.4.1.orig/src/pwck.c	2009-05-09 17:20:57.000000000 -0400
++++ shadow-4.1.4.1/src/pwck.c	2009-07-11 22:34:19.198262003 -0400
+@@ -704,7 +704,7 @@
+ 
+ 	close_files (changed);
+ 
+-	nscd_flush_cache ("passwd");
++//	nscd_flush_cache ("passwd");
+ 
+ 	/*
+ 	 * Tell the user what we did and exit.
+diff -Naur shadow-4.1.4.1.orig/src/pwconv.c shadow-4.1.4.1/src/pwconv.c
+--- shadow-4.1.4.1.orig/src/pwconv.c	2009-04-30 17:39:40.000000000 -0400
++++ shadow-4.1.4.1/src/pwconv.c	2009-07-11 22:34:19.198262003 -0400
+@@ -269,7 +269,7 @@
+ 		}
+ 	}
+ 
+-	nscd_flush_cache ("passwd");
++//	nscd_flush_cache ("passwd");
+ 
+ 	return E_SUCCESS;
+ }
+diff -Naur shadow-4.1.4.1.orig/src/pwunconv.c shadow-4.1.4.1/src/pwunconv.c
+--- shadow-4.1.4.1.orig/src/pwunconv.c	2009-04-30 17:44:37.000000000 -0400
++++ shadow-4.1.4.1/src/pwunconv.c	2009-07-11 22:34:19.198262003 -0400
+@@ -194,7 +194,7 @@
+ 		/* continue */
+ 	}
+ 
+-	nscd_flush_cache ("passwd");
++//	nscd_flush_cache ("passwd");
+ 
+ 	return 0;
+ }
+diff -Naur shadow-4.1.4.1.orig/src/suauth.c shadow-4.1.4.1/src/suauth.c
+--- shadow-4.1.4.1.orig/src/suauth.c	2008-09-13 12:29:23.000000000 -0400
++++ shadow-4.1.4.1/src/suauth.c	2009-07-11 22:34:19.198262003 -0400
+@@ -40,7 +40,7 @@
+ #include "prototypes.h"
+ 
+ #ifndef SUAUTHFILE
+-#define SUAUTHFILE "/etc/suauth"
++#define SUAUTHFILE SYSCONFDIR"/suauth"
+ #endif
+ 
+ #define	NOACTION	0
+diff -Naur shadow-4.1.4.1.orig/src/useradd.c shadow-4.1.4.1/src/useradd.c
+--- shadow-4.1.4.1.orig/src/useradd.c	2009-05-10 14:26:35.000000000 -0400
++++ shadow-4.1.4.1/src/useradd.c	2009-07-11 22:34:19.198262003 -0400
+@@ -67,11 +67,11 @@
+ #include "shadowio.h"
+ 
+ #ifndef SKEL_DIR
+-#define SKEL_DIR "/etc/skel"
++#define SKEL_DIR SYSCONFDIR"/skel"
+ #endif
+ #ifndef USER_DEFAULTS_FILE
+-#define USER_DEFAULTS_FILE "/etc/default/useradd"
+-#define NEW_USER_FILE "/etc/default/nuaddXXXXXX"
++#define USER_DEFAULTS_FILE SYSCONFDIR"/default/useradd"
++#define NEW_USER_FILE SYSCONFDIR"/default/nuaddXXXXXX"
+ #endif
+ /*
+  * Needed for MkLinux DR1/2/2.1 - J.
+@@ -2034,8 +2034,8 @@
+ 	selinux_update_mapping ();
+ #endif
+ 
+-	nscd_flush_cache ("passwd");
+-	nscd_flush_cache ("group");
++//	nscd_flush_cache ("passwd");
++//	nscd_flush_cache ("group");
+ 
+ 	return E_SUCCESS;
+ }
+diff -Naur shadow-4.1.4.1.orig/src/userdel.c shadow-4.1.4.1/src/userdel.c
+--- shadow-4.1.4.1.orig/src/userdel.c	2009-05-22 06:41:12.000000000 -0400
++++ shadow-4.1.4.1/src/userdel.c	2009-07-11 22:34:19.198262003 -0400
+@@ -993,8 +993,8 @@
+ 	user_cancel (user_name);
+ 	close_files ();
+ 
+-	nscd_flush_cache ("passwd");
+-	nscd_flush_cache ("group");
++//	nscd_flush_cache ("passwd");
++//	nscd_flush_cache ("group");
+ 
+ 	return ((0 != errors) ? E_HOMEDIR : E_SUCCESS);
+ }
+diff -Naur shadow-4.1.4.1.orig/src/usermod.c shadow-4.1.4.1/src/usermod.c
+--- shadow-4.1.4.1.orig/src/usermod.c	2009-05-22 06:42:53.000000000 -0400
++++ shadow-4.1.4.1/src/usermod.c	2009-07-11 22:34:19.198262003 -0400
+@@ -1781,8 +1781,8 @@
+ 	}
+ 	close_files ();
+ 
+-	nscd_flush_cache ("passwd");
+-	nscd_flush_cache ("group");
++//	nscd_flush_cache ("passwd");
++//	nscd_flush_cache ("group");
+ 
+ #ifdef WITH_SELINUX
+ 	if (Zflg) {
+diff -Naur shadow-4.1.4.1.orig/src/vipw.c shadow-4.1.4.1/src/vipw.c
+--- shadow-4.1.4.1.orig/src/vipw.c	2009-04-30 17:39:40.000000000 -0400
++++ shadow-4.1.4.1/src/vipw.c	2009-07-11 22:34:19.201595229 -0400
+@@ -323,7 +323,7 @@
+ 	(void) textdomain (PACKAGE);
+ 
+ 	progname = ((a = strrchr (*argv, '/')) ? a + 1 : *argv);
+-	do_vipw = (strcmp (progname, "vigr") != 0);
++	do_vipw = (strcmp (progname, VIGR) != 0);
+ 
+ 	OPENLOG (do_vipw ? "vipw" : "vigr");
+ 
+@@ -403,8 +403,8 @@
+ #endif
+ 	}
+ 
+-	nscd_flush_cache ("passwd");
+-	nscd_flush_cache ("group");
++//	nscd_flush_cache ("passwd");
++//	nscd_flush_cache ("group");
+ 
+ 	return E_SUCCESS;
+ }
