msvc support
[m6w6/libmemcached] / contrib / bin / memaslap / CMakeLists.txt
index 648b76874f491d85bbe0db29f15af6377266edca..abd3c83d6a0e8b28dbdfaeb4819cdcf9d04ac473 100644 (file)
@@ -1,8 +1,13 @@
-if(ENABLE_MEMASLAP)
+if(ENABLE_MEMASLAP AND CMAKE_USE_PTHREADS_INIT)
+    add_definitions(-D_GNU_SOURCE)
+
     include(CheckAtomics)
-    check_atomics()
-    check_dependency(LIBEVENT event event.h)
-    check_decl(getline stdio.h)
+
+    check_type(cpu_set_t sched.h)
+    check_symbol(getline stdio.h)
+    check_symbol(_SC_NPROCESSORS_ONLN unistd.h)
+
+    check_dependency(LIBEVENT event)
 
     if(HAVE_LIBEVENT AND HAVE_ATOMICS)
         add_executable(memaslap
@@ -19,7 +24,7 @@ if(ENABLE_MEMASLAP)
                 ${CMAKE_SOURCE_DIR}/src
                 ${CMAKE_BINARY_DIR}/src
                 ${CMAKE_BINARY_DIR})
-        target_link_libraries(memaslap PUBLIC libmemcached Threads::Threads ${LIBEVENT} m)
+        target_link_libraries(memaslap PRIVATE libmemcached Threads::Threads ${LIBEVENT} m)
         set_property(TARGET memaslap PROPERTY C_STANDARD 11)
         if(CMAKE_INSTALL_RPATH)
             set_target_properties(${CLIENT} PROPERTIES