-# Copyright (c) 2018 Cisco and/or its affiliates.
+# Copyright (c) 2018-2019 Cisco and/or its affiliates.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at:
##############################################################################
# vppcom shared library
##############################################################################
-add_library(vppcom SHARED
+add_vpp_library(vppcom
+ SOURCES
vppcom.c
vcl_bapi.c
vcl_cfg.c
- vcl_event.c
vcl_private.c
-)
-target_link_libraries(vppcom vppinfra svm vlibmemoryclient rt pthread)
-install(TARGETS vppcom DESTINATION lib)
+ vcl_locked.c
+ vcl_sapi.c
-##############################################################################
-# vcl headers
-##############################################################################
-vpp_add_header_files(vcl
- vcl_event.h
- vppcom.h
+ LINK_LIBRARIES
+ vppinfra svm vlibmemoryclient rt pthread
+
+ DEPENDS
+ api_headers
)
-##############################################################################
-# vcl tests
-##############################################################################
-option(VPP_BUILD_VCL_TESTS "Build vcl tests." ON)
-if(VPP_BUILD_VCL_TESTS)
- set(VCL_TESTS
- vcl_test_server
- vcl_test_client
- sock_test_server
- sock_test_client
- test_vcl_listener_server
- test_vcl_listener_client
- )
- foreach(test ${VCL_TESTS})
- add_executable(${test} ${test}.c)
- target_link_libraries(${test} vppcom)
- endforeach()
-endif(VPP_BUILD_VCL_TESTS)
+option(LDP_HAS_GNU_SOURCE "LDP configured to use _GNU_SOURCE" ON)
+if (LDP_HAS_GNU_SOURCE)
+ add_compile_definitions(HAVE_GNU_SOURCE)
+endif(LDP_HAS_GNU_SOURCE)
+
+add_vpp_library(vcl_ldpreload
+ SOURCES
+ ldp_socket_wrapper.c
+ ldp.c
+ LINK_LIBRARIES
+ vppinfra svm vlibmemoryclient rt pthread vppcom dl
+)
+
+add_vpp_headers(vcl
+ ldp.h
+ ldp_glibc_socket.h
+ vppcom.h
+ vcl_locked.h
+ ldp_socket_wrapper.h
+)
\ No newline at end of file