summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Elio Pettenò <flameeyes@gentoo.org>2008-02-19 11:43:37 +0000
committerDiego Elio Pettenò <flameeyes@gentoo.org>2008-02-19 11:43:37 +0000
commit62286e19464be8ab1b44a66ddaea30628c52cbd0 (patch)
tree439c95822a0e5e391065668d71ebe2e57f7e2f6b /sys-libs
parentInitial import, pambase package provides the basic configuration files for PA... (diff)
downloadgentoo-2-62286e19464be8ab1b44a66ddaea30628c52cbd0.tar.gz
gentoo-2-62286e19464be8ab1b44a66ddaea30628c52cbd0.tar.bz2
gentoo-2-62286e19464be8ab1b44a66ddaea30628c52cbd0.zip
New revision that works with the new sys-auth/pambase (and requires it).
(Portage version: 2.1.4.4)
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/pam/ChangeLog8
-rw-r--r--sys-libs/pam/pam-0.99.9.0-r1.ebuild166
2 files changed, 173 insertions, 1 deletions
diff --git a/sys-libs/pam/ChangeLog b/sys-libs/pam/ChangeLog
index d203ddd709e9..c38a5a64b0e5 100644
--- a/sys-libs/pam/ChangeLog
+++ b/sys-libs/pam/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for sys-libs/pam
# Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/pam/ChangeLog,v 1.194 2008/02/10 17:59:34 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/pam/ChangeLog,v 1.195 2008/02/19 11:43:37 flameeyes Exp $
+
+*pam-0.99.9.0-r1 (19 Feb 2008)
+
+ 19 Feb 2008; Diego Pettenò <flameeyes@gentoo.org>
+ +pam-0.99.9.0-r1.ebuild:
+ New revision that works with the new sys-auth/pambase (and requires it).
10 Feb 2008; Diego Pettenò <flameeyes@gentoo.org> pam-0.99.8.1-r1.ebuild,
pam-0.99.9.0.ebuild:
diff --git a/sys-libs/pam/pam-0.99.9.0-r1.ebuild b/sys-libs/pam/pam-0.99.9.0-r1.ebuild
new file mode 100644
index 000000000000..5de07ade27c1
--- /dev/null
+++ b/sys-libs/pam/pam-0.99.9.0-r1.ebuild
@@ -0,0 +1,166 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/pam/pam-0.99.9.0-r1.ebuild,v 1.1 2008/02/19 11:43:37 flameeyes Exp $
+
+WANT_AUTOCONF="latest"
+WANT_AUTOMAKE="latest"
+
+inherit libtool multilib eutils autotools pam toolchain-funcs
+
+MY_PN="Linux-PAM"
+MY_P="${MY_PN}-${PV}"
+
+HOMEPAGE="http://www.kernel.org/pub/linux/libs/pam/"
+DESCRIPTION="Linux-PAM (Pluggable Authentication Modules)"
+
+SRC_URI="mirror://kernel/linux/libs/pam/pre/library/${MY_P}.tar.bz2"
+
+LICENSE="PAM"
+SLOT="0"
+KEYWORDS=""
+IUSE="cracklib nls elibc_FreeBSD selinux vim-syntax audit test elibc_glibc"
+
+RDEPEND="nls? ( virtual/libintl )
+ cracklib? ( >=sys-libs/cracklib-2.8.3 )
+ audit? ( sys-process/audit )
+ selinux? ( >=sys-libs/libselinux-1.28 )"
+DEPEND="${RDEPEND}
+ sys-devel/flex
+ test? ( elibc_glibc? ( >=sys-libs/glibc-2.4 ) )
+ nls? ( sys-devel/gettext )"
+PDEPEND="sys-auth/pambase
+ vim-syntax? ( app-vim/pam-syntax )"
+
+S="${WORKDIR}/${MY_P}"
+
+PROVIDE="virtual/pam"
+
+check_old_modules() {
+ local retval="0"
+
+ if sed -e 's:#.*::' "${ROOT}"/etc/pam.d/* 2>/dev/null | fgrep -q pam_stack.so; then
+ eerror ""
+ eerror "Your current setup is using the pam_stack module."
+ eerror "This module is deprecated and no longer supported, and since version"
+ eerror "0.99 is no longer installed, nor provided by any other package."
+ eerror "The package will be built (to allow binary package builds), but will"
+ eerror "not be installed."
+ eerror "Please replace pam_stack usage with proper include directive usage,"
+ eerror "following the PAM Upgrade guide at the following URL"
+ eerror " http://www.gentoo.org/proj/en/base/pam/upgrade-0.99.xml"
+ eerror ""
+ ebeep 15
+
+ retval=1
+ fi
+
+ if sed -e 's:#.*::' "${ROOT}"/etc/pam.d/* 2>/dev/null | egrep -q 'pam_(pwdb|radius|timestamp|console)'; then
+ eerror ""
+ eerror "Your current setup is using one or more of the following modules,"
+ eerror "that are not built or supported anymore:"
+ eerror "pam_pwdb, pam_radius, pam_timestamp, pam_console"
+ eerror "If you are in real need for these modules, please contact the maintainers"
+ eerror "of PAM through http://bugs.gentoo.org/ providing information about its"
+ eerror "use cases."
+ eerror "Please also make sure to read the PAM Upgrade guide at the following URL:"
+ eerror " http://www.gentoo.org/proj/en/base/pam/upgrade-0.99.xml"
+ eerror ""
+ ebeep 10
+
+ retval=1
+ fi
+
+ # Produce the warnings only during upgrade, for the following two
+ has_version '<sys-libs/pam-0.99' || return $retval
+
+ # This works only for those modules that are moved to sys-auth/$module, or the
+ # message will be wrong.
+ for module in pam_chroot pam_userdb; do
+ if sed -e 's:#.*::' "${ROOT}"/etc/pam.d/* 2>/dev/null | fgrep -q ${module}.so; then
+ ewarn ""
+ ewarn "Your current setup is using the ${module} module."
+ ewarn "Since version 0.99, ${CATEGORY}/${PN} does not provide this module"
+ ewarn "anymore; if you want to continue using this module, you should install"
+ ewarn "sys-auth/${module}."
+ ewarn ""
+ ebeep 5
+ fi
+ done
+
+ return $retval
+}
+
+pkg_setup() {
+ check_old_modules
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ mkdir -p doc/txts
+ for readme in modules/pam_*/README; do
+ cp -f "${readme}" doc/txts/README.$(dirname "${readme}" | \
+ sed -e 's|^modules/||')
+ done
+
+ epatch "${FILESDIR}/${MY_PN}-0.99.7.0-disable-regenerate-man.patch"
+ epatch "${FILESDIR}/${MY_PN}-0.99.8.1-xtests.patch"
+
+ AT_M4DIR="m4" eautoreconf
+
+ elibtoolize
+}
+
+src_compile() {
+ local myconf
+
+ if use hppa || use elibc_FreeBSD; then
+ myconf="${myconf} --disable-pie"
+ fi
+
+ econf \
+ $(use_enable nls) \
+ $(use_enable selinux) \
+ $(use_enable cracklib) \
+ $(use_enable audit) \
+ --libdir=/usr/$(get_libdir) \
+ --disable-db \
+ --enable-securedir=/$(get_libdir)/security \
+ --enable-isadir=/$(get_libdir)/security \
+ --disable-dependency-tracking \
+ --disable-prelude \
+ --enable-docdir=/usr/share/doc/${PF} \
+ --disable-regenerate-man \
+ ${myconf} || die "econf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "make install failed"
+
+ # Need to be suid
+ fperms u+s /sbin/unix_chkpwd
+
+ dodir /$(get_libdir)
+ mv "${D}/usr/$(get_libdir)/libpam.so"* "${D}/$(get_libdir)/"
+ mv "${D}/usr/$(get_libdir)/libpamc.so"* "${D}/$(get_libdir)/"
+ mv "${D}/usr/$(get_libdir)/libpam_misc.so"* "${D}/$(get_libdir)/"
+ gen_usr_ldscript libpam.so libpamc.so libpam_misc.so
+
+ # No, we don't really need .la files for PAM modules.
+ rm -f "${D}/$(get_libdir)/security/"*.la
+
+ dodoc CHANGELOG ChangeLog README AUTHORS Copyright
+ docinto modules ; dodoc doc/txts/README.*
+
+ # Remove the wrongly installed manpages
+ rm "${D}"/usr/share/man/man8/pam_userdb.8*
+ use cracklib || rm "${D}"/usr/share/man/man8/pam_cracklib.8*
+}
+
+pkg_preinst() {
+ check_old_modules || die "deprecated PAM modules still used"
+
+ pam_epam_expand "${D}"/etc/pam.d/*
+}