Skip to content

Commit

Permalink
Fix MSVC
Browse files Browse the repository at this point in the history
  • Loading branch information
shinyquagsire23 committed Mar 30, 2024
1 parent 39d9e37 commit b00ee41
Show file tree
Hide file tree
Showing 5 changed files with 58 additions and 25 deletions.
24 changes: 17 additions & 7 deletions cmake_modules/build_sdl_mixer.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,23 @@ else()
set(SDL_MIXER_LIBRARIES "${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}SDL2_mixer${CMAKE_STATIC_LIBRARY_SUFFIX}")
endif()
# TODO: Not sure why SDL_mixer doesn't do link these into SDL_mixer.a?
set(SDL_MIXER_DEPS SDL::SDL
"${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}vorbisfile${CMAKE_STATIC_LIBRARY_SUFFIX}"
"${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}vorbis${CMAKE_STATIC_LIBRARY_SUFFIX}"
"${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}ogg${CMAKE_STATIC_LIBRARY_SUFFIX}"
"${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}opusfile${CMAKE_STATIC_LIBRARY_SUFFIX}"
"${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}opus${CMAKE_STATIC_LIBRARY_SUFFIX}"
)

if(PLAT_MSVC)
set(SDL_MIXER_DEPS "${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}vorbisfile${CMAKE_STATIC_LIBRARY_SUFFIX}"
"${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}vorbis${CMAKE_STATIC_LIBRARY_SUFFIX}"
"${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}ogg${CMAKE_STATIC_LIBRARY_SUFFIX}"
"${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}opusfile${CMAKE_STATIC_LIBRARY_SUFFIX}"
"${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}opus${CMAKE_STATIC_LIBRARY_SUFFIX}"
)
else()
set(SDL_MIXER_DEPS SDL::SDL
"${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}vorbisfile${CMAKE_STATIC_LIBRARY_SUFFIX}"
"${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}vorbis${CMAKE_STATIC_LIBRARY_SUFFIX}"
"${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}ogg${CMAKE_STATIC_LIBRARY_SUFFIX}"
"${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}opusfile${CMAKE_STATIC_LIBRARY_SUFFIX}"
"${SDL_MIXER_ROOT}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}opus${CMAKE_STATIC_LIBRARY_SUFFIX}"
)
endif()

if(PLAT_MSVC)
set(SDL_MIXER_PATCH_COMMAND git submodule update --init)
Expand Down
41 changes: 29 additions & 12 deletions cmake_modules/config_platform_deps.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -249,7 +249,15 @@ endif()
# WHYYY???? Does protoc not just take relative libz paths???
# Also why did this break in the first place I didn't change anything??
if(TARGET_USE_GAMENETWORKINGSOCKETS)
if(CMAKE_CROSSCOMPILING)
if(PLAT_MSVC)
if(ZLIB_USE_STATIC_LIBS)
set(HACK_ZLIB_SRC ${ZLIB_STATIC_LIBRARY_PATH})
set(HACK_ZLIB_SRC_DIR ${ZLIB_SHARED_LIBRARY_DIR})
else()
set(HACK_ZLIB_SRC ${ZLIB_SHARED_LIBRARY_PATH})
set(HACK_ZLIB_SRC_DIR ${ZLIB_SHARED_LIBRARY_DIR})
endif()
elseif(CMAKE_CROSSCOMPILING)
set(HACK_ZLIB_SRC ${ZLIB_HOST_SHARED_LIBRARY_PATH})
set(HACK_ZLIB_SRC_DIR ${ZLIB_HOST_SHARED_LIBRARY_DIR})
else()
Expand All @@ -262,18 +270,27 @@ if(TARGET_USE_GAMENETWORKINGSOCKETS)
set(GNS_PROTOC_HACK_ZLIB_DIR ${GameNetworkingSockets_ROOT}/src)
set(GNS_PROTOC_HACK_ZLIB_WILDCARD ${GameNetworkingSockets_ROOT}/src/${CMAKE_SHARED_LIBRARY_PREFIX}${ZLIB_HOST_LIBRARIES}${CMAKE_SHARED_LIBRARY_SUFFIX})

