forked from Mirror/frr
bfdd: wire to the build process
Add BFD daemon to the build process and packaging instructions. Currently the bfdd daemon does nothing, this is just to document how the daemon insertion step occured. Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
This commit is contained in:
parent
e9e2c950d7
commit
7134904b1f
|
@ -56,6 +56,7 @@ include sharpd/subdir.am
|
|||
include pimd/subdir.am
|
||||
include pbrd/subdir.am
|
||||
include staticd/subdir.am
|
||||
include bfdd/subdir.am
|
||||
|
||||
SUBDIRS = . @LIBRFP@ @RFPTEST@ \
|
||||
@BGPD@ \
|
||||
|
|
27
configure.ac
27
configure.ac
|
@ -452,6 +452,8 @@ AC_ARG_ENABLE([numeric_version],
|
|||
AS_HELP_STRING([--enable-numeric-version], [Only numeric digits allowed in version (for Alpine)]))
|
||||
AC_ARG_ENABLE([gcov],
|
||||
AS_HELP_STRING([--enable-gcov], [Add code coverage information]))
|
||||
AC_ARG_ENABLE(bfdd,
|
||||
AS_HELP_STRING([--disable-bfdd], [do not build bfdd]))
|
||||
|
||||
AS_IF([test "${enable_clippy_only}" != "yes"], [
|
||||
AC_CHECK_HEADERS(json-c/json.h)
|
||||
|
@ -1368,6 +1370,30 @@ AS_IF([test "${enable_ldpd}" != "no"], [
|
|||
AC_DEFINE(HAVE_LDPD, 1, ldpd)
|
||||
])
|
||||
|
||||
if test "$enable_bfdd" = "no"; then
|
||||
AC_DEFINE(HAVE_BFDD, 0, bfdd)
|
||||
BFDD=""
|
||||
else
|
||||
AC_DEFINE(HAVE_BFDD, 1, bfdd)
|
||||
BFDD="bfdd"
|
||||
|
||||
case $host_os in
|
||||
linux*)
|
||||
AC_DEFINE(BFD_LINUX, 1, bfdd)
|
||||
;;
|
||||
|
||||
*)
|
||||
AC_DEFINE(BFD_BSD, 1, bfdd)
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL(BFDD, [test "x$BFDD" = "xbfdd"])
|
||||
|
||||
if test $ac_cv_lib_json_c_json_object_get = no -a "x$BFDD" = "xbfdd"; then
|
||||
AC_MSG_ERROR(["you must use json-c library to use bfdd"])
|
||||
fi
|
||||
|
||||
NHRPD=""
|
||||
case "$host_os" in
|
||||
linux*)
|
||||
|
@ -1880,6 +1906,7 @@ AC_SUBST(frr_statedir)
|
|||
|
||||
AC_DEFINE_UNQUOTED(LDPD_SOCKET, "$frr_statedir/ldpd.sock",ldpd control socket)
|
||||
AC_DEFINE_UNQUOTED(ZEBRA_SERV_PATH, "$frr_statedir/zserv.api",zebra api socket)
|
||||
AC_DEFINE_UNQUOTED(BFDD_CONTROL_SOCKET, "$frr_statedir/bfdd.sock", bfdd control socket)
|
||||
AC_DEFINE_UNQUOTED(DAEMON_VTY_DIR, "$frr_statedir",daemon vty directory)
|
||||
|
||||
dnl autoconf does this, but it does it too late...
|
||||
|
|
|
@ -134,6 +134,7 @@ override_dh_auto_configure:
|
|||
--enable-poll=yes \
|
||||
$(USE_CUMULUS) \
|
||||
$(USE_PIM) \
|
||||
--disable-bfdd \
|
||||
--enable-dependency-tracking \
|
||||
$(USE_BGP_VNC) \
|
||||
$(shell dpkg-buildflags --export=configure); \
|
||||
|
|
|
@ -16,6 +16,7 @@ WANT_CUMULUS_MODE ?= 0
|
|||
WANT_MULTIPATH ?= 1
|
||||
WANT_SNMP ?= 0
|
||||
WANT_RPKI ?= 0
|
||||
WANT_BFD ?= 1
|
||||
|
||||
# NOTES:
|
||||
#
|
||||
|
@ -108,6 +109,12 @@ else
|
|||
USE_RPKI=--disable-rpki
|
||||
endif
|
||||
|
||||
ifeq ($(WANT_BFD), 1)
|
||||
USE_BFD=--enable-bfdd
|
||||
else
|
||||
USE_BFD=--disable-bfdd
|
||||
endif
|
||||
|
||||
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
|
||||
DEBIAN_JOBS := $(subst parallel=,,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
|
||||
endif
|
||||
|
@ -159,6 +166,7 @@ override_dh_auto_configure:
|
|||
--enable-dependency-tracking \
|
||||
$(USE_BGP_VNC) \
|
||||
$(USE_RPKI) \
|
||||
$(USE_BFD) \
|
||||
$(shell dpkg-buildflags --export=configure); \
|
||||
fi
|
||||
|
||||
|
|
|
@ -16,6 +16,7 @@ WANT_CUMULUS_MODE ?= 0
|
|||
WANT_MULTIPATH ?= 1
|
||||
WANT_SNMP ?= 0
|
||||
WANT_RPKI ?= 0
|
||||
WANT_BFD ?= 1
|
||||
|
||||
# NOTES:
|
||||
#
|
||||
|
@ -108,6 +109,12 @@ else
|
|||
USE_RPKI=--disable-rpki
|
||||
endif
|
||||
|
||||
ifeq ($(WANT_BFD), 1)
|
||||
USE_BFD=--enable-bfdd
|
||||
else
|
||||
USE_BFD=--disable-bfdd
|
||||
endif
|
||||
|
||||
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
|
||||
DEBIAN_JOBS := $(subst parallel=,,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
|
||||
endif
|
||||
|
@ -160,6 +167,7 @@ override_dh_auto_configure:
|
|||
--enable-dependency-tracking \
|
||||
$(USE_BGP_VNC) \
|
||||
$(USE_RPKI) \
|
||||
$(USE_BFD) \
|
||||
$(shell dpkg-buildflags --export=configure); \
|
||||
fi
|
||||
|
||||
|
|
|
@ -52,6 +52,8 @@ babeld=no
|
|||
sharpd=no
|
||||
pbrd=no
|
||||
staticd=no
|
||||
bfdd=no
|
||||
|
||||
#
|
||||
# Command line options for the daemons
|
||||
#
|
||||
|
@ -70,6 +72,7 @@ babeld_options=("-A 127.0.0.1")
|
|||
sharpd_options=("-A 127.0.0.1")
|
||||
pbrd_options=("-A 127.0.0.1")
|
||||
staticd_options=("-A 127.0.0.1")
|
||||
bfdd_options=("-A 127.0.0.1")
|
||||
|
||||
#
|
||||
# If the vtysh_enable is yes, then the unified config is read
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
#
|
||||
# chkconfig: 2345 15 85
|
||||
#
|
||||
# description: FRRouting (FRR) is a routing suite for IP routing protocols
|
||||
# description: FRRouting (FRR) is a routing suite for IP routing protocols
|
||||
# like BGP, OSPF, RIP and others. This script contols the main
|
||||
# daemon "frr" as well as the individual protocol daemons.
|
||||
#
|
||||
|
@ -20,7 +20,7 @@
|
|||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: Start/Stop the FRR Routing daemons
|
||||
# Description: FRRouting (FRR) is a routing suite for IP routing protocols
|
||||
# Description: FRRouting (FRR) is a routing suite for IP routing protocols
|
||||
# like BGP, OSPF, RIP and others. This script contols the main
|
||||
# daemon "frr" as well as the individual protocol daemons.
|
||||
### END INIT INFO
|
||||
|
@ -33,7 +33,7 @@ V_PATH=/var/run/frr
|
|||
# Local Daemon selection may be done by using /etc/frr/daemons.
|
||||
# See /usr/share/doc/frr/README.Debian.gz for further information.
|
||||
# Keep zebra first and do not list watchfrr!
|
||||
DAEMONS="zebra bgpd ripd ripngd ospfd ospf6d isisd pimd pbrd ldpd nhrpd eigrpd babeld staticd sharpd"
|
||||
DAEMONS="zebra bgpd ripd ripngd ospfd ospf6d isisd pimd pbrd ldpd nhrpd eigrpd babeld staticd sharpd bfdd"
|
||||
MAX_INSTANCES=5
|
||||
RELOAD_SCRIPT=/usr/lib/frr/frr-reload.py
|
||||
|
||||
|
|
|
@ -86,3 +86,10 @@
|
|||
endscript
|
||||
}
|
||||
|
||||
/var/log/frr/bfdd.log {
|
||||
notifempty
|
||||
missingok
|
||||
postrotate
|
||||
/bin/kill -USR1 `cat /var/run/frr/bfdd.pid 2> /dev/null` 2> /dev/null || true
|
||||
endscript
|
||||
}
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
#################### FRRouting (FRR) configure options #####################
|
||||
# with-feature options
|
||||
%{!?with_babeld: %global with_babeld 1 }
|
||||
%{!?with_bfdd: %global with_bfdd 1 }
|
||||
%{!?with_bgp_vnc: %global with_bgp_vnc 0 }
|
||||
%{!?with_cumulus: %global with_cumulus 0 }
|
||||
%{!?with_eigrpd: %global with_eigrpd 1 }
|
||||
|
@ -85,7 +86,7 @@
|
|||
%{!?frr_gid: %global frr_gid 92 }
|
||||
%{!?vty_gid: %global vty_gid 85 }
|
||||
|
||||
%define daemon_list zebra ripd ospfd bgpd isisd ripngd ospf6d pbrd staticd
|
||||
%define daemon_list zebra ripd ospfd bgpd isisd ripngd ospf6d pbrd staticd bfdd
|
||||
|
||||
%if %{with_ldpd}
|
||||
%define daemon_ldpd ldpd
|
||||
|
@ -129,7 +130,13 @@
|
|||
%define daemon_watchfrr ""
|
||||
%endif
|
||||
|
||||
%define all_daemons %{daemon_list} %{daemon_ldpd} %{daemon_pimd} %{daemon_nhrpd} %{daemon_eigrpd} %{daemon_babeld} %{daemon_watchfrr} %{daemon_pbrd}
|
||||
%if %{with_bfdd}
|
||||
%define daemon_bfdd bfdd
|
||||
%else
|
||||
%define daemon_bfdd ""
|
||||
%endif
|
||||
|
||||
%define all_daemons %{daemon_list} %{daemon_ldpd} %{daemon_pimd} %{daemon_nhrpd} %{daemon_eigrpd} %{daemon_babeld} %{daemon_watchfrr} %{daemon_pbrd} %{daemon_bfdd}
|
||||
|
||||
#release sub-revision (the two digits after the CONFDATE)
|
||||
%{!?release_rev: %global release_rev 01 }
|
||||
|
@ -193,7 +200,7 @@ protocol. It takes multi-server and multi-thread approach to resolve
|
|||
the current complexity of the Internet.
|
||||
|
||||
FRRouting supports BGP4, OSPFv2, OSPFv3, ISIS, RIP, RIPng, PIM, LDP
|
||||
NHRP, Babel, PBR and EIGRP.
|
||||
NHRP, Babel, PBR, EIGRP and BFD.
|
||||
|
||||
FRRouting is a fork of Quagga.
|
||||
|
||||
|
@ -331,9 +338,14 @@ developing OSPF-API and frr applications.
|
|||
--enable-systemd \
|
||||
%endif
|
||||
%if %{with_rpki}
|
||||
--enable-rpki
|
||||
--enable-rpki \
|
||||
%else
|
||||
--disable-rpki
|
||||
--disable-rpki \
|
||||
%endif
|
||||
%if %{with_bfdd}
|
||||
--enable-bfdd
|
||||
%else
|
||||
--disable-bfdd
|
||||
%endif
|
||||
|
||||
make %{?_smp_mflags} MAKEINFO="makeinfo --no-split" SPHINXBUILD=%{sphinx}
|
||||
|
@ -444,6 +456,9 @@ zebra_spec_add_service isisd 2608/tcp "ISISd vty"
|
|||
%if %{with_eigrpd}
|
||||
zebra_spec_add_service eigrpd 2613/tcp "EIGRPd vty"
|
||||
%endif
|
||||
%if %{with_bfdd}
|
||||
zebra_spec_add_service bfdd 2617/tcp "BFDd vty"
|
||||
%endif
|
||||
|
||||
%if "%{initsystem}" == "systemd"
|
||||
for daemon in %all_daemons ; do
|
||||
|
@ -591,6 +606,9 @@ fi
|
|||
%if %{with_babeld}
|
||||
%{_sbindir}/babeld
|
||||
%endif
|
||||
%if %{with_bfdd}
|
||||
%{_sbindir}/bfdd
|
||||
%endif
|
||||
%{_libdir}/lib*.so.0
|
||||
%{_libdir}/lib*.so.0.*
|
||||
%if %{with_fpm}
|
||||
|
@ -644,6 +662,9 @@ fi
|
|||
|
||||
|
||||
%changelog
|
||||
* Sun May 28 2018 Rafael Zalamena <rzalamena@opensourcerouting.org> - %{version}
|
||||
- Add BFDd support
|
||||
|
||||
* Sun May 20 2018 Martin Winter <mwinter@opensourcerouting.org>
|
||||
- Fixed RPKI RPM build
|
||||
|
||||
|
|
|
@ -35,3 +35,4 @@ eigrpd=no
|
|||
babeld=no
|
||||
sharpd=no
|
||||
pbrd=no
|
||||
bfdd=no
|
||||
|
|
|
@ -19,6 +19,7 @@ babeld_options=" --daemon -A 127.0.0.1"
|
|||
sharpd_options=" --daemon -A 127.0.0.1"
|
||||
pbrd_options=" --daemon -A 127.0.0.1"
|
||||
staticd_options=" --daemon -A 127.0.0.1"
|
||||
bfdd_options=" --daemon -A 127.0.0.1"
|
||||
|
||||
# The list of daemons to watch is automatically generated by the init script.
|
||||
watchfrr_enable=yes
|
||||
|
|
|
@ -21,7 +21,7 @@ V_PATH=/var/run/frr
|
|||
# Local Daemon selection may be done by using /etc/frr/daemons.
|
||||
# See /usr/share/doc/frr/README.Debian.gz for further information.
|
||||
# Keep zebra first and do not list watchfrr!
|
||||
DAEMONS="zebra bgpd ripd ripngd ospfd ospf6d isisd babeld pimd ldpd nhrpd eigrpd sharpd pbrd staticd"
|
||||
DAEMONS="zebra bgpd ripd ripngd ospfd ospf6d isisd babeld pimd ldpd nhrpd eigrpd sharpd pbrd staticd bfdd"
|
||||
MAX_INSTANCES=5
|
||||
RELOAD_SCRIPT=/usr/lib/frr/frr-reload.py
|
||||
|
||||
|
|
Loading…
Reference in a new issue