summaryrefslogtreecommitdiffstats
path: root/zebra/subdir.am
diff options
context:
space:
mode:
Diffstat (limited to 'zebra/subdir.am')
-rw-r--r--zebra/subdir.am275
1 files changed, 275 insertions, 0 deletions
diff --git a/zebra/subdir.am b/zebra/subdir.am
new file mode 100644
index 0000000..298b715
--- /dev/null
+++ b/zebra/subdir.am
@@ -0,0 +1,275 @@
+#
+# zebra
+#
+
+if ZEBRA
+sbin_PROGRAMS += zebra/zebra
+vtysh_scan += \
+ zebra/debug.c \
+ zebra/interface.c \
+ zebra/router-id.c \
+ zebra/rtadv.c \
+ zebra/zebra_gr.c \
+ zebra/zebra_mlag_vty.c \
+ zebra/zebra_evpn_mh.c \
+ zebra/zebra_mpls_vty.c \
+ zebra/zebra_srv6_vty.c \
+ zebra/zebra_ptm.c \
+ zebra/zebra_pw.c \
+ zebra/zebra_routemap.c \
+ zebra/zebra_vty.c \
+ zebra/zserv.c \
+ zebra/zebra_vrf.c \
+ zebra/dpdk/zebra_dplane_dpdk_vty.c \
+ # end
+
+# can be loaded as DSO - always include for vtysh
+vtysh_scan += zebra/irdp_interface.c
+vtysh_scan += zebra/zebra_fpm.c
+
+vtysh_daemons += zebra
+
+if IRDP
+module_LTLIBRARIES += zebra/zebra_irdp.la
+endif
+if SNMP
+module_LTLIBRARIES += zebra/zebra_snmp.la
+endif
+if FPM
+module_LTLIBRARIES += zebra/zebra_fpm.la
+endif
+if LINUX
+module_LTLIBRARIES += zebra/zebra_cumulus_mlag.la
+endif
+
+# Dataplane sample plugin
+if DEV_BUILD
+module_LTLIBRARIES += zebra/dplane_sample_plugin.la
+endif
+
+man8 += $(MANBUILD)/frr-zebra.8
+## endif ZEBRA
+endif
+
+zebra_zebra_LDADD = lib/libfrr.la $(LIBCAP) $(UST_LIBS)
+if HAVE_PROTOBUF3
+zebra_zebra_LDADD += mlag/libmlag_pb.la $(PROTOBUF_C_LIBS)
+zebra/zebra_mlag.$(OBJEXT): mlag/mlag.pb-c.h
+endif
+zebra_zebra_SOURCES = \
+ zebra/connected.c \
+ zebra/debug.c \
+ zebra/if_ioctl.c \
+ zebra/if_netlink.c \
+ zebra/if_socket.c \
+ zebra/if_sysctl.c \
+ zebra/interface.c \
+ zebra/ioctl.c \
+ zebra/ipforward_proc.c \
+ zebra/ipforward_sysctl.c \
+ zebra/kernel_netlink.c \
+ zebra/kernel_socket.c \
+ zebra/label_manager.c \
+ zebra/main.c \
+ zebra/netconf_netlink.c \
+ zebra/redistribute.c \
+ zebra/router-id.c \
+ zebra/rt_netlink.c \
+ zebra/rt_socket.c \
+ zebra/rtadv.c \
+ zebra/rtread_netlink.c \
+ zebra/rtread_sysctl.c \
+ zebra/rule_netlink.c \
+ zebra/rule_socket.c \
+ zebra/table_manager.c \
+ zebra/tc_netlink.c \
+ zebra/tc_socket.c \
+ zebra/zapi_msg.c \
+ zebra/zebra_dplane.c \
+ zebra/zebra_errors.c \
+ zebra/zebra_gr.c \
+ zebra/zebra_l2.c \
+ zebra/zebra_evpn.c \
+ zebra/zebra_evpn_mac.c \
+ zebra/zebra_evpn_neigh.c \
+ zebra/zebra_mlag.c \
+ zebra/zebra_mlag_vty.c \
+ zebra/zebra_mpls.c \
+ zebra/zebra_mpls_netlink.c \
+ zebra/zebra_mpls_openbsd.c \
+ zebra/zebra_mpls_null.c \
+ zebra/zebra_mpls_vty.c \
+ zebra/zebra_srv6.c \
+ zebra/zebra_srv6_vty.c \
+ zebra/zebra_mroute.c \
+ zebra/zebra_nb.c \
+ zebra/zebra_nb_config.c \
+ zebra/zebra_nb_rpcs.c \
+ zebra/zebra_nb_state.c \
+ zebra/zebra_netns_id.c \
+ zebra/zebra_netns_notify.c \
+ zebra/zebra_nhg.c \
+ zebra/zebra_ns.c \
+ zebra/zebra_opaque.c \
+ zebra/zebra_pbr.c \
+ zebra/zebra_ptm.c \
+ zebra/zebra_ptm_redistribute.c \
+ zebra/zebra_pw.c \
+ zebra/zebra_rib.c \
+ zebra/zebra_router.c \
+ zebra/zebra_rnh.c \
+ zebra/zebra_routemap.c \
+ zebra/zebra_routemap_nb.c \
+ zebra/zebra_routemap_nb_config.c \
+ zebra/zebra_script.c \
+ zebra/zebra_srte.c \
+ zebra/zebra_trace.c \
+ zebra/zebra_vrf.c \
+ zebra/zebra_vty.c \
+ zebra/zebra_vxlan.c \
+ zebra/zebra_evpn_mh.c \
+ zebra/zebra_neigh.c \
+ zebra/zserv.c \
+ # end
+
+clippy_scan += \
+ zebra/debug.c \
+ zebra/interface.c \
+ zebra/rtadv.c \
+ zebra/zebra_evpn_mh.c \
+ zebra/zebra_mlag_vty.c \
+ zebra/zebra_routemap.c \
+ zebra/zebra_vty.c \
+ zebra/zebra_srv6_vty.c \
+ zebra/zebra_vrf.c \
+ zebra/dpdk/zebra_dplane_dpdk_vty.c \
+ # end
+
+noinst_HEADERS += \
+ zebra/connected.h \
+ zebra/debug.h \
+ zebra/if_netlink.h \
+ zebra/interface.h \
+ zebra/ioctl.h \
+ zebra/ipforward.h \
+ zebra/irdp.h \
+ zebra/kernel_netlink.h \
+ zebra/kernel_socket.h \
+ zebra/label_manager.h \
+ zebra/netconf_netlink.h \
+ zebra/redistribute.h \
+ zebra/rib.h \
+ zebra/router-id.h \
+ zebra/rt.h \
+ zebra/rt_netlink.h \
+ zebra/rtadv.h \
+ zebra/rule_netlink.h \
+ zebra/table_manager.h \
+ zebra/tc_netlink.h \
+ zebra/zapi_msg.h \
+ zebra/zebra_dplane.h \
+ zebra/zebra_errors.h \
+ zebra/zebra_evpn.h \
+ zebra/zebra_evpn_mac.h \
+ zebra/zebra_evpn_neigh.h \
+ zebra/zebra_evpn_vxlan.h \
+ zebra/zebra_fpm_private.h \
+ zebra/zebra_l2.h \
+ zebra/zebra_mlag.h \
+ zebra/zebra_mlag_vty.h \
+ zebra/zebra_mpls.h \
+ zebra/zebra_srv6.h \
+ zebra/zebra_srv6_vty.h \
+ zebra/zebra_mroute.h \
+ zebra/zebra_nb.h \
+ zebra/zebra_netns_id.h \
+ zebra/zebra_netns_notify.h \
+ zebra/zebra_nhg.h \
+ zebra/zebra_nhg_private.h \
+ zebra/zebra_ns.h \
+ zebra/zebra_opaque.h \
+ zebra/zebra_pbr.h \
+ zebra/zebra_ptm.h \
+ zebra/zebra_ptm_redistribute.h \
+ zebra/zebra_pw.h \
+ zebra/zebra_rnh.h \
+ zebra/zebra_routemap.h \
+ zebra/zebra_routemap_nb.h \
+ zebra/zebra_router.h \
+ zebra/zebra_script.h \
+ zebra/zebra_srte.h \
+ zebra/zebra_trace.h \
+ zebra/zebra_vrf.h \
+ zebra/zebra_vxlan.h \
+ zebra/zebra_vxlan_private.h \
+ zebra/zebra_evpn_mh.h \
+ zebra/zebra_neigh.h \
+ zebra/zserv.h \
+ zebra/dpdk/zebra_dplane_dpdk.h \
+ zebra/dpdk/zebra_dplane_dpdk_private.h \
+ # end
+
+zebra_zebra_irdp_la_SOURCES = \
+ zebra/irdp_interface.c \
+ zebra/irdp_main.c \
+ zebra/irdp_packet.c \
+ # end
+zebra_zebra_irdp_la_LDFLAGS = $(MODULE_LDFLAGS)
+
+zebra_zebra_snmp_la_SOURCES = zebra/zebra_snmp.c
+zebra_zebra_snmp_la_CFLAGS = $(AM_CFLAGS) $(SNMP_CFLAGS) -std=gnu11
+zebra_zebra_snmp_la_LDFLAGS = $(MODULE_LDFLAGS)
+zebra_zebra_snmp_la_LIBADD = lib/libfrrsnmp.la
+
+zebra_zebra_fpm_la_LDFLAGS = $(MODULE_LDFLAGS)
+zebra_zebra_fpm_la_LIBADD =
+zebra_zebra_fpm_la_SOURCES = zebra/zebra_fpm.c
+zebra_zebra_fpm_la_SOURCES += zebra/zebra_fpm_netlink.c
+if HAVE_PROTOBUF
+zebra_zebra_fpm_la_LIBADD += fpm/libfrrfpm_pb.la qpb/libfrr_pb.la $(PROTOBUF_C_LIBS)
+zebra_zebra_fpm_la_SOURCES += zebra/zebra_fpm_protobuf.c
+zebra/zebra_fpm_protobuf.lo: fpm/fpm.pb-c.h qpb/qpb.pb-c.h
+if DEV_BUILD
+zebra_zebra_fpm_la_SOURCES += zebra/zebra_fpm_dt.c
+zebra/zebra_fpm_dt.lo: fpm/fpm.pb-c.h qpb/qpb.pb-c.h
+endif
+endif
+
+# Sample dataplane plugin
+if DEV_BUILD
+zebra_dplane_sample_plugin_la_SOURCES = zebra/sample_plugin.c
+zebra_dplane_sample_plugin_la_LDFLAGS = $(MODULE_LDFLAGS)
+endif
+
+nodist_zebra_zebra_SOURCES = \
+ yang/frr-zebra.yang.c \
+ yang/frr-zebra-route-map.yang.c \
+ # end
+
+zebra_zebra_cumulus_mlag_la_SOURCES = zebra/zebra_mlag_private.c
+zebra_zebra_cumulus_mlag_la_LDFLAGS = $(MODULE_LDFLAGS)
+
+if LINUX
+module_LTLIBRARIES += zebra/dplane_fpm_nl.la
+
+zebra_dplane_fpm_nl_la_SOURCES = zebra/dplane_fpm_nl.c
+zebra_dplane_fpm_nl_la_LDFLAGS = $(MODULE_LDFLAGS)
+zebra_dplane_fpm_nl_la_LIBADD =
+
+vtysh_scan += zebra/dplane_fpm_nl.c
+endif
+
+if NETLINK_DEBUG
+zebra_zebra_SOURCES += \
+ zebra/debug_nl.c \
+ # end
+endif
+
+if DP_DPDK
+module_LTLIBRARIES += zebra/zebra_dplane_dpdk.la
+endif
+
+zebra_zebra_dplane_dpdk_la_SOURCES = zebra/dpdk/zebra_dplane_dpdk.c zebra/dpdk/zebra_dplane_dpdk_vty.c
+zebra_zebra_dplane_dpdk_la_LDFLAGS = -avoid-version -module -shared -export-dynamic -L/usr/local/lib -v
+zebra_zebra_dplane_dpdk_la_CFLAGS = $(DPDK_CFLAGS)
+zebra_zebra_dplane_dpdk_la_LIBADD = $(DPDK_LIBS)