2 # - something wrong for doc/ps,pdf generation on my build host. remove completely duplicated doc formats?
5 %bcond_with pwexport # enable pam_pwexport module (needs hacked pam_unix)
6 %bcond_without cap # don't build pam_cap module
7 %bcond_without doc # don't build documentation
8 %bcond_without opie # don't build pam_opie module
9 %bcond_with prelude # build without Prelude IDS support
10 %bcond_without pwdb # don't build pam_pwdb and pam_radius modules
11 %bcond_without selinux # build without SELinux support
12 %bcond_without skey # don't build pam_skey module
13 %bcond_without tcpd # don't build pam_tcpd module
15 Summary: Pluggable Authentication Modules: modular, incremental authentication
16 Summary(de.UTF-8): Einsteckbare Authentifizierungsmodule: modulare, inkrementäre Authentifizierung
17 Summary(es.UTF-8): Módulos de autentificación plugables (PAM)
18 Summary(fr.UTF-8): PAM : Pluggable Authentication Modules: modular, incremental authentication
19 Summary(pl.UTF-8): Modularny system uwierzytelniania
20 Summary(pt_BR.UTF-8): Módulos de autenticação plugáveis (PAM)
21 Summary(ru.UTF-8): Интструмент, обеспечивающий аутентификацию для приложений
22 Summary(tr.UTF-8): Modüler, artımsal doğrulama birimleri
23 Summary(uk.UTF-8): Інструмент, що забезпечує аутентифікацію для програм
30 Source0: ftp://ftp.pld-linux.org/software/pam/%{name}-pld-%{version}.tar.gz
31 # Source0-md5: df374f625e7178f43a263a32e376dd46
32 Source1: system-auth.pamd
33 Patch0: %{name}-pam_pwgen_app.patch
34 Patch1: %{name}-modutil_mem_limit.patch
35 Patch2: %{name}-link.patch
36 URL: http://www.kernel.org/pub/linux/libs/pam/
37 BuildRequires: autoconf
38 BuildRequires: automake
40 BuildRequires: cracklib-devel
41 BuildRequires: db-devel
43 %{?with_cap:BuildRequires: libcap-devel}
44 %{?with_prelude:BuildRequires: libprelude-devel}
45 %{?with_selinux:BuildRequires: libselinux-devel}
46 BuildRequires: libtool >= 2:1.5
47 %{?with_tcpd:BuildRequires: libwrap-devel >= 7.6-32}
48 %{?with_opie:BuildRequires: opie-devel}
49 %{?with_pwdb:BuildRequires: pwdb-devel}
50 BuildRequires: sgml-tools
51 %{?with_skey:BuildRequires: skey-devel}
54 BuildRequires: tetex-fonts-jknappen
55 BuildRequires: tetex-format-latex
56 BuildRequires: tetex-metafont
57 BuildRequires: tetex-tex-babel
59 Requires: %{name}-libs = %{epoch}:%{version}-%{release}
62 Requires: cracklib-dicts
68 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
70 %define specflags -fno-strict-aliasing
73 PAM (Pluggable Authentication Modules) is a powerful, flexible,
74 extensible authentication system which allows the system administrator
75 to configure authentication services individually for every
76 pam-compliant application without recompiling any of the applications.
78 %description -l de.UTF-8
79 PAM (Pluggable Authentication Modules) ist ein leistungsfähiges,
80 flexibles und erweiterbares Authentifizierungssystem, mit dem der
81 Systemverwalter Authentifizierungs-Dienste individuell für jede
82 pam-kompatible Anwendung konfigurieren kann, ohne diese neu
83 kompilieren zu müssen.
85 %description -l es.UTF-8
86 PAM (Módulos de Autenticación Plugables) es un potente, flexible y
87 extensible sistema de autentificación, que permite al administrador
88 del sistema configurar servicios de autentificación individualmente
89 para cada aplicación pam compatible, sin la necesidad de recompilar
90 cualquier una de las aplicaciones.
92 %description -l fr.UTF-8
93 PAM (Pluggable Authentication Modules) est un systéme
94 d'authentification puissant, souple et extensible permettant à
95 l'administrateur système de configurer les individuellement les
96 services d'authentification pour chaque application conforme à PAM,
97 sans recompiler aucune application.
99 %description -l pl.UTF-8
100 PAM (Pluggable Authentication Modules) jest silnym i łatwo
101 dostosowywalnym do potrzeb systemem uwierzytelniania, który umożliwia
102 administratorowi indywidualne konfigurowanie poszczególnych usług,
103 które są dostosowane i skonsolidowane z bibliotekami PAM, bez
104 późniejszej ich rekompilacji w momencie zmiany sposobu
105 uwierzytelniania tychże usług.
107 %description -l pt_BR.UTF-8
108 PAM (Módulos de Autenticação Plugáveis) é um poderoso, flexível e
109 extensível sistema de autenticação, que permite o administrador do
110 sistema configurar serviços de autenticação individualmente para cada
111 aplicação pam compatível, sem necessidade de recompilar qualquer uma
114 %description -l uk.UTF-8
115 PAM (Pluggable Authentication Modules) - це потужна, гнучка, здатна до
116 розширення система аутентикації, яка дозволяє системному
117 адміністратору налагоджувати севіси авторизації доступу (аутентикації)
118 індивідуально для кожної pam-сумісної програми без необхідності
119 перекомпіляції самої програми. Це базовий механізм аутентикації в PLD
122 %description -l tr.UTF-8
123 PAM (Pluggable Authentication Modules) sistem yöneticilerinin
124 uygulamalardan herhangi birini yeniden derlemeksizin bütün PAM uyumlu
125 uygulamalar için doğrulama hizmetlerini ayarlamalarına yardımcı olan,
126 güclü, esnek ve kapsamlı bir doğrulama sistemidir.
128 %description -l ru.UTF-8
129 PAM (Pluggable Authentication Modules) - это мощная, гибкая,
130 расширяемая система аутентикации, позволяющая системному
131 администратору конфигурировать сервисы авторизации доступа
132 (аутентикации) индивидуально для каждой pam-совместимой программы без
133 необходимости перекомпилляции самой программы. Это базовый механизм
134 аутентикации в PLD Linux.
137 Summary: PAM modules and libraries
138 Summary(pl.UTF-8): Moduły i biblioteki PAM
140 Conflicts: pam < 0:0.80.1-2
143 Core PAM modules and libraries.
145 %description libs -l pl.UTF-8
146 Moduły i biblioteki PAM.
149 Summary: PAM header files
150 Summary(pl.UTF-8): Pliki nagłówkowe i dokumentacja programisty do PAM
151 Summary(pt_BR.UTF-8): Bibliotecas e arquivos de inclusão para desenvolvimento com PAM
152 Summary(ru.UTF-8): Библиотеки разработчика для PAM
153 Summary(uk.UTF-8): Бібліотеки програміста для PAM
154 Group: Development/Libraries
155 Requires: %{name} = %{epoch}:%{version}-%{release}
156 Requires: filesystem >= 2.0-1
159 Header files for developing PAM based applications.
161 %description devel -l pl.UTF-8
162 Pliki nagłówkowe i dokumentacja programisty do PAM.
164 %description devel -l pt_BR.UTF-8
165 Bibliotecas e arquivos de inclusão para desenvolvimento com PAM
167 %description devel -l ru.UTF-8
168 Этот пакет содержит хедеры и библиотеки разработчика для PAM.
170 %description devel -l uk.UTF-8
171 Цей пакет містить хедери та бібліотеки програміста для PAM.
174 Summary: PAM static libraries
175 Summary(pl.UTF-8): Biblioteki statyczne PAM
176 Summary(ru.UTF-8): Статические библиотеки разработчика для PAM
177 Summary(uk.UTF-8): Статичні бібліотеки програміста для PAM
178 Group: Development/Libraries
179 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
182 PAM static libraries.
184 %description static -l pl.UTF-8
185 Biblioteki statyczne PAM.
187 %description static -l ru.UTF-8
188 Этот пакет содержит статические библиотеки разработчика для PAM.
190 %description static -l uk.UTF-8
191 Цей пакет містить статичні бібліотеки програміста для PAM.
194 Summary: pam_pwdb module
195 Summary(pl.UTF-8): Moduł pam_pwdb
197 Requires: %{name} = %{epoch}:%{version}-%{release}
198 Requires: pwdb >= 0.54-2
200 %description pam_pwdb
203 %description pam_pwdb -l pl.UTF-8
207 Summary: pam_radius module
208 Summary(pl.UTF-8): Moduł pam_radius
210 Requires: %{name} = %{epoch}:%{version}-%{release}
211 Requires: pwdb >= 0.54-2
213 %description pam_radius
216 %description pam_radius -l pl.UTF-8
220 Summary: pam_skey module
221 Summary(pl.UTF-8): Moduł pam_skey
223 Requires: %{name} = %{epoch}:%{version}-%{release}
226 %description pam_skey
229 %description pam_skey -l pl.UTF-8
233 Summary: pam_opie module
234 Summary(pl.UTF-8): Moduł pam_opie
236 Requires: %{name} = %{epoch}:%{version}-%{release}
239 %description pam_opie
242 %description pam_opie -l pl.UTF-8
246 Summary: pam_tcpd module
247 Summary(pl.UTF-8): Moduł pam_tcpd
249 Requires: %{name} = %{epoch}:%{version}-%{release}
250 Requires: libwrap >= 7.6-32
252 %description pam_tcpd
255 %description pam_tcpd -l pl.UTF-8
259 Summary: pam_cap module
260 Summary(pl.UTF-8): Moduł pam_cap
262 Requires: %{name} = %{epoch}:%{version}-%{release}
268 %description pam_cap -l pl.UTF-8
272 Summary: PAM module - SELinux support
273 Summary(pl.UTF-8): Moduł PAM pozwalający na zmianę kontekstów SELinuksa
276 %description pam_selinux
277 PAM module - SELinux support.
279 %description pam_selinux -l pl.UTF-8
280 Moduł PAM pozwalający na zmianę kontekstów SELinuksa.
283 %setup -q -n %{name}-pld-%{version}
288 %{!?with_prelude:echo 'AC_DEFUN([AM_PATH_LIBPRELUDE],[/bin/true])' > m4/prelude.m4}
289 find doc/ -type f | xargs %{__perl} -pi -e 's#/lib/security#/%{_lib}/security#g'
298 --enable-maintainer-mode \
299 %{!?with_doc:--without-docs} \
300 %{!?with_cap:--disable-cap} \
301 %{!?with_opie:--disable-opie} \
302 %{!?with_pwdb:--disable-pwdb} \
303 %{!?with_skey:--disable-skey} \
304 %{!?with_tcpd:--disable-tcpd} \
305 %{?with_pwexport:--enable-want-pwexport-module} \
306 %{!?with_selinux:--disable-selinux} \
307 %{!?with_prelude:--disable-prelude} \
308 --enable-strong-crypto
313 rm -rf $RPM_BUILD_ROOT
314 install -d $RPM_BUILD_ROOT/%{_lib}
317 DESTDIR=$RPM_BUILD_ROOT
321 rm -f docs/{ps,txts}/{README,*.log} \
322 docs/{html,txts}/Makefile*
324 :> $RPM_BUILD_ROOT/etc/security/opasswd
325 :> $RPM_BUILD_ROOT/etc/security/blacklist
327 mv -f $RPM_BUILD_ROOT%{_libdir}/lib*.so.* $RPM_BUILD_ROOT/%{_lib}
329 install pamcrypt/.libs/libpamcrypt.a $RPM_BUILD_ROOT%{_libdir}
331 cd $RPM_BUILD_ROOT/%{_lib}
332 ln -sf /%{_lib}/$(echo libpam.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libpam.so
333 ln -sf /%{_lib}/$(echo libpam_misc.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libpam_misc.so
334 ln -sf /%{_lib}/$(echo libpamc.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libpamc.so
336 cp %{SOURCE1} $RPM_BUILD_ROOT/etc/pam.d/system-auth
338 # useless - shut up check-files
339 rm -f $RPM_BUILD_ROOT/%{_lib}/security/*.{la,a}
340 rm -f $RPM_BUILD_ROOT%{_libdir}/libpamcrypt.a
342 %if %{without selinux}
343 rm -rf $RPM_BUILD_ROOT{/%{_lib}/security/pam_selinux.so,%{_sbindir}/pam_selinux_check,%{_mandir}/man8/pam_selinux*.8*}
347 rm -rf $RPM_BUILD_ROOT
349 %post libs -p /sbin/ldconfig
350 %postun libs -p /sbin/ldconfig
353 %defattr(644,root,root,755)
354 %doc CHANGELOG ChangeLog Copyright doc/CREDITS
356 %doc docs/{html,txts,specs/*.{raw,txt}}
357 # FIXME: doesn't build for me! missing BR!:
358 #builder@pld-i686 ps $ sgml2latex -o ps ../psgml2latex -o ps ../pam
359 #Processing file ../pam
360 #load_char_maps: no entity maps found
361 #parse_data: no entity map for `[lowbar]'
362 #sh: latex: not found
363 #sh: latex: not found
364 #dvips: ! DVI file can't be opened.
368 %dir /sbin/pam_filter
369 %dir /var/lock/console
370 %dir /etc/security/console.apps
371 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/other
372 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/system-auth
373 %config(noreplace) %verify(not md5 mtime size) /etc/security/access.conf
374 %config(noreplace) %verify(not md5 mtime size) /etc/security/pam_env.conf
375 %config(noreplace) %verify(not md5 mtime size) /etc/security/group.conf
376 %config(noreplace) %verify(not md5 mtime size) /etc/security/limits.conf
377 %config(noreplace) %verify(not md5 mtime size) /etc/security/time.conf
378 %config(noreplace) %verify(not md5 mtime size) /etc/security/consoles
379 %config(noreplace) %verify(not md5 mtime size) /etc/security/trigram*
380 %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist
381 %config(noreplace) %verify(not md5 mtime size) /etc/security/pam_mail.conf
382 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/opasswd
383 %attr(755,root,root) /sbin/pam_filter/upperLOWER
384 %attr(4755,root,root) /sbin/unix_chkpwd
385 %attr(755,root,root) %{_bindir}/pam_pwgen
386 %attr(755,root,root) %{_sbindir}/pam_tally
387 %attr(755,root,root) %{_sbindir}/pwgen_trigram
389 %{_mandir}/man8/pam.*
390 %{_mandir}/man8/pam_localuser*
391 %{_mandir}/man8/pam_succeed_if*
392 %{_mandir}/man8/pam_xauth*
395 %defattr(644,root,root,755)
396 %attr(755,root,root) /%{_lib}/libpam.so.*.*.*
397 %attr(755,root,root) %ghost /%{_lib}/libpam.so.0
398 %attr(755,root,root) /%{_lib}/libpam_misc.so.*.*.*
399 %attr(755,root,root) %ghost /%{_lib}/libpam_misc.so.0
400 %attr(755,root,root) /%{_lib}/libpamc.so.*.*.*
401 %attr(755,root,root) %ghost /%{_lib}/libpamc.so.0
402 %attr(755,root,root) /%{_lib}/security/pam_access.so
403 %attr(755,root,root) /%{_lib}/security/pam_console.so
404 %attr(755,root,root) /%{_lib}/security/pam_cracklib.so
405 %attr(755,root,root) /%{_lib}/security/pam_debug.so
406 %attr(755,root,root) /%{_lib}/security/pam_deny.so
407 %attr(755,root,root) /%{_lib}/security/pam_env.so
408 %attr(755,root,root) /%{_lib}/security/pam_filter.so
409 %attr(755,root,root) /%{_lib}/security/pam_ftp.so
410 %attr(755,root,root) /%{_lib}/security/pam_group.so
411 %attr(755,root,root) /%{_lib}/security/pam_homedir.so
412 %attr(755,root,root) /%{_lib}/security/pam_issue.so
413 %attr(755,root,root) /%{_lib}/security/pam_lastlog.so
414 %attr(755,root,root) /%{_lib}/security/pam_limits.so
415 %attr(755,root,root) /%{_lib}/security/pam_listfile.so
416 %attr(755,root,root) /%{_lib}/security/pam_localuser.so
417 %attr(755,root,root) /%{_lib}/security/pam_mail.so
418 %attr(755,root,root) /%{_lib}/security/pam_make.so
419 %attr(755,root,root) /%{_lib}/security/pam_motd.so
420 %attr(755,root,root) /%{_lib}/security/pam_netid.so
421 %attr(755,root,root) /%{_lib}/security/pam_nologin.so
422 %attr(755,root,root) /%{_lib}/security/pam_permit.so
423 %attr(755,root,root) /%{_lib}/security/pam_pwgen.so
424 %attr(755,root,root) /%{_lib}/security/pam_rhosts.so
425 %attr(755,root,root) /%{_lib}/security/pam_rootok.so
426 %attr(755,root,root) /%{_lib}/security/pam_securetty.so
427 %attr(755,root,root) /%{_lib}/security/pam_shells.so
428 %attr(755,root,root) /%{_lib}/security/pam_stress.so
429 %attr(755,root,root) /%{_lib}/security/pam_succeed_if.so
430 %attr(755,root,root) /%{_lib}/security/pam_tally.so
431 %attr(755,root,root) /%{_lib}/security/pam_time.so
432 %attr(755,root,root) /%{_lib}/security/pam_unix.so
433 %attr(755,root,root) /%{_lib}/security/pam_userdb.so
434 %attr(755,root,root) /%{_lib}/security/pam_usertty.so
435 %attr(755,root,root) /%{_lib}/security/pam_utmp.so
436 %attr(755,root,root) /%{_lib}/security/pam_warn.so
437 %attr(755,root,root) /%{_lib}/security/pam_wheel.so
438 %attr(755,root,root) /%{_lib}/security/pam_xauth.so
439 %{?with_pwexport:%attr(755,root,root) /%{_lib}/security/pam_pwexport.so}
442 %defattr(644,root,root,755)
443 %attr(755,root,root) %{_libdir}/lib*.so
445 %{_libdir}/libpammodutil.a
446 %{_includedir}/security/*.h
450 %defattr(644,root,root,755)
453 %{_libdir}/libpam_misc.a
457 %defattr(644,root,root,755)
458 %attr(755,root,root) /%{_lib}/security/pam_pwdb.so
459 %attr(4755,root,root) /sbin/pwdb_chkpwd
462 %defattr(644,root,root,755)
463 %attr(755,root,root) /%{_lib}/security/pam_radius.so
468 %defattr(644,root,root,755)
469 %attr(755,root,root) /%{_lib}/security/pam_skey.so
474 %defattr(644,root,root,755)
475 %attr(755,root,root) /%{_lib}/security/pam_opie.so
476 %attr(755,root,root) /%{_lib}/security/pam_opietrust.so
481 %defattr(644,root,root,755)
482 %attr(755,root,root) /%{_lib}/security/pam_tcpd.so
487 %defattr(644,root,root,755)
488 %config(noreplace) %verify(not md5 mtime size) /etc/security/capability.conf
489 %attr(755,root,root) /%{_lib}/security/pam_cap.so
494 %defattr(644,root,root,755)
496 %attr(755,root,root) /%{_lib}/security/pam_selinux.so
497 %attr(755,root,root) %{_sbindir}/pam_selinux_check
498 #TODO: %config(noreplace) %verify(not size mtime md5) /etc/pam.d/pam_selinux_check
499 %{_mandir}/man8/pam_selinux*.8*