hsa: add support for SAPI in vpp_echo
[vpp.git] / src / plugins / hs_apps / CMakeLists.txt
1 # Copyright (c) 2019 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 # vpp builtin hs apps
16 ##############################################################################
17 add_vpp_plugin(hs_apps
18   SOURCES
19   echo_client.c
20   echo_server.c
21   hs_apps.c
22   http_cli.c
23   http_tps.c
24   proxy.c
25 )
26
27 ##############################################################################
28 # vpp external hs apps that use the "raw" session layer api
29 ##############################################################################
30 option(VPP_BUILD_HS_SAPI_APPS "Build hs apps that use the session api." ON)
31 if(VPP_BUILD_HS_SAPI_APPS)
32   add_vpp_executable(vpp_echo
33     SOURCES
34     sapi/vpp_echo.c
35     sapi/vpp_echo_common.c
36     sapi/vpp_echo_bapi.c
37     sapi/vpp_echo_sapi.c
38     sapi/vpp_echo_proto_quic.c
39     sapi/vpp_echo_proto_tcp.c
40     sapi/vpp_echo_proto_udp.c
41     LINK_LIBRARIES vlibmemoryclient svm vppinfra pthread m rt
42     DEPENDS api_headers
43   )
44 endif(VPP_BUILD_HS_SAPI_APPS)
45
46 ##############################################################################
47 # vcl tests
48 ##############################################################################
49 option(VPP_BUILD_VCL_TESTS "Build vcl tests." ON)
50 if(VPP_BUILD_VCL_TESTS)
51   foreach(test
52     sock_test_server
53     sock_test_client
54   )
55     add_vpp_executable(${test}
56       SOURCES "vcl/${test}.c"
57       LINK_LIBRARIES vppcom pthread
58       NO_INSTALL
59     )
60   endforeach()
61
62   foreach(test
63     vcl_test_server
64     vcl_test_client
65   )
66     add_vpp_executable(${test}
67       SOURCES
68       "vcl/${test}.c"
69       vcl/vcl_test_protos.c
70       LINK_LIBRARIES vppcom pthread
71       NO_INSTALL
72     )
73   endforeach()
74 endif(VPP_BUILD_VCL_TESTS)