2 ${CMAKE_CURRENT_SOURCE_DIR}
6 set(UNIT_SET_FELDMAN unit-set-feldman)
7 set(UNIT_SET_FELDMAN_SOURCES
10 feldman_hashset_dhp.cpp
11 feldman_hashset_rcu_gpb.cpp
12 feldman_hashset_rcu_gpi.cpp
13 feldman_hashset_rcu_gpt.cpp
14 feldman_hashset_rcu_shb.cpp
15 feldman_hashset_rcu_sht.cpp
17 add_executable(${UNIT_SET_FELDMAN} ${UNIT_SET_FELDMAN_SOURCES})
18 target_link_libraries(${UNIT_SET_FELDMAN} ${CDS_TEST_LIBRARIES})
20 add_test(NAME ${UNIT_SET_FELDMAN} COMMAND ${UNIT_SET_FELDMAN} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
22 # MichaelSet<MichaelList>
23 set(UNIT_SET_MICHAEL unit-set-michael)
24 set(UNIT_SET_MICHAEL_SOURCES
26 michael_michael_hp.cpp
27 michael_michael_dhp.cpp
28 michael_michael_nogc.cpp
29 michael_michael_rcu_gpb.cpp
30 michael_michael_rcu_gpi.cpp
31 michael_michael_rcu_gpt.cpp
32 michael_michael_rcu_shb.cpp
33 michael_michael_rcu_sht.cpp
35 add_executable(${UNIT_SET_MICHAEL} ${UNIT_SET_MICHAEL_SOURCES})
36 target_link_libraries(${UNIT_SET_MICHAEL}
39 ${Boost_THREAD_LIBRARY}
40 ${Boost_SYSTEM_LIBRARY}
41 ${CMAKE_THREAD_LIBS_INIT}
43 add_test(NAME ${UNIT_SET_MICHAEL} COMMAND ${UNIT_SET_MICHAEL} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
45 # MichaelSet<IterableList>
46 set(UNIT_SET_MICHAEL_ITERABLE unit-set-michael-iterable)
47 set(UNIT_SET_MICHAEL_ITERABLE_SOURCES
49 michael_iterable_hp.cpp
50 michael_iterable_dhp.cpp
52 add_executable(${UNIT_SET_MICHAEL_ITERABLE} ${UNIT_SET_MICHAEL_ITERABLE_SOURCES})
53 target_link_libraries(${UNIT_SET_MICHAEL_ITERABLE}
56 ${Boost_THREAD_LIBRARY}
57 ${Boost_SYSTEM_LIBRARY}
58 ${CMAKE_THREAD_LIBS_INIT}
60 add_test(NAME ${UNIT_SET_MICHAEL_ITERABLE} COMMAND ${UNIT_SET_MICHAEL_ITERABLE} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
62 # MichaelSet<LazyList>
63 set(UNIT_SET_MICHAEL_LAZY unit-set-michael-lazy)
64 set(UNIT_SET_MICHAEL_LAZY_SOURCES
69 michael_lazy_rcu_gpb.cpp
70 michael_lazy_rcu_gpi.cpp
71 michael_lazy_rcu_gpt.cpp
72 michael_lazy_rcu_shb.cpp
73 michael_lazy_rcu_sht.cpp
75 add_executable(${UNIT_SET_MICHAEL_LAZY} ${UNIT_SET_MICHAEL_LAZY_SOURCES})
76 target_link_libraries(${UNIT_SET_MICHAEL_LAZY}
79 ${Boost_THREAD_LIBRARY}
80 ${Boost_SYSTEM_LIBRARY}
81 ${CMAKE_THREAD_LIBS_INIT}
83 add_test(NAME ${UNIT_SET_MICHAEL_LAZY} COMMAND ${UNIT_SET_MICHAEL_LAZY} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
86 set(UNIT_SET_SKIP unit-set-skip)
87 set(UNIT_SET_SKIP_SOURCES
98 add_executable(${UNIT_SET_SKIP} ${UNIT_SET_SKIP_SOURCES})
99 target_link_libraries(${UNIT_SET_SKIP}
100 ${CDS_SHARED_LIBRARY}
102 ${Boost_THREAD_LIBRARY}
103 ${Boost_SYSTEM_LIBRARY}
104 ${CMAKE_THREAD_LIBS_INIT}
106 add_test(NAME ${UNIT_SET_SKIP} COMMAND ${UNIT_SET_SKIP} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
108 # SplitListSet<MichaelList>
109 set(UNIT_SET_SPLIT_MICHAEL unit-set-split-michael)
110 set(UNIT_SET_SPLIT_MICHAEL_SOURCES
113 split_michael_dhp.cpp
114 split_michael_nogc.cpp
115 split_michael_rcu_gpb.cpp
116 split_michael_rcu_gpi.cpp
117 split_michael_rcu_gpt.cpp
118 split_michael_rcu_shb.cpp
119 split_michael_rcu_sht.cpp
121 add_executable(${UNIT_SET_SPLIT_MICHAEL} ${UNIT_SET_SPLIT_MICHAEL_SOURCES})
122 target_link_libraries(${UNIT_SET_SPLIT_MICHAEL}
123 ${CDS_SHARED_LIBRARY}
125 ${Boost_THREAD_LIBRARY}
126 ${Boost_SYSTEM_LIBRARY}
127 ${CMAKE_THREAD_LIBS_INIT}
129 add_test(NAME ${UNIT_SET_SPLIT_MICHAEL} COMMAND ${UNIT_SET_SPLIT_MICHAEL} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
131 # SplitListSet<LazyList>
132 set(UNIT_SET_SPLIT_LAZY unit-set-split-lazy)
133 set(UNIT_SET_SPLIT_LAZY_SOURCES
138 split_lazy_rcu_gpb.cpp
139 split_lazy_rcu_gpi.cpp
140 split_lazy_rcu_gpt.cpp
141 split_lazy_rcu_shb.cpp
142 split_lazy_rcu_sht.cpp
144 add_executable(${UNIT_SET_SPLIT_LAZY} ${UNIT_SET_SPLIT_LAZY_SOURCES})
145 target_link_libraries(${UNIT_SET_SPLIT_LAZY}
146 ${CDS_SHARED_LIBRARY}
148 ${Boost_THREAD_LIBRARY}
149 ${Boost_SYSTEM_LIBRARY}
150 ${CMAKE_THREAD_LIBS_INIT}
152 add_test(NAME ${UNIT_SET_SPLIT_LAZY} COMMAND ${UNIT_SET_SPLIT_LAZY} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
154 # SplitListSet<IterableList>
155 set(UNIT_SET_SPLIT_ITERABLE unit-set-split-iterable)
156 set(UNIT_SET_SPLIT_ITERABLE_SOURCES
158 split_iterable_hp.cpp
159 split_iterable_dhp.cpp
161 add_executable(${UNIT_SET_SPLIT_ITERABLE} ${UNIT_SET_SPLIT_ITERABLE_SOURCES})
162 target_link_libraries(${UNIT_SET_SPLIT_ITERABLE}
163 ${CDS_SHARED_LIBRARY}
165 ${Boost_THREAD_LIBRARY}
166 ${Boost_SYSTEM_LIBRARY}
167 ${CMAKE_THREAD_LIBS_INIT}
169 add_test(NAME ${UNIT_SET_SPLIT_ITERABLE} COMMAND ${UNIT_SET_SPLIT_ITERABLE} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
172 add_custom_target( unit-set
176 ${UNIT_SET_MICHAEL_ITERABLE}
177 ${UNIT_SET_MICHAEL_LAZY}
178 ${UNIT_SET_SKIP_LIST}
179 ${UNIT_SET_SPLIT_MICHAEL}
180 ${UNIT_SET_SPLIT_ITERABLE}
181 ${UNIT_SET_SPLIT_LAZY}