# See the License for the specific language governing permissions and
# limitations under the License.
+option(VPP_BUFFER_FAULT_INJECTOR "Include the buffer fault injector" OFF)
+
##############################################################################
# Generate vlib/config.h
##############################################################################
+if(VPP_BUFFER_FAULT_INJECTOR)
+ set(BUFFER_ALLOC_FAULT_INJECTOR 1 CACHE STRING "fault injector on")
+else()
+ set(BUFFER_ALLOC_FAULT_INJECTOR 0 CACHE STRING "fault injector off")
+endif()
+
set(PRE_DATA_SIZE 128 CACHE STRING "Buffer headroom size.")
configure_file(
${CMAKE_SOURCE_DIR}/vlib/config.h.in
COMPONENT vpp-dev
)
+##############################################################################
+# Find lib and include files
+##############################################################################
+message(STATUS "Looking for libuuid")
+find_path(UUID_INCLUDE_DIR NAMES uuid/uuid.h)
+find_library(UUID_LIB NAMES uuid)
+
+if(UUID_INCLUDE_DIR AND UUID_LIB)
+ include_directories(${UUID_INCLUDE_DIR})
+ set(VMBUS_SOURCE linux/vmbus.c)
+ set(VMBUS_LIBS uuid)
+ message(STATUS "Found uuid in ${UUID_INCLUDE_DIR}")
+else()
+ message(WARNING "-- libuuid not found - vmbus support disabled")
+endif()
+
##############################################################################
# vlib shared library
##############################################################################
add_vpp_library(vlib
SOURCES
buffer.c
- buffer_serialize.c
cli.c
counter.c
+ drop.c
error.c
format.c
- i2c.c
+ handoff_trace.c
init.c
linux/pci.c
- linux/physmem.c
linux/vfio.c
log.c
main.c
- mc.c
node.c
node_cli.c
node_format.c
+ node_init.c
pci/pci.c
+ pci/pci_types_api.c
+ physmem.c
+ punt.c
+ punt_node.c
threads.c
threads_cli.c
trace.c
- unix/cj.c
unix/cli.c
unix/input.c
unix/main.c
- unix/mc_socket.c
unix/plugin.c
unix/util.c
+ vmbus/vmbus.c
+ ${VMBUS_SOURCE}
+
+ MULTIARCH_SOURCES
+ drop.c
+ punt_node.c
+ node_init.c
INSTALL_HEADERS
buffer_funcs.h
buffer.h
buffer_node.h
- cli_funcs.h
cli.h
counter.h
counter_types.h
error.h
format_funcs.h
global_funcs.h
- i2c.h
init.h
linux/vfio.h
log.h
main.h
- mc.h
node_funcs.h
node.h
pci/pci_config.h
pci/pci.h
+ pci/pci_types_api.h
physmem_funcs.h
physmem.h
+ punt.h
threads.h
trace_funcs.h
trace.h
- unix/cj.h
unix/mc_socket.h
unix/plugin.h
unix/unix.h
vlib.h
+ vmbus/vmbus.h
+
+ API_FILES
+ pci/pci_types.api
+
+ LINK_LIBRARIES vppinfra svm ${VMBUS_LIBS} ${CMAKE_DL_LIBS}
- LINK_LIBRARIES vppinfra svm ${CMAKE_DL_LIBS}
+ DEPENDS api_headers
)