Remove hardcoded target.
[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:        1
9 License:        GPL-2.0+ or BSD-3-Clause
10 Summary:        PAM
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:       pam = %{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:       pam = %{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
66 %build
67 CFLAGS="-fPIC %{optflags} " ; export CFLAGS
68
69 %reconfigure \
70         --libdir=%{_libdir} \
71         --includedir=%{_includedir}/security \
72         --enable-isadir=../..%{_moduledir} \
73         --disable-audit \
74         --with-db-uniquename=_pam \
75         --with-libiconv-prefix=/usr \
76         --enable-read-both-confs &&
77
78 make %{?_smp_flags} CFLAGS="$CFLAGS -lfl -lcrypt"
79
80 %install
81 %make_install
82
83 # RPM uses docs from source tree
84 rm -rf %{buildroot}%{_datadir}/doc/Linux-PAM
85 # Included in setup package
86 rm -f %{buildroot}%{_sysconfdir}/environment
87
88 for phase in auth acct passwd session ; do
89         ln -sf pam_unix.so %{buildroot}%{_moduledir}/pam_unix_${phase}.so
90 done
91
92 # Install default pam configuration files
93 install -d -m 0755 %{buildroot}%{_pamconfdir}
94 install -m 0644 %{SOURCE1} %{buildroot}%{_pamconfdir}/
95 install -m 0644 %{SOURCE2} %{buildroot}%{_pamconfdir}/
96
97 %find_lang Linux-PAM
98
99 %post
100 /sbin/ldconfig
101 if [ ! -a /var/log/faillog ] ; then
102         /usr/bin/install -m 600 /dev/null /var/log/faillog
103 fi
104 if [ ! -a /var/log/tallylog ] ; then
105         /usr/bin/install -m 600 /dev/null /var/log/tallylog
106 fi
107
108 %postun -p /sbin/ldconfig
109
110 %lang_package -f Linux-PAM
111
112 %files
113 %manifest %{name}.manifest
114 %license Copyright
115 %{_sbindir}/pam_tally
116 %{_sbindir}/pam_tally2
117 %attr(4755,root,root) %{_sbindir}/pam_timestamp_check
118 %attr(4755,root,root) %{_sbindir}/unix_chkpwd
119 %attr(0700,root,root) %{_sbindir}/unix_update
120 %attr(0755,root,root) %{_sbindir}/mkhomedir_helper
121 %{_sysconfdir}/security/limits.conf
122 %{_libdir}/libpam.so.*
123 %{_libdir}/libpam_misc.so.*
124 %{_libdir}/libpamc.so.*
125 %dir %{_moduledir}
126 %{_moduledir}/pam_deny.so
127 %{_moduledir}/pam_env.so
128 %{_moduledir}/pam_keyinit.so
129 %{_moduledir}/pam_limits.so
130 %{_moduledir}/pam_loginuid.so
131 %{_moduledir}/pam_namespace.so
132 %{_moduledir}/pam_nologin.so
133 %{_moduledir}/pam_permit.so
134 %{_moduledir}/pam_lastlog.so
135 %{_moduledir}/pam_rootok.so
136 %{_moduledir}/pam_securetty.so
137 %{_moduledir}/pam_succeed_if.so
138 %{_moduledir}/pam_unix.so
139 %{_moduledir}/pam_wheel.so
140 %{_moduledir}/pam_xauth.so
141 %{_moduledir}/pam_filter
142 %{_moduledir}/pam_mkhomedir.so
143 %dir %{_secconfdir}
144 %config(noreplace) %{_secconfdir}/access.conf
145 %config(noreplace) %{_secconfdir}/group.conf
146 %config(noreplace) %{_secconfdir}/namespace.conf
147 #%dir %{_secconfdir}/namespace.d
148 %attr(755,root,root) %config(noreplace) %{_secconfdir}/namespace.init
149 %config(noreplace) %{_secconfdir}/pam_env.conf
150 %config(noreplace) %{_secconfdir}/time.conf
151 %dir %{_pamconfdir}
152 %{_pamconfdir}/system-auth
153 %{_pamconfdir}/other
154
155 %files -n pam-modules-extra
156 %manifest %{name}.manifest
157 %{_moduledir}/pam_access.so
158 %{_moduledir}/pam_debug.so
159 %{_moduledir}/pam_echo.so
160 %{_moduledir}/pam_exec.so
161 %{_moduledir}/pam_faildelay.so
162 %{_moduledir}/pam_filter.so
163 %{_moduledir}/pam_ftp.so
164 %{_moduledir}/pam_group.so
165 %{_moduledir}/pam_issue.so
166 %{_moduledir}/pam_listfile.so
167 %{_moduledir}/pam_localuser.so
168 %{_moduledir}/pam_mail.so
169 %{_moduledir}/pam_motd.so
170 %{_moduledir}/pam_pwhistory.so
171 %{_moduledir}/pam_rhosts.so
172 %{_moduledir}/pam_shells.so
173 %{_moduledir}/pam_stress.so
174 %{_moduledir}/pam_tally.so
175 %{_moduledir}/pam_time.so
176 %{_moduledir}/pam_timestamp.so
177 %{_moduledir}/pam_umask.so
178 %{_moduledir}/pam_unix_acct.so
179 %{_moduledir}/pam_unix_auth.so
180 %{_moduledir}/pam_unix_passwd.so
181 %{_moduledir}/pam_unix_session.so
182 %{_moduledir}/pam_warn.so
183 %{_moduledir}/pam_smack.so
184
185 %files devel
186 %manifest %{name}.manifest
187 %{_includedir}/security/*
188 %{_libdir}/libpam.so
189 %{_libdir}/libpam_misc.so
190 %{_libdir}/libpamc.so
191 %{_libdir}/security/pam_tally2.so
192
193 %docs_package