]> git.proxmox.com Git - mirror_frr.git/blob - redhat/frr.spec.in
redhat: Update spec file for new rst documentation
[mirror_frr.git] / redhat / frr.spec.in
1 # configure options
2 #
3 # Some can be overriden on rpmbuild commandline with:
4 # rpmbuild --define 'variable value'
5 # (use any value, ie 1 for flag "with_XXXX" definitions)
6 #
7 # E.g. rpmbuild --define 'release_rev 02' may be useful if building
8 # rpms again and again on the same day, so the newer rpms can be installed.
9 # bumping the number each time.
10
11 #################### FRRouting (FRR) configure options #####################
12 # with-feature options
13 %{!?with_pam: %global with_pam 0 }
14 %{!?with_ospfclient: %global with_ospfclient 1 }
15 %{!?with_ospfapi: %global with_ospfapi 1 }
16 %{!?with_rtadv: %global with_rtadv 1 }
17 %{!?with_ldpd: %global with_ldpd 1 }
18 %{!?with_nhrpd: %global with_nhrpd 1 }
19 %{!?with_eigrpd: %global with_eigrpd 1 }
20 %{!?with_babeld: %global with_babeld 1 }
21 %{!?with_shared: %global with_shared 1 }
22 %{!?with_multipath: %global with_multipath 256 }
23 %{!?frr_user: %global frr_user frr }
24 %{!?vty_group: %global vty_group frrvty }
25 %{!?with_fpm: %global with_fpm 1 }
26 %{!?with_watchfrr: %global with_watchfrr 1 }
27 %{!?with_bgp_vnc: %global with_bgp_vnc 0 }
28 %{!?with_pimd: %global with_pimd 1 }
29
30 # path defines
31 %define _sysconfdir /etc/frr
32 %define _sbindir /usr/lib/frr
33 %define zeb_src %{_builddir}/%{name}-%{frrversion}
34 %define zeb_rh_src %{zeb_src}/redhat
35 %define zeb_docs %{zeb_src}/doc
36 %define frr_tools %{zeb_src}/tools
37
38 # defines for configure
39 %define _localstatedir /var/run/frr
40 ############################################################################
41
42 #### Version String tweak
43 # Remove invalid characters form version string and replace with _
44 %{expand: %%global rpmversion %(echo '@VERSION@' | tr [:blank:]- _ )}
45 %define frrversion @VERSION@
46
47 #### Check for systemd or init.d (upstart)
48 # Check for init.d (upstart) as used in CentOS 6 or systemd (ie CentOS 7)
49 %if 0%{?fedora} >= 15 || 0%{?rhel} >= 7 || 0%{?suse_version} >= 1210
50 %global initsystem systemd
51 %else
52 %if (0%{?fedora} && 0%{?fedora} < 15) || (0%{?rhel} && 0%{?rhel} < 7)
53 %global initsystem upstart
54 %else
55 %{expand: %%global initsystem %(if [[ `/sbin/init --version 2> /dev/null` =~ upstart ]]; then echo upstart; elif [[ `readlink -f /sbin/init` = /usr/lib/systemd/systemd ]]; then echo systemd; elif [[ `systemctl` =~ -\.mount ]]; then echo systemd; fi)}
56 %endif
57 %endif
58 #
59 # If init system is systemd, then always disable watchfrr
60 #
61 %if "%{initsystem}" == "systemd"
62 # Note: For systems with systemd, watchfrr will NOT be built. Systemd
63 # takes over the role of restarting crashed processes. Value will
64 # be overwritten with 0 below for systemd independent on the setting here
65 %global with_watchfrr 1
66 %endif
67
68 #### Check for RedHat 6.x or CentOS 6.x - they are too old to support PIM.
69 #### Always disable it on these old systems unconditionally
70 #
71 # if CentOS / RedHat and version < 7, then disable PIMd (too old, won't work)
72 %if 0%{?rhel} && 0%{?rhel} < 7
73 %global with_pimd 0
74 %endif
75
76 # misc internal defines
77 %{!?frr_uid: %global frr_uid 92 }
78 %{!?frr_gid: %global frr_gid 92 }
79 %{!?vty_gid: %global vty_gid 85 }
80
81 %define daemon_list zebra ripd ospfd bgpd isisd ripngd ospf6d
82
83 %if %{with_ldpd}
84 %define daemon_ldpd ldpd
85 %else
86 %define daemon_ldpd ""
87 %endif
88
89 %if %{with_pimd}
90 %define daemon_pimd pimd
91 %else
92 %define daemon_pimd ""
93 %endif
94
95 %if %{with_nhrpd}
96 %define daemon_nhrpd nhrpd
97 %else
98 %define daemon_nhrpd ""
99 %endif
100
101 %if %{with_eigrpd}
102 %define daemon_eigrpd eigrpd
103 %else
104 %define daemon_eigrpd ""
105 %endif
106
107 %if %{with_babeld}
108 %define daemon_babeld babeld
109 %else
110 %define daemon_babeld ""
111 %endif
112
113 %if %{with_watchfrr}
114 %define daemon_watchfrr watchfrr
115 %else
116 %define daemon_watchfrr ""
117 %endif
118
119 %define all_daemons %{daemon_list} %{daemon_ldpd} %{daemon_pimd} %{daemon_nhrpd} %{daemon_eigrpd} %{daemon_babeld} %{daemon_watchfrr}
120
121 # allow build dir to be kept
122 %{!?keep_build: %global keep_build 0 }
123
124 #release sub-revision (the two digits after the CONFDATE)
125 %{!?release_rev: %global release_rev 01 }
126
127 Summary: Routing daemon
128 Name: frr
129 Version: %{rpmversion}
130 Release: @CONFDATE@%{release_rev}%{?dist}
131 License: GPLv2+
132 Group: System Environment/Daemons
133 Source0: http://www.frrouting.org/releases/frr/%{name}-%{frrversion}.tar.gz
134 URL: http://www.frrouting.org
135 Requires(pre): /sbin/install-info
136 Requires(preun): /sbin/install-info
137 Requires(post): /sbin/install-info
138 BuildRequires: gcc patch libcap-devel
139 BuildRequires: readline readline-devel ncurses ncurses-devel
140 BuildRequires: json-c-devel bison >= 2.7 flex make
141 %if 0%{?rhel} && 0%{?rhel} < 7
142 #python27-devel is available from ius community repo for RedHat/CentOS 6
143 BuildRequires: python27-devel python-sphinx10
144 %else
145 BuildRequires: python-devel >= 2.7 python-sphinx
146 %endif
147 Requires: ncurses json-c initscripts
148 %if %{with_pam}
149 BuildRequires: pam-devel
150 Requires: pam
151 %endif
152 %if "%{initsystem}" == "systemd"
153 BuildRequires: systemd systemd-devel
154 Requires(post): systemd
155 Requires(preun): systemd
156 Requires(postun): systemd
157 %else
158 # Initscripts > 5.60 is required for IPv6 support
159 Requires(pre): initscripts >= 5.60
160 %endif
161 Provides: routingdaemon = %{version}-%{release}
162 BuildRoot: %{_tmppath}/%{name}-%{version}-root
163 Obsoletes: gated mrt zebra frr-sysvinit
164 Conflicts: bird
165
166 %description
167 FRRouting is a free software that manages TCP/IP based routing
168 protocol. It takes multi-server and multi-thread approach to resolve
169 the current complexity of the Internet.
170
171 FRRouting supports BGP4, OSPFv2, OSPFv3, ISIS, RIP, RIPng, PIM, LDP
172 NHRP, Babel and EIGRP.
173
174 FRRouting is a fork of Quagga.
175
176 %package contrib
177 Summary: contrib tools for frr
178 Group: System Environment/Daemons
179
180 %description contrib
181 Contributed/3rd party tools which may be of use with frr.
182
183 %package pythontools
184 Summary: python tools for frr
185 BuildRequires: python
186 Requires: python python-ipaddr
187 Group: System Environment/Daemons
188
189 %description pythontools
190 Contributed python 2.7 tools which may be of use with frr.
191
192 %package devel
193 Summary: Header and object files for frr development
194 Group: System Environment/Daemons
195 Requires: %{name} = %{version}-%{release}
196
197 %description devel
198 The frr-devel package contains the header and object files neccessary for
199 developing OSPF-API and frr applications.
200
201 %prep
202 %setup -q -n frr-%{frrversion}
203
204 %build
205
206 # For standard gcc verbosity, uncomment these lines:
207 #CFLAGS="%{optflags} -Wall -Wsign-compare -Wpointer-arith"
208 #CFLAGS="${CFLAGS} -Wbad-function-cast -Wwrite-strings"
209
210 # For ultra gcc verbosity, uncomment these lines also:
211 #CFLAGS="${CFLAGS} -W -Wcast-qual -Wstrict-prototypes"
212 #CFLAGS="${CFLAGS} -Wmissing-declarations -Wmissing-noreturn"
213 #CFLAGS="${CFLAGS} -Wmissing-format-attribute -Wunreachable-code"
214 #CFLAGS="${CFLAGS} -Wpacked -Wpadded"
215
216 %configure \
217 --sbindir=%{_sbindir} \
218 --sysconfdir=%{_sysconfdir} \
219 --libdir=%{_libdir} \
220 --libexecdir=%{_libexecdir} \
221 --localstatedir=%{_localstatedir} \
222 --disable-werror \
223 --enable-irdp \
224 %if !%{with_shared}
225 --disable-shared \
226 %endif
227 %if %{with_multipath}
228 --enable-multipath=%{with_multipath} \
229 %endif
230 --enable-vtysh \
231 %if %{with_ospfclient}
232 --enable-ospfclient \
233 %else
234 --disable-ospfclient\
235 %endif
236 %if %{with_ospfapi}
237 --enable-ospfapi=yes \
238 %else
239 --enable-ospfapi=no \
240 %endif
241 %if %{with_rtadv}
242 --enable-rtadv=yes \
243 %else
244 --enable-rtadv=no \
245 %endif
246 %if %{with_ldpd}
247 --enable-ldpd \
248 %else
249 --disable-ldpd \
250 %endif
251 %if %{with_pimd}
252 --enable-pimd \
253 %else
254 --disable-pimd \
255 %endif
256 %if %{with_nhrpd}
257 --enable-nhrpd \
258 %else
259 --disable-nhrpd \
260 %endif
261 %if %{with_eigrpd}
262 --enable-eigrpd \
263 %else
264 --disable-eigrpd \
265 %endif
266 %if %{with_babeld}
267 --enable-babeld \
268 %else
269 --disable-babeld \
270 %endif
271 %if %{with_pam}
272 --with-libpam \
273 %endif
274 %if 0%{?frr_user:1}
275 --enable-user=%frr_user \
276 --enable-group=%frr_user \
277 %endif
278 %if 0%{?vty_group:1}
279 --enable-vty-group=%vty_group \
280 %endif
281 %if %{with_fpm}
282 --enable-fpm \
283 %else
284 --disable-fpm \
285 %endif
286 %if %{with_watchfrr}
287 --enable-watchfrr \
288 %else
289 --disable-watchfrr \
290 %endif
291 %if %{with_bgp_vnc}
292 --enable-bgp-vnc \
293 %else
294 --disable-bgp-vnc \
295 %endif
296 --enable-isisd=yes \
297 %if "%{initsystem}" == "systemd"
298 --enable-systemd=yes \
299 %endif
300 --enable-poll=yes
301
302 make %{?_smp_mflags} MAKEINFO="makeinfo --no-split"
303
304 pushd doc
305 make frr.info
306 popd
307
308 %install
309 mkdir -p %{buildroot}/etc/{frr,sysconfig,logrotate.d,pam.d,default} \
310 %{buildroot}/var/log/frr %{buildroot}%{_infodir}
311 make DESTDIR=%{buildroot} INSTALL="install -p" CP="cp -p" install
312
313 # Remove this file, as it is uninstalled and causes errors when building on RH9
314 rm -rf %{buildroot}/usr/share/info/dir
315
316 # Remove debian init script if it was installed
317 rm -f %{buildroot}%{_sbindir}/frr
318
319 # kill bogus libtool files for modules
320 rm -f %{buildroot}%{_libdir}/frr/modules/*.la
321
322 # install /etc sources
323 %if "%{initsystem}" == "systemd"
324 mkdir -p %{buildroot}%{_unitdir}
325 install -m644 %{zeb_rh_src}/frr.service \
326 %{buildroot}%{_unitdir}/frr.service
327 install %{zeb_rh_src}/frr.init \
328 %{buildroot}%{_sbindir}/frr
329 %else
330 mkdir -p %{buildroot}/etc/rc.d/init.d
331 install %{zeb_rh_src}/frr.init \
332 %{buildroot}%{_sbindir}/frr
333 ln -s %{_sbindir}/frr \
334 %{buildroot}/etc/rc.d/init.d/frr
335 %endif
336
337 install %{zeb_rh_src}/daemons %{buildroot}/etc/frr
338 install -m644 %{zeb_rh_src}/frr.pam \
339 %{buildroot}/etc/pam.d/frr
340 install -m644 %{zeb_rh_src}/frr.logrotate \
341 %{buildroot}/etc/logrotate.d/frr
342 install -d -m750 %{buildroot}/var/run/frr
343
344 %pre
345 # add vty_group
346 %if 0%{?vty_group:1}
347 if getent group %vty_group > /dev/null ; then : ; else \
348 /usr/sbin/groupadd -r -g %vty_gid %vty_group > /dev/null || : ; fi
349 %endif
350
351 # add frr user and group
352 %if 0%{?frr_user:1}
353 # Ensure that frr_gid gets correctly allocated
354 if getent group %frr_user >/dev/null; then : ; else \
355 /usr/sbin/groupadd -g %frr_gid %frr_user > /dev/null || : ; \
356 fi
357 if getent passwd %frr_user >/dev/null ; then : ; else \
358 /usr/sbin/useradd -u %frr_uid -g %frr_gid \
359 -M -r -s /sbin/nologin -c "FRRouting suite" \
360 -d %_localstatedir %frr_user 2> /dev/null || : ; \
361 fi
362 %if 0%{?vty_group:1}
363 /usr/sbin/usermod -a -G %vty_group %frr_user
364 %endif
365 %endif
366
367
368 %post
369 # zebra_spec_add_service <service name> <port/proto> <comment>
370 # e.g. zebra_spec_add_service zebrasrv 2600/tcp "zebra service"
371
372 zebra_spec_add_service ()
373 {
374 # Add port /etc/services entry if it isn't already there
375 if [ -f /etc/services ] && \
376 ! %__sed -e 's/#.*$//' /etc/services | %__grep -wq $1 ; then
377 echo "$1 $2 # $3" >> /etc/services
378 fi
379 }
380
381 zebra_spec_add_service zebrasrv 2600/tcp "zebra service"
382 zebra_spec_add_service zebra 2601/tcp "zebra vty"
383 zebra_spec_add_service ripd 2602/tcp "RIPd vty"
384 zebra_spec_add_service ripngd 2603/tcp "RIPngd vty"
385 zebra_spec_add_service ospfd 2604/tcp "OSPFd vty"
386 zebra_spec_add_service bgpd 2605/tcp "BGPd vty"
387 zebra_spec_add_service ospf6d 2606/tcp "OSPF6d vty"
388 %if %{with_ospfapi}
389 zebra_spec_add_service ospfapi 2607/tcp "OSPF-API"
390 %endif
391 zebra_spec_add_service isisd 2608/tcp "ISISd vty"
392 %if %{with_babeld}
393 zebra_spec_add_service babeld 2609/tcp "BABELd vty"
394 %endif
395 %if %{with_nhrpd}
396 zebra_spec_add_service nhrpd 2610/tcp "NHRPd vty"
397 %endif
398 %if %{with_pimd}
399 zebra_spec_add_service pimd 2611/tcp "PIMd vty"
400 %endif
401 %if %{with_ldpd}
402 zebra_spec_add_service ldpd 2612/tcp "LDPd vty"
403 %endif
404 %if %{with_eigrpd}
405 zebra_spec_add_service eigrpd 2613/tcp "EIGRPd vty"
406 %endif
407
408 %if "%{initsystem}" == "systemd"
409 for daemon in %all_daemons ; do
410 %systemd_post frr.service
411 done
412 %else
413 /sbin/chkconfig --add frr
414 %endif
415
416 # Fix bad path in previous config files
417 # Config files won't get replaced by default, so we do this ugly hack to fix it
418 %__sed -i 's|/etc/init.d/|%{_sbindir}/|g' %{_sysconfdir}/daemons 2> /dev/null || true
419
420 /sbin/install-info %{_infodir}/frr.info.gz %{_infodir}/dir
421
422 # Create dummy files if they don't exist so basic functions can be used.
423 if [ ! -e %{_sysconfdir}/zebra.conf ]; then
424 echo "hostname `hostname`" > %{_sysconfdir}/zebra.conf
425 %if 0%{?frr_user:1}
426 chown %frr_user:%frr_user %{_sysconfdir}/zebra.conf*
427 %endif
428 chmod 640 %{_sysconfdir}/zebra.conf*
429 fi
430 for daemon in %{all_daemons} ; do
431 if [ x"${daemon}" != x"" ] ; then
432 if [ ! -e %{_sysconfdir}/${daemon}.conf ]; then
433 touch %{_sysconfdir}/${daemon}.conf
434 %if 0%{?frr_user:1}
435 chown %frr_user:%frr_user %{_sysconfdir}/${daemon}.conf*
436 %endif
437 fi
438 fi
439 done
440 %if 0%{?frr_user:1}
441 chown %frr_user:%frr_user %{_sysconfdir}/daemons
442 %endif
443
444 %if %{with_watchfrr}
445 # No config for watchfrr - this is part of /etc/sysconfig/frr
446 rm -f %{_sysconfdir}/watchfrr.*
447 %endif
448
449 if [ ! -e %{_sysconfdir}/vtysh.conf ]; then
450 touch %{_sysconfdir}/vtysh.conf
451 chmod 640 %{_sysconfdir}/vtysh.conf
452 %if 0%{?frr_user:1}
453 %if 0%{?vty_group:1}
454 chown %{frr_user}:%{vty_group} %{_sysconfdir}/vtysh.conf*
455 %endif
456 %endif
457 fi
458
459 %postun
460 if [ "$1" -ge 1 ]; then
461 #
462 # Upgrade from older version
463 #
464 %if "%{initsystem}" == "systemd"
465 ##
466 ## Systemd Version
467 ##
468 %systemd_postun_with_restart frr.service
469 %else
470 ##
471 ## init.d Version
472 ##
473 /etc/rc.d/init.d/frr restart >/dev/null 2>&1
474 %endif
475 :
476 fi
477
478 %preun
479 %if "%{initsystem}" == "systemd"
480 ##
481 ## Systemd Version
482 ##
483 if [ $1 -eq 0 ] ; then
484 %systemd_preun frr.service
485 fi
486 %else
487 ##
488 ## init.d Version
489 ##
490 if [ $1 -eq 0 ] ; then
491 /etc/rc.d/init.d/frr stop >/dev/null 2>&1
492 /sbin/chkconfig --del frr
493 fi
494 %endif
495 /sbin/install-info --delete %{_infodir}/frr.info.gz %{_infodir}/dir
496
497 %clean
498 %if !0%{?keep_build:1}
499 rm -rf %{buildroot}
500 %endif
501
502 %files
503 %defattr(-,root,root)
504 %doc */*.sample* AUTHORS COPYING
505 %doc doc/mpls
506 %doc ChangeLog INSTALL NEWS README REPORTING-BUGS SERVICES
507 %if 0%{?frr_user:1}
508 %dir %attr(751,%frr_user,%frr_user) %{_sysconfdir}
509 %dir %attr(750,%frr_user,%frr_user) /var/log/frr
510 %dir %attr(751,%frr_user,%frr_user) /var/run/frr
511 %else
512 %dir %attr(750,root,root) %{_sysconfdir}
513 %dir %attr(750,root,root) /var/log/frr
514 %dir %attr(750,root,root) /var/run/frr
515 %endif
516 %if 0%{?vty_group:1}
517 %attr(750,%frr_user,%vty_group) %{_sysconfdir}/vtysh.conf.sample
518 %endif
519 %{_infodir}/frr.info.gz
520 %{_mandir}/man*/*
521 %{_sbindir}/zebra
522 %{_sbindir}/ospfd
523 %{_sbindir}/ripd
524 %{_sbindir}/bgpd
525 %exclude %{_sbindir}/ssd
526 %if %{with_watchfrr}
527 %{_sbindir}/watchfrr
528 %endif
529 %{_sbindir}/ripngd
530 %{_sbindir}/ospf6d
531 %if %{with_pimd}
532 %{_sbindir}/pimd
533 %endif
534 %{_sbindir}/isisd
535 %if %{with_ldpd}
536 %{_sbindir}/ldpd
537 %endif
538 %if %{with_eigrpd}
539 %{_sbindir}/eigrpd
540 %endif
541 %if %{with_nhrpd}
542 %{_sbindir}/nhrpd
543 %endif
544 %if %{with_babeld}
545 %{_sbindir}/babeld
546 %endif
547 %if %{with_shared}
548 %{_libdir}/lib*.so
549 %{_libdir}/lib*.so.0
550 %attr(755,root,root) %{_libdir}/lib*.so.0.*
551 %endif
552 %if %{with_fpm}
553 %attr(755,root,root) %{_libdir}/frr/modules/zebra_fpm.so
554 %endif
555 %attr(755,root,root) %{_libdir}/frr/modules/zebra_irdp.so
556 %{_bindir}/*
557 %config(noreplace) /etc/frr/[!v]*.conf*
558 %config(noreplace) %attr(750,%frr_user,%frr_user) /etc/frr/daemons
559 %if "%{initsystem}" == "systemd"
560 %attr(644,root,root) %{_unitdir}/frr.service
561 %{_sbindir}/frr
562 %else
563 /etc/rc.d/init.d/frr
564 %{_sbindir}/frr
565 %endif
566 %config(noreplace) /etc/pam.d/frr
567 %config(noreplace) %attr(640,root,root) /etc/logrotate.d/*
568
569 %files contrib
570 %defattr(-,root,root)
571 %doc tools
572
573 %files pythontools
574 %defattr(-,root,root)
575 %{_sbindir}/frr-reload.py
576 %{_sbindir}/frr-reload.pyc
577 %{_sbindir}/frr-reload.pyo
578
579 %files devel
580 %defattr(-,root,root)
581 %if %{with_ospfclient}
582 %{_sbindir}/ospfclient
583 %endif
584 %{_libdir}/*.a
585 %{_libdir}/*.la
586 %dir %attr(755,root,root) %{_includedir}/%{name}
587 %{_includedir}/%name/*.h
588 %dir %attr(755,root,root) %{_includedir}/%{name}/ospfd
589 %{_includedir}/%name/ospfd/*.h
590 %if %{with_ospfapi}
591 %dir %attr(755,root,root) %{_includedir}/%{name}/ospfapi
592 %{_includedir}/%name/ospfapi/*.h
593 %endif
594 %if %{with_eigrpd}
595 %dir %attr(755,root,root) %{_includedir}/%{name}/eigrpd
596 %{_includedir}/%name/eigrpd/*.h
597 %endif
598
599 %changelog
600 * Tue Feb 20 2018 Martin Winter <mwinter@opensourcerouting.org> - %{version}
601 - Adapt to new documentation structure based on Sphinx
602
603 * Fri Oct 20 2017 Martin Winter <mwinter@opensourcerouting.org>
604 - Fix script location for watchfrr restart functions in daemon config
605 - Fix postun script to restart frr during upgrade
606
607 * Mon Jun 5 2017 Martin Winter <mwinter@opensourcerouting.org>
608 - added NHRP and EIGRP daemon
609
610 * Mon Apr 17 2017 Martin Winter <mwinter@opensourcerouting.org>
611 - new subpackage frr-pythontools with python 2.7 restart script
612 - remove PIMd from CentOS/RedHat 6 RPM packages (won't work - too old)
613 - converted to single frr init script (not per daemon) based on debian init script
614 - created systemd service file for systemd based systems (which uses init script)
615 - Various other RPM package fixes for FRR 2.0
616
617 * Fri Jan 6 2017 Martin Winter <mwinter@opensourcerouting.org>
618 - Renamed to frr for FRRouting fork of Quagga
619
620 * Thu Feb 11 2016 Paul Jakma <paul@jakma.org>
621 - remove with_ipv6 conditionals, always build v6
622 - Fix UTF-8 char in spec changelog
623 - remove quagga.pam.stack, long deprecated.
624
625 * Thu Oct 22 2015 Martin Winter <mwinter@opensourcerouting.org>
626 - Cleanup configure: remove --enable-ipv6 (default now), --enable-nssa,
627 --enable-netlink
628 - Remove support for old fedora 4/5
629 - Fix for package nameing
630 - Fix Weekdays of previous changelogs (bogus dates)
631 - Add conditional logic to only build tex footnotes with supported texi2html
632 - Added pimd to files section and fix double listing of /var/lib*/quagga
633 - Numerous fixes to unify upstart/systemd startup into same spec file
634 - Only allow use of watchfrr for non-systemd systems. no need with systemd
635
636 * Fri Sep 4 2015 Paul Jakma <paul@jakma.org>
637 - buildreq updates
638 - add a default define for with_pimd
639
640 * Mon Sep 12 2005 Paul Jakma <paul@dishone.st>
641 - Steal some changes from Fedora spec file:
642 - Add with_rtadv variable
643 - Test for groups/users with getent before group/user adding
644 - Readline need not be an explicit prerequisite
645 - install-info delete should be postun, not preun
646
647 * Wed Jan 12 2005 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
648 - on package upgrade, implement careful, phased restart logic
649 - use gcc -rdynamic flag when linking for better backtraces
650
651 * Wed Dec 22 2004 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
652 - daemonv6_list should contain only IPv6 daemons
653
654 * Wed Dec 22 2004 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
655 - watchfrr added
656 - on upgrade, all daemons should be condrestart'ed
657 - on removal, all daemons should be stopped
658
659 * Mon Nov 08 2004 Paul Jakma <paul@dishone.st>
660 - Use makeinfo --html to generate quagga.html
661
662 * Sun Nov 07 2004 Paul Jakma <paul@dishone.st>
663 - Fix with_ipv6 set to 0 build
664
665 * Sat Oct 23 2004 Paul Jakma <paul@dishone.st>
666 - Update to 0.97.2
667
668 * Sat Oct 23 2004 Andrew J. Schorr <aschorr@telemetry-investments.com>
669 - Make directories be owned by the packages concerned
670 - Update logrotate scripts to use correct path to killall and use pid files
671
672 * Fri Oct 08 2004 Paul Jakma <paul@dishone.st>
673 - Update to 0.97.0
674
675 * Wed Sep 15 2004 Paul Jakma <paul@dishone.st>
676 - build snmp support by default
677 - build irdp support
678 - build with shared libs
679 - devel subpackage for archives and headers
680
681 * Thu Jan 08 2004 Paul Jakma <paul@dishone.st>
682 - updated sysconfig files to specify local dir
683 - added ospf_dump.c crash quick fix patch
684 - added ospfd persistent interface configuration patch
685
686 * Tue Dec 30 2003 Paul Jakma <paul@dishone.st>
687 - sync to CVS
688 - integrate RH sysconfig patch to specify daemon options (RH)
689 - default to have vty listen only to 127.1 (RH)
690 - add user with fixed UID/GID (RH)
691 - create user with shell /sbin/nologin rather than /bin/false (RH)
692 - stop daemons on uninstall (RH)
693 - delete info file on preun, not postun to avoid deletion on upgrade. (RH)
694 - isisd added
695 - cleanup tasks carried out for every daemon
696
697 * Sun Nov 2 2003 Paul Jakma <paul@dishone.st>
698 - Fix -devel package to include all files
699 - Sync to 0.96.4
700
701 * Tue Aug 12 2003 Paul Jakma <paul@dishone.st>
702 - Renamed to Quagga
703 - Sync to Quagga release 0.96
704
705 * Thu Mar 20 2003 Paul Jakma <paul@dishone.st>
706 - zebra privileges support
707
708 * Tue Mar 18 2003 Paul Jakma <paul@dishone.st>
709 - Fix mem leak in 'show thread cpu'
710 - Ralph Keller's OSPF-API
711 - Amir: Fix configure.ac for net-snmp
712
713 * Sat Mar 1 2003 Paul Jakma <paul@dishone.st>
714 - ospfd IOS prefix to interface matching for 'network' statement
715 - temporary fix for PtP and IPv6
716 - sync to zebra.org CVS
717
718 * Mon Jan 20 2003 Paul Jakma <paul@dishone.st>
719 - update to latest cvs
720 - Yon's "show thread cpu" patch - 17217
721 - walk up tree - 17218
722 - ospfd NSSA fixes - 16681
723 - ospfd nsm fixes - 16824
724 - ospfd OLSA fixes and new feature - 16823
725 - KAME and ifindex fixes - 16525
726 - spec file changes to allow redhat files to be in tree
727
728 * Sat Dec 28 2002 Alexander Hoogerhuis <alexh@ihatent.com>
729 - Added conditionals for building with(out) IPv6, vtysh, RIP, BGP
730 - Fixed up some build requirements (patch)
731 - Added conditional build requirements for vtysh / snmp
732 - Added conditional to files for _bindir depending on vtysh
733
734 * Mon Nov 11 2002 Paul Jakma <paulj@alphyra.ie>
735 - update to latest CVS
736 - add Greg Troxel's md5 buffer copy/dup fix
737 - add RIPv1 fix
738 - add Frank's multicast flag fix
739
740 * Wed Oct 09 2002 Paul Jakma <paulj@alphyra.ie>
741 - update to latest CVS
742 - timestamped crypt_seqnum patch
743 - oi->on_write_q fix
744
745 * Mon Sep 30 2002 Paul Jakma <paulj@alphyra.ie>
746 - update to latest CVS
747 - add vtysh 'write-config (integrated|daemon)' patch
748 - always 'make rebuild' in vtysh/ to catch new commands
749
750 * Fri Sep 13 2002 Paul Jakma <paulj@alphyra.ie>
751 - update to 0.93b
752
753 * Wed Sep 11 2002 Paul Jakma <paulj@alphyra.ie>
754 - update to latest CVS
755 - add "/sbin/ip route flush proto zebra" to zebra RH init on startup
756
757 * Sat Aug 24 2002 Paul Jakma <paulj@alphyra.ie>
758 - update to current CVS
759 - add OSPF point to multipoint patch
760 - add OSPF bugfixes
761 - add BGP hash optimisation patch
762
763 * Fri Jun 14 2002 Paul Jakma <paulj@alphyra.ie>
764 - update to 0.93-pre1 / CVS
765 - add link state detection support
766 - add generic PtP and RFC3021 support
767 - various bug fixes
768
769 * Thu Aug 09 2001 Elliot Lee <sopwith@redhat.com> 0.91a-6
770 - Fix bug #51336
771
772 * Wed Aug 1 2001 Trond Eivind Glomsrød <teg@redhat.com> 0.91a-5
773 - Use generic initscript strings instead of initscript specific
774 ( "Starting foo: " -> "Starting $prog:" )
775
776 * Fri Jul 27 2001 Elliot Lee <sopwith@redhat.com> 0.91a-4
777 - Bump the release when rebuilding into the dist.
778
779 * Tue Feb 6 2001 Tim Powers <timp@redhat.com>
780 - built for Powertools
781
782 * Sun Feb 4 2001 Pekka Savola <pekkas@netcore.fi>
783 - Hacked up from PLD Linux 0.90-1, Mandrake 0.90-1mdk and one from zebra.org.
784 - Update to 0.91a
785 - Very heavy modifications to init.d/*, .spec, pam, i18n, logrotate, etc.
786 - Should be quite Red Hat'isque now.