zebra.spec.in
上传用户:xiaozhuqw
上传日期:2009-11-15
资源大小:1338k
文件大小:4k
源码类别:

网络

开发平台:

Unix_Linux

  1. %define version @VERSION@
  2. Summary: Zebra routing engine
  3. Name: zebra
  4. Version: %{version}
  5. Release: 1
  6. Source: zebra-%{version}.tar.gz
  7. URL: http://www.zebra.org
  8. Copyright: GPL
  9. Group: System Environment/Daemons
  10. BuildRoot: /tmp/zebra-%{version}-root
  11. %description
  12. GNU Zebra is free software (distributed under GNU Generic Public License)
  13. that manages TCP/IP based routing protocols. It supports BGP-4 protocol as
  14. described in RFC1771 (A Border Gateway Protocol 4) as well as RIPv1, RIPv2
  15. and OSPFv2. Unlike traditional, Gated based, monolithic architectures and
  16. even the so-called "new modular architectures" that remove the burden of
  17. processing routing functions from the cpu and utilize special ASIC chips
  18. instead, Zebra software offers true modularity.
  19. %prep
  20. %setup
  21. %build
  22. #./configure --enable-snmp --prefix=/usr --sysconfdir=/etc
  23. ./configure --prefix=/usr --sysconfdir=/etc
  24. make
  25. %install
  26. rm -rf $RPM_BUILD_ROOT
  27. make DESTDIR=$RPM_BUILD_ROOT install
  28. rm -f $RPM_BUILD_ROOT/usr/info/dir
  29. rm -f $RPM_BUILD_ROOT/usr/man/man8/ospf6*
  30. rm -f $RPM_BUILD_ROOT/usr/man/man8/ripng*
  31. rm -f $RPM_BUILD_ROOT/usr/sbin/ospf6d
  32. rm -f $RPM_BUILD_ROOT/usr/sbin/ripngd
  33. strip $RPM_BUILD_ROOT/usr/sbin/*
  34. mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d
  35. install -m755 init/redhat/bgpd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/bgpd
  36. #install -m755 init/redhat/ospf6d.init $RPM_BUILD_ROOT/etc/rc.d/init.d/ospf6d
  37. install -m755 init/redhat/ospfd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/ospfd
  38. install -m755 init/redhat/ripd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/ripd
  39. #install -m755 init/redhat/ripngd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/ripngd
  40. install -m755 init/redhat/zebra.init $RPM_BUILD_ROOT/etc/rc.d/init.d/zebra 
  41. mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d
  42. install -m644 init/redhat/zebra.logrotate $RPM_BUILD_ROOT/etc/logrotate.d/zebra
  43. %post
  44. # zebra_spec_add_service <sercice name> <port/proto> <comment>
  45. # e.g. zebra_spec_add_service zebrasrv 2600/tcp "zebra service"
  46. zebra_spec_add_service ()
  47. {
  48.   # Add port /etc/services entry if it isn't already there 
  49.   if [ -f /etc/services ] && ! grep -q "^$1[^a-zA-Z0-9]" /etc/services ; then
  50.     echo "$1            $2              # $3"  >> /etc/services
  51.   fi
  52. }
  53. zebra_spec_add_service zebrasrv 2600/tcp "zebra service"
  54. zebra_spec_add_service zebra    2601/tcp "zebra vty"
  55. zebra_spec_add_service ripd     2602/tcp "RIPd vty"
  56. zebra_spec_add_service ripngd   2603/tcp "RIPngd vty"
  57. zebra_spec_add_service ospfd    2604/tcp "OSPFd vty"
  58. zebra_spec_add_service bgpd     2605/tcp "BGPd vty"
  59. zebra_spec_add_service ospf6d   2606/tcp "OSPF6d vty"
  60. #Install info
  61. /sbin/install-info /usr/info/zebra.info /usr/info/dir
  62. if [ -x /sbin/chkconfig ]; then
  63.   chkconfig --add bgpd
  64. #  chkconfig --add ospf6d
  65.   chkconfig --add ospfd
  66.   chkconfig --add ripd
  67. #  chkconfig --add ripngd
  68.   chkconfig --add zebra
  69. fi
  70. %preun
  71. if [ "$1" = 0 ] ; then
  72.   /sbin/install-info --delete /usr/info/zebra.info /usr/info/dir
  73.   if [ -x /sbin/chkconfig ]; then
  74.     chkconfig --del bgpd
  75. #    chkconfig --del ospf6d
  76.     chkconfig --del ospfd
  77.     chkconfig --del ripd
  78. #    chkconfig --del ripngd
  79.     chkconfig --del zebra
  80.   fi
  81. fi
  82. %clean
  83. rm -rf $RPM_BUILD_ROOT
  84. rm -rf $RPM_BUILD_DIR/%{name}-%{version}
  85. %files
  86. %attr(-,root,root) %doc AUTHORS COPYING ChangeLog INSTALL NEWS README SERVICES TODO bgpd/bgpd.conf.sample ospfd/ospfd.conf.sample ripd/ripd.conf.sample zebra/zebra.conf.sample
  87. %attr(-,root,root) %config /etc/rc.d/init.d/*
  88. %attr(-,root,root) %config /etc/logrotate.d/*
  89. %attr(-,root,root) /usr/info/*
  90. #%attr(-,root,root) /usr/man/*      # Not man1 to exclude vtysh man page as
  91.                                     # it is not build by default (for now)
  92. %attr(-,root,root) /usr/man/man8/*
  93. %attr(-,root,root) /usr/sbin/*
  94. %changelog
  95. * Mon Nov 6 2000 Lennert Buytenhek <buytenh@gnu.org>
  96. - Don't include ospf6d and ripngd in package.
  97. - Fix logrotate file (add ospf.log).
  98. * Mon Oct 2 2000 Horms <horms@valinux.com>
  99. - Install and uninstall info in %post and %preun respectively
  100. - Moved chkconfig --del operations from %postun to %preun, as
  101.   chkconfig needs to run while the init files are still present on
  102.   the system.
  103. - Don't install vtysh man page as vtysh is not build by default
  104. - Added logrotate script so logs won't grow without bound
  105. * Wed Sep 27 2000 Horms <horms@vergenet.net>
  106. - Add ports to /etc/services if they aren't there
  107. - forcibly remove $RPM_BUILD_ROOT/usr/info/dir and friends so
  108.   there is no error if it does not exist when rm is run.
  109. - Clean up the zebra build dir