mirror of
https://github.com/DarkflameUniverse/DarkflameServer
synced 2024-08-30 18:43:58 +00:00
dd8091f60e
* Hide raknet compilation warnings * Move out MariaDB Connector/C++ logic * remove mariadb warnings? * hide mariadb cmake warnings?
84 lines
2.3 KiB
CMake
84 lines
2.3 KiB
CMake
# Source Code for recast
|
|
file(
|
|
GLOB SOURCES_RECAST
|
|
LIST_DIRECTORIES false
|
|
RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}"
|
|
${CMAKE_CURRENT_SOURCE_DIR}/recastnavigation/Recast/Source/*.cpp
|
|
)
|
|
|
|
# Source Code for detour
|
|
file(
|
|
GLOB SOURCES_DETOUR
|
|
LIST_DIRECTORIES false
|
|
RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}"
|
|
${CMAKE_CURRENT_SOURCE_DIR}/recastnavigation/Detour/Source/*.cpp
|
|
)
|
|
|
|
# Source Code for tinyxml2
|
|
file(
|
|
GLOB SOURCES_TINYXML2
|
|
LIST_DIRECTORIES false
|
|
RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}"
|
|
${CMAKE_CURRENT_SOURCE_DIR}/tinyxml2/tinyxml2.cpp
|
|
)
|
|
|
|
# Source Code for libbcrypt
|
|
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
|
|
)
|
|
|
|
file(
|
|
GLOB SOURCES_SQLITE3
|
|
LIST_DIRECTORIES false
|
|
RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}"
|
|
${CMAKE_CURRENT_SOURCE_DIR}/SQLite/*.cpp
|
|
${CMAKE_CURRENT_SOURCE_DIR}/SQLite/*.c
|
|
)
|
|
|
|
# MariaDB C++ Connector
|
|
include(CMakeMariaDBLists.txt)
|
|
|
|
# Create our third party library objects
|
|
add_subdirectory(raknet)
|
|
add_library(tinyxml2 ${SOURCES_TINYXML2})
|
|
add_library(detour ${SOURCES_DETOUR})
|
|
add_library(recast ${SOURCES_RECAST})
|
|
add_library(libbcrypt ${SOURCES_LIBBCRYPT})
|
|
add_library(sqlite3 ${SOURCES_SQLITE3})
|
|
|
|
if(UNIX)
|
|
# Add warning disable flags and link Unix libraries to sqlite3
|
|
target_link_libraries(sqlite3 pthread dl m)
|
|
|
|
# -Wno-unused-result -Wno-unknown-pragmas -fpermissive
|
|
target_compile_options(sqlite3 PRIVATE "-Wno-return-local-addr" "-Wno-maybe-uninitialized")
|
|
target_compile_options(libbcrypt PRIVATE "-Wno-implicit-function-declaration" "-Wno-int-conversion")
|
|
endif()
|
|
|
|
# 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() |