@@ -33,123 +33,127 @@ set(project_THIRDPARTY_DIR "${project_ROOT_DIR}/third_party")
33
33
# --- Project files declaration
34
34
set (VERSIONS_FILES
35
35
"${project_BINARY_DIR} /versions.h" )
36
-
37
- set (CORE_INIT_PACKETS
38
- "${project_SRC_DIR} /core/transport_virtual_layer_policies/transport_protocol_policy.h"
39
- "${project_SRC_DIR} /core/transport_virtual_layer_policies/init_packets/ssf_reply.h"
40
- "${project_SRC_DIR} /core/transport_virtual_layer_policies/init_packets/ssf_reply.cpp"
41
- "${project_SRC_DIR} /core/transport_virtual_layer_policies/init_packets/ssf_request.h"
42
- "${project_SRC_DIR} /core/transport_virtual_layer_policies/init_packets/ssf_request.cpp" )
43
-
44
- set (CORE_NETWORK_VIRTUAL_LAYER_POLICY
45
- "${project_SRC_DIR} /core/network_virtual_layer_policies/bounce_protocol_policy.h"
46
- "${project_SRC_DIR} /core/network_virtual_layer_policies/link_policies/ssl_policy.h"
47
- "${project_SRC_DIR} /core/network_virtual_layer_policies/link_policies/tcp_policy.h"
48
- "${project_SRC_DIR} /core/network_virtual_layer_policies/link_authentication_policies/null_link_authentication_policy.h" )
49
-
50
- set (CORE_FACTORIES_FILES
51
- "${project_SRC_DIR} /core/factories/command_factory.h"
52
- "${project_SRC_DIR} /core/factory_manager/service_factory_manager.h"
53
- "${project_SRC_DIR} /core/factories/service_factory.h"
54
- "${project_SRC_DIR} /core/factories/service_option_factory.h"
55
- "${project_SRC_DIR} /core/service_manager/service_manager.h" )
56
-
57
- set (COMMON_BOOST_HEADER_FILES
58
- "${project_SRC_DIR} /common/boost/fiber/detail/fiber_id.hpp"
59
- "${project_SRC_DIR} /common/boost/fiber/detail/fiber_buffer.hpp"
60
- "${project_SRC_DIR} /common/boost/fiber/detail/fiber_header.hpp"
61
- "${project_SRC_DIR} /common/boost/fiber/stream_fiber.hpp"
62
- "${project_SRC_DIR} /common/boost/fiber/basic_endpoint.hpp"
63
- "${project_SRC_DIR} /common/boost/fiber/stream_fiber_service.hpp"
64
- "${project_SRC_DIR} /common/boost/fiber/detail/basic_fiber_impl.hpp"
65
- "${project_SRC_DIR} /common/boost/fiber/basic_fiber_demux.hpp"
66
- "${project_SRC_DIR} /common/boost/fiber/basic_fiber_demux_service.hpp"
67
- "${project_SRC_DIR} /common/boost/fiber/basic_fiber_demux_service.ipp"
68
- "${project_SRC_DIR} /common/boost/fiber/detail/basic_fiber_demux_impl.hpp"
69
- "${project_SRC_DIR} /common/boost/fiber/detail/io_fiber_accept_op.hpp"
70
- "${project_SRC_DIR} /common/boost/fiber/detail/io_fiber_read_op.hpp"
71
- "${project_SRC_DIR} /common/boost/fiber/detail/io_fiber_dgr_read_op.hpp"
72
- "${project_SRC_DIR} /common/boost/fiber/detail/io_ssl_read_op.hpp"
73
- "${project_SRC_DIR} /common/boost/fiber/detail/io_operation.hpp"
74
- "${project_SRC_DIR} /common/boost/fiber/fiber_acceptor_service.hpp"
75
- "${project_SRC_DIR} /common/boost/fiber/datagram_fiber_service.hpp"
76
- "${project_SRC_DIR} /common/boost/fiber/datagram_fiber.hpp" )
77
-
78
- set (COMMON_COMMAND_LINE_FILES
79
- "${project_SRC_DIR} /core/command_line/command_line.h"
80
- "${project_SRC_DIR} /core/command_line/command_line.cpp" )
81
-
82
- set (COMMON_CONFIG_FILES
83
- "${project_SRC_DIR} /common/config/config.h"
84
- "${project_SRC_DIR} /common/config/config.cpp" )
85
-
86
- set (COMMON_ERROR_FILES
87
- "${project_SRC_DIR} /common/error/error.h"
88
- "${project_SRC_DIR} /common/error/error.cpp" )
89
-
90
- set (COMMON_NETWORK_HEADER_FILES
91
- "${project_SRC_DIR} /common/network/base_session.h"
92
- "${project_SRC_DIR} /common/network/datagram_link.h"
93
- "${project_SRC_DIR} /common/network/datagram_link_operator.h"
94
- "${project_SRC_DIR} /common/network/manager.h"
95
- "${project_SRC_DIR} /common/network/network_policy_traits.h"
96
- "${project_SRC_DIR} /common/network/session_forwarder.h"
97
- "${project_SRC_DIR} /common/network/socket_link.h" )
98
-
99
- set (SERVICES_ADMIN_SERVICE_FILES
100
- "${project_SRC_DIR} /services/initialisation.h"
101
- "${project_SRC_DIR} /services/base_service.h"
102
- "${project_SRC_DIR} /services/admin/admin.h"
103
- "${project_SRC_DIR} /services/admin/admin_command.h"
104
- "${project_SRC_DIR} /services/admin/admin.ipp"
105
- "${project_SRC_DIR} /services/admin/requests/create_service_request.h"
106
- "${project_SRC_DIR} /services/admin/requests/service_status.h"
107
- "${project_SRC_DIR} /services/admin/requests/stop_service_request.h" )
108
-
109
- set (SERVICES_SOCKS_FILES
110
- "${project_SRC_DIR} /services/socks/socks_server.h"
111
- "${project_SRC_DIR} /services/socks/socks_version.h"
112
- "${project_SRC_DIR} /services/socks/v4/reply.cpp"
113
- "${project_SRC_DIR} /services/socks/v4/reply.h"
114
- "${project_SRC_DIR} /services/socks/v4/request.cpp"
115
- "${project_SRC_DIR} /services/socks/v4/request.h"
116
- "${project_SRC_DIR} /services/socks/v4/session.h"
117
- "${project_SRC_DIR} /services/socks/v4/session.ipp"
118
- "${project_SRC_DIR} /services/socks/v5/reply.cpp"
119
- "${project_SRC_DIR} /services/socks/v5/reply.h"
120
- "${project_SRC_DIR} /services/socks/v5/request.cpp"
121
- "${project_SRC_DIR} /services/socks/v5/request.h"
122
- "${project_SRC_DIR} /services/socks/v5/reply_auth.cpp"
123
- "${project_SRC_DIR} /services/socks/v5/reply_auth.h"
124
- "${project_SRC_DIR} /services/socks/v5/request_auth.cpp"
125
- "${project_SRC_DIR} /services/socks/v5/request_auth.h"
126
- "${project_SRC_DIR} /services/socks/v5/session.h"
127
- "${project_SRC_DIR} /services/socks/v5/session.ipp" )
128
-
129
- set (SERVICES_USER_SERVICES_FILES
130
- "${project_SRC_DIR} /services/user_services/base_user_service.h"
131
- "${project_SRC_DIR} /services/user_services/port_forwarding.h"
132
- "${project_SRC_DIR} /services/user_services/remote_port_forwarding.h"
133
- "${project_SRC_DIR} /services/user_services/remote_socks.h"
134
- "${project_SRC_DIR} /services/user_services/socks.h"
135
- "${project_SRC_DIR} /services/user_services/udp_port_forwarding.h"
136
- "${project_SRC_DIR} /services/user_services/udp_remote_port_forwarding.h" )
137
-
138
- set (SERVICES_SOCKETS_TO_FIBERS_FILES
139
- "${project_SRC_DIR} /services/sockets_to_fibers/sockets_to_fibers.h"
140
- "${project_SRC_DIR} /services/sockets_to_fibers/sockets_to_fibers.ipp" )
141
-
142
- set (SERVICES_DATAGRAMS_TO_FIBERS_FILES
143
- "${project_SRC_DIR} /services/datagrams_to_fibers/datagrams_to_fibers.h"
144
- "${project_SRC_DIR} /services/datagrams_to_fibers/datagrams_to_fibers.ipp" )
145
-
146
- set (SERVICES_FIBERS_TO_SOCKETS_FILES
147
- "${project_SRC_DIR} /services/fibers_to_sockets/fibers_to_sockets.h"
148
- "${project_SRC_DIR} /services/fibers_to_sockets/fibers_to_sockets.ipp" )
149
-
150
- set (SERVICES_FIBERS_TO_DATAGRAMS_FILES
151
- "${project_SRC_DIR} /services/fibers_to_datagrams/fibers_to_datagrams.h"
152
- "${project_SRC_DIR} /services/fibers_to_datagrams/fibers_to_datagrams.ipp" )
36
+
37
+ FILE (GLOB_RECURSE COMMON_BOOST_FIBER_FILES
38
+ "${project_SRC_DIR} /common/boost/fiber/*.hpp"
39
+ "${project_SRC_DIR} /common/boost/fiber/*.cpp" )
40
+
41
+ FILE (GLOB_RECURSE COMMON_CONFIG_FILES
42
+ "${project_SRC_DIR} /common/config/*.h"
43
+ "${project_SRC_DIR} /common/config/*.cpp" )
44
+
45
+ FILE (GLOB_RECURSE COMMON_ERROR_FILES
46
+ "${project_SRC_DIR} /common/error/*.h"
47
+ "${project_SRC_DIR} /common/error/*.cpp" )
48
+
49
+ FILE (GLOB_RECURSE COMMON_NETWORK_FILES
50
+ "${project_SRC_DIR} /common/network/*.h"
51
+ "${project_SRC_DIR} /common/network/*.cpp" )
52
+
53
+ FILE (GLOB_RECURSE COMMON_UTILS_FILES
54
+ "${project_SRC_DIR} /common/utils/*.h"
55
+ "${project_SRC_DIR} /common/utils/*.cpp"
56
+ "${project_SRC_DIR} /common/utils/*.ipp" )
57
+
58
+ FILE (GLOB CORE_COMMAND_LINE_STANDARD_FILES
59
+ "${project_SRC_DIR} /core/command_line/standard/*.h"
60
+ "${project_SRC_DIR} /core/command_line/standard/*.cpp" )
61
+
62
+ FILE (GLOB CORE_COMMAND_LINE_COPY_FILES
63
+ "${project_SRC_DIR} /core/command_line/copy/*.h"
64
+ "${project_SRC_DIR} /core/command_line/copy/*.cpp" )
65
+
66
+ FILE (GLOB_RECURSE CORE_TRANSPORT_POLICIES_FILES
67
+ "${project_SRC_DIR} /core/transport_virtual_layer_policies/*.h"
68
+ "${project_SRC_DIR} /core/transport_virtual_layer_policies/*.cpp"
69
+ "${project_SRC_DIR} /core/transport_virtual_layer_policies/*.ipp" )
70
+
71
+ FILE (GLOB_RECURSE CORE_NETWORK_VIRTUAL_LAYER_POLICIES_FILES
72
+ "${project_SRC_DIR} /core/network_virtual_layer_policies/*.h"
73
+ "${project_SRC_DIR} /core/network_virtual_layer_policies/*.cpp"
74
+ "${project_SRC_DIR} /core/network_virtual_layer_policies/*.ipp" )
75
+
76
+ FILE (GLOB_RECURSE CORE_FACTORIES_FILES
77
+ "${project_SRC_DIR} /core/factories/*.h"
78
+ "${project_SRC_DIR} /core/factories/*.cpp"
79
+ "${project_SRC_DIR} /core/factories/*.ipp"
80
+ "${project_SRC_DIR} /core/factory_manager/*.h"
81
+ "${project_SRC_DIR} /core/factory_manager/*.cpp"
82
+ "${project_SRC_DIR} /core/factory_manager/*.ipp"
83
+ "${project_SRC_DIR} /core/service_manager/*.h"
84
+ "${project_SRC_DIR} /core/service_manager/*.cpp"
85
+ "${project_SRC_DIR} /core/service_manager/*.ipp" )
86
+
87
+ FILE (GLOB BASE_SERVICE_FILES
88
+ "${project_SRC_DIR} /services/*.h"
89
+ "${project_SRC_DIR} /services/*.cpp"
90
+ "${project_SRC_DIR} /services/*.ipp" )
91
+
92
+ FILE (GLOB_RECURSE ADMIN_SERVICE_FILES
93
+ "${project_SRC_DIR} /services/admin/*.h"
94
+ "${project_SRC_DIR} /services/admin/*.cpp"
95
+ "${project_SRC_DIR} /services/admin/*.ipp" )
96
+
97
+ FILE (GLOB_RECURSE DATAGRAMS_TO_FIBERS_SERVICE_FILES
98
+ "${project_SRC_DIR} /services/datagrams_to_fibers/*.h"
99
+ "${project_SRC_DIR} /services/datagrams_to_fibers/*.cpp"
100
+ "${project_SRC_DIR} /services/datagrams_to_fibers/*.ipp" )
101
+
102
+ FILE (GLOB_RECURSE FIBERS_TO_DATAGRAMS_SERVICE_FILES
103
+ "${project_SRC_DIR} /services/fibers_to_datagrams/*.h"
104
+ "${project_SRC_DIR} /services/fibers_to_datagrams/*.cpp"
105
+ "${project_SRC_DIR} /services/fibers_to_datagrams/*.ipp" )
106
+
107
+ FILE (GLOB_RECURSE SOCKETS_TO_FIBERS_SERVICE_FILES
108
+ "${project_SRC_DIR} /services/datagrams_to_fibers/*.h"
109
+ "${project_SRC_DIR} /services/datagrams_to_fibers/*.cpp"
110
+ "${project_SRC_DIR} /services/datagrams_to_fibers/*.ipp" )
111
+
112
+ FILE (GLOB_RECURSE FIBERS_TO_SOCKETS_SERVICE_FILES
113
+ "${project_SRC_DIR} /services/fibers_to_datagrams/*.h"
114
+ "${project_SRC_DIR} /services/fibers_to_datagrams/*.cpp"
115
+ "${project_SRC_DIR} /services/fibers_to_datagrams/*.ipp" )
116
+
117
+ FILE (GLOB_RECURSE SOCKS_SERVICE_FILES
118
+ "${project_SRC_DIR} /services/socks/*.h"
119
+ "${project_SRC_DIR} /services/socks/*.cpp"
120
+ "${project_SRC_DIR} /services/socks/*.ipp" )
121
+
122
+ FILE (GLOB COPY_FILE_SERVICE_FILES
123
+ "${project_SRC_DIR} /services/copy_file/*.h"
124
+ "${project_SRC_DIR} /services/copy_file/*.cpp"
125
+ "${project_SRC_DIR} /services/copy_file/*.ipp"
126
+ "${project_SRC_DIR} /services/copy_file/fiber_to_file/*.h"
127
+ "${project_SRC_DIR} /services/copy_file/fiber_to_file/*.cpp"
128
+ "${project_SRC_DIR} /services/copy_file/fiber_to_file/*.ipp"
129
+ "${project_SRC_DIR} /services/copy_file/file_to_fiber/*.h"
130
+ "${project_SRC_DIR} /services/copy_file/file_to_fiber/*.cpp"
131
+ "${project_SRC_DIR} /services/copy_file/file_to_fiber/*.ipp"
132
+ "${project_SRC_DIR} /services/copy_file/file_enquirer/*.h"
133
+ "${project_SRC_DIR} /services/copy_file/file_enquirer/*.cpp"
134
+ "${project_SRC_DIR} /services/copy_file/file_enquirer/*.ipp"
135
+ "${project_SRC_DIR} /services/copy_file/packet/*.h"
136
+ "${project_SRC_DIR} /services/copy_file/packet/*.cpp"
137
+ "${project_SRC_DIR} /services/copy_file/packet/*.ipp"
138
+ "${project_SRC_DIR} /services/copy_file/filesystem/*.h"
139
+ "${project_SRC_DIR} /services/copy_file/filesystem/*.cpp" )
140
+
141
+ FILE (GLOB_RECURSE USER_SERVICE_FILES
142
+ "${project_SRC_DIR} /services/user_services/*.h"
143
+ "${project_SRC_DIR} /services/user_services/*.cpp"
144
+ "${project_SRC_DIR} /services/user_services/*.ipp" )
145
+
146
+ set (PARSER_FILES
147
+ "${project_SRC_DIR} /core/parser/bounce_parser.h"
148
+ "${project_SRC_DIR} /core/parser/bounce_parser.cpp" )
149
+
150
+ FILE (GLOB_RECURSE CLIENT_FILES
151
+ "${project_SRC_DIR} /core/client/*.h"
152
+ "${project_SRC_DIR} /core/client/*.ipp" )
153
+
154
+ FILE (GLOB_RECURSE SERVER_FILES
155
+ "${project_SRC_DIR} /core/server/*.h"
156
+ "${project_SRC_DIR} /core/server/*.ipp" )
153
157
154
158
set (BOOST_ROOT
155
159
"${project_THIRDPARTY_DIR} /boost" CACHE PATH "Path of boost library" )
@@ -222,10 +226,40 @@ include_directories(${project_BINARY_DIR})
222
226
# --- Include source directory
223
227
include_directories (${project_SRC_DIR} )
224
228
229
+
230
+ # --- Set macro SSF service files
231
+ set (SERVICES_FILES
232
+ ${BASE_SERVICE_FILES}
233
+ ${ADMIN_SERVICE_FILES}
234
+ ${DATAGRAMS_TO_FIBERS_SERVICE_FILES}
235
+ ${FIBERS_TO_DATAGRAMS_SERVICE_FILES}
236
+ ${SOCKETS_TO_FIBERS_SERVICE_FILES}
237
+ ${FIBERS_TO_SOCKETS_SERVICE_FILES}
238
+ ${SOCKS_SERVICE_FILES}
239
+ ${USER_SERVICE_FILES}
240
+ ${COPY_FILE_SERVICE_FILES} )
241
+
242
+ # --- Set macro SSF source files
243
+ set (SSF_SOURCES
244
+ ${VERSIONS_FILES}
245
+ ${COMMON_BOOST_FIBER_FILES}
246
+ ${COMMON_CONFIG_FILES}
247
+ ${COMMON_ERROR_FILES}
248
+ ${COMMON_NETWORK_FILES}
249
+ ${COMMON_UTILS_FILES}
250
+ ${CORE_TRANSPORT_POLICIES_FILES}
251
+ ${CORE_NETWORK_VIRTUAL_LAYER_POLICIES_FILES}
252
+ ${CORE_FACTORIES_FILES}
253
+ ${SERVICES_FILES}
254
+ ${PARSER_FILES}
255
+ ${CLIENT_FILES}
256
+ ${SERVER_FILES}
257
+ )
258
+
225
259
set (BUILD_UNIT_TESTS ON )
226
260
if (BUILD_UNIT_TESTS)
227
261
include (GTest)
228
-
262
+
229
263
set (GTEST_ROOT_DIR
230
264
"${project_THIRDPARTY_DIR} /gtest" CACHE PATH "Path of gtest library" )
231
265
@@ -236,25 +270,9 @@ if (BUILD_UNIT_TESTS)
236
270
237
271
# --- Add GTest project
238
272
add_subdirectory (${GTEST_ROOT_DIR} )
239
-
273
+
240
274
# --- Add src test
241
275
add_subdirectory ("${project_SRC_DIR} /tests" )
242
-
243
- # Group all tests in one directory
244
- project_group(
245
- "Unit tests"
246
- load_config_tests
247
- fiber_asio_tests
248
- ssf_client_server_tests
249
- ssf_client_server_cipher_suites_tests
250
- socks_tests
251
- remote_socks_tests
252
- stream_forward_tests
253
- remote_stream_forward_tests
254
- udp_forward_tests
255
- remote_udp_forward_tests
256
- bouncing_tests
257
- )
258
276
endif (BUILD_UNIT_TESTS)
259
277
260
278
add_subdirectory ("${project_SRC_DIR} /core" )
0 commit comments