Introduce a mac_address_t on the API and in VPP
[vpp.git] / extras / vom / vom / Makefile.am
1 # Copyright (c) 2017 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:
5 #
6 #     http://www.apache.org/licenses/LICENSE-2.0
7 #
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.
13
14 AUTOMAKE_OPTIONS = foreign
15 ACLOCAL_AMFLAGS = -I m4
16 AM_LIBTOOLFLAGS = --quiet
17
18 AM_CXXFLAGS = -Wall -Werror -std=gnu++11 -I${top_srcdir}
19
20 bin_PROGRAMS =
21 noinst_LTLIBRARIES =
22 CLEANDIRS =
23
24 lib_LTLIBRARIES = libvom.la
25
26 libvom_la_DEPENDENCIES =
27 libvom_la_LIBADD =                                      \
28         -lvapiclient                                    \
29         -lpthread                                       \
30         -lboost_thread                                  \
31         $(BOOST_SYSTEM_LIB)                             \
32         $(BOOST_FILESYSTEM_LIB)                         \
33         $(BOOST_ASIO_LIB)                               \
34         -lm -lrt
35
36 ACL_SOURCES =
37 if ENABLE_ACL_PLUGIN
38 ACL_SOURCES +=                          \
39         acl_binding_cmds.cpp            \
40         acl_binding.cpp                 \
41         acl_ethertype_cmds.cpp          \
42         acl_ethertype.cpp               \
43         acl_l2_rule.cpp                 \
44         acl_l3_rule.cpp                 \
45         acl_list_cmds.cpp               \
46         acl_list.cpp                    \
47         acl_types.cpp
48 endif
49
50 NAT_SOURCES =
51 if ENABLE_NAT_PLUGIN
52 NAT_SOURCES +=                          \
53         nat_static.cpp                  \
54         nat_static_cmds.cpp             \
55         nat_binding.cpp                 \
56         nat_binding_cmds.cpp
57 endif
58
59 L2E_SOURCES =
60 if ENABLE_L2E_PLUGIN
61 L2E_SOURCES +=                          \
62         l2_emulation_cmds.cpp           \
63         l2_emulation.cpp
64 endif
65
66 GBP_SOURCES =
67 if ENABLE_GBP_PLUGIN
68 GBP_SOURCES +=                          \
69         gbp_recirc_cmds.cpp             \
70         gbp_recirc.cpp                  \
71         gbp_subnet_cmds.cpp             \
72         gbp_subnet.cpp                  \
73         gbp_endpoint_cmds.cpp           \
74         gbp_endpoint.cpp                \
75         gbp_endpoint_group_cmds.cpp     \
76         gbp_endpoint_group.cpp          \
77         gbp_contract_cmds.cpp           \
78         gbp_contract.cpp
79 endif
80
81 libvom_la_SOURCES =                     \
82         types.cpp                       \
83         api_types.cpp                   \
84         arp_proxy_binding_cmds.cpp      \
85         arp_proxy_binding.cpp           \
86         arp_proxy_config_cmds.cpp       \
87         arp_proxy_config.cpp            \
88         bond_group_binding_cmds.cpp     \
89         bond_group_binding.cpp          \
90         bond_interface_cmds.cpp         \
91         bond_interface.cpp              \
92         bond_member.cpp                 \
93         bridge_domain_cmds.cpp          \
94         bridge_domain.cpp               \
95         bridge_domain_arp_entry.cpp     \
96         bridge_domain_arp_entry_cmds.cpp \
97         bridge_domain_entry_cmds.cpp    \
98         bridge_domain_entry.cpp         \
99         client_db.cpp                   \
100         cmd.cpp                         \
101         connection.cpp                  \
102         dhcp_client_cmds.cpp            \
103         dhcp_client.cpp                 \
104         hw_cmds.cpp                     \
105         hw.cpp                          \
106         inspect.cpp                     \
107         interface_cmds.cpp              \
108         interface.cpp                   \
109         interface_factory.cpp           \
110         interface_ip6_nd_cmds.cpp       \
111         interface_span_cmds.cpp         \
112         interface_span.cpp              \
113         interface_types.cpp             \
114         ip_unnumbered_cmds.cpp          \
115         ip_unnumbered.cpp               \
116         l2_binding_cmds.cpp             \
117         l2_binding.cpp                  \
118         l2_xconnect_cmds.cpp            \
119         l2_xconnect.cpp                 \
120         l3_binding_cmds.cpp             \
121         l3_binding.cpp                  \
122         lldp_binding_cmds.cpp           \
123         lldp_binding.cpp                \
124         lldp_global_cmds.cpp            \
125         lldp_global.cpp                 \
126         logger.cpp                      \
127         neighbour.cpp                   \
128         neighbour_cmds.cpp              \
129         object_base.cpp                 \
130         om.cpp                          \
131         pipe.cpp                        \
132         pipe_cmds.cpp                   \
133         prefix.cpp                      \
134         ra_config.cpp                   \
135         ra_prefix.cpp                   \
136         route.cpp                       \
137         route_cmds.cpp                  \
138         route_domain.cpp                \
139         route_domain_cmds.cpp           \
140         sub_interface_cmds.cpp          \
141         sub_interface.cpp               \
142         tap_interface.cpp               \
143         tap_interface_cmds.cpp          \
144         vxlan_tunnel_cmds.cpp           \
145         vxlan_tunnel.cpp                \
146         $(ACL_SOURCES)                  \
147         $(NAT_SOURCES)                  \
148         $(L2E_SOURCES)                  \
149         $(GBP_SOURCES)
150
151
152 vomincludedir = $(includedir)/vom
153
154 ACL_INCLUDES =
155 if ENABLE_ACL_PLUGIN
156 ACL_INCLUDES +=                         \
157         acl_binding.hpp                 \
158         acl_ethertype.hpp               \
159         acl_l2_rule.hpp                 \
160         acl_l3_rule.hpp                 \
161         acl_list.hpp                    \
162         acl_types.hpp
163 endif
164
165 NAT_INCLUDES =
166 if ENABLE_NAT_PLUGIN
167 NAT_INCLUDES +=                         \
168         nat_static.hpp                  \
169         nat_binding.hpp
170 endif
171
172 L2E_INCLUDES =
173 if ENABLE_L2E_PLUGIN
174 L2E_INCLUDES +=                         \
175         l2_emulation.hpp
176 endif
177
178 GBP_INCLUDES =
179 if ENABLE_GBP_PLUGIN
180 GBP_INCLUDES +=                         \
181         gbp_endpoint.hpp                \
182         gbp_endpoint_group.hpp          \
183         gbp_subnet.hpp                  \
184         gbp_recirc.hpp                  \
185         gbp_contract.hpp
186 endif
187
188 vominclude_HEADERS =                    \
189         arp_proxy_binding.hpp           \
190         arp_proxy_config.hpp            \
191         bond_group_binding.hpp          \
192         bond_interface.hpp              \
193         bond_member.hpp                 \
194         bridge_domain.hpp               \
195         bridge_domain_arp_entry.hpp     \
196         bridge_domain_entry.hpp         \
197         client_db.hpp                   \
198         cmd.hpp                         \
199         connection.hpp                  \
200         dhcp_client.hpp                 \
201         dump_cmd.hpp                    \
202         enum_base.hpp                   \
203         event_cmd.hpp                   \
204         hw.hpp                          \
205         inspect.hpp                     \
206         interface.hpp                   \
207         interface_cmds.hpp              \
208         interface_ip6_nd.hpp            \
209         interface_span.hpp              \
210         ip_unnumbered.hpp               \
211         l2_binding.hpp                  \
212         l2_xconnect.hpp                 \
213         l3_binding.hpp                  \
214         lldp_binding.hpp                \
215         lldp_global.hpp                 \
216         logger.hpp                      \
217         neighbour.hpp                   \
218         object_base.hpp                 \
219         om.hpp                          \
220         pipe.hpp                        \
221         prefix.hpp                      \
222         ra_config.hpp                   \
223         ra_prefix.hpp                   \
224         route.hpp                       \
225         route_domain.hpp                \
226         rpc_cmd.hpp                     \
227         singular_db.hpp                 \
228         singular_db_funcs.hpp           \
229         sub_interface.hpp               \
230         tap_interface.hpp               \
231         types.hpp                       \
232         vxlan_tunnel.hpp                \
233         $(ACL_INCLUDES)                 \
234         $(NAT_INCLUDES)                 \
235         $(L2E_INCLUDES)                 \
236         $(GBP_INCLUDES)
237
238 # vi:syntax=automake