# # Copyright 2021 Staysail Systems, Inc. # Copyright 2018 Capitar IT Group BV # # This software is supplied under the terms of the MIT License, a # copy of which should be located in the distribution where this # file was obtained (LICENSE.txt). A copy of the license may also be # found online at https://opensource.org/licenses/MIT. # nng_directory(nngcat) if (NNG_ENABLE_NNGCAT) add_executable(nngcat nngcat.c) target_include_directories(nngcat PUBLIC ${PROJECT_SOURCE_DIR}/src) target_link_libraries(nngcat nng nng_private) install(TARGETS nngcat RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Tools) if (NNG_TESTS AND CMAKE_SYSTEM_NAME MATCHES "Linux") include(FindUnixCommands) endif () # TODO: This should be refactored to use a test driver. # We only run the tests on Linux for now, because the Darwin CI/CD is too brittle. if (NNG_TESTS AND BASH AND CMAKE_SYSTEM_NAME MATCHES "Linux") macro(add_nngcat_test NAME TIMEOUT) add_test(NAME nng.${NAME} COMMAND ${BASH} ${CMAKE_CURRENT_SOURCE_DIR}/${NAME}_test.sh $) set_tests_properties(nng.${NAME} PROPERTIES TIMEOUT ${TIMEOUT}) endmacro() add_nngcat_test(nngcat_async 10) add_nngcat_test(nngcat_ambiguous 10) add_nngcat_test(nngcat_need_proto 10) add_nngcat_test(nngcat_dup_proto 10) add_nngcat_test(nngcat_help 10) add_nngcat_test(nngcat_incompat 10) add_nngcat_test(nngcat_pubsub 20) add_nngcat_test(nngcat_recvmaxsz 20) add_nngcat_test(nngcat_unlimited 20) add_nngcat_test(nngcat_stdin_pipe 20) endif () endif ()