From 569fdc4128ee24a31e4ceb597be421f187a518ac Mon Sep 17 00:00:00 2001 From: Rushi <44952533+Skyliegirl33@users.noreply.github.com> Date: Tue, 16 Jan 2024 08:41:55 +0100 Subject: [PATCH] Fix building on Clang and add Oodle support for Linux targets --- deps/Oodle/CMakeLists.txt | 24 +++++++++++++++++------- deps/Oodle/oodle2net.h | 2 ++ deps/datReader/Exd.cpp | 2 +- deps/datReader/bparse.h | 1 + deps/mysqlConnector/ResultSetBase.h | 1 + deps/mysqlConnector/mysql_util.h | 1 + src/common/Crypt/base64.h | 1 + 7 files changed, 24 insertions(+), 8 deletions(-) diff --git a/deps/Oodle/CMakeLists.txt b/deps/Oodle/CMakeLists.txt index ef90dcbc..decd17b9 100644 --- a/deps/Oodle/CMakeLists.txt +++ b/deps/Oodle/CMakeLists.txt @@ -1,9 +1,19 @@ add_library(OodleNet STATIC IMPORTED GLOBAL) -set_target_properties( - OodleNet - PROPERTIES - IMPORTED_IMPLIB "${CMAKE_SOURCE_DIR}/deps/Oodle/oo2net_9_win64.lib" - IMPORTED_LOCATION "${CMAKE_SOURCE_DIR}/deps/Oodle/oo2net_9_win64.lib" - LINKER_LANGUAGE C -) \ No newline at end of file +if(WIN32) + set_target_properties( + OodleNet + PROPERTIES + IMPORTED_IMPLIB "${CMAKE_SOURCE_DIR}/deps/Oodle/oo2net_9_win64.lib" + IMPORTED_LOCATION "${CMAKE_SOURCE_DIR}/deps/Oodle/oo2net_9_win64.lib" + LINKER_LANGUAGE C + ) +elseif(UNIX) + set_target_properties( + OodleNet + PROPERTIES + IMPORTED_IMPLIB "${CMAKE_SOURCE_DIR}/deps/Oodle/liboo2netlinux64.a" + IMPORTED_LOCATION "${CMAKE_SOURCE_DIR}/deps/Oodle/liboo2netlinux64.a" + LINKER_LANGUAGE C + ) +endif() \ No newline at end of file diff --git a/deps/Oodle/oodle2net.h b/deps/Oodle/oodle2net.h index 07e5505b..796c991d 100644 --- a/deps/Oodle/oodle2net.h +++ b/deps/Oodle/oodle2net.h @@ -1,6 +1,8 @@ #ifndef __OODLE2NET_H__ #define __OODLE2NET_H__ +#include + extern "C" intptr_t __stdcall OodleNetwork1_Shared_Size( int32_t htbits ); extern "C" intptr_t __stdcall OodleNetwork1UDP_State_Size(); diff --git a/deps/datReader/Exd.cpp b/deps/datReader/Exd.cpp index 6c4769b5..a10d542c 100644 --- a/deps/datReader/Exd.cpp +++ b/deps/datReader/Exd.cpp @@ -249,7 +249,7 @@ namespace xiv::exd for( int32_t i = 0; i < cacheEntry.second.subRows; i++ ) { // Get the vector fields for the given record and preallocate it - ExdRow row = { cacheEntry.first, i }; + ExdRow row = { cacheEntry.first, static_cast< uint8_t >( i ) }; auto& fields = data[ row ]; fields.reserve( memberCount ); diff --git a/deps/datReader/bparse.h b/deps/datReader/bparse.h index f45fecdd..21ed70c9 100644 --- a/deps/datReader/bparse.h +++ b/deps/datReader/bparse.h @@ -5,6 +5,7 @@ #include #include #include +#include namespace xiv::utils::bparse { diff --git a/deps/mysqlConnector/ResultSetBase.h b/deps/mysqlConnector/ResultSetBase.h index 235d8511..210924e0 100644 --- a/deps/mysqlConnector/ResultSetBase.h +++ b/deps/mysqlConnector/ResultSetBase.h @@ -4,6 +4,7 @@ #include #include #include +#include namespace Mysql { diff --git a/deps/mysqlConnector/mysql_util.h b/deps/mysqlConnector/mysql_util.h index 624475ec..6dfeb042 100644 --- a/deps/mysqlConnector/mysql_util.h +++ b/deps/mysqlConnector/mysql_util.h @@ -27,6 +27,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include #include +#include typedef struct st_mysql_field MYSQL_FIELD; #ifndef UL64 diff --git a/src/common/Crypt/base64.h b/src/common/Crypt/base64.h index 9b5d9eff..bfe4b348 100644 --- a/src/common/Crypt/base64.h +++ b/src/common/Crypt/base64.h @@ -1,4 +1,5 @@ #include +#include namespace Sapphire::Common::Util {