cmake_minimum_required(VERSION 3.16.0)
project(raknet)

# Build
add_library(raknet STATIC
    VariadicSQLParser.cpp
    SuperFastHash.cpp
    VariableListDeltaTracker.cpp
    StatisticsHistory.cpp
    SendToThread.cpp
    SignaledEvent.cpp
    ReplicaManager3.cpp
    IncrementalReadInterface.cpp
    Getche.cpp
    RakNetSocket2_Berkley_NativeClient.cpp
    WSAStartupSingleton.cpp
    DataCompressor.cpp
    RakMemoryOverride.cpp
    CommandParserInterface.cpp
    GetTime.cpp
    RakNetSocket2_Berkley.cpp
    PacketOutputWindowLogger.cpp
    DynDNS.cpp
    LocklessTypes.cpp
    UDPForwarder.cpp
    RakString.cpp
    SimpleMutex.cpp
    Itoa.cpp
    VitaIncludes.cpp
    TableSerializer.cpp
    EpochTimeToString.cpp
    ConnectionGraph2.cpp
    EmailSender.cpp
    UDPProxyCoordinator.cpp
    UDPProxyClient.cpp
    CloudClient.cpp
    ReadyEvent.cpp
    MessageFilter.cpp
    TCPInterface.cpp
    PS4Includes.cpp
    NatPunchthroughClient.cpp
    RakNetStatistics.cpp
    PacketConsoleLogger.cpp
    RakNetSocket2_NativeClient.cpp
    PacketLogger.cpp
    Gets.cpp
    NatPunchthroughServer.cpp
    FileOperations.cpp
    CheckSum.cpp
    HTTPConnection.cpp
    NatTypeDetectionServer.cpp
    RakNetSocket.cpp
    DS_Table.cpp
    RakNetSocket2.cpp
    PacketizedTCP.cpp
    RelayPlugin.cpp
    ThreadsafePacketLogger.cpp
    Rand.cpp
    GridSectorizer.cpp
    DS_BytePool.cpp
    FullyConnectedMesh2.cpp
    SocketLayer.cpp
    RakWString.cpp
    UDPProxyServer.cpp
    StringTable.cpp
    DR_SHA1.cpp
    LinuxStrings.cpp
    VariableDeltaSerializer.cpp
    CloudServer.cpp
    RPC4Plugin.cpp
    PacketFileLogger.cpp
    CloudCommon.cpp
    SecureHandshake.cpp
    FormatString.cpp
    RakNetSocket2_PS4.cpp
    DS_ByteQueue.cpp
    NetworkIDObject.cpp
    PluginInterface2.cpp
    RakNetSocket2_WindowsStore8.cpp
    RandSync.cpp
    RakPeer.cpp
    RakNetTransport2.cpp
    RakNetSocket2_Windows_Linux_360.cpp
    NatTypeDetectionClient.cpp
    ConsoleServer.cpp
    TelnetTransport.cpp
    Base64Encoder.cpp
    TeamManager.cpp
    RakThread.cpp
    DirectoryDeltaTransfer.cpp
    CCRakNetSlidingWindow.cpp
    Router2.cpp
    StringCompressor.cpp
    ReliabilityLayer.cpp
    RakNetSocket2_Vita.cpp
    NatTypeDetectionCommon.cpp
    Rackspace.cpp
    RakNetCommandParser.cpp
    LogCommandParser.cpp
    BitStream.cpp
    HTTPConnection2.cpp
    RakNetSocket2_Windows_Linux.cpp
    RakNetTypes.cpp
    RakNetSocket2_PS3_PS4.cpp
    FileListTransfer.cpp
    FileList.cpp
    TwoWayAuthentication.cpp
    _FindFirst.cpp
    DS_HuffmanEncodingTree.cpp
    gettimeofday.cpp
    NetworkIDManager.cpp
    TeamBalancer.cpp
    CCRakNetUDT.cpp
    RakNetSocket2_360_720.cpp
    RakSleep.cpp
)
target_include_directories(raknet PUBLIC .)
