fix pam_userdb.so linking against wrong libdb problem
authorMartin Schlemmer <azarah@gentoo.org>
Sun, 3 Nov 2002 10:50:00 +0000 (10:50 +0000)
committerMartin Schlemmer <azarah@gentoo.org>
Sun, 3 Nov 2002 10:50:00 +0000 (10:50 +0000)
sys-libs/pam/ChangeLog
sys-libs/pam/files/pam-0.75-pam_userdb-use-db3.patch [new file with mode: 0644]
sys-libs/pam/pam-0.75-r10.ebuild

index bec4294fcf9e389f96ec0de5a5a2014ec2a9e2b2..cae4903e6b0139f59738ffde84dc38caaa97ddc8 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for sys-libs/pam
 # Copyright 2002 Gentoo Technologies, Inc.; Distributed under the GPL
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/pam/ChangeLog,v 1.14 2002/10/26 10:11:15 azarah Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/pam/ChangeLog,v 1.15 2002/11/03 10:50:00 azarah Exp $
+
+  26 Oct 2002; Martin Schlemmer <azarah@gentoo.org> pam-0.75-r10.ebuild :
+
+  Add pam-0.75-pam_userdb-use-db3.patch to get pam_userdb to link to
+  db3 or db4 if present, rather than libndbm, as that causes unresolved
+  symbols.
 
 *pam-0.75-r10 (26 Oct 2002)
 
diff --git a/sys-libs/pam/files/pam-0.75-pam_userdb-use-db3.patch b/sys-libs/pam/files/pam-0.75-pam_userdb-use-db3.patch
new file mode 100644 (file)
index 0000000..2fb9793
--- /dev/null
@@ -0,0 +1,50 @@
+diff -urN pam_userdb.orig/Makefile pam_userdb/Makefile
+--- Linux-PAM-0.75/modules/pam_userdb/Makefile.orig    2002-11-03 12:09:40.000000000 +0200
++++ Linux-PAM-0.75/modules/pam_userdb/Makefile 2002-11-03 12:23:50.000000000 +0200
+@@ -12,7 +12,7 @@
+ 
+ ifeq ($(HAVE_NDBM_H),yes)
+  WHICH_DB=ndbm
+- MODULE_SIMPLE_EXTRALIBS = -lndbm
++ MODULE_SIMPLE_EXTRALIBS = `sh ./dbversion.sh`
+ else
+ ifeq ($(HAVE_LIBDB),yes)
+  WHICH_DB=db
+diff -urN pam_userdb.orig/dbversion.sh pam_userdb/dbversion.sh
+--- Linux-PAM-0.75/modules/pam_userdb/dbversion.sh.orig        1970-01-01 02:00:00.000000000 +0200
++++ Linux-PAM-0.75/modules/pam_userdb/dbversion.sh     2002-11-03 12:25:35.000000000 +0200
+@@ -0,0 +1,34 @@
++#!/bin/sh
++
++# libndbm functionality is included in db3 and db4, so
++# rather use them if found ...
++
++list=`ls /lib/libdb.so.4* /usr/lib/libdb.so.4* 2>/dev/null`
++if [ -n "$list" ]
++then
++      for x in $list
++      do
++              if [ -e $x ]
++              then
++                      echo "$x"
++                      exit 0
++              fi
++      done
++fi
++
++list=`ls /lib/libdb.so.3* /usr/lib/libdb.so.3* 2>/dev/null`
++if [ -n "$list" ]
++then
++      for x in $list
++      do
++              if [ -e $x ]
++              then
++                      echo "$x"
++                      exit 0
++              fi
++      done
++fi
++
++echo "-lndbm"
++exit 0
++
index 1c777542a2b975f7c8f43853f2d76ab68edfa686..81710d82048de1f6908e1863ccf7be0ef036303f 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2002 Gentoo Technologies, Inc.
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/pam/pam-0.75-r10.ebuild,v 1.1 2002/10/26 10:11:15 azarah Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/pam/pam-0.75-r10.ebuild,v 1.2 2002/11/03 10:50:00 azarah Exp $
 
 IUSE="berkdb"
 
@@ -26,7 +26,7 @@ DEPEND=">=sys-libs/cracklib-2.7-r3
        >=sys-devel/automake-1.6
        >=sys-devel/flex-2.5.4a-r5
        berkdb? ( ~sys-libs/db-1.85
-                 ~sys-libs/db-3.2.9 )"
+                 >=sys-libs/db-3.2.9 )"
 
 src_unpack() {
        unpack ${A}
@@ -49,6 +49,10 @@ src_unpack() {
                fi
        done
 
+       # Get pam_userdb to link to db3 or db4 if they exist
+       # <azarah@gentoo.org> (3 Nov 2002)
+       cd ${S}; patch -p1 < ${FILESDIR}/${P}-pam_userdb-use-db3.patch || die
+
        for readme in modules/pam_*/README
        do
                cp -f ${readme} doc/txts/README.$(dirname ${readme} | sed -e 's|^modules/||')