Magellan Linux

Contents of /branches/magellan-next/core/pam/pam-1.1.5-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 9795 - (show annotations) (download)
Wed Jan 11 19:40:05 2012 UTC (12 years, 4 months ago) by niro
File size: 4220 byte(s)
auto added: ver bump to 1.1.5-r1
1 # $Id$
2
3 PNAME="pam"
4 PVER="1.1.5"
5 PBUILD="r1"
6
7 PCATEGORIE="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.8
14 >= dev-db/db-5.1"
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 sminclude mtools multilib
24
25 PAMD_HALT_REV=1.2
26 PAMD_OTHER_REV=1.2
27 PAMD_SYSAUTH_REV=1.2
28
29 SRC_URI=(
30 https://fedorahosted.org/releases/l/i/linux-pam/${SRCFILE}
31 http://www.kernel.org/pub/linux/libs/pam/library/${SRCFILE}
32 http://www.kernel.org/pub/linux/libs/pam/pre/library/${SRCFILE}
33 mirror://${PNAME}/${SRCFILE}
34 mirror://${PNAME}/${PNAME}-${PVER}-pam-console.patch
35 mirror://${PNAME}/halt-${PAMD_HALT_REV}
36 mirror://${PNAME}/other-${PAMD_OTHER_REV}
37 mirror://${PNAME}/system-auth-${PAMD_SYSAUTH_REV}
38 mirror://${PNAME}/securetty
39 mirror://${PNAME}/console.handlers
40 )
41
42 # dev releases
43 #UP2DATE="updatecmd http://www.kernel.org/pub/linux/libs/pam/pre/library | lasttarball"
44 # stable releases
45 UP2DATE="updatecmd http://www.kernel.org/pub/linux/libs/pam/library | lasttarball"
46
47 # the strip option is not allowed, pam needs libpam.a
48 msetfeature "!strip"
49 CFLAGS="${CFLAGS/-s/}"
50 CXXFLAGS="${CFLAGS}"
51
52 src_prepare()
53 {
54 munpack ${SRCFILE} || die
55
56 # add pam_console module
57 mpatch ${PNAME}-${PVER}-pam-console.patch || die
58
59 # make sure to install readmes from all modules
60 local abi
61 for abi in ${MULTILIB_ABIS}
62 do
63 cd ${SRCDIR}-${abi}
64 install -d doc/txts || die
65 for readme in modules/pam_*/README
66 do
67 cp -f "${readme}" doc/txts/README.$(dirname "${readme}" | \
68 sed -e 's|^modules/||')
69 done
70
71 # search in /lib/cracklib
72 sed -i 's|DICT_DIR_CANDIDATES="|&/lib /lib/cracklib |' configure || die
73 done
74 }
75
76 src_compile()
77 {
78 export CFLAGS="${CFLAGS} -fPIC"
79
80 mconfigure \
81 --libdir=/'$(mlibdir)' \
82 --docdir=/usr/share/doc/${PNAME}-${PVER} \
83 --enable-securedir=/'$(mlibdir)'/security \
84 --enable-isadir=/'$(mlibdir)'/security \
85 --enable-read-both-confs \
86 || die
87
88 # python stuff in docs gives sandbox problems
89 all-abis "sed -i 's|modules doc examples|modules|' Makefile" || die
90
91 mmake -j1 || die
92 }
93
94 src_install()
95 {
96 # needed directories
97 minstalldir /etc/pam.d || die
98 all-abis minstalldir /usr/'$(mlibdir)' || die
99 minstalldir /usr/share/doc/${PNAME}-${PVER}/{spec,txt} || die
100
101 mmake DESTDIR=${BINDIR} LDCONFIG="" install || die
102
103 local i ilver
104 for i in libpam libpam_misc libpamc
105 do
106 # get internal lib version
107 ilver="$(readlink ${BINDIR}/$(mlibdir)/${i}.so | sed s:${i}.so.::)"
108
109 # fixing symlinks in /usr/lib
110 all-abis rm -f ${BINDIR}/usr/'$(mlibdir)'/${i}.so || die
111 all-abis mlink ../../'$(mlibdir)'/${i}.so.${ilver} /usr/'$(mlibdir)'/${i}.so || die
112
113 # fixing symlinks in /lib
114 all-abis rm -f ${BINDIR}/'$(mlibdir)'/${i}.so || die
115 all-abis mlink ${i}.so.${ilver} /'$(mlibdir)'/${i}.so || die
116 all-abis mlink ${i}.so.${ilver} /'$(mlibdir)'/${i}.so.0 || die
117 done
118
119 # fix permissions
120 mchmod 4755 /sbin/unix_chkpwd || die
121
122 # install missing man-pages
123 minstallman doc/man/*.3 || die
124 minstallman doc/man/*.8 || die
125
126 # needed by pam_console
127 mkeepdir /var/run/console || die
128
129 # install our pam setup
130 minstalldir /etc/security || die
131 minstallfile -s console.handlers /etc/security/ || die
132 minstallfile -s securetty /etc/ || die
133 # pam_env needs en empty /etc/environment file or it complains
134 memptyfile /etc/environment || die
135 minstalldir /etc/pam.d || die
136 minstallpam system-auth-${PAMD_SYSAUTH_REV} system-auth || die
137 minstallpam other-${PAMD_OTHER_REV} other || die
138 for i in halt reboot poweroff
139 do
140 minstallpam halt-${PAMD_HALT_REV} ${i} || die
141 done
142
143 minstalldocs CHANGELOG Copyright README || die
144 minstallfile doc/specs/\*.raw /usr/share/doc/${PNAME}-${PVER}/spec || die
145 minstallfile doc/specs/\*.txt /usr/share/doc/${PNAME}-${PVER}/spec || die
146 minstallfile doc/txts/\* /usr/share/doc/${PNAME}-${PVER}/txt || die
147 gzip -9r ${BINDIR}/usr/share/doc/${PNAME}-${PVER}/{spec,txt} || die
148
149 # check for pam_cracklib existence or die
150 [ -e ${BINDIR}/$(mlibdir)/security/pam_cracklib.so ] || die "pam_cracklib not found, your sys-libs/cracklib installation may be corrupt!"
151 }