Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37555558
en ru br
Репозитории ALT
S:1.2.4-alt5
5.1: 0.99.18-alt0.M51.2
4.1: 0.99.18-alt0.M41.2
4.0: 0.99.18-alt0.M40.1
3.0:
+backports:0.99.9-alt0.M30.4
www.altlinux.org/Changes

Группа :: Система/Серверы
Пакет: quagga

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

# This spec is backported to ALTLinux 3.0 automatically by rpmbh script. Do not edit it.
%define cvs 0

%define quagga_user quagga
%define quagga_gid quagga
%define vty_gid quaggavty

Name: quagga

%define baseversion 0.99.9
Release: alt0.M30.4

%if %cvs
%define cvsdate 20060505
Version: %baseversion.%cvsdate
%define quaggadir %name-%baseversion
%else
Version: %baseversion
%define quaggadir %name-%version
%endif

Packager: Sergey Y. Afonin <asy at altlinux.ru>

Summary: Quagga routing suite (a fork of GNU Zebra)

License: GPL
Group: System/Servers
Url: http://www.quagga.net/

%if %cvs
Source0: %name-%baseversion-%cvsdate.tar.gz
%else
Source0: %name-%version.tar.gz
%endif
Source1: %name.logrotate
Source2: %name.pam
Source3: %name.sysconfig

Source10: %name-zebra.init
Source11: %name-ripd.init
Source12: %name-ripngd.init
Source13: %name-ospfd.init
Source14: %name-ospf6d.init
Source15: %name-bgpd.init
Source16: %name-isisd.init

Source19: %name-watchquagga.init

Source20: %name-zebra.conf
Source21: %name-ripd.conf
Source22: %name-ripngd.conf
Source23: %name-ospfd.conf
Source24: %name-ospf6d.conf
Source25: %name-bgpd.conf
Source26: %name-isisd.conf

Patch1: quagga-libzebra_to_libospf.patch
Patch2: quagga-libospf_to_libospfclient.patch
Patch3:     quagga-man.patch

Patch51: quagga-patch-PILOT-1-prefix_buf.diff
Patch52: quagga-patch-PILOT-2-rtm_type_str.diff
Patch53: quagga-patch-PILOT-3-rib_sweep_route.diff
Patch54: quagga-patch-PILOT-4-old_pid.diff
Patch55: quagga-patch-PILOT-5-sndbuf.diff
Patch56: quagga-patch-PILOT-6-pidfile_mask.diff
Patch57: quagga-patch-PILOT-7-inet6debug.diff
Patch58: quagga-patch-PILOT-8-checkinstalled.diff
Patch59: quagga-patch-PILOT-9-ipv6ignore.diff
Patch60: quagga-patch-PILOT-10-connroutechange.diff

#http://quagga.ncc.eurodata.de/

Patch100: quagga-cvs20070909-as4-v09.patch

Conflicts: zebra

Requires: libquagga

# Automatically added by buildreq on Tue Aug 07 2007

BuildRequires: gcc-c++ libcap-devel libpam-devel libreadline-devel libtinfo-devel tetex-core libnet-snmp-devel

BuildRequires: rpm-build-compat >= 0.95

%description
Quagga is a free software that manages TCP/IP based routing
protocol. It takes multi-server and multi-thread approach to resolve
the current complexity of the Internet.

Quagga supports BGP4, BGP4+, OSPFv2, OSPFv3, RIPv1, RIPv2, RIPng,
               IS-SI and MPLS-VPN.

Quagga is intended to be used as a Route Server and a Route Reflector. It is
not a toolkit, it provides full routing power under a new architecture.
Quagga by design has a process for each protocol.

Quagga is a fork of GNU Zebra (forked after 2002-07-07).

%package -n libquagga
Summary: Quagga shared library.
Copyright: GPL
Group: System/Servers

%description -n libquagga
The runtime library of Quagga

%package devel
Summary: Header and object files for Quagga development
Group: System/Servers
Requires: libquagga

