# TODO rewrite initscript ( to create the device ), and load the module # check requires and buildrequires # Summary: Coda distributed filesystem Name: coda-debug Version: 6.0.8 Release: 3mdk Source: ftp://ftp.coda.cs.cmu.edu/pub/coda/src/coda-%{version}.tar.bz2 #Patch0: coda-5.3.17-krbsupport.patch.bz2 Url: http://www.coda.cs.cmu.edu/doc/html/index.html License: GPL BuildRoot: %{_tmppath}/build-coda-%{version} Group: Networking/Other BuildRequires: liblwp2-devel librvm1-devel librpc2_4-devel BuildRequires: rvm-tools BuildRequires: ncurses-devel #BuildRequires: db1-devel BuildRequires: readline-devel BuildRequires: byacc BuildRequires: flex Requires: bc Prereq: rpm-helper %description Source package for the Coda filesystem. Three packages are provided by this rpm: the client and server and the backup components. Separately you must install a kernel module, or have a Coda enabled kernel, and you should get the Coda documentation package. %package client Summary: Coda client Group: Networking/Other Requires: bc ed Prereq: rpm-helper %description client This package contains the main client program, the cachemanager Venus. Also included are the binaries for the cfs, utilities for logging, ACL manipulation etc, the hoarding tools for use with laptops and repair tools for fixing conflicts. Finally there is the cmon and codacon console utilities to monitor Coda's activities. You need a Coda kernel-module for your kernel version, or Coda in your kernel, to have a complete coda client. Make sure to select the correct C library version. %package server Summary: Coda server Group: Networking/Other Requires: bc ed rvm-tools liblwp2 librvm1 librpc2_4 Prereq: rpm-helper %description server This package contains the fileserver codasrv for the coda filesystem, as well as the volume utilities. For highest performance you will need a modified kernel with inode system calls. %package backup Summary: Coda backup coordinator Group: Networking/Other Requires: bc ed Prereq: rpm-helper %description backup This package contains the backup software for the coda filesystem, as well as the volume utilities. %prep %setup -q -n coda-%{version} #%patch0 -p1 %build # chown -R $LOGNAME.users $RPM_BUILD_DIR/coda-%{version} rm -rf $RPM_BUILD_DIR/obj-%{version} mkdir $RPM_BUILD_DIR/obj-%{version} cd $RPM_BUILD_DIR/obj-%{version} $RPM_BUILD_DIR/coda-%{version}/configure --prefix=%{_prefix} make %install cd $RPM_BUILD_DIR/obj-%{version} rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{_prefix}/coda/venus.cache $RPM_BUILD_ROOT/dev \ $RPM_BUILD_ROOT%{_prefix}/coda/etc \ $RPM_BUILD_ROOT/coda $RPM_BUILD_ROOT%{_initrddir}\ $RPM_BUILD_ROOT%{_libdir}/coda $RPM_BUILD_ROOT%{_initrddir} make prefix=$RPM_BUILD_ROOT%{_prefix} client-install make prefix=$RPM_BUILD_ROOT%{_prefix} server-install touch $RPM_BUILD_ROOT/coda/NOT_REALLY_CODA # for non debuging versions if [ X1 != X1 ]; then strip $RPM_BUILD_ROOT%{_bindir}/* $RPM_BUILD_ROOT/vice/bin/* $RPM_BUILD_ROOT%{_sbindir}/* || : fi for i in $RPM_BUILD_ROOT/%{_initrddir}/*init ; do mv $i ${i//.init/} done # rm -rf $RPM_BUILD_ROOT/etc/rc.d/init.d/ # mv $RPM_BUILD_ROOT/etc/init.d/ $RPM_BUILD_ROOT/%{_initrddir} mkdir -p $RPM_BUILD_ROOT/%{_mandir} mv -f $RPM_BUILD_ROOT/%{_prefix}/man/* $RPM_BUILD_ROOT/%{_mandir} %clean rm -rf $RPM_BUILD_ROOT rm -rf $RPM_BUILD_DIR/obj-%{version} %pre client #grep "^coda" /proc/mounts > /dev/null 2>&1 #if [ $? = 0 ]; then # echo "*** Coda is mounted: cannot install ***" # exit 1 #else # exit 0 #fi %preun client %_preun_service venus #rm -rf /dev/cfs0 #grep "^coda" /proc/mounts > /dev/null 2>&1 #if [ $? = 0 ]; then # echo "*** Coda is mounted: cannot uninstall ***" # exit 1 #else # exit 0 #fi %post client %_post_service venus #mknod /dev/cfs0 c 67 0 #if [ -e %{_prefix}/coda/venus.cache/pid ]; then # rm -f %{_prefix}/coda/venus.cache/pid #fi #if [ ! -e /etc/coda/venus.conf ]; then # %{_sbindir}/venus-setup testserver.coda.cs.cmu.edu 100000 #fi %post server %_post_service update %_post_service auth2 %_post_service codasrv #mknod /dev/cfs0 c 67 0 %preun server %_preun_service update %_preun_service auth2 %_preun_service codasrv #rm -rf /dev/cfs0 %files client %defattr(-,root,root) %doc ChangeLog LICENSE CREDITS %dir %{_prefix}/coda %dir %{_prefix}/coda/etc %dir %{_prefix}/coda/venus.cache %dir /coda %verify() /coda/NOT_REALLY_CODA %config(noreplace)/etc/coda/venus.conf.ex %config(noreplace)/etc/coda/sidekick.intr.ex %config(noreplace)%{_initrddir}/venus #%{_sbindir}/kau %{_sbindir}/sidekick #%{_bindir}/codaconfedit %{_sbindir}/codaconfedit %{_sbindir}/coda-setup-ports %{_sbindir}/venus %{_sbindir}/venus-setup %{_sbindir}/volmunge %{_sbindir}/vutil %{_bindir}/cfs #%{_bindir}/kclog %{_bindir}/clog %{_bindir}/cmon %{_bindir}/codacon %{_bindir}/cpasswd %{_bindir}/ctokens %{_bindir}/cunlog %{_bindir}/filerepair %{_bindir}/hoard %{_bindir}/mklka %{_bindir}/parser %{_bindir}/removeinc %{_bindir}/repair %{_bindir}/coda_replay %{_bindir}/spy %{_bindir}/xaskuser %{_bindir}/xfrepair %{_bindir}/getvolinfo %{_bindir}/rpc2ping %{_bindir}/smon2 %{_sbindir}/coda-client-logrotate %{_mandir}/man1/cfs.* %{_mandir}/man1/clog.* %{_mandir}/man1/cmon.* %{_mandir}/man1/cunlog.* %{_mandir}/man1/hoard.* %{_mandir}/man1/repair.* %{_mandir}/man1/spy.* %{_mandir}/man8/venus.* %{_mandir}/man1/coda_replay.* %{_mandir}/man1/cpasswd.* %{_mandir}/man1/ctokens.* %{_mandir}/man5/passwd.coda.* %files server %defattr(-,root,root) %doc ChangeLog LICENSE CREDITS README.kerberos README.nt README.win95 %config(noreplace)/etc/coda/server.conf.ex %config(noreplace)/etc/coda/realms %{_sbindir}/auth2 %{_sbindir}/bldvldb.sh #%{_sbindir}/codaconfedit %{_sbindir}/codasrv %{_sbindir}/createvol_rep %{_sbindir}/initpw %{_sbindir}/inoder %{_sbindir}/parserecdump %{_sbindir}/partial-reinit.sh %{_sbindir}/pdbtool %{_sbindir}/printvrdb #%{_sbindir}/purgevol %{_sbindir}/purgevol_rep #%{_sbindir}/pwdtopdbtool.py %{_sbindir}/rpc2portmap %{_sbindir}/startserver %{_sbindir}/updatesrv %{_sbindir}/updateclnt %{_sbindir}/updatefetch %{_sbindir}/vice-killvolumes %{_sbindir}/vice-setup %{_sbindir}/vice-setup-rvm %{_sbindir}/vice-setup-srvdir %{_sbindir}/vice-setup-user %{_sbindir}/vice-setup-scm %{_sbindir}/volutil %{_bindir}/rvmsizer %{_sbindir}/codastart %{_sbindir}/au %{_sbindir}/norton %{_sbindir}/norton-reinit %{_bindir}/reinit %{_sbindir}/coda-server-logrotate %{_mandir}/man5/vicetab.* %{_mandir}/man8/au.* %{_mandir}/man8/auth2.* %{_mandir}/man8/initpw.* %{_mandir}/man8/norton.* %{_mandir}/man8/pdbtool.* %config(noreplace)%{_initrddir}/codasrv %config(noreplace)%{_initrddir}/auth2 %config(noreplace)%{_initrddir}/update %files backup %defattr(-,root,root) %doc ChangeLog LICENSE CREDITS #%{_sbindir}/kauth2 %{_sbindir}/backup %{_sbindir}/backup.sh %{_sbindir}/merge %{_sbindir}/readdump %{_sbindir}/tape.pl %{_sbindir}/updatesrv %{_sbindir}/updateclnt %{_sbindir}/updatefetch %{_sbindir}/volutil %{_sbindir}/codadump2tar %changelog * Fri Apr 8 2005 Antoine Ginies <aginies@n1.mandrakesoft.com> 6.0.8-3mdk - fix post server (typo on update) * Fri Apr 8 2005 Antoine Ginies <aginies@n1.mandrakesoft.com> 6.0.8-2mdk - fix requires for coda-debug-server (librpc2_4) * Sun Apr 03 2005 Michael Scherer <misc@mandrake.org> 6.0.8-1mdk - New release 6.0.8 - fix the spec file ( rpmlint error, packaging error ) - remove kerberos patch * Mon Mar 17 2003 Marcel Pol <mpol@gmx.net> 5.3.20-4mdk - fix buildrequires again * Sat Mar 15 2003 Marcel Pol <mpol@gmx.net> 5.3.20-3mdk - fix buildrequires * Fri Dec 20 2002 Olivier Thauvin <thauvin@aerov.jussieu.fr> 5.3.20-2mdk - add changelog OOps * Fri Dec 20 2002 Olivier Thauvin <thauvin@aerov.jussieu.fr> 5.3.20-1mdk - 5.3.20 * Mon Nov 19 2001 Florin <florin@mandrakesoft.com> 5.3.17-2mdk - update de requires in the server package * Tue Nov 13 2001 Florin <florin@mandrakesoft.com> 5.3.17-1mdk - 5.3.17 - update the BuildRequires to the latest librpc23 - replay is now coda_replay - lose the egcs patch - the README.w95 is now called README.win95 - add the kerberos support patch: - au, clog, auth2 become now kau, kclog, kauth2 * Tue Sep 11 2001 Florin Grad <florin@mandrakesoft.com> 5.3.15-2mdk - add the g++ patch. Use g++ instead of egcs++ for c++ code * Mon Aug 27 2001 Florin Grad <florin@mandrakesoft.com> 5.3.15-1mdk - 5.3.15 - use egcs++ instead of c++ as it doesn't compile (patch) - use the (pre|post)_service macros - add some doc files - update the Require section * Thu Aug 31 2000 Florin Grad <florin@mandrakesoft.com> 5.3.8-4mdk - adding some macros entries * Tue Jul 18 2000 Florin Grad <florin@mandrakesoft.com> 5.3.8-3mdk - added a silly patch that removes the crypto options in the configure script * Wed Jul 5 2000 Florin Grad <florin@mandrakesoft.com> 5.3.8-2mdk - the server-crypto and backup-crypto packages are build with openssl and openssl-devel * Mon Jul 3 2000 Florin Grad <florin@mandrakesoft.com> 5.3.8-1mdk - First attempt. * Sun Jun 21 1998 Peter Braam <braam@cs.cmu.edu> - get rid of the kernel package. This needs interaction during the build. - no more separate libc, glibc packages * Tue Dec 30 1997 Peter Braam <braam@cs.cmu.edu> - several changes: documentation separate - use variables: =`uname -r`, 5.3.8=coda version * Mon Jun 02 1997 Peter Braam <braam@cs.cmu.edu> - small changes to Elliots improvements. - some of his ideas are now in the scripts * Wed May 28 1997 Elliot Lee <sopwith@redhat.com> - Based upon 4.0.3-1 spec file. - Changed to BuildRoot - Do as much as possible at build time instead of in %post - Added initscript for venus