/[packages]/cauldron/krb5/current/SPECS/krb5.spec
ViewVC logotype

Annotation of /cauldron/krb5/current/SPECS/krb5.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 264466 - (hide annotations) (download)
Wed Jun 27 15:48:53 2012 UTC (6 years, 9 months ago) by guillomovitch
File size: 15502 byte(s)
- new version
- sync patch set with fedora
- add systemd support
- drop sysinit support

1 rtp 42304 %define bootstrap 0
2     %{?_without_bootstrap: %global bootstrap 0}
3     %{?_with_bootstrap: %global bootstrap 1}
4    
5 blino 3711 %define name krb5
6 guillomovitch 264466 %define version 1.10.2
7     %define release %mkrel 1
8 blino 3711
9     %define major 3
10     %define libname %mklibname %name %major
11    
12     # enable checking after compile
13     %define enable_check 0
14     %{?_with_check: %global %enable_check 1}
15    
16     Summary: The Kerberos network authentication system
17     Name: %{name}
18     Version: %{version}
19     Release: %{release}
20 guillomovitch 264466 License: MIT
21     URL: http://web.mit.edu/kerberos/www/
22     Group: System/Libraries
23 blino 3711 # from http://web.mit.edu/kerberos/dist/krb5/1.4/krb5-1.4.1-signed.tar
24     Source0: %{name}-%{version}.tar.gz
25     Source1: %{name}-%{version}.tar.gz.asc
26 guillomovitch 264466 Source2: kprop.service
27     Source3: kadmin.service
28     Source4: krb5kdc.service
29     Source5: kadmin.sysconfig
30     Source6: krb5kdc.sysconfig
31     Source7: kadmin.logrotate
32     Source8: krb5kdc.logrotate
33     Source9: krb5.conf
34 blino 3711 Source10: kdc.conf
35     Source11: kadm5.acl
36 guillomovitch 264466 Source25: krb5-1.10-manpaths.txt
37 blino 3711 Source29: ksu.pamd
38     Source30: kerberos-iv.portreserve
39     Source31: kerberos-adm.portreserve
40     Source32: krb5_prop.portreserve
41    
42     # stolen from fedora
43 guillomovitch 264466 Patch5: krb5-1.10-ksu-access.patch
44     Patch6: krb5-1.10-ksu-path.patch
45 blino 3711 Patch12: krb5-1.7-ktany.patch
46 guillomovitch 264466 Patch16: krb5-1.10-buildconf.patch
47 blino 3711 Patch23: krb5-1.3.1-dns.patch
48 guillomovitch 264466 Patch29: krb5-1.10-kprop-mktemp.patch
49 blino 3711 Patch30: krb5-1.3.4-send-pr-tempfile.patch
50     Patch39: krb5-1.8-api.patch
51 guillomovitch 264466 Patch56: krb5-1.10-doublelog.patch
52     Patch59: krb5-1.10-kpasswd_tcp.patch
53     Patch60: krb5-1.10.2-pam.patch
54     Patch61: krb5-1.10.2-manpaths.patch
55 guillomovitch 129660 Patch71: krb5-1.9-dirsrv-accountlock.patch
56 guillomovitch 264466 Patch75: krb5-pkinit-debug.patch
57     Patch86: krb5-1.9-debuginfo.patch
58     Patch100: krb5-trunk-7046.patch
59     Patch101: krb5-trunk-7047.patch
60     Patch102: krb5-trunk-7048.patch
61     Patch103: krb5-1.10-gcc47.patch
62     Patch105: krb5-kvno-230379.patch
63     Patch106: krb5-1.10.2-keytab-etype.patch
64     Patch107: krb5-trunk-pkinit-anchorsign.patch
65 blino 3711 BuildRequires: flex
66     BuildRequires: bison
67     BuildRequires: chrpath
68     BuildRequires: texinfo
69     BuildRequires: termcap-devel
70     BuildRequires: e2fsprogs-devel
71     BuildRequires: pam-devel
72     %if %enable_check
73     BuildRequires: dejagnu
74     %endif
75     BuildRequires: multiarch-utils >= 1.0.3
76 rtp 42304 %if !%bootstrap
77 blino 3711 BuildRequires: openldap-devel
78 rtp 42304 %endif
79 blino 3711
80     %description
81     Kerberos V5 is a trusted-third-party network authentication system,
82     which can improve your network's security by eliminating the insecure
83     practice of cleartext passwords.
84    
85     %package -n %{libname}-devel
86     Summary: Development files needed for compiling Kerberos 5 programs
87     Group: Development/Other
88     Requires: %{libname} = %{version}
89     Provides: krb-devel = %{version}-%{release}
90     Provides: krb5-devel = %{version}-%{release}
91     Provides: libkrb-devel
92    
93     %description -n %{libname}-devel
94     Kerberos is a network authentication system. The krb5-devel package
95     contains the header files and libraries needed for compiling Kerberos
96     5 programs. If you want to develop Kerberos-aware programs, you'll
97     need to install this package.
98    
99     %package -n %{libname}
100     Summary: The shared libraries used by Kerberos 5
101     Group: System/Libraries
102     Provides: krb5-libs = %{version}-%{release}
103     # we need the conf file, and better make sure it's a recent version
104     # for example, previous MIT kerberos versions didn't have ldap support,
105     # and this is specified in the conf file
106     Requires: %{name} >= %{version}
107    
108     %description -n %{libname}
109     Kerberos is a network authentication system. The krb5-libs package
110     contains the shared libraries needed by Kerberos 5. If you're using
111     Kerberos, you'll need to install this package.
112    
113     %package server
114     Group: System/Servers
115     Summary: The server programs for Kerberos 5
116     Requires: %{libname} = %{version}-%{release}
117     Requires: portreserve
118     Requires(post): rpm-helper
119     Requires(preun):rpm-helper
120    
121     %description server
122     Kerberos is a network authentication system. The krb5-server package
123     contains the programs that must be installed on a Kerberos 5 server.
124     If you're installing a Kerberos 5 server, you need to install this
125     package (in other words, most people should NOT install this
126     package).
127    
128     %package server-ldap
129     Group: System/Servers
130     Summary: The LDAP storage plugin for the Kerberos 5 KDC
131     Requires: %{name}-server = %{version}-%{release}
132    
133     %description server-ldap
134     Kerberos is a network authentication system. The krb5-server package
135     contains the programs that must be installed on a Kerberos 5 key
136     distribution center (KDC). If you are installing a Kerberos 5 KDC,
137     and you wish to use a directory server to store the data for your
138     realm, you need to install this package.
139    
140     %package workstation
141     Summary: Kerberos 5 programs for use on workstations
142     Group: System/Base
143     Requires: %{libname} = %{version}-%{release}
144     Requires(post): rpm-helper
145     Requires(preun):rpm-helper
146     Provides: kerberos-workstation
147    
148     %description workstation
149     Kerberos is a network authentication system. The krb5-workstation
150     package contains the basic Kerberos programs (kinit, klist, kdestroy,
151     kpasswd). If your network uses Kerberos, this package should be installed
152     on every workstation.
153    
154     %package pkinit-openssl
155     Summary: The PKINIT module for Kerberos 5
156     Group: System/Libraries
157     Requires: %{name}-libs = %{version}-%{release}
158    
159     %description pkinit-openssl
160     Kerberos is a network authentication system. The krb5-pkinit-openssl
161     package contains the PKINIT plugin, which uses OpenSSL to allow clients
162     to obtain initial credentials from a KDC using a private key and a
163     certificate.
164    
165     %prep
166 guillomovitch 162139 %setup -q
167 blino 3711 %patch60 -p1 -b .pam
168     %patch61 -p1 -b .manpaths
169 guillomovitch 264466 %patch5 -p1 -b .ksu-access
170     %patch6 -p1 -b .ksu-path
171 blino 3711 %patch12 -p1 -b .ktany
172 guillomovitch 264466 %patch16 -p1 -b .buildconf
173 blino 3711 %patch23 -p1 -b .dns
174 guillomovitch 264466 %patch29 -p1 -b .kprop-mktemp
175 blino 3711 %patch30 -p1 -b .send-pr-tempfile
176     %patch39 -p1 -b .api
177     %patch56 -p1 -b .doublelog
178     %patch59 -p1 -b .kpasswd_tcp
179     %patch71 -p1 -b .dirsrv-accountlock
180 guillomovitch 264466 %patch86 -p0 -b .debuginfo
181     %patch100 -p1 -b .7046
182     %patch101 -p1 -b .7047
183     %patch102 -p1 -b .7048
184     %patch103 -p0 -b .gcc47
185     %patch105 -p1 -b .kvno
186     %patch106 -p1 -b .keytab-etype
187     %patch107 -p1 -b .pkinit-anchorsign
188    
189     rm src/lib/krb5/krb/deltat.c
190    
191 blino 3711 gzip doc/*.ps
192    
193     sed -i -e '1s!\[twoside\]!!;s!%\(\\usepackage{hyperref}\)!\1!' \
194     doc/api/library.tex
195     sed -i -e '1c\
196     \\documentclass{article}\
197     \\usepackage{fixunder}\
198     \\usepackage{functions}\
199     \\usepackage{fancyheadings}\
200     \\usepackage{hyperref}' doc/implement/implement.tex
201    
202     # Take the execute bit off of documentation.
203     chmod -x doc/krb5-protocol/*.txt doc/*.html doc/*/*.html
204    
205     # Rename the man pages so that they'll get generated correctly. Uses the
206     # "krb5-1.8-manpaths.txt" source file.
207     pushd src
208     cat %{SOURCE25} | while read manpage ; do
209     mv "$manpage" "$manpage".in
210     done
211     popd
212    
213     sed -i s,^attributetype:,attributetypes:,g \
214     src/plugins/kdb/ldap/libkdb_ldap/kerberos.ldif
215    
216     pushd src
217     autoreconf
218    
219     %build
220     %serverbuild
221    
222     cd src
223     # Work out the CFLAGS and CPPFLAGS which we intend to use.
224     INCLUDES=-I%{_includedir}/et
225     CFLAGS="`echo $RPM_OPT_FLAGS $DEFINES $INCLUDES -fPIC`"
226     CPPFLAGS="`echo $DEFINES $INCLUDES`"
227    
228     %configure2_5x \
229     CC="%{__cc}" \
230     CFLAGS="$CFLAGS" \
231     CPPFLAGS="$CPPFLAGS" \
232     --enable-shared \
233     --localstatedir=%{_sysconfdir}/kerberos \
234     --enable-dns-for-realm \
235     --enable-pkinit \
236     --without-tcl \
237     --with-system-et \
238     --with-system-ss \
239     --disable-static \
240     --disable-rpath \
241 rtp 42304 %if !%bootstrap
242 blino 3711 --with-ldap \
243 rtp 42304 %endif
244 blino 3711 --with-pam
245    
246     #--with-netlib=-lresolv
247    
248     %make
249    
250     # Run the test suite. Won't run in the build system because /dev/pts is
251     # not available for telnet tests and so on.
252     # make check TMPDIR=%{_tmppath}
253    
254     %install
255     rm -rf %{buildroot}
256    
257     # Info docs.
258     mkdir -p %{buildroot}%{_infodir}
259     install -m 644 doc/*.info* %{buildroot}%{_infodir}
260    
261 guillomovitch 264466 # Default configuration file for everything
262     install -d -m 755 %{buildroot}%{_sysconfdir}
263     install -m 644 %{SOURCE9} %{buildroot}%{_sysconfdir}/krb5.conf
264    
265     # Sample KDC config files (bundled kdc.conf and kadm5.acl)
266 blino 3711 install -d -m 755 %{buildroot}%{_sysconfdir}/kerberos/krb5kdc
267 guillomovitch 264466 install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/kerberos/krb5kdc/kdc.conf
268     install -m 600 %{SOURCE11} %{buildroot}%{_sysconfdir}/kerberos/krb5kdc/kadm5.acl
269 blino 3711
270 guillomovitch 264466 install -d -m 755 %{buildroot}%{_unitdir}
271     install -m 644 %{SOURCE2} %{buildroot}%{_unitdir}/kprop.service
272     install -m 644 %{SOURCE3} %{buildroot}%{_unitdir}/kadmin.service
273     install -m 644 %{SOURCE4} %{buildroot}%{_unitdir}/krb5kdc.service
274 blino 3711
275 guillomovitch 264466 # sysconfig configuration files
276     install -d -m 755 %{buildroot}%{_sysconfdir}/sysconfig
277     install -m 644 %{SOURCE5} %{buildroot}%{_sysconfdir}/sysconfig/kadmin
278     install -m 644 %{SOURCE6} %{buildroot}%{_sysconfdir}/sysconfig/krb5kdc
279 blino 3711
280 guillomovitch 264466 # logrotate configuration files
281     install -d -m 755 %{buildroot}%{_sysconfdir}/logrotate.d
282     install -m 644 %{SOURCE7} %{buildroot}%{_sysconfdir}/logrotate.d/kadmin
283     install -m 644 %{SOURCE8} %{buildroot}%{_sysconfdir}/logrotate.d/krb5kdc
284 blino 3711
285 guillomovitch 264466 # portreserve configuration files
286     install -d -m 755 %{buildroot}%{_sysconfdir}/portreserve
287     install -m 644 %{SOURCE30} %{buildroot}%{_sysconfdir}/portreserve/kerberos-iv
288     install -m 644 %{SOURCE31} %{buildroot}%{_sysconfdir}/portreserve/kerberos-adm
289     install -m 644 %{SOURCE32} %{buildroot}%{_sysconfdir}/portreserve/krb5_prop
290 blino 3711
291 guillomovitch 264466 # PAM configuration files
292     install -d -m 755 %{buildroot}%{_sysconfdir}/pam.d
293     install -m 644 %{SOURCE29} %{buildroot}%{_sysconfdir}/pam.d/ksu
294 blino 3711
295     # Plug-in directories.
296     install -pdm 755 %{buildroot}%{_libdir}/krb5/plugins/preauth
297     install -pdm 755 %{buildroot}%{_libdir}/krb5/plugins/kdb
298     install -pdm 755 %{buildroot}%{_libdir}/krb5/plugins/authdata
299    
300     # The rest of the binaries, headers, libraries, and docs.
301     make -C src \
302     DESTDIR=%{buildroot} \
303     EXAMPLEDIR=%{_docdir}/%{libname}-devel/examples\
304     install
305    
306     # logdir
307     install -d %{buildroot}/var/log/kerberos
308    
309     # clear the LDFLAGS
310     perl -pi -e "s|^LDFLAGS.*|LDFLAGS=''|g" %{buildroot}%{_bindir}/krb5-config
311    
312     # multiarch policy
313     %multiarch_binaries %{buildroot}%{_bindir}/krb5-config
314     %multiarch_includes %{buildroot}%{_includedir}/gssapi/gssapi.h
315     # (gb) this one could be fixed differently and properly using <stdint.h>
316     %multiarch_includes %{buildroot}%{_includedir}/gssrpc/types.h
317     # multiarch_includes %{buildroot}%{_includedir}/krb5/k5-config.h
318     # multiarch_includes %{buildroot}%{_includedir}/krb5/autoconf.h
319     # multiarch_includes %{buildroot}%{_includedir}/krb5/osconf.h
320     %multiarch_includes %{buildroot}%{_includedir}/krb5.h
321    
322 guillomovitch 264466 %find_lang mit-krb5
323    
324 blino 3711 %post server
325     %_post_service krb5kdc
326     %_post_service kadmin
327     %_post_service kprop
328     %_install_info krb5-admin.info
329     %_install_info krb5-install.info
330    
331     %preun server
332     %_preun_service krb5kdc
333     %_preun_service kadmin
334     %_preun_service kprop
335     %_remove_install_info krb5-admin.info
336     %_remove_install_info krb5-install.info
337    
338     %post workstation
339     %_install_info krb5-user.info
340    
341     %preun workstation
342     %_remove_install_info krb5-user.info
343    
344     %clean
345     rm -rf %{buildroot}
346    
347 guillomovitch 264466 %files -f mit-krb5.lang
348 blino 3711 %doc README
349     %config(noreplace) %{_sysconfdir}/krb5.conf
350     %dir %{_sysconfdir}/kerberos
351     %dir %{_libdir}/krb5
352     %dir %{_libdir}/krb5/plugins
353     %{_mandir}/man1/kerberos.1*
354 guillomovitch 264466 %{_mandir}/man5/krb5.conf.5*
355 blino 3711 %{_mandir}/man5/.k5login.5*
356 guillomovitch 264466 %{_mandir}/man5/.k5identity.5*
357     %{_mandir}/man5/k5login.5*
358     %{_mandir}/man5/k5identity.5*
359 blino 3711
360     %files workstation
361     %doc doc/user*.ps.gz src/config-files/services.append
362     %doc doc/{kdestroy,kinit,klist,kpasswd,ksu}.html
363     %doc doc/krb5-user.html
364     %attr(0755,root,root) %doc src/config-files/convert-config-files
365     %{_infodir}/krb5-user.info*
366    
367     %{_bindir}/kdestroy
368     %{_mandir}/man1/kdestroy.1*
369     %{_bindir}/kinit
370     %{_mandir}/man1/kinit.1*
371     %{_bindir}/klist
372     %{_mandir}/man1/klist.1*
373     %{_bindir}/kpasswd
374     %{_mandir}/man1/kpasswd.1*
375 guillomovitch 264466 %{_bindir}/kswitch
376     %{_mandir}/man1/kswitch.1*
377 blino 3711
378     %{_bindir}/kvno
379     %{_mandir}/man1/kvno.1*
380     %{_bindir}/kadmin
381     %{_mandir}/man1/kadmin.1*
382     %{_bindir}/k5srvutil
383     %{_mandir}/man1/k5srvutil.1*
384     %{_bindir}/ktutil
385     %{_mandir}/man1/ktutil.1*
386    
387     %attr(4755,root,root) %{_bindir}/ksu
388     %{_mandir}/man1/ksu.1*
389     %config(noreplace) /etc/pam.d/ksu
390    
391     # Problem-reporting tool
392     %{_datadir}/gnats
393     %{_sbindir}/krb5-send-pr
394     %{_mandir}/man1/krb5-send-pr.1*
395    
396     %files server
397 guillomovitch 264466 %{_unitdir}/krb5kdc.service
398     %{_unitdir}/kadmin.service
399     %{_unitdir}/kprop.service
400 blino 3711 %config(noreplace) %{_sysconfdir}/sysconfig/krb5kdc
401     %config(noreplace) %{_sysconfdir}/sysconfig/kadmin
402     %config(noreplace) %{_sysconfdir}/portreserve/kerberos-iv
403     %config(noreplace) %{_sysconfdir}/portreserve/kerberos-adm
404     %config(noreplace) %{_sysconfdir}/portreserve/krb5_prop
405 guillomovitch 264466 %config(noreplace) %{_sysconfdir}/logrotate.d/kadmin
406     %config(noreplace) %{_sysconfdir}/logrotate.d/krb5kdc
407 blino 3711
408     %doc doc/admin*.ps.gz
409     %doc doc/install*.ps.gz
410     %doc doc/krb5-admin.html
411     %doc doc/krb5-install.html
412     %{_infodir}/krb5-admin.info*
413     %{_infodir}/krb5-install.info*
414     %dir /var/log/kerberos
415     %dir %{_sysconfdir}/kerberos/krb5kdc
416     %config(noreplace) %{_sysconfdir}/kerberos/krb5kdc/kdc.conf
417     %config(noreplace) %{_sysconfdir}/kerberos/krb5kdc/kadm5.acl
418     %{_mandir}/man5/kdc.conf.5*
419     %{_sbindir}/kadmin.local
420     %{_mandir}/man8/kadmin.local.8*
421     %{_sbindir}/kadmind
422     %{_mandir}/man8/kadmind.8*
423     %{_sbindir}/kdb5_util
424     %{_mandir}/man8/kdb5_util.8*
425 rtp 42304 %if !%bootstrap
426 blino 3711 %{_sbindir}/kdb5_ldap_util
427     %{_mandir}/man8/kdb5_ldap_util.8*
428 rtp 42304 %endif
429 blino 3711 %{_sbindir}/kprop
430     %{_mandir}/man8/kprop.8*
431     %{_sbindir}/kpropd
432     %{_mandir}/man8/kpropd.8*
433     %{_sbindir}/kproplog
434     %{_mandir}/man8/kproplog.8*
435     %{_sbindir}/krb5kdc
436     %{_mandir}/man8/krb5kdc.8*
437     %{_sbindir}/sim_server
438    
439     # This is here for people who want to test their server, and also
440     # included in devel package for similar reasons.
441     %{_bindir}/sclient
442     %{_mandir}/man1/sclient.1*
443     %{_sbindir}/sserver
444     %{_mandir}/man8/sserver.8*
445    
446     %dir %{_libdir}/krb5
447     %dir %{_libdir}/krb5/plugins
448     %dir %{_libdir}/krb5/plugins/kdb
449     %dir %{_libdir}/krb5/plugins/preauth
450     %dir %{_libdir}/krb5/plugins/authdata
451    
452     %files -n %{libname}
453     %{_libdir}/libgssapi_krb5.so.*
454     %{_libdir}/libgssrpc.so.*
455     %{_libdir}/libk5crypto.so.*
456     %{_libdir}/libkrb5.so.*
457     %{_libdir}/libkrb5support.so.*
458     %{_libdir}/libkadm5clnt_mit.so.*
459     %{_libdir}/libkadm5srv_mit.so.*
460     %{_libdir}/libkdb5.so.*
461 guillomovitch 264466 %{_libdir}/libverto-k5ev.so.*
462     %{_libdir}/libverto.so.*
463 blino 3711 %dir %{_libdir}/krb5
464     %dir %{_libdir}/krb5/plugins
465     %dir %{_libdir}/krb5/plugins/*
466     %{_libdir}/krb5/plugins/kdb/db2.so
467    
468     %files -n %{libname}-devel
469     %doc doc/api
470     %doc doc/implement
471     %doc doc/kadm5
472     %doc doc/kadmin
473     %doc doc/krb5-protocol
474     %doc doc/rpc
475     %multiarch %{multiarch_bindir}/krb5-config
476     %multiarch %{multiarch_includedir}/gssapi/gssapi.h
477     %multiarch %{multiarch_includedir}/gssrpc/types.h
478     %multiarch %{multiarch_includedir}/krb5.h
479     %{_includedir}/*.h
480     %{_includedir}/gssapi
481     %{_includedir}/gssrpc
482     %{_includedir}/kadm5
483     %{_includedir}/krb5
484     %{_bindir}/krb5-config
485     %{_libdir}/libgssapi_krb5.so
486     %{_libdir}/libgssrpc.so
487     %{_libdir}/libk5crypto.so
488     %{_libdir}/libkadm5clnt.so
489     %{_libdir}/libkadm5clnt_mit.so
490     %{_libdir}/libkadm5srv.so
491     %{_libdir}/libkadm5srv_mit.so
492     %{_libdir}/libkdb5.so
493     %{_libdir}/libkrb5.so
494     %{_libdir}/libkrb5support.so
495 guillomovitch 264466 %{_libdir}/libverto-k5ev.so
496     %{_libdir}/libverto.so
497 blino 3711 %{_bindir}/sclient
498     %{_mandir}/man1/sclient.1*
499     %{_sbindir}/sserver
500     %{_mandir}/man8/sserver.8*
501     %{_mandir}/man1/krb5-config.1*
502    
503     # Protocol test clients
504     %{_bindir}/sim_client
505     %{_bindir}/gss-client
506     %{_bindir}/uuclient
507    
508     # Protocol test servers
509     %{_sbindir}/gss-server
510     %{_sbindir}/uuserver
511     %{_mandir}/man5/.k5login.5*
512     %{_mandir}/man5/krb5.conf.5*
513    
514     %files pkinit-openssl
515     %dir %{_libdir}/krb5
516     %dir %{_libdir}/krb5/plugins
517     %dir %{_libdir}/krb5/plugins/preauth
518     %{_libdir}/krb5/plugins/preauth/pkinit.so
519    
520     %files server-ldap
521     %doc src/plugins/kdb/ldap/libkdb_ldap/kerberos.ldif
522     %doc src/plugins/kdb/ldap/libkdb_ldap/kerberos.schema
523     %dir %{_libdir}/krb5
524     %dir %{_libdir}/krb5/plugins
525     %dir %{_libdir}/krb5/plugins/kdb
526 rtp 42304 %if !%bootstrap
527 blino 3711 %{_libdir}/krb5/plugins/kdb/kldap.so
528     %{_libdir}/libkdb_ldap.so
529     %{_libdir}/libkdb_ldap.so.*
530     %{_sbindir}/kdb5_ldap_util
531 rtp 42304 %endif
532 blino 3711

  ViewVC Help
Powered by ViewVC 1.1.26