581c01bd154132f57b10b20e0b4fb513053ead3f
[awesomized/libmemcached] / contrib / bin / memaslap / CMakeLists.txt
1 if(ENABLE_MEMASLAP AND CMAKE_USE_PTHREADS_INIT)
2
3 include(CheckAtomics)
4
5 check_type(cpu_set_t sched.h)
6 check_symbol(getline stdio.h)
7 check_symbol(_SC_NPROCESSORS_ONLN unistd.h)
8
9 check_dependency(LIBEVENT event)
10
11 if(HAVE_LIBEVENT AND HAVE_ATOMICS)
12 add_executable(memaslap
13 ms_main.c
14 ms_conn.c
15 ms_setting.c
16 ms_sigsegv.c
17 ms_stats.c
18 ms_task.c
19 ms_thread.c)
20 target_include_directories(memaslap PRIVATE
21 ${CMAKE_SOURCE_DIR}/include
22 ${CMAKE_BINARY_DIR}/include
23 ${CMAKE_SOURCE_DIR}/src
24 ${CMAKE_BINARY_DIR}/src
25 ${CMAKE_BINARY_DIR})
26 target_link_libraries(memaslap PRIVATE libmemcached Threads::Threads ${LIBEVENT} m)
27 set_property(TARGET memaslap PROPERTY C_STANDARD 11)
28 if(CMAKE_INSTALL_RPATH)
29 set_target_properties(${CLIENT} PROPERTIES
30 INSTALL_RPATH ${CMAKE_INSTALL_RPATH}/../${CMAKE_INSTALL_LIBDIR})
31 endif()
32 install(TARGETS memaslap
33 RUNTIME COMPONENT bin DESTINATION ${CMAKE_INSTALL_BINDIR})
34 endif()
35
36 endif()