From ab772489a37f4393e7847125ca60dd87f13b272b Mon Sep 17 00:00:00 2001
From: James Meyer <james.meyer@operamail.com>
Date: Fri, 13 Mar 2009 16:51:51 -0500
Subject: upstream sync for shadow

---
 abs/core-testing/shadow/PKGBUILD         | 94 ++++++++++++++++----------------
 abs/core-testing/shadow/defaults.pam     |  6 ++
 abs/core-testing/shadow/useradd.defaults |  9 +++
 abs/core-testing/shadow/xstrdup.patch    |  6 +-
 4 files changed, 64 insertions(+), 51 deletions(-)
 create mode 100644 abs/core-testing/shadow/defaults.pam
 create mode 100644 abs/core-testing/shadow/useradd.defaults

diff --git a/abs/core-testing/shadow/PKGBUILD b/abs/core-testing/shadow/PKGBUILD
index 20f7e65..89fba13 100644
--- a/abs/core-testing/shadow/PKGBUILD
+++ b/abs/core-testing/shadow/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $
-# Maintainer: judd <jvinet@zeroflux.org>
+# $Id: PKGBUILD 10738 2008-08-31 05:33:35Z aaron $
+# Maintainer: Aaron Griffin <aaron@archlinux.org>
 
 pkgname=shadow
-pkgver=4.0.18.2
-pkgrel=11
+pkgver=4.1.2.1
+pkgrel=2
 pkgdesc="Shadow password file utilities"
 arch=(i686 x86_64)
 url='http://pkg-shadow.alioth.debian.org/'
@@ -12,77 +12,75 @@ groups=('base')
 backup=(etc/login.defs
         etc/pam.d/{chage,login,passwd,shadow,useradd,usermod,userdel}
         etc/pam.d/{chpasswd,newusers,groupadd,groupdel,groupmod}
-	etc/pam.d/{chfn,chgpasswd,groupmems,chsh}
+        etc/pam.d/{chfn,chgpasswd,groupmems,chsh}
         etc/default/useradd)
 depends=('pam')
 source=(ftp://pkg-shadow.alioth.debian.org/pub/pkg-shadow/shadow-$pkgver.tar.bz2
-        login passwd useradd login.defs adduser shadow.cron.daily
-        useradd-default.patch xstrdup.patch shadow-4.0.18.2-useradd-fix-1.patch)
+        useradd.defaults login passwd defaults.pam login.defs adduser shadow.cron.daily
+        xstrdup.patch)
 options=(!libtool)
 install='shadow.install'
+md5sums=('c178e49c45495e296dabbe4ae01a0fbe'
+         'beb64d09256ea46a4d96a783f096447f'
+         '0aa429de6773ebcdf89db80165379cc6'
+         'b84204ab731bd02dca49d0637d44ebec'
+         'a31374fef2cba0ca34dfc7078e2969e4'
+         '3699bed31154051c0508a890d6d95027'
+         '6ce67e423ee19c87ae64f661310b2408'
+         '1d64b4113e1d402746d9dd65f28a2c6f'
+         '0eebe9d13065bec4b5d7ccf3bf46c509')
 
 build() {
   cd $startdir/src/$pkgname-$pkgver
-  patch -Np1 -i ../xstrdup.patch || return 1
-  patch -Np1 -i ../shadow-4.0.18.2-useradd-fix-1.patch || return 1
-  # patch etc/default/useradd for Arch defaults - Tom K
-  patch -Np1 -i ../useradd-default.patch || return 1
-  
+
+  #Ugh, force this to build shared libraries, for god's sake
+  sed -i "s/noinst_LTLIBRARIES/lib_LTLIBRARIES/g" lib/Makefile.am
+  libtoolize
+  autoreconf
+  export LDFLAGS="$LDFLAGS -lcrypt"
+
+  patch -Np1 -i $startdir/src/xstrdup.patch || return 1
+
   # supress etc/pam.d/*, we provide our own
   sed -i '/^SUBDIRS/s/pam.d//' etc/Makefile.in
 
   ./configure \
-  	--prefix=/usr --libdir=/usr/lib \
-	--mandir=/usr/man --sysconfdir=/etc \
-	--enable-shared --with-libpam --without-selinux
+  	--prefix=/usr --libdir=/lib \
+	--mandir=/usr/share/man --sysconfdir=/etc \
+    --enable-shared --disable-static \
+    --with-libpam --without-selinux
   make || return 1
   make DESTDIR=$startdir/pkg install
 
   # license
-  install -v -D -m644 COPYING $startdir/pkg/usr/share/licenses/shadow/COPYING
+  install -D -m644 COPYING $startdir/pkg/usr/share/licenses/shadow/COPYING
 
   # interactive useradd
-  install -v -D -m755 ../adduser $startdir/pkg/usr/sbin/adduser
+  install -D -m755 $startdir/src/adduser $startdir/pkg/usr/sbin/adduser
+
+  # useradd defaults
+  install -D -m644 $startdir/src/useradd.defaults $startdir/pkg/etc/default/useradd
 
   # cron job
-  install -v -D -m744 ../shadow.cron.daily $startdir/pkg/etc/cron.daily/shadow
+  install -D -m744 $startdir/src/shadow.cron.daily $startdir/pkg/etc/cron.daily/shadow
 
   # login.defs
-  install -v -D -m644 ../login.defs $startdir/pkg/etc/login.defs
+  install -D -m644 $startdir/src/login.defs $startdir/pkg/etc/login.defs
+
+  # PAM config - cutsom
+  install -D -m644 $startdir/src/login $startdir/pkg/etc/pam.d/login
+  install -D -m644 $startdir/src/passwd $startdir/pkg/etc/pam.d/passwd
+  # PAM config - from tarball
+  install -D -m644 etc/pam.d/chgpasswd $startdir/pkg/etc/pam.d/chgpasswd
+  install -D -m644 etc/pam.d/groupmems $startdir/pkg/etc/pam.d/groupmems
 
-  # PAM config
-  local file
-  for file in login passwd; do
-    install -v -D -m644 ../$file $startdir/pkg/etc/pam.d/$file
-  done
   # we use the 'useradd' PAM file for other similar utilities
   for file in chage chpasswd chfn chsh groupadd groupdel groupmod \
       newusers shadow useradd usermod userdel; do
-    install -v -D -m644 ../useradd $startdir/pkg/etc/pam.d/$file
-  done
-  # add leftover pam files
-  for i in chgpasswd groupmems; do 
-	install -v -D -m644 etc/pam.d/$i $startdir/pkg/etc/pam.d/$i
+    install -D -m644 $startdir/src/defaults.pam $startdir/pkg/etc/pam.d/$file
   done
 
-  cd $startdir/pkg
-
   # Remove su - using su from coreutils instead
-  rm -v bin/su
-  find usr/man -name 'su.1' -exec rm -v {} \;
-
-  # Move shared libs to /lib
-  mkdir -pv lib
-  mv -v usr/lib/libshadow.so.* lib/
-  ln -svf ../../lib/libshadow.so.0 usr/lib/libshadow.so
+  rm -v $startdir/pkg/bin/su
+  find $startdir/pkg/usr/share/man -name 'su.1' -exec rm -v {} \;
 }
