dad4863c17ce0ec764cc3fb7c98000240e698213
[vpp.git] / src / vpp-api / 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} -I${top_builddir}/vpp-api/vapi/ -I$(top_srcdir)/vpp-api/ -I${libdir}/../include
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         $(top_builddir)/vpp-api/vapi/libvapiclient.la   \
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_endpoint_cmds.cpp           \
70         gbp_endpoint.cpp                \
71         gbp_contract_cmds.cpp           \
72         gbp_contract.cpp
73 endif
74
75 libvom_la_SOURCES =                     \
76         types.cpp                       \
77         arp_proxy_binding_cmds.cpp      \
78         arp_proxy_binding.cpp           \
79         arp_proxy_config_cmds.cpp       \
80         arp_proxy_config.cpp            \
81         bond_group_binding_cmds.cpp     \
82         bond_group_binding.cpp          \
83         bond_interface_cmds.cpp         \
84         bond_interface.cpp              \
85         bond_member.cpp                 \
86         bridge_domain_cmds.cpp          \
87         bridge_domain.cpp               \
88         bridge_domain_arp_entry.cpp     \
89         bridge_domain_arp_entry_cmds.cpp \
90         bridge_domain_entry_cmds.cpp    \
91         bridge_domain_entry.cpp         \
92         client_db.cpp                   \
93         cmd.cpp                         \
94         connection.cpp                  \
95         dhcp_config_cmds.cpp            \
96         dhcp_config.cpp                 \
97         hw_cmds.cpp                     \
98         hw.cpp                          \
99         inspect.cpp                     \
100         interface_cmds.cpp              \
101         interface.cpp                   \
102         interface_factory.cpp           \
103         interface_ip6_nd_cmds.cpp       \
104         interface_span_cmds.cpp         \
105         interface_span.cpp              \
106         interface_types.cpp             \
107         ip_unnumbered_cmds.cpp          \
108         ip_unnumbered.cpp               \
109         l2_binding_cmds.cpp             \
110         l2_binding.cpp                  \
111         l3_binding_cmds.cpp             \
112         l3_binding.cpp                  \
113         lldp_binding_cmds.cpp           \
114         lldp_binding.cpp                \
115         lldp_global_cmds.cpp            \
116         lldp_global.cpp                 \
117         logger.cpp                      \
118         neighbour.cpp                   \
119         neighbour_cmds.cpp              \
120         object_base.cpp                 \
121         om.cpp                          \
122         prefix.cpp                      \
123         ra_config.cpp                   \
124         ra_prefix.cpp                   \
125         route.cpp                       \
126         route_cmds.cpp                  \
127         route_domain.cpp                \
128         route_domain_cmds.cpp           \
129         sub_interface_cmds.cpp          \
130         sub_interface.cpp               \
131         tap_interface.cpp               \
132         tap_interface_cmds.cpp          \
133         vxlan_tunnel_cmds.cpp           \
134         vxlan_tunnel.cpp                \
135         $(ACL_SOURCES)                  \
136         $(NAT_SOURCES)                  \
137         $(L2E_SOURCES)                  \
138         $(GBP_SOURCES)
139
140
141 vomincludedir = $(includedir)/vom
142
143 ACL_INCLUDES =
144 if ENABLE_ACL_PLUGIN
145 ACL_INCLUDES +=                                 \
146         acl_binding.hpp                 \
147         acl_ethertype.hpp               \
148         acl_l2_rule.hpp                 \
149         acl_l3_rule.hpp                 \
150         acl_list.hpp                    \
151         acl_types.hpp
152 endif
153
154 NAT_INCLUDES =
155 if ENABLE_NAT_PLUGIN
156 NAT_INCLUDES +=                                 \
157         nat_static.hpp                  \
158         nat_binding.hpp
159 endif
160
161 L2E_INCLUDES =
162 if ENABLE_L2E_PLUGIN
163 L2E_INCLUDES +=                         \
164         l2_emulation.hpp
165 endif
166
167 GBP_INCLUDES =
168 if ENABLE_GBP_PLUGIN
169 GBP_INCLUDES +=                                 \
170         gbp_endpoint.hpp                \
171         gbp_contract.hpp
172 endif
173
174 vominclude_HEADERS =                    \
175         arp_proxy_binding.hpp           \
176         arp_proxy_config.hpp            \
177         bond_group_binding.hpp          \
178         bond_interface.hpp              \
179         bond_member.hpp                 \
180         bridge_domain.hpp               \
181         bridge_domain_arp_entry.hpp     \
182         bridge_domain_entry.hpp         \
183         client_db.hpp                   \
184         cmd.hpp                         \
185         connection.hpp                  \
186         dhcp_config.hpp                 \
187         dhcp_config_cmds.hpp            \
188         dump_cmd.hpp                    \
189         enum_base.hpp                   \
190         event_cmd.hpp                   \
191         hw.hpp                          \
192         inspect.hpp                     \
193         interface.hpp                   \
194         interface_cmds.hpp              \
195         interface_ip6_nd.hpp            \
196         interface_span.hpp              \
197         ip_unnumbered.hpp               \
198         l2_binding.hpp                  \
199         l3_binding.hpp                  \
200         lldp_binding.hpp                \
201         lldp_global.hpp                 \
202         logger.hpp                      \
203         neighbour.hpp                   \
204         object_base.hpp                 \
205         om.hpp                          \
206         prefix.hpp                      \
207         ra_config.hpp                   \
208         ra_prefix.hpp                   \
209         route.hpp                       \
210         route_domain.hpp                \
211         rpc_cmd.hpp                     \
212         singular_db.hpp                 \
213         singular_db_funcs.hpp           \
214         sub_interface.hpp               \
215         tap_interface.hpp               \
216         types.hpp                       \
217         vxlan_tunnel.hpp                \
218         $(ACL_INCLUDES)                 \
219         $(NAT_INCLUDES)                 \
220         $(L2E_INCLUDES)                 \
221         $(GBP_INCLUDES)
222
223 # vi:syntax=automake