if(PLAT_MSVC)
add_custom_command(OUTPUT "${GNS_PROTOC_HACK_ZLIB}"
COMMAND ${CMAKE_COMMAND} -E make_directory "${GNS_PROTOC_HACK_ZLIB_DIR}"
COMMAND ${CMAKE_COMMAND} -E make_directory "${HACK_ZLIB_SRC_DIR}"
COMMAND ${CMAKE_COMMAND} -E copy "${HACK_ZLIB_SRC}" "${GNS_PROTOC_HACK_ZLIB_DIR}"
COMMAND ${CMAKE_COMMAND} -E touch "${GNS_PROTOC_HACK_ZLIB}"
)
else()
add_custom_command(OUTPUT "${GNS_PROTOC_HACK_ZLIB}"
COMMAND ${CMAKE_COMMAND} -E make_directory "${GNS_PROTOC_HACK_ZLIB_DIR}"
COMMAND ${CMAKE_COMMAND} -E make_directory "${HACK_ZLIB_SRC_DIR}"
COMMAND ${CMAKE_COMMAND} -E touch "${HACK_ZLIB_SRC_DIR}/hack.dylib"
COMMAND ${CMAKE_COMMAND} -E touch "${HACK_ZLIB_SRC_DIR}/hack.dll"
COMMAND ${CMAKE_COMMAND} -E touch "${HACK_ZLIB_SRC_DIR}/hack.so"
COMMAND ${CMAKE_COMMAND} -E copy "${HACK_ZLIB_SRC_DIR}/*.dylib" "${GNS_PROTOC_HACK_ZLIB_DIR}"
COMMAND ${CMAKE_COMMAND} -E copy "${HACK_ZLIB_SRC_DIR}/*.dll" "${GNS_PROTOC_HACK_ZLIB_DIR}"
COMMAND ${CMAKE_COMMAND} -E copy "${HACK_ZLIB_SRC_DIR}/*.so" "${GNS_PROTOC_HACK_ZLIB_DIR}"
COMMAND ${CMAKE_COMMAND} -E touch "${GNS_PROTOC_HACK_ZLIB}"
)
endif()

add_custom_command(OUTPUT "${GNS_PROTOC_HACK_ZLIB}"
COMMAND ${CMAKE_COMMAND} -E make_directory "${GNS_PROTOC_HACK_ZLIB_DIR}"
COMMAND ${CMAKE_COMMAND} -E make_directory "${HACK_ZLIB_SRC_DIR}"
COMMAND ${CMAKE_COMMAND} -E touch "${HACK_ZLIB_SRC_DIR}/hack.dylib"
COMMAND ${CMAKE_COMMAND} -E touch "${HACK_ZLIB_SRC_DIR}/hack.dll"
COMMAND ${CMAKE_COMMAND} -E touch "${HACK_ZLIB_SRC_DIR}/hack.so"
COMMAND ${CMAKE_COMMAND} -E copy "${HACK_ZLIB_SRC_DIR}/*.dylib" "${GNS_PROTOC_HACK_ZLIB_DIR}"
COMMAND ${CMAKE_COMMAND} -E copy "${HACK_ZLIB_SRC_DIR}/*.dll" "${GNS_PROTOC_HACK_ZLIB_DIR}"
COMMAND ${CMAKE_COMMAND} -E copy "${HACK_ZLIB_SRC_DIR}/*.so" "${GNS_PROTOC_HACK_ZLIB_DIR}"
COMMAND ${CMAKE_COMMAND} -E touch "${GNS_PROTOC_HACK_ZLIB}"
)
add_custom_target(GNS_HACK_ZLIB DEPENDS ${GNS_PROTOC_HACK_ZLIB})
add_dependencies(GameNetworkingSockets::GameNetworkingSockets GNS_HACK_ZLIB)
add_dependencies(GameNetworkingSockets::GameNetworkingSockets_s GNS_HACK_ZLIB)
Expand Down
2 changes: 1 addition & 1 deletion src/Platform/Common/stdControl.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ const char *stdControl_aAxisNames[JK_NUM_AXES+1] =
" "
};

