aboutsummaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2020-11-13 22:31:18 -0800
committerGarrett D'Amore <garrett@damore.org>2020-11-14 21:31:43 -0800
commiteb328da56c3fc7167b536dcb206df0abb0f4a9b9 (patch)
treec92e3dd3db6a0f1b0efc6a027e7e4db6442068f0 /tools
parent7c1ff5ed1e48af413494b9070cccf79f3858b749 (diff)
downloadnng-eb328da56c3fc7167b536dcb206df0abb0f4a9b9.tar.gz
nng-eb328da56c3fc7167b536dcb206df0abb0f4a9b9.tar.bz2
nng-eb328da56c3fc7167b536dcb206df0abb0f4a9b9.zip
fixes #1087 CMakeLists structural improvements desired
This doesn't modularize all the tests yet, but it goes a long way in the right direction.
Diffstat (limited to 'tools')
-rw-r--r--tools/nngcat/CMakeLists.txt49
1 files changed, 27 insertions, 22 deletions
diff --git a/tools/nngcat/CMakeLists.txt b/tools/nngcat/CMakeLists.txt
index 209d545e..bd7327ac 100644
--- a/tools/nngcat/CMakeLists.txt
+++ b/tools/nngcat/CMakeLists.txt
@@ -9,26 +9,31 @@
#
if (NNG_ENABLE_NNGCAT)
- add_executable (nngcat nngcat.c)
- target_include_directories (nngcat PUBLIC ${PROJECT_SOURCE_DIR}/src)
- target_link_libraries (nngcat ${PROJECT_NAME})
- install (TARGETS nngcat RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
- COMPONENT Tools)
+ 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 NNG_PLATFORM_POSIX AND BASH)
- macro(add_nngcat_test NAME TIMEOUT)
- add_test (NAME ${PROJECT_NAME}.${NAME} COMMAND ${BASH} ${CMAKE_CURRENT_SOURCE_DIR}/${NAME}_test.sh $<TARGET_FILE:nngcat>)
- set_tests_properties (${PROJECT_NAME}.${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()
+ 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 $<TARGET_FILE:nngcat>)
+ 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 ()