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