From 26f98df338c25d7ed7c9fcf996bf09860d2de34f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Fri, 25 May 2018 08:25:14 +0200 Subject: Compatibility with SDL2 2.0.5 --- c_src/sdl_blend_mode.c | 15 +++++++++++++++ c_src/sdl_cpu_info.c | 4 ++++ c_src/sdl_window.c | 4 ++++ 3 files changed, 23 insertions(+) diff --git a/c_src/sdl_blend_mode.c b/c_src/sdl_blend_mode.c index 94ece52..a699dbb 100644 --- a/c_src/sdl_blend_mode.c +++ b/c_src/sdl_blend_mode.c @@ -14,6 +14,10 @@ #include "esdl2.h" +#if !SDL_VERSION_ATLEAST(2, 0, 6) +#define SDL_BLENDMODE_INVALID 0x7FFFFFFF +#endif + #define BLEND_MODE_ENUM(E) \ E(none, SDL_BLENDMODE_NONE) \ E(blend, SDL_BLENDMODE_BLEND) \ @@ -24,6 +28,8 @@ NIF_ATOM_TO_ENUM_FUNCTION(atom_to_blend_mode, SDL_BlendMode, BLEND_MODE_ENUM) NIF_ENUM_TO_ATOM_FUNCTION(blend_mode_to_atom, SDL_BlendMode, BLEND_MODE_ENUM) +#if SDL_VERSION_ATLEAST(2, 0, 6) + #define BLEND_OPERATION_ENUM(E) \ E(add, SDL_BLENDOPERATION_ADD) \ E(substract, SDL_BLENDOPERATION_SUBTRACT) \ @@ -82,3 +88,12 @@ NIF_FUNCTION(compose_custom_blend_mode) srcColorFactor, dstColorFactor, colorOp, srcAlphaFactor, dstAlphaFactor, alphaOp); } + +#else + +NIF_FUNCTION(compose_custom_blend_mode) +{ + return atom_undefined; +} + +#endif /* SDL_VERSION_ATLEAST(2, 0, 6) */ diff --git a/c_src/sdl_cpu_info.c b/c_src/sdl_cpu_info.c index c02a358..aa034f9 100644 --- a/c_src/sdl_cpu_info.c +++ b/c_src/sdl_cpu_info.c @@ -89,10 +89,14 @@ NIF_FUNCTION(has_mmx) NIF_FUNCTION(has_neon) { +#if SDL_VERSION_ATLEAST(2, 0, 6) if (SDL_HasNEON()) return atom_true; return atom_false; +#else + return atom_undefined; +#endif } // has_rdtsc diff --git a/c_src/sdl_window.c b/c_src/sdl_window.c index 1c4f5a7..5f31627 100644 --- a/c_src/sdl_window.c +++ b/c_src/sdl_window.c @@ -23,6 +23,10 @@ void dtor_Window(ErlNifEnv* env, void* obj) esdl2_windows_remove(window); } +#if !SDL_VERSION_ATLEAST(2, 0, 6) +#define SDL_WINDOW_VULKAN 0x10000000 +#endif + #define WINDOW_FLAGS(F) \ F(fullscreen, SDL_WINDOW_FULLSCREEN) \ F(opengl, SDL_WINDOW_OPENGL) \ -- cgit v1.2.3