reorganize directories
[m6w6/libmemcached] / src / bin / CMakeLists.txt
1
2 add_library(libclient_utilities STATIC utilities.cc generator.cc execute.cc)
3 add_library(client_utilities ALIAS libclient_utilities)
4 target_link_libraries(libclient_utilities libmemcachedinternal)
5
6 foreach(CLIENT IN LISTS CLIENTS)
7 add_executable(${CLIENT} ${CLIENT}.cc)
8 target_include_directories(${CLIENT} PRIVATE ..)
9 target_link_libraries(${CLIENT} libclient_utilities)
10 install(TARGETS ${CLIENT}
11 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
12 endforeach()
13
14 # extra sources
15
16 target_sources(memcapable PRIVATE ../libmemcached/byteorder.cc)
17
18 # extra libs
19
20 target_link_libraries(memcapable Threads::Threads)
21 target_link_libraries(memping libmemcachedutil)
22 target_link_libraries(memslap Threads::Threads)
23
24 # memaslap is special
25
26 if(ENABLE_MEMASLAP)
27 if(LIBEVENT AND HAVE_C_STDATOMIC)
28 add_executable(memaslap memaslap.c
29 ms_conn.c ms_setting.c ms_sigsegv.c ms_stats.c ms_task.c ms_thread.c)
30 target_include_directories(memaslap PRIVATE ${LIBEVENT_INCLUDEDIR})
31 target_link_libraries(memaslap libclient_utilities ${LIBEVENT_LIBRARIES} Threads::Threads)
32 install(TARGETS memaslap
33 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
34 endif()
35 endif()