shithub: cstory

Download patch

ref: 2701c001ad7c0d0da368f49119de361e90e59927
parent: ef7ae860c74643e61196d7206315a44d30422748
author: Clownacy <Clownacy@users.noreply.github.com>
date: Wed Jun 24 13:58:01 EDT 2020

Re-apply SDL2 fixes

Goddammit SDL2 - fix your CMake already.

--- a/external/SDL2/CMakeLists.txt
+++ b/external/SDL2/CMakeLists.txt
@@ -266,7 +266,7 @@
 # General includes
 include_directories(${SDL2_BINARY_DIR}/include ${SDL2_SOURCE_DIR}/include)
 if(USE_GCC OR USE_CLANG)
-  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -idirafter ${SDL2_SOURCE_DIR}/src/video/khronos")
+  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -idirafter \"${SDL2_SOURCE_DIR}/src/video/khronos\"")
 else()
   include_directories(${SDL2_SOURCE_DIR}/src/video/khronos)
 endif()
@@ -2092,6 +2092,7 @@
 if(SDL_STATIC)
   set (BUILD_SHARED_LIBS FALSE)
   add_library(SDL2-static STATIC ${SOURCE_FILES})
+  target_compile_definitions(SDL2-static PRIVATE SDL_STATIC)
   if (NOT SDL_SHARED OR NOT WIN32)
     set_target_properties(SDL2-static PROPERTIES OUTPUT_NAME "SDL2")
     # Note: Apparently, OUTPUT_NAME must really be unique; even when
--- a/external/SDL2/cmake/sdlchecks.cmake
+++ b/external/SDL2/cmake/sdlchecks.cmake
@@ -1088,7 +1088,7 @@
       set(HAVE_SDL_JOYSTICK TRUE)
       file(GLOB HIDAPI_SOURCES ${SDL2_SOURCE_DIR}/src/joystick/hidapi/*.c)
       set(SOURCE_FILES ${SOURCE_FILES} ${HIDAPI_SOURCES})
-      set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${LIBUSB_CFLAGS} -I${SDL2_SOURCE_DIR}/src/hidapi/hidapi")
+      set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${LIBUSB_CFLAGS} \"-I${SDL2_SOURCE_DIR}/src/hidapi/hidapi\"")
       if(NOT HIDAPI_SKIP_LIBUSB)
         if(HIDAPI_ONLY_LIBUSB)
           set(SOURCE_FILES ${SOURCE_FILES} ${SDL2_SOURCE_DIR}/src/hidapi/libusb/hid.c)
--- a/external/SDL2/include/begin_code.h
+++ b/external/SDL2/include/begin_code.h
@@ -58,6 +58,8 @@
 #   else
 #    define DECLSPEC    __declspec(dllimport)
 #   endif
+#  elif defined(SDL_STATIC)
+#   define DECLSPEC
 #  else
 #   define DECLSPEC __declspec(dllexport)
 #  endif