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