1 DESCRIPTION = "A Security Tool that Provides Authentication for Applications"
2 HOMEPAGE = "http://www.linux-pam.org/"
3 SECTION = "Security/Access Control"
4 LICENSE = "GPL-2.0+ or BSD-3-Clause"
11 inherit manifest autotools-brokensep
16 #PROVIDES by pam-modules-extra
17 PROVIDES += "pam-modules-extra"
21 PROVIDES += "pam-docs "
32 #RDEPENDS of pam-modules-extra (${PN}-modules-extra)
33 RDEPENDS_${PN}-modules-extra += "pam"
35 #RDEPENDS of pam (${PN})
36 RDEPENDS_${PN} += "coreutils"
37 RDEPENDS_${PN} += "glibc"
38 RDEPENDS_${PN} += "flex"
40 #RDEPENDS of pam-dev (${PN}-dev)
41 RDEPENDS_${PN}-dev += "pam"
47 #Replace "DEPENDS" on gettext by "inherit gettext"
51 DEPENDS_append_class-native = " automake-native"
52 DEPENDS_append_class-target = " automake-native"
54 DEPENDS_append_class-native = " libtool"
55 DEPENDS_append_class-target = " libtool-cross"
56 DEPENDS_append_class-target = " flex"
57 DEPENDS += "net-tools"
58 DEPENDS_append_class-native = " bison-native"
59 DEPENDS_append_class-target = " bison-native"
60 DEPENDS_append_class-native = " autoconf-native"
61 DEPENDS_append_class-target = " autoconf-native"
65 chmod -Rf a+rX,u+w,g-w,o-w ${S}
66 #setup -q -n Linux-PAM-1.1.6
67 cp ${S}/packaging/pam.manifest .
72 bb.build.exec_func('do_prep', d)
83 LD_AS_NEEDED=1; export LD_AS_NEEDED ;
85 CFLAGS="-fPIC $CFLAGS " ; export CFLAGS
87 autotools_do_configure
88 oe_runmake CFLAGS="$CFLAGS -lfl -lcrypt"
93 EXTRA_OECONF += " --libdir=${base_libdir} --includedir=${prefix}/include/security --enable-isadir=../..${base_libdir}/security --disable-audit --with-db-uniquename=_pam --with-libiconv-prefix=${prefix} --enable-read-both-confs "
96 export RPM_BUILD_ROOT=${D}
108 BINDIR=${prefix}/bin \
110 rm -f ${D}${infodir}/dir
111 find ${D} -regex ".*\.la$" | xargs rm -f --
112 find ${D} -regex ".*\.a$" | xargs rm -f --
114 # RPM uses docs from source tree
115 rm -rf ${D}${prefix}/share/doc/Linux-PAM
116 # Included in setup package
117 rm -f ${D}${sysconfdir}/environment
119 for phase in auth acct passwd session ; do
120 ln -sf pam_unix.so ${D}${base_libdir}/security/pam_unix_${phase}.so
123 # Install default pam configuration files
124 install -d -m 0755 ${D}${sysconfdir}/pam.d
125 install -m 0644 ${S}/packaging/system-auth ${D}${sysconfdir}/pam.d/
126 install -m 0644 ${S}/packaging/other ${D}${sysconfdir}/pam.d/
133 pkg_postinst_${PN}() {
136 [ "x$D" == "x" ] && ldconfig
137 if [ ! -a ${localstatedir}/log/faillog ] ; then
138 install -m 600 /dev/null ${localstatedir}/log/faillog
140 if [ ! -a ${localstatedir}/log/tallylog ] ; then
141 install -m 600 /dev/null ${localstatedir}/log/tallylog
149 [ "x$D" == "x" ] && ldconfig
152 PACKAGES = "${PN}-dbg ${PN}-doc ${PN}-locale"
153 PACKAGES += " pam-modules-extra "
154 PACKAGES += " pam-dev "
156 PACKAGES += " pam-docs "
158 pam-modules-extra_files = ""
159 pam-modules-extra_files += "${base_libdir}/security/pam_access.so"
160 pam-modules-extra_files += "${base_libdir}/security/pam_debug.so"
161 pam-modules-extra_files += "${base_libdir}/security/pam_echo.so"
162 pam-modules-extra_files += "${base_libdir}/security/pam_exec.so"
163 pam-modules-extra_files += "${base_libdir}/security/pam_faildelay.so"
164 pam-modules-extra_files += "${base_libdir}/security/pam_filter.so"
165 pam-modules-extra_files += "${base_libdir}/security/pam_ftp.so"
166 pam-modules-extra_files += "${base_libdir}/security/pam_group.so"
167 pam-modules-extra_files += "${base_libdir}/security/pam_issue.so"
168 pam-modules-extra_files += "${base_libdir}/security/pam_listfile.so"
169 pam-modules-extra_files += "${base_libdir}/security/pam_localuser.so"
170 pam-modules-extra_files += "${base_libdir}/security/pam_mail.so"
171 pam-modules-extra_files += "${base_libdir}/security/pam_motd.so"
172 pam-modules-extra_files += "${base_libdir}/security/pam_pwhistory.so"
173 pam-modules-extra_files += "${base_libdir}/security/pam_rhosts.so"
174 pam-modules-extra_files += "${base_libdir}/security/pam_shells.so"
175 pam-modules-extra_files += "${base_libdir}/security/pam_stress.so"
176 pam-modules-extra_files += "${base_libdir}/security/pam_tally.so"
177 pam-modules-extra_files += "${base_libdir}/security/pam_time.so"
178 pam-modules-extra_files += "${base_libdir}/security/pam_timestamp.so"
179 pam-modules-extra_files += "${base_libdir}/security/pam_umask.so"
180 pam-modules-extra_files += "${base_libdir}/security/pam_unix_acct.so"
181 pam-modules-extra_files += "${base_libdir}/security/pam_unix_auth.so"
182 pam-modules-extra_files += "${base_libdir}/security/pam_unix_passwd.so"
183 pam-modules-extra_files += "${base_libdir}/security/pam_unix_session.so"
184 pam-modules-extra_files += "${base_libdir}/security/pam_warn.so"
185 pam-modules-extra_files += "${base_libdir}/security/pam_smack.so"
186 MANIFESTFILES_${PN}-modules-extra = "pam.manifest"
189 pam-dev_files += "${prefix}/include/security/*"
190 pam-dev_files += "${base_libdir}/libpam.so"
191 pam-dev_files += "${base_libdir}/libpam_misc.so"
192 pam-dev_files += "${base_libdir}/libpamc.so"
193 pam-dev_files += "${base_libdir}/security/pam_tally2.so"
194 MANIFESTFILES_${PN}-dev = "pam.manifest"
197 pam_files += "/sbin/pam_tally"
198 pam_files += "/sbin/pam_tally2"
199 pam_files += "/sbin/pam_timestamp_check"
200 pam_files += "/sbin/unix_chkpwd"
201 pam_files += "/sbin/unix_update"
202 pam_files += "/sbin/mkhomedir_helper"
203 pam_files += "${sysconfdir}/security/limits.conf"
204 pam_files += "${base_libdir}/libpam.so.*"
205 pam_files += "${base_libdir}/libpam_misc.so.*"
206 pam_files += "${base_libdir}/libpamc.so.*"
207 pam_files += "${base_libdir}/security/pam_deny.so"
208 pam_files += "${base_libdir}/security/pam_env.so"
209 pam_files += "${base_libdir}/security/pam_keyinit.so"
210 pam_files += "${base_libdir}/security/pam_limits.so"
211 pam_files += "${base_libdir}/security/pam_loginuid.so"
212 pam_files += "${base_libdir}/security/pam_namespace.so"
213 pam_files += "${base_libdir}/security/pam_nologin.so"
214 pam_files += "${base_libdir}/security/pam_permit.so"
215 pam_files += "${base_libdir}/security/pam_lastlog.so"
216 pam_files += "${base_libdir}/security/pam_rootok.so"
217 pam_files += "${base_libdir}/security/pam_securetty.so"
218 pam_files += "${base_libdir}/security/pam_succeed_if.so"
219 pam_files += "${base_libdir}/security/pam_unix.so"
220 pam_files += "${base_libdir}/security/pam_wheel.so"
221 pam_files += "${base_libdir}/security/pam_xauth.so"
222 pam_files += "${base_libdir}/security/pam_filter"
223 pam_files += "${base_libdir}/security/pam_mkhomedir.so"
224 pam_files += "${sysconfdir}/security"
225 pam_files += "${sysconfdir}/security/access.conf"
226 pam_files += "${sysconfdir}/security/group.conf"
227 pam_files += "${sysconfdir}/security/namespace.conf"
228 pam_files += "${sysconfdir}/security/namespace.init"
229 pam_files += "${sysconfdir}/security/pam_env.conf"
230 pam_files += "${sysconfdir}/security/time.conf"
231 pam_files += "${sysconfdir}/pam.d"
232 pam_files += "${sysconfdir}/pam.d/system-auth"
233 pam_files += "${sysconfdir}/pam.d/other"
235 CONFFILES_${PN} += "${sysconfdir}/security/limits.conf"
236 CONFFILES_${PN} += "${sysconfdir}/pam.d/system-auth"
237 CONFFILES_${PN} += "${sysconfdir}/pam.d/other"
238 MANIFESTFILES_${PN} = "pam.manifest"
240 DIRFILES_${PN} += "${sysconfdir}/security"
241 DIRFILES_${PN} += "${sysconfdir}/pam.d"
245 FILES_${PN}-modules-extra = "${pam-modules-extra_files}"
246 FILES_${PN}-dev = "${pam-dev_files}"
247 FILES_${PN} = "${pam_files}"
248 FILES_${PN}-docs = "${pam-docs_files}"
250 PKG_pam-modules-extra= "pam-modules-extra"
251 PKG_pam-dev= "pam-dev"
253 PKG_pam-docs= "pam-docs"
255 require pam-extraconf.inc