summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2009-03-15 04:56:23 +0000
committerMike Frysinger <vapier@gentoo.org>2009-03-15 04:56:23 +0000
commitaf17005f253efb899c99436a81c91f649b63e948 (patch)
treeb4a2ac994a25fb448bed31f883ffe00e078d06ee /sys-apps/shadow
parentamd64/x86 stable, bug #257012 (diff)
downloadhistorical-af17005f253efb899c99436a81c91f649b63e948.tar.gz
historical-af17005f253efb899c99436a81c91f649b63e948.tar.bz2
historical-af17005f253efb899c99436a81c91f649b63e948.zip
Add fixes from upstream to get building on uClibc again.
Package-Manager: portage-2.2_rc25/cvs/Linux x86_64
Diffstat (limited to 'sys-apps/shadow')
-rw-r--r--sys-apps/shadow/ChangeLog8
-rw-r--r--sys-apps/shadow/Manifest13
-rw-r--r--sys-apps/shadow/files/shadow-4.1.2.2-id-types.patch87
-rw-r--r--sys-apps/shadow/files/shadow-4.1.2.2-optional-nscd.patch93
-rw-r--r--sys-apps/shadow/files/shadow-4.1.2.2-optional-utimes.patch52
-rw-r--r--sys-apps/shadow/shadow-4.1.2.2.ebuild6
6 files changed, 252 insertions, 7 deletions
diff --git a/sys-apps/shadow/ChangeLog b/sys-apps/shadow/ChangeLog
index 3ed969d31e2b..ff8a80b44803 100644
--- a/sys-apps/shadow/ChangeLog
+++ b/sys-apps/shadow/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for sys-apps/shadow
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/shadow/ChangeLog,v 1.221 2009/03/12 22:22:18 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/shadow/ChangeLog,v 1.222 2009/03/15 04:56:23 vapier Exp $
+
+ 15 Mar 2009; Mike Frysinger <vapier@gentoo.org>
+ +files/shadow-4.1.2.2-id-types.patch,
+ +files/shadow-4.1.2.2-optional-nscd.patch,
+ +files/shadow-4.1.2.2-optional-utimes.patch, shadow-4.1.2.2.ebuild:
+ Add fixes from upstream to get building on uClibc again.
12 Mar 2009; Mike Frysinger <vapier@gentoo.org>
+files/shadow-4.1.2.2-l64a.patch, shadow-4.1.2.2.ebuild:
diff --git a/sys-apps/shadow/Manifest b/sys-apps/shadow/Manifest
index 031bf61b6a6b..b5e64d49e9c2 100644
--- a/sys-apps/shadow/Manifest
+++ b/sys-apps/shadow/Manifest
@@ -33,17 +33,20 @@ AUX shadow-4.0.18.2-useradd.patch 489 RMD160 8b4b6f9e83a1da6152ae588355709d0df3d
AUX shadow-4.1.0-fix-useradd-usergroups.patch 2569 RMD160 d8c719470c7df384f9d5ebcdd98603d2d30f1718 SHA1 982b8e53962be4583beeb09efff472d2b34ea2e3 SHA256 c7f7de07b82295289e9bce0e93353527dd70451149978c70129348ff9ad80957
AUX shadow-4.1.1-audit.patch 454 RMD160 4acba81f49136c3c948ee6a4ac4c43460c07bce1 SHA1 78e3bf843d480ddae04389bdfe5245b42074eae2 SHA256 b2bedbb88bd5d85ea398438802daa516af6105c8fdd356bfa4978c1335ba3ea5
AUX shadow-4.1.2.1+openpam.patch 3588 RMD160 3c03cc2cc0810c509284c25b94230d24acafa5f8 SHA1 852d648189ebdbc90e1a3b6da62db2a13bc63572 SHA256 0a86d07dd96f54980d2424311f6e5706bf5e3f1f177b72f46bb5e4143495562a
+AUX shadow-4.1.2.2-id-types.patch 2322 RMD160 2f5e682b0f92caec379ab0aee1d810f8bc699d84 SHA1 5dd17e458002878e0b36b887b2b7fc1a8b416ac7 SHA256 97f85a9b3ead6820ec494953671dfd7ebce4e15d62b4d57cb7df3dc7c826f496
AUX shadow-4.1.2.2-l64a.patch 308 RMD160 d7d0ab42c8fd3d9a53dd1ce262dfc7b17fa4f311 SHA1 eab29cee05c1ec35a4597219f0d8905bca79a426 SHA256 ea66d85fba3948e31084a616b190000fcf9fcf677596cd0f40aa1e173553d00d
+AUX shadow-4.1.2.2-optional-nscd.patch 3244 RMD160 f844c6958f4f3830e9d98daa7622c12991918f61 SHA1 91590b754b562c0918b3232cd4f9e4282cf54891 SHA256 18d97094520b9eda248da1449cda5b448d4102dd234cce4af5cabd6190afb652
+AUX shadow-4.1.2.2-optional-utimes.patch 1397 RMD160 ffeceac79a9474fcd4c9064ebac6edddc45b6eeb SHA1 b56a1174a5fa591b04d7b93b44ec2c5f9285dd28 SHA256 28de85f16e6f4c52ea8f67beecd483d9a58adcd3c2234e88da049fccb9aabd93
DIST shadow-4.1.2.2.tar.bz2 1697615 RMD160 19b8d3bc37d26d708ecad6a86e6a1f2dcc3c51d3 SHA1 6cbd29104c219ff6776eececb8068f7326d57a45 SHA256 378fbfb0e8bb8c87be239fccd692818871f763206bb7d881744f4fa72dc6b491
DIST shadow_4.0.18.2.orig.tar.gz 2501791 RMD160 f13d5c06bc88eea8d851a8c396110b2e96d1bb39 SHA1 c3426cddc8605ddb7ff55fdc231dc191ecc46989 SHA256 0b3cbfb32200cacd8544734d227d0a576642baf573f972f046bbbae457145cae
EBUILD shadow-4.0.18.2.ebuild 5176 RMD160 a5c96abaee6d2cc8eeb20dbe70be9f2243bf9b4c SHA1 3ff2f36f9eeafa13bb52527800ebbeb4be68dec9 SHA256 1605d308c594d2e56f5136072e4687006cd4ec4eef467cf821583f70e9c288a5
-EBUILD shadow-4.1.2.2.ebuild 4590 RMD160 32d94caee5cef3b217b94f021d75790b621b7a3f SHA1 0aa39bac16d75dd4cd473e85d74b09552ae2680d SHA256 ecdc6a7767bfaeb9d159337bc5473150390f328e50970fe57f123eb80a859717
-MISC ChangeLog 38081 RMD160 cee22730bbf43c4eff3e907ed64015e1b691502c SHA1 8c14cec2f6b6c7ade206bd89791e0dfc306c75f1 SHA256 ec84853ae205106da03b61ed710a8cf1cf5980473fcf97a803acbc22d687ef25
+EBUILD shadow-4.1.2.2.ebuild 4761 RMD160 ae817728540fd62572d2da6046aa93c0c41a16b3 SHA1 1e1f65cd690382959e7702ba28625fa96bb1d518 SHA256 8258e46fff2365b74b52ad47689947f1e3e2817fea4e4f0cacb53dbfa67da7e4
+MISC ChangeLog 38346 RMD160 af1c6759b30e40673e541b216a93a8d6800e009d SHA1 1d72c3d2889663f39504e1d1844c9a6ce52da827 SHA256 1a7914472acea21b347819fd9ee879af86cab631902888c577dc03b72dd35b50
MISC metadata.xml 412 RMD160 8cb1c2ffd3365f4334c78591e9349d394771dfed SHA1 e32195b6f24c7feae2ddfa3c9410a109c1e357f2 SHA256 41b211af54ade1542ce67559eeeb233c9fde4c97e66ef3602ae0f2dc228d7504
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.10 (GNU/Linux)
-iEYEARECAAYFAkm5iyAACgkQn/5bYzqsSmFDngCdFeGdrcf37pjWi5puNgLz6jKV
-rKsAoJc/3w39XL/nDITs+ATQmn0IxT+A
-=t+JU
+iEYEARECAAYFAkm8in0ACgkQn/5bYzqsSmFSMQCgtaOqn90XqydxnP+AzM6Mvo/g
+V9sAn0srROnGbriiHAMmsG3DWChhGbRD
+=WJJx
-----END PGP SIGNATURE-----
diff --git a/sys-apps/shadow/files/shadow-4.1.2.2-id-types.patch b/sys-apps/shadow/files/shadow-4.1.2.2-id-types.patch
new file mode 100644
index 000000000000..689884fecbcb
--- /dev/null
+++ b/sys-apps/shadow/files/shadow-4.1.2.2-id-types.patch
@@ -0,0 +1,87 @@
+From 670cce502aadf86b5b5d78059e5474e6171919f3 Mon Sep 17 00:00:00 2001
+From: nekral-guest <nekral-guest@5a98b0ae-9ef6-0310-add3-de5d479b70d7>
+Date: Sat, 30 Aug 2008 18:30:58 +0000
+Subject: [PATCH] * lib/groupio.h, lib/prototypes.h, lib/pwio.h, lib/sgetgrent.c:
+ Include <sys/types.h> before <pwd.h> and <grp.h>. It is necessary
+ for the definition of uid_t and gid_t.
+ * lib/pwmem.c: do not include <pwd.h>, "pwio.h" is sufficient
+ here.
+
+git-svn-id: svn://svn.debian.org/pkg-shadow/upstream/trunk@2297 5a98b0ae-9ef6-0310-add3-de5d479b70d7
+---
+ lib/groupio.h | 1 +
+ lib/prototypes.h | 1 +
+ lib/pwio.h | 2 ++
+ lib/pwmem.c | 3 +--
+ lib/sgetgrent.c | 1 +
+ 6 files changed, 11 insertions(+), 2 deletions(-)
+
+diff --git a/lib/groupio.h b/lib/groupio.h
+index 9f2984c..d229845 100644
+--- a/lib/groupio.h
++++ b/lib/groupio.h
+@@ -35,6 +35,7 @@
+ #ifndef _GROUPIO_H
+ #define _GROUPIO_H
+
++#include <sys/types.h>
+ #include <grp.h>
+
+ extern int gr_close (void);
+diff --git a/lib/prototypes.h b/lib/prototypes.h
+index f1ffc50..feeedc4 100644
+--- a/lib/prototypes.h
++++ b/lib/prototypes.h
+@@ -48,6 +48,7 @@
+ #else
+ #include <utmp.h>
+ #endif
++#include <sys/types.h>
+ #include <pwd.h>
+ #include <grp.h>
+ #include <shadow.h>
+diff --git a/lib/pwio.h b/lib/pwio.h
+index 28f8bbd..52c7bf3 100644
+--- a/lib/pwio.h
++++ b/lib/pwio.h
+@@ -35,7 +35,9 @@
+ #ifndef _PWIO_H
+ #define _PWIO_H
+
++#include <sys/types.h>
+ #include <pwd.h>
++
+ extern int pw_close (void);
+ extern const struct passwd *pw_locate (const char *name);
+ extern const struct passwd *pw_locate_uid (uid_t uid);
+diff --git a/lib/pwmem.c b/lib/pwmem.c
+index 95a6137..84dee3d 100644
+--- a/lib/pwmem.c
++++ b/lib/pwmem.c
+@@ -35,10 +35,9 @@
+
+ #ident "$Id: shadow-4.1.2.2-id-types.patch,v 1.1 2009/03/15 04:56:23 vapier Exp $"
+
++#include <stdio.h>
+ #include "prototypes.h"
+ #include "defines.h"
+-#include <pwd.h>
+-#include <stdio.h>
+ #include "pwio.h"
+
+ struct passwd *__pw_dup (const struct passwd *pwent)
+diff --git a/lib/sgetgrent.c b/lib/sgetgrent.c
+index 6f090aa..186ee40 100644
+--- a/lib/sgetgrent.c
++++ b/lib/sgetgrent.c
+@@ -35,6 +35,7 @@
+ #ident "$Id: shadow-4.1.2.2-id-types.patch,v 1.1 2009/03/15 04:56:23 vapier Exp $"
+
+ #include <stdio.h>
++#include <sys/types.h>
+ #include <grp.h>
+ #include "defines.h"
+ #include "prototypes.h"
+--
+1.6.2
+
diff --git a/sys-apps/shadow/files/shadow-4.1.2.2-optional-nscd.patch b/sys-apps/shadow/files/shadow-4.1.2.2-optional-nscd.patch
new file mode 100644
index 000000000000..419a604c3b7f
--- /dev/null
+++ b/sys-apps/shadow/files/shadow-4.1.2.2-optional-nscd.patch
@@ -0,0 +1,93 @@
+From 803bce24e3c902efcfba82dad08f25edf1dd3d6f Mon Sep 17 00:00:00 2001
+From: nekral-guest <nekral-guest@5a98b0ae-9ef6-0310-add3-de5d479b70d7>
+Date: Sat, 30 Aug 2008 18:30:36 +0000
+Subject: [PATCH] * configure.in, lib/nscd.h, lib/nscd.c: Added --with-nscd flag to
+ support systems without nscd.
+
+git-svn-id: svn://svn.debian.org/pkg-shadow/upstream/trunk@2296 5a98b0ae-9ef6-0310-add3-de5d479b70d7
+---
+ configure.in | 13 +++++++++++--
+ lib/nscd.c | 4 ++++
+ lib/nscd.h | 4 ++++
+ 4 files changed, 21 insertions(+), 2 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 044617c..8384a15 100644
+--- a/configure.in
++++ b/configure.in
+@@ -38,9 +38,9 @@ AC_CHECK_HEADERS(errno.h fcntl.h limits.h unistd.h sys/time.h utmp.h \
+ dnl shadow now uses the libc's shadow implementation
+ AC_CHECK_HEADER([shadow.h],,[AC_MSG_ERROR([You need a libc with shadow.h])])
+
+-AC_CHECK_FUNCS(l64a fchmod fchown fsync getgroups gethostname getspnam \
++AC_CHECK_FUNCS(l64a fchmod fchown fsync futimes getgroups gethostname getspnam \
+ gettimeofday getusershell getutent initgroups lchown lckpwdf lstat \
+- memcpy memset setgroups sigaction strchr updwtmp updwtmpx innetgr \
++ lutimes memcpy memset setgroups sigaction strchr updwtmp updwtmpx innetgr \
+ getpwnam_r getpwuid_r getgrnam_r getgrgid_r getspnam_r)
+ AC_SYS_LARGEFILE
+
+@@ -235,12 +235,20 @@ AC_ARG_WITH(libcrack,
+ AC_ARG_WITH(sha-crypt,
+ [AC_HELP_STRING([--with-sha-crypt], [allow the SHA256 and SHA512 password encryption algorithms @<:@default=yes@:>@])],
+ [with_sha_crypt=$withval], [with_sha_crypt=yes])
++AC_ARG_WITH(nscd,
++ [AC_HELP_STRING([--with-nscd], [enable support for nscd @<:@default=yes@:>@])],
++ [with_nscd=$withval], [with_nscd=yes])
+
+ AM_CONDITIONAL(USE_SHA_CRYPT, test "x$with_sha_crypt" = "xyes")
+ if test "$with_sha_crypt" = "yes"; then
+ AC_DEFINE(USE_SHA_CRYPT, 1, [Define to allow the SHA256 and SHA512 password encryption algorithms])
+ fi
+
++AM_CONDITIONAL(USE_NSCD, test "x$with_nscd" = "xyes")
++if test "$with_nscd" = "yes"; then
++ AC_DEFINE(USE_NSCD, 1, [Define to support flushing of nscd caches])
++fi
++
+ dnl Check for some functions in libc first, only if not found check for
+ dnl other libraries. This should prevent linking libnsl if not really
+ dnl needed (Linux glibc, Irix), but still link it if needed (Solaris).
+@@ -457,4 +465,5 @@ echo " SELinux support: $with_selinux"
+ echo " shadow group support: $enable_shadowgrp"
+ echo " S/Key support: $with_skey"
+ echo " SHA passwords encryption: $with_sha_crypt"
++echo " nscd support: $with_nscd"
+ echo
+diff --git a/lib/nscd.c b/lib/nscd.c
+index 59b7172..5f54b72 100644
+--- a/lib/nscd.c
++++ b/lib/nscd.c
+@@ -1,5 +1,8 @@
+ /* Author: Peter Vrabec <pvrabec@redhat.com> */
+
++#include <config.h>
++#ifdef USE_NSCD
++
+ /* because of TEMP_FAILURE_RETRY */
+ #define _GNU_SOURCE
+
+@@ -54,4 +57,5 @@ int nscd_flush_cache (const char *service)
+
+ return 0;
+ }
++#endif
+
+diff --git a/lib/nscd.h b/lib/nscd.h
+index 8bb10a8..a430b00 100644
+--- a/lib/nscd.h
++++ b/lib/nscd.h
+@@ -4,6 +4,10 @@
+ /*
+ * nscd_flush_cache - flush specified service buffer in nscd cache
+ */
++#ifdef USE_NSCD
+ extern int nscd_flush_cache (const char *service);
++#else
++#define nscd_flush_cache(service) (0)
++#endif
+
+ #endif
+--
+1.6.2
+
diff --git a/sys-apps/shadow/files/shadow-4.1.2.2-optional-utimes.patch b/sys-apps/shadow/files/shadow-4.1.2.2-optional-utimes.patch
new file mode 100644
index 000000000000..eba90da113a9
--- /dev/null
+++ b/sys-apps/shadow/files/shadow-4.1.2.2-optional-utimes.patch
@@ -0,0 +1,52 @@
+From 1ed3c6672957f2033f217f90a76f85973f1c85c6 Mon Sep 17 00:00:00 2001
+From: nekral-guest <nekral-guest@5a98b0ae-9ef6-0310-add3-de5d479b70d7>
+Date: Sat, 30 Aug 2008 18:29:55 +0000
+Subject: [PATCH] * NEWS: Added support for uclibc.
+ * configure.in, libmisc/copydir.c: futimes() and lutimes() are not
+ standard. Check if they are implemented before using them. Do not
+ set the time of links if lutimes() does not exist, and use
+ utimes() as a replacement for futimes().
+
+git-svn-id: svn://svn.debian.org/pkg-shadow/upstream/trunk@2294 5a98b0ae-9ef6-0310-add3-de5d479b70d7
+---
+ libmisc/copydir.c | 8 ++++++++
+ 3 files changed, 17 insertions(+), 0 deletions(-)
+
+diff --git a/libmisc/copydir.c b/libmisc/copydir.c
+index abcea4c..b887303 100644
+--- a/libmisc/copydir.c
++++ b/libmisc/copydir.c
+@@ -431,12 +431,14 @@ static int copy_symlink (const char *src, const char *dst,
+ return -1;
+ }
+
++#ifdef HAVE_LUTIMES
+ /* 2007-10-18: We don't care about
+ * exit status of lutimes because
+ * it returns ENOSYS on many system
+ * - not implemented
+ */
+ lutimes (dst, mt);
++#endif
+
+ return err;
+ }
+@@ -548,9 +550,15 @@ static int copy_file (const char *src, const char *dst,
+
+ (void) close (ifd);
+
++#ifdef HAVE_FUTIMES
+ if (futimes (ofd, mt) != 0) {
+ return -1;
+ }
++#else
++ if (utimes(dst, mt) != 0) {
++ return -1;
++ }
++#endif
+
+ if (close (ofd) != 0) {
+ return -1;
+--
+1.6.2
+
diff --git a/sys-apps/shadow/shadow-4.1.2.2.ebuild b/sys-apps/shadow/shadow-4.1.2.2.ebuild
index c8cbf569d0e2..640817438d9d 100644
--- a/sys-apps/shadow/shadow-4.1.2.2.ebuild
+++ b/sys-apps/shadow/shadow-4.1.2.2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/shadow/shadow-4.1.2.2.ebuild,v 1.14 2009/03/12 22:22:18 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/shadow/shadow-4.1.2.2.ebuild,v 1.15 2009/03/15 04:56:23 vapier Exp $
inherit eutils libtool toolchain-funcs autotools pam multilib
@@ -42,6 +42,9 @@ src_unpack() {
epatch "${FILESDIR}"/${PN}-4.1.2.1+openpam.patch #232586
epatch "${FILESDIR}"/${P}-l64a.patch #260001
+ epatch "${FILESDIR}"/${P}-id-types.patch
+ epatch "${FILESDIR}"/${P}-optional-nscd.patch
+ epatch "${FILESDIR}"/${P}-optional-utimes.patch
eautoconf
eautoheader
@@ -61,6 +64,7 @@ src_compile() {
$(use_with skey) \
$(use_with selinux) \
$(use_enable nls) \
+ $(use_with elibc_glibc nscd) \
|| die "bad configure"
emake || die "compile problem"
}