Refactor CMakeLists

Closes #2471
Closes #1816
This commit is contained in:
Mohammad Nejati authored and Mohammad Nejati committed 2024-11-25 11:41:40 +03:30
1 parent a21250d12d
commit 75e45287fb
82 files changed
+916 -1359

No files matched your search

+12 -12
View File
@@ -7,17 +7,17 @@
# Official repository: https://github.com/boostorg/beast
#
add_subdirectory (async)
add_subdirectory (awaitable)
add_subdirectory (chat-multi)
add_subdirectory (coro)
add_subdirectory (fast)
add_subdirectory (stackless)
add_subdirectory (sync)
add_subdirectory(async)
add_subdirectory(awaitable)
add_subdirectory(chat-multi)
add_subdirectory(coro)
add_subdirectory(fast)
add_subdirectory(stackless)
add_subdirectory(sync)
if (OPENSSL_FOUND)
add_subdirectory (async-ssl)
add_subdirectory (coro-ssl)
add_subdirectory (stackless-ssl)
add_subdirectory (sync-ssl)
endif()
add_subdirectory(async-ssl)
add_subdirectory(coro-ssl)
add_subdirectory(stackless-ssl)
add_subdirectory(sync-ssl)
endif ()
@@ -1,5 +1,6 @@
#
# Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com)
# Copyright (c) 2024 Mohammad Nejati
#
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,25 +8,15 @@
# Official repository: https://github.com/boostorg/beast
#
if (OPENSSL_FOUND)
GroupSources(include/boost/beast beast)
GroupSources(example/common common)
GroupSources(example/websocket/server/async-ssl "/")
add_executable(websocket-server-async-ssl
Jamfile
websocket_server_async_ssl.cpp)
add_executable (websocket-server-async-ssl
${BOOST_BEAST_FILES}
${PROJECT_SOURCE_DIR}/example/common/server_certificate.hpp
Jamfile
websocket_server_async_ssl.cpp
)
target_include_directories(websocket-server-async-ssl
PRIVATE ${PROJECT_SOURCE_DIR})
set_property(TARGET websocket-server-async-ssl PROPERTY FOLDER "example-websocket-server")
target_link_libraries(websocket-server-async-ssl
PRIVATE Boost::beast OpenSSL::SSL OpenSSL::Crypto)
target_link_libraries (websocket-server-async-ssl
OpenSSL::SSL OpenSSL::Crypto
lib-asio
lib-asio-ssl
lib-beast
)
endif()
set_target_properties(websocket-server-async-ssl
PROPERTIES FOLDER "example-websocket-server")
+6 -11
View File
@@ -1,5 +1,6 @@
#
# Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com)
# Copyright (c) 2024 Mohammad Nejati
#
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,17 +8,11 @@
# Official repository: https://github.com/boostorg/beast
#
GroupSources(include/boost/beast beast)
GroupSources(example/websocket/server/async "/")
add_executable (websocket-server-async
${BOOST_BEAST_FILES}
add_executable(websocket-server-async
Jamfile
websocket_server_async.cpp
)
websocket_server_async.cpp)
target_link_libraries(websocket-server-async
lib-asio
lib-beast)
target_link_libraries(websocket-server-async PRIVATE Boost::beast)
set_property(TARGET websocket-server-async PROPERTY FOLDER "example-websocket-server")
set_target_properties(websocket-server-async
PROPERTIES FOLDER "example-websocket-server")
@@ -1,5 +1,6 @@
#
# Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com)
# Copyright (c) 2024 Mohammad Nejati
#
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,17 +8,11 @@
# Official repository: https://github.com/boostorg/beast
#
GroupSources(include/boost/beast beast)
GroupSources(example/websocket/server/awaitable "/")
add_executable (websocket-server-awaitable
${BOOST_BEAST_FILES}
add_executable(websocket-server-awaitable
Jamfile
websocket_server_awaitable.cpp
)
websocket_server_awaitable.cpp)
target_link_libraries(websocket-server-awaitable
lib-asio
lib-beast)
target_link_libraries(websocket-server-awaitable PRIVATE Boost::beast)
set_property(TARGET websocket-server-awaitable PROPERTY FOLDER "example-websocket-server")
set_target_properties(websocket-server-awaitable
PROPERTIES FOLDER "example-websocket-server")
@@ -1,5 +1,6 @@
#
# Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com)
# Copyright (c) 2024 Mohammad Nejati
#
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,35 +8,22 @@
# Official repository: https://github.com/boostorg/beast
#
GroupSources(include/boost/beast beast)
GroupSources(example/websocket/server/chat-multi "/")
add_executable(websocket-chat-multi
beast.hpp
chat_client.html
http_session.cpp
http_session.hpp
Jamfile
listener.cpp
listener.hpp
main.cpp
net.hpp
shared_state.cpp
shared_state.hpp
websocket_session.cpp
websocket_session.hpp)
file (GLOB APP_FILES
beast.hpp
http_session.cpp
http_session.hpp
Jamfile
listener.cpp
listener.hpp
main.cpp
net.hpp
shared_state.cpp
shared_state.hpp
websocket_session.cpp
websocket_session.hpp
chat_client.html
README.md
)
target_link_libraries(websocket-chat-multi PRIVATE Boost::beast)
source_group ("" FILES ${APP_FILES})
add_executable (websocket-chat-multi
${APP_FILES}
${BOOST_BEAST_FILES}
)
target_link_libraries(websocket-chat-multi
lib-asio
lib-beast)
set_property(TARGET websocket-chat-multi PROPERTY FOLDER "example-websocket-server")
set_target_properties(websocket-chat-multi
PROPERTIES FOLDER "example-websocket-server")
@@ -1,5 +1,6 @@
#
# Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com)
# Copyright (c) 2024 Mohammad Nejati
#
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,25 +8,15 @@
# Official repository: https://github.com/boostorg/beast
#
if (OPENSSL_FOUND)
GroupSources(include/boost/beast beast)
GroupSources(example/common common)
GroupSources(example/websocket/server/coro-ssl "/")
add_executable(websocket-server-coro-ssl
Jamfile
websocket_server_coro_ssl.cpp)
add_executable (websocket-server-coro-ssl
${BOOST_BEAST_FILES}
${PROJECT_SOURCE_DIR}/example/common/server_certificate.hpp
Jamfile
websocket_server_coro_ssl.cpp
)
target_include_directories(websocket-server-coro-ssl
PRIVATE ${PROJECT_SOURCE_DIR})
set_property(TARGET websocket-server-coro-ssl PROPERTY FOLDER "example-websocket-server")
target_link_libraries(websocket-server-coro-ssl
PRIVATE Boost::beast OpenSSL::SSL OpenSSL::Crypto)
target_link_libraries (websocket-server-coro-ssl
OpenSSL::SSL OpenSSL::Crypto
lib-asio
lib-asio-ssl
lib-beast
)
endif()
set_target_properties(websocket-server-coro-ssl
PROPERTIES FOLDER "example-websocket-server")
+6 -11
View File
@@ -1,5 +1,6 @@
#
# Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com)
# Copyright (c) 2024 Mohammad Nejati
#
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,17 +8,11 @@
# Official repository: https://github.com/boostorg/beast
#
GroupSources(include/boost/beast beast)
GroupSources(example/websocket/server/coro "/")
add_executable (websocket-server-coro
${BOOST_BEAST_FILES}
add_executable(websocket-server-coro
Jamfile
websocket_server_coro.cpp
)
websocket_server_coro.cpp)
target_link_libraries(websocket-server-coro
lib-asio
lib-beast)
target_link_libraries(websocket-server-coro PRIVATE Boost::beast)
set_property(TARGET websocket-server-coro PROPERTY FOLDER "example-websocket-server")
set_target_properties(websocket-server-coro
PROPERTIES FOLDER "example-websocket-server")
+6 -11
View File
@@ -1,5 +1,6 @@
#
# Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com)
# Copyright (c) 2024 Mohammad Nejati
#
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,17 +8,11 @@
# Official repository: https://github.com/boostorg/beast
#
GroupSources(include/boost/beast beast)
GroupSources(example/websocket/server/fast "/")
add_executable (websocket-server-fast
${BOOST_BEAST_FILES}
add_executable(websocket-server-fast
Jamfile
websocket_server_fast.cpp
)
websocket_server_fast.cpp)
target_link_libraries(websocket-server-fast
lib-asio
lib-beast)
target_link_libraries(websocket-server-fast PRIVATE Boost::beast)
set_property(TARGET websocket-server-fast PROPERTY FOLDER "example-websocket-server")
set_target_properties(websocket-server-fast
PROPERTIES FOLDER "example-websocket-server")
@@ -1,5 +1,6 @@
#
# Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com)
# Copyright (c) 2024 Mohammad Nejati
#
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,25 +8,15 @@
# Official repository: https://github.com/boostorg/beast
#
if (OPENSSL_FOUND)
GroupSources(include/boost/beast beast)
GroupSources(example/common common)
GroupSources(example/websocket/server/stackless-ssl "/")
add_executable(websocket-server-stackless-ssl
Jamfile
websocket_server_stackless_ssl.cpp)
add_executable (websocket-server-stackless-ssl
${BOOST_BEAST_FILES}
${PROJECT_SOURCE_DIR}/example/common/server_certificate.hpp
Jamfile
websocket_server_stackless_ssl.cpp
)
target_include_directories(websocket-server-stackless-ssl
PRIVATE ${PROJECT_SOURCE_DIR})
set_property(TARGET websocket-server-stackless-ssl PROPERTY FOLDER "example-websocket-server")
target_link_libraries(websocket-server-stackless-ssl
PRIVATE Boost::beast OpenSSL::SSL OpenSSL::Crypto)
target_link_libraries (websocket-server-stackless-ssl
OpenSSL::SSL OpenSSL::Crypto
lib-asio
lib-asio-ssl
lib-beast
)
endif()
set_target_properties(websocket-server-stackless-ssl
PROPERTIES FOLDER "example-websocket-server")
@@ -1,5 +1,6 @@
#
# Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com)
# Copyright (c) 2024 Mohammad Nejati
#
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,17 +8,11 @@
# Official repository: https://github.com/boostorg/beast
#
GroupSources(include/boost/beast beast)
GroupSources(example/websocket/server/stackless "/")
add_executable (websocket-server-stackless
${BOOST_BEAST_FILES}
add_executable(websocket-server-stackless
Jamfile
websocket_server_stackless.cpp
)
websocket_server_stackless.cpp)
target_link_libraries(websocket-server-stackless
lib-asio
lib-beast)
target_link_libraries(websocket-server-stackless PRIVATE Boost::beast)
set_property(TARGET websocket-server-stackless PROPERTY FOLDER "example-websocket-server")
set_target_properties(websocket-server-stackless
PROPERTIES FOLDER "example-websocket-server")
@@ -1,5 +1,6 @@
#
# Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com)
# Copyright (c) 2024 Mohammad Nejati
#
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,25 +8,15 @@
# Official repository: https://github.com/boostorg/beast
#
if (OPENSSL_FOUND)
GroupSources(include/boost/beast beast)
GroupSources(example/common common)
GroupSources(example/websocket/server/sync-ssl "/")
add_executable(websocket-server-sync-ssl
Jamfile
websocket_server_sync_ssl.cpp)
add_executable (websocket-server-sync-ssl
${BOOST_BEAST_FILES}
${PROJECT_SOURCE_DIR}/example/common/server_certificate.hpp
Jamfile
websocket_server_sync_ssl.cpp
)
target_include_directories(websocket-server-sync-ssl
PRIVATE ${PROJECT_SOURCE_DIR})
set_property(TARGET websocket-server-sync-ssl PROPERTY FOLDER "example-websocket-server")
target_link_libraries(websocket-server-sync-ssl
PRIVATE Boost::beast OpenSSL::SSL OpenSSL::Crypto)
target_link_libraries (websocket-server-sync-ssl
OpenSSL::SSL OpenSSL::Crypto
lib-asio
lib-asio-ssl
lib-beast
)
endif()
set_target_properties(websocket-server-sync-ssl
PROPERTIES FOLDER "example-websocket-server")
+6 -11
View File
@@ -1,5 +1,6 @@
#
# Copyright (c) 2016-2017 Vinnie Falco (vinnie dot falco at gmail dot com)
# Copyright (c) 2024 Mohammad Nejati
#
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -7,17 +8,11 @@
# Official repository: https://github.com/boostorg/beast
#
GroupSources(include/boost/beast beast)
GroupSources(example/websocket/server/sync "/")
add_executable (websocket-server-sync
${BOOST_BEAST_FILES}
add_executable(websocket-server-sync
Jamfile
websocket_server_sync.cpp
)
websocket_server_sync.cpp)
target_link_libraries(websocket-server-sync
lib-asio
lib-beast)
target_link_libraries(websocket-server-sync PRIVATE Boost::beast)
set_property(TARGET websocket-server-sync PROPERTY FOLDER "example-websocket-server")
set_target_properties(websocket-server-sync
PROPERTIES FOLDER "example-websocket-server")