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