ref: 6209661c76ce2d345ed891d7353f4d38615c0ce4
parent: 52728613302e732a5fed798ae411db7fa25b7497
author: Clownacy <Clownacy@users.noreply.github.com>
date: Thu Apr 25 23:42:57 EDT 2019
Fixed SDL2 exporting DLL symbols in static builds
--- a/external/SDL2/CMakeLists.txt
+++ b/external/SDL2/CMakeLists.txt
@@ -1772,6 +1772,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/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