bc205c673e49c47958513e3e6ecdc91329505bc1
[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} ${CDS_TEST_LIBRARIES})
37 add_test(NAME ${UNIT_SET_MICHAEL} COMMAND ${UNIT_SET_MICHAEL} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
38
39 # MichaelSet<IterableList>
40 set(UNIT_SET_MICHAEL_ITERABLE unit-set-michael-iterable)
41 set(UNIT_SET_MICHAEL_ITERABLE_SOURCES
42     ../main.cpp
43     michael_iterable_hp.cpp
44     michael_iterable_dhp.cpp
45 )
46 add_executable(${UNIT_SET_MICHAEL_ITERABLE} ${UNIT_SET_MICHAEL_ITERABLE_SOURCES})
47 target_link_libraries(${UNIT_SET_MICHAEL_ITERABLE} ${CDS_TEST_LIBRARIES})
48 add_test(NAME ${UNIT_SET_MICHAEL_ITERABLE} COMMAND ${UNIT_SET_MICHAEL_ITERABLE} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
49
50 # MichaelSet<LazyList>
51 set(UNIT_SET_MICHAEL_LAZY unit-set-michael-lazy)
52 set(UNIT_SET_MICHAEL_LAZY_SOURCES
53     ../main.cpp
54     michael_lazy_hp.cpp
55     michael_lazy_dhp.cpp
56     michael_lazy_nogc.cpp
57     michael_lazy_rcu_gpb.cpp
58     michael_lazy_rcu_gpi.cpp
59     michael_lazy_rcu_gpt.cpp
60     michael_lazy_rcu_shb.cpp
61     michael_lazy_rcu_sht.cpp
62 )
63 add_executable(${UNIT_SET_MICHAEL_LAZY} ${UNIT_SET_MICHAEL_LAZY_SOURCES})
64 target_link_libraries(${UNIT_SET_MICHAEL_LAZY} ${CDS_TEST_LIBRARIES})
65 add_test(NAME ${UNIT_SET_MICHAEL_LAZY} COMMAND ${UNIT_SET_MICHAEL_LAZY} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
66
67 # SkipListSet
68 set(UNIT_SET_SKIP unit-set-skip)
69 set(UNIT_SET_SKIP_SOURCES
70     ../main.cpp
71     skiplist_hp.cpp
72     skiplist_dhp.cpp
73     skiplist_nogc.cpp
74     skiplist_rcu_gpb.cpp
75     skiplist_rcu_gpi.cpp
76     skiplist_rcu_gpt.cpp
77     skiplist_rcu_shb.cpp
78     skiplist_rcu_sht.cpp
79 )
80 add_executable(${UNIT_SET_SKIP} ${UNIT_SET_SKIP_SOURCES})
81 target_link_libraries(${UNIT_SET_SKIP} ${CDS_TEST_LIBRARIES})
82 add_test(NAME ${UNIT_SET_SKIP} COMMAND ${UNIT_SET_SKIP} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
83
84 # SplitListSet<MichaelList>
85 set(UNIT_SET_SPLIT_MICHAEL unit-set-split-michael)
86 set(UNIT_SET_SPLIT_MICHAEL_SOURCES
87     ../main.cpp
88     split_michael_hp.cpp
89     split_michael_dhp.cpp
90     split_michael_nogc.cpp
91     split_michael_rcu_gpb.cpp
92     split_michael_rcu_gpi.cpp
93     split_michael_rcu_gpt.cpp
94     split_michael_rcu_shb.cpp
95     split_michael_rcu_sht.cpp
96 )
97 add_executable(${UNIT_SET_SPLIT_MICHAEL} ${UNIT_SET_SPLIT_MICHAEL_SOURCES})
98 target_link_libraries(${UNIT_SET_SPLIT_MICHAEL} ${CDS_TEST_LIBRARIES})
99 add_test(NAME ${UNIT_SET_SPLIT_MICHAEL} COMMAND ${UNIT_SET_SPLIT_MICHAEL} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
100
101 # SplitListSet<LazyList>
102 set(UNIT_SET_SPLIT_LAZY unit-set-split-lazy)
103 set(UNIT_SET_SPLIT_LAZY_SOURCES
104     ../main.cpp
105     split_lazy_hp.cpp
106     split_lazy_dhp.cpp
107     split_lazy_nogc.cpp
108     split_lazy_rcu_gpb.cpp
109     split_lazy_rcu_gpi.cpp
110     split_lazy_rcu_gpt.cpp
111     split_lazy_rcu_shb.cpp
112     split_lazy_rcu_sht.cpp
113 )
114 add_executable(${UNIT_SET_SPLIT_LAZY} ${UNIT_SET_SPLIT_LAZY_SOURCES})
115 target_link_libraries(${UNIT_SET_SPLIT_LAZY} ${CDS_TEST_LIBRARIES})
116 add_test(NAME ${UNIT_SET_SPLIT_LAZY} COMMAND ${UNIT_SET_SPLIT_LAZY} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
117
118 # SplitListSet<IterableList>
119 set(UNIT_SET_SPLIT_ITERABLE unit-set-split-iterable)
120 set(UNIT_SET_SPLIT_ITERABLE_SOURCES
121     ../main.cpp
122     split_iterable_hp.cpp
123     split_iterable_dhp.cpp
124 )
125 add_executable(${UNIT_SET_SPLIT_ITERABLE} ${UNIT_SET_SPLIT_ITERABLE_SOURCES})
126 target_link_libraries(${UNIT_SET_SPLIT_ITERABLE} ${CDS_TEST_LIBRARIES})
127 add_test(NAME ${UNIT_SET_SPLIT_ITERABLE} COMMAND ${UNIT_SET_SPLIT_ITERABLE} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
128
129
130 add_custom_target( unit-set
131     DEPENDS
132         ${UNIT_SET_FELDMAN}
133         ${UNIT_SET_MICHAEL}
134         ${UNIT_SET_MICHAEL_ITERABLE}
135         ${UNIT_SET_MICHAEL_LAZY}
136         ${UNIT_SET_SKIP_LIST}
137         ${UNIT_SET_SPLIT_MICHAEL}
138         ${UNIT_SET_SPLIT_ITERABLE}
139         ${UNIT_SET_SPLIT_LAZY}
140 )