9f1325ecaa244fb041089fb2f6e9d55458314046
[vpp.git] / src / vcl.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 lib_LTLIBRARIES += libvppcom.la libvcl_ldpreload.la
15
16 libvppcom_la_SOURCES =
17 libvcl_ldpreload_la_SOURCES =
18 libvppcom_la_DEPENDENCIES =     \
19         libsvm.la               \
20         libvlibmemoryclient.la
21
22 libvppcom_la_LIBADD = $(libvppcom_la_DEPENDENCIES) -lpthread -lrt -ldl
23
24 libvppcom_la_SOURCES +=                         \
25   vcl/vcl_event.c               \
26   vcl/vppcom.c                                  \
27   $(libvppinfra_la_SOURCES)                     \
28   $(libvlib_la_SOURCES)                         \
29   $(libsvm_la_SOURCES)                          \
30   $(libvlibmemoryclient_la_SOURCES)
31
32 nobase_include_HEADERS +=                       \
33   vcl/vcl_event.h                                       \
34   vcl/vppcom.h
35
36 libvcl_ldpreload_la_LIBADD =  $(libvppcom_la_DEPENDENCIES) -lpthread -lrt -ldl
37
38 libvcl_ldpreload_la_SOURCES +=                  \
39   vcl/ldp_socket_wrapper.c                      \
40   vcl/ldp.c                                     \
41   $(libvppcom_la_SOURCES)
42
43 nobase_include_HEADERS +=                       \
44   vcl/ldp_socket_wrapper.h                      \
45   vcl/ldp_glibc_socket.h                        \
46   vcl/ldp.h
47
48 noinst_PROGRAMS +=                              \
49         vcl_test_server                         \
50         vcl_test_client                         \
51         sock_test_server                        \
52         sock_test_client
53
54 vcl_test_server_SOURCES = vcl/vcl_test_server.c
55 vcl_test_server_LDADD = libvppcom.la
56
57 vcl_test_client_SOURCES = vcl/vcl_test_client.c
58
59 # Link libvcl_ldpreload.la instead of vppcom.la
60 # to validate that all symbols are included in
61 # libvcl_ldpreload.la at build time.
62 #
63 # Not recommended for production VCL apps as
64 # it includes extraneous code which will never
65 # be executed.
66 vcl_test_client_LDADD = libvcl_ldpreload.la
67
68 sock_test_server_SOURCES = vcl/sock_test_server.c
69 sock_test_client_SOURCES = vcl/sock_test_client.c
70
71 nobase_include_HEADERS +=                       \
72   vcl/sock_test.h
73
74 # vi:syntax=automake