85d18c25edd50fd529bf08f6134812eb157d6872
[libcds.git] / test / unit / set / CMakeLists.txt
1 include_directories(
2     ${CMAKE_CURRENT_SOURCE_DIR}
3 )
4
5 # FeldmanHashSet
6 set(UNIT_SET_FELDMAN unit-set-feldman)
7 set(UNIT_SET_FELDMAN_SOURCES
8     ../main.cpp
9     feldman_hashset_hp.cpp
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
16 )
17 add_executable(${UNIT_SET_FELDMAN} ${UNIT_SET_FELDMAN_SOURCES})
18 target_link_libraries(${UNIT_SET_FELDMAN} ${CDS_TEST_LIBRARIES})
19
20 add_test(NAME ${UNIT_SET_FELDMAN} COMMAND ${UNIT_SET_FELDMAN} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
21
22 # MichaelSet<MichaelList>
23 set(UNIT_SET_MICHAEL unit-set-michael)
24 set(UNIT_SET_MICHAEL_SOURCES
25     ../main.cpp
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
34 )
35 add_executable(${UNIT_SET_MICHAEL} ${UNIT_SET_MICHAEL_SOURCES})
36 target_link_libraries(${UNIT_SET_MICHAEL} 
37     ${CDS_SHARED_LIBRARY}
38     ${GTEST_LIBRARY}
39     ${Boost_THREAD_LIBRARY}
40     ${Boost_SYSTEM_LIBRARY}
41     ${CMAKE_THREAD_LIBS_INIT}
42 )
43 add_test(NAME ${UNIT_SET_MICHAEL} COMMAND ${UNIT_SET_MICHAEL} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
44
45 # MichaelSet<IterableList>
46 set(UNIT_SET_MICHAEL_ITERABLE unit-set-michael-iterable)
47 set(UNIT_SET_MICHAEL_ITERABLE_SOURCES
48     ../main.cpp
49     michael_iterable_hp.cpp
50     michael_iterable_dhp.cpp
51 )
52 add_executable(${UNIT_SET_MICHAEL_ITERABLE} ${UNIT_SET_MICHAEL_ITERABLE_SOURCES})
53 target_link_libraries(${UNIT_SET_MICHAEL_ITERABLE} 
54     ${CDS_SHARED_LIBRARY}
55     ${GTEST_LIBRARY}
56     ${Boost_THREAD_LIBRARY}
57     ${Boost_SYSTEM_LIBRARY}
58     ${CMAKE_THREAD_LIBS_INIT}
59 )
60 add_test(NAME ${UNIT_SET_MICHAEL_ITERABLE} COMMAND ${UNIT_SET_MICHAEL_ITERABLE} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
61
62 # MichaelSet<LazyList>
63 set(UNIT_SET_MICHAEL_LAZY unit-set-michael-lazy)
64 set(UNIT_SET_MICHAEL_LAZY_SOURCES
65     ../main.cpp
66     michael_lazy_hp.cpp
67     michael_lazy_dhp.cpp
68     michael_lazy_nogc.cpp
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
74 )
75 add_executable(${UNIT_SET_MICHAEL_LAZY} ${UNIT_SET_MICHAEL_LAZY_SOURCES})
76 target_link_libraries(${UNIT_SET_MICHAEL_LAZY} 
77     ${CDS_SHARED_LIBRARY}
78     ${GTEST_LIBRARY}
79     ${Boost_THREAD_LIBRARY}
80     ${Boost_SYSTEM_LIBRARY}
81     ${CMAKE_THREAD_LIBS_INIT}
82 )
83 add_test(NAME ${UNIT_SET_MICHAEL_LAZY} COMMAND ${UNIT_SET_MICHAEL_LAZY} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
84
85 # SkipListSet
86 set(UNIT_SET_SKIP unit-set-skip)
87 set(UNIT_SET_SKIP_SOURCES
88     ../main.cpp
89     skiplist_hp.cpp
90     skiplist_dhp.cpp
91     skiplist_nogc.cpp
92     skiplist_rcu_gpb.cpp
93     skiplist_rcu_gpi.cpp
94     skiplist_rcu_gpt.cpp
95     skiplist_rcu_shb.cpp
96     skiplist_rcu_sht.cpp
97 )
98 add_executable(${UNIT_SET_SKIP} ${UNIT_SET_SKIP_SOURCES})
99 target_link_libraries(${UNIT_SET_SKIP} 
100     ${CDS_SHARED_LIBRARY}
101     ${GTEST_LIBRARY}
102     ${Boost_THREAD_LIBRARY}
103     ${Boost_SYSTEM_LIBRARY}
104     ${CMAKE_THREAD_LIBS_INIT}
105 )
106 add_test(NAME ${UNIT_SET_SKIP} COMMAND ${UNIT_SET_SKIP} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
107
108 # SplitListSet<MichaelList>
109 set(UNIT_SET_SPLIT_MICHAEL unit-set-split-michael)
110 set(UNIT_SET_SPLIT_MICHAEL_SOURCES
111     ../main.cpp
112     split_michael_hp.cpp
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
120 )
121 add_executable(${UNIT_SET_SPLIT_MICHAEL} ${UNIT_SET_SPLIT_MICHAEL_SOURCES})
122 target_link_libraries(${UNIT_SET_SPLIT_MICHAEL} 
123     ${CDS_SHARED_LIBRARY}
124     ${GTEST_LIBRARY}
125     ${Boost_THREAD_LIBRARY}
126     ${Boost_SYSTEM_LIBRARY}
127     ${CMAKE_THREAD_LIBS_INIT}
128 )
129 add_test(NAME ${UNIT_SET_SPLIT_MICHAEL} COMMAND ${UNIT_SET_SPLIT_MICHAEL} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
130
131 # SplitListSet<LazyList>
132 set(UNIT_SET_SPLIT_LAZY unit-set-split-lazy)
133 set(UNIT_SET_SPLIT_LAZY_SOURCES
134     ../main.cpp
135     split_lazy_hp.cpp
136     split_lazy_dhp.cpp
137     split_lazy_nogc.cpp
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
143 )
144 add_executable(${UNIT_SET_SPLIT_LAZY} ${UNIT_SET_SPLIT_LAZY_SOURCES})
145 target_link_libraries(${UNIT_SET_SPLIT_LAZY} 
146     ${CDS_SHARED_LIBRARY}
147     ${GTEST_LIBRARY}
148     ${Boost_THREAD_LIBRARY}
149     ${Boost_SYSTEM_LIBRARY}
150     ${CMAKE_THREAD_LIBS_INIT}
151 )
152 add_test(NAME ${UNIT_SET_SPLIT_LAZY} COMMAND ${UNIT_SET_SPLIT_LAZY} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
153
154 # SplitListSet<IterableList>
155 set(UNIT_SET_SPLIT_ITERABLE unit-set-split-iterable)
156 set(UNIT_SET_SPLIT_ITERABLE_SOURCES
157     ../main.cpp
158     split_iterable_hp.cpp
159     split_iterable_dhp.cpp
160 )
161 add_executable(${UNIT_SET_SPLIT_ITERABLE} ${UNIT_SET_SPLIT_ITERABLE_SOURCES})
162 target_link_libraries(${UNIT_SET_SPLIT_ITERABLE} 
163     ${CDS_SHARED_LIBRARY}
164     ${GTEST_LIBRARY}
165     ${Boost_THREAD_LIBRARY}
166     ${Boost_SYSTEM_LIBRARY}
167     ${CMAKE_THREAD_LIBS_INIT}
168 )
169 add_test(NAME ${UNIT_SET_SPLIT_ITERABLE} COMMAND ${UNIT_SET_SPLIT_ITERABLE} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
170
171
172 add_custom_target( unit-set
173     DEPENDS
174         ${UNIT_SET_FELDMAN}
175         ${UNIT_SET_MICHAEL}
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}
182 )