1 # Copyright (c) 2015 Cisco and/or its affiliates.
2 # Licensed under the Apache License, Version 2.0 (the "License");
3 # you may not use this file except in compliance with the License.
4 # You may obtain a copy of the License at:
6 # http://www.apache.org/licenses/LICENSE-2.0
8 # Unless required by applicable law or agreed to in writing, software
9 # distributed under the License is distributed on an "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 # See the License for the specific language governing permissions and
12 # limitations under the License.
15 ########################################
16 # iOAM Proof of Transit
17 ########################################
20 ioam/lib-pot/pot_util.c \
21 ioam/encap/ip6_ioam_pot.c \
22 ioam/lib-pot/pot_util.h \
23 ioam/lib-pot/math64.h \
24 ioam/lib-pot/pot_api.c
26 IOAM_POT_NOINST_HDR = \
27 ioam/lib-pot/pot_all_api_h.h \
28 ioam/lib-pot/pot_msg_enum.h \
29 ioam/lib-pot/pot.api.h \
30 ioam/lib-pot/pot_util.h \
33 IOAM_POT_API = ioam/lib-pot/pot.api
35 ########################################
36 # iOAM trace export for IPv6
37 ########################################
40 ioam/export/ioam_export.c \
42 ioam/export/ioam_export.api.h \
43 ioam/export/ioam_export_thread.c
45 IOAM_EXPORT_NOINST_HDR = \
46 ioam/export/ioam_export_all_api_h.h \
47 ioam/export/ioam_export_msg_enum.h \
48 ioam/export/ioam_export.api.h
50 IOAM_EXPORT_API = ioam/export/ioam_export.api
52 ########################################
54 ########################################
56 ioam/lib-trace/trace_util.c \
57 ioam/encap/ip6_ioam_trace.c \
58 ioam/lib-trace/trace_api.c
60 IOAM_TRACE_NOINST_HDR = \
61 ioam/lib-trace/trace_all_api_h.h \
62 ioam/lib-trace/trace_msg_enum.h \
63 ioam/lib-trace/trace.api.h \
64 ioam/lib-trace/trace_util.h \
65 ioam/encap/ip6_ioam_trace.h \
66 ioam/lib-trace/trace_config.h
68 IOAM_TRACE_API = ioam/lib-trace/trace.api
70 nobase_include_HEADERS += \
71 ioam/lib-trace/trace_util.h \
72 ioam/export-common/ioam_export.h
74 ########################################
76 ########################################
77 IOAM_VXLAN_GPE_SRC = \
78 ioam/lib-vxlan-gpe/ioam_encap.c \
79 ioam/lib-vxlan-gpe/ioam_decap.c \
80 ioam/lib-vxlan-gpe/ioam_transit.c \
81 ioam/lib-vxlan-gpe/ioam_pop.c \
82 ioam/lib-vxlan-gpe/vxlan_gpe_api.c \
83 ioam/lib-vxlan-gpe/vxlan_gpe_ioam_trace.c \
84 ioam/lib-vxlan-gpe/vxlan_gpe_ioam.c \
85 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.c \
86 ioam/export-vxlan-gpe/vxlan_gpe_node.c \
87 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.api.h\
88 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_thread.c
90 IOAM_VXLAN_GPE_NOINST_HDR = \
91 ioam/lib-vxlan-gpe/vxlan_gpe_all_api_h.h \
92 ioam/lib-vxlan-gpe/vxlan_gpe_msg_enum.h \
93 ioam/lib-vxlan-gpe/ioam_vxlan_gpe.api.h \
94 ioam/lib-vxlan-gpe/vxlan_gpe_ioam_util.h \
95 ioam/lib-vxlan-gpe/vxlan_gpe_ioam_packet.h \
96 ioam/lib-vxlan-gpe/vxlan_gpe_ioam.h \
97 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_all_api_h.h \
98 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_msg_enum.h \
99 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.api.h
101 IOAM_VXLAN_GPE_API = ioam/lib-vxlan-gpe/ioam_vxlan_gpe.api
102 IOAM_VXLAN_GPE_API += ioam/export-vxlan-gpe/vxlan_gpe_ioam_export.api
104 ########################################
106 ########################################
109 ioam/encap/ip6_ioam_e2e.c \
110 ioam/encap/ip6_ioam_seqno.c \
111 ioam/lib-e2e/ioam_seqno_lib.c
113 IOAM_E2E_NOINST_HDR = \
114 ioam/encap/ip6_ioam_e2e.h \
115 ioam/encap/ip6_ioam_seqno.h \
116 ioam/lib-e2e/ioam_seqno_lib.h
118 ########################################
120 ########################################
122 IPFIX_COLLECTOR_SRC = \
123 ioam/ipfixcollector/ipfixcollector.c \
124 ioam/ipfixcollector/node.c \
125 ioam/ipfixcollector/ipfixcollector.h
127 ########################################
129 ########################################
132 ioam/analyse/ip6/ip6_ioam_analyse.c \
133 ioam/analyse/ip6/node.c \
134 ioam/analyse/ip6/ip6_ioam_analyse.h \
135 ioam/analyse/ioam_summary_export.c \
136 ioam/analyse/ioam_analyse.h \
137 ioam/analyse/ioam_summary_export.h
139 ########################################
140 # iOAM record cache and rewrite
141 ########################################
143 IOAM_IP6_MANYCAST_SRC = \
144 ioam/ip6/ioam_cache.c \
145 ioam/ip6/ioam_cache_node.c \
146 ioam/ip6/ioam_cache_tunnel_select_node.c \
147 ioam/ip6/ioam_cache.api.h
149 IOAM_IP6_MANYCAST_API = ioam/ip6/ioam_cache.api
151 IOAM_IP6_MANYCAST_NOINST_HDR = \
152 ioam/ip6/ioam_cache_all_api_h.h \
153 ioam/ip6/ioam_cache_msg_enum.h \
154 ioam/ip6/ioam_cache.api.h
157 ########################################
160 ioam/udp-ping/udp_ping_node.c \
161 ioam/udp-ping/udp_ping_util.c \
162 ioam/udp-ping/udp_ping_export.c \
163 ioam/udp-ping/udp_ping_api.c
165 UDP_PING_NOINST_HDR = \
166 ioam/udp-ping/udp_ping_packet.h \
167 ioam/udp-ping/udp_ping.h \
168 ioam/udp-ping/udp_ping_util.h \
169 ioam/udp-ping/udp_ping_all_api_h.h \
170 ioam/udp-ping/udp_ping_msg_enum.h \
171 ioam/udp-ping/udp_ping.api.h
173 UDP_PING_API = ioam/udp-ping/udp_ping.api
174 ########################################
176 ########################################
178 ioam_plugin_la_SOURCES = \
182 $(IOAM_VXLAN_GPE_SRC) \
184 $(IPFIX_COLLECTOR_SRC) \
185 $(IOAM_ANALYSE_SRC) \
186 $(IOAM_IP6_MANYCAST_SRC) \
193 $(IOAM_VXLAN_GPE_API) \
194 $(IOAM_IP6_MANYCAST_API) \
197 nobase_apiinclude_HEADERS += \
198 $(IOAM_POT_NOINST_HDR) \
199 $(IOAM_EXPORT_NOINST_HDR) \
200 $(IOAM_TRACE_NOINST_HDR) \
201 $(IOAM_VXLAN_GPE_NOINST_HDR) \
202 $(IOAM_E2E_NOINST_HDR) \
203 $(IOAM_IP6_MANYCAST_NOINST_HDR) \
204 $(UDP_PING_NOINST_HDR)
206 vppplugins_LTLIBRARIES += ioam_plugin.la
208 ########################################
210 ########################################
212 ioam_test_plugin_la_SOURCES = \
214 ioam/lib-pot/pot_test.c \
215 ioam/lib-pot/pot_plugin.api.h \
216 ioam/lib-trace/trace_test.c \
217 ioam/lib-trace/trace_plugin.api.h \
218 ioam/export/ioam_export_test.c \
219 ioam/export/ioam_export_plugin.api.h \
220 ioam/lib-vxlan-gpe/vxlan_gpe_test.c \
221 ioam/lib-vxlan-gpe/vxlan_gpe_plugin.api.h \
222 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_test.c \
223 ioam/export-vxlan-gpe/vxlan_gpe_ioam_export_plugin.api.h \
224 ioam/udp-ping/udp_ping_test.c \
225 ioam/udp-ping/udp_ping_plugin.api.h
227 vppapitestplugins_LTLIBRARIES += ioam_test_plugin.la