Update init spec files
[scm/bb/tizen.git] / proto-meta-Tizen_generic / specfile-initial / pam / packaging / pam.spec
1 %define _sbindir /sbin
2 %define _moduledir %{_libdir}/security
3 %define _secconfdir %{_sysconfdir}/security
4 %define _pamconfdir %{_sysconfdir}/pam.d
5
6 Name:           pam
7 Version:        1.1.6
8 Release:        0
9 License:        GPL-2.0+ or BSD-3-Clause
10 Summary:        A Security Tool that Provides Authentication for Applications
11 Url:            http://www.linux-pam.org/
12 Group:          Security/Access Control
13 Source0:        Linux-PAM-%{version}.tar.bz2
14 Source1:        system-auth
15 Source2:        other
16 Source1001:     pam.manifest
17
18 BuildRequires:  autoconf
19 BuildRequires:  automake
20 BuildRequires:  bison
21 BuildRequires:  db4-devel
22 BuildRequires:  flex
23 BuildRequires:  gcc
24 BuildRequires:  libtool
25 BuildRequires:  net-tools
26 BuildRequires:  zlib-devel
27 BuildRequires:  gettext-tools
28 BuildRequires:  smack-devel
29 Requires(post): /sbin/ldconfig
30 Requires(post): /usr/bin/install
31 Requires(postun): /sbin/ldconfig
32
33 %description
34 PAM (Pluggable Authentication Modules) is a system security tool that
35 allows system administrators to set authentication policy without
36 having to recompile programs that handle authentication.
37
38 %package -n pam-modules-extra
39 Summary:        Extra modules provided by PAM not used in the base system
40 Group:          Security/Access Control
41 Requires:       %{name} = %{version}
42
43 %description -n pam-modules-extra
44 PAM (Pluggable Authentication Modules) is a system security tool that
45 allows system administrators to set authentication policy without
46 having to recompile programs that handle authentication. This package
47 contains extra modules for use by programs that are not used in the
48 default Tizen install.
49
50 %package devel
51 Summary:        Files needed for developing PAM-aware applications and modules for PAM
52 Requires:       %{name} = %{version}
53
54 %description devel
55 PAM (Pluggable Authentication Modules) is a system security tool that
56 allows system administrators to set authentication policy without
57 having to recompile programs that handle authentication. This package
58 contains header files and static libraries used for building both
59 PAM-aware applications and modules for use with PAM.
60
61 %prep
62 %setup -q -n Linux-PAM-%{version}
63 cp %{SOURCE1001} .
64
65 %build
66 CFLAGS="-fPIC %{optflags} " ; export CFLAGS
67 %reconfigure \
68         --libdir=%{_libdir} \
69         --includedir=%{_includedir}/security \
70         --enable-isadir=../..%{_moduledir} \
71         --disable-audit \
72         --with-db-uniquename=_pam \
73         --with-libiconv-prefix=/usr \
74         --enable-read-both-confs 
75 %__make %{?_smp_flags} CFLAGS="$CFLAGS -lfl -lcrypt"
76
77 %install
78 %make_install
79
80 # RPM uses docs from source tree
81 rm -rf %{buildroot}%{_datadir}/doc/Linux-PAM
82 # Included in setup package
83 rm -f %{buildroot}%{_sysconfdir}/environment
84
85 for phase in auth acct passwd session ; do
86         ln -sf pam_unix.so %{buildroot}%{_moduledir}/pam_unix_${phase}.so
87 done
88
89 # Install default pam configuration files
90 install -d -m 0755 %{buildroot}%{_pamconfdir}
91 install -m 0644 %{SOURCE1} %{buildroot}%{_pamconfdir}/
92 install -m 0644 %{SOURCE2} %{buildroot}%{_pamconfdir}/
93
94 %find_lang Linux-PAM
95
96 %post
97 /sbin/ldconfig
98 if [ ! -a /var/log/faillog ] ; then
99         /usr/bin/install -m 600 /dev/null /var/log/faillog
100 fi
101 if [ ! -a /var/log/tallylog ] ; then
102         /usr/bin/install -m 600 /dev/null /var/log/tallylog
103 fi
104
105 %postun -p /sbin/ldconfig
106
107 %lang_package -f Linux-PAM
108
109 %files
110 %manifest %{name}.manifest
111 %license Copyright
112 %{_sbindir}/pam_tally
113 %{_sbindir}/pam_tally2
114 %attr(4755,root,root) %{_sbindir}/pam_timestamp_check
115 %attr(4755,root,root) %{_sbindir}/unix_chkpwd
116 %attr(0700,root,root) %{_sbindir}/unix_update
117 %attr(0755,root,root) %{_sbindir}/mkhomedir_helper
118 %config %{_sysconfdir}/security/limits.conf
119 %{_libdir}/libpam.so.*
120 %{_libdir}/libpam_misc.so.*
121 %{_libdir}/libpamc.so.*
122 %{_moduledir}/pam_deny.so
123 %{_moduledir}/pam_env.so
124 %{_moduledir}/pam_keyinit.so
125 %{_moduledir}/pam_limits.so
126 %{_moduledir}/pam_loginuid.so
127 %{_moduledir}/pam_namespace.so
128 %{_moduledir}/pam_nologin.so
129 %{_moduledir}/pam_permit.so
130 %{_moduledir}/pam_lastlog.so
131 %{_moduledir}/pam_rootok.so
132 %{_moduledir}/pam_securetty.so
133 %{_moduledir}/pam_succeed_if.so
134 %{_moduledir}/pam_unix.so
135 %{_moduledir}/pam_wheel.so
136 %{_moduledir}/pam_xauth.so
137 %{_moduledir}/pam_filter
138 %{_moduledir}/pam_mkhomedir.so
139 %dir %{_secconfdir}
140 %config(noreplace) %{_secconfdir}/access.conf
141 %config(noreplace) %{_secconfdir}/group.conf
142 %config(noreplace) %{_secconfdir}/namespace.conf
143 %attr(755,root,root) %config(noreplace) %{_secconfdir}/namespace.init
144 %config(noreplace) %{_secconfdir}/pam_env.conf
145 %config(noreplace) %{_secconfdir}/time.conf
146 %dir %{_pamconfdir}
147 %config %{_pamconfdir}/system-auth
148 %config %{_pamconfdir}/other
149
150 %files -n pam-modules-extra
151 %manifest %{name}.manifest
152 %{_moduledir}/pam_access.so
153 %{_moduledir}/pam_debug.so
154 %{_moduledir}/pam_echo.so
155 %{_moduledir}/pam_exec.so
156 %{_moduledir}/pam_faildelay.so
157 %{_moduledir}/pam_filter.so
158 %{_moduledir}/pam_ftp.so
159 %{_moduledir}/pam_group.so
160 %{_moduledir}/pam_issue.so
161 %{_moduledir}/pam_listfile.so
162 %{_moduledir}/pam_localuser.so
163 %{_moduledir}/pam_mail.so
164 %{_moduledir}/pam_motd.so
165 %{_moduledir}/pam_pwhistory.so
166 %{_moduledir}/pam_rhosts.so
167 %{_moduledir}/pam_shells.so
168 %{_moduledir}/pam_stress.so
169 %{_moduledir}/pam_tally.so
170 %{_moduledir}/pam_time.so
171 %{_moduledir}/pam_timestamp.so
172 %{_moduledir}/pam_umask.so
173 %{_moduledir}/pam_unix_acct.so
174 %{_moduledir}/pam_unix_auth.so
175 %{_moduledir}/pam_unix_passwd.so
176 %{_moduledir}/pam_unix_session.so
177 %{_moduledir}/pam_warn.so
178 %{_moduledir}/pam_smack.so
179
180 %files devel
181 %manifest %{name}.manifest
182 %{_includedir}/security/*
183 %{_libdir}/libpam.so
184 %{_libdir}/libpam_misc.so
185 %{_libdir}/libpamc.so
186 %{_libdir}/security/pam_tally2.so
187
188 %docs_package