diff --git a/CMakeLists.txt b/CMakeLists.txt index c256724c..f0b47ece 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -287,7 +287,7 @@ add_subdirectory(dPhysics) add_subdirectory(dServer) # Create a list of common libraries shared between all binaries -set(COMMON_LIBRARIES "dCommon" "dDatabase" "dNet" "raknet" "MariaDB::ConnCpp" "magic_enum") +set(COMMON_LIBRARIES "dCommon" "dDatabase" "dNet" "fmt" "raknet" "MariaDB::ConnCpp" "magic_enum") # Add platform specific common libraries if(UNIX) diff --git a/dAuthServer/CMakeLists.txt b/dAuthServer/CMakeLists.txt index 7dcbf041..451e669b 100644 --- a/dAuthServer/CMakeLists.txt +++ b/dAuthServer/CMakeLists.txt @@ -1,6 +1,6 @@ add_executable(AuthServer "AuthServer.cpp") -target_link_libraries(AuthServer ${COMMON_LIBRARIES} dServer) +target_link_libraries(AuthServer PRIVATE ${COMMON_LIBRARIES} dServer) target_include_directories(AuthServer PRIVATE ${PROJECT_SOURCE_DIR}/dServer) diff --git a/dChatServer/CMakeLists.txt b/dChatServer/CMakeLists.txt index c7eea041..33ce5cda 100644 --- a/dChatServer/CMakeLists.txt +++ b/dChatServer/CMakeLists.txt @@ -11,6 +11,6 @@ add_compile_definitions(ChatServer PRIVATE PROJECT_VERSION="\"${PROJECT_VERSION} add_library(dChatServer ${DCHATSERVER_SOURCES}) target_include_directories(dChatServer PRIVATE "${PROJECT_SOURCE_DIR}/dServer") -target_link_libraries(dChatServer ${COMMON_LIBRARIES} dChatFilter) -target_link_libraries(ChatServer ${COMMON_LIBRARIES} dChatFilter dChatServer dServer) +target_link_libraries(dChatServer PRIVATE ${COMMON_LIBRARIES} dChatFilter) +target_link_libraries(ChatServer PRIVATE ${COMMON_LIBRARIES} dChatFilter dChatServer dServer) diff --git a/dCommon/CMakeLists.txt b/dCommon/CMakeLists.txt index d020ff72..cf7745b5 100644 --- a/dCommon/CMakeLists.txt +++ b/dCommon/CMakeLists.txt @@ -70,5 +70,6 @@ else () endif () target_link_libraries(dCommon + PUBLIC fmt PRIVATE ZLIB::ZLIB bcrypt tinyxml2 INTERFACE dDatabase) diff --git a/dDatabase/CDClientDatabase/CMakeLists.txt b/dDatabase/CDClientDatabase/CMakeLists.txt index 13d59ffb..9a2251b6 100644 --- a/dDatabase/CDClientDatabase/CMakeLists.txt +++ b/dDatabase/CDClientDatabase/CMakeLists.txt @@ -15,7 +15,7 @@ target_include_directories(dDatabaseCDClient PUBLIC "." "${PROJECT_SOURCE_DIR}/dCommon" "${PROJECT_SOURCE_DIR}/dCommon/dEnums" ) -target_link_libraries(dDatabaseCDClient PRIVATE sqlite3) +target_link_libraries(dDatabaseCDClient PRIVATE fmt sqlite3) if (${CDCLIENT_CACHE_ALL}) add_compile_definitions(dDatabaseCDClient PRIVATE CDCLIENT_CACHE_ALL=${CDCLIENT_CACHE_ALL}) diff --git a/dDatabase/CMakeLists.txt b/dDatabase/CMakeLists.txt index 004bdc14..ce431d21 100644 --- a/dDatabase/CMakeLists.txt +++ b/dDatabase/CMakeLists.txt @@ -4,4 +4,5 @@ add_subdirectory(GameDatabase) add_library(dDatabase STATIC "MigrationRunner.cpp") target_include_directories(dDatabase PUBLIC ".") target_link_libraries(dDatabase - PUBLIC dDatabaseCDClient dDatabaseGame) + PUBLIC dDatabaseCDClient dDatabaseGame + PRIVATE fmt) diff --git a/dDatabase/GameDatabase/CMakeLists.txt b/dDatabase/GameDatabase/CMakeLists.txt index 09ca7251..31fa63c7 100644 --- a/dDatabase/GameDatabase/CMakeLists.txt +++ b/dDatabase/GameDatabase/CMakeLists.txt @@ -16,6 +16,7 @@ target_include_directories(dDatabaseGame PUBLIC "." ) target_link_libraries(dDatabaseGame PUBLIC MariaDB::ConnCpp + PRIVATE fmt INTERFACE dCommon) # Glob together all headers that need to be precompiled diff --git a/dMasterServer/CMakeLists.txt b/dMasterServer/CMakeLists.txt index 260e4f16..444268d2 100644 --- a/dMasterServer/CMakeLists.txt +++ b/dMasterServer/CMakeLists.txt @@ -12,8 +12,8 @@ target_include_directories(dMasterServer PUBLIC "." ${PROJECT_SOURCE_DIR}/dServer/ # BinaryPathFinder.h ) -target_link_libraries(dMasterServer ${COMMON_LIBRARIES}) -target_link_libraries(MasterServer ${COMMON_LIBRARIES} bcrypt dMasterServer dServer) +target_link_libraries(dMasterServer PRIVATE ${COMMON_LIBRARIES}) +target_link_libraries(MasterServer PRIVATE ${COMMON_LIBRARIES} bcrypt dMasterServer dServer) if(WIN32) add_dependencies(MasterServer WorldServer AuthServer ChatServer) diff --git a/dNet/CMakeLists.txt b/dNet/CMakeLists.txt index 15cdda42..aca663e0 100644 --- a/dNet/CMakeLists.txt +++ b/dNet/CMakeLists.txt @@ -8,7 +8,7 @@ set(DNET_SOURCES "AuthPackets.cpp" "ZoneInstanceManager.cpp") add_library(dNet STATIC ${DNET_SOURCES}) -target_link_libraries(dNet PRIVATE bcrypt MD5) +target_link_libraries(dNet PRIVATE bcrypt fmt MD5) target_include_directories(dNet PRIVATE "${PROJECT_SOURCE_DIR}/dCommon" "${PROJECT_SOURCE_DIR}/dCommon/dEnums" diff --git a/dPhysics/CMakeLists.txt b/dPhysics/CMakeLists.txt index 65588b4b..4cc63054 100644 --- a/dPhysics/CMakeLists.txt +++ b/dPhysics/CMakeLists.txt @@ -12,5 +12,5 @@ target_include_directories(dPhysics PUBLIC "." "${PROJECT_SOURCE_DIR}/dCommon/dEnums" ) target_link_libraries(dPhysics - PUBLIC Recast Detour + PUBLIC fmt Recast Detour INTERFACE dNavigation dCommon) diff --git a/dServer/CMakeLists.txt b/dServer/CMakeLists.txt index ca4e6198..ab14627a 100644 --- a/dServer/CMakeLists.txt +++ b/dServer/CMakeLists.txt @@ -3,6 +3,8 @@ set(DSERVER_SOURCES add_library(dServer STATIC ${DSERVER_SOURCES}) +target_link_libraries(dServer PRIVATE fmt) + target_include_directories(dServer PUBLIC ".") target_include_directories(dServer PRIVATE diff --git a/dWorldServer/CMakeLists.txt b/dWorldServer/CMakeLists.txt index 62a3767a..3c3fd97f 100644 --- a/dWorldServer/CMakeLists.txt +++ b/dWorldServer/CMakeLists.txt @@ -13,7 +13,7 @@ target_include_directories(WorldServer PRIVATE "${PROJECT_SOURCE_DIR}/dServer" # BinaryPathFinder.h ) -target_link_libraries(WorldServer ${COMMON_LIBRARIES} +target_link_libraries(WorldServer PRIVATE ${COMMON_LIBRARIES} dScripts dGameBase dComponents diff --git a/tests/dCommonTests/CMakeLists.txt b/tests/dCommonTests/CMakeLists.txt index ef7c4cba..6c4e8084 100644 --- a/tests/dCommonTests/CMakeLists.txt +++ b/tests/dCommonTests/CMakeLists.txt @@ -1,6 +1,7 @@ set(DCOMMONTEST_SOURCES "AMFDeserializeTests.cpp" "Amf3Tests.cpp" + "LoggerTests.cpp" "ToUnderlyingTests.cpp" "HeaderSkipTest.cpp" "TestCDFeatureGatingTable.cpp" @@ -32,7 +33,7 @@ add_custom_command(TARGET dCommonTests POST_BUILD endif() # Link needed libraries -target_link_libraries(dCommonTests ${COMMON_LIBRARIES} GTest::gtest_main) +target_link_libraries(dCommonTests PRIVATE ${COMMON_LIBRARIES} GTest::gtest_main) # Copy test files to testing directory add_subdirectory(TestBitStreams) diff --git a/tests/dGameTests/CMakeLists.txt b/tests/dGameTests/CMakeLists.txt index 58f213e0..cada200d 100644 --- a/tests/dGameTests/CMakeLists.txt +++ b/tests/dGameTests/CMakeLists.txt @@ -22,7 +22,7 @@ add_custom_command(TARGET dGameTests POST_BUILD WORKING_DIRECTORY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}) endif() -target_link_libraries(dGameTests ${COMMON_LIBRARIES} GTest::gtest_main +target_link_libraries(dGameTests PRIVATE ${COMMON_LIBRARIES} GTest::gtest_main dGame dScripts dPhysics Detour Recast tinyxml2 dWorldServer dZoneManager dChatFilter dNavigation) # Discover the tests diff --git a/thirdparty/CMakeLists.txt b/thirdparty/CMakeLists.txt index 41135a80..5a0268d8 100644 --- a/thirdparty/CMakeLists.txt +++ b/thirdparty/CMakeLists.txt @@ -1,6 +1,9 @@ # Source Code for recast add_subdirectory(recastnavigation) +# Add fmtlib +add_subdirectory(fmt SYSTEM) + # Turn off tinyxml2 testing set(tinyxml2_BUILD_TESTING OFF) # Source Code for tinyxml2