Moved list unit test to gtest framework
[libcds.git] / tests / test-hdr / CMakeLists.txt
1 set(PACKAGE_NAME test-hdr)\r
2 \r
3 set(CDS_TESTHDR_MAP\r
4     map/hdr_michael_map_hp.cpp\r
5     map/hdr_michael_map_dhp.cpp\r
6     map/hdr_michael_map_rcu_gpi.cpp\r
7     map/hdr_michael_map_rcu_gpb.cpp\r
8     map/hdr_michael_map_rcu_gpt.cpp\r
9     map/hdr_michael_map_rcu_shb.cpp\r
10     map/hdr_michael_map_rcu_sht.cpp\r
11     map/hdr_michael_map_nogc.cpp\r
12     map/hdr_michael_map_lazy_hp.cpp\r
13     map/hdr_michael_map_lazy_dhp.cpp\r
14     map/hdr_michael_map_lazy_rcu_gpi.cpp\r
15     map/hdr_michael_map_lazy_rcu_gpb.cpp\r
16     map/hdr_michael_map_lazy_rcu_gpt.cpp\r
17     map/hdr_michael_map_lazy_rcu_shb.cpp\r
18     map/hdr_michael_map_lazy_rcu_sht.cpp\r
19     map/hdr_michael_map_lazy_nogc.cpp\r
20     map/hdr_feldman_hashmap_hp.cpp\r
21     map/hdr_feldman_hashmap_dhp.cpp\r
22     map/hdr_feldman_hashmap_rcu_gpb.cpp\r
23     map/hdr_feldman_hashmap_rcu_gpi.cpp\r
24     map/hdr_feldman_hashmap_rcu_gpt.cpp\r
25     map/hdr_feldman_hashmap_rcu_shb.cpp\r
26     map/hdr_feldman_hashmap_rcu_sht.cpp\r
27     map/hdr_refinable_hashmap_hashmap_std.cpp\r
28     map/hdr_refinable_hashmap_boost_list.cpp\r
29     map/hdr_refinable_hashmap_list.cpp\r
30     map/hdr_refinable_hashmap_map.cpp\r
31     map/hdr_refinable_hashmap_boost_map.cpp\r
32     map/hdr_refinable_hashmap_boost_flat_map.cpp\r
33     map/hdr_refinable_hashmap_boost_unordered_map.cpp\r
34     map/hdr_refinable_hashmap_slist.cpp\r
35     map/hdr_skiplist_map_hp.cpp\r
36     map/hdr_skiplist_map_dhp.cpp\r
37     map/hdr_skiplist_map_rcu_gpi.cpp\r
38     map/hdr_skiplist_map_rcu_gpb.cpp\r
39     map/hdr_skiplist_map_rcu_gpt.cpp\r
40     map/hdr_skiplist_map_rcu_shb.cpp\r
41     map/hdr_skiplist_map_rcu_sht.cpp\r
42     map/hdr_skiplist_map_nogc.cpp\r
43     map/hdr_splitlist_map_hp.cpp\r
44     map/hdr_splitlist_map_dhp.cpp\r
45     map/hdr_splitlist_map_nogc.cpp\r
46     map/hdr_splitlist_map_rcu_gpi.cpp\r
47     map/hdr_splitlist_map_rcu_gpb.cpp\r
48     map/hdr_splitlist_map_rcu_gpt.cpp\r
49     map/hdr_splitlist_map_rcu_shb.cpp\r
50     map/hdr_splitlist_map_rcu_sht.cpp\r
51     map/hdr_splitlist_map_lazy_hp.cpp\r
52     map/hdr_splitlist_map_lazy_dhp.cpp\r
53     map/hdr_splitlist_map_lazy_nogc.cpp\r
54     map/hdr_splitlist_map_lazy_rcu_gpi.cpp\r
55     map/hdr_splitlist_map_lazy_rcu_gpb.cpp\r
56     map/hdr_splitlist_map_lazy_rcu_gpt.cpp\r
57     map/hdr_splitlist_map_lazy_rcu_sht.cpp\r
58     map/hdr_splitlist_map_lazy_rcu_shb.cpp\r
59     map/hdr_striped_hashmap_hashmap_std.cpp\r
60     map/hdr_striped_hashmap_boost_list.cpp\r
61     map/hdr_striped_hashmap_list.cpp\r
62     map/hdr_striped_hashmap_map.cpp\r
63     map/hdr_striped_hashmap_boost_map.cpp\r
64     map/hdr_striped_hashmap_boost_flat_map.cpp\r
65     map/hdr_striped_hashmap_boost_unordered_map.cpp\r
66     map/hdr_striped_hashmap_slist.cpp\r
67     map/hdr_striped_map_reg.cpp)\r
68 \r
69 set(CDS_TESTHDR_SET\r
70     set/hdr_intrusive_feldman_hashset_hp.cpp\r
71     set/hdr_intrusive_feldman_hashset_dhp.cpp\r
72     set/hdr_intrusive_feldman_hashset_rcu_gpi.cpp\r
73     set/hdr_intrusive_feldman_hashset_rcu_gpb.cpp\r
74     set/hdr_intrusive_feldman_hashset_rcu_gpt.cpp\r
75     set/hdr_intrusive_feldman_hashset_rcu_shb.cpp\r
76     set/hdr_intrusive_feldman_hashset_rcu_sht.cpp\r
77     set/hdr_intrusive_refinable_hashset_avlset.cpp\r
78     set/hdr_intrusive_refinable_hashset_list.cpp\r
79     set/hdr_intrusive_refinable_hashset_set.cpp\r
80     set/hdr_intrusive_refinable_hashset_sgset.cpp\r
81     set/hdr_intrusive_refinable_hashset_slist.cpp\r
82     set/hdr_intrusive_refinable_hashset_splayset.cpp\r
83     set/hdr_intrusive_refinable_hashset_treapset.cpp\r
84     set/hdr_intrusive_refinable_hashset_uset.cpp\r
85     set/hdr_intrusive_skiplist_hp.cpp\r
86     set/hdr_intrusive_skiplist_dhp.cpp\r
87     set/hdr_intrusive_skiplist_rcu_gpb.cpp\r
88     set/hdr_intrusive_skiplist_rcu_gpi.cpp\r
89     set/hdr_intrusive_skiplist_rcu_gpt.cpp\r
90     set/hdr_intrusive_skiplist_rcu_shb.cpp\r
91     set/hdr_intrusive_skiplist_rcu_sht.cpp\r
92     set/hdr_intrusive_skiplist_nogc.cpp\r
93     set/hdr_intrusive_striped_hashset_avlset.cpp\r
94     set/hdr_intrusive_striped_hashset_list.cpp\r
95     set/hdr_intrusive_striped_hashset_set.cpp\r
96     set/hdr_intrusive_striped_hashset_sgset.cpp\r
97     set/hdr_intrusive_striped_hashset_slist.cpp\r
98     set/hdr_intrusive_striped_hashset_splayset.cpp\r
99     set/hdr_intrusive_striped_hashset_treapset.cpp\r
100     set/hdr_intrusive_striped_hashset_uset.cpp\r
101     set/hdr_intrusive_striped_set.cpp\r
102     set/hdr_michael_set_hp.cpp\r
103     set/hdr_michael_set_dhp.cpp\r
104     set/hdr_michael_set_rcu_gpi.cpp\r
105     set/hdr_michael_set_rcu_gpb.cpp\r
106     set/hdr_michael_set_rcu_gpt.cpp\r
107     set/hdr_michael_set_rcu_shb.cpp\r
108     set/hdr_michael_set_rcu_sht.cpp\r
109     set/hdr_michael_set_nogc.cpp\r
110     set/hdr_michael_set_lazy_hp.cpp\r
111     set/hdr_michael_set_lazy_dhp.cpp\r
112     set/hdr_michael_set_lazy_rcu_gpi.cpp\r
113     set/hdr_michael_set_lazy_rcu_gpb.cpp\r
114     set/hdr_michael_set_lazy_rcu_gpt.cpp\r
115     set/hdr_michael_set_lazy_rcu_shb.cpp\r
116     set/hdr_michael_set_lazy_rcu_sht.cpp\r
117     set/hdr_michael_set_lazy_nogc.cpp\r
118     set/hdr_feldman_hashset_hp.cpp\r
119     set/hdr_feldman_hashset_dhp.cpp\r
120     set/hdr_feldman_hashset_rcu_gpb.cpp\r
121     set/hdr_feldman_hashset_rcu_gpi.cpp\r
122     set/hdr_feldman_hashset_rcu_gpt.cpp\r
123     set/hdr_feldman_hashset_rcu_shb.cpp\r
124     set/hdr_feldman_hashset_rcu_sht.cpp\r
125     set/hdr_refinable_hashset_hashset_std.cpp\r
126     set/hdr_refinable_hashset_boost_flat_set.cpp\r
127     set/hdr_refinable_hashset_boost_list.cpp\r
128     set/hdr_refinable_hashset_boost_set.cpp\r
129     set/hdr_refinable_hashset_boost_stable_vector.cpp\r
130     set/hdr_refinable_hashset_boost_unordered_set.cpp\r
131     set/hdr_refinable_hashset_boost_vector.cpp\r
132     set/hdr_refinable_hashset_list.cpp\r
133     set/hdr_refinable_hashset_set.cpp\r
134     set/hdr_refinable_hashset_slist.cpp\r
135     set/hdr_refinable_hashset_vector.cpp\r
136     set/hdr_skiplist_set_hp.cpp\r
137     set/hdr_skiplist_set_dhp.cpp\r
138     set/hdr_skiplist_set_rcu_gpi.cpp\r
139     set/hdr_skiplist_set_rcu_gpb.cpp\r
140     set/hdr_skiplist_set_rcu_gpt.cpp\r
141     set/hdr_skiplist_set_rcu_shb.cpp\r
142     set/hdr_skiplist_set_rcu_sht.cpp\r
143     set/hdr_skiplist_set_nogc.cpp\r
144     set/hdr_splitlist_set_hp.cpp\r
145     set/hdr_splitlist_set_nogc.cpp\r
146     set/hdr_splitlist_set_dhp.cpp\r
147     set/hdr_splitlist_set_rcu_gpi.cpp\r
148     set/hdr_splitlist_set_rcu_gpb.cpp\r
149     set/hdr_splitlist_set_rcu_gpt.cpp\r
150     set/hdr_splitlist_set_rcu_shb.cpp\r
151     set/hdr_splitlist_set_rcu_sht.cpp\r
152     set/hdr_splitlist_set_lazy_hp.cpp\r
153     set/hdr_splitlist_set_lazy_nogc.cpp\r
154     set/hdr_splitlist_set_lazy_dhp.cpp\r
155     set/hdr_splitlist_set_lazy_rcu_gpi.cpp\r
156     set/hdr_splitlist_set_lazy_rcu_gpb.cpp\r
157     set/hdr_splitlist_set_lazy_rcu_gpt.cpp\r
158     set/hdr_splitlist_set_lazy_rcu_shb.cpp\r
159     set/hdr_splitlist_set_lazy_rcu_sht.cpp\r
160     set/hdr_striped_hashset_hashset_std.cpp\r
161     set/hdr_striped_hashset_boost_flat_set.cpp\r
162     set/hdr_striped_hashset_boost_list.cpp\r
163     set/hdr_striped_hashset_boost_set.cpp\r
164     set/hdr_striped_hashset_boost_stable_vector.cpp\r
165     set/hdr_striped_hashset_boost_unordered_set.cpp\r
166     set/hdr_striped_hashset_boost_vector.cpp\r
167     set/hdr_striped_hashset_list.cpp\r
168     set/hdr_striped_hashset_set.cpp\r
169     set/hdr_striped_hashset_slist.cpp\r
170     set/hdr_striped_hashset_vector.cpp)\r
171 \r
172 set(CDS_TESTHDR_TREE\r
173     tree/hdr_tree_reg.cpp
174     tree/hdr_intrusive_ellen_bintree_hp.cpp
175     tree/hdr_intrusive_ellen_bintree_dhp.cpp
176     tree/hdr_intrusive_ellen_bintree_rcu_gpb.cpp
177     tree/hdr_intrusive_ellen_bintree_rcu_gpi.cpp
178     tree/hdr_intrusive_ellen_bintree_rcu_gpt.cpp
179     tree/hdr_intrusive_ellen_bintree_rcu_shb.cpp
180     tree/hdr_intrusive_ellen_bintree_rcu_sht.cpp
181     tree/hdr_ellenbintree_map_hp.cpp
182     tree/hdr_ellenbintree_map_dhp.cpp
183     tree/hdr_ellenbintree_map_rcu_gpb.cpp
184     tree/hdr_ellenbintree_map_rcu_gpi.cpp
185     tree/hdr_ellenbintree_map_rcu_gpt.cpp
186     tree/hdr_ellenbintree_map_rcu_shb.cpp
187     tree/hdr_ellenbintree_map_rcu_sht.cpp
188     tree/hdr_ellenbintree_set_hp.cpp
189     tree/hdr_ellenbintree_set_dhp.cpp
190     tree/hdr_ellenbintree_set_rcu_gpb.cpp
191     tree/hdr_ellenbintree_set_rcu_gpi.cpp
192     tree/hdr_ellenbintree_set_rcu_gpt.cpp
193     tree/hdr_ellenbintree_set_rcu_shb.cpp
194     tree/hdr_ellenbintree_set_rcu_sht.cpp
195     tree/hdr_bronson_avltree_map_rcu_gpb.cpp
196     tree/hdr_bronson_avltree_map_rcu_gpb_pool_monitor.cpp
197     tree/hdr_bronson_avltree_map_rcu_gpi.cpp
198     tree/hdr_bronson_avltree_map_rcu_gpi_pool_monitor.cpp
199     tree/hdr_bronson_avltree_map_rcu_gpt.cpp
200     tree/hdr_bronson_avltree_map_rcu_gpt_pool_monitor.cpp
201     tree/hdr_bronson_avltree_map_rcu_shb.cpp
202     tree/hdr_bronson_avltree_map_rcu_shb_pool_monitor.cpp
203     tree/hdr_bronson_avltree_map_rcu_sht.cpp
204     tree/hdr_bronson_avltree_map_rcu_sht_pool_monitor.cpp
205    )
206
207 set(CDS_TESTHDR_MISC\r
208     misc/cxx11_atomic_class.cpp\r
209     misc/cxx11_atomic_func.cpp\r
210     misc/find_option.cpp\r
211     misc/allocator_test.cpp\r
212     misc/michael_allocator.cpp\r
213     misc/hash_tuple.cpp\r
214     misc/bitop_st.cpp\r
215     misc/split_bitstring.cpp\r
216     misc/permutation_generator.cpp\r
217     misc/thread_init_fini.cpp)\r
218 \r
219 set(CDS_TESTHDR_OFFSETOF_MAP\r
220     map/hdr_cuckoo_map.cpp)\r
221 \r
222 set(CDS_TESTHDR_OFFSETOF_SET\r
223     set/hdr_cuckoo_set.cpp\r
224     set/hdr_intrusive_cuckoo_set.cpp\r
225     set/hdr_intrusive_cuckoo_refinable_set.cpp\r
226     set/hdr_intrusive_michael_set_hp.cpp\r
227     set/hdr_intrusive_michael_set_dhp.cpp\r
228     set/hdr_intrusive_michael_set_nogc.cpp\r
229     set/hdr_intrusive_michael_set_rcu_gpi.cpp\r
230     set/hdr_intrusive_michael_set_rcu_gpb.cpp\r
231     set/hdr_intrusive_michael_set_rcu_gpt.cpp\r
232     set/hdr_intrusive_michael_set_rcu_shb.cpp\r
233     set/hdr_intrusive_michael_set_rcu_sht.cpp\r
234     set/hdr_intrusive_michael_set_hp_lazy.cpp\r
235     set/hdr_intrusive_michael_set_dhp_lazy.cpp\r
236     set/hdr_intrusive_michael_set_nogc_lazy.cpp\r
237     set/hdr_intrusive_michael_set_rcu_gpi_lazy.cpp\r
238     set/hdr_intrusive_michael_set_rcu_gpb_lazy.cpp\r
239     set/hdr_intrusive_michael_set_rcu_gpt_lazy.cpp\r
240     set/hdr_intrusive_michael_set_rcu_shb_lazy.cpp\r
241     set/hdr_intrusive_michael_set_rcu_sht_lazy.cpp\r
242     set/hdr_intrusive_skiplist_hp_member.cpp\r
243     set/hdr_intrusive_skiplist_dhp_member.cpp\r
244     set/hdr_intrusive_skiplist_rcu_gpi_member.cpp\r
245     set/hdr_intrusive_skiplist_rcu_gpb_member.cpp\r
246     set/hdr_intrusive_skiplist_rcu_gpt_member.cpp\r
247     set/hdr_intrusive_skiplist_rcu_shb_member.cpp\r
248     set/hdr_intrusive_skiplist_rcu_sht_member.cpp\r
249     set/hdr_intrusive_skiplist_nogc_member.cpp\r
250     set/hdr_intrusive_splitlist_set_hp.cpp\r
251     set/hdr_intrusive_splitlist_set_nogc.cpp\r
252     set/hdr_intrusive_splitlist_set_dhp.cpp\r
253     set/hdr_intrusive_splitlist_set_rcu_gpb.cpp\r
254     set/hdr_intrusive_splitlist_set_rcu_gpi.cpp\r
255     set/hdr_intrusive_splitlist_set_rcu_gpt.cpp\r
256     set/hdr_intrusive_splitlist_set_rcu_shb.cpp\r
257     set/hdr_intrusive_splitlist_set_rcu_sht.cpp\r
258     set/hdr_intrusive_splitlist_set_hp_lazy.cpp\r
259     set/hdr_intrusive_splitlist_set_nogc_lazy.cpp\r
260     set/hdr_intrusive_splitlist_set_dhp_lazy.cpp\r
261     set/hdr_intrusive_splitlist_set_rcu_gpb_lazy.cpp\r
262     set/hdr_intrusive_splitlist_set_rcu_gpi_lazy.cpp\r
263     set/hdr_intrusive_splitlist_set_rcu_gpt_lazy.cpp\r
264     set/hdr_intrusive_splitlist_set_rcu_shb_lazy.cpp\r
265     set/hdr_intrusive_splitlist_set_rcu_sht_lazy.cpp)\r
266 \r
267 set(CDS_TESTHDR_OFFSETOF_TREE\r
268     tree/hdr_intrusive_ellen_bintree_hp_member.cpp\r
269     tree/hdr_intrusive_ellen_bintree_dhp_member.cpp\r
270     tree/hdr_intrusive_ellen_bintree_rcu_gpb_member.cpp\r
271     tree/hdr_intrusive_ellen_bintree_rcu_gpi_member.cpp\r
272     tree/hdr_intrusive_ellen_bintree_rcu_gpt_member.cpp\r
273     tree/hdr_intrusive_ellen_bintree_rcu_shb_member.cpp\r
274     tree/hdr_intrusive_ellen_bintree_rcu_sht_member.cpp)\r
275 \r
276 set(CDS_TESTHDR_OFFSETOF_SOURCES\r
277         ${CDS_TESTHDR_OFFSETOF_MAP}\r
278         ${CDS_TESTHDR_OFFSETOF_SET}\r
279         ${CDS_TESTHDR_OFFSETOF_TREE})\r
280 \r
281 add_library(test-hdr-offsetof OBJECT ${CDS_TESTHDR_OFFSETOF_SOURCES})\r
282 \r
283 if(CMAKE_COMPILER_IS_GNUCC)\r
284   set_property(TARGET test-hdr-offsetof APPEND_STRING PROPERTY COMPILE_FLAGS -Wno-invalid-offsetof)\r
285 endif(CMAKE_COMPILER_IS_GNUCC)\r
286 \r
287 set(CDS_TESTHDR_SOURCES\r
288     ${CDS_TESTHDR_MAP}\r
289     ${CDS_TESTHDR_SET}\r
290     ${CDS_TESTHDR_TREE}\r
291     ${CDS_TESTHDR_MISC})\r
292 \r
293 add_executable(${PACKAGE_NAME} ${CDS_TESTHDR_SOURCES} $<TARGET_OBJECTS:test-hdr-offsetof> $<TARGET_OBJECTS:${TEST_COMMON}>)\r
294 target_link_libraries(${PACKAGE_NAME} ${CDS_SHARED_LIBRARY} ${Boost_THREAD_LIBRARY} ${Boost_SYSTEM_LIBRARY} ${CMAKE_THREAD_LIBS_INIT})\r
295 add_test(NAME ${PACKAGE_NAME} COMMAND ${PACKAGE_NAME} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})