6 sbin_PROGRAMS += zebra/zebra
7 dist_examples_DATA += zebra/zebra.conf.sample
14 zebra/zebra_mlag_vty.c \
15 zebra/zebra_evpn_mh.c \
16 zebra/zebra_mpls_vty.c \
19 zebra/zebra_routemap.c \
24 # can be loaded as DSO - always include for vtysh
25 vtysh_scan += zebra/irdp_interface.c
26 vtysh_scan += zebra/zebra_fpm.c
28 vtysh_daemons += zebra
31 module_LTLIBRARIES += zebra/zebra_irdp.la
34 module_LTLIBRARIES += zebra/zebra_snmp.la
37 module_LTLIBRARIES += zebra/zebra_fpm.la
40 module_LTLIBRARIES += zebra/zebra_cumulus_mlag.la
43 # Dataplane sample plugin
45 module_LTLIBRARIES += zebra/dplane_sample_plugin.la
48 man8 += $(MANBUILD)/frr-zebra.8
52 zebra_zebra_LDADD = lib/libfrr.la $(LIBCAP)
54 zebra_zebra_LDADD += mlag/libmlag_pb.la $(PROTOBUF_C_LIBS)
55 zebra/zebra_mlag.$(OBJEXT): mlag/mlag.pb-c.h
57 zebra_zebra_SOURCES = \
65 zebra/ipforward_proc.c \
66 zebra/ipforward_sysctl.c \
67 zebra/kernel_netlink.c \
68 zebra/kernel_socket.c \
69 zebra/label_manager.c \
71 zebra/redistribute.c \
76 zebra/rtread_netlink.c \
77 zebra/rtread_sysctl.c \
78 zebra/rule_netlink.c \
80 zebra/table_manager.c \
82 zebra/zebra_dplane.c \
83 zebra/zebra_errors.c \
87 zebra/zebra_evpn_mac.c \
88 zebra/zebra_evpn_neigh.c \
90 zebra/zebra_mlag_vty.c \
92 zebra/zebra_mpls_netlink.c \
93 zebra/zebra_mpls_openbsd.c \
94 zebra/zebra_mpls_null.c \
95 zebra/zebra_mpls_vty.c \
96 zebra/zebra_mroute.c \
98 zebra/zebra_nb_config.c \
99 zebra/zebra_nb_rpcs.c \
100 zebra/zebra_nb_state.c \
101 zebra/zebra_netns_id.c \
102 zebra/zebra_netns_notify.c \
105 zebra/zebra_opaque.c \
108 zebra/zebra_ptm_redistribute.c \
111 zebra/zebra_router.c \
113 zebra/zebra_routemap.c \
117 zebra/zebra_vxlan.c \
118 zebra/zebra_evpn_mh.c \
126 zebra/zebra_evpn_mh.c \
127 zebra/zebra_mlag_vty.c \
128 zebra/zebra_routemap.c \
140 zebra/kernel_netlink.h \
141 zebra/kernel_socket.h \
142 zebra/label_manager.h \
143 zebra/redistribute.h \
149 zebra/rule_netlink.h \
150 zebra/table_manager.h \
152 zebra/zebra_dplane.h \
153 zebra/zebra_errors.h \
155 zebra/zebra_evpn_mac.h \
156 zebra/zebra_evpn_neigh.h \
157 zebra/zebra_evpn_vxlan.h \
158 zebra/zebra_fpm_private.h \
161 zebra/zebra_mlag_vty.h \
163 zebra/zebra_mroute.h \
165 zebra/zebra_netns_id.h \
166 zebra/zebra_netns_notify.h \
168 zebra/zebra_nhg_private.h \
170 zebra/zebra_opaque.h \
173 zebra/zebra_ptm_redistribute.h \
176 zebra/zebra_routemap.h \
177 zebra/zebra_router.h \
180 zebra/zebra_vxlan.h \
181 zebra/zebra_vxlan_private.h \
182 zebra/zebra_evpn_mh.h \
186 zebra_zebra_irdp_la_SOURCES = \
187 zebra/irdp_interface.c \
189 zebra/irdp_packet.c \
191 zebra_zebra_irdp_la_LDFLAGS = -avoid-version -module -shared -export-dynamic
193 zebra_zebra_snmp_la_SOURCES = zebra/zebra_snmp.c
194 zebra_zebra_snmp_la_CFLAGS = $(WERROR) $(SNMP_CFLAGS) -std=gnu11
195 zebra_zebra_snmp_la_LDFLAGS = -avoid-version -module -shared -export-dynamic
196 zebra_zebra_snmp_la_LIBADD = lib/libfrrsnmp.la
198 zebra_zebra_fpm_la_LDFLAGS = -avoid-version -module -shared -export-dynamic
199 zebra_zebra_fpm_la_LIBADD =
200 zebra_zebra_fpm_la_SOURCES = zebra/zebra_fpm.c
201 zebra_zebra_fpm_la_SOURCES += zebra/zebra_fpm_netlink.c
203 zebra_zebra_fpm_la_LIBADD += fpm/libfrrfpm_pb.la qpb/libfrr_pb.la $(PROTOBUF_C_LIBS)
204 zebra_zebra_fpm_la_SOURCES += zebra/zebra_fpm_protobuf.c
205 zebra/zebra_fpm_protobuf.lo: fpm/fpm.pb-c.h qpb/qpb.pb-c.h
207 zebra_zebra_fpm_la_SOURCES += zebra/zebra_fpm_dt.c
208 zebra/zebra_fpm_dt.lo: fpm/fpm.pb-c.h qpb/qpb.pb-c.h
212 # Sample dataplane plugin
214 zebra_dplane_sample_plugin_la_SOURCES = zebra/sample_plugin.c
215 zebra_dplane_sample_plugin_la_LDFLAGS = -module -shared -avoid-version -export-dynamic
218 nodist_zebra_zebra_SOURCES = \
219 yang/frr-zebra.yang.c \
222 zebra_zebra_cumulus_mlag_la_SOURCES = zebra/zebra_mlag_private.c
223 zebra_zebra_cumulus_mlag_la_LDFLAGS = -avoid-version -module -shared -export-dynamic
226 module_LTLIBRARIES += zebra/dplane_fpm_nl.la
228 zebra_dplane_fpm_nl_la_SOURCES = zebra/dplane_fpm_nl.c
229 zebra_dplane_fpm_nl_la_LDFLAGS = -avoid-version -module -shared -export-dynamic
230 zebra_dplane_fpm_nl_la_LIBADD =
232 vtysh_scan += $(top_srcdir)/zebra/dplane_fpm_nl.c
236 zebra_zebra_SOURCES += \