mirror of
https://github.com/DarkflameUniverse/DarkflameServer
synced 2024-08-30 18:43:58 +00:00
fcf4d6c6fa
* add enum stringification functionality from third party source
* squashed commit
* Macros: Add test and improve speed
Space macros out
utilize cache locality
ensure no lost functionality
* moved stringify code to dCommon
* Rename #defines in stringify enum tests
* Revert "moved stringify code to dCommon"
This reverts commit 33fa5f8d2f
.
* improve macro functionality
change function handle
formatting and function definition tweaks
* typo fixes
* moved code to dCommon/dEnums and tests to dCommonTests/dEnumsTests
* initial magic_enums alternate implementation of enum stringification
* deleted unused tests
* reverted compile flag oopsy and fixed output types
* fixed testing suite
* test formatting improvement
* formatting again :(
* added gm string to "aborting gm!" message
* Push my suggestion for CI tests.
* updated magic enum test
* fix test variable type
* added gm test
* making sure magic_enum is on a release branch
* tidying up console outputs
* re-implemented enum array access for performance
* now it is bugged :(
* nvm, working
* helping out the snowflake compilers
* changed return type too
* optimization too
* formatting too I guess because why not
* being even more painfully specific
* Update WorldServer.cpp to match emo's feedback
* Update MagicEnumTests.cpp to use srand(time(NULL))
* Update eGameMessageType.h - formatting
* Trying to fix the crash but can't actually compile the code to check on my own rn
* Update WorldServer.cpp - third try at this
* Update MagicEnumTests.cpp - use better macro definitions
* Update MagicEnumTests.cpp - c string comparison fix
* addressing all but the cmake feedback
* fixed cmake to the best of my very limited ability
* added tests to verify magic enum arrays are pre-sorted
* updated
---------
Co-authored-by: David Markowitz <EmosewaMC@gmail.com>
Co-authored-by: Jettford <mrjettbradford@gmail.com>
54 lines
1.4 KiB
CMake
54 lines
1.4 KiB
CMake
# Source Code for recast
|
|
add_subdirectory(recastnavigation)
|
|
|
|
# Turn off tinyxml2 testing
|
|
set(tinyxml2_BUILD_TESTING OFF)
|
|
# Source Code for tinyxml2
|
|
add_subdirectory(tinyxml2)
|
|
|
|
# Source Code for libbcrypt. Uses a file glob instead to get around Windows build issues.
|
|
file(
|
|
GLOB SOURCES_LIBBCRYPT
|
|
LIST_DIRECTORIES false
|
|
RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}"
|
|
${CMAKE_CURRENT_SOURCE_DIR}/libbcrypt/*.c
|
|
${CMAKE_CURRENT_SOURCE_DIR}/libbcrypt/src/*.c
|
|
)
|
|
add_library(bcrypt ${SOURCES_LIBBCRYPT})
|
|
|
|
# Source code for sqlite
|
|
add_subdirectory(SQLite)
|
|
|
|
# Source code for magic_enum
|
|
add_subdirectory(magic_enum)
|
|
|
|
# MariaDB C++ Connector
|
|
include(CMakeMariaDBLists.txt)
|
|
|
|
# Create our third party library objects
|
|
add_subdirectory(raknet)
|
|
|
|
# Download Backtrace if configured
|
|
if(UNIX AND NOT APPLE)
|
|
include(FetchContent)
|
|
if (__include_backtrace__ AND __compile_backtrace__)
|
|
FetchContent_Declare(
|
|
backtrace
|
|
GIT_REPOSITORY https://github.com/ianlancetaylor/libbacktrace.git
|
|
)
|
|
|
|
FetchContent_MakeAvailable(backtrace)
|
|
|
|
if (NOT EXISTS ${backtrace_SOURCE_DIR}/.libs)
|
|
set(backtrace_make_cmd "${backtrace_SOURCE_DIR}/configure --prefix=\"/usr\" --enable-shared --with-system-libunwind")
|
|
|
|
execute_process(
|
|
COMMAND bash -c "cd ${backtrace_SOURCE_DIR} && ${backtrace_make_cmd} && make && cd ${CMAKE_SOURCE_DIR}"
|
|
)
|
|
endif()
|
|
|
|
link_directories(${backtrace_SOURCE_DIR}/.libs/)
|
|
include_directories(${backtrace_SOURCE_DIR})
|
|
endif()
|
|
endif()
|