96 lines
2.9 KiB
CMake
96 lines
2.9 KiB
CMake
cmake_minimum_required(VERSION 3.11)
|
|
|
|
project(HelloAsync CXX)
|
|
set(CMAKE_CXX_STANDARD 20)
|
|
|
|
set(Boost_USE_STATIC_LIBS ON)
|
|
set(Boost_USE_MULTITHREADED ON)
|
|
set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} "C:/Users/Public/Libraries/boost_1_84_0")
|
|
set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} "C:/Users/Public/Libraries/boost_1_84_0/stage/lib")
|
|
|
|
#include(${CMAKE_BINARY_DIR}/conanbuildinfo.cmake)
|
|
# conan_basic_setup()
|
|
|
|
find_package(Boost 1.78.0 REQUIRED)
|
|
if (Boost_FOUND)
|
|
include_directories(${Boost_INCLUDE_DIRS})
|
|
endif ()
|
|
|
|
set(THREADS_PREFER_PTHREAD_FLAG ON)
|
|
find_package(Threads REQUIRED)
|
|
|
|
add_executable(client_endpoint
|
|
src/chapter01_the_basics/endpoint.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(client_endpoint PRIVATE Threads::Threads)
|
|
|
|
add_executable(server_endpoint
|
|
src/chapter01_the_basics/server_endpoint.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(server_endpoint PRIVATE Threads::Threads)
|
|
|
|
add_executable(active_socket
|
|
src/chapter01_the_basics/active_socket.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(active_socket PRIVATE Threads::Threads)
|
|
|
|
add_executable(passive_socket
|
|
src/chapter01_the_basics/passive_socket.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(passive_socket PRIVATE Threads::Threads)
|
|
|
|
add_executable(resolving_dns
|
|
src/chapter01_the_basics/resolving_dns.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(resolving_dns PRIVATE Threads::Threads)
|
|
|
|
add_executable(binding_socket_to_an_endpoint
|
|
src/chapter01_the_basics/binding_socket_to_an_endpoint.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(binding_socket_to_an_endpoint PRIVATE Threads::Threads)
|
|
|
|
add_executable(connecting_a_socket
|
|
src/chapter01_the_basics/connecting_a_socket.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(connecting_a_socket PRIVATE Threads::Threads)
|
|
|
|
add_executable(accepting_connections
|
|
src/chapter01_the_basics/accepting_connections.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(accepting_connections PRIVATE Threads::Threads)
|
|
|
|
add_executable(output_buffer
|
|
src/chapter02_io/output_buffer.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(output_buffer PRIVATE Threads::Threads)
|
|
|
|
add_executable(input_buffer
|
|
src/chapter02_io/input_buffer.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(input_buffer PRIVATE Threads::Threads)
|
|
|
|
add_executable(stream_oriented_buffers
|
|
src/chapter02_io/stream_oriented_buffers.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(stream_oriented_buffers PRIVATE Threads::Threads)
|
|
|
|
add_executable(writing_tcp_sync
|
|
src/chapter02_io/writing_tcp_sync.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(writing_tcp_sync PRIVATE Threads::Threads)
|
|
|
|
add_executable(reading_tcp_sync
|
|
src/chapter02_io/reading_tcp_sync.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(reading_tcp_sync PRIVATE Threads::Threads)
|
|
|
|
add_executable(writing_tcp_async
|
|
src/chapter02_io/writing_tcp_async.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(writing_tcp_async PRIVATE Threads::Threads)
|
|
|
|
add_executable(reading_tcp_async
|
|
src/chapter02_io/reading_tcp_async.cpp
|
|
src/sdk.h)
|
|
target_link_libraries(reading_tcp_async PRIVATE Threads::Threads)
|