cmake: fix target properties
[awesomized/libmemcached] / src / bin / CMakeLists.txt
index 988f4809a21806109e6916948aa15511aa5fce99..d824ec7e0f70135d9b65c9c3f07f1ee9a89d9503 100644 (file)
@@ -1,44 +1,22 @@
 add_subdirectory(common)
 
 foreach(CLIENT IN LISTS CLIENTS)
-    add_executable(${CLIENT} ${CLIENT}.cc)
-    set_target_properties(${CLIENT} PROPERTIES CXX_STANDARD ${CXX_STANDARD})
+    add_executable(${CLIENT} mem${CLIENT}.cc)
+    set_target_properties(${CLIENT} PROPERTIES CXX_STANDARD ${CXX_STANDARD} OUTPUT_NAME ${CLIENT_PREFIX}${CLIENT})
     target_include_directories(${CLIENT} PRIVATE ..)
     target_link_libraries(${CLIENT} PRIVATE libclient_common)
     if(CMAKE_INSTALL_RPATH)
         set_target_properties(${CLIENT} PROPERTIES
                 INSTALL_RPATH ${CMAKE_INSTALL_RPATH}/../${CMAKE_INSTALL_LIBDIR})
     endif()
-    install(TARGETS ${CLIENT}
-            RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+    install(TARGETS ${CLIENT} RUNTIME COMPONENT bin DESTINATION ${CMAKE_INSTALL_BINDIR})
 endforeach()
 
 # extra sources
 
-target_sources(memcapable PRIVATE ../libmemcached/byteorder.cc)
+target_sources(capable PRIVATE ../libmemcached/byteorder.cc)
 
 # extra libs
 
-target_link_libraries(memcapable PRIVATE Threads::Threads)
-target_link_libraries(memping PRIVATE libmemcachedutil)
-target_link_libraries(memslap PRIVATE Threads::Threads)
-
-# memaslap is special
-
-if(HAVE_MEMASLAP)
-    add_executable(memaslap memaslap.c
-            memaslap/ms_conn.c
-            memaslap/ms_setting.c
-            memaslap/ms_sigsegv.c
-            memaslap/ms_stats.c
-            memaslap/ms_task.c
-            memaslap/ms_thread.c)
-    target_include_directories(memaslap PRIVATE memaslap)
-    target_link_libraries(memaslap PRIVATE libclient_common Threads::Threads LIBEVENT)
-    if(CMAKE_INSTALL_RPATH)
-        set_target_properties(${CLIENT} PROPERTIES
-                INSTALL_RPATH ${CMAKE_INSTALL_RPATH}/../${CMAKE_INSTALL_LIBDIR})
-    endif()
-    install(TARGETS memaslap
-            RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
-endif()
+target_link_libraries(ping PRIVATE libmemcachedutil)
+target_link_libraries(slap PRIVATE Threads::Threads)