blob: 968137798885d3e56456626037441628b4d43c65 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
find_package(SYSTEMD REQUIRED)
include_directories(include)
set(MRZCPD_SERVICE_SOURCE_FILES src/core.c src/devmgr.c src/mrb.c src/hwinfo.c src/vdev.c
src/vdata.c src/app.c src/monit.c src/node.c src/sc_metrics.c src/sc_node_common.c src/node_shmdev.c
src/node_phydev.c src/node_lb.c src/node_classifier.c src/node_etherfabric.c src/node_tera.c
src/node_eth_ingress.c src/node_eth_egress.c src/node_bfd.c src/node_vwire.c
src/node_health_check.c src/node_forwarder.c src/node_bridge.c src/pdump.c src/olp.c src/olp_6500.c
src/http_serv.c src/classifier_rule_parser.c src/mpack.c src/dp_trace.c src/node_link_aware_injector.c)
add_executable(mrzcpd src/main.c ${MRZCPD_SERVICE_SOURCE_FILES})
set_target_properties(mrzcpd PROPERTIES INTERPROCEDURAL_OPTIMIZATION TRUE)
target_link_libraries(mrzcpd MESA_prof_load_static libdpdk ${SYSTEMD_LIBRARIES})
target_link_libraries(mrzcpd rt pthread dl infra z elf)
target_include_directories(mrzcpd INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/include/")
target_include_directories(mrzcpd INTERFACE ${SYSTEMD_INCLUDE_DIRS})
install(TARGETS mrzcpd RUNTIME DESTINATION ${MR_INSTALL_BINDIR} COMPONENT Program)
########################################### UNITTESTS ###########################################
add_executable(test_olp test/test_olp.c src/olp_6500.c)
target_include_directories(test_olp PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include/)
target_link_libraries(test_olp MESA_prof_load_static libcmocka rt pthread dl infra z elf ${SYSTEMD_LIBRARIES} libdpdk)
add_test(NAME test_olp COMMAND test_olp)
add_executable(test_node_vwire test/test_node_mocks.c test/test_node_vwire.c ${MRZCPD_SERVICE_SOURCE_FILES})
target_compile_options(test_node_vwire PRIVATE --coverage -fprofile-arcs -ftest-coverage)
target_link_libraries(test_node_vwire MESA_prof_load_static ${SYSTEMD_LIBRARIES} libdpdk)
target_link_libraries(test_node_vwire libcmocka rt pthread dl infra z elf)
target_link_options(test_node_vwire PRIVATE --coverage -fprofile-arcs -ftest-coverage)
target_include_directories(test_node_vwire PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/include/")
target_link_libraries(test_node_vwire -Wl,--wrap=mr_dev_desc_lookup)
target_link_libraries(test_node_vwire -Wl,--wrap=forwarder_table_insert)
target_link_libraries(test_node_vwire -Wl,--wrap=classifier_node_process)
target_link_libraries(test_node_vwire -Wl,--wrap=pkt_drop_trap_process)
target_link_libraries(test_node_vwire -Wl,--wrap=rte_eal_init)
target_link_libraries(test_node_vwire -Wl,--wrap=rte_exit)
add_test(NAME test_node_vwire COMMAND test_node_vwire)
add_executable(test_trace_service test/test_trace_service.c ${MRZCPD_SERVICE_SOURCE_FILES})
target_include_directories(test_node_vwire PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/include/)
target_link_libraries(test_trace_service MESA_prof_load_static libcmocka rt pthread dl infra z elf ${SYSTEMD_LIBRARIES} libdpdk)
target_link_options(test_trace_service PRIVATE -Wl,--wrap=rte_mp_reply,--wrap=app_event_handler_register,--wrap=app_lookup_by_symbol)
target_link_options(test_trace_service PRIVATE -Wl,--wrap=sc_main_get)
add_test(NAME test_trace_service COMMAND test_trace_service)
add_executable(test_node_bfd test/test_node_mocks.c test/test_node_bfd.c test/test_common.c ${MRZCPD_SERVICE_SOURCE_FILES})
target_compile_options(test_node_bfd PRIVATE --coverage -fprofile-arcs -ftest-coverage)
target_link_libraries(test_node_bfd MESA_prof_load_static ${SYSTEMD_LIBRARIES} libdpdk)
target_link_libraries(test_node_bfd libcmocka rt pthread dl infra z elf)
target_link_options(test_node_bfd PRIVATE --coverage -fprofile-arcs -ftest-coverage)
target_include_directories(test_node_bfd PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/include/")
add_test(NAME test_node_bfd COMMAND test_node_bfd)
add_executable(test_sc_metrics test/test_node_mocks.c test/test_sc_metrics.c ${MRZCPD_SERVICE_SOURCE_FILES})
target_compile_options(test_sc_metrics PRIVATE --coverage -fprofile-arcs -ftest-coverage)
target_link_libraries(test_sc_metrics MESA_prof_load_static ${SYSTEMD_LIBRARIES} libdpdk)
target_link_libraries(test_sc_metrics libcmocka rt pthread dl infra z elf)
target_link_options(test_sc_metrics PRIVATE --coverage -fprofile-arcs -ftest-coverage)
target_include_directories(test_sc_metrics PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/include/")
add_test(NAME test_sc_metrics COMMAND test_sc_metrics)
add_executable(test_node_ef test/test_node_mocks.c test/test_node_ef.c test/test_common.c ${MRZCPD_SERVICE_SOURCE_FILES})
target_compile_options(test_node_ef PRIVATE --coverage -fprofile-arcs -ftest-coverage)
target_link_libraries(test_node_ef MESA_prof_load_static ${SYSTEMD_LIBRARIES} libdpdk)
target_link_libraries(test_node_ef libcmocka rt pthread dl infra z elf)
target_link_options(test_node_ef PRIVATE --coverage -fprofile-arcs -ftest-coverage)
target_include_directories(test_node_ef PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/include/")
target_link_libraries(test_node_ef -Wl,--wrap=mr_dev_desc_lookup)
target_link_libraries(test_node_ef -Wl,--wrap=port_adapter_mapping_insert)
add_test(NAME test_node_ef COMMAND test_node_ef)
|