cmake: 3.12 compatibility
[awesomized/libmemcached] / tests / CMakeLists.txt
1
2 add_subdirectory(libmemcached-1.0)
3
4 add_executable(cycle cycle.cc)
5 target_link_libraries(cycle PRIVATE libtest Threads::Threads)
6 target_include_directories(cycle PRIVATE ..)
7 add_test(cycle cycle)
8
9 add_executable(parser parser.cc)
10 target_link_libraries(parser PRIVATE libtest libmemcached)
11 target_include_directories(parser PRIVATE ..)
12 add_test(parser parser)
13
14 add_executable(failure failure.cc)
15 add_executable(testudp mem_udp.cc)
16
17 foreach(TEST IN ITEMS failure testudp)
18 target_sources(${TEST} PRIVATE
19 libmemcached-1.0/callback_counter.cc
20 libmemcached-1.0/fetch_all_results.cc
21 libmemcached-1.0/generate.cc
22 libmemcached-1.0/print.cc
23 )
24 target_link_libraries(${TEST} PRIVATE
25 libclient_utilities
26 libmemcached
27 libmemcachedutil
28 libtest
29 )
30 target_include_directories(${TEST} PRIVATE ..)
31 add_test(${TEST} ${TEST})
32 endforeach()
33
34 add_executable(testhashkit hashkit_functions.cc)
35 target_link_libraries(testhashkit PRIVATE libtest libhashkit)
36 target_include_directories(testhashkit PRIVATE ..)
37 add_test(testhashkit testhashkit)
38
39 add_executable(hash_plus hash_plus.cc)
40 target_link_libraries(hash_plus PRIVATE libtest libhashkit)
41 target_include_directories(hash_plus PRIVATE ..)
42 add_test(testhashplus hash_plus)
43
44 foreach(CLIENT IN LISTS CLIENTS)
45 if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${CLIENT}.cc)
46 add_executable(test${CLIENT} ${CLIENT}.cc)
47 target_link_libraries(test${CLIENT} PRIVATE
48 libmemcached
49 libmemcachedutil
50 libtest
51 )
52 target_include_directories(test${CLIENT} PRIVATE ..)
53 add_test(test${CLIENT} test${CLIENT})
54 endif()
55 endforeach()