cmake_minimum_required(VERSION 3.25) project(M2-PT-DRP LANGUAGES CXX) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) add_executable(M2-PT-DRP source/main.cpp source/packets/audio/AudioPacketData.hpp source/utils/audio/audio.cpp source/utils/audio/audio.hpp source/Manager.cpp source/Manager.hpp source/packets/base/Packet.hpp source/behavior/events/types.hpp source/packets/base/Packet.cpp source/RemotePeer.hpp source/behavior/events/base/BaseEvent.hpp source/behavior/events/base/BaseEvent.hpp source/behavior/events/audio/AudioPacketsComparator.cpp source/behavior/events/audio/AudioPacketsComparator.hpp source/behavior/events/audio/AudioEvent.hpp source/behavior/events/audio/AudioEvent.cpp source/behavior/events/pong/PongEvent.cpp source/behavior/events/pong/PongEvent.hpp source/behavior/events/search/SearchEvent.cpp source/behavior/events/search/SearchEvent.hpp source/behavior/events/info/InfoEvent.cpp source/behavior/events/info/InfoEvent.hpp source/behavior/tasks/types.hpp source/behavior/tasks/base/BaseTask.hpp source/behavior/tasks/server/ServerTask.cpp source/behavior/tasks/server/ServerTask.hpp source/behavior/tasks/undefined/UndefinedTask.cpp source/behavior/tasks/undefined/UndefinedTask.hpp source/behavior/tasks/client/ClientTask.cpp source/behavior/tasks/client/ClientTask.hpp source/Context.hpp source/packets/search/SearchPacketData.hpp source/packets/base/PacketContent.cpp source/packets/base/PacketContent.hpp source/packets/base/SecurityMode.hpp source/packets/info/InfoPacketData.hpp source/utils/time/Chrony.cpp source/utils/time/Chrony.hpp source/Peer.hpp source/utils/network/network.cpp source/utils/network/network.hpp source/Peer.cpp source/RemotePeer.cpp source/Context.cpp source/test.cpp source/utils/crypto/aes/AesKey.cpp source/utils/crypto/aes/AesKey.hpp source/utils/crypto/rsa/RsaPublicKey.cpp source/utils/crypto/rsa/RsaPublicKey.hpp source/utils/crypto/rsa/RsaPrivateKey.cpp source/utils/crypto/rsa/RsaPrivateKey.hpp source/utils/crypto/rsa/RsaPrivateKey.hpp source/utils/crypto/rsa/RsaKeyPair.cpp source/utils/crypto/rsa/RsaKeyPair.hpp source/utils/serialize/basics.cpp source/utils/serialize/basics.hpp source/packets/audio/AudioPacketData.cpp source/packets/info/InfoPacketData.cpp source/packets/search/SearchPacketData.cpp ) target_include_directories(M2-PT-DRP PRIVATE source ${MPG123_INCLUDE_DIRS} ${PORTAUDIO_INCLUDE_DIRS} ${OPENSSL_INCLUDE_DIRS} ) target_link_libraries(M2-PT-DRP PRIVATE argparse mpg123 portaudio ssl crypto argparse::argparse ) add_subdirectory(external/argparse)