%description devel
The quagga-devel package contains the header and object files neccessary for
developing OSPF-API and quagga applications.

%package tools
Summary: Quagga tools (zc.pl only)
Copyright: GPL
Group: System/Servers
BuildRequires: perl-Net-Telnet

%description tools
Quagga tools

%package doc
Summary: Quagga documentation
Copyright: GPL
Prereq: /sbin/install-info
Group: System/Servers

%description doc
Quagga documentation

%prep

%setup -q -n %quaggadir

# Mon May 08 2006 Sergey Y. Afonin <asy at altlinux.ru> 0.99.3.20060505-alt1

# change: disable quagga-libzebra_to_libospf.patch and quagga-libospf_to_libospfclient.patch
#  (/usr/bin/ld: cannot find -lzebra in hasher build)
 
#patch1 -p1
#patch2 -p1
%patch3 -p0

# patchset of Pilot

%patch51 -p0
%patch52 -p0
%patch53 -p0
%patch54 -p0
%patch55 -p0
%patch56 -p0
%patch57 -p0
%patch58 -p0
%patch59 -p0
%patch60 -p0

#patch100 -p0


#verify-elf: WARNING: ./usr/lib/libzebra.so.0.0.0: undefined symbol: master

#verify-elf: WARNING: ./usr/lib/libospf.so.0.0.0: undefined symbol: ospfd_privs
#verify-elf: WARNING: ./usr/lib/libospf.so.0.0.0: undefined symbol: master
#
# master in sbin/zebra
# ospfd_privs in sbin/ospfclient
#
%set_verify_elf_method relaxed
#export LDFLAGS="$LDFLAGS -Wl,--no-as-needed"

%build

export LIBS="-lcap"

export IPFORWARD=ipforward_proc.o; export zebra_ipforward_path=proc; %configure \
       --enable-ipv6 \
       --enable-multipath=32 \
       --enable-tcp-zebra \
       --enable-nssa \
       --enable-opaque-lsa \
       --enable-ospf-te \
       --enable-vtysh \
       --enable-ospfclient=yes \
       --enable-ospfapi=yes \
       --enable-irdp=yes \
       --enable-isisd \
       --with-libpam \
       --enable-user=%quagga_user \
       --enable-group=%quagga_gid \
       --enable-vty-group=%vty_gid \
--enable-netlink --enable-gcc-rdynamic \
--sysconfdir=%_sysconfdir/%name \
--localstatedir=%_localstatedir/%name

#        --disable-snmp \


%make

pushd doc
texi2html -number quagga.texi
popd

%install

install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig,logrotate.d,pam.d} \
       $RPM_BUILD_ROOT%_logdir/%name $RPM_BUILD_ROOT%_infodir \
$RPM_BUILD_ROOT%_localstatedir/%name

make install DESTDIR=$RPM_BUILD_ROOT

