2 # - trigger to clean up after old bird package (stop, chkconfig --del)
5 %bcond_without ipv6 # disable IPv6 support (and building bird-ipv6 package)
6 %bcond_without ipv4 # disable IPv4 support (and building bird-ipv4 package)
7 %bcond_with alien # enable possibility to import 'alien' routes import into bird's routing table
9 Summary: The BIRD Internet Routing Daemon
10 Summary(pl.UTF-8): Demon BIRD Internetowego Routingu Dynamicznego
15 Group: Networking/Daemons
16 Source0: ftp://bird.network.cz/pub/bird/%{name}-%{version}.tar.gz
17 # Source0-md5: 4c92ec3548a2a120243879b6ef7046dd
18 Source1: %{name}-ipv4.init
19 Source2: %{name}-ipv4.sysconfig
20 Source3: %{name}-ipv6.init
21 Source4: %{name}-ipv6.sysconfig
22 Source5: ftp://bird.network.cz/pub/bird/%{name}-doc-%{version}.tar.gz
23 # Source5-md5: a2532665cc7312f199322719c4d3b68f
24 Source6: %{name}-ipv4.service
25 Source7: %{name}-ipv6.service
26 Patch0: %{name}-allowalien.patch
27 URL: http://bird.network.cz/
28 BuildRequires: autoconf
29 BuildRequires: automake
32 BuildRequires: readline-devel >= 4.2
33 BuildRequires: rpmbuild(macros) >= 1.268
34 Requires(post,preun): /sbin/chkconfig
37 Requires(postun): /usr/sbin/userdel
38 Requires(pre): /usr/sbin/useradd
42 Obsoletes: zebra-guile
43 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
46 The BIRD project is an attempt to create a routing daemon running on
47 UNIX-like systems (but not necessarily limited to them) with full
48 support of all modern routing protocols, easy to use configuration
49 interface and powerful route filtering language.
51 %description -l pl.UTF-8
52 Projekt BIRD ma na celu utworzenie daemona dynamicznego routingu
53 pracującego na systemach UNIX z pełnym wsparciem dla nowoczesnych
54 protokołów routingu, łatwym interfejsem konfiguracji i językiem
55 filtrów o dużych możliwościach.
58 Summary: Routing daemon for IPv4
59 Summary(pl.UTF-8): Demon dynamicznego routingu IPv4
60 Group: Networking/Daemons
61 Requires(post,preun): /sbin/chkconfig
62 Requires: %{name} = %{version}-%{release}
65 Provides: routingdaemon
69 Obsoletes: zebra-guile
72 The BIRD project is an attempt to create a routing daemon running on
73 UNIX-like systems (but not necessarily limited to them) with full
74 support of all modern routing protocols, easy to use configuration
75 interface and powerful route filtering language.
77 %description ipv4 -l pl.UTF-8
78 Projekt BIRD ma na celu utworzenie daemona dynamicznego routingu
79 pracującego na systemach UNIX z pełnym wsparciem dla nowoczesnych
80 protokołów routingu, łatwym interfejsem konfiguracji i językiem
81 filtrów o dużych możliwościach.
84 Summary: Routing daemon for IPv6
85 Summary(pl.UTF-8): Demon dynamicznego routingu IPv6
86 Group: Networking/Daemons
87 Requires(post,preun): /sbin/chkconfig
88 Requires: %{name} = %{version}-%{release}
91 Provides: routingdaemon
95 Obsoletes: zebra-guile
98 The BIRD project is an attempt to create a routing daemon running on
99 UNIX-like systems (but not necessarily limited to them) with full
100 support of all modern routing protocols, easy to use configuration
101 interface and powerful route filtering language.
103 %description ipv6 -l pl.UTF-8
104 Projekt BIRD ma na celu utworzenie daemona dynamicznego routingu
105 pracującego na systemach UNIX z pełnym wsparciem dla nowoczesnych
106 protokołów routingu, łatwym interfejsem konfiguracji i językiem
107 filtrów o dużych możliwościach.
111 %{?with_alien:%patch0 -p1}
114 cp -f /usr/share/automake/config.* tools
117 export CFLAGS="%{rpmcflags} -I%{_includedir}/ncursesw -fno-strict-aliasing -fno-strict-overflow"
140 rm -rf $RPM_BUILD_ROOT
141 install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,/etc/sysconfig,%{_sbindir}} \
142 $RPM_BUILD_ROOT%{systemdunitdir}
144 install birdc $RPM_BUILD_ROOT%{_sbindir}
147 install bird $RPM_BUILD_ROOT%{_sbindir}
148 install doc/bird.conf.example $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf
149 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-ipv4
150 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-ipv4
151 install %{SOURCE6} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}-ipv4.service
155 install bird-6 $RPM_BUILD_ROOT%{_sbindir}
156 cat <<EOF > $RPM_BUILD_ROOT%{_sbindir}/birdc-6
158 exec %{_sbindir}/birdc -s /var/run/bird6.ctl
160 :> $RPM_BUILD_ROOT%{_sysconfdir}/%{name}6.conf
161 install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-ipv6
162 install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-ipv6
163 install %{SOURCE7} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}-ipv6.service
167 rm -rf $RPM_BUILD_ROOT
170 %groupadd -g 271 bird
171 %useradd -u 271 -d /usr/share/empty -s /bin/false -c "bird routing daemon" -g bird bird
174 if [ "$1" = "0" ]; then
180 /sbin/chkconfig --add %{name}-ipv4
181 %service %{name}-ipv4 restart "routing daemon"
182 %systemd_post %{name}-ipv4.service
185 if [ "$1" = "0" ]; then
186 %service %{name}-ipv4 stop
187 /sbin/chkconfig --del %{name}-ipv4
189 %systemd_preun %{name}-ipv4.service
195 /sbin/chkconfig --add %{name}-ipv6
196 %service %{name}-ipv6 restart "routing daemon"
197 %systemd_post %{name}-ipv6.service
200 if [ "$1" = "0" ]; then
201 %service %{name}-ipv6 stop
202 /sbin/chkconfig --del %{name}-ipv6
204 %systemd_preun %{name}-ipv6.service
209 %triggerpostun ipv4 -- %{name}-ipv4 < 1.3.4-3
210 chmod 0640 /etc/bird.conf
211 chgrp bird /etc/bird.conf
213 %triggerpostun -- %{name}-ipv4 < 1.4.5-2
214 %systemd_trigger %{name}-ipv4.service
216 %triggerpostun -- %{name}-ipv6 < 1.4.5-2
217 %systemd_trigger %{name}-ipv6.service
220 %defattr(644,root,root,755)
221 %doc doc/*.html doc/reply_codes %{name}-doc-%{version}/doc/*.ps ChangeLog NEWS README TODO
222 %attr(755,root,root) %{_sbindir}/birdc
226 %defattr(644,root,root,755)
227 %attr(755,root,root) %{_sbindir}/bird
228 %attr(754,root,root) /etc/rc.d/init.d/bird-ipv4
229 %attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bird-ipv4
230 %attr(640,root,bird) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bird.conf
231 %{systemdunitdir}/%{name}-ipv4.service
236 %defattr(644,root,root,755)
237 %attr(755,root,root) %{_sbindir}/bird-6
238 %attr(755,root,root) %{_sbindir}/birdc-6
239 %attr(754,root,root) /etc/rc.d/init.d/bird-ipv6
240 %attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/bird-ipv6
241 %attr(640,root,bird) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/bird6.conf
242 %{systemdunitdir}/%{name}-ipv6.service