const stdControlDikStrToNum stdControl_aDikNumToStr[120 + JK_NUM_EXTENDED_KEYS] =
const stdControlDikStrToNum stdControl_aDikNumToStr[JK_TOTAL_NUM_KEYS] =
{
{ DIK_ESCAPE, "DIK_ESCAPE" },
{ DIK_1, "DIK_1" },
Expand Down
2 changes: 1 addition & 1 deletion src/Platform/stdControl.h
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ void stdControl_ReadControls();
void stdControl_ReadMouse();
#endif

extern const stdControlDikStrToNum stdControl_aDikNumToStr[120 + JK_NUM_EXTENDED_KEYS];
extern const stdControlDikStrToNum stdControl_aDikNumToStr[JK_TOTAL_NUM_KEYS];
extern const char *stdControl_aAxisNames[JK_NUM_AXES+1];

//static int (*stdControl_MessageHandler)(HWND a1, UINT a2, WPARAM a3, HWND a4, LRESULT *a5) = (void*)stdControl_MessageHandler_ADDR;;
Expand Down
14 changes: 10 additions & 4 deletions src/types_enums.h
Original file line number Diff line number Diff line change
Expand Up @@ -210,22 +210,28 @@ typedef enum

#if defined(SDL2_RENDER) || defined(TARGET_TWL)
#define JK_NUM_MOUSE_BUTTONS (4)
#define JK_NUM_EXT_MOUSE_BUTTONS (0)
#define JK_NUM_EXT_MOUSE_BUTTONS (1)
#define JK_NUM_JOY_BUTTONS (8)
#define JK_NUM_EXT_JOY_BUTTONS (0)
#define JK_NUM_EXT_JOY_BUTTONS (24)
#define JK_NUM_HAT_BUTTONS (4)
#else
#define JK_NUM_MOUSE_BUTTONS (4)
#define JK_NUM_EXT_MOUSE_BUTTONS (28)
#define JK_NUM_EXT_MOUSE_BUTTONS (0)
#define JK_NUM_JOY_BUTTONS (8)
#define JK_NUM_EXT_JOY_BUTTONS (24)
#define JK_NUM_EXT_JOY_BUTTONS (0)
#define JK_NUM_HAT_BUTTONS (4)
#endif

#define JK_JOYSTICK_BUTTON_STRIDE (JK_NUM_JOY_BUTTONS + JK_NUM_HAT_BUTTONS)
#define JK_JOYSTICK_EXT_BUTTON_STRIDE (JK_NUM_EXT_JOY_BUTTONS)
#define JK_NUM_EXTENDED_KEYS ((JK_JOYSTICK_BUTTON_STRIDE * JK_NUM_JOYSTICKS) + JK_NUM_MOUSE_BUTTONS + JK_NUM_EXT_MOUSE_BUTTONS + (JK_JOYSTICK_EXT_BUTTON_STRIDE * JK_NUM_JOYSTICKS))

#if defined(SDL2_RENDER)
#define JK_TOTAL_NUM_KEYS (120+JK_NUM_EXTENDED_KEYS)
#else
#define JK_TOTAL_NUM_KEYS (148)
#endif

#define JK_NUM_KEYS_ORIG (0x100 + JK_NUM_EXTENDED_KEYS) // original game had an off-by-one?
#define JK_NUM_KEYS (0x100 + JK_NUM_EXTENDED_KEYS)

Expand Down

0 comments on commit b00ee41

Please sign in to comment.