Split stress-queue test
[libcds.git] / test / stress / queue / CMakeLists.txt
index be5b0a5d9bbd48671b873cafd74861ab4573296b..8bee83ad49b1cb561b3bde3b42acc05c8d8bb02d 100644 (file)
@@ -1,20 +1,65 @@
-set(PACKAGE_NAME stress-queue)
+include_directories(
+    ${CMAKE_CURRENT_SOURCE_DIR}
+)
 
-set(CDSSTRESS_QUEUE_SOURCES
+# stress-queue-pop
+set(CDSSTRESS_QUEUE_POP stress-queue-pop)
+set(CDSSTRESS_QUEUE_POP_SOURCES
     ../main.cpp
-    bounded_queue_fulness.cpp
-    intrusive_push_pop.cpp
     pop.cpp
+)
+add_executable(${CDSSTRESS_QUEUE_POP} ${CDSSTRESS_QUEUE_POP_SOURCES} $<TARGET_OBJECTS:${CDSSTRESS_FRAMEWORK_LIBRARY}>)
+target_link_libraries(${CDSSTRESS_QUEUE_POP} ${CDS_TEST_LIBRARIES})
+add_test(NAME ${CDSSTRESS_QUEUE_POP} COMMAND ${CDSSTRESS_QUEUE_POP} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})    
+
+# stress-queue-push
+set(CDSSTRESS_QUEUE_PUSH stress-queue-push)
+set(CDSSTRESS_QUEUE_PUSH_SOURCES
+    ../main.cpp
     push.cpp
+)
+add_executable(${CDSSTRESS_QUEUE_PUSH} ${CDSSTRESS_QUEUE_PUSH_SOURCES} $<TARGET_OBJECTS:${CDSSTRESS_FRAMEWORK_LIBRARY}>)
+target_link_libraries(${CDSSTRESS_QUEUE_PUSH} ${CDS_TEST_LIBRARIES})
+add_test(NAME ${CDSSTRESS_QUEUE_PUSH} COMMAND ${CDSSTRESS_QUEUE_PUSH} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})    
+
+# stress-queue-push-pop
+set(CDSSTRESS_QUEUE_PUSHPOP stress-queue-push-pop)
+set(CDSSTRESS_QUEUE_PUSHPOP_SOURCES
+    ../main.cpp
     push_pop.cpp
+    intrusive_push_pop.cpp    
+)
+add_executable(${CDSSTRESS_QUEUE_PUSHPOP} ${CDSSTRESS_QUEUE_PUSHPOP_SOURCES} $<TARGET_OBJECTS:${CDSSTRESS_FRAMEWORK_LIBRARY}>)
+target_link_libraries(${CDSSTRESS_QUEUE_PUSHPOP} ${CDS_TEST_LIBRARIES})
+add_test(NAME ${CDSSTRESS_QUEUE_PUSHPOP} COMMAND ${CDSSTRESS_QUEUE_PUSHPOP} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})    
+
+# stress-queue-random
+set(CDSSTRESS_QUEUE_RANDOM stress-queue-random)
+set(CDSSTRESS_QUEUE_RANDOM_SOURCES
+    ../main.cpp
     random.cpp
 )
+add_executable(${CDSSTRESS_QUEUE_RANDOM} ${CDSSTRESS_QUEUE_RANDOM_SOURCES} $<TARGET_OBJECTS:${CDSSTRESS_FRAMEWORK_LIBRARY}>)
+target_link_libraries(${CDSSTRESS_QUEUE_RANDOM} ${CDS_TEST_LIBRARIES})
+add_test(NAME ${CDSSTRESS_QUEUE_RANDOM} COMMAND ${CDSSTRESS_QUEUE_RANDOM} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})    
 
-include_directories(
-    ${CMAKE_CURRENT_SOURCE_DIR}
+# stress-queue-bounded
+set(CDSSTRESS_QUEUE_BOUNDED stress-queue-bounded)
+set(CDSSTRESS_QUEUE_BOUNDED_SOURCES
+    ../main.cpp
+    bounded_queue_fulness.cpp
 )
+add_executable(${CDSSTRESS_QUEUE_BOUNDED} ${CDSSTRESS_QUEUE_BOUNDED_SOURCES} $<TARGET_OBJECTS:${CDSSTRESS_FRAMEWORK_LIBRARY}>)
+target_link_libraries(${CDSSTRESS_QUEUE_BOUNDED} ${CDS_TEST_LIBRARIES})
+add_test(NAME ${CDSSTRESS_QUEUE_BOUNDED} COMMAND ${CDSSTRESS_QUEUE_BOUNDED} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})    
 
-add_executable(${PACKAGE_NAME} ${CDSSTRESS_QUEUE_SOURCES} $<TARGET_OBJECTS:${CDSSTRESS_FRAMEWORK_LIBRARY}>)
-target_link_libraries(${PACKAGE_NAME} ${CDS_TEST_LIBRARIES})
 
-add_test(NAME ${PACKAGE_NAME} COMMAND ${PACKAGE_NAME} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
\ No newline at end of file
+# stress-queue
+add_custom_target( stress-queue
+    DEPENDS
+        ${CDSSTRESS_QUEUE_POP}
+        ${CDSSTRESS_QUEUE_PUSH}
+        ${CDSSTRESS_QUEUE_PUSHPOP}
+        ${CDSSTRESS_QUEUE_RANDOM}
+        ${CDSSTRESS_QUEUE_BOUNDED}
+)        
\ No newline at end of file