ba19ced27a6b0b17a792254eda21446ad68f9a4c
[vpp.git] / src / vcl / CMakeLists.txt
1 # Copyright (c) 2018 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 ##############################################################################
15 # vppcom shared library
16 ##############################################################################
17 add_vpp_library(vppcom
18   SOURCES
19   vppcom.c
20   vcl_bapi.c
21   vcl_cfg.c
22   vcl_event.c
23   vcl_private.c
24
25   LINK_LIBRARIES
26   vppinfra svm vlibmemoryclient rt pthread
27 )
28
29 add_vpp_library(vcl_ldpreload
30   SOURCES
31   ldp_socket_wrapper.c
32   ldp.c
33
34   LINK_LIBRARIES
35   vppinfra svm vlibmemoryclient rt pthread vppcom dl
36 )
37
38 add_vpp_headers(vcl
39   ldp.h
40   vcl_event.h
41   sock_test.h
42   ldp_glibc_socket.h
43   vcl_test.h
44   vppcom.h
45   ldp_socket_wrapper.h
46   sock_test_common.h
47 )
48
49 ##############################################################################
50 # vcl tests
51 ##############################################################################
52 option(VPP_BUILD_VCL_TESTS "Build vcl tests." ON)
53 if(VPP_BUILD_VCL_TESTS)
54   foreach(test
55     vcl_test_server
56     vcl_test_client
57     sock_test_server
58     sock_test_client
59     test_vcl_listener_server
60     test_vcl_listener_client
61   )
62     add_vpp_executable(${test} SOURCES ${test}.c LINK_LIBRARIES vppcom pthread
63                        NO_INSTALL)
64   endforeach()
65 endif(VPP_BUILD_VCL_TESTS)
66