ab424180c81de74ce7ef9bd7d19668cced027604
[openafs.git] / src / packaging / RedHat / openafs.spec.in
1 # Openafs Spec $Revision$
2
3 %define afsvers @PACKAGE_VERSION@
4 %define pkgvers @LINUX_PKGVER@
5 # for beta/rc releases make pkgrel 0.<tag>
6 # for real releases make pkgrel 1 (or more for extra releases)
7 %define pkgrel @LINUX_PKGREL@
8
9 %{!?build_dkmspkg: %define build_dkmspkg 1}
10
11 #
12 # Determine presence of rpmbuild command line --define arguments and set
13 # defaults if not present.
14 #
15 %define build_userspace_on_cmdline %{?build_userspace:1}%{!?build_userspace:0}
16 %define build_modules_on_cmdline %{?build_modules:1}%{!?build_modules:0}
17 %define debugspec_on_cmdline %{?debugspec:1}%{!?debugspec:0}
18
19 %if !%{build_userspace_on_cmdline}
20 %define build_userspace 1
21 %endif
22 %if !%{build_modules_on_cmdline}
23 %define build_modules 1
24 %endif
25 %if !%{debugspec_on_cmdline}
26 %define debugspec 0
27 %endif
28
29 # Specify '--with kauth' if you want to build packages containing the legacy
30 # kaserver and related programs.
31 %define kauth_support %{?_with_kauth:1}%{!?_with_kauth:0}
32
33 # Specify '--without authlibs' if you do not want to build the openafs-authlibs
34 # package.
35 %define build_authlibs %{?_without_authlibs:0}%{!?_without_authlibs:1}
36
37 # Specify '--without krb5' if you do not want to build the openafs-krb5 package
38 # to distribute aklog, asetkey, and akeyconvert.
39 %define krb5support %{?_without_krb5:0}%{!?_without_krb5:1}
40
41 # Specify '--with bootkernel' if you want to build the
42 # kernel module for Red Hat BOOT Kernels on x86.
43 %define bootkernelsupport %{?_with_bootkernel:1}%{!?_with_bootkernel:0}
44
45 #
46 # Definitions
47 #
48 %if 0%{?fedora} >= 17 || 0%{?rhel} >= 7
49 %define depmod /usr/sbin/depmod
50 %else
51 %define depmod /sbin/depmod
52 %endif
53
54 %define kmodtool bash %{_sourcedir}/openafs-kmodtool
55
56 %define kmod_name openafs
57 %define kverrel %(%{kmodtool} verrel %{?kernvers} 2>/dev/null)
58
59 %define upvar ""
60 %{!?kvariants: %define kvariants %{?upvar}}
61
62 %if %{?ksrcdir:1}%{!?ksrcdir:0}
63   if ( -d %{_usrsrc}/kernels/%{kverrel}-%{_target_cpu}) ; then
64     %define ksrcdir %{_usrsrc}/kernels/%{kverrel}-%{_target_cpu}}
65   else
66     %define ksrcdir %{_usrsrc}/kernels/%{kverrel}.%{_target_cpu}}
67   fi
68 %endif
69
70 %define dkms_version %{pkgvers}-%{pkgrel}%{?dist}
71
72 # Define the location of your init.d directory
73 %define initdir /etc/rc.d/init.d
74
75 #determine if the kernel provides an arch-specific Provides
76 %define kprovidesarch %(%{kversis} provideskernelarch %{ksrcdir} %{_target_cpu})
77
78 # Define the location of the PAM security module directory
79 %define pamdir /%{_lib}/security
80
81 Summary: OpenAFS distributed filesystem
82 Name: openafs
83 Version: %{pkgvers}
84 Release: %{pkgrel}%{?dist}
85 License: IBM Public License
86 URL: http://www.openafs.org
87 BuildRoot: %{_tmppath}/%{name}-%{version}-root
88 Packager: OpenAFS Gatekeepers <openafs-gatekeepers@openafs.org>
89 Group: Networking/Filesystems
90 BuildRequires: %{?kdepend:%{kdepend}, } pam-devel, ncurses-devel, flex, bison
91 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
92 BuildRequires: systemd-units
93 %endif
94 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 6
95 BuildRequires: perl-devel, swig
96 %endif
97 BuildRequires: perl(ExtUtils::Embed)
98 %if %{krb5support}
99 BuildRequires: krb5-devel
100 %endif
101 %if %{build_modules}
102 BuildRequires: kernel-devel
103 %if 0%{?rhel} >= 8
104 BuildRequires: elfutils-devel
105 %endif
106 %endif
107
108 ExclusiveArch: %{ix86} x86_64 ia64 s390 s390x sparc64 ppc ppc64 aarch64
109
110 #    http://dl.openafs.org/dl/openafs/candidate/%{afsvers}/...
111 Source0: http://www.openafs.org/dl/openafs/%{afsvers}/openafs-%{afsvers}-src.tar.bz2
112 Source1: http://www.openafs.org/dl/openafs/%{afsvers}/openafs-%{afsvers}-doc.tar.bz2
113 %define srcdir openafs-%{afsvers}
114
115 Source10: http://www.openafs.org/dl/openafs/%{afsvers}/RELNOTES-%{afsvers}
116 Source11: http://www.openafs.org/dl/openafs/%{afsvers}/ChangeLog
117
118 Source20: https://www.central.org/dl/cellservdb/CellServDB.2018-05-14
119
120 Source996: openafs-kvers-is.sh
121 Source997: openafs-buildfedora.pl
122 Source998: openafs-buildall.sh
123 Source999: openafs-kmodtool
124
125 %description
126 The AFS distributed filesystem.  AFS is a distributed filesystem
127 allowing cross-platform sharing of files among multiple computers.
128 Facilities are provided for access control, authentication, backup and
129 administrative management.
130
131 This package provides common files shared across all the various
132 OpenAFS packages but are not necessarily tied to a client or server.
133
134 The OpenAFS SRPM can be rebuilt with the following options to control
135 what gets built:
136
137  --define "kernvers 3.19.3-100.fc20.i686" Specify the specific kernel version
138                                   to build modules against. The default is
139                                   to build against the currently-running
140                                   kernel.
141  --define "kbase /lib/modules/"   The base location to look for kernel headers
142  --define "kend /build"           The 'end' location to look for kernels
143                                   The build will define ksrvdir as
144                                   %%{kbase}<kernvers>%%{kend}
145
146  --without authlibs               Disable authlibs package (default: with authlibs)
147  --without krb5                   Disable krb5 support (default: with krb5)
148  --with bitmap-later              Enable "bitmap later" support
149  --with bos-restricted            Enable "bos restricted" mode
150  --with supergroups               Enable "supergroups"
151  --with kauth                     Build the openafs-kauth-server and openafs-kauth-client
152                                   packages which contain the legacy kaserver and
153                                   related programs. (default: --without kauth)
154
155  --target=i386                    The target architecture to build for.
156
157  --define "build_userspace 1"     Request building of userspace tools
158  --define "build_modules 1"       Request building of kernel modules
159                                   You probably never need to specify these.
160
161  --define "kmoddir /lib/modules"  This is the base location where modules
162                                   will be installed.  You probably don't
163                                   need to change this ever.
164
165  --define "kvariants <variants>"  When building Fedora style kernel modules,
166                                   this defines the set of kernel variants
167                                   to build.
168                                   <variants> is a space seperated list which
169                                   may contain one or more of
170                                   '' (for the generic kernel), smp, PAE, xen
171                                   or kdump
172
173 To a kernel module for your running kernel, just run:
174   rpmbuild --rebuild --target=`uname -m` openafs-%{pkgvers}-%{pkgrel}%{?dist}.src.rpm
175
176 ##############################################################################
177 #
178 # build the userspace side of things if so requested
179 #
180 ##############################################################################
181 %if %{build_userspace}
182
183 %package client
184 Requires: binutils, openafs = %{version}
185 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
186 Requires: systemd-units
187 Requires(post): systemd-units, systemd-sysv
188 Requires(preun): systemd-units
189 Requires(postun): systemd-units
190 %endif
191
192 Requires: %{name}-kmod >= %{version}
193 Provides: %{name}-kmod-common = %{version}
194
195 Summary: OpenAFS Filesystem Client
196 Group: Networking/Filesystem
197
198 %description client
199 The AFS distributed filesystem.  AFS is a distributed filesystem
200 allowing cross-platform sharing of files among multiple computers.
201 Facilities are provided for access control, authentication, backup and
202 administrative management.
203
204 This package provides basic client support to mount and manipulate
205 AFS.
206
207 %package server
208 Requires: openafs = %{version}
209 Summary: OpenAFS Filesystem Server
210 Group: Networking/Filesystems
211 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
212 Requires: systemd-units
213 Requires(post): systemd-units, systemd-sysv
214 Requires(preun): systemd-units
215 Requires(postun): systemd-units
216 %endif
217
218 %description server
219 The AFS distributed filesystem.  AFS is a distributed filesystem
220 allowing cross-platform sharing of files among multiple computers.
221 Facilities are provided for access control, authentication, backup and
222 administrative management.
223
224 This package provides basic server support to host files in an AFS
225 Cell.
226
227 %if %{build_dkmspkg}
228 %package -n dkms-%{name}
229 Summary:        DKMS-ready kernel source for AFS distributed filesystem
230 Group:          Development/Kernel
231 Provides:       openafs-kernel = %{version}
232 Provides: %{name}-kmod = %{version}
233 Requires(pre):  dkms
234 Requires(pre):  flex
235 Requires(post): dkms
236 Requires:       %{name}-kmod-common = %{version}
237
238 %description -n dkms-%{name}
239 The AFS distributed filesystem.  AFS is a distributed filesystem
240 allowing cross-platform sharing of files among multiple computers.
241 Facilities are provided for access control, authentication, backup and
242 administrative management.
243
244 This package provides the source code to allow DKMS to build an
245 AFS kernel module.
246 %endif
247
248 %if %{build_authlibs}
249 %package authlibs
250 Summary: OpenAFS authentication shared libraries
251 Group: Networking/Filesystems
252
253 %description authlibs
254 The AFS distributed filesystem.  AFS is a distributed filesystem
255 allowing cross-platform sharing of files among multiple computers.
256 Facilities are provided for access control, authentication, backup and
257 administrative management.
258
259 This package provides a shared version of libafsrpc and libafsauthent.
260 None of the programs included with OpenAFS currently use these shared
261 libraries; however, third-party software that wishes to perform AFS
262 authentication may link against them.
263 %endif
264
265 %package authlibs-devel
266 %if %{build_authlibs}
267 Requires: openafs-authlibs = %{version}-%{release}
268 %endif
269 Requires: openafs-devel = %{version}-%{release}
270 Summary: OpenAFS shared library development
271 Group: Development/Filesystems
272
273 %description authlibs-devel
274 The AFS distributed filesystem.  AFS is a distributed filesystem
275 allowing cross-platform sharing of files among multiple computers.
276 Facilities are provided for access control, authentication, backup and
277 administrative management.
278
279 This package includes the static versions of libafsrpc and
280 libafsauthent, and symlinks required for building against the dynamic
281 libraries.
282
283 %package devel
284 Summary: OpenAFS Development Libraries and Headers
285 Group: Development/Filesystems
286 Requires: openafs = %{version}-%{release}
287
288 %description devel
289 The AFS distributed filesystem.  AFS is a distributed filesystem
290 allowing cross-platform sharing of files among multiple computers.
291 Facilities are provided for access control, authentication, backup and
292 administrative management.
293
294 This package provides static development libraries and headers needed
295 to compile AFS applications.  Note: AFS currently does not provide
296 shared libraries.
297
298 %package docs
299 Summary: OpenAFS user and administrator documentation
300 Requires: openafs = %{version}-%{release}
301 Group: Networking/Filesystems
302
303 %description docs
304 The AFS distributed filesystem.  AFS is a distributed filesystem
305 allowing cross-platform sharing of files among multiple computers.
306 Facilities are provided for access control, authentication, backup and
307 administrative management.
308
309 This package provides HTML documentation for OpenAFS users and system
310 administrators.
311
312 %package kernel-source
313 Summary: OpenAFS Kernel Module source tree
314 Group: Networking/Filesystems
315 Provides: openafs-kernel = %{version}
316 Provides: %{name}-kmod = %{version}
317
318 %description kernel-source
319 The AFS distributed filesystem.  AFS is a distributed filesystem
320 allowing cross-platform sharing of files among multiple computers.
321 Facilities are provided for access control, authentication, backup and
322 administrative management.
323
324 This package provides the source code to build your own AFS kernel
325 module.
326
327 %package compat
328 Summary: OpenAFS client compatibility symlinks
329 Requires: openafs = %{version}, openafs-client = %{version}
330 Group: Networking/Filesystems
331 Obsoletes: openafs-client-compat
332
333 %description compat
334 The AFS distributed filesystem.  AFS is a distributed filesystem
335 allowing cross-platform sharing of files among multiple computers.
336 Facilities are provided for access control, authentication, backup and
337 administrative management.
338
339 This package provides compatibility symlinks in /usr/afsws.  It is
340 completely optional, and is only necessary to support legacy
341 applications and scripts that hard-code the location of AFS client
342 programs.
343
344 %if %{kauth_support}
345 %package kauth-client
346 Summary: OpenAFS Kauth Client support
347 Requires: openafs
348 Group: Networking/Filesystems
349
350 %description kauth-client
351 The AFS distributed filesystem.  AFS is a distributed filesystem
352 allowing cross-platform sharing of files among multiple computers.
353 Facilities are provided for access control, authentication, backup and
354 administrative management.
355
356 This package provides the legacy KAServer client programs and the PAM module
357 for authentication with the OpenAFS KAserver; a deprecated authentication
358 service.  Generally you should not install this package for new cells or for
359 cells using Kerberos v5.
360
361 %package kauth-server
362 Summary: OpenAFS Kauth Server support
363 Requires: openafs
364 Group: Networking/Filesystems
365
366 %description kauth-server
367 The AFS distributed filesystem.  AFS is a distributed filesystem
368 allowing cross-platform sharing of files among multiple computers.
369 Facilities are provided for access control, authentication, backup and
370 administrative management.
371
372 This package provides the legacy OpenAFS KAServer; a deprecated authentication
373 service. Generally you should not install this package for new cells or for
374 cells using Kerberos v5.
375 %endif
376
377 %if %{krb5support}
378 %package krb5
379 Summary: OpenAFS programs to use with krb5
380 Requires: openafs = %{version}
381 Group: Networking/Filesystems
382 BuildRequires: krb5-devel
383
384 %description krb5
385 The AFS distributed filesystem.  AFS is a distributed filesystem
386 allowing cross-platform sharing of files among multiple computers.
387 Facilities are provided for access control, authentication, backup and
388 administrative management.
389
390 This package provides compatibility programs so you can use krb5
391 to authenticate to AFS services, instead of using AFS's homegrown
392 krb4 lookalike services.
393 %endif
394
395 %endif
396
397 ##############################################################################
398 #
399 # build the kernel modules if so requested
400 #
401 ##############################################################################
402 %if %{build_modules}
403
404 %{expand:%(%{kmodtool} rpmtemplate %{kmod_name} %{kverrel} %{depmod} %{kvariants} 2>/dev/null)}
405
406 %endif
407
408 ##############################################################################
409 #
410 # PREP
411 #
412 ##############################################################################
413
414 %prep
415
416 : @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
417 : @@@
418 : @@@ kernel version:     %{kverrel}
419 : @@@ kernel variations:  %{kvariants}
420 : @@@ PAM modules dir:    %{pamdir}
421 : @@@ build userspace:    %{build_userspace}
422 : @@@ build modules:      %{build_modules}
423 : @@@ arch:               %{_arch}
424 : @@@ target cpu:         %{_target_cpu}
425 : @@@
426 : @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
427
428 # Install OpenAFS src and doc
429 #%setup -q -n %{srcdir}
430 %setup -q -b 1 -n %{srcdir}
431
432 ##############################################################################
433 #
434 # building
435 #
436 ##############################################################################
437 %build
438 case %{_arch} in
439        x86_64)                         sysname=amd64_linux26        ;;
440        alpha*)                         sysname=alpha_linux_26       ;;
441        i386|i486|i586|i686|athlon)     sysname=i386_linux26         ;;
442        aarch64)                        sysname=arm64_linux26        ;;
443        *)                              sysname=%{_arch}_linux26     ;;
444 esac
445
446 %ifarch %{ix86}
447 archlist="i386 i586 i686 athlon"
448 %if %{bootkernelsupport}
449   archlist="${archlist} BOOT"
450 %endif
451 %else
452 archlist=%{_arch}
453 %endif
454
455 #
456 # PrintDefine var value statements file
457 #
458 PrintDefine() {
459     case $3 in
460     *ifn*)
461         echo "#ifndef $1" >> $4
462         ;;
463     esac
464     case $3 in
465     *und*)
466         echo "#undef $1" >> $4
467         ;;
468     esac
469     case $3 in
470     *def*)
471         echo "#define $1 $2" >> $4
472         ;;
473     esac
474     case $3 in
475     *end*)
476         echo "#endif" >> $4
477         ;;
478     esac
479     case $3 in
480     *inc*)
481         echo "#include $1" >> $4
482         ;;
483     esac
484     case $3 in
485     *nl*)
486         echo "" >> $4
487         ;;
488     esac
489 }
490
491 # PrintRedhatKernelFix arch mp file
492 PrintRedhatKernelFix() {
493     arch="$1"
494     up=0
495     smp=0
496     largesmp=0
497     ent=0
498     bigmem=0
499     hugemem=0
500     boot=0
501     bootsmp=0
502
503     case "$2" in
504        up)     up=1;;
505        smp)    smp=1;;
506        largesmp) largesmp=1;;
507        bigmem) bigmem=1;;
508        hugemem) hugemem=1;;
509        *)
510                echo "$2 not supported"
511                exit 2;;
512     esac
513
514     file="$3"
515
516     rm -f $file
517     touch $file
518
519     PrintDefine "REDHAT_FIX_H" "" ifn,def,nl $file
520
521     PrintDefine __BOOT_KERNEL_ENTERPRISE $ent     und,def,nl $file
522     PrintDefine __BOOT_KERNEL_BIGMEM     $bigmem  und,def,nl $file
523     PrintDefine __BOOT_KERNEL_HUGEMEM    $hugemem und,def,nl $file
524     PrintDefine __BOOT_KERNEL_SMP        $smp     und,def,nl $file
525     PrintDefine __BOOT_KERNEL_LARGESMP   $largesmp und,def,nl $file
526     PrintDefine __BOOT_KERNEL_UP         $up      und,def,nl $file
527     PrintDefine __BOOT_KERNEL_BOOT       $boot    und,def,nl $file
528     PrintDefine __BOOT_KERNEL_BOOTSMP    $bootsmp und,def,nl $file
529
530     PrintDefine '"/boot/kernel.h"' "" inc,nl $file      # include file
531
532     for ar in $archlist ; do
533         if [ "$ar" = "$arch" ]; then
534             PrintDefine "__MODULE_KERNEL_$ar" "1" ifn,def,end $file
535         else
536             PrintDefine "__MODULE_KERNEL_$ar" "" und $file      # undef
537         fi
538     done
539     echo "" >> $file
540
541     PrintDefine "" "" end $file
542
543     if [ %{debugspec} = 1 ] ; then
544         echo "Kernel Configuration File for Red Hat kernels:"
545         cat $file
546     fi
547 }
548
549 config_opts="--enable-redhat-buildsys \
550         %{?_with_kauth:--enable-kauth} \
551         %{?_with_bitmap_later:--enable-bitmap-later} \
552         %{?_with_bos_restricted:--enable-bos-restricted-mode} \
553         %{?_with_supergroups:--enable-supergroups} \
554         --enable-transarc-paths"
555
556 # Configure AFS
557
558 # If we're using Fedora kmods, work out which is the best kernel module to
559 # use for the userland configuration step. If no variants have been specified,
560 # then use the standard kernel. If variants are specified, use the standard kernel
561 # if it's listed, otherwise pick the first listed kernel.
562 ksrc=""
563 for kvariant in %{kvariants} ; do
564   if [ -z "${kvariant}" -o -z "$ksrc" ] ; then
565     if [ -d %{_usrsrc}/kernels/%{kverrel}${kvariant:+-$kvariant}-%{_target_cpu} ] ; then
566       ksrc=%{_usrsrc}/kernels/%{kverrel}${kvariant:+-$kvariant}-%{_target_cpu}
567     elif [ -d %{_usrsrc}/kernels/%{kverrel}.%{_target_cpu}${kvariant:++$kvariant} ] ; then
568       ksrc=%{_usrsrc}/kernels/%{kverrel}.%{_target_cpu}${kvariant:++$kvariant}
569     else
570       ksrc=%{_usrsrc}/kernels/%{kverrel}.%{_target_cpu}${kvariant:+.$kvariant}
571     fi
572   fi
573 done
574 if [ -z "$ksrc" ] ; then
575 ksrc=%{ksrcdir}
576 fi
577
578 CFLAGS="$RPM_OPT_FLAGS"; export CFLAGS
579
580 %if %{krb5support}
581 %if %{?krb5config:1}%{!?krb5config:0}
582 KRB5_CONFIG="%{krb5config}"
583 export KRB5_CONFIG
584 %endif
585 %endif
586
587 ./configure --with-afs-sysname=${sysname} \
588        --prefix=%{_prefix} \
589        --libdir=%{_libdir} \
590        --bindir=%{_bindir} \
591        --sbindir=%{_sbindir} \
592        --disable-strip-binaries \
593        --enable-debug \
594        --with-linux-kernel-packaging \
595 %if %{build_modules}
596        --with-linux-kernel-headers=${ksrc} \
597 %else
598        --disable-kernel-module \
599 %endif
600 %if %{krb5support}
601         --with-krb5 \
602 %endif
603 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 6
604     --with-swig \
605 %else
606     --without-swig \
607 %endif
608        $config_opts \
609        || exit 1
610
611 # Build the libafs tree
612 make %{_smp_mflags} only_libafs_tree || exit 1
613
614 %if %{krb5support}
615 %if %{?krb5config:1}%{!?krb5config:0}
616 KRB5_CONFIG="%{krb5config}"
617 export KRB5_CONFIG
618 %endif
619 %endif
620
621 # Configure each of our kernel modules
622
623 %if %{build_modules}
624 for kvariant in %{kvariants} ; do
625   if [ -n "${kvariant}" ] ; then
626
627     if [ -d %{_usrsrc}/kernels/%{kverrel}${kvariant:+-$kvariant}-%{_target_cpu} ] ; then
628       ksrc=%{_usrsrc}/kernels/%{kverrel}${kvariant:+-$kvariant}-%{_target_cpu}
629
630     elif [ -d %{_usrsrc}/kernels/%{kverrel}.%{_target_cpu}${kvariant:++$kvariant} ] ; then
631       # Fedora 20 started putting kernel sources in e.g.
632       # 3.12.5-302.fc20.i686+PAE, instead of:
633       # 3.12.5-302.fc20.i686.PAE
634       ksrc=%{_usrsrc}/kernels/%{kverrel}.%{_target_cpu}${kvariant:++$kvariant}
635
636     else
637       ksrc=%{_usrsrc}/kernels/%{kverrel}.%{_target_cpu}${kvariant:+.$kvariant}
638     fi
639
640     cp -R libafs_tree _kmod_build_${kvariant}
641     pushd _kmod_build_${kvariant}
642     ./configure --with-afs-sysname=${sysname} \
643         --prefix=%{_prefix} \
644         --libdir=%{_libdir} \
645         --bindir=%{_bindir} \
646         --sbindir=%{_sbindir} \
647         --with-linux-kernel-packaging \
648         --with-linux-kernel-headers=${ksrc} \
649 %if %{krb5support}
650         --with-krb5 \
651 %endif
652         $config_opts \
653         || exit 1
654     popd
655   fi
656 done
657 %endif
658
659 %if %{build_userspace}
660 # Build the user-space AFS stuff
661 make %{_smp_mflags} all_nolibafs
662 %endif
663
664 %if %{build_modules}
665 for kvariant in %{kvariants}
666 do
667   if [ -n "${kvariant}" ] ; then
668     pushd _kmod_build_$kvariant;
669     make %{_smp_mflags} all
670     popd
671   else
672     make %{_smp_mflags} libafs
673   fi
674 done
675 %endif
676
677
678 ##############################################################################
679 ###
680 ### install
681 ###
682 ##############################################################################
683 %install
684
685 export DONT_GPRINTIFY=1 # Do not modify initscripts.
686
687 [ $RPM_BUILD_ROOT != / ] && rm -rf $RPM_BUILD_ROOT
688
689 ##############################################################################
690 ###
691 ### Install userspace
692 ###
693 ##############################################################################
694 %if %{build_userspace}
695
696 #-----------------------------------------------------------------------------
697 # Install userspace files
698 #-----------------------------------------------------------------------------
699 make %{_smp_mflags} install_nolibafs DESTDIR="$RPM_BUILD_ROOT"
700
701 # Set the executable bit on libraries in libdir, so rpmbuild knows to
702 # create "Provides" entries in the package metadata for the libraries
703 chmod +x $RPM_BUILD_ROOT%{_libdir}/*.so*
704
705 # Exclude duplicated files.
706 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/bos
707 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/fs
708 %if %{kauth_support}
709 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/kas
710 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/klog
711 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/klog.krb
712 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/kpwvalid
713 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/tokens.krb
714 rm -f $RPM_BUILD_ROOT%{_sbindir}/kpwvalid
715 %endif
716 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/pts
717 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/tokens
718 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/udebug
719 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/vos
720
721 # Exclude obsolete or unused files.
722 rm -f $RPM_BUILD_ROOT%{_bindir}/dlog
723 rm -f $RPM_BUILD_ROOT%{_bindir}/dpass
724 rm -f $RPM_BUILD_ROOT%{_bindir}/install
725 rm -f $RPM_BUILD_ROOT%{_bindir}/knfs
726 rm -f $RPM_BUILD_ROOT%{_bindir}/livesys
727 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/kdb
728 rm -f $RPM_BUILD_ROOT%{_sbindir}/rmtsysd
729 rm -rf $RPM_BUILD_ROOT%{_sbindir}/kdump*
730 %if !%{build_authlibs}
731 rm -f $RPM_BUILD_ROOT%{_libdir}/libafsauthent.so*
732 rm -f $RPM_BUILD_ROOT%{_libdir}/libafsrpc.so*
733 rm -f $RPM_BUILD_ROOT%{_libdir}/libkopenafs.so*
734 %endif
735 rm -f $RPM_BUILD_ROOT%{_sbindir}/afsd.fuse
736 %if !%{kauth_support}
737 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/tokens.krb
738 rm -f $RPM_BUILD_ROOT%{_bindir}/tokens.krb
739 rm -f $RPM_BUILD_ROOT%{_bindir}/pagsh.krb
740 %endif
741
742 # Relocate afsd to legacy path to match init scripts.
743 mv $RPM_BUILD_ROOT%{_sbindir}/afsd $RPM_BUILD_ROOT%{_prefix}/vice/etc/afsd
744
745 # Relocate admin utilities to a modern path.
746 %if %{kauth_support}
747 mv $RPM_BUILD_ROOT%{_prefix}/afs/bin/kadb_check $RPM_BUILD_ROOT%{_sbindir}/kadb_check
748 %endif
749 mv $RPM_BUILD_ROOT%{_prefix}/afs/bin/prdb_check $RPM_BUILD_ROOT%{_sbindir}/prdb_check
750 mv $RPM_BUILD_ROOT%{_prefix}/afs/bin/vldb_check $RPM_BUILD_ROOT%{_sbindir}/vldb_check
751 mv $RPM_BUILD_ROOT%{_prefix}/afs/bin/vldb_convert $RPM_BUILD_ROOT%{_sbindir}/vldb_convert
752 %if %{krb5support}
753 mv $RPM_BUILD_ROOT%{_prefix}/afs/bin/akeyconvert $RPM_BUILD_ROOT%{_sbindir}/akeyconvert
754 mv $RPM_BUILD_ROOT%{_prefix}/afs/bin/asetkey $RPM_BUILD_ROOT%{_sbindir}/asetkey
755 %endif
756
757 %if %{kauth_support}
758 # Relocate PAM files to the standard PAM module path.
759 mkdir -p $RPM_BUILD_ROOT%{pamdir}
760 mv $RPM_BUILD_ROOT%{_libdir}/pam_afs.krb.so $RPM_BUILD_ROOT%{pamdir}
761 mv $RPM_BUILD_ROOT%{_libdir}/pam_afs.so $RPM_BUILD_ROOT%{pamdir}
762 ln -sf pam_afs.so $RPM_BUILD_ROOT%{pamdir}/pam_afs.so.1
763 ln -sf pam_afs.krb.so $RPM_BUILD_ROOT%{pamdir}/pam_afs.krb.so.1
764
765 # Rename kpasswd to avoid conflicting with krb5 kpasswd.
766 mv $RPM_BUILD_ROOT%{_bindir}/kpasswd $RPM_BUILD_ROOT%{_bindir}/kapasswd
767 mv $RPM_BUILD_ROOT%{_mandir}/man1/kpasswd.1 $RPM_BUILD_ROOT%{_mandir}/man1/kapasswd.1
768 %endif
769
770 # Exclude obsolete or unused man pages.
771 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/afs_ftpd.1
772 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/afs_inetd.1
773 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/afs_login.1
774 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/afs_rcp.1
775 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/afs_rlogind.1
776 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/afs_rsh.1
777 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/dkload.1
778 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/knfs.1
779 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/package.1
780 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/runntp.1
781 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/symlink.1
782 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/symlink_list.1
783 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/symlink_make.1
784 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/symlink_remove.1
785 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/dlog.*
786 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/copyauth.*
787 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/dpass.*
788 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/livesys.*
789 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/afsd.fuse.8
790 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/rmtsysd.*
791 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/aklog_dynamic_auth.*
792 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/kdb.*
793 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/xfs_size_check.*
794 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/package_test.*
795 rm -f $RPM_BUILD_ROOT%{_mandir}/man5/package.*
796 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/package.*
797 %if !%{krb5support}
798 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/akeyconvert.*
799 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/asetkey.*
800 %endif
801 %if !%{kauth_support}
802 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/pagsh.krb.1
803 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/tokens.krb.1
804 rm -f $RPM_BUILD_ROOT%{_mandir}/man5/AuthLog.5
805 rm -f $RPM_BUILD_ROOT%{_mandir}/man5/AuthLog.dir.5
806 %endif
807 %if !(0%{?fedora} >= 15 || 0%{?rhel} >= 6)
808 rm -f $RPM_BUILD_ROOT%{_mandir}/man3/AFS::ukernel.3
809 %endif
810
811 #-----------------------------------------------------------------------------
812 # Install client and server initscripts/systemd files
813 #-----------------------------------------------------------------------------
814 mkdir -p $RPM_BUILD_ROOT/etc/sysconfig
815 install -m 755 src/packaging/RedHat/openafs.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/openafs
816 %if 0%{?fedora} < 15 && 0%{?rhel} < 7
817 mkdir -p $RPM_BUILD_ROOT%{initdir}
818 install -m 755 src/packaging/RedHat/openafs-client.init $RPM_BUILD_ROOT%{initdir}/openafs-client
819 install -m 755 src/packaging/RedHat/openafs-server.init $RPM_BUILD_ROOT%{initdir}/openafs-server
820 %else
821 mkdir -p $RPM_BUILD_ROOT%{_unitdir}
822 mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/modules
823 install -m 644 src/packaging/RedHat/openafs-client.service $RPM_BUILD_ROOT%{_unitdir}/openafs-client.service
824 install -m 755 src/packaging/RedHat/openafs-client.modules $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/modules/openafs-client.modules
825 install -m 644 src/packaging/RedHat/openafs-server.service $RPM_BUILD_ROOT%{_unitdir}/openafs-server.service
826 %endif
827
828 #-----------------------------------------------------------------------------
829 # Install server directories.
830 #-----------------------------------------------------------------------------
831 mkdir -p $RPM_BUILD_ROOT%{_prefix}/afs/etc
832 mkdir -p $RPM_BUILD_ROOT%{_prefix}/afs/logs
833
834 #-----------------------------------------------------------------------------
835 # Install client directories and config files.
836 #-----------------------------------------------------------------------------
837 mkdir -p $RPM_BUILD_ROOT%{_prefix}/vice/etc
838 mkdir -p $RPM_BUILD_ROOT%{_prefix}/vice/cache
839 chmod 700 $RPM_BUILD_ROOT%{_prefix}/vice/cache
840 install -p -m 644 src/packaging/RedHat/openafs-ThisCell $RPM_BUILD_ROOT%{_prefix}/vice/etc/ThisCell
841 install -p -m 644 %{SOURCE20} $RPM_BUILD_ROOT%{_prefix}/vice/etc/CellServDB.dist
842 install -p -m 644 src/packaging/RedHat/openafs-cacheinfo $RPM_BUILD_ROOT%{_prefix}/vice/etc/cacheinfo
843
844 #-----------------------------------------------------------------------------
845 # Install DKMS source.
846 #-----------------------------------------------------------------------------
847 install -d -m 755 $RPM_BUILD_ROOT%{_prefix}/src
848 cp -a libafs_tree $RPM_BUILD_ROOT%{_prefix}/src/%{name}-%{dkms_version}
849
850 cat > $RPM_BUILD_ROOT%{_prefix}/src/%{name}-%{dkms_version}/dkms.conf <<"EOF"
851
852 PACKAGE_VERSION="%{dkms_version}"
853
854 # Items below here should not have to change with each driver version.
855 PACKAGE_NAME="%{name}"
856 MAKE[0]='./configure --with-linux-kernel-headers=${kernel_source_dir} --with-linux-kernel-packaging && make && case "${kernelver_array[0]}${kernelver[0]}" in 2.4.*) mv src/libafs/MODLOAD-*/libafs-* openafs.o ;; *) mv src/libafs/MODLOAD-*/openafs.ko . ;; esac'
857 CLEAN="if [ -e src/libafs/Makefile ]; then make -C src/libafs clean; else true; fi"
858
859 BUILT_MODULE_NAME[0]="$PACKAGE_NAME"
860 DEST_MODULE_LOCATION[0]="/extra/$PACKAGE_NAME/"
861 STRIP[0]=no
862 AUTOINSTALL=yes
863 NO_WEAK_MODULES="true"
864
865 EOF
866
867 #-----------------------------------------------------------------------------
868 # Install the kernel module source tree.
869 #-----------------------------------------------------------------------------
870 mkdir -p $RPM_BUILD_ROOT%{_prefix}/src/openafs-kernel-%{afsvers}/src
871 tar cf - -C libafs_tree . | \
872         tar xf - -C $RPM_BUILD_ROOT%{_prefix}/src/openafs-kernel-%{afsvers}/src
873 install -m 644 LICENSE $RPM_BUILD_ROOT%{_prefix}/src/openafs-kernel-%{afsvers}/LICENSE.IBM
874 install -m 644 src/packaging/RedHat/openafs-LICENSE.Sun $RPM_BUILD_ROOT%{_prefix}/src/openafs-kernel-%{afsvers}/LICENSE.Sun
875 install -m 644 src/packaging/RedHat/openafs-README $RPM_BUILD_ROOT%{_prefix}/src/openafs-kernel-%{afsvers}/README
876
877 #-----------------------------------------------------------------------------
878 # Install documentation.
879 #-----------------------------------------------------------------------------
880 mkdir -p $RPM_BUILD_ROOT/$RPM_DOC_DIR/openafs-%{afsvers}
881 tar cf - -C doc LICENSE html pdf | \
882     tar xf - -C $RPM_BUILD_ROOT/$RPM_DOC_DIR/openafs-%{afsvers}
883 install -m 644 %{SOURCE10} $RPM_BUILD_ROOT/$RPM_DOC_DIR/openafs-%{afsvers}
884 install -m 644 %{SOURCE11} $RPM_BUILD_ROOT/$RPM_DOC_DIR/openafs-%{afsvers}
885
886 #-----------------------------------------------------------------------------
887 # Install compatiblity links.
888 #-----------------------------------------------------------------------------
889 mkdir -p $RPM_BUILD_ROOT%{_prefix}/afsws/bin
890 mkdir -p $RPM_BUILD_ROOT%{_prefix}/afsws/etc
891 ln -sf %{_prefix}/bin/afsmonitor    $RPM_BUILD_ROOT%{_prefix}/afsws/bin/afsmonitor
892 ln -sf %{_prefix}/bin/bos           $RPM_BUILD_ROOT%{_prefix}/afsws/bin/bos
893 ln -sf %{_prefix}/bin/fs            $RPM_BUILD_ROOT%{_prefix}/afsws/bin/fs
894 %if %{kauth_support}
895 ln -sf %{_prefix}/bin/kapasswd      $RPM_BUILD_ROOT%{_prefix}/afsws/bin/kapasswd
896 ln -sf %{_prefix}/bin/klog          $RPM_BUILD_ROOT%{_prefix}/afsws/bin/klog
897 ln -sf %{_prefix}/bin/klog.krb      $RPM_BUILD_ROOT%{_prefix}/afsws/bin/klog.krb
898 ln -sf %{_prefix}/bin/pagsh.krb     $RPM_BUILD_ROOT%{_prefix}/afsws/bin/pagsh.krb
899 ln -sf %{_prefix}/bin/tokens.krb    $RPM_BUILD_ROOT%{_prefix}/afsws/bin/tokens.krb
900 %endif
901 ln -sf %{_prefix}/bin/pagsh         $RPM_BUILD_ROOT%{_prefix}/afsws/bin/pagsh
902 ln -sf %{_prefix}/bin/pts           $RPM_BUILD_ROOT%{_prefix}/afsws/bin/pts
903 ln -sf %{_prefix}/bin/restorevol    $RPM_BUILD_ROOT%{_prefix}/afsws/bin/restorevol
904 ln -sf %{_prefix}/bin/scout         $RPM_BUILD_ROOT%{_prefix}/afsws/bin/scout
905 ln -sf %{_prefix}/bin/sys           $RPM_BUILD_ROOT%{_prefix}/afsws/bin/sys
906 ln -sf %{_prefix}/bin/tokens        $RPM_BUILD_ROOT%{_prefix}/afsws/bin/tokens
907 ln -sf %{_prefix}/bin/translate_et  $RPM_BUILD_ROOT%{_prefix}/afsws/bin/translate_et
908 ln -sf %{_prefix}/bin/xstat_cm_test $RPM_BUILD_ROOT%{_prefix}/afsws/bin/xstat_cm_test
909 ln -sf %{_prefix}/bin/xstat_fs_test $RPM_BUILD_ROOT%{_prefix}/afsws/bin/xstat_fs_test
910 ln -sf %{_prefix}/bin/udebug        $RPM_BUILD_ROOT%{_prefix}/afsws/bin/udebug
911 ln -sf %{_prefix}/bin/unlog         $RPM_BUILD_ROOT%{_prefix}/afsws/bin/unlog
912 ln -sf %{_prefix}/sbin/backup       $RPM_BUILD_ROOT%{_prefix}/afsws/etc/backup
913 ln -sf %{_prefix}/sbin/butc         $RPM_BUILD_ROOT%{_prefix}/afsws/etc/butc
914 ln -sf %{_prefix}/sbin/fms          $RPM_BUILD_ROOT%{_prefix}/afsws/etc/fms
915 ln -sf %{_prefix}/sbin/fstrace      $RPM_BUILD_ROOT%{_prefix}/afsws/etc/fstrace
916 %if %{kauth_support}
917 ln -sf %{_prefix}/sbin/kas          $RPM_BUILD_ROOT%{_prefix}/afsws/etc/kas
918 %endif
919 ln -sf %{_prefix}/sbin/read_tape    $RPM_BUILD_ROOT%{_prefix}/afsws/etc/read_tape
920 ln -sf %{_prefix}/sbin/rxdebug      $RPM_BUILD_ROOT%{_prefix}/afsws/etc/rxdebug
921 ln -sf %{_prefix}/sbin/uss          $RPM_BUILD_ROOT%{_prefix}/afsws/etc/uss
922 ln -sf %{_prefix}/sbin/vos          $RPM_BUILD_ROOT%{_prefix}/afsws/etc/vos
923 ln -sf %{_prefix}/sbin/vsys         $RPM_BUILD_ROOT%{_prefix}/afsws/etc/vsys
924
925 %endif
926
927 ##############################################################################
928 ###
929 ### Install modules
930 ###
931 ##############################################################################
932 %if %{build_modules}
933
934 for kvariant in %{kvariants}
935 do
936   if [ -n "$kvariant" ] ; then
937     if [ -d _kmod_build_$kvariant/src/libafs/MODLOAD-%{kverrel}${kvariant}-SP ] ; then
938       srcdir=_kmod_build_$kvariant/src/libafs/MODLOAD-%{kverrel}${kvariant}-SP
939       dstdir=$RPM_BUILD_ROOT/lib/modules/%{kverrel}${kvariant}/extra/openafs
940     elif [ -d _kmod_build_$kvariant/src/libafs/MODLOAD-%{kverrel}.%{_target_cpu}+${kvariant}-SP ] ; then
941       srcdir=_kmod_build_$kvariant/src/libafs/MODLOAD-%{kverrel}.%{_target_cpu}+${kvariant}-SP
942       dstdir=$RPM_BUILD_ROOT/lib/modules/%{kverrel}.%{_target_cpu}+${kvariant}/extra/openafs
943     else
944       srcdir=_kmod_build_$kvariant/src/libafs/MODLOAD-%{kverrel}.%{_target_cpu}.${kvariant}-SP
945       dstdir=$RPM_BUILD_ROOT/lib/modules/%{kverrel}.%{_target_cpu}.${kvariant}/extra/openafs
946     fi
947   else
948     if [ -d src/libafs/MODLOAD-%{kverrel}-SP ] ; then
949       srcdir=src/libafs/MODLOAD-%{kverrel}-SP
950       dstdir=$RPM_BUILD_ROOT/lib/modules/%{kverrel}/extra/openafs
951     else
952       srcdir=src/libafs/MODLOAD-%{kverrel}.%{_target_cpu}-SP
953       dstdir=$RPM_BUILD_ROOT/lib/modules/%{kverrel}.%{_target_cpu}/extra/openafs
954     fi
955   fi
956
957   mkdir -p ${dstdir}
958   install -m 755 ${srcdir}/openafs.ko ${dstdir}/openafs.ko
959 done
960 %endif
961
962 ##############################################################################
963 ###
964 ### clean
965 ###
966 ##############################################################################
967 %clean
968 [ "$RPM_BUILD_ROOT" != "/" -a "x%{debugspec}" != "x1" ] && \
969         rm -fr $RPM_BUILD_ROOT
970
971
972 ##############################################################################
973 ###
974 ### scripts
975 ###
976 ##############################################################################
977 %if %{build_userspace}
978
979 %pre compat
980 if [ -e %{_prefix}/afsws ]; then
981         /bin/rm -fr %{_prefix}/afsws
982 fi
983
984 %post client
985 %if 0%{?fedora} < 15 && 0%{?rhel} < 7
986 chkconfig --add openafs-client
987 %else
988 if [ $1 -eq 1 ] ; then
989     # Initial installation
990     /bin/systemctl daemon-reload >/dev/null 2>&1 || :
991 fi
992 %endif
993 if [ ! -d /afs ]; then
994         mkdir /afs
995         chown root.root /afs
996         chmod 0755 /afs
997         [ -x /sbin/restorecon ] && /sbin/restorecon /afs
998 fi
999
1000 # Create the CellServDB
1001 [ -f /usr/vice/etc/CellServDB.local ] || touch /usr/vice/etc/CellServDB.local
1002
1003 ( cd /usr/vice/etc ; \
1004   if [ -h CellServDB ]; then \
1005     rm -f CellServDB; \
1006   fi; \
1007   cat CellServDB.local CellServDB.dist > CellServDB ; \
1008   chmod 644 CellServDB )
1009
1010 %post server
1011 #on an upgrade, don't enable if we were disabled
1012 %if 0%{?fedora} < 15 && 0%{?rhel} < 7
1013 if [ $1 = 1 ] ; then
1014   chkconfig --add openafs-server
1015 fi
1016 %{initdir}/openafs-server condrestart
1017 %else
1018 if [ $1 -eq 1 ] ; then
1019     # Initial installation
1020     /bin/systemctl daemon-reload >/dev/null 2>&1 || :
1021 fi
1022 %endif
1023
1024 %if %{build_authlibs}
1025 %post authlibs
1026 /sbin/ldconfig
1027
1028 %postun authlibs
1029 /sbin/ldconfig
1030 %endif
1031
1032 %preun
1033 if [ $1 = 0 ] ; then
1034         [ -d /afs ] && rmdir /afs
1035         :
1036 fi
1037
1038 %preun client
1039 %if 0%{?fedora} < 15 && 0%{?rhel} < 7
1040 if [ $1 = 0 ] ; then
1041         %{initdir}/openafs-client stop
1042         chkconfig --del openafs-client
1043 fi
1044 %else
1045 if [ $1 -eq 0 ] ; then
1046         # Package removal, not upgrade
1047         /bin/systemctl --no-reload disable openafs-client.service > /dev/null 2>&1 || :
1048         /bin/systemctl stop openafs-client.service > /dev/null 2>&1 || :
1049 fi
1050 %endif
1051
1052 %preun server
1053 %if 0%{?fedora} < 15 && 0%{?rhel} < 7
1054 if [ $1 = 0 ] ; then
1055         %{initdir}/openafs-server stop
1056         chkconfig --del openafs-server
1057 fi
1058 %else
1059 if [ $1 -eq 0 ] ; then
1060         /bin/systemctl --no-reload disable openafs-server.service > /dev/null 2>&1 || :
1061         /bin/systemctl stop openafs-server.service > /dev/null 2>&1 || :
1062 fi
1063 %endif
1064
1065 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
1066 %postun client
1067 /bin/systemctl daemon-reload >/dev/null 2>&1 || :
1068
1069 %postun server
1070 /bin/systemctl daemon-reload >/dev/null 2>&1 || :
1071 %endif
1072
1073 %if %{build_dkmspkg}
1074 %post -n dkms-%{name}
1075 dkms add -m %{name} -v %{dkms_version} --rpm_safe_upgrade
1076 dkms build -m %{name} -v %{dkms_version} --rpm_safe_upgrade
1077 dkms install -m %{name} -v %{dkms_version} --rpm_safe_upgrade
1078
1079 %preun -n dkms-%{name}
1080 dkms remove -m %{name} -v %{dkms_version} --rpm_safe_upgrade --all ||:
1081 %endif
1082 %endif
1083
1084 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
1085 %triggerun -- openafs-client < 1.6.0-1
1086 # Save the current service runlevel info
1087 # User must manually run systemd-sysv-convert --apply httpd
1088 # to migrate them to systemd targets
1089 /usr/bin/systemd-sysv-convert --save openafs-client >/dev/null 2>&1 ||:
1090
1091 # Run this because the SysV package being removed won't do it
1092 /sbin/chkconfig --del openafs-client >/dev/null 2>&1 || :
1093
1094 %triggerun -- openafs-server < 1.6.0-1
1095 # Save the current service runlevel info
1096 # User must manually run systemd-sysv-convert --apply httpd
1097 # to migrate them to systemd targets
1098 /usr/bin/systemd-sysv-convert --save openafs-server >/dev/null 2>&1 ||:
1099
1100 # Run this because the SysV package being removed won't do it
1101 /sbin/chkconfig --del openafs-server >/dev/null 2>&1 || :
1102 %endif
1103
1104 ##############################################################################
1105 ###
1106 ### file lists
1107 ###
1108 ##############################################################################
1109 %if %{build_userspace}
1110
1111 %files
1112 %defattr(-,root,root)
1113 %config(noreplace) /etc/sysconfig/openafs
1114 %doc %{_docdir}/openafs-%{afsvers}/LICENSE
1115 %{_bindir}/afsmonitor
1116 %{_bindir}/bos
1117 %{_bindir}/fs
1118 %{_bindir}/pagsh
1119 %{_bindir}/pts
1120 %{_bindir}/restorevol
1121 %{_bindir}/scout
1122 %{_bindir}/sys
1123 %{_bindir}/tokens
1124 %{_bindir}/translate_et
1125 %{_bindir}/xstat_cm_test
1126 %{_bindir}/xstat_fs_test
1127 %{_bindir}/udebug
1128 %{_bindir}/unlog
1129 %{_sbindir}/backup
1130 %{_sbindir}/butc
1131 %{_sbindir}/fms
1132 %{_sbindir}/fstrace
1133 %{_sbindir}/read_tape
1134 %{_sbindir}/rxdebug
1135 %{_sbindir}/rxstat_clear_peer
1136 %{_sbindir}/rxstat_clear_process
1137 %{_sbindir}/rxstat_disable_peer
1138 %{_sbindir}/rxstat_disable_process
1139 %{_sbindir}/rxstat_enable_peer
1140 %{_sbindir}/rxstat_enable_process
1141 %{_sbindir}/rxstat_get_peer
1142 %{_sbindir}/rxstat_get_process
1143 %{_sbindir}/rxstat_get_version
1144 %{_sbindir}/rxstat_query_peer
1145 %{_sbindir}/rxstat_query_process
1146 %{_sbindir}/uss
1147 %{_sbindir}/vos
1148 %{_sbindir}/vsys
1149 %{_libdir}/libafshcrypto.so.*
1150 %{_libdir}/librokenafs.so.*
1151 %{_mandir}/man1/afs.1.gz
1152 %{_mandir}/man1/afsmonitor.1.gz
1153 %{_mandir}/man1/fs.1.gz
1154 %{_mandir}/man1/fs_*.1.gz
1155 %{_mandir}/man1/pagsh.1.gz
1156 %{_mandir}/man1/pts.1.gz
1157 %{_mandir}/man1/pts_*.1.gz
1158 %{_mandir}/man1/restorevol.1.gz
1159 %{_mandir}/man1/rxdebug.1.gz
1160 %{_mandir}/man1/scout.1.gz
1161 %{_mandir}/man1/sys.1.gz
1162 %{_mandir}/man1/tokens.1.gz
1163 %{_mandir}/man1/translate_et.1.gz
1164 %{_mandir}/man1/udebug.1.gz
1165 %{_mandir}/man1/unlog.1.gz
1166 %{_mandir}/man1/vos.1.gz
1167 %{_mandir}/man1/vos_*.1.gz
1168 %{_mandir}/man1/xstat_cm_test.1.gz
1169 %{_mandir}/man1/xstat_fs_test.1.gz
1170 %{_mandir}/man5/CellServDB.5.gz
1171 %{_mandir}/man5/ThisCell.5.gz
1172 %{_mandir}/man5/afsmonitor.5.gz
1173 %{_mandir}/man5/butc.5.gz
1174 %{_mandir}/man5/butc_logs.5.gz
1175 %{_mandir}/man5/uss.5.gz
1176 %{_mandir}/man5/uss_bulk.5.gz
1177 %{_mandir}/man8/backup.8.gz
1178 %{_mandir}/man8/backup_*.8.gz
1179 %{_mandir}/man8/bos.8.gz
1180 %{_mandir}/man8/bos_*.8.gz
1181 %{_mandir}/man8/butc.8.gz
1182 %{_mandir}/man8/fms.8.gz
1183 %{_mandir}/man8/fstrace.8.gz
1184 %{_mandir}/man8/fstrace_*.8.gz
1185 %{_mandir}/man8/read_tape.8.gz
1186 %{_mandir}/man8/uss.8.gz
1187 %{_mandir}/man8/uss_*.8.gz
1188
1189 %files docs
1190 %defattr(-,root,root)
1191 %docdir %{_docdir}/openafs-%{afsvers}
1192 %dir %{_docdir}/openafs-%{afsvers}
1193 %{_docdir}/openafs-%{afsvers}/ChangeLog
1194 %{_docdir}/openafs-%{afsvers}/RELNOTES-%{afsvers}
1195 %{_docdir}/openafs-%{afsvers}/pdf
1196
1197 %files client
1198 %defattr(-,root,root)
1199 %dir %{_prefix}/vice
1200 %dir %{_prefix}/vice/cache
1201 %dir %{_prefix}/vice/etc
1202 %dir %{_prefix}/vice/etc/C
1203 %{_prefix}/vice/etc/CellServDB.dist
1204 %config(noreplace) %{_prefix}/vice/etc/ThisCell
1205 %config(noreplace) %{_prefix}/vice/etc/cacheinfo
1206 %{_bindir}/afsio
1207 %{_bindir}/cmdebug
1208 %{_bindir}/up
1209 %{_prefix}/vice/etc/afsd
1210 %{_prefix}/vice/etc/C/afszcm.cat
1211 %{_libdir}/libuafs.a
1212 %{_libdir}/libuafs_pic.a
1213 %if 0%{?fedora} < 15 && 0%{?rhel} < 7
1214 %{initdir}/openafs-client
1215 %else
1216 %{_unitdir}/openafs-client.service
1217 %{_sysconfdir}/sysconfig/modules/openafs-client.modules
1218 %endif
1219 %{_mandir}/man1/cmdebug.1.gz
1220 %{_mandir}/man1/up.1.gz
1221 %{_mandir}/man5/afs.5.gz
1222 %{_mandir}/man5/afs_cache.5.gz
1223 %{_mandir}/man5/afs_volume_header.5.gz
1224 %{_mandir}/man5/afszcm.cat.5.gz
1225 %{_mandir}/man5/cacheinfo.5.gz
1226 %{_mandir}/man8/afsd.8.gz
1227 %{_mandir}/man8/vsys.8.gz
1228 %{_mandir}/man5/CellAlias.5.gz
1229
1230 %files server
1231 %defattr(-,root,root)
1232 %dir %{_prefix}/afs
1233 %dir %{_prefix}/afs/bin
1234 %dir %{_prefix}/afs/etc
1235 %dir %{_prefix}/afs/logs
1236 %{_prefix}/afs/bin/bosserver
1237 %{_prefix}/afs/bin/bos_util
1238 %{_prefix}/afs/bin/buserver
1239 %{_prefix}/afs/bin/dafileserver
1240 %{_prefix}/afs/bin/dafssync-debug
1241 %{_prefix}/afs/bin/dasalvager
1242 %{_prefix}/afs/bin/davolserver
1243 %{_prefix}/afs/bin/fileserver
1244 %{_prefix}/afs/bin/fssync-debug
1245 %{_prefix}/afs/bin/pt_util
1246 %{_prefix}/afs/bin/ptserver
1247 %{_prefix}/afs/bin/salvager
1248 %{_prefix}/afs/bin/salvageserver
1249 %{_prefix}/afs/bin/salvsync-debug
1250 %{_prefix}/afs/bin/state_analyzer
1251 %{_prefix}/afs/bin/upclient
1252 %{_prefix}/afs/bin/upserver
1253 %{_prefix}/afs/bin/vlserver
1254 %{_prefix}/afs/bin/volinfo
1255 %{_prefix}/afs/bin/volscan
1256 %{_prefix}/afs/bin/volserver
1257 %{_sbindir}/prdb_check
1258 %{_sbindir}/vldb_check
1259 %{_sbindir}/vldb_convert
1260 %{_sbindir}/voldump
1261 %if 0%{?fedora} < 15 && 0%{?rhel} < 7
1262 %{initdir}/openafs-server
1263 %else
1264 %{_unitdir}/openafs-server.service
1265 %endif
1266 %{_mandir}/man5/BackupLog.5.gz
1267 %{_mandir}/man5/BosConfig.5.gz
1268 %{_mandir}/man5/BosLog.5.gz
1269 %{_mandir}/man5/FORCESALVAGE.5.gz
1270 %{_mandir}/man5/FileLog.5.gz
1271 %{_mandir}/man5/KeyFile.5.gz
1272 %{_mandir}/man5/KeyFileExt.5.gz
1273 %{_mandir}/man5/NetInfo.5.gz
1274 %{_mandir}/man5/NetRestrict.5.gz
1275 %{_mandir}/man5/NoAuth.5.gz
1276 %{_mandir}/man5/PtLog.5.gz
1277 %{_mandir}/man5/SALVAGE.fs.5.gz
1278 %{_mandir}/man5/SalvageLog.5.gz
1279 %{_mandir}/man5/sysid.5.gz
1280 %{_mandir}/man5/UserList.5.gz
1281 %{_mandir}/man5/VLLog.5.gz
1282 %{_mandir}/man5/VolserLog.5.gz
1283 %{_mandir}/man5/bdb.DB0.5.gz
1284 %{_mandir}/man5/fms.log.5.gz
1285 %{_mandir}/man5/krb.conf.5.gz
1286 %{_mandir}/man5/krb.excl.5.gz
1287 %{_mandir}/man5/prdb.DB0.5.gz
1288 %{_mandir}/man5/salvage.lock.5.gz
1289 %{_mandir}/man5/tapeconfig.5.gz
1290 %{_mandir}/man5/vldb.DB0.5.gz
1291 %{_mandir}/man8/bosserver.8.gz
1292 %{_mandir}/man8/buserver.8.gz
1293 %{_mandir}/man8/fileserver.8.gz
1294 %{_mandir}/man8/dafileserver.8.gz
1295 %{_mandir}/man8/dafssync-debug.8.gz
1296 %{_mandir}/man8/dafssync-debug_*.8.gz
1297 %{_mandir}/man8/dasalvager.8.gz
1298 %{_mandir}/man8/davolserver.8.gz
1299 %{_mandir}/man8/fssync-debug.8.gz
1300 %{_mandir}/man8/fssync-debug_*.8.gz
1301 %{_mandir}/man8/prdb_check.8.gz
1302 %{_mandir}/man8/ptserver.8.gz
1303 %{_mandir}/man8/pt_util.8.gz
1304 %{_mandir}/man8/salvager.8.gz
1305 %{_mandir}/man8/salvageserver.8.gz
1306 %{_mandir}/man8/state_analyzer.8.gz
1307 %{_mandir}/man8/upclient.8.gz
1308 %{_mandir}/man8/upserver.8.gz
1309 %{_mandir}/man8/vldb_check.8.gz
1310 %{_mandir}/man8/vldb_convert.8.gz
1311 %{_mandir}/man8/vlserver.8.gz
1312 %{_mandir}/man8/voldump.8.gz
1313 %{_mandir}/man8/volinfo.8.gz
1314 %{_mandir}/man8/volscan.8.gz
1315 %{_mandir}/man8/volserver.8.gz
1316
1317 %if %{build_authlibs}
1318 %files authlibs
1319 %defattr(-,root,root)
1320 %{_libdir}/libafsauthent.so.*
1321 %{_libdir}/libafsrpc.so.*
1322 %{_libdir}/libkopenafs.so.*
1323 %endif
1324
1325 %files authlibs-devel
1326 %defattr(-,root,root)
1327 %{_includedir}/kopenafs.h
1328 %{_libdir}/libafsauthent.a
1329 %{_libdir}/libafscp.a
1330 %{_libdir}/libafsrpc.a
1331 %{_libdir}/libafsauthent_pic.a
1332 %{_libdir}/libafsrpc_pic.a
1333 %{_libdir}/libkopenafs.a
1334 %if %{build_authlibs}
1335 %{_libdir}/libafsauthent.so
1336 %{_libdir}/libafsrpc.so
1337 %{_libdir}/libkopenafs.so
1338 %endif
1339
1340 %files devel
1341 %defattr(-,root,root)
1342 %{_bindir}/afs_compile_et
1343 %{_bindir}/rxgen
1344 %{_includedir}/afs
1345 %{_includedir}/lock.h
1346 %{_includedir}/lwp.h
1347 %{_includedir}/rx
1348 %{_includedir}/timer.h
1349 %{_includedir}/ubik.h
1350 %{_includedir}/ubik_int.h
1351 %{_includedir}/opr/lock.h
1352 %{_includedir}/opr/queue.h
1353 %{_libdir}/afs
1354 %{_libdir}/libafshcrypto.a
1355 %{_libdir}/libafshcrypto.so
1356 %{_libdir}/libafsrfc3961.a
1357 %{_libdir}/liblwp.a
1358 %{_libdir}/libopr.a
1359 %{_libdir}/librokenafs.a
1360 %{_libdir}/librokenafs.so
1361 %{_libdir}/librx.a
1362 %{_libdir}/librxkad.a
1363 %{_libdir}/librxstat.a
1364 %{_libdir}/libubik.a
1365 %{_mandir}/man1/rxgen.1.gz
1366 %{_mandir}/man1/afs_compile_et.1.gz
1367 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 6
1368 %{_libdir}/perl/AFS/ukernel.pm
1369 %{_libdir}/perl/ukernel.so
1370 %{_mandir}/man3/AFS::ukernel.3.gz
1371 %endif
1372
1373 %if %{build_dkmspkg}
1374 %files -n dkms-%{name}
1375 %defattr(-,root,root)
1376 %{_prefix}/src/%{name}-%{dkms_version}
1377 %endif
1378
1379 %files kernel-source
1380 %defattr(-,root,root)
1381 %{_prefix}/src/openafs-kernel-%{afsvers}/LICENSE.IBM
1382 %{_prefix}/src/openafs-kernel-%{afsvers}/LICENSE.Sun
1383 %{_prefix}/src/openafs-kernel-%{afsvers}/README
1384 %{_prefix}/src/openafs-kernel-%{afsvers}/src
1385
1386 %files compat
1387 %defattr(-,root,root)
1388 %{_prefix}/afsws/bin/afsmonitor
1389 %{_prefix}/afsws/bin/bos
1390 %{_prefix}/afsws/bin/fs
1391 %{_prefix}/afsws/bin/pagsh
1392 %{_prefix}/afsws/bin/pts
1393 %{_prefix}/afsws/bin/restorevol
1394 %{_prefix}/afsws/bin/scout
1395 %{_prefix}/afsws/bin/sys
1396 %{_prefix}/afsws/bin/tokens
1397 %{_prefix}/afsws/bin/translate_et
1398 %{_prefix}/afsws/bin/udebug
1399 %{_prefix}/afsws/bin/unlog
1400 %{_prefix}/afsws/bin/xstat_cm_test
1401 %{_prefix}/afsws/bin/xstat_fs_test
1402 %{_prefix}/afsws/etc/backup
1403 %{_prefix}/afsws/etc/butc
1404 %{_prefix}/afsws/etc/fms
1405 %{_prefix}/afsws/etc/fstrace
1406 %{_prefix}/afsws/etc/read_tape
1407 %{_prefix}/afsws/etc/rxdebug
1408 %{_prefix}/afsws/etc/uss
1409 %{_prefix}/afsws/etc/vos
1410 %{_prefix}/afsws/etc/vsys
1411 %if %{kauth_support}
1412 %{_prefix}/afsws/bin/pagsh.krb
1413 %{_prefix}/afsws/bin/tokens.krb
1414 %endif
1415
1416 %if %{kauth_support}
1417 %files kauth-client
1418 %defattr(-,root,root)
1419 %{_sbindir}/kas
1420 %{_bindir}/klog
1421 %{_bindir}/klog.krb
1422 %{pamdir}/pam_afs.krb.so.1
1423 %{pamdir}/pam_afs.krb.so
1424 %{pamdir}/pam_afs.so.1
1425 %{pamdir}/pam_afs.so
1426 %{_bindir}/kapasswd
1427 %{_bindir}/kpwvalid
1428 %{_bindir}/pagsh.krb
1429 %{_bindir}/tokens.krb
1430 %{_prefix}/afsws/bin/kapasswd
1431 %{_prefix}/afsws/bin/klog
1432 %{_prefix}/afsws/bin/klog.krb
1433 %{_prefix}/afsws/etc/kas
1434 %{_mandir}/man1/kapasswd.1.gz
1435 %{_mandir}/man1/klog.1.gz
1436 %{_mandir}/man1/klog.krb.1.gz
1437 %{_mandir}/man1/pagsh.krb.1.gz
1438 %{_mandir}/man1/tokens.krb.1.gz
1439 %{_mandir}/man8/kpwvalid.8.gz
1440 %{_mandir}/man8/kas.8.gz
1441 %{_mandir}/man8/kas_*.8.gz
1442
1443 %files kauth-server
1444 %defattr(-,root,root)
1445 %{_prefix}/afs/bin/kaserver
1446 %{_prefix}/afs/bin/ka-forwarder
1447 %{_sbindir}/kadb_check
1448 %{_mandir}/man5/AuthLog.5.gz
1449 %{_mandir}/man5/AuthLog.dir.5.gz
1450 %{_mandir}/man5/kaserver.DB0.5.gz
1451 %{_mandir}/man5/kaserverauxdb.5.gz
1452 %{_mandir}/man8/kadb_check.8.gz
1453 %{_mandir}/man8/ka-forwarder.8.gz
1454 %{_mandir}/man8/kaserver.8.gz
1455 %endif
1456
1457 %if %{krb5support}
1458 %files krb5
1459 %defattr(-,root,root)
1460 %{_bindir}/aklog
1461 %{_bindir}/klog.krb5
1462 %{_sbindir}/akeyconvert
1463 %{_sbindir}/asetkey
1464 %{_mandir}/man1/aklog.1.gz
1465 %{_mandir}/man1/klog.krb5.1.gz
1466 %{_mandir}/man8/akeyconvert.8.gz
1467 %{_mandir}/man8/asetkey.8.gz
1468 %endif
1469 %endif  # build_userspace
1470
1471 ##############################################################################
1472 ###
1473 ### openafs.spec change log
1474 ###
1475 ##############################################################################
1476 %changelog
1477 * Wed Dec 12 2007  Simon Wilkinson <simon@sxw.org.uk> 1.4.5
1478 - Make the RPM mockable
1479
1480 * Mon Oct 29 2007  Simon Wilkinson <simon@sxw.org.uk> 1.4.5
1481 - Update to match the shipped 1.4.5 RPMS
1482 - Fix the kvariant stuff to only configure the 'standard' case once
1483 - Add openafs-kvers.sh back in
1484
1485 * Wed Oct 10 2007  Simon Wilkinson <simon@sxw.org.uk> 1.4.5pre1-1
1486 - Use Fedora style kmods, which allows us to install multiple kernel types
1487
1488 * Thu Jun 07 2007  Simon Wilkinson <simon@sxw.org.uk> 1.4.4-3
1489 - Use distributed files, rather than those in packager's SOURCE directory
1490 - Remove SuidCells stuff, which was unused
1491
1492 * Fri Dec 01 2006  Derrick Brashear <shadow@dementia.org> 1.4.2-2
1493 - integrate s390x changes
1494 - allow for building libafs*.a and not libafs*.so into packages, for platforms
1495   that won't build the .so files.
1496
1497 * Wed Aug 23 2006  Derrick Brashear <shadow@dementia.org> 1.4.2-1
1498 - update to 1.4.2
1499 - use installed aklog manpage.
1500 - moduleparam patch obsoleted.
1501
1502 * Tue Aug 22 2006  Derek Atkins <warlord@MIT.EDU> 1.4.2-0.1.rc1
1503 - update to 1.4.2-rc1
1504 - hand-apply lee damon's changes to support largesmp kernels from RHEL4
1505   (but only add support for 2.6 kernels.  No need for the 2.4 kernels).
1506 - don't need the posixlock patch anymore.
1507
1508 * Wed Jul 12 2006  Derek Atkins <warlord@MIT.EDU> 1.4.2-0.beta2
1509 - update to 1.4.2-beta2
1510 - add linux2.4 posixlock API patch
1511
1512 * Mon Jun 26 2006  Derek Atkins <warlord@MIT.EDU>
1513 - moduleparam and krb524 patches no longer required in OA-CVS
1514
1515 * Wed May 17 2006  Derek Atkins <warlord@MIT.EDU>
1516 - change non-target-cpu kernel dep to a file dep
1517 - make sure we use the proper kernel version for the dependency.
1518
1519 * Tue May 16 2006  Derek Atkins <warlord@MIT.EDU>
1520 - allow users to specify local CellServDB and SuidCells entries
1521   don't overwrite user's changes.  Provide a .dist an let users
1522   make entries in a ".local"
1523 - build the CellServDB and SuidCells at client startup and at
1524   client install-time
1525 - add provideskernelarch functionality to openafs-kvers-is.sh
1526 - use that functionality to Require kernel{,-<type>}-targetcpu
1527   to get better package safety due to RPM bugs where the kernel
1528   release isn't used so you can install the kernel module against
1529   any kernel of the same major version.
1530
1531 * Mon May 15 2006  Derek Atkins <warlord@MIT.EDU>
1532 - update the README in openafs-kernel-source
1533 - fix openafs-kvers-is.sh from Alexander Bergolth's patch.
1534 - move kernel module from .../kernel/fs/openafs to .../fs/openafs/
1535
1536 * Fri Apr 21 2006  Derek Atkins <warlord@MIT.EDU>
1537 - build requires autoconf and automake for krb5support
1538   and autoconf for standard package
1539 - dont setup the krb5 migration kit (or patches) if we don't care.
1540 - require ncurses-devel to build
1541
1542 * Wed Apr 19 2006  Derek Atkins <warlord@MIT.EDU> 1.4.1-3
1543 - look for krb524 functions in libkrb524 if we can't find them
1544   in the standard locations.
1545
1546 * Tue Apr 18 2006  Derek Atkins <warlord@MIT.EDU> 1.4.1-2
1547 - fix the module_param_array macro for Linux 2.6.9.
1548
1549 * Sat Apr 15 2006  Derek Atkins <warlord@MIT.EDU> 1.4.1-1
1550 - update to 1.4.1 release.
1551 - distribute asetkey from openafs instead of krb5-migration kit
1552 - don't need to apply the FC5 patches because they are part of the distro.
1553 - install asetkey into the "proper" place
1554 - dont list a manpage twice.
1555 - package asetkey man page.  delete it when not needed.
1556
1557 * Thu Apr  6 2006  Derek Atkins <warlord@MIT.EDU>
1558 - turn authlibs back on, because RT #18767 was applied to CVS.
1559
1560 * Wed Mar 29 2006  Derek Atkins <warlord@MIT.EDU> 1.4.1rc10-1
1561 - update to 1.4.1rc10, build on FC5
1562 - fix the man pages (distribute into various packages)
1563 - include patches for FC5, RT #29112 and #29122
1564
1565 * Mon Dec 19 2005  Derek Atkins <warlord@MIT.EDU>
1566 - openafs-server shouldn't depend on the kernel module.
1567
1568 * Thu Nov 17 2005  Derek Atkins <warlord@MIT.EDU>
1569 - patch from Mike Polek <mike at pictage.com> to run depmod for
1570   the target kernel and not the running kernel.
1571
1572 * Tue Nov  8 2005  Derek Atkins <warlord@MIT.EDU>
1573 - build aklog from the openafs sources, not from the krb5 migration kit.
1574
1575 * Fri Nov  4 2005  Derek Atkins <warlord@MIT.EDU>
1576 - set openafs-kernel-source to Provide openafs-kernel
1577
1578 * Thu Oct 20 2005  Derek Atkins <warlord@MIT.EDU> 1.4.0-1
1579 - update afs-krb5 res_search patch: look for res_search and __res_search
1580 - update to 1.4.0 final
1581
1582 * Mon Oct 10 2005  Derek Atkins <warlord@MIT.EDU>
1583 - remove all kdump builds.
1584
1585 * Thu Oct  6 2005  Derek Atkins <warlord@MIT.EDU>
1586 - fix openafs-kernel-version.sh so it will build an RPM for the
1587   currently-running kernel even if it's smp on 2.6.
1588
1589 * Tue Sep 27 2005  Derek Atkins <warlord@MIT.EDU> 1.4.0rc5-1
1590 - upgrade to 1.4.0rc5
1591 - turn off authlibs packages
1592
1593 * Fri Sep 23 2005  Derek Atkins <warlord@MIT.EDU> 1.4.0rc4-2
1594 - add kmodule26 patch: fix the kernel module name on 2.6 kernels so
1595   it's called "openafs" and not "libafs".  This fixes the shutdown
1596   problem.
1597
1598 * Thu Sep 22 2005  Derek Atkins <warlord@MIT.EDU>
1599 - update kversis script, add 'kvers' operation
1600 - fix bug that 2.6 smp/hugemem kernels don't provide
1601   kernel-foo = %{kernvers} with 'smp', 'hugemem', etc.
1602 - add patch to remove res_search from the afs-krb5 configure
1603
1604 * Thu Sep 15 2005  Derek Atkins <warlord@MIT.EDU> 1.4.0rc4-1
1605 - Update to 1.4.0rc4
1606 - Update the afs-krb5 krb524 patch so it actually works on
1607   some older systems like RHEL3 that still need -lkrb524.
1608 - Update the buildall script so choose better architecture support,
1609   e.g. don't build i586 on RHEL.
1610 - Update the rebuild information in the SPEC file.
1611 - Add support for finding .EL kernels in openafs-kvers-is.sh
1612 - Add additional error messages when kernel version/type parsing fails.
1613 - Update the buildall script to use the kernel srcdir directly.
1614
1615 * Wed Sep 14 2005  Derek Atkins <warlord@MIT.EDU> 1.4.0rc3-2
1616 - Add "hugemem" to 2.4 configs
1617 - Add checks to support scripts to determine whether to build
1618   the bigmem and/or hugemem kernels for 2.4.
1619
1620 * Mon Sep 12 2005  Derek Atkins <warlord@MIT.EDU> 1.4.0rc3-1
1621 - Added some afs-krb5 patches to get the migration kit to build
1622   on modern AFS and modern Kerberos.
1623 - Added authlibs and authlibs-devel packages as per UMich changes.
1624
1625 * Sun Sep 11 2005  Derek Atkins <warlord@MIT.EDU>
1626 - Merged in some of the 2.6 changes from wingc@engin.umich.edu
1627
1628 * Sat Sep 10 2005  Derek Atkins <warlord@MIT.EDU>
1629 - Merged in lots of changes from David Howells and Nalin Dahyabhai
1630   from Red Hat.   Initial attempt at a release of 1.4.  Still need
1631   to work in a 2.6 build system.