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