summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Elio Pettenò <flameeyes@gentoo.org>2008-04-14 13:58:39 +0000
committerDiego Elio Pettenò <flameeyes@gentoo.org>2008-04-14 13:58:39 +0000
commit03bc25481c05d2ec5e0223f83402baeeb3393138 (patch)
tree1e790154ece9c457a5434050fab68d56f742e8df /sys-libs
parentia64/sparc/x86 stable wrt #217627 (diff)
downloadgentoo-2-03bc25481c05d2ec5e0223f83402baeeb3393138.tar.gz
gentoo-2-03bc25481c05d2ec5e0223f83402baeeb3393138.tar.bz2
gentoo-2-03bc25481c05d2ec5e0223f83402baeeb3393138.zip
Revision bump to remove .la files, we don't support static libpam so it's unneeded.
(Portage version: 2.1.5_rc3)
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/pam/ChangeLog8
-rw-r--r--sys-libs/pam/pam-1.0.0-r2.ebuild174
2 files changed, 181 insertions, 1 deletions
diff --git a/sys-libs/pam/ChangeLog b/sys-libs/pam/ChangeLog
index 18b808c2870e..093caa8e390a 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.208 2008/04/14 11:55:51 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/pam/ChangeLog,v 1.209 2008/04/14 13:58:39 flameeyes Exp $
+
+*pam-1.0.0-r2 (14 Apr 2008)
+
+ 14 Apr 2008; Diego Pettenò <flameeyes@gentoo.org> +pam-1.0.0-r2.ebuild:
+ Revision bump to remove .la files, we don't support static libpam so it's
+ unneeded.
14 Apr 2008; Diego Pettenò <flameeyes@gentoo.org> pam-1.0.0-r1.ebuild:
Override default sepermitlockdir definition so that it doesn't end in
diff --git a/sys-libs/pam/pam-1.0.0-r2.ebuild b/sys-libs/pam/pam-1.0.0-r2.ebuild
new file mode 100644
index 000000000000..afee0fff09c2
--- /dev/null
+++ b/sys-libs/pam/pam-1.0.0-r2.ebuild
@@ -0,0 +1,174 @@
+# 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-1.0.0-r2.ebuild,v 1.1 2008/04/14 13:58:39 flameeyes Exp $
+
+WANT_AUTOCONF="latest"
+WANT_AUTOMAKE="latest"
+
+inherit libtool multilib eutils autotools pam toolchain-funcs flag-o-matic
+
+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/library/${MY_P}.tar.bz2"
+
+LICENSE="PAM"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~ppc64 ~s390 ~sh ~sparc ~x86"
+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"
+ epatch "${FILESDIR}/${MY_PN}-1.0.0-set-item.patch"
+
+ AT_M4DIR="m4" eautoreconf
+
+ elibtoolize
+}
+
+src_compile() {
+ local myconf
+
+ # Workarounds autoconf 2.62 bug, libintl.h is included before
+ # _GNU_SOURCE is defined in config.h. See bug #217154
+ append-flags -D_GNU_SOURCE
+
+ 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 sepermitlockdir="/var/run/sepermit" || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install \
+ sepermitlockdir="/var/run/sepermit" || 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
+
+ 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*
+
+ # Get rid of the .la files. We certainly don't need them for PAM
+ # modules, and libpam is installed as a shared object only, so we
+ # don't ned them for static linking either.
+ find "${D}" -name '*.la' -delete
+}
+
+pkg_preinst() {
+ check_old_modules || die "deprecated PAM modules still used"
+
+ pam_epam_expand "${D}"/etc/pam.d/*
+}