Files
uno-game/CMakeLists.txt
Kieran Kihn 84c470859b feat(network): add NetworkServer for managing player sessions and communication
- Implemented `NetworkServer` and `Session` classes for handling TCP communication with players.
- Added `NetworkServer.cpp` and `NetworkServer.h` to the project.
- Integrated `asio` library into the build configuration in `CMakeLists.txt`.
2025-11-28 20:40:14 +08:00

36 lines
864 B
CMake

cmake_minimum_required(VERSION 4.0)
project(uno-game)
set(CMAKE_CXX_STANDARD 26)
find_package(ftxui CONFIG REQUIRED)
find_package(nlohmann_json REQUIRED)
find_package(asio REQUIRED)
add_library(uno-game-lib
src/game/Card.cpp
src/game/CardTile.cpp
src/game/Player.cpp
src/game/GameState.cpp
src/common/Utils.cpp
src/network/Message.cpp
src/network/MessageSerializer.cpp
src/network/NetworkServer.cpp
)
target_link_libraries(uno-game-lib
PRIVATE ftxui::screen
PRIVATE ftxui::dom
PRIVATE ftxui::component
)
target_link_libraries(uno-game-lib
PRIVATE nlohmann_json::nlohmann_json
)
target_link_libraries(uno-game-lib
PRIVATE asio::asio
)
add_executable(uno-game src/main.cpp)
target_link_libraries(uno-game
PRIVATE uno-game-lib)
add_subdirectory(test)