%__rm -f $RPM_BUILD_ROOT%_libdir/lib*.a
%__rm -f $RPM_BUILD_ROOT%_sysconfdir/%name/*.sample*

%__install -m 644 %SOURCE1 $RPM_BUILD_ROOT%_sysconfdir/logrotate.d/%name
%__install -m 644 %SOURCE2 $RPM_BUILD_ROOT%_sysconfdir/pam.d/%name
%__install -m 644 %SOURCE3 $RPM_BUILD_ROOT%_sysconfdir/sysconfig/%name

%__install %SOURCE20 $RPM_BUILD_ROOT%_sysconfdir/%name/zebra.conf
%__install %SOURCE21 $RPM_BUILD_ROOT%_sysconfdir/%name/ripd.conf
%__install %SOURCE22 $RPM_BUILD_ROOT%_sysconfdir/%name/ripngd.conf
%__install %SOURCE23 $RPM_BUILD_ROOT%_sysconfdir/%name/ospfd.conf
%__install %SOURCE24 $RPM_BUILD_ROOT%_sysconfdir/%name/ospf6d.conf
%__install %SOURCE25 $RPM_BUILD_ROOT%_sysconfdir/%name/bgpd.conf
%__install %SOURCE26 $RPM_BUILD_ROOT%_sysconfdir/%name/isisd.conf

%__install -m 755 %SOURCE10 $RPM_BUILD_ROOT%_initdir/zebra
%__install -m 755 %SOURCE11 $RPM_BUILD_ROOT%_initdir/ripd
%__install -m 755 %SOURCE12 $RPM_BUILD_ROOT%_initdir/ripngd
%__install -m 755 %SOURCE13 $RPM_BUILD_ROOT%_initdir/ospfd
%__install -m 755 %SOURCE14 $RPM_BUILD_ROOT%_initdir/ospf6d
%__install -m 755 %SOURCE15 $RPM_BUILD_ROOT%_initdir/bgpd
%__install -m 755 %SOURCE16 $RPM_BUILD_ROOT%_initdir/isisd

%__install -m 755 %SOURCE19 $RPM_BUILD_ROOT%_initdir/watchquagga

%__cp -f tools/zc.pl $RPM_BUILD_ROOT%_bindir

%pre
/usr/sbin/groupadd -rf %quagga_gid
/usr/sbin/useradd -r -g %quagga_gid -d /dev/null -s /dev/null -n %quagga_user &>/dev/null ||:

/usr/sbin/groupadd -rf %vty_gid

%post
# "&>/dev/null" used for restarting when connection lost
{
%post_service zebra
%post_service ripd
%post_service ospfd
%post_service ospf6d
%post_service ripngd
%post_service bgpd
%post_service isisd
%post_service watchquagga
} &>/dev/null

%preun
%preun_service watchquagga
%preun_service ripd
%preun_service ospfd
%preun_service ospf6d
%preun_service ripngd
%preun_service bgpd
%preun_service isisd
%preun_service zebra

%post -n libquagga -p %post_ldconfig

%postun -n libquagga -p %post_ldconfig

%post doc
/sbin/install-info %_infodir/quagga.info.gz %_infodir/dir

%preun doc
/sbin/install-info --delete %_infodir/quagga.info.gz %_infodir/dir

%files
%dir %_sysconfdir/%name
%attr(3775,root,%quagga_gid) %dir %_localstatedir/%name
%attr(3771,root,%quagga_gid) %dir %_logdir/%name
#attr(3775,root,%quagga_gid) %dir %_var/run/%name

%config(noreplace) %attr(0660, root, %quagga_gid) %_sysconfdir/%name/*

%config %_initdir/*
#config %_initdir/zebra
#config %_initdir/ripd
#config %_initdir/ospfd
#config %_initdir/ospf6d
#config %_initdir/ripngd
#config %_initdir/bgpd
#config %_initdir/isisd

%_sysconfdir/logrotate.d/%name
%_sysconfdir/pam.d/%name
%_sysconfdir/sysconfig/%name

%exclude %_bindir/zc.pl
%_bindir/*
%exclude %_sbindir/ospfclient
%_sbindir/*

%_mandir/man?/*
%doc AUTHORS README SERVICES COPYING NEWS

%files -n libquagga
%_libdir/lib*.so
%_libdir/lib*.so.*

%files devel
%_sbindir/ospfclient
%dir %_includedir/%name
%dir %_includedir/%name/ospfd
%dir %_includedir/%name/ospfapi
%_includedir/%name/*.h
%_includedir/%name/ospfd/*.h
%_includedir/%name/ospfapi/*.h

%files tools
%_bindir/zc.pl

%files doc
%_infodir/*
%doc tools ChangeLog INSTALL TODO
%doc doc/quagga.html
%doc */*.sample*
%doc doc/mpls
%doc bgpd/BGP4-MIB.txt ospfd/OSPF-MIB.txt ospfd/OSPF-TRAP-MIB.txt
%doc ripd/RIPv2-MIB.txt zebra/GNOME-PRODUCT-ZEBRA-MIB zebra/GNOME-SMI
%doc doc/draft-zebra-00.* doc/BGP-TypeCode

%changelog

Полный changelog можно просмотреть здесь

 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin