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