]> git.pld-linux.org Git - packages/bird.git/blob - bird.spec
- added missing BR: autoconf
[packages/bird.git] / bird.spec
1
2 %bcond_without ipv6     # disable IPv6 support (and building bird-ipv6 package) 
3 %bcond_without ipv4     # disable IPv4 support (and building bird-ipv4 package)
4
5 # TODO:
6 #       - trigger to clean up after old bird package (stop, chkconfig --del)
7
8 Summary:        Routing daemon
9 Summary(pl):    Demon dynamicznego routingu
10 Name:           bird
11 Version:        1.0.9
12 Release:        0.3
13 License:        GPL
14 Group:          Networking/Daemons
15 Source0:        ftp://bird.network.cz/pub/bird/%{name}-%{version}.tar.gz
16 # Source0-md5:  6a1d94b8a33b80e754ea4f9cc0ac1ff3
17 Source1:        %{name}-ipv4.init
18 Source2:        %{name}-ipv4.sysconfig
19 Source3:        %{name}-ipv6.init
20 Source4:        %{name}-ipv6.sysconfig
21 Patch0:         %{name}-posix.patch
22 Patch1:         %{name}-flex.patch
23 URL:            http://bird.network.cz/
24 BuildRequires:  autoconf
25 BuildRequires:  automake
26 BuildRequires:  readline-devel >= 4.2
27 PreReq:         rc-scripts
28 Requires(post,preun):   /sbin/chkconfig
29 Requires:       bird-daemon
30 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
31 Obsoletes:      gated
32 Obsoletes:      mrt
33 Obsoletes:      zebra
34 Obsoletes:      zebra-guile
35
36 %description
37 The BIRD project is an attempt to create a routing daemon running on
38 UNIX-like systems (but not necessarily limited to them) with full
39 support of all modern routing protocols, easy to use configuration
40 interface and powerful route filtering language.
41
42 %description -l pl
43 Projekt BIRD ma na celu utworzenie daemona dynamicznego routingu
44 pracuj±cego na systemach UNIX z pe³nym wsparciem dla nowoczesnych
45 protoko³ów routingu, ³atwym interfejsem konfiguracji i jêzykiem
46 filtrów o du¿ych mo¿liwo¶ciach.
47
48 %package ipv4
49 Summary:        Routing daemon for IPv4
50 Summary(pl):    Demon dynamicznego routingu IPv4
51 Group:          Networking/Daemons
52 PreReq:         rc-scripts
53 Requires(post,preun):   /sbin/chkconfig
54 Provides:       routingdaemon
55 Provides:       bird-daemon
56 Obsoletes:      gated
57 Obsoletes:      mrt
58 Obsoletes:      zebra
59 Obsoletes:      zebra-guile
60 Requires:       %{name} = %{version}-%{release}
61
62 %description ipv4
63 The BIRD project is an attempt to create a routing daemon running on
64 UNIX-like systems (but not necessarily limited to them) with full
65 support of all modern routing protocols, easy to use configuration
66 interface and powerful route filtering language.
67
68 %description -l pl ipv4
69 Projekt BIRD ma na celu utworzenie daemona dynamicznego routingu
70 pracuj±cego na systemach UNIX z pe³nym wsparciem dla nowoczesnych
71 protoko³ów routingu, ³atwym interfejsem konfiguracji i jêzykiem
72 filtrów o du¿ych mo¿liwo¶ciach.
73
74 %package ipv6
75 Summary:        Routing daemon for IPv6
76 Summary(pl):    Demon dynamicznego routingu IPv6
77 Group:          Networking/Daemons
78 PreReq:         rc-scripts
79 Requires(post,preun):   /sbin/chkconfig
80 Provides:       routingdaemon
81 Provides:       bird-daemon
82 Obsoletes:      gated
83 Obsoletes:      mrt
84 Obsoletes:      zebra
85 Obsoletes:      zebra-guile
86 Requires:       %{name} = %{version}-%{release}
87
88 %description ipv6
89 The BIRD project is an attempt to create a routing daemon running on
90 UNIX-like systems (but not necessarily limited to them) with full
91 support of all modern routing protocols, easy to use configuration
92 interface and powerful route filtering language.
93
94 %description -l pl ipv6
95 Projekt BIRD ma na celu utworzenie daemona dynamicznego routingu
96 pracuj±cego na systemach UNIX z pe³nym wsparciem dla nowoczesnych
97 protoko³ów routingu, ³atwym interfejsem konfiguracji i jêzykiem
98 filtrów o du¿ych mo¿liwo¶ciach.
99
100 %prep
101 %setup -q
102 %patch0 -p1
103 %patch1 -p1
104
105 %build
106 cp -f /usr/share/automake/config.* tools
107
108 %if %{with ipv6}
109 %{__autoconf}
110 %configure \
111         --disable-memcheck \
112         --enable-client \
113         --enable-ipv6
114 %{__make}
115
116 mv bird bird-6
117
118 %{__make} clean
119 %endif
120
121 %if %{with ipv4}
122 %configure \
123         --disable-memcheck \
124         --enable-client \
125         --disable-ipv6
126 %{__make}
127 %endif
128
129 %install
130 rm -rf $RPM_BUILD_ROOT
131 install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,/etc/sysconfig,%{_sbindir}}
132
133 install birdc $RPM_BUILD_ROOT%{_sbindir}
134
135 %if %{with ipv6}
136 install bird $RPM_BUILD_ROOT%{_sbindir}
137 install doc/bird.conf.example $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf
138 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-ipv4
139 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-ipv4
140 %endif
141
142 %if %{with ipv6}
143 install bird-6 $RPM_BUILD_ROOT%{_sbindir}
144 cat <<EOF > $RPM_BUILD_ROOT%{_sbindir}/birdc-6
145 #!/bin/sh
146 exec %{_sbindir}/birdc -s /var/run/bird-6.ctl
147 EOF
148 install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-ipv6
149 install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/%{name}-ipv6
150 %endif
151
152 %clean
153 rm -rf $RPM_BUILD_ROOT
154
155 %post ipv4
156 /sbin/chkconfig --add %{name}-ipv4 >&2
157
158 if [ -f /var/lock/subsys/%{name}-ipv4 ]; then
159         /etc/rc.d/init.d/%{name}-ipv4 restart >&2
160 else
161         echo "Run '/etc/rc.d/init.d/%{name}-ipv4 start' to start routing deamon." >&2
162 fi
163
164 %preun ipv4
165 if [ "$1" = "0" ]; then
166         if [ -f /var/lock/subsys/%{name}-ipv4 ]; then
167                 /etc/rc.d/init.d/%{name}-ipv4 stop >&2
168         fi
169         /sbin/chkconfig --del %{name}-ipv4 >&2
170 fi
171
172 %post ipv6
173 /sbin/chkconfig --add %{name}-ipv6 >&2
174
175 if [ -f /var/lock/subsys/%{name}-ipv6 ]; then
176         /etc/rc.d/init.d/%{name}-ipv6 restart >&2
177 else
178         echo "Run '/etc/rc.d/init.d/%{name}-ipv6 start' to start routing deamon." >&2
179 fi
180
181 %preun ipv6
182 if [ "$1" = "0" ]; then
183         if [ -f /var/lock/subsys/%{name}-ipv6 ]; then
184                 /etc/rc.d/init.d/%{name}-ipv6 stop >&2
185         fi
186         /sbin/chkconfig --del %{name}-ipv6 >&2
187 fi
188
189 %files
190 %defattr(644,root,root,755)
191 %doc doc/*.html TODO README
192 %attr(755,root,root) %{_sbindir}/birdc
193
194 %if %{with ipv4}
195 %files ipv4
196 %defattr(644,root,root,755)
197 %attr(755,root,root) %{_sbindir}/bird
198 %attr(754,root,root) /etc/rc.d/init.d/bird-ipv4
199 %attr(754,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/bird-ipv4
200 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/bird.conf
201 %endif
202
203 %if %{with ipv6}
204 %files ipv6
205 %defattr(644,root,root,755)
206 %attr(755,root,root) %{_sbindir}/bird-6
207 %attr(755,root,root) %{_sbindir}/birdc-6
208 %attr(754,root,root) %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/bird-ipv6
209 %attr(754,root,root) %config(noreplace) %verify(not size mtime md5) /etc/rc.d/init.d/bird-ipv6
210 #%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/bird-6.conf
211 %endif
This page took 0.040296 seconds and 3 git commands to generate.