Annotation of /trunk/core/pam/pam-1.3.0-r1.smage2
Parent Directory | Revision Log
Revision 28067 -
(hide annotations)
(download)
Tue May 17 15:50:57 2016 UTC (8 years, 4 months ago) by niro
File size: 3470 byte(s)
Tue May 17 15:50:57 2016 UTC (8 years, 4 months ago) by niro
File size: 3470 byte(s)
auto added: ver bump to 1.3.0-r1
1 | niro | 28067 | # $Id$ |
2 | |||
3 | PNAME="pam" | ||
4 | PVER="1.3.0" | ||
5 | PBUILD="r1" | ||
6 | |||
7 | PCAT="sys-libs" | ||
8 | |||
9 | DESCRIPTION="Pluggable Authentication Modules." | ||
10 | HOMEPAGE="http://www.kernel.org/pub/linux/libs/pam/" | ||
11 | |||
12 | DEPEND=">= virtual/glibc | ||
13 | >= sys-libs/cracklib-2.9 | ||
14 | >= dev-db/db-6.2" | ||
15 | |||
16 | SDEPEND=">= sys-dev/autoconf-5 | ||
17 | >= sys-dev/automake-4 | ||
18 | >= sys-dev/flex-2.5.35" | ||
19 | |||
20 | SRCFILE="Linux-PAM-${PVER}.tar.bz2" | ||
21 | SRCDIR="${BUILDDIR}/Linux-PAM-${PVER}" | ||
22 | |||
23 | PAMCONFIG_PVER="1.6" | ||
24 | PAMCONFIG_SRCFILE="pam-config-${PAMCONFIG_PVER}.tar.bz2" | ||
25 | PAMCONFIG_SRCDIR="${BUILDDIR}/pam-config-${PAMCONFIG_PVER}" | ||
26 | |||
27 | # NOTE: pam builds may break if an older pam is already installed! | ||
28 | sminclude mtools multilib | ||
29 | |||
30 | SRC_URI=( | ||
31 | http://linux-pam.org/library/${SRCFILE} | ||
32 | mirror://${PNAME}/${SRCFILE} | ||
33 | mirror://${PNAME}/${PAMCONFIG_SRCFILE} | ||
34 | mirror://${PNAME}/${PNAME}-1.1.8-full-relro.patch | ||
35 | ) | ||
36 | |||
37 | UP2DATE="updatecmd http://linux-pam.org/library/ | highesttarball" | ||
38 | |||
39 | # the strip option is not allowed, pam needs libpam.a | ||
40 | msetfeature "!strip" | ||
41 | CFLAGS="${CFLAGS/-s/}" | ||
42 | CXXFLAGS="${CFLAGS}" | ||
43 | |||
44 | src_prepare() | ||
45 | { | ||
46 | munpack ${SRCFILE} || die | ||
47 | SRCDIR=${PAMCONFIG_SRCDIR} munpack ${PAMCONFIG_SRCFILE} || die | ||
48 | |||
49 | mpatch ${PNAME}-1.1.8-full-relro.patch || die | ||
50 | mautoreconf || die | ||
51 | |||
52 | # make sure to install readmes from all modules | ||
53 | local abi | ||
54 | for abi in ${MULTILIB_ABIS} | ||
55 | do | ||
56 | cd ${SRCDIR}-${abi} | ||
57 | install -d doc/txts || die | ||
58 | for readme in modules/pam_*/README | ||
59 | do | ||
60 | cp -f "${readme}" doc/txts/README.$(dirname "${readme}" | \ | ||
61 | sed -e 's|^modules/||') | ||
62 | done | ||
63 | |||
64 | # search in /usr/lib/cracklib | ||
65 | sed -i 's|DICT_DIR_CANDIDATES="|&/lib /usr/lib/cracklib |' configure || die | ||
66 | done | ||
67 | } | ||
68 | |||
69 | src_compile() | ||
70 | { | ||
71 | mconfigure \ | ||
72 | --libdir=/usr/'$(mlibdir)' \ | ||
73 | --sbindir=/usr/sbin \ | ||
74 | --docdir=/usr/share/doc/${PNAME}-${PVER} \ | ||
75 | --enable-securedir=/usr/'$(mlibdir)'/security \ | ||
76 | --enable-isadir=/usr/'$(mlibdir)'/security \ | ||
77 | --enable-read-both-confs \ | ||
78 | || die | ||
79 | |||
80 | # python stuff in docs gives sandbox problems | ||
81 | all-abis "sed -i 's|modules doc examples|modules|' Makefile" || die | ||
82 | |||
83 | mmake -j1 || die | ||
84 | } | ||
85 | |||
86 | src_install() | ||
87 | { | ||
88 | # needed directories | ||
89 | minstalldir /etc/pam.d || die | ||
90 | all-abis minstalldir /usr/'$(mlibdir)' || die | ||
91 | minstalldir /usr/share/doc/${PNAME}-${PVER}/{spec,txt} || die | ||
92 | |||
93 | mmake -j1 DESTDIR=${BINDIR} install || die | ||
94 | |||
95 | # fix permissions | ||
96 | mchmod 4755 /usr/sbin/unix_chkpwd || die | ||
97 | |||
98 | # install missing man-pages | ||
99 | minstallman doc/man/*.3 || die | ||
100 | minstallman doc/man/*.8 || die | ||
101 | |||
102 | # missing empty dirs | ||
103 | mkeepdir /etc/security/console.perms.d || die | ||
104 | mkeepdir /etc/security/namespace.d || die | ||
105 | mkeepdir /etc/security/limits.d || die | ||
106 | |||
107 | # install our pam setup | ||
108 | SRCDIR=${PAMCONFIG_SRCDIR} mmake DESTDIR=${BINDIR} install || die | ||
109 | |||
110 | minstalldocs CHANGELOG Copyright README || die | ||
111 | minstallfile doc/specs/\*.raw /usr/share/doc/${PNAME}-${PVER}/spec || die | ||
112 | minstallfile doc/specs/\*.txt /usr/share/doc/${PNAME}-${PVER}/spec || die | ||
113 | minstallfile doc/txts/\* /usr/share/doc/${PNAME}-${PVER}/txt || die | ||
114 | gzip -9r ${BINDIR}/usr/share/doc/${PNAME}-${PVER}/{spec,txt} || die | ||
115 | |||
116 | # check for pam_cracklib existence or die | ||
117 | [ -e ${BINDIR}/usr/$(mlibdir)/security/pam_cracklib.so ] || die "pam_cracklib not found, your sys-libs/cracklib installation may be corrupt!" | ||
118 | } | ||
119 | |||
120 | postinstall() | ||
121 | { | ||
122 | local i | ||
123 | local conf="halt reboot poweroff" | ||
124 | |||
125 | # remove deprecated pam configs | ||
126 | for i in ${conf} | ||
127 | do | ||
128 | if [ -f ${MROOT}/etc/pam.d/${i} ] | ||
129 | then | ||
130 | rm ${MROOT}/etc/pam.d/${i} | ||
131 | fi | ||
132 | done | ||
133 | |||
134 | # remove deprected nproc.conf | ||
135 | if [ -f ${MROOT}/etc/security/limits.d/nproc.conf ] | ||
136 | then | ||
137 | rm ${MROOT}/etc/security/limits.d/nproc.conf | ||
138 | fi | ||
139 | } |