6 sbin_PROGRAMS += zebra/zebra
13 zebra/zebra_mlag_vty.c \
14 zebra/zebra_evpn_mh.c \
15 zebra/zebra_mpls_vty.c \
16 zebra/zebra_srv6_vty.c \
19 zebra/zebra_routemap.c \
25 # can be loaded as DSO - always include for vtysh
26 vtysh_scan += zebra/irdp_interface.c
27 vtysh_scan += zebra/zebra_fpm.c
29 vtysh_daemons += zebra
32 module_LTLIBRARIES += zebra/zebra_irdp.la
35 module_LTLIBRARIES += zebra/zebra_snmp.la
38 module_LTLIBRARIES += zebra/zebra_fpm.la
41 module_LTLIBRARIES += zebra/zebra_cumulus_mlag.la
44 # Dataplane sample plugin
46 module_LTLIBRARIES += zebra/dplane_sample_plugin.la
49 man8 += $(MANBUILD)/frr-zebra.8
53 zebra_zebra_LDADD = lib/libfrr.la $(LIBCAP)
55 zebra_zebra_LDADD += mlag/libmlag_pb.la $(PROTOBUF_C_LIBS)
56 zebra/zebra_mlag.$(OBJEXT): mlag/mlag.pb-c.h
58 zebra_zebra_SOURCES = \
66 zebra/ipforward_proc.c \
67 zebra/ipforward_sysctl.c \
68 zebra/kernel_netlink.c \
69 zebra/kernel_socket.c \
70 zebra/label_manager.c \
72 zebra/netconf_netlink.c \
73 zebra/redistribute.c \
78 zebra/rtread_netlink.c \
79 zebra/rtread_sysctl.c \
80 zebra/rule_netlink.c \
82 zebra/table_manager.c \
84 zebra/zebra_dplane.c \
85 zebra/zebra_errors.c \
89 zebra/zebra_evpn_mac.c \
90 zebra/zebra_evpn_neigh.c \
92 zebra/zebra_mlag_vty.c \
94 zebra/zebra_mpls_netlink.c \
95 zebra/zebra_mpls_openbsd.c \
96 zebra/zebra_mpls_null.c \
97 zebra/zebra_mpls_vty.c \
99 zebra/zebra_srv6_vty.c \
100 zebra/zebra_mroute.c \
102 zebra/zebra_nb_config.c \
103 zebra/zebra_nb_rpcs.c \
104 zebra/zebra_nb_state.c \
105 zebra/zebra_netns_id.c \
106 zebra/zebra_netns_notify.c \
109 zebra/zebra_opaque.c \
112 zebra/zebra_ptm_redistribute.c \
115 zebra/zebra_router.c \
117 zebra/zebra_routemap.c \
118 zebra/zebra_routemap_nb.c \
119 zebra/zebra_routemap_nb_config.c \
120 zebra/zebra_script.c \
124 zebra/zebra_vxlan.c \
125 zebra/zebra_evpn_mh.c \
133 zebra/zebra_evpn_mh.c \
134 zebra/zebra_mlag_vty.c \
135 zebra/zebra_routemap.c \
137 zebra/zebra_srv6_vty.c \
149 zebra/kernel_netlink.h \
150 zebra/kernel_socket.h \
151 zebra/label_manager.h \
152 zebra/netconf_netlink.h \
153 zebra/redistribute.h \
159 zebra/rule_netlink.h \
160 zebra/table_manager.h \
162 zebra/zebra_dplane.h \
163 zebra/zebra_errors.h \
165 zebra/zebra_evpn_mac.h \
166 zebra/zebra_evpn_neigh.h \
167 zebra/zebra_evpn_vxlan.h \
168 zebra/zebra_fpm_private.h \
171 zebra/zebra_mlag_vty.h \
174 zebra/zebra_srv6_vty.h \
175 zebra/zebra_mroute.h \
177 zebra/zebra_netns_id.h \
178 zebra/zebra_netns_notify.h \
180 zebra/zebra_nhg_private.h \
182 zebra/zebra_opaque.h \
185 zebra/zebra_ptm_redistribute.h \
188 zebra/zebra_routemap.h \
189 zebra/zebra_routemap_nb.h \
190 zebra/zebra_router.h \
191 zebra/zebra_script.h \
194 zebra/zebra_vxlan.h \
195 zebra/zebra_vxlan_private.h \
196 zebra/zebra_evpn_mh.h \
200 zebra_zebra_irdp_la_SOURCES = \
201 zebra/irdp_interface.c \
203 zebra/irdp_packet.c \
205 zebra_zebra_irdp_la_LDFLAGS = $(MODULE_LDFLAGS)
207 zebra_zebra_snmp_la_SOURCES = zebra/zebra_snmp.c
208 zebra_zebra_snmp_la_CFLAGS = $(AM_CFLAGS) $(SNMP_CFLAGS) -std=gnu11
209 zebra_zebra_snmp_la_LDFLAGS = $(MODULE_LDFLAGS)
210 zebra_zebra_snmp_la_LIBADD = lib/libfrrsnmp.la
212 zebra_zebra_fpm_la_LDFLAGS = $(MODULE_LDFLAGS)
213 zebra_zebra_fpm_la_LIBADD =
214 zebra_zebra_fpm_la_SOURCES = zebra/zebra_fpm.c
215 zebra_zebra_fpm_la_SOURCES += zebra/zebra_fpm_netlink.c
217 zebra_zebra_fpm_la_LIBADD += fpm/libfrrfpm_pb.la qpb/libfrr_pb.la $(PROTOBUF_C_LIBS)
218 zebra_zebra_fpm_la_SOURCES += zebra/zebra_fpm_protobuf.c
219 zebra/zebra_fpm_protobuf.lo: fpm/fpm.pb-c.h qpb/qpb.pb-c.h
221 zebra_zebra_fpm_la_SOURCES += zebra/zebra_fpm_dt.c
222 zebra/zebra_fpm_dt.lo: fpm/fpm.pb-c.h qpb/qpb.pb-c.h
226 # Sample dataplane plugin
228 zebra_dplane_sample_plugin_la_SOURCES = zebra/sample_plugin.c
229 zebra_dplane_sample_plugin_la_LDFLAGS = $(MODULE_LDFLAGS)
232 nodist_zebra_zebra_SOURCES = \
233 yang/frr-zebra.yang.c \
234 yang/frr-zebra-route-map.yang.c \
237 zebra_zebra_cumulus_mlag_la_SOURCES = zebra/zebra_mlag_private.c
238 zebra_zebra_cumulus_mlag_la_LDFLAGS = $(MODULE_LDFLAGS)
241 module_LTLIBRARIES += zebra/dplane_fpm_nl.la
243 zebra_dplane_fpm_nl_la_SOURCES = zebra/dplane_fpm_nl.c
244 zebra_dplane_fpm_nl_la_LDFLAGS = $(MODULE_LDFLAGS)
245 zebra_dplane_fpm_nl_la_LIBADD =
247 vtysh_scan += zebra/dplane_fpm_nl.c
251 zebra_zebra_SOURCES += \