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