-md5sums=('b900467e5c60c78b6d84b0353d1769d5'
-         '0aa429de6773ebcdf89db80165379cc6'
-         'b84204ab731bd02dca49d0637d44ebec'
-         'a31374fef2cba0ca34dfc7078e2969e4'
-         '3699bed31154051c0508a890d6d95027'
-         '6ce67e423ee19c87ae64f661310b2408'
-         '1d64b4113e1d402746d9dd65f28a2c6f'
-         '1e49ee3b5b96b47782b22237b95c4bc2'
-         '576c00b284b9c180667a56c6cd326f0c'
-         '5c0b58c8bee13a57244ec783a8194970')
diff --git a/abs/core-testing/shadow/defaults.pam b/abs/core-testing/shadow/defaults.pam
new file mode 100644
index 0000000..a7bf8a4
--- /dev/null
+++ b/abs/core-testing/shadow/defaults.pam
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth		sufficient	pam_rootok.so
+auth		required	pam_unix.so
+account		required	pam_unix.so
+session		required	pam_unix.so
+password	required	pam_permit.so
diff --git a/abs/core-testing/shadow/useradd.defaults b/abs/core-testing/shadow/useradd.defaults
new file mode 100644
index 0000000..b800b17
--- /dev/null
+++ b/abs/core-testing/shadow/useradd.defaults
@@ -0,0 +1,9 @@
+# useradd defaults file for ArchLinux
+# original changes by TomK
+GROUP=100
+HOME=/home
+INACTIVE=-1
+EXPIRE=
+SHELL=/bin/bash
+SKEL=/etc/skel
+CREATE_MAIL_SPOOL=no
diff --git a/abs/core-testing/shadow/xstrdup.patch b/abs/core-testing/shadow/xstrdup.patch
index 90d0dd1..bce4342 100644
--- a/abs/core-testing/shadow/xstrdup.patch
+++ b/abs/core-testing/shadow/xstrdup.patch
@@ -1,6 +1,6 @@
---- shadow-4.0.18.2/libmisc/xmalloc.c	2007-10-07 12:47:22.000000000 +0100
-+++ shadow-4.0.18.2/libmisc/xmalloc.c.new	2007-11-27 22:43:05.000000000 +0000
-@@ -27,5 +27,6 @@
+--- shadow-4.1.2.1/libmisc/xmalloc.c	2008-08-30 21:55:44.000000000 -0500
++++ shadow-4.1.2.1/libmisc/xmalloc.c.new	2008-08-30 21:55:36.000000000 -0500
+@@ -61,5 +61,6 @@
  
  char *xstrdup (const char *str)
  {
-- 
cgit v0.12

