1 # Openafs Spec $Revision$
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@
9 %{!?build_dkmspkg: %define build_dkmspkg 1}
12 # Determine presence of rpmbuild command line --define arguments and set
13 # defaults if not present.
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}
19 %if !%{build_userspace_on_cmdline}
20 %define build_userspace 1
22 %if !%{build_modules_on_cmdline}
23 %define build_modules 1
25 %if !%{debugspec_on_cmdline}
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}
33 # Specify '--without authlibs' if you do not want to build the openafs-authlibs
35 %define build_authlibs %{?_without_authlibs:0}%{!?_without_authlibs:1}
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}
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}
48 %if 0%{?fedora} >= 17 || 0%{?rhel} >= 7
49 %define depmod /usr/sbin/depmod
51 %define depmod /sbin/depmod
54 %define kmodtool bash %{_sourcedir}/openafs-kmodtool
56 %define kmod_name openafs
57 %define kverrel %(%{kmodtool} verrel %{?kernvers} 2>/dev/null)
60 %{!?kvariants: %define kvariants %{?upvar}}
62 %if %{?ksrcdir:1}%{!?ksrcdir:0}
63 if ( -d %{_usrsrc}/kernels/%{kverrel}-%{_target_cpu}) ; then
64 %define ksrcdir %{_usrsrc}/kernels/%{kverrel}-%{_target_cpu}}
66 %define ksrcdir %{_usrsrc}/kernels/%{kverrel}.%{_target_cpu}}
70 %define dkms_version %{pkgvers}-%{pkgrel}%{?dist}
72 # Define the location of your init.d directory
73 %define initdir /etc/rc.d/init.d
75 #determine if the kernel provides an arch-specific Provides
76 %define kprovidesarch %(%{kversis} provideskernelarch %{ksrcdir} %{_target_cpu})
78 # Define the location of the PAM security module directory
79 %define pamdir /%{_lib}/security
81 Summary: OpenAFS distributed filesystem
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
94 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 6
95 BuildRequires: perl-devel, swig
97 BuildRequires: perl(ExtUtils::Embed)
99 BuildRequires: krb5-devel
102 BuildRequires: kernel-devel
105 ExclusiveArch: %{ix86} x86_64 ia64 s390 s390x sparc64 ppc ppc64 aarch64
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}
112 Source10: http://www.openafs.org/dl/openafs/%{afsvers}/RELNOTES-%{afsvers}
113 Source11: http://www.openafs.org/dl/openafs/%{afsvers}/ChangeLog
115 Source20: https://www.central.org/dl/cellservdb/CellServDB.2018-05-14
117 Source996: openafs-kvers-is.sh
118 Source997: openafs-buildfedora.pl
119 Source998: openafs-buildall.sh
120 Source999: openafs-kmodtool
123 The AFS distributed filesystem. AFS is a distributed filesystem
124 allowing cross-platform sharing of files among multiple computers.
125 Facilities are provided for access control, authentication, backup and
126 administrative management.
128 This package provides common files shared across all the various
129 OpenAFS packages but are not necessarily tied to a client or server.
131 The OpenAFS SRPM can be rebuilt with the following options to control
134 --define "kernvers 3.19.3-100.fc20.i686" Specify the specific kernel version
135 to build modules against. The default is
136 to build against the currently-running
138 --define "kbase /lib/modules/" The base location to look for kernel headers
139 --define "kend /build" The 'end' location to look for kernels
140 The build will define ksrvdir as
141 %%{kbase}<kernvers>%%{kend}
143 --without authlibs Disable authlibs package (default: with authlibs)
144 --without krb5 Disable krb5 support (default: with krb5)
145 --with bitmap-later Enable "bitmap later" support
146 --with bos-restricted Enable "bos restricted" mode
147 --with supergroups Enable "supergroups"
148 --with kauth Build the openafs-kauth-server and openafs-kauth-client
149 packages which contain the legacy kaserver and
150 related programs. (default: --without kauth)
152 --target=i386 The target architecture to build for.
154 --define "build_userspace 1" Request building of userspace tools
155 --define "build_modules 1" Request building of kernel modules
156 You probably never need to specify these.
158 --define "kmoddir /lib/modules" This is the base location where modules
159 will be installed. You probably don't
160 need to change this ever.
162 --define "kvariants <variants>" When building Fedora style kernel modules,
163 this defines the set of kernel variants
165 <variants> is a space seperated list which
166 may contain one or more of
167 '' (for the generic kernel), smp, PAE, xen
170 To a kernel module for your running kernel, just run:
171 rpmbuild --rebuild --target=`uname -m` openafs-%{pkgvers}-%{pkgrel}%{?dist}.src.rpm
173 ##############################################################################
175 # build the userspace side of things if so requested
177 ##############################################################################
178 %if %{build_userspace}
181 Requires: binutils, openafs = %{version}
182 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
183 Requires: systemd-units
184 Requires(post): systemd-units, systemd-sysv
185 Requires(preun): systemd-units
186 Requires(postun): systemd-units
189 Requires: %{name}-kmod >= %{version}
190 Provides: %{name}-kmod-common = %{version}
192 Summary: OpenAFS Filesystem Client
193 Group: Networking/Filesystem
196 The AFS distributed filesystem. AFS is a distributed filesystem
197 allowing cross-platform sharing of files among multiple computers.
198 Facilities are provided for access control, authentication, backup and
199 administrative management.
201 This package provides basic client support to mount and manipulate
205 Requires: openafs = %{version}
206 Summary: OpenAFS Filesystem Server
207 Group: Networking/Filesystems
208 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
209 Requires: systemd-units
210 Requires(post): systemd-units, systemd-sysv
211 Requires(preun): systemd-units
212 Requires(postun): systemd-units
216 The AFS distributed filesystem. AFS is a distributed filesystem
217 allowing cross-platform sharing of files among multiple computers.
218 Facilities are provided for access control, authentication, backup and
219 administrative management.
221 This package provides basic server support to host files in an AFS
225 %package -n dkms-%{name}
226 Summary: DKMS-ready kernel source for AFS distributed filesystem
227 Group: Development/Kernel
228 Provides: openafs-kernel = %{version}
229 Provides: %{name}-kmod = %{version}
233 Requires: %{name}-kmod-common = %{version}
235 %description -n dkms-%{name}
236 The AFS distributed filesystem. AFS is a distributed filesystem
237 allowing cross-platform sharing of files among multiple computers.
238 Facilities are provided for access control, authentication, backup and
239 administrative management.
241 This package provides the source code to allow DKMS to build an
245 %if %{build_authlibs}
247 Summary: OpenAFS authentication shared libraries
248 Group: Networking/Filesystems
250 %description authlibs
251 The AFS distributed filesystem. AFS is a distributed filesystem
252 allowing cross-platform sharing of files among multiple computers.
253 Facilities are provided for access control, authentication, backup and
254 administrative management.
256 This package provides a shared version of libafsrpc and libafsauthent.
257 None of the programs included with OpenAFS currently use these shared
258 libraries; however, third-party software that wishes to perform AFS
259 authentication may link against them.
262 %package authlibs-devel
263 %if %{build_authlibs}
264 Requires: openafs-authlibs = %{version}-%{release}
266 Requires: openafs-devel = %{version}-%{release}
267 Summary: OpenAFS shared library development
268 Group: Development/Filesystems
270 %description authlibs-devel
271 The AFS distributed filesystem. AFS is a distributed filesystem
272 allowing cross-platform sharing of files among multiple computers.
273 Facilities are provided for access control, authentication, backup and
274 administrative management.
276 This package includes the static versions of libafsrpc and
277 libafsauthent, and symlinks required for building against the dynamic
281 Summary: OpenAFS Development Libraries and Headers
282 Group: Development/Filesystems
283 Requires: openafs = %{version}-%{release}
286 The AFS distributed filesystem. AFS is a distributed filesystem
287 allowing cross-platform sharing of files among multiple computers.
288 Facilities are provided for access control, authentication, backup and
289 administrative management.
291 This package provides static development libraries and headers needed
292 to compile AFS applications. Note: AFS currently does not provide
296 Summary: OpenAFS user and administrator documentation
297 Requires: openafs = %{version}-%{release}
298 Group: Networking/Filesystems
301 The AFS distributed filesystem. AFS is a distributed filesystem
302 allowing cross-platform sharing of files among multiple computers.
303 Facilities are provided for access control, authentication, backup and
304 administrative management.
306 This package provides HTML documentation for OpenAFS users and system
309 %package kernel-source
310 Summary: OpenAFS Kernel Module source tree
311 Group: Networking/Filesystems
312 Provides: openafs-kernel = %{version}
313 Provides: %{name}-kmod = %{version}
315 %description kernel-source
316 The AFS distributed filesystem. AFS is a distributed filesystem
317 allowing cross-platform sharing of files among multiple computers.
318 Facilities are provided for access control, authentication, backup and
319 administrative management.
321 This package provides the source code to build your own AFS kernel
325 Summary: OpenAFS client compatibility symlinks
326 Requires: openafs = %{version}, openafs-client = %{version}
327 Group: Networking/Filesystems
328 Obsoletes: openafs-client-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.
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
342 %package kauth-client
343 Summary: OpenAFS Kauth Client support
345 Group: Networking/Filesystems
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.
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.
358 %package kauth-server
359 Summary: OpenAFS Kauth Server support
361 Group: Networking/Filesystems
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.
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.
376 Summary: OpenAFS programs to use with krb5
377 Requires: openafs = %{version}
378 Group: Networking/Filesystems
379 BuildRequires: krb5-devel
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.
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.
394 ##############################################################################
396 # build the kernel modules if so requested
398 ##############################################################################
401 %{expand:%(%{kmodtool} rpmtemplate %{kmod_name} %{kverrel} %{depmod} %{kvariants} 2>/dev/null)}
405 ##############################################################################
409 ##############################################################################
413 : @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
415 : @@@ kernel version: %{kverrel}
416 : @@@ kernel variations: %{kvariants}
417 : @@@ PAM modules dir: %{pamdir}
418 : @@@ build userspace: %{build_userspace}
419 : @@@ build modules: %{build_modules}
421 : @@@ target cpu: %{_target_cpu}
423 : @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
425 # Install OpenAFS src and doc
426 #%setup -q -n %{srcdir}
427 %setup -q -b 1 -n %{srcdir}
429 ##############################################################################
433 ##############################################################################
436 x86_64) sysname=amd64_linux26 ;;
437 alpha*) sysname=alpha_linux_26 ;;
438 i386|i486|i586|i686|athlon) sysname=i386_linux26 ;;
439 aarch64) sysname=arm64_linux26 ;;
440 *) sysname=%{_arch}_linux26 ;;
444 archlist="i386 i586 i686 athlon"
445 %if %{bootkernelsupport}
446 archlist="${archlist} BOOT"
453 # PrintDefine var value statements file
458 echo "#ifndef $1" >> $4
463 echo "#undef $1" >> $4
468 echo "#define $1 $2" >> $4
478 echo "#include $1" >> $4
488 # PrintRedhatKernelFix arch mp file
489 PrintRedhatKernelFix() {
503 largesmp) largesmp=1;;
507 echo "$2 not supported"
516 PrintDefine "REDHAT_FIX_H" "" ifn,def,nl $file
518 PrintDefine __BOOT_KERNEL_ENTERPRISE $ent und,def,nl $file
519 PrintDefine __BOOT_KERNEL_BIGMEM $bigmem und,def,nl $file
520 PrintDefine __BOOT_KERNEL_HUGEMEM $hugemem und,def,nl $file
521 PrintDefine __BOOT_KERNEL_SMP $smp und,def,nl $file
522 PrintDefine __BOOT_KERNEL_LARGESMP $largesmp und,def,nl $file
523 PrintDefine __BOOT_KERNEL_UP $up und,def,nl $file
524 PrintDefine __BOOT_KERNEL_BOOT $boot und,def,nl $file
525 PrintDefine __BOOT_KERNEL_BOOTSMP $bootsmp und,def,nl $file
527 PrintDefine '"/boot/kernel.h"' "" inc,nl $file # include file
529 for ar in $archlist ; do
530 if [ "$ar" = "$arch" ]; then
531 PrintDefine "__MODULE_KERNEL_$ar" "1" ifn,def,end $file
533 PrintDefine "__MODULE_KERNEL_$ar" "" und $file # undef
538 PrintDefine "" "" end $file
540 if [ %{debugspec} = 1 ] ; then
541 echo "Kernel Configuration File for Red Hat kernels:"
546 config_opts="--enable-redhat-buildsys \
547 %{?_with_kauth:--enable-kauth} \
548 %{?_with_bitmap_later:--enable-bitmap-later} \
549 %{?_with_bos_restricted:--enable-bos-restricted-mode} \
550 %{?_with_supergroups:--enable-supergroups} \
551 --enable-transarc-paths"
555 # If we're using Fedora kmods, work out which is the best kernel module to
556 # use for the userland configuration step. If no variants have been specified,
557 # then use the standard kernel. If variants are specified, use the standard kernel
558 # if it's listed, otherwise pick the first listed kernel.
560 for kvariant in %{kvariants} ; do
561 if [ -z "${kvariant}" -o -z "$ksrc" ] ; then
562 if [ -d %{_usrsrc}/kernels/%{kverrel}${kvariant:+-$kvariant}-%{_target_cpu} ] ; then
563 ksrc=%{_usrsrc}/kernels/%{kverrel}${kvariant:+-$kvariant}-%{_target_cpu}
564 elif [ -d %{_usrsrc}/kernels/%{kverrel}.%{_target_cpu}${kvariant:++$kvariant} ] ; then
565 ksrc=%{_usrsrc}/kernels/%{kverrel}.%{_target_cpu}${kvariant:++$kvariant}
567 ksrc=%{_usrsrc}/kernels/%{kverrel}.%{_target_cpu}${kvariant:+.$kvariant}
571 if [ -z "$ksrc" ] ; then
575 CFLAGS="$RPM_OPT_FLAGS"; export CFLAGS
578 %if %{?krb5config:1}%{!?krb5config:0}
579 KRB5_CONFIG="%{krb5config}"
584 ./configure --with-afs-sysname=${sysname} \
585 --prefix=%{_prefix} \
586 --libdir=%{_libdir} \
587 --bindir=%{_bindir} \
588 --sbindir=%{_sbindir} \
589 --disable-strip-binaries \
591 --with-linux-kernel-packaging \
593 --with-linux-kernel-headers=${ksrc} \
595 --disable-kernel-module \
600 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 6
608 # Build the libafs tree
609 make %{_smp_mflags} only_libafs_tree || exit 1
612 %if %{?krb5config:1}%{!?krb5config:0}
613 KRB5_CONFIG="%{krb5config}"
618 # Configure each of our kernel modules
621 for kvariant in %{kvariants} ; do
622 if [ -n "${kvariant}" ] ; then
624 if [ -d %{_usrsrc}/kernels/%{kverrel}${kvariant:+-$kvariant}-%{_target_cpu} ] ; then
625 ksrc=%{_usrsrc}/kernels/%{kverrel}${kvariant:+-$kvariant}-%{_target_cpu}
627 elif [ -d %{_usrsrc}/kernels/%{kverrel}.%{_target_cpu}${kvariant:++$kvariant} ] ; then
628 # Fedora 20 started putting kernel sources in e.g.
629 # 3.12.5-302.fc20.i686+PAE, instead of:
630 # 3.12.5-302.fc20.i686.PAE
631 ksrc=%{_usrsrc}/kernels/%{kverrel}.%{_target_cpu}${kvariant:++$kvariant}
634 ksrc=%{_usrsrc}/kernels/%{kverrel}.%{_target_cpu}${kvariant:+.$kvariant}
637 cp -R libafs_tree _kmod_build_${kvariant}
638 pushd _kmod_build_${kvariant}
639 ./configure --with-afs-sysname=${sysname} \
640 --prefix=%{_prefix} \
641 --libdir=%{_libdir} \
642 --bindir=%{_bindir} \
643 --sbindir=%{_sbindir} \
644 --with-linux-kernel-packaging \
645 --with-linux-kernel-headers=${ksrc} \
656 %if %{build_userspace}
657 # Build the user-space AFS stuff
658 make %{_smp_mflags} all_nolibafs
662 for kvariant in %{kvariants}
664 if [ -n "${kvariant}" ] ; then
665 pushd _kmod_build_$kvariant;
666 make %{_smp_mflags} all
669 make %{_smp_mflags} libafs
675 ##############################################################################
679 ##############################################################################
682 export DONT_GPRINTIFY=1 # Do not modify initscripts.
684 [ $RPM_BUILD_ROOT != / ] && rm -rf $RPM_BUILD_ROOT
686 ##############################################################################
688 ### Install userspace
690 ##############################################################################
691 %if %{build_userspace}
693 #-----------------------------------------------------------------------------
694 # Install userspace files
695 #-----------------------------------------------------------------------------
696 make %{_smp_mflags} install_nolibafs DESTDIR="$RPM_BUILD_ROOT"
698 # Set the executable bit on libraries in libdir, so rpmbuild knows to
699 # create "Provides" entries in the package metadata for the libraries
700 chmod +x $RPM_BUILD_ROOT%{_libdir}/*.so*
702 # Exclude duplicated files.
703 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/bos
704 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/fs
706 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/kas
707 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/klog
708 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/klog.krb
709 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/kpwvalid
710 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/tokens.krb
711 rm -f $RPM_BUILD_ROOT%{_sbindir}/kpwvalid
713 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/pts
714 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/tokens
715 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/udebug
716 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/vos
718 # Exclude obsolete or unused files.
719 rm -f $RPM_BUILD_ROOT%{_bindir}/dlog
720 rm -f $RPM_BUILD_ROOT%{_bindir}/dpass
721 rm -f $RPM_BUILD_ROOT%{_bindir}/install
722 rm -f $RPM_BUILD_ROOT%{_bindir}/knfs
723 rm -f $RPM_BUILD_ROOT%{_bindir}/livesys
724 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/kdb
725 rm -f $RPM_BUILD_ROOT%{_sbindir}/rmtsysd
726 rm -rf $RPM_BUILD_ROOT%{_sbindir}/kdump*
727 %if !%{build_authlibs}
728 rm -f $RPM_BUILD_ROOT%{_libdir}/libafsauthent.so*
729 rm -f $RPM_BUILD_ROOT%{_libdir}/libafsrpc.so*
730 rm -f $RPM_BUILD_ROOT%{_libdir}/libkopenafs.so*
732 rm -f $RPM_BUILD_ROOT%{_sbindir}/afsd.fuse
733 %if !%{kauth_support}
734 rm -f $RPM_BUILD_ROOT%{_prefix}/afs/bin/tokens.krb
735 rm -f $RPM_BUILD_ROOT%{_bindir}/tokens.krb
736 rm -f $RPM_BUILD_ROOT%{_bindir}/pagsh.krb
739 # Relocate afsd to legacy path to match init scripts.
740 mv $RPM_BUILD_ROOT%{_sbindir}/afsd $RPM_BUILD_ROOT%{_prefix}/vice/etc/afsd
742 # Relocate admin utilities to a modern path.
744 mv $RPM_BUILD_ROOT%{_prefix}/afs/bin/kadb_check $RPM_BUILD_ROOT%{_sbindir}/kadb_check
746 mv $RPM_BUILD_ROOT%{_prefix}/afs/bin/prdb_check $RPM_BUILD_ROOT%{_sbindir}/prdb_check
747 mv $RPM_BUILD_ROOT%{_prefix}/afs/bin/vldb_check $RPM_BUILD_ROOT%{_sbindir}/vldb_check
748 mv $RPM_BUILD_ROOT%{_prefix}/afs/bin/vldb_convert $RPM_BUILD_ROOT%{_sbindir}/vldb_convert
750 mv $RPM_BUILD_ROOT%{_prefix}/afs/bin/akeyconvert $RPM_BUILD_ROOT%{_sbindir}/akeyconvert
751 mv $RPM_BUILD_ROOT%{_prefix}/afs/bin/asetkey $RPM_BUILD_ROOT%{_sbindir}/asetkey
755 # Relocate PAM files to the standard PAM module path.
756 mkdir -p $RPM_BUILD_ROOT%{pamdir}
757 mv $RPM_BUILD_ROOT%{_libdir}/pam_afs.krb.so $RPM_BUILD_ROOT%{pamdir}
758 mv $RPM_BUILD_ROOT%{_libdir}/pam_afs.so $RPM_BUILD_ROOT%{pamdir}
759 ln -sf pam_afs.so $RPM_BUILD_ROOT%{pamdir}/pam_afs.so.1
760 ln -sf pam_afs.krb.so $RPM_BUILD_ROOT%{pamdir}/pam_afs.krb.so.1
762 # Rename kpasswd to avoid conflicting with krb5 kpasswd.
763 mv $RPM_BUILD_ROOT%{_bindir}/kpasswd $RPM_BUILD_ROOT%{_bindir}/kapasswd
764 mv $RPM_BUILD_ROOT%{_mandir}/man1/kpasswd.1 $RPM_BUILD_ROOT%{_mandir}/man1/kapasswd.1
767 # Exclude obsolete or unused man pages.
768 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/afs_ftpd.1
769 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/afs_inetd.1
770 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/afs_login.1
771 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/afs_rcp.1
772 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/afs_rlogind.1
773 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/afs_rsh.1
774 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/dkload.1
775 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/knfs.1
776 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/package.1
777 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/runntp.1
778 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/symlink.1
779 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/symlink_list.1
780 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/symlink_make.1
781 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/symlink_remove.1
782 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/dlog.*
783 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/copyauth.*
784 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/dpass.*
785 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/livesys.*
786 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/afsd.fuse.8
787 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/rmtsysd.*
788 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/aklog_dynamic_auth.*
789 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/kdb.*
790 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/xfs_size_check.*
791 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/package_test.*
792 rm -f $RPM_BUILD_ROOT%{_mandir}/man5/package.*
793 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/package.*
795 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/akeyconvert.*
796 rm -f $RPM_BUILD_ROOT%{_mandir}/man8/asetkey.*
798 %if !%{kauth_support}
799 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/pagsh.krb.1
800 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/tokens.krb.1
801 rm -f $RPM_BUILD_ROOT%{_mandir}/man5/AuthLog.5
802 rm -f $RPM_BUILD_ROOT%{_mandir}/man5/AuthLog.dir.5
804 %if !(0%{?fedora} >= 15 || 0%{?rhel} >= 6)
805 rm -f $RPM_BUILD_ROOT%{_mandir}/man3/AFS::ukernel.3
808 #-----------------------------------------------------------------------------
809 # Install client and server initscripts/systemd files
810 #-----------------------------------------------------------------------------
811 mkdir -p $RPM_BUILD_ROOT/etc/sysconfig
812 install -m 755 src/packaging/RedHat/openafs.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/openafs
813 %if 0%{?fedora} < 15 && 0%{?rhel} < 7
814 mkdir -p $RPM_BUILD_ROOT%{initdir}
815 install -m 755 src/packaging/RedHat/openafs-client.init $RPM_BUILD_ROOT%{initdir}/openafs-client
816 install -m 755 src/packaging/RedHat/openafs-server.init $RPM_BUILD_ROOT%{initdir}/openafs-server
818 mkdir -p $RPM_BUILD_ROOT%{_unitdir}
819 mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/modules
820 install -m 644 src/packaging/RedHat/openafs-client.service $RPM_BUILD_ROOT%{_unitdir}/openafs-client.service
821 install -m 755 src/packaging/RedHat/openafs-client.modules $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/modules/openafs-client.modules
822 install -m 644 src/packaging/RedHat/openafs-server.service $RPM_BUILD_ROOT%{_unitdir}/openafs-server.service
825 #-----------------------------------------------------------------------------
826 # Install server directories.
827 #-----------------------------------------------------------------------------
828 mkdir -p $RPM_BUILD_ROOT%{_prefix}/afs/etc
829 mkdir -p $RPM_BUILD_ROOT%{_prefix}/afs/logs
831 #-----------------------------------------------------------------------------
832 # Install client directories and config files.
833 #-----------------------------------------------------------------------------
834 mkdir -p $RPM_BUILD_ROOT%{_prefix}/vice/etc
835 mkdir -p $RPM_BUILD_ROOT%{_prefix}/vice/cache
836 chmod 700 $RPM_BUILD_ROOT%{_prefix}/vice/cache
837 install -p -m 644 src/packaging/RedHat/openafs-ThisCell $RPM_BUILD_ROOT%{_prefix}/vice/etc/ThisCell
838 install -p -m 644 %{SOURCE20} $RPM_BUILD_ROOT%{_prefix}/vice/etc/CellServDB.dist
839 install -p -m 644 src/packaging/RedHat/openafs-cacheinfo $RPM_BUILD_ROOT%{_prefix}/vice/etc/cacheinfo
841 #-----------------------------------------------------------------------------
842 # Install DKMS source.
843 #-----------------------------------------------------------------------------
844 install -d -m 755 $RPM_BUILD_ROOT%{_prefix}/src
845 cp -a libafs_tree $RPM_BUILD_ROOT%{_prefix}/src/%{name}-%{dkms_version}
847 cat > $RPM_BUILD_ROOT%{_prefix}/src/%{name}-%{dkms_version}/dkms.conf <<"EOF"
849 PACKAGE_VERSION="%{dkms_version}"
851 # Items below here should not have to change with each driver version.
852 PACKAGE_NAME="%{name}"
853 MAKE[0]='./configure --with-linux-kernel-headers=${kernel_source_dir} --with-linux-kernel-packaging && make && case "${kernelver_array[0]}${kernelver[0]}" in 2.4.*) mv src/libafs/MODLOAD-*/libafs-* openafs.o ;; *) mv src/libafs/MODLOAD-*/openafs.ko . ;; esac'
854 CLEAN="make -C src/libafs clean"
856 BUILT_MODULE_NAME[0]="$PACKAGE_NAME"
857 DEST_MODULE_LOCATION[0]="/extra/$PACKAGE_NAME/"
860 NO_WEAK_MODULES="true"
864 #-----------------------------------------------------------------------------
865 # Install the kernel module source tree.
866 #-----------------------------------------------------------------------------
867 mkdir -p $RPM_BUILD_ROOT%{_prefix}/src/openafs-kernel-%{afsvers}/src
868 tar cf - -C libafs_tree . | \
869 tar xf - -C $RPM_BUILD_ROOT%{_prefix}/src/openafs-kernel-%{afsvers}/src
870 install -m 644 LICENSE $RPM_BUILD_ROOT%{_prefix}/src/openafs-kernel-%{afsvers}/LICENSE.IBM
871 install -m 644 src/packaging/RedHat/openafs-LICENSE.Sun $RPM_BUILD_ROOT%{_prefix}/src/openafs-kernel-%{afsvers}/LICENSE.Sun
872 install -m 644 src/packaging/RedHat/openafs-README $RPM_BUILD_ROOT%{_prefix}/src/openafs-kernel-%{afsvers}/README
874 #-----------------------------------------------------------------------------
875 # Install documentation.
876 #-----------------------------------------------------------------------------
877 mkdir -p $RPM_BUILD_ROOT/$RPM_DOC_DIR/openafs-%{afsvers}
878 tar cf - -C doc LICENSE html pdf | \
879 tar xf - -C $RPM_BUILD_ROOT/$RPM_DOC_DIR/openafs-%{afsvers}
880 install -m 644 %{SOURCE10} $RPM_BUILD_ROOT/$RPM_DOC_DIR/openafs-%{afsvers}
881 install -m 644 %{SOURCE11} $RPM_BUILD_ROOT/$RPM_DOC_DIR/openafs-%{afsvers}
883 #-----------------------------------------------------------------------------
884 # Install compatiblity links.
885 #-----------------------------------------------------------------------------
886 mkdir -p $RPM_BUILD_ROOT%{_prefix}/afsws/bin
887 mkdir -p $RPM_BUILD_ROOT%{_prefix}/afsws/etc
888 ln -sf %{_prefix}/bin/afsmonitor $RPM_BUILD_ROOT%{_prefix}/afsws/bin/afsmonitor
889 ln -sf %{_prefix}/bin/bos $RPM_BUILD_ROOT%{_prefix}/afsws/bin/bos
890 ln -sf %{_prefix}/bin/fs $RPM_BUILD_ROOT%{_prefix}/afsws/bin/fs
892 ln -sf %{_prefix}/bin/kapasswd $RPM_BUILD_ROOT%{_prefix}/afsws/bin/kapasswd
893 ln -sf %{_prefix}/bin/klog $RPM_BUILD_ROOT%{_prefix}/afsws/bin/klog
894 ln -sf %{_prefix}/bin/klog.krb $RPM_BUILD_ROOT%{_prefix}/afsws/bin/klog.krb
895 ln -sf %{_prefix}/bin/pagsh.krb $RPM_BUILD_ROOT%{_prefix}/afsws/bin/pagsh.krb
896 ln -sf %{_prefix}/bin/tokens.krb $RPM_BUILD_ROOT%{_prefix}/afsws/bin/tokens.krb
898 ln -sf %{_prefix}/bin/pagsh $RPM_BUILD_ROOT%{_prefix}/afsws/bin/pagsh
899 ln -sf %{_prefix}/bin/pts $RPM_BUILD_ROOT%{_prefix}/afsws/bin/pts
900 ln -sf %{_prefix}/bin/restorevol $RPM_BUILD_ROOT%{_prefix}/afsws/bin/restorevol
901 ln -sf %{_prefix}/bin/scout $RPM_BUILD_ROOT%{_prefix}/afsws/bin/scout
902 ln -sf %{_prefix}/bin/sys $RPM_BUILD_ROOT%{_prefix}/afsws/bin/sys
903 ln -sf %{_prefix}/bin/tokens $RPM_BUILD_ROOT%{_prefix}/afsws/bin/tokens
904 ln -sf %{_prefix}/bin/translate_et $RPM_BUILD_ROOT%{_prefix}/afsws/bin/translate_et
905 ln -sf %{_prefix}/bin/xstat_cm_test $RPM_BUILD_ROOT%{_prefix}/afsws/bin/xstat_cm_test
906 ln -sf %{_prefix}/bin/xstat_fs_test $RPM_BUILD_ROOT%{_prefix}/afsws/bin/xstat_fs_test
907 ln -sf %{_prefix}/bin/udebug $RPM_BUILD_ROOT%{_prefix}/afsws/bin/udebug
908 ln -sf %{_prefix}/bin/unlog $RPM_BUILD_ROOT%{_prefix}/afsws/bin/unlog
909 ln -sf %{_prefix}/sbin/backup $RPM_BUILD_ROOT%{_prefix}/afsws/etc/backup
910 ln -sf %{_prefix}/sbin/butc $RPM_BUILD_ROOT%{_prefix}/afsws/etc/butc
911 ln -sf %{_prefix}/sbin/fms $RPM_BUILD_ROOT%{_prefix}/afsws/etc/fms
912 ln -sf %{_prefix}/sbin/fstrace $RPM_BUILD_ROOT%{_prefix}/afsws/etc/fstrace
914 ln -sf %{_prefix}/sbin/kas $RPM_BUILD_ROOT%{_prefix}/afsws/etc/kas
916 ln -sf %{_prefix}/sbin/read_tape $RPM_BUILD_ROOT%{_prefix}/afsws/etc/read_tape
917 ln -sf %{_prefix}/sbin/rxdebug $RPM_BUILD_ROOT%{_prefix}/afsws/etc/rxdebug
918 ln -sf %{_prefix}/sbin/uss $RPM_BUILD_ROOT%{_prefix}/afsws/etc/uss
919 ln -sf %{_prefix}/sbin/vos $RPM_BUILD_ROOT%{_prefix}/afsws/etc/vos
920 ln -sf %{_prefix}/sbin/vsys $RPM_BUILD_ROOT%{_prefix}/afsws/etc/vsys
924 ##############################################################################
928 ##############################################################################
931 for kvariant in %{kvariants}
933 if [ -n "$kvariant" ] ; then
934 if [ -d _kmod_build_$kvariant/src/libafs/MODLOAD-%{kverrel}${kvariant}-SP ] ; then
935 srcdir=_kmod_build_$kvariant/src/libafs/MODLOAD-%{kverrel}${kvariant}-SP
936 dstdir=$RPM_BUILD_ROOT/lib/modules/%{kverrel}${kvariant}/extra/openafs
937 elif [ -d _kmod_build_$kvariant/src/libafs/MODLOAD-%{kverrel}.%{_target_cpu}+${kvariant}-SP ] ; then
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
941 srcdir=_kmod_build_$kvariant/src/libafs/MODLOAD-%{kverrel}.%{_target_cpu}.${kvariant}-SP
942 dstdir=$RPM_BUILD_ROOT/lib/modules/%{kverrel}.%{_target_cpu}.${kvariant}/extra/openafs
945 if [ -d src/libafs/MODLOAD-%{kverrel}-SP ] ; then
946 srcdir=src/libafs/MODLOAD-%{kverrel}-SP
947 dstdir=$RPM_BUILD_ROOT/lib/modules/%{kverrel}/extra/openafs
949 srcdir=src/libafs/MODLOAD-%{kverrel}.%{_target_cpu}-SP
950 dstdir=$RPM_BUILD_ROOT/lib/modules/%{kverrel}.%{_target_cpu}/extra/openafs
955 install -m 755 ${srcdir}/openafs.ko ${dstdir}/openafs.ko
959 ##############################################################################
963 ##############################################################################
965 [ "$RPM_BUILD_ROOT" != "/" -a "x%{debugspec}" != "x1" ] && \
966 rm -fr $RPM_BUILD_ROOT
969 ##############################################################################
973 ##############################################################################
974 %if %{build_userspace}
977 if [ -e %{_prefix}/afsws ]; then
978 /bin/rm -fr %{_prefix}/afsws
982 %if 0%{?fedora} < 15 && 0%{?rhel} < 7
983 chkconfig --add openafs-client
985 if [ $1 -eq 1 ] ; then
986 # Initial installation
987 /bin/systemctl daemon-reload >/dev/null 2>&1 || :
990 if [ ! -d /afs ]; then
994 [ -x /sbin/restorecon ] && /sbin/restorecon /afs
997 # Create the CellServDB
998 [ -f /usr/vice/etc/CellServDB.local ] || touch /usr/vice/etc/CellServDB.local
1000 ( cd /usr/vice/etc ; \
1001 if [ -h CellServDB ]; then \
1004 cat CellServDB.local CellServDB.dist > CellServDB ; \
1005 chmod 644 CellServDB )
1008 #on an upgrade, don't enable if we were disabled
1009 %if 0%{?fedora} < 15 && 0%{?rhel} < 7
1010 if [ $1 = 1 ] ; then
1011 chkconfig --add openafs-server
1013 %{initdir}/openafs-server condrestart
1015 if [ $1 -eq 1 ] ; then
1016 # Initial installation
1017 /bin/systemctl daemon-reload >/dev/null 2>&1 || :
1021 %if %{build_authlibs}
1030 if [ $1 = 0 ] ; then
1031 [ -d /afs ] && rmdir /afs
1036 %if 0%{?fedora} < 15 && 0%{?rhel} < 7
1037 if [ $1 = 0 ] ; then
1038 %{initdir}/openafs-client stop
1039 chkconfig --del openafs-client
1042 if [ $1 -eq 0 ] ; then
1043 # Package removal, not upgrade
1044 /bin/systemctl --no-reload disable openafs-client.service > /dev/null 2>&1 || :
1045 /bin/systemctl stop openafs-client.service > /dev/null 2>&1 || :
1050 %if 0%{?fedora} < 15 && 0%{?rhel} < 7
1051 if [ $1 = 0 ] ; then
1052 %{initdir}/openafs-server stop
1053 chkconfig --del openafs-server
1056 if [ $1 -eq 0 ] ; then
1057 /bin/systemctl --no-reload disable openafs-server.service > /dev/null 2>&1 || :
1058 /bin/systemctl stop openafs-server.service > /dev/null 2>&1 || :
1062 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
1064 /bin/systemctl daemon-reload >/dev/null 2>&1 || :
1067 /bin/systemctl daemon-reload >/dev/null 2>&1 || :
1070 %if %{build_dkmspkg}
1071 %post -n dkms-%{name}
1072 dkms add -m %{name} -v %{dkms_version} --rpm_safe_upgrade
1073 dkms build -m %{name} -v %{dkms_version} --rpm_safe_upgrade
1074 dkms install -m %{name} -v %{dkms_version} --rpm_safe_upgrade
1076 %preun -n dkms-%{name}
1077 dkms remove -m %{name} -v %{dkms_version} --rpm_safe_upgrade --all ||:
1081 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 7
1082 %triggerun -- openafs-client < 1.6.0-1
1083 # Save the current service runlevel info
1084 # User must manually run systemd-sysv-convert --apply httpd
1085 # to migrate them to systemd targets
1086 /usr/bin/systemd-sysv-convert --save openafs-client >/dev/null 2>&1 ||:
1088 # Run this because the SysV package being removed won't do it
1089 /sbin/chkconfig --del openafs-client >/dev/null 2>&1 || :
1091 %triggerun -- openafs-server < 1.6.0-1
1092 # Save the current service runlevel info
1093 # User must manually run systemd-sysv-convert --apply httpd
1094 # to migrate them to systemd targets
1095 /usr/bin/systemd-sysv-convert --save openafs-server >/dev/null 2>&1 ||:
1097 # Run this because the SysV package being removed won't do it
1098 /sbin/chkconfig --del openafs-server >/dev/null 2>&1 || :
1101 ##############################################################################
1105 ##############################################################################
1106 %if %{build_userspace}
1109 %defattr(-,root,root)
1110 %config(noreplace) /etc/sysconfig/openafs
1111 %doc %{_docdir}/openafs-%{afsvers}/LICENSE
1112 %{_bindir}/afsmonitor
1117 %{_bindir}/restorevol
1121 %{_bindir}/translate_et
1122 %{_bindir}/xstat_cm_test
1123 %{_bindir}/xstat_fs_test
1130 %{_sbindir}/read_tape
1135 %{_libdir}/libafshcrypto.so.*
1136 %{_libdir}/librokenafs.so.*
1137 %{_mandir}/man1/afs.1.gz
1138 %{_mandir}/man1/afsmonitor.1.gz
1139 %{_mandir}/man1/fs.1.gz
1140 %{_mandir}/man1/fs_*.1.gz
1141 %{_mandir}/man1/pagsh.1.gz
1142 %{_mandir}/man1/pts.1.gz
1143 %{_mandir}/man1/pts_*.1.gz
1144 %{_mandir}/man1/restorevol.1.gz
1145 %{_mandir}/man1/rxdebug.1.gz
1146 %{_mandir}/man1/scout.1.gz
1147 %{_mandir}/man1/sys.1.gz
1148 %{_mandir}/man1/tokens.1.gz
1149 %{_mandir}/man1/translate_et.1.gz
1150 %{_mandir}/man1/udebug.1.gz
1151 %{_mandir}/man1/unlog.1.gz
1152 %{_mandir}/man1/vos.1.gz
1153 %{_mandir}/man1/vos_*.1.gz
1154 %{_mandir}/man1/xstat_cm_test.1.gz
1155 %{_mandir}/man1/xstat_fs_test.1.gz
1156 %{_mandir}/man5/CellServDB.5.gz
1157 %{_mandir}/man5/ThisCell.5.gz
1158 %{_mandir}/man5/afsmonitor.5.gz
1159 %{_mandir}/man5/butc.5.gz
1160 %{_mandir}/man5/butc_logs.5.gz
1161 %{_mandir}/man5/uss.5.gz
1162 %{_mandir}/man5/uss_bulk.5.gz
1163 %{_mandir}/man8/backup.8.gz
1164 %{_mandir}/man8/backup_*.8.gz
1165 %{_mandir}/man8/bos.8.gz
1166 %{_mandir}/man8/bos_*.8.gz
1167 %{_mandir}/man8/butc.8.gz
1168 %{_mandir}/man8/fms.8.gz
1169 %{_mandir}/man8/fstrace.8.gz
1170 %{_mandir}/man8/fstrace_*.8.gz
1171 %{_mandir}/man8/read_tape.8.gz
1172 %{_mandir}/man8/uss.8.gz
1173 %{_mandir}/man8/uss_*.8.gz
1176 %defattr(-,root,root)
1177 %docdir %{_docdir}/openafs-%{afsvers}
1178 %dir %{_docdir}/openafs-%{afsvers}
1179 %{_docdir}/openafs-%{afsvers}/ChangeLog
1180 %{_docdir}/openafs-%{afsvers}/RELNOTES-%{afsvers}
1181 %{_docdir}/openafs-%{afsvers}/pdf
1184 %defattr(-,root,root)
1185 %dir %{_prefix}/vice
1186 %dir %{_prefix}/vice/cache
1187 %dir %{_prefix}/vice/etc
1188 %dir %{_prefix}/vice/etc/C
1189 %{_prefix}/vice/etc/CellServDB.dist
1190 %config(noreplace) %{_prefix}/vice/etc/ThisCell
1191 %config(noreplace) %{_prefix}/vice/etc/cacheinfo
1195 %{_prefix}/vice/etc/afsd
1196 %{_prefix}/vice/etc/C/afszcm.cat
1197 %{_libdir}/libuafs.a
1198 %{_libdir}/libuafs_pic.a
1199 %if 0%{?fedora} < 15 && 0%{?rhel} < 7
1200 %{initdir}/openafs-client
1202 %{_unitdir}/openafs-client.service
1203 %{_sysconfdir}/sysconfig/modules/openafs-client.modules
1205 %{_mandir}/man1/cmdebug.1.gz
1206 %{_mandir}/man1/up.1.gz
1207 %{_mandir}/man5/afs.5.gz
1208 %{_mandir}/man5/afs_cache.5.gz
1209 %{_mandir}/man5/afs_volume_header.5.gz
1210 %{_mandir}/man5/afszcm.cat.5.gz
1211 %{_mandir}/man5/cacheinfo.5.gz
1212 %{_mandir}/man8/afsd.8.gz
1213 %{_mandir}/man8/vsys.8.gz
1214 %{_mandir}/man5/CellAlias.5.gz
1217 %defattr(-,root,root)
1219 %dir %{_prefix}/afs/bin
1220 %dir %{_prefix}/afs/etc
1221 %dir %{_prefix}/afs/logs
1222 %{_prefix}/afs/bin/bosserver
1223 %{_prefix}/afs/bin/bos_util
1224 %{_prefix}/afs/bin/buserver
1225 %{_prefix}/afs/bin/dafileserver
1226 %{_prefix}/afs/bin/dafssync-debug
1227 %{_prefix}/afs/bin/dasalvager
1228 %{_prefix}/afs/bin/davolserver
1229 %{_prefix}/afs/bin/fileserver
1230 %{_prefix}/afs/bin/fssync-debug
1231 %{_prefix}/afs/bin/pt_util
1232 %{_prefix}/afs/bin/ptserver
1233 %{_prefix}/afs/bin/salvager
1234 %{_prefix}/afs/bin/salvageserver
1235 %{_prefix}/afs/bin/salvsync-debug
1236 %{_prefix}/afs/bin/state_analyzer
1237 %{_prefix}/afs/bin/upclient
1238 %{_prefix}/afs/bin/upserver
1239 %{_prefix}/afs/bin/vlserver
1240 %{_prefix}/afs/bin/volinfo
1241 %{_prefix}/afs/bin/volscan
1242 %{_prefix}/afs/bin/volserver
1243 %{_sbindir}/prdb_check
1244 %{_sbindir}/vldb_check
1245 %{_sbindir}/vldb_convert
1247 %if 0%{?fedora} < 15 && 0%{?rhel} < 7
1248 %{initdir}/openafs-server
1250 %{_unitdir}/openafs-server.service
1252 %{_mandir}/man5/BackupLog.5.gz
1253 %{_mandir}/man5/BosConfig.5.gz
1254 %{_mandir}/man5/BosLog.5.gz
1255 %{_mandir}/man5/FORCESALVAGE.5.gz
1256 %{_mandir}/man5/FileLog.5.gz
1257 %{_mandir}/man5/KeyFile.5.gz
1258 %{_mandir}/man5/KeyFileExt.5.gz
1259 %{_mandir}/man5/NetInfo.5.gz
1260 %{_mandir}/man5/NetRestrict.5.gz
1261 %{_mandir}/man5/NoAuth.5.gz
1262 %{_mandir}/man5/PtLog.5.gz
1263 %{_mandir}/man5/SALVAGE.fs.5.gz
1264 %{_mandir}/man5/SalvageLog.5.gz
1265 %{_mandir}/man5/sysid.5.gz
1266 %{_mandir}/man5/UserList.5.gz
1267 %{_mandir}/man5/VLLog.5.gz
1268 %{_mandir}/man5/VolserLog.5.gz
1269 %{_mandir}/man5/bdb.DB0.5.gz
1270 %{_mandir}/man5/fms.log.5.gz
1271 %{_mandir}/man5/krb.conf.5.gz
1272 %{_mandir}/man5/krb.excl.5.gz
1273 %{_mandir}/man5/prdb.DB0.5.gz
1274 %{_mandir}/man5/salvage.lock.5.gz
1275 %{_mandir}/man5/tapeconfig.5.gz
1276 %{_mandir}/man5/vldb.DB0.5.gz
1277 %{_mandir}/man8/bosserver.8.gz
1278 %{_mandir}/man8/buserver.8.gz
1279 %{_mandir}/man8/fileserver.8.gz
1280 %{_mandir}/man8/dafileserver.8.gz
1281 %{_mandir}/man8/dafssync-debug.8.gz
1282 %{_mandir}/man8/dafssync-debug_*.8.gz
1283 %{_mandir}/man8/dasalvager.8.gz
1284 %{_mandir}/man8/davolserver.8.gz
1285 %{_mandir}/man8/fssync-debug.8.gz
1286 %{_mandir}/man8/fssync-debug_*.8.gz
1287 %{_mandir}/man8/prdb_check.8.gz
1288 %{_mandir}/man8/ptserver.8.gz
1289 %{_mandir}/man8/pt_util.8.gz
1290 %{_mandir}/man8/salvager.8.gz
1291 %{_mandir}/man8/salvageserver.8.gz
1292 %{_mandir}/man8/state_analyzer.8.gz
1293 %{_mandir}/man8/upclient.8.gz
1294 %{_mandir}/man8/upserver.8.gz
1295 %{_mandir}/man8/vldb_check.8.gz
1296 %{_mandir}/man8/vldb_convert.8.gz
1297 %{_mandir}/man8/vlserver.8.gz
1298 %{_mandir}/man8/voldump.8.gz
1299 %{_mandir}/man8/volinfo.8.gz
1300 %{_mandir}/man8/volscan.8.gz
1301 %{_mandir}/man8/volserver.8.gz
1303 %if %{build_authlibs}
1305 %defattr(-,root,root)
1306 %{_libdir}/libafsauthent.so.*
1307 %{_libdir}/libafsrpc.so.*
1308 %{_libdir}/libkopenafs.so.*
1311 %files authlibs-devel
1312 %defattr(-,root,root)
1313 %{_includedir}/kopenafs.h
1314 %{_libdir}/libafsauthent.a
1315 %{_libdir}/libafscp.a
1316 %{_libdir}/libafsrpc.a
1317 %{_libdir}/libafsauthent_pic.a
1318 %{_libdir}/libafsrpc_pic.a
1319 %{_libdir}/libkopenafs.a
1320 %if %{build_authlibs}
1321 %{_libdir}/libafsauthent.so
1322 %{_libdir}/libafsrpc.so
1323 %{_libdir}/libkopenafs.so
1327 %defattr(-,root,root)
1328 %{_bindir}/afs_compile_et
1331 %{_includedir}/lock.h
1332 %{_includedir}/lwp.h
1334 %{_includedir}/timer.h
1335 %{_includedir}/ubik.h
1336 %{_includedir}/ubik_int.h
1337 %{_includedir}/opr/lock.h
1338 %{_includedir}/opr/queue.h
1340 %{_libdir}/libafshcrypto.a
1341 %{_libdir}/libafshcrypto.so
1342 %{_libdir}/libafsrfc3961.a
1345 %{_libdir}/librokenafs.a
1346 %{_libdir}/librokenafs.so
1348 %{_libdir}/librxkad.a
1349 %{_libdir}/librxstat.a
1350 %{_libdir}/libubik.a
1351 %{_mandir}/man1/rxgen.1.gz
1352 %{_mandir}/man1/afs_compile_et.1.gz
1353 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 6
1354 %{_libdir}/perl/AFS/ukernel.pm
1355 %{_libdir}/perl/ukernel.so
1356 %{_mandir}/man3/AFS::ukernel.3.gz
1359 %if %{build_dkmspkg}
1360 %files -n dkms-%{name}
1361 %defattr(-,root,root)
1362 %{_prefix}/src/%{name}-%{dkms_version}
1365 %files kernel-source
1366 %defattr(-,root,root)
1367 %{_prefix}/src/openafs-kernel-%{afsvers}/LICENSE.IBM
1368 %{_prefix}/src/openafs-kernel-%{afsvers}/LICENSE.Sun
1369 %{_prefix}/src/openafs-kernel-%{afsvers}/README
1370 %{_prefix}/src/openafs-kernel-%{afsvers}/src
1373 %defattr(-,root,root)
1374 %{_prefix}/afsws/bin/afsmonitor
1375 %{_prefix}/afsws/bin/bos
1376 %{_prefix}/afsws/bin/fs
1377 %{_prefix}/afsws/bin/pagsh
1378 %{_prefix}/afsws/bin/pts
1379 %{_prefix}/afsws/bin/restorevol
1380 %{_prefix}/afsws/bin/scout
1381 %{_prefix}/afsws/bin/sys
1382 %{_prefix}/afsws/bin/tokens
1383 %{_prefix}/afsws/bin/translate_et
1384 %{_prefix}/afsws/bin/udebug
1385 %{_prefix}/afsws/bin/unlog
1386 %{_prefix}/afsws/bin/xstat_cm_test
1387 %{_prefix}/afsws/bin/xstat_fs_test
1388 %{_prefix}/afsws/etc/backup
1389 %{_prefix}/afsws/etc/butc
1390 %{_prefix}/afsws/etc/fms
1391 %{_prefix}/afsws/etc/fstrace
1392 %{_prefix}/afsws/etc/read_tape
1393 %{_prefix}/afsws/etc/rxdebug
1394 %{_prefix}/afsws/etc/uss
1395 %{_prefix}/afsws/etc/vos
1396 %{_prefix}/afsws/etc/vsys
1397 %if %{kauth_support}
1398 %{_prefix}/afsws/bin/pagsh.krb
1399 %{_prefix}/afsws/bin/tokens.krb
1402 %if %{kauth_support}
1404 %defattr(-,root,root)
1408 %{pamdir}/pam_afs.krb.so.1
1409 %{pamdir}/pam_afs.krb.so
1410 %{pamdir}/pam_afs.so.1
1411 %{pamdir}/pam_afs.so
1414 %{_bindir}/pagsh.krb
1415 %{_bindir}/tokens.krb
1416 %{_prefix}/afsws/bin/kapasswd
1417 %{_prefix}/afsws/bin/klog
1418 %{_prefix}/afsws/bin/klog.krb
1419 %{_prefix}/afsws/etc/kas
1420 %{_mandir}/man1/kapasswd.1.gz
1421 %{_mandir}/man1/klog.1.gz
1422 %{_mandir}/man1/klog.krb.1.gz
1423 %{_mandir}/man1/pagsh.krb.1.gz
1424 %{_mandir}/man1/tokens.krb.1.gz
1425 %{_mandir}/man8/kpwvalid.8.gz
1426 %{_mandir}/man8/kas.8.gz
1427 %{_mandir}/man8/kas_*.8.gz
1430 %defattr(-,root,root)
1431 %{_prefix}/afs/bin/kaserver
1432 %{_prefix}/afs/bin/ka-forwarder
1433 %{_sbindir}/kadb_check
1434 %{_mandir}/man5/AuthLog.5.gz
1435 %{_mandir}/man5/AuthLog.dir.5.gz
1436 %{_mandir}/man5/kaserver.DB0.5.gz
1437 %{_mandir}/man5/kaserverauxdb.5.gz
1438 %{_mandir}/man8/kadb_check.8.gz
1439 %{_mandir}/man8/ka-forwarder.8.gz
1440 %{_mandir}/man8/kaserver.8.gz
1445 %defattr(-,root,root)
1447 %{_bindir}/klog.krb5
1448 %{_sbindir}/akeyconvert
1450 %{_mandir}/man1/aklog.1.gz
1451 %{_mandir}/man1/klog.krb5.1.gz
1452 %{_mandir}/man8/akeyconvert.8.gz
1453 %{_mandir}/man8/asetkey.8.gz
1455 %endif # build_userspace
1457 ##############################################################################
1459 ### openafs.spec change log
1461 ##############################################################################
1463 * Wed Dec 12 2007 Simon Wilkinson <simon@sxw.org.uk> 1.4.5
1464 - Make the RPM mockable
1466 * Mon Oct 29 2007 Simon Wilkinson <simon@sxw.org.uk> 1.4.5
1467 - Update to match the shipped 1.4.5 RPMS
1468 - Fix the kvariant stuff to only configure the 'standard' case once
1469 - Add openafs-kvers.sh back in
1471 * Wed Oct 10 2007 Simon Wilkinson <simon@sxw.org.uk> 1.4.5pre1-1
1472 - Use Fedora style kmods, which allows us to install multiple kernel types
1474 * Thu Jun 07 2007 Simon Wilkinson <simon@sxw.org.uk> 1.4.4-3
1475 - Use distributed files, rather than those in packager's SOURCE directory
1476 - Remove SuidCells stuff, which was unused
1478 * Fri Dec 01 2006 Derrick Brashear <shadow@dementia.org> 1.4.2-2
1479 - integrate s390x changes
1480 - allow for building libafs*.a and not libafs*.so into packages, for platforms
1481 that won't build the .so files.
1483 * Wed Aug 23 2006 Derrick Brashear <shadow@dementia.org> 1.4.2-1
1485 - use installed aklog manpage.
1486 - moduleparam patch obsoleted.
1488 * Tue Aug 22 2006 Derek Atkins <warlord@MIT.EDU> 1.4.2-0.1.rc1
1489 - update to 1.4.2-rc1
1490 - hand-apply lee damon's changes to support largesmp kernels from RHEL4
1491 (but only add support for 2.6 kernels. No need for the 2.4 kernels).
1492 - don't need the posixlock patch anymore.
1494 * Wed Jul 12 2006 Derek Atkins <warlord@MIT.EDU> 1.4.2-0.beta2
1495 - update to 1.4.2-beta2
1496 - add linux2.4 posixlock API patch
1498 * Mon Jun 26 2006 Derek Atkins <warlord@MIT.EDU>
1499 - moduleparam and krb524 patches no longer required in OA-CVS
1501 * Wed May 17 2006 Derek Atkins <warlord@MIT.EDU>
1502 - change non-target-cpu kernel dep to a file dep
1503 - make sure we use the proper kernel version for the dependency.
1505 * Tue May 16 2006 Derek Atkins <warlord@MIT.EDU>
1506 - allow users to specify local CellServDB and SuidCells entries
1507 don't overwrite user's changes. Provide a .dist an let users
1508 make entries in a ".local"
1509 - build the CellServDB and SuidCells at client startup and at
1511 - add provideskernelarch functionality to openafs-kvers-is.sh
1512 - use that functionality to Require kernel{,-<type>}-targetcpu
1513 to get better package safety due to RPM bugs where the kernel
1514 release isn't used so you can install the kernel module against
1515 any kernel of the same major version.
1517 * Mon May 15 2006 Derek Atkins <warlord@MIT.EDU>
1518 - update the README in openafs-kernel-source
1519 - fix openafs-kvers-is.sh from Alexander Bergolth's patch.
1520 - move kernel module from .../kernel/fs/openafs to .../fs/openafs/
1522 * Fri Apr 21 2006 Derek Atkins <warlord@MIT.EDU>
1523 - build requires autoconf and automake for krb5support
1524 and autoconf for standard package
1525 - dont setup the krb5 migration kit (or patches) if we don't care.
1526 - require ncurses-devel to build
1528 * Wed Apr 19 2006 Derek Atkins <warlord@MIT.EDU> 1.4.1-3
1529 - look for krb524 functions in libkrb524 if we can't find them
1530 in the standard locations.
1532 * Tue Apr 18 2006 Derek Atkins <warlord@MIT.EDU> 1.4.1-2
1533 - fix the module_param_array macro for Linux 2.6.9.
1535 * Sat Apr 15 2006 Derek Atkins <warlord@MIT.EDU> 1.4.1-1
1536 - update to 1.4.1 release.
1537 - distribute asetkey from openafs instead of krb5-migration kit
1538 - don't need to apply the FC5 patches because they are part of the distro.
1539 - install asetkey into the "proper" place
1540 - dont list a manpage twice.
1541 - package asetkey man page. delete it when not needed.
1543 * Thu Apr 6 2006 Derek Atkins <warlord@MIT.EDU>
1544 - turn authlibs back on, because RT #18767 was applied to CVS.
1546 * Wed Mar 29 2006 Derek Atkins <warlord@MIT.EDU> 1.4.1rc10-1
1547 - update to 1.4.1rc10, build on FC5
1548 - fix the man pages (distribute into various packages)
1549 - include patches for FC5, RT #29112 and #29122
1551 * Mon Dec 19 2005 Derek Atkins <warlord@MIT.EDU>
1552 - openafs-server shouldn't depend on the kernel module.
1554 * Thu Nov 17 2005 Derek Atkins <warlord@MIT.EDU>
1555 - patch from Mike Polek <mike at pictage.com> to run depmod for
1556 the target kernel and not the running kernel.
1558 * Tue Nov 8 2005 Derek Atkins <warlord@MIT.EDU>
1559 - build aklog from the openafs sources, not from the krb5 migration kit.
1561 * Fri Nov 4 2005 Derek Atkins <warlord@MIT.EDU>
1562 - set openafs-kernel-source to Provide openafs-kernel
1564 * Thu Oct 20 2005 Derek Atkins <warlord@MIT.EDU> 1.4.0-1
1565 - update afs-krb5 res_search patch: look for res_search and __res_search
1566 - update to 1.4.0 final
1568 * Mon Oct 10 2005 Derek Atkins <warlord@MIT.EDU>
1569 - remove all kdump builds.
1571 * Thu Oct 6 2005 Derek Atkins <warlord@MIT.EDU>
1572 - fix openafs-kernel-version.sh so it will build an RPM for the
1573 currently-running kernel even if it's smp on 2.6.
1575 * Tue Sep 27 2005 Derek Atkins <warlord@MIT.EDU> 1.4.0rc5-1
1576 - upgrade to 1.4.0rc5
1577 - turn off authlibs packages
1579 * Fri Sep 23 2005 Derek Atkins <warlord@MIT.EDU> 1.4.0rc4-2
1580 - add kmodule26 patch: fix the kernel module name on 2.6 kernels so
1581 it's called "openafs" and not "libafs". This fixes the shutdown
1584 * Thu Sep 22 2005 Derek Atkins <warlord@MIT.EDU>
1585 - update kversis script, add 'kvers' operation
1586 - fix bug that 2.6 smp/hugemem kernels don't provide
1587 kernel-foo = %{kernvers} with 'smp', 'hugemem', etc.
1588 - add patch to remove res_search from the afs-krb5 configure
1590 * Thu Sep 15 2005 Derek Atkins <warlord@MIT.EDU> 1.4.0rc4-1
1591 - Update to 1.4.0rc4
1592 - Update the afs-krb5 krb524 patch so it actually works on
1593 some older systems like RHEL3 that still need -lkrb524.
1594 - Update the buildall script so choose better architecture support,
1595 e.g. don't build i586 on RHEL.
1596 - Update the rebuild information in the SPEC file.
1597 - Add support for finding .EL kernels in openafs-kvers-is.sh
1598 - Add additional error messages when kernel version/type parsing fails.
1599 - Update the buildall script to use the kernel srcdir directly.
1601 * Wed Sep 14 2005 Derek Atkins <warlord@MIT.EDU> 1.4.0rc3-2
1602 - Add "hugemem" to 2.4 configs
1603 - Add checks to support scripts to determine whether to build
1604 the bigmem and/or hugemem kernels for 2.4.
1606 * Mon Sep 12 2005 Derek Atkins <warlord@MIT.EDU> 1.4.0rc3-1
1607 - Added some afs-krb5 patches to get the migration kit to build
1608 on modern AFS and modern Kerberos.
1609 - Added authlibs and authlibs-devel packages as per UMich changes.
1611 * Sun Sep 11 2005 Derek Atkins <warlord@MIT.EDU>
1612 - Merged in some of the 2.6 changes from wingc@engin.umich.edu
1614 * Sat Sep 10 2005 Derek Atkins <warlord@MIT.EDU>
1615 - Merged in lots of changes from David Howells and Nalin Dahyabhai
1616 from Red Hat. Initial attempt at a release of 1.4. Still need
1617 to work in a 2.6 build system.