diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL.h b/sdl2-sys/SDL2-2.0.10/include/SDL.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL.h rename to sdl2-sys/SDL2-2.0.10/include/SDL.h index fc35a419efd..88dce0c03e2 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_assert.h b/sdl2-sys/SDL2-2.0.10/include/SDL_assert.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_assert.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_assert.h index b38f928ae14..8baecb63e1c 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_assert.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_assert.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_atomic.h b/sdl2-sys/SDL2-2.0.10/include/SDL_atomic.h similarity index 91% rename from sdl2-sys/SDL2-2.0.9/include/SDL_atomic.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_atomic.h index b2287748c8f..deee35f916c 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_atomic.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_atomic.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -162,12 +162,29 @@ extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquireFunction(void); #define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("dmb ish" : : : "memory") #define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("dmb ish" : : : "memory") #elif defined(__GNUC__) && defined(__arm__) -#if defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7S__) +#if 0 /* defined(__LINUX__) || defined(__ANDROID__) */ +/* Information from: + https://chromium.googlesource.com/chromium/chromium/+/trunk/base/atomicops_internals_arm_gcc.h#19 + + The Linux kernel provides a helper function which provides the right code for a memory barrier, + hard-coded at address 0xffff0fa0 +*/ +typedef void (*SDL_KernelMemoryBarrierFunc)(); +#define SDL_MemoryBarrierRelease() ((SDL_KernelMemoryBarrierFunc)0xffff0fa0)() +#define SDL_MemoryBarrierAcquire() ((SDL_KernelMemoryBarrierFunc)0xffff0fa0)() +#elif 0 /* defined(__QNXNTO__) */ +#include + +#define SDL_MemoryBarrierRelease() __cpu_membarrier() +#define SDL_MemoryBarrierAcquire() __cpu_membarrier() +#else +#if defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7S__) || defined(__ARM_ARCH_8A__) #define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("dmb ish" : : : "memory") #define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("dmb ish" : : : "memory") #elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_5TE__) #ifdef __thumb__ /* The mcr instruction isn't available in thumb mode, use real functions */ +#define SDL_MEMORY_BARRIER_USES_FUNCTION #define SDL_MemoryBarrierRelease() SDL_MemoryBarrierReleaseFunction() #define SDL_MemoryBarrierAcquire() SDL_MemoryBarrierAcquireFunction() #else @@ -177,6 +194,7 @@ extern DECLSPEC void SDLCALL SDL_MemoryBarrierAcquireFunction(void); #else #define SDL_MemoryBarrierRelease() __asm__ __volatile__ ("" : : : "memory") #define SDL_MemoryBarrierAcquire() __asm__ __volatile__ ("" : : : "memory") +#endif /* __LINUX__ || __ANDROID__ */ #endif /* __GNUC__ && __arm__ */ #else #if (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x5120)) diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_audio.h b/sdl2-sys/SDL2-2.0.10/include/SDL_audio.h similarity index 92% rename from sdl2-sys/SDL2-2.0.9/include/SDL_audio.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_audio.h index d3e1bface4d..305c01a9d94 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_audio.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_audio.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -420,23 +420,56 @@ extern DECLSPEC void SDLCALL SDL_PauseAudioDevice(SDL_AudioDeviceID dev, /* @} *//* Pause audio functions */ /** - * This function loads a WAVE from the data source, automatically freeing - * that source if \c freesrc is non-zero. For example, to load a WAVE file, - * you could do: + * \brief Load the audio data of a WAVE file into memory + * + * Loading a WAVE file requires \c src, \c spec, \c audio_buf and \c audio_len + * to be valid pointers. The entire data portion of the file is then loaded + * into memory and decoded if necessary. + * + * If \c freesrc is non-zero, the data source gets automatically closed and + * freed before the function returns. + * + * Supported are RIFF WAVE files with the formats PCM (8, 16, 24, and 32 bits), + * IEEE Float (32 bits), Microsoft ADPCM and IMA ADPCM (4 bits), and A-law and + * ยต-law (8 bits). Other formats are currently unsupported and cause an error. + * + * If this function succeeds, the pointer returned by it is equal to \c spec + * and the pointer to the audio data allocated by the function is written to + * \c audio_buf and its length in bytes to \c audio_len. The \ref SDL_AudioSpec + * members \c freq, \c channels, and \c format are set to the values of the + * audio data in the buffer. The \c samples member is set to a sane default and + * all others are set to zero. + * + * It's necessary to use SDL_FreeWAV() to free the audio data returned in + * \c audio_buf when it is no longer used. + * + * Because of the underspecification of the Waveform format, there are many + * problematic files in the wild that cause issues with strict decoders. To + * provide compatibility with these files, this decoder is lenient in regards + * to the truncation of the file, the fact chunk, and the size of the RIFF + * chunk. The hints SDL_HINT_WAVE_RIFF_CHUNK_SIZE, SDL_HINT_WAVE_TRUNCATION, + * and SDL_HINT_WAVE_FACT_CHUNK can be used to tune the behavior of the + * loading process. + * + * Any file that is invalid (due to truncation, corruption, or wrong values in + * the headers), too big, or unsupported causes an error. Additionally, any + * critical I/O error from the data source will terminate the loading process + * with an error. The function returns NULL on error and in all cases (with the + * exception of \c src being NULL), an appropriate error message will be set. + * + * It is required that the data source supports seeking. + * + * Example: * \code * SDL_LoadWAV_RW(SDL_RWFromFile("sample.wav", "rb"), 1, ...); * \endcode * - * If this function succeeds, it returns the given SDL_AudioSpec, - * filled with the audio data format of the wave data, and sets - * \c *audio_buf to a malloc()'d buffer containing the audio data, - * and sets \c *audio_len to the length of that audio buffer, in bytes. - * You need to free the audio buffer with SDL_FreeWAV() when you are - * done with it. - * - * This function returns NULL and sets the SDL error message if the - * wave file cannot be opened, uses an unknown data format, or is - * corrupt. Currently raw and MS-ADPCM WAVE files are supported. + * \param src The data source with the WAVE data + * \param freesrc A integer value that makes the function close the data source if non-zero + * \param spec A pointer filled with the audio format of the audio data + * \param audio_buf A pointer filled with the audio data allocated by the function + * \param audio_len A pointer filled with the length of the audio data buffer in bytes + * \return NULL on error, or non-NULL on success. */ extern DECLSPEC SDL_AudioSpec *SDLCALL SDL_LoadWAV_RW(SDL_RWops * src, int freesrc, diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_bits.h b/sdl2-sys/SDL2-2.0.10/include/SDL_bits.h similarity index 93% rename from sdl2-sys/SDL2-2.0.9/include/SDL_bits.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_bits.h index eb8322f0d0a..b116cc8d01e 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_bits.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_bits.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -101,6 +101,15 @@ SDL_MostSignificantBitIndex32(Uint32 x) #endif } +SDL_FORCE_INLINE SDL_bool +SDL_HasExactlyOneBitSet32(Uint32 x) +{ + if (x && !(x & (x - 1))) { + return SDL_TRUE; + } + return SDL_FALSE; +} + /* Ends C function definitions when using C++ */ #ifdef __cplusplus } diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_blendmode.h b/sdl2-sys/SDL2-2.0.10/include/SDL_blendmode.h similarity index 93% rename from sdl2-sys/SDL2-2.0.9/include/SDL_blendmode.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_blendmode.h index 36a5ea76f0c..6f0a22b99f5 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_blendmode.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_blendmode.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -90,12 +90,12 @@ typedef enum /** * \brief Create a custom blend mode, which may or may not be supported by a given renderer * - * \param srcColorFactor - * \param dstColorFactor - * \param colorOperation - * \param srcAlphaFactor - * \param dstAlphaFactor - * \param alphaOperation + * \param srcColorFactor source color factor + * \param dstColorFactor destination color factor + * \param colorOperation color operation + * \param srcAlphaFactor source alpha factor + * \param dstAlphaFactor destination alpha factor + * \param alphaOperation alpha operation * * The result of the blend mode operation will be: * dstRGB = dstRGB * dstColorFactor colorOperation srcRGB * srcColorFactor diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_clipboard.h b/sdl2-sys/SDL2-2.0.10/include/SDL_clipboard.h similarity index 96% rename from sdl2-sys/SDL2-2.0.9/include/SDL_clipboard.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_clipboard.h index f28751ebb8f..c4f8766ce7e 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_clipboard.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_clipboard.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_config.h b/sdl2-sys/SDL2-2.0.10/include/SDL_config.h similarity index 96% rename from sdl2-sys/SDL2-2.0.9/include/SDL_config.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_config.h index 32f4113ffa0..7d62d3e2ec0 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_config.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_config.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_config.h.cmake b/sdl2-sys/SDL2-2.0.10/include/SDL_config.h.cmake similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_config.h.cmake rename to sdl2-sys/SDL2-2.0.10/include/SDL_config.h.cmake index 48dd2d41b78..5e9e5bcea74 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_config.h.cmake +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_config.h.cmake @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -184,6 +184,7 @@ #cmakedefine HAVE_SEM_TIMEDWAIT 1 #cmakedefine HAVE_GETAUXVAL 1 #cmakedefine HAVE_POLL 1 +#cmakedefine HAVE__EXIT 1 #elif __WIN32__ #cmakedefine HAVE_STDARG_H 1 @@ -285,6 +286,7 @@ #cmakedefine SDL_JOYSTICK_WINMM @SDL_JOYSTICK_WINMM@ #cmakedefine SDL_JOYSTICK_USBHID @SDL_JOYSTICK_USBHID@ #cmakedefine SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H @SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H@ +#cmakedefine SDL_JOYSTICK_HIDAPI @SDL_JOYSTICK_HIDAPI@ #cmakedefine SDL_JOYSTICK_EMSCRIPTEN @SDL_JOYSTICK_EMSCRIPTEN@ #cmakedefine SDL_HAPTIC_DUMMY @SDL_HAPTIC_DUMMY@ #cmakedefine SDL_HAPTIC_LINUX @SDL_HAPTIC_LINUX@ @@ -339,9 +341,6 @@ #cmakedefine SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_CURSOR @SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_CURSOR@ #cmakedefine SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON @SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON@ -#cmakedefine SDL_VIDEO_DRIVER_MIR @SDL_VIDEO_DRIVER_MIR@ -#cmakedefine SDL_VIDEO_DRIVER_MIR_DYNAMIC @SDL_VIDEO_DRIVER_MIR_DYNAMIC@ -#cmakedefine SDL_VIDEO_DRIVER_MIR_DYNAMIC_XKBCOMMON @SDL_VIDEO_DRIVER_MIR_DYNAMIC_XKBCOMMON@ #cmakedefine SDL_VIDEO_DRIVER_EMSCRIPTEN @SDL_VIDEO_DRIVER_EMSCRIPTEN@ #cmakedefine SDL_VIDEO_DRIVER_X11 @SDL_VIDEO_DRIVER_X11@ #cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC @SDL_VIDEO_DRIVER_X11_DYNAMIC@ diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_config.h.in b/sdl2-sys/SDL2-2.0.10/include/SDL_config.h.in similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_config.h.in rename to sdl2-sys/SDL2-2.0.10/include/SDL_config.h.in index 883b6f427e3..a5e9d1328cf 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_config.h.in +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_config.h.in @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -189,6 +189,7 @@ #undef HAVE_SEM_TIMEDWAIT #undef HAVE_GETAUXVAL #undef HAVE_POLL +#undef HAVE__EXIT #else #define HAVE_STDARG_H 1 @@ -327,9 +328,6 @@ #undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL #undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_CURSOR #undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON -#undef SDL_VIDEO_DRIVER_MIR -#undef SDL_VIDEO_DRIVER_MIR_DYNAMIC -#undef SDL_VIDEO_DRIVER_MIR_DYNAMIC_XKBCOMMON #undef SDL_VIDEO_DRIVER_X11 #undef SDL_VIDEO_DRIVER_RPI #undef SDL_VIDEO_DRIVER_KMSDRM diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_config_android.h b/sdl2-sys/SDL2-2.0.10/include/SDL_config_android.h similarity index 97% rename from sdl2-sys/SDL2-2.0.9/include/SDL_config_android.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_config_android.h index f2b28cfb224..8f5348605d1 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_config_android.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_config_android.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -130,6 +130,7 @@ /* Enable various audio drivers */ #define SDL_AUDIO_DRIVER_ANDROID 1 +#define SDL_AUDIO_DRIVER_OPENSLES 1 #define SDL_AUDIO_DRIVER_DUMMY 1 /* Enable various input drivers */ diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_config_iphoneos.h b/sdl2-sys/SDL2-2.0.10/include/SDL_config_iphoneos.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_config_iphoneos.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_config_iphoneos.h index 56e2b4338e8..a3bf2e8ff5a 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_config_iphoneos.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_config_iphoneos.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_config_macosx.h b/sdl2-sys/SDL2-2.0.10/include/SDL_config_macosx.h similarity index 97% rename from sdl2-sys/SDL2-2.0.9/include/SDL_config_macosx.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_config_macosx.h index 9ebd4a335db..c494b2e318d 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_config_macosx.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_config_macosx.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -218,7 +218,7 @@ #endif /* Enable Vulkan support */ -/* Metal/MoltenVK/Vulkan only supported on 64-bit architectures with 10.11+ */ +/* Metal/Vulkan Portability only supported on 64-bit architectures with 10.11+ */ #if TARGET_CPU_X86_64 && (MAC_OS_X_VERSION_MAX_ALLOWED >= 101100) #define SDL_VIDEO_VULKAN 1 #else diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_config_minimal.h b/sdl2-sys/SDL2-2.0.10/include/SDL_config_minimal.h similarity index 97% rename from sdl2-sys/SDL2-2.0.9/include/SDL_config_minimal.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_config_minimal.h index bf7fc447f9c..20e45b88b0f 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_config_minimal.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_config_minimal.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_config_os2.h b/sdl2-sys/SDL2-2.0.10/include/SDL_config_os2.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_config_os2.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_config_os2.h index d1e4bb24d60..bc75b3a71fc 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_config_os2.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_config_os2.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_config_pandora.h b/sdl2-sys/SDL2-2.0.10/include/SDL_config_pandora.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_config_pandora.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_config_pandora.h index 64111a12066..66ccf8957c8 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_config_pandora.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_config_pandora.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_config_psp.h b/sdl2-sys/SDL2-2.0.10/include/SDL_config_psp.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_config_psp.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_config_psp.h index 2422672a413..dd2d6ecfb7b 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_config_psp.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_config_psp.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_config_windows.h b/sdl2-sys/SDL2-2.0.10/include/SDL_config_windows.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_config_windows.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_config_windows.h index c58be8e72ee..395ad7c266c 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_config_windows.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_config_windows.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_config_winrt.h b/sdl2-sys/SDL2-2.0.10/include/SDL_config_winrt.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_config_winrt.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_config_winrt.h index e3fe55b0738..c825c7f882d 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_config_winrt.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_config_winrt.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_config_wiz.h b/sdl2-sys/SDL2-2.0.10/include/SDL_config_wiz.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_config_wiz.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_config_wiz.h index b6c00d0fec3..c5eb9b34b00 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_config_wiz.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_config_wiz.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.10/include/SDL_copying.h b/sdl2-sys/SDL2-2.0.10/include/SDL_copying.h new file mode 100644 index 00000000000..1ef18cd1e8e --- /dev/null +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_copying.h @@ -0,0 +1,20 @@ +/* + Simple DirectMedia Layer + Copyright (C) 1997-2019 Sam Lantinga + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_cpuinfo.h b/sdl2-sys/SDL2-2.0.10/include/SDL_cpuinfo.h similarity index 56% rename from sdl2-sys/SDL2-2.0.9/include/SDL_cpuinfo.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_cpuinfo.h index ee3a47e8412..296df01aacd 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_cpuinfo.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_cpuinfo.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -41,24 +41,43 @@ #else #include #ifndef _WIN64 +#ifndef __MMX__ #define __MMX__ +#endif +#ifndef __3dNOW__ #define __3dNOW__ #endif +#endif +#ifndef __SSE__ #define __SSE__ +#endif +#ifndef __SSE2__ #define __SSE2__ +#endif #endif /* __clang__ */ #elif defined(__MINGW64_VERSION_MAJOR) #include #else -#ifdef __ALTIVEC__ -#if defined(HAVE_ALTIVEC_H) && !defined(__APPLE_ALTIVEC__) && !defined(SDL_DISABLE_ALTIVEC_H) +/* altivec.h redefining bool causes a number of problems, see bugs 3993 and 4392, so you need to explicitly define SDL_ENABLE_ALTIVEC_H to have it included. */ +#if defined(HAVE_ALTIVEC_H) && defined(__ALTIVEC__) && !defined(__APPLE_ALTIVEC__) && defined(SDL_ENABLE_ALTIVEC_H) #include -#undef pixel -#undef bool #endif -#endif -#if defined(__ARM_NEON__) && !defined(SDL_DISABLE_ARM_NEON_H) -#include +#if !defined(SDL_DISABLE_ARM_NEON_H) +# if defined(__ARM_NEON) +# include +# elif defined(__WINDOWS__) || defined(__WINRT__) +/* Visual Studio doesn't define __ARM_ARCH, but _M_ARM (if set, always 7), and _M_ARM64 (if set, always 1). */ +# if defined(_M_ARM) +# include +# include +# define __ARM_NEON 1 /* Set __ARM_NEON so that it can be used elsewhere, at compile time */ +# endif +# if defined (_M_ARM64) +# include +# include +# define __ARM_NEON 1 /* Set __ARM_NEON so that it can be used elsewhere, at compile time */ +# endif +# endif #endif #if defined(__3dNOW__) && !defined(SDL_DISABLE_MM3DNOW_H) #include @@ -177,6 +196,69 @@ extern DECLSPEC SDL_bool SDLCALL SDL_HasNEON(void); */ extern DECLSPEC int SDLCALL SDL_GetSystemRAM(void); +/** + * \brief Report the alignment this system needs for SIMD allocations. + * + * This will return the minimum number of bytes to which a pointer must be + * aligned to be compatible with SIMD instructions on the current machine. + * For example, if the machine supports SSE only, it will return 16, but if + * it supports AVX-512F, it'll return 64 (etc). This only reports values for + * instruction sets SDL knows about, so if your SDL build doesn't have + * SDL_HasAVX512F(), then it might return 16 for the SSE support it sees and + * not 64 for the AVX-512 instructions that exist but SDL doesn't know about. + * Plan accordingly. + */ +extern DECLSPEC size_t SDLCALL SDL_SIMDGetAlignment(void); + +/** + * \brief Allocate memory in a SIMD-friendly way. + * + * This will allocate a block of memory that is suitable for use with SIMD + * instructions. Specifically, it will be properly aligned and padded for + * the system's supported vector instructions. + * + * The memory returned will be padded such that it is safe to read or write + * an incomplete vector at the end of the memory block. This can be useful + * so you don't have to drop back to a scalar fallback at the end of your + * SIMD processing loop to deal with the final elements without overflowing + * the allocated buffer. + * + * You must free this memory with SDL_FreeSIMD(), not free() or SDL_free() + * or delete[], etc. + * + * Note that SDL will only deal with SIMD instruction sets it is aware of; + * for example, SDL 2.0.8 knows that SSE wants 16-byte vectors + * (SDL_HasSSE()), and AVX2 wants 32 bytes (SDL_HasAVX2()), but doesn't + * know that AVX-512 wants 64. To be clear: if you can't decide to use an + * instruction set with an SDL_Has*() function, don't use that instruction + * set with memory allocated through here. + * + * SDL_AllocSIMD(0) will return a non-NULL pointer, assuming the system isn't + * out of memory. + * + * \param len The length, in bytes, of the block to allocated. The actual + * allocated block might be larger due to padding, etc. + * \return Pointer to newly-allocated block, NULL if out of memory. + * + * \sa SDL_SIMDAlignment + * \sa SDL_SIMDFree + */ +extern DECLSPEC void * SDLCALL SDL_SIMDAlloc(const size_t len); + +/** + * \brief Deallocate memory obtained from SDL_SIMDAlloc + * + * It is not valid to use this function on a pointer from anything but + * SDL_SIMDAlloc(). It can't be used on pointers from malloc, realloc, + * SDL_malloc, memalign, new[], etc. + * + * However, SDL_SIMDFree(NULL) is a legal no-op. + * + * \sa SDL_SIMDAlloc + */ +extern DECLSPEC void SDLCALL SDL_SIMDFree(void *ptr); + +/* vi: set ts=4 sw=4 expandtab: */ /* Ends C function definitions when using C++ */ #ifdef __cplusplus } diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_egl.h b/sdl2-sys/SDL2-2.0.10/include/SDL_egl.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_egl.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_egl.h index d65ed437c33..f50fa5c9b8b 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_egl.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_egl.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_endian.h b/sdl2-sys/SDL2-2.0.10/include/SDL_endian.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_endian.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_endian.h index ed0bf5ba8f9..54d5d486d75 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_endian.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_endian.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_error.h b/sdl2-sys/SDL2-2.0.10/include/SDL_error.h similarity index 97% rename from sdl2-sys/SDL2-2.0.9/include/SDL_error.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_error.h index c0e46298e8f..24416e69354 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_error.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_error.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_events.h b/sdl2-sys/SDL2-2.0.10/include/SDL_events.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_events.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_events.h index af22eb64666..282b9fb766d 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_events.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_events.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -594,6 +594,9 @@ typedef union SDL_Event Uint8 padding[56]; } SDL_Event; +/* Make sure we haven't broken binary compatibility */ +SDL_COMPILE_TIME_ASSERT(SDL_Event, sizeof(SDL_Event) == 56); + /* Function prototypes */ diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_filesystem.h b/sdl2-sys/SDL2-2.0.10/include/SDL_filesystem.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_filesystem.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_filesystem.h index fa6a1fa6e7b..6d97e589637 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_filesystem.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_filesystem.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_gamecontroller.h b/sdl2-sys/SDL2-2.0.10/include/SDL_gamecontroller.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_gamecontroller.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_gamecontroller.h index 6ae9c954289..ebde3871565 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_gamecontroller.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_gamecontroller.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_gesture.h b/sdl2-sys/SDL2-2.0.10/include/SDL_gesture.h similarity index 97% rename from sdl2-sys/SDL2-2.0.9/include/SDL_gesture.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_gesture.h index b223d80d44c..9d25e9c1da5 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_gesture.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_gesture.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_haptic.h b/sdl2-sys/SDL2-2.0.10/include/SDL_haptic.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_haptic.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_haptic.h index 2ea1bfc1602..07562768568 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_haptic.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_haptic.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_hints.h b/sdl2-sys/SDL2-2.0.10/include/SDL_hints.h similarity index 87% rename from sdl2-sys/SDL2-2.0.9/include/SDL_hints.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_hints.h index 4ee72e97d66..8fa0dd66055 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_hints.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_hints.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -315,6 +315,16 @@ extern "C" { */ #define SDL_HINT_TOUCH_MOUSE_EVENTS "SDL_TOUCH_MOUSE_EVENTS" +/** + * \brief A variable controlling whether mouse events should generate synthetic touch events + * + * This variable can be set to the following values: + * "0" - Mouse events will not generate touch events (default for desktop platforms) + * "1" - Mouse events will generate touch events (default for mobile platforms, such as Android and iOS) + */ + +#define SDL_HINT_MOUSE_TOUCH_EVENTS "SDL_MOUSE_TOUCH_EVENTS" + /** * \brief Minimize your SDL_Window if it loses key focus when in fullscreen mode. Defaults to true. * @@ -436,6 +446,16 @@ extern "C" { */ #define SDL_HINT_GAMECONTROLLERCONFIG "SDL_GAMECONTROLLERCONFIG" +/** + * \brief A variable that lets you provide a file with extra gamecontroller db entries. + * + * The file should contain lines of gamecontroller config data, see SDL_gamecontroller.h + * + * This hint must be set before calling SDL_Init(SDL_INIT_GAMECONTROLLER) + * You can update mappings after the system is initialized with SDL_GameControllerMappingForGUID() and SDL_GameControllerAddMapping() + */ +#define SDL_HINT_GAMECONTROLLERCONFIG_FILE "SDL_GAMECONTROLLERCONFIG_FILE" + /** * \brief A variable containing a list of devices to skip when scanning for game controllers. * @@ -836,19 +856,7 @@ extern "C" { */ #define SDL_HINT_IME_INTERNAL_EDITING "SDL_IME_INTERNAL_EDITING" - /** - * \brief A variable to control whether mouse and touch events are to be treated together or separately - * - * The variable can be set to the following values: - * "0" - Mouse events will be handled as touch events, and touch will raise fake mouse - * events. This is the behaviour of SDL <= 2.0.3. (default) - * "1" - Mouse events will be handled separately from pure touch events. - * - * The value of this hint is used at runtime, so it can be changed at any time. - */ -#define SDL_HINT_ANDROID_SEPARATE_MOUSE_AND_TOUCH "SDL_ANDROID_SEPARATE_MOUSE_AND_TOUCH" - - /** +/** * \brief A variable to control whether we trap the Android back button to handle it manually. * This is necessary for the right mouse button to work on some Android devices, or * to be able to trap the back button for use in your code reliably. If set to true, @@ -865,6 +873,17 @@ extern "C" { */ #define SDL_HINT_ANDROID_TRAP_BACK_BUTTON "SDL_ANDROID_TRAP_BACK_BUTTON" +/** + * \brief A variable to control whether the event loop will block itself when the app is paused. + * + * The variable can be set to the following values: + * "0" - Non blocking. + * "1" - Blocking. (default) + * + * The value should be set before SDL is initialized. + */ +#define SDL_HINT_ANDROID_BLOCK_ON_PAUSE "SDL_ANDROID_BLOCK_ON_PAUSE" + /** * \brief A variable to control whether the return key on the soft keyboard * should hide the soft keyboard on Android and iOS. @@ -1043,6 +1062,118 @@ extern "C" { */ #define SDL_HINT_AUDIO_CATEGORY "SDL_AUDIO_CATEGORY" +/** + * \brief A variable controlling whether the 2D render API is compatible or efficient. + * + * This variable can be set to the following values: + * + * "0" - Don't use batching to make rendering more efficient. + * "1" - Use batching, but might cause problems if app makes its own direct OpenGL calls. + * + * Up to SDL 2.0.9, the render API would draw immediately when requested. Now + * it batches up draw requests and sends them all to the GPU only when forced + * to (during SDL_RenderPresent, when changing render targets, by updating a + * texture that the batch needs, etc). This is significantly more efficient, + * but it can cause problems for apps that expect to render on top of the + * render API's output. As such, SDL will disable batching if a specific + * render backend is requested (since this might indicate that the app is + * planning to use the underlying graphics API directly). This hint can + * be used to explicitly request batching in this instance. It is a contract + * that you will either never use the underlying graphics API directly, or + * if you do, you will call SDL_RenderFlush() before you do so any current + * batch goes to the GPU before your work begins. Not following this contract + * will result in undefined behavior. + */ +#define SDL_HINT_RENDER_BATCHING "SDL_RENDER_BATCHING" + + +/** + * \brief A variable controlling whether SDL logs all events pushed onto its internal queue. + * + * This variable can be set to the following values: + * + * "0" - Don't log any events (default) + * "1" - Log all events except mouse and finger motion, which are pretty spammy. + * "2" - Log all events. + * + * This is generally meant to be used to debug SDL itself, but can be useful + * for application developers that need better visibility into what is going + * on in the event queue. Logged events are sent through SDL_Log(), which + * means by default they appear on stdout on most platforms or maybe + * OutputDebugString() on Windows, and can be funneled by the app with + * SDL_LogSetOutputFunction(), etc. + * + * This hint can be toggled on and off at runtime, if you only need to log + * events for a small subset of program execution. + */ +#define SDL_HINT_EVENT_LOGGING "SDL_EVENT_LOGGING" + + + +/** + * \brief Controls how the size of the RIFF chunk affects the loading of a WAVE file. + * + * The size of the RIFF chunk (which includes all the sub-chunks of the WAVE + * file) is not always reliable. In case the size is wrong, it's possible to + * just ignore it and step through the chunks until a fixed limit is reached. + * + * Note that files that have trailing data unrelated to the WAVE file or + * corrupt files may slow down the loading process without a reliable boundary. + * By default, SDL stops after 10000 chunks to prevent wasting time. Use the + * environment variable SDL_WAVE_CHUNK_LIMIT to adjust this value. + * + * This variable can be set to the following values: + * + * "force" - Always use the RIFF chunk size as a boundary for the chunk search + * "ignorezero" - Like "force", but a zero size searches up to 4 GiB (default) + * "ignore" - Ignore the RIFF chunk size and always search up to 4 GiB + * "maximum" - Search for chunks until the end of file (not recommended) + */ +#define SDL_HINT_WAVE_RIFF_CHUNK_SIZE "SDL_WAVE_RIFF_CHUNK_SIZE" + +/** + * \brief Controls how a truncated WAVE file is handled. + * + * A WAVE file is considered truncated if any of the chunks are incomplete or + * the data chunk size is not a multiple of the block size. By default, SDL + * decodes until the first incomplete block, as most applications seem to do. + * + * This variable can be set to the following values: + * + * "verystrict" - Raise an error if the file is truncated + * "strict" - Like "verystrict", but the size of the RIFF chunk is ignored + * "dropframe" - Decode until the first incomplete sample frame + * "dropblock" - Decode until the first incomplete block (default) + */ +#define SDL_HINT_WAVE_TRUNCATION "SDL_WAVE_TRUNCATION" + +/** + * \brief Controls how the fact chunk affects the loading of a WAVE file. + * + * The fact chunk stores information about the number of samples of a WAVE + * file. The Standards Update from Microsoft notes that this value can be used + * to 'determine the length of the data in seconds'. This is especially useful + * for compressed formats (for which this is a mandatory chunk) if they produce + * multiple sample frames per block and truncating the block is not allowed. + * The fact chunk can exactly specify how many sample frames there should be + * in this case. + * + * Unfortunately, most application seem to ignore the fact chunk and so SDL + * ignores it by default as well. + * + * This variable can be set to the following values: + * + * "truncate" - Use the number of samples to truncate the wave data if + * the fact chunk is present and valid + * "strict" - Like "truncate", but raise an error if the fact chunk + * is invalid, not present for non-PCM formats, or if the + * data chunk doesn't have that many samples + * "ignorezero" - Like "truncate", but ignore fact chunk if the number of + * samples is zero + * "ignore" - Ignore fact chunk entirely (default) + */ +#define SDL_HINT_WAVE_FACT_CHUNK "SDL_WAVE_FACT_CHUNK" + /** * \brief An enumeration of hint priorities */ diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_joystick.h b/sdl2-sys/SDL2-2.0.10/include/SDL_joystick.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_joystick.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_joystick.h index 6e05a9c2056..3a4c5d177f6 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_joystick.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_joystick.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_keyboard.h b/sdl2-sys/SDL2-2.0.10/include/SDL_keyboard.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_keyboard.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_keyboard.h index 87482317161..4b2a055d846 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_keyboard.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_keyboard.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_keycode.h b/sdl2-sys/SDL2-2.0.10/include/SDL_keycode.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_keycode.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_keycode.h index d7d5b1dbcde..3bceb418adb 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_keycode.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_keycode.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_loadso.h b/sdl2-sys/SDL2-2.0.10/include/SDL_loadso.h similarity index 97% rename from sdl2-sys/SDL2-2.0.9/include/SDL_loadso.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_loadso.h index da56fb45277..793ba535860 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_loadso.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_loadso.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_log.h b/sdl2-sys/SDL2-2.0.10/include/SDL_log.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_log.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_log.h index e12b6588601..40f768d57c7 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_log.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_log.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_main.h b/sdl2-sys/SDL2-2.0.10/include/SDL_main.h similarity index 81% rename from sdl2-sys/SDL2-2.0.9/include/SDL_main.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_main.h index 98558217fc2..623f2d005bf 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_main.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_main.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -55,6 +55,10 @@ /* On iOS SDL provides a main function that creates an application delegate and starts the iOS application run loop. + If you link with SDL dynamically on iOS, the main function can't be in a + shared library, so you need to link with libSDLmain.a, which includes a + stub main function that calls into the shared library to start execution. + See src/video/uikit/SDL_uikitappdelegate.m for more details. */ #define SDL_MAIN_NEEDED @@ -82,12 +86,6 @@ #endif #endif /* SDL_MAIN_HANDLED */ -#ifdef __cplusplus -#define C_LINKAGE "C" -#else -#define C_LINKAGE -#endif /* __cplusplus */ - #ifndef SDLMAIN_DECLSPEC #define SDLMAIN_DECLSPEC #endif @@ -111,17 +109,18 @@ #define main SDL_main #endif -/** - * The prototype for the application's main() function - */ -extern C_LINKAGE SDLMAIN_DECLSPEC int SDL_main(int argc, char *argv[]); - - #include "begin_code.h" #ifdef __cplusplus extern "C" { #endif +/** + * The prototype for the application's main() function + */ +typedef int (*SDL_main_func)(int argc, char *argv[]); +extern SDLMAIN_DECLSPEC int SDL_main(int argc, char *argv[]); + + /** * This is called by the real SDL main function to let the rest of the * library know that initialization was done properly. @@ -136,8 +135,7 @@ extern DECLSPEC void SDLCALL SDL_SetMainReady(void); /** * This can be called to set the application class at startup */ -extern DECLSPEC int SDLCALL SDL_RegisterApp(char *name, Uint32 style, - void *hInst); +extern DECLSPEC int SDLCALL SDL_RegisterApp(char *name, Uint32 style, void *hInst); extern DECLSPEC void SDLCALL SDL_UnregisterApp(void); #endif /* __WIN32__ */ @@ -153,10 +151,24 @@ extern DECLSPEC void SDLCALL SDL_UnregisterApp(void); * \return 0 on success, -1 on failure. On failure, use SDL_GetError to retrieve more * information on the failure. */ -extern DECLSPEC int SDLCALL SDL_WinRTRunApp(int (*mainFunction)(int, char **), void * reserved); +extern DECLSPEC int SDLCALL SDL_WinRTRunApp(SDL_main_func mainFunction, void * reserved); #endif /* __WINRT__ */ +#if defined(__IPHONEOS__) + +/** + * \brief Initializes and launches an SDL application. + * + * \param argc The argc parameter from the application's main() function + * \param argv The argv parameter from the application's main() function + * \param mainFunction The SDL app's C-style main(). + * \return the return value from mainFunction + */ +extern DECLSPEC int SDLCALL SDL_UIKitRunApp(int argc, char *argv[], SDL_main_func mainFunction); + +#endif /* __IPHONEOS__ */ + #ifdef __cplusplus } diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_messagebox.h b/sdl2-sys/SDL2-2.0.10/include/SDL_messagebox.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_messagebox.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_messagebox.h index b7be59d88f5..e34b5547750 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_messagebox.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_messagebox.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_mouse.h b/sdl2-sys/SDL2-2.0.10/include/SDL_mouse.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_mouse.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_mouse.h index d3c9f6156cb..277559d23ae 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_mouse.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_mouse.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_mutex.h b/sdl2-sys/SDL2-2.0.10/include/SDL_mutex.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_mutex.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_mutex.h index ba4247ced81..970e7871395 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_mutex.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_mutex.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_name.h b/sdl2-sys/SDL2-2.0.10/include/SDL_name.h similarity index 94% rename from sdl2-sys/SDL2-2.0.9/include/SDL_name.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_name.h index ecd863f4ca8..690a8199b8a 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_name.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_name.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_opengl.h b/sdl2-sys/SDL2-2.0.10/include/SDL_opengl.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_opengl.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_opengl.h index 253d9c93a96..6685be73ece 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_opengl.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_opengl.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_opengl_glext.h b/sdl2-sys/SDL2-2.0.10/include/SDL_opengl_glext.h similarity index 100% rename from sdl2-sys/SDL2-2.0.9/include/SDL_opengl_glext.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_opengl_glext.h diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_opengles.h b/sdl2-sys/SDL2-2.0.10/include/SDL_opengles.h similarity index 95% rename from sdl2-sys/SDL2-2.0.9/include/SDL_opengles.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_opengles.h index 18dd984b3ed..1e0660c3db7 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_opengles.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_opengles.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_opengles2.h b/sdl2-sys/SDL2-2.0.10/include/SDL_opengles2.h similarity index 96% rename from sdl2-sys/SDL2-2.0.9/include/SDL_opengles2.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_opengles2.h index 6ccecf21657..df29d3840be 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_opengles2.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_opengles2.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_opengles2_gl2.h b/sdl2-sys/SDL2-2.0.10/include/SDL_opengles2_gl2.h similarity index 100% rename from sdl2-sys/SDL2-2.0.9/include/SDL_opengles2_gl2.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_opengles2_gl2.h diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_opengles2_gl2ext.h b/sdl2-sys/SDL2-2.0.10/include/SDL_opengles2_gl2ext.h similarity index 100% rename from sdl2-sys/SDL2-2.0.9/include/SDL_opengles2_gl2ext.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_opengles2_gl2ext.h diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_opengles2_gl2platform.h b/sdl2-sys/SDL2-2.0.10/include/SDL_opengles2_gl2platform.h similarity index 100% rename from sdl2-sys/SDL2-2.0.9/include/SDL_opengles2_gl2platform.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_opengles2_gl2platform.h diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_opengles2_khrplatform.h b/sdl2-sys/SDL2-2.0.10/include/SDL_opengles2_khrplatform.h similarity index 100% rename from sdl2-sys/SDL2-2.0.9/include/SDL_opengles2_khrplatform.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_opengles2_khrplatform.h diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_pixels.h b/sdl2-sys/SDL2-2.0.10/include/SDL_pixels.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_pixels.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_pixels.h index 0b4364b1852..dcb7a980d8f 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_pixels.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_pixels.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -168,7 +168,7 @@ enum ((format) && (SDL_PIXELFLAG(format) != 1)) /* Note: If you modify this list, update SDL_GetPixelFormatName() */ -enum +typedef enum { SDL_PIXELFORMAT_UNKNOWN, SDL_PIXELFORMAT_INDEX1LSB = @@ -290,7 +290,7 @@ enum SDL_DEFINE_PIXELFOURCC('N', 'V', '2', '1'), SDL_PIXELFORMAT_EXTERNAL_OES = /**< Android video texture format */ SDL_DEFINE_PIXELFOURCC('O', 'E', 'S', ' ') -}; +} SDL_PixelFormatEnum; typedef struct SDL_Color { diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_platform.h b/sdl2-sys/SDL2-2.0.10/include/SDL_platform.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_platform.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_platform.h index 7dea4ce940f..c2cbc6b4e0f 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_platform.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_platform.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_power.h b/sdl2-sys/SDL2-2.0.10/include/SDL_power.h similarity index 97% rename from sdl2-sys/SDL2-2.0.9/include/SDL_power.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_power.h index a4fe8a9359c..4831cb77ed5 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_power.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_power.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_quit.h b/sdl2-sys/SDL2-2.0.10/include/SDL_quit.h similarity index 97% rename from sdl2-sys/SDL2-2.0.9/include/SDL_quit.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_quit.h index fea56a8d88b..c979983cb02 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_quit.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_quit.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_rect.h b/sdl2-sys/SDL2-2.0.10/include/SDL_rect.h similarity index 88% rename from sdl2-sys/SDL2-2.0.9/include/SDL_rect.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_rect.h index 543bb618694..71a4115173a 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_rect.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_rect.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -40,7 +40,7 @@ extern "C" { #endif /** - * \brief The structure that defines a point + * \brief The structure that defines a point (integer) * * \sa SDL_EnclosePoints * \sa SDL_PointInRect @@ -52,7 +52,20 @@ typedef struct SDL_Point } SDL_Point; /** - * \brief A rectangle, with the origin at the upper left. + * \brief The structure that defines a point (floating point) + * + * \sa SDL_EnclosePoints + * \sa SDL_PointInRect + */ +typedef struct SDL_FPoint +{ + float x; + float y; +} SDL_FPoint; + + +/** + * \brief A rectangle, with the origin at the upper left (integer). * * \sa SDL_RectEmpty * \sa SDL_RectEquals @@ -67,6 +80,19 @@ typedef struct SDL_Rect int w, h; } SDL_Rect; + +/** + * \brief A rectangle, with the origin at the upper left (floating point). + */ +typedef struct SDL_FRect +{ + float x; + float y; + float w; + float h; +} SDL_FRect; + + /** * \brief Returns true if point resides inside a rectangle. */ diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_render.h b/sdl2-sys/SDL2-2.0.10/include/SDL_render.h similarity index 82% rename from sdl2-sys/SDL2-2.0.9/include/SDL_render.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_render.h index d336192974f..096b4a57710 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_render.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_render.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -835,6 +835,148 @@ extern DECLSPEC int SDLCALL SDL_RenderCopyEx(SDL_Renderer * renderer, const SDL_Point *center, const SDL_RendererFlip flip); + +/** + * \brief Draw a point on the current rendering target. + * + * \param renderer The renderer which should draw a point. + * \param x The x coordinate of the point. + * \param y The y coordinate of the point. + * + * \return 0 on success, or -1 on error + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawPointF(SDL_Renderer * renderer, + float x, float y); + +/** + * \brief Draw multiple points on the current rendering target. + * + * \param renderer The renderer which should draw multiple points. + * \param points The points to draw + * \param count The number of points to draw + * + * \return 0 on success, or -1 on error + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawPointsF(SDL_Renderer * renderer, + const SDL_FPoint * points, + int count); + +/** + * \brief Draw a line on the current rendering target. + * + * \param renderer The renderer which should draw a line. + * \param x1 The x coordinate of the start point. + * \param y1 The y coordinate of the start point. + * \param x2 The x coordinate of the end point. + * \param y2 The y coordinate of the end point. + * + * \return 0 on success, or -1 on error + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawLineF(SDL_Renderer * renderer, + float x1, float y1, float x2, float y2); + +/** + * \brief Draw a series of connected lines on the current rendering target. + * + * \param renderer The renderer which should draw multiple lines. + * \param points The points along the lines + * \param count The number of points, drawing count-1 lines + * + * \return 0 on success, or -1 on error + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawLinesF(SDL_Renderer * renderer, + const SDL_FPoint * points, + int count); + +/** + * \brief Draw a rectangle on the current rendering target. + * + * \param renderer The renderer which should draw a rectangle. + * \param rect A pointer to the destination rectangle, or NULL to outline the entire rendering target. + * + * \return 0 on success, or -1 on error + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawRectF(SDL_Renderer * renderer, + const SDL_FRect * rect); + +/** + * \brief Draw some number of rectangles on the current rendering target. + * + * \param renderer The renderer which should draw multiple rectangles. + * \param rects A pointer to an array of destination rectangles. + * \param count The number of rectangles. + * + * \return 0 on success, or -1 on error + */ +extern DECLSPEC int SDLCALL SDL_RenderDrawRectsF(SDL_Renderer * renderer, + const SDL_FRect * rects, + int count); + +/** + * \brief Fill a rectangle on the current rendering target with the drawing color. + * + * \param renderer The renderer which should fill a rectangle. + * \param rect A pointer to the destination rectangle, or NULL for the entire + * rendering target. + * + * \return 0 on success, or -1 on error + */ +extern DECLSPEC int SDLCALL SDL_RenderFillRectF(SDL_Renderer * renderer, + const SDL_FRect * rect); + +/** + * \brief Fill some number of rectangles on the current rendering target with the drawing color. + * + * \param renderer The renderer which should fill multiple rectangles. + * \param rects A pointer to an array of destination rectangles. + * \param count The number of rectangles. + * + * \return 0 on success, or -1 on error + */ +extern DECLSPEC int SDLCALL SDL_RenderFillRectsF(SDL_Renderer * renderer, + const SDL_FRect * rects, + int count); + +/** + * \brief Copy a portion of the texture to the current rendering target. + * + * \param renderer The renderer which should copy parts of a texture. + * \param texture The source texture. + * \param srcrect A pointer to the source rectangle, or NULL for the entire + * texture. + * \param dstrect A pointer to the destination rectangle, or NULL for the + * entire rendering target. + * + * \return 0 on success, or -1 on error + */ +extern DECLSPEC int SDLCALL SDL_RenderCopyF(SDL_Renderer * renderer, + SDL_Texture * texture, + const SDL_Rect * srcrect, + const SDL_FRect * dstrect); + +/** + * \brief Copy a portion of the source texture to the current rendering target, rotating it by angle around the given center + * + * \param renderer The renderer which should copy parts of a texture. + * \param texture The source texture. + * \param srcrect A pointer to the source rectangle, or NULL for the entire + * texture. + * \param dstrect A pointer to the destination rectangle, or NULL for the + * entire rendering target. + * \param angle An angle in degrees that indicates the rotation that will be applied to dstrect, rotating it in a clockwise direction + * \param center A pointer to a point indicating the point around which dstrect will be rotated (if NULL, rotation will be done around dstrect.w/2, dstrect.h/2). + * \param flip An SDL_RendererFlip value stating which flipping actions should be performed on the texture + * + * \return 0 on success, or -1 on error + */ +extern DECLSPEC int SDLCALL SDL_RenderCopyExF(SDL_Renderer * renderer, + SDL_Texture * texture, + const SDL_Rect * srcrect, + const SDL_FRect * dstrect, + const double angle, + const SDL_FPoint *center, + const SDL_RendererFlip flip); + /** * \brief Read pixels from the current rendering target. * @@ -876,6 +1018,31 @@ extern DECLSPEC void SDLCALL SDL_DestroyTexture(SDL_Texture * texture); */ extern DECLSPEC void SDLCALL SDL_DestroyRenderer(SDL_Renderer * renderer); +/** + * \brief Force the rendering context to flush any pending commands to the + * underlying rendering API. + * + * You do not need to (and in fact, shouldn't) call this function unless + * you are planning to call into OpenGL/Direct3D/Metal/whatever directly + * in addition to using an SDL_Renderer. + * + * This is for a very-specific case: if you are using SDL's render API, + * you asked for a specific renderer backend (OpenGL, Direct3D, etc), + * you set SDL_HINT_RENDER_BATCHING to "1", and you plan to make + * OpenGL/D3D/whatever calls in addition to SDL render API calls. If all of + * this applies, you should call SDL_RenderFlush() between calls to SDL's + * render API and the low-level API you're using in cooperation. + * + * In all other cases, you can ignore this function. This is only here to + * get maximum performance out of a specific situation. In all other cases, + * SDL will do the right thing, perhaps at a performance loss. + * + * This function is first available in SDL 2.0.10, and is not needed in + * 2.0.9 and earlier, as earlier versions did not queue rendering commands + * at all, instead flushing them to the OS immediately. + */ +extern DECLSPEC int SDLCALL SDL_RenderFlush(SDL_Renderer * renderer); + /** * \brief Bind the texture to the current OpenGL/ES/ES2 context for use with diff --git a/sdl2-sys/SDL2-2.0.10/include/SDL_revision.h b/sdl2-sys/SDL2-2.0.10/include/SDL_revision.h new file mode 100644 index 00000000000..3b3fc85ea84 --- /dev/null +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_revision.h @@ -0,0 +1,2 @@ +#define SDL_REVISION "hg-12952:bc90ce38f1e2" +#define SDL_REVISION_NUMBER 12952 diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_rwops.h b/sdl2-sys/SDL2-2.0.10/include/SDL_rwops.h similarity index 78% rename from sdl2-sys/SDL2-2.0.9/include/SDL_rwops.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_rwops.h index 0960699d485..f66119fb022 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_rwops.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_rwops.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -176,19 +176,48 @@ extern DECLSPEC void SDLCALL SDL_FreeRW(SDL_RWops * area); #define RW_SEEK_END 2 /**< Seek relative to the end of data */ /** - * \name Read/write macros + * Return the size of the file in this rwops, or -1 if unknown + */ +extern DECLSPEC Sint64 SDLCALL SDL_RWsize(SDL_RWops *context); + +/** + * Seek to \c offset relative to \c whence, one of stdio's whence values: + * RW_SEEK_SET, RW_SEEK_CUR, RW_SEEK_END * - * Macros to easily read and write from an SDL_RWops structure. + * \return the final offset in the data stream, or -1 on error. */ -/* @{ */ -#define SDL_RWsize(ctx) (ctx)->size(ctx) -#define SDL_RWseek(ctx, offset, whence) (ctx)->seek(ctx, offset, whence) -#define SDL_RWtell(ctx) (ctx)->seek(ctx, 0, RW_SEEK_CUR) -#define SDL_RWread(ctx, ptr, size, n) (ctx)->read(ctx, ptr, size, n) -#define SDL_RWwrite(ctx, ptr, size, n) (ctx)->write(ctx, ptr, size, n) -#define SDL_RWclose(ctx) (ctx)->close(ctx) -/* @} *//* Read/write macros */ +extern DECLSPEC Sint64 SDLCALL SDL_RWseek(SDL_RWops *context, + Sint64 offset, int whence); + +/** + * Return the current offset in the data stream, or -1 on error. + */ +extern DECLSPEC Sint64 SDLCALL SDL_RWtell(SDL_RWops *context); +/** + * Read up to \c maxnum objects each of size \c size from the data + * stream to the area pointed at by \c ptr. + * + * \return the number of objects read, or 0 at error or end of file. + */ +extern DECLSPEC size_t SDLCALL SDL_RWread(SDL_RWops *context, + void *ptr, size_t size, size_t maxnum); + +/** + * Write exactly \c num objects each of size \c size from the area + * pointed at by \c ptr to data stream. + * + * \return the number of objects written, or 0 at error or end of file. + */ +extern DECLSPEC size_t SDLCALL SDL_RWwrite(SDL_RWops *context, + const void *ptr, size_t size, size_t num); + +/** + * Close and free an allocated SDL_RWops structure. + * + * \return 0 if successful or -1 on write error when flushing data. + */ +extern DECLSPEC int SDLCALL SDL_RWclose(SDL_RWops *context); /** * Load all the data from an SDL data stream. @@ -209,9 +238,17 @@ extern DECLSPEC void *SDLCALL SDL_LoadFile_RW(SDL_RWops * src, size_t *datasize, /** * Load an entire file. * - * Convenience macro. + * The data is allocated with a zero byte at the end (null terminated) + * + * If \c datasize is not NULL, it is filled with the size of the data read. + * + * If \c freesrc is non-zero, the stream will be closed after being read. + * + * The data should be freed with SDL_free(). + * + * \return the data, or NULL if there was an error. */ -#define SDL_LoadFile(file, datasize) SDL_LoadFile_RW(SDL_RWFromFile(file, "rb"), datasize, 1) +extern DECLSPEC void *SDLCALL SDL_LoadFile(const char *file, size_t *datasize); /** * \name Read endian functions diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_scancode.h b/sdl2-sys/SDL2-2.0.10/include/SDL_scancode.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_scancode.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_scancode.h index 63871aa3b10..a50305f5509 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_scancode.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_scancode.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -38,7 +38,7 @@ * SDL_Event structure. * * The values in this enumeration are based on the USB usage page standard: - * http://www.usb.org/developers/hidpage/Hut1_12v2.pdf + * https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf */ typedef enum { diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_sensor.h b/sdl2-sys/SDL2-2.0.10/include/SDL_sensor.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_sensor.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_sensor.h index ac163a8cd1b..966adbf2137 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_sensor.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_sensor.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -26,8 +26,8 @@ * */ -#ifndef _SDL_sensor_h -#define _SDL_sensor_h +#ifndef SDL_sensor_h_ +#define SDL_sensor_h_ #include "SDL_stdinc.h" #include "SDL_error.h" @@ -246,6 +246,6 @@ extern DECLSPEC void SDLCALL SDL_SensorUpdate(void); #endif #include "close_code.h" -#endif /* _SDL_sensor_h */ +#endif /* SDL_sensor_h_ */ /* vi: set ts=4 sw=4 expandtab: */ diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_shape.h b/sdl2-sys/SDL2-2.0.10/include/SDL_shape.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_shape.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_shape.h index 40a6baaaec3..2ab43fcdc68 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_shape.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_shape.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_stdinc.h b/sdl2-sys/SDL2-2.0.10/include/SDL_stdinc.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_stdinc.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_stdinc.h index e373bc380f6..28bb7b9619d 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_stdinc.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_stdinc.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_surface.h b/sdl2-sys/SDL2-2.0.10/include/SDL_surface.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_surface.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_surface.h index 730d49fc805..51a1283003e 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_surface.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_surface.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -53,6 +53,7 @@ extern "C" { #define SDL_PREALLOC 0x00000001 /**< Surface uses preallocated memory */ #define SDL_RLEACCEL 0x00000002 /**< Surface is RLE encoded */ #define SDL_DONTFREE 0x00000004 /**< Surface is referenced internally */ +#define SDL_SIMD_ALIGNED 0x00000008 /**< Surface uses aligned memory */ /* @} *//* Surface flags */ /** diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_system.h b/sdl2-sys/SDL2-2.0.10/include/SDL_system.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_system.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_system.h index 4dc372d6b14..3b084076920 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_system.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_system.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_syswm.h b/sdl2-sys/SDL2-2.0.10/include/SDL_syswm.h similarity index 94% rename from sdl2-sys/SDL2-2.0.9/include/SDL_syswm.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_syswm.h index f1c4021cc8b..7aa8c6869bf 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_syswm.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_syswm.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -34,16 +34,16 @@ #include "SDL_version.h" /** - * \file SDL_syswm.h + * \brief SDL_syswm.h * * Your application has access to a special type of event ::SDL_SYSWMEVENT, * which contains window-manager specific information and arrives whenever * an unhandled window event occurs. This event is ignored by default, but * you can enable it with SDL_EventState(). */ -#ifdef SDL_PROTOTYPES_ONLY struct SDL_SysWMinfo; -#else + +#if !defined(SDL_PROTOTYPES_ONLY) #if defined(SDL_VIDEO_DRIVER_WINDOWS) #ifndef WIN32_LEAN_AND_MEAN @@ -103,6 +103,8 @@ typedef void *EGLSurface; #if defined(SDL_VIDEO_DRIVER_VIVANTE) #include "SDL_egl.h" #endif +#endif /* SDL_PROTOTYPES_ONLY */ + #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ @@ -110,6 +112,7 @@ typedef void *EGLSurface; extern "C" { #endif +#if !defined(SDL_PROTOTYPES_ONLY) /** * These are the various supported windowing subsystems */ @@ -122,7 +125,7 @@ typedef enum SDL_SYSWM_COCOA, SDL_SYSWM_UIKIT, SDL_SYSWM_WAYLAND, - SDL_SYSWM_MIR, + SDL_SYSWM_MIR, /* no longer available, left for API/ABI compatibility. Remove in 2.1! */ SDL_SYSWM_WINRT, SDL_SYSWM_ANDROID, SDL_SYSWM_VIVANTE, @@ -257,11 +260,11 @@ struct SDL_SysWMinfo struct wl_shell_surface *shell_surface; /**< Wayland shell_surface (window manager handle) */ } wl; #endif -#if defined(SDL_VIDEO_DRIVER_MIR) +#if defined(SDL_VIDEO_DRIVER_MIR) /* no longer available, left for API/ABI compatibility. Remove in 2.1! */ struct { - struct MirConnection *connection; /**< Mir display server connection */ - struct MirSurface *surface; /**< Mir surface */ + void *connection; /**< Mir display server connection */ + void *surface; /**< Mir surface */ } mir; #endif diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_test.h b/sdl2-sys/SDL2-2.0.10/include/SDL_test.h similarity index 97% rename from sdl2-sys/SDL2-2.0.9/include/SDL_test.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_test.h index 6cc373bf809..17a33dc2cf9 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_test.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_test.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_test_assert.h b/sdl2-sys/SDL2-2.0.10/include/SDL_test_assert.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_test_assert.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_test_assert.h index 1788d7a2069..b3ebb62fbd2 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_test_assert.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_test_assert.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_test_common.h b/sdl2-sys/SDL2-2.0.10/include/SDL_test_common.h similarity index 81% rename from sdl2-sys/SDL2-2.0.9/include/SDL_test_common.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_test_common.h index be2e6b2aab4..c34d0d10307 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_test_common.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_test_common.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -140,14 +140,20 @@ SDLTest_CommonState *SDLTest_CommonCreateState(char **argv, Uint32 flags); */ int SDLTest_CommonArg(SDLTest_CommonState * state, int index); + /** - * \brief Returns common usage information + * \brief Logs command line usage info. * - * \param state The common state describing the test window to create. + * This logs the appropriate command line options for the subsystems in use + * plus other common options, and then any application-specific options. + * This uses the SDL_Log() function and splits up output to be friendly to + * 80-character-wide terminals. * - * \returns String with usage information + * \param state The common state describing the test window for the app. + * \param argv0 argv[0], as passed to main/SDL_main. + * \param options an array of strings for application specific options. The last element of the array should be NULL. */ -const char *SDLTest_CommonUsage(SDLTest_CommonState * state); +void SDLTest_CommonLogUsage(SDLTest_CommonState * state, const char *argv0, const char **options); /** * \brief Open test window. @@ -158,6 +164,17 @@ const char *SDLTest_CommonUsage(SDLTest_CommonState * state); */ SDL_bool SDLTest_CommonInit(SDLTest_CommonState * state); +/** + * \brief Easy argument handling when test app doesn't need any custom args. + * + * \param state The common state describing the test window to create. + * \param argc argc, as supplied to SDL_main + * \param argv argv, as supplied to SDL_main + * + * \returns False if app should quit, true otherwise. + */ +SDL_bool SDLTest_CommonDefaultArgs(SDLTest_CommonState * state, const int argc, char **argv); + /** * \brief Common event handler for test windows. * diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_test_compare.h b/sdl2-sys/SDL2-2.0.10/include/SDL_test_compare.h similarity index 97% rename from sdl2-sys/SDL2-2.0.9/include/SDL_test_compare.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_test_compare.h index c22e447d8ae..1f751c8b9c4 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_test_compare.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_test_compare.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_test_crc32.h b/sdl2-sys/SDL2-2.0.10/include/SDL_test_crc32.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_test_crc32.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_test_crc32.h index 3d235d07400..e615d8929cc 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_test_crc32.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_test_crc32.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_test_font.h b/sdl2-sys/SDL2-2.0.10/include/SDL_test_font.h similarity index 97% rename from sdl2-sys/SDL2-2.0.9/include/SDL_test_font.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_test_font.h index 59cbdcad6bc..8fa078440aa 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_test_font.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_test_font.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_test_fuzzer.h b/sdl2-sys/SDL2-2.0.10/include/SDL_test_fuzzer.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_test_fuzzer.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_test_fuzzer.h index 8fcb9ebbfa1..7259685a9d4 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_test_fuzzer.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_test_fuzzer.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_test_harness.h b/sdl2-sys/SDL2-2.0.10/include/SDL_test_harness.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_test_harness.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_test_harness.h index 8641e0a7e3a..f5ae92ceb73 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_test_harness.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_test_harness.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_test_images.h b/sdl2-sys/SDL2-2.0.10/include/SDL_test_images.h similarity index 97% rename from sdl2-sys/SDL2-2.0.9/include/SDL_test_images.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_test_images.h index 9c4dd5b8295..b8934812f94 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_test_images.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_test_images.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_test_log.h b/sdl2-sys/SDL2-2.0.10/include/SDL_test_log.h similarity index 96% rename from sdl2-sys/SDL2-2.0.9/include/SDL_test_log.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_test_log.h index ebd44fb5021..01d0fedac15 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_test_log.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_test_log.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_test_md5.h b/sdl2-sys/SDL2-2.0.10/include/SDL_test_md5.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_test_md5.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_test_md5.h index 0e4105768fd..2bfd7dff970 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_test_md5.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_test_md5.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_test_memory.h b/sdl2-sys/SDL2-2.0.10/include/SDL_test_memory.h similarity index 92% rename from sdl2-sys/SDL2-2.0.9/include/SDL_test_memory.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_test_memory.h index 4827ae6f2c3..5d4d39ea5d9 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_test_memory.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_test_memory.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -42,14 +42,14 @@ extern "C" { * * \note This should be called before any other SDL functions for complete tracking coverage */ -int SDLTest_TrackAllocations(); +int SDLTest_TrackAllocations(void); /** * \brief Print a log of any outstanding allocations * * \note This can be called after SDL_Quit() */ -void SDLTest_LogAllocations(); +void SDLTest_LogAllocations(void); /* Ends C function definitions when using C++ */ diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_test_random.h b/sdl2-sys/SDL2-2.0.10/include/SDL_test_random.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_test_random.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_test_random.h index 0eb414ff2e4..71e9c70b6ac 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_test_random.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_test_random.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_thread.h b/sdl2-sys/SDL2-2.0.10/include/SDL_thread.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_thread.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_thread.h index 554dd0b61d0..f78b1145d00 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_thread.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_thread.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_timer.h b/sdl2-sys/SDL2-2.0.10/include/SDL_timer.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_timer.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_timer.h index 5600618ff4f..2a47b043aad 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_timer.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_timer.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_touch.h b/sdl2-sys/SDL2-2.0.10/include/SDL_touch.h similarity index 77% rename from sdl2-sys/SDL2-2.0.9/include/SDL_touch.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_touch.h index f4075e79a5b..99dbcb8c3fa 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_touch.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_touch.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -41,6 +41,14 @@ extern "C" { typedef Sint64 SDL_TouchID; typedef Sint64 SDL_FingerID; +typedef enum +{ + SDL_TOUCH_DEVICE_INVALID = -1, + SDL_TOUCH_DEVICE_DIRECT, /* touch screen with window-relative coordinates */ + SDL_TOUCH_DEVICE_INDIRECT_ABSOLUTE, /* trackpad with absolute device coordinates */ + SDL_TOUCH_DEVICE_INDIRECT_RELATIVE /* trackpad with screen cursor-relative coordinates */ +} SDL_TouchDeviceType; + typedef struct SDL_Finger { SDL_FingerID id; @@ -52,6 +60,9 @@ typedef struct SDL_Finger /* Used as the device ID for mouse events simulated with touch input */ #define SDL_TOUCH_MOUSEID ((Uint32)-1) +/* Used as the SDL_TouchID for touch events simulated with mouse input */ +#define SDL_MOUSE_TOUCHID ((Sint64)-1) + /* Function prototypes */ @@ -65,6 +76,11 @@ extern DECLSPEC int SDLCALL SDL_GetNumTouchDevices(void); */ extern DECLSPEC SDL_TouchID SDLCALL SDL_GetTouchDevice(int index); +/** + * \brief Get the type of the given touch device. + */ +extern DECLSPEC SDL_TouchDeviceType SDLCALL SDL_GetTouchDeviceType(SDL_TouchID touchID); + /** * \brief Get the number of active fingers for a given touch device. */ diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_types.h b/sdl2-sys/SDL2-2.0.10/include/SDL_types.h similarity index 94% rename from sdl2-sys/SDL2-2.0.9/include/SDL_types.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_types.h index 4ac248c8c57..9c3e9896f06 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_types.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_types.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_version.h b/sdl2-sys/SDL2-2.0.10/include/SDL_version.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_version.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_version.h index 31443e149ad..6c7499d320a 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_version.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_version.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -59,7 +59,7 @@ typedef struct SDL_version */ #define SDL_MAJOR_VERSION 2 #define SDL_MINOR_VERSION 0 -#define SDL_PATCHLEVEL 9 +#define SDL_PATCHLEVEL 10 /** * \brief Macro to determine SDL version program was compiled against. diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_video.h b/sdl2-sys/SDL2-2.0.10/include/SDL_video.h similarity index 99% rename from sdl2-sys/SDL2-2.0.9/include/SDL_video.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_video.h index 461f1380510..352afd436d8 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_video.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_video.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_vulkan.h b/sdl2-sys/SDL2-2.0.10/include/SDL_vulkan.h similarity index 98% rename from sdl2-sys/SDL2-2.0.9/include/SDL_vulkan.h rename to sdl2-sys/SDL2-2.0.10/include/SDL_vulkan.h index 972cca4d7c2..d69a436b3ea 100644 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_vulkan.h +++ b/sdl2-sys/SDL2-2.0.10/include/SDL_vulkan.h @@ -98,8 +98,8 @@ typedef VkSurfaceKHR SDL_vulkanSurface; /* for compatibility with Tizen */ * applications to link with libvulkan (and historically MoltenVK was * provided as a static library). If it is not found then, on macOS, SDL * will attempt to load \c vulkan.framework/vulkan, \c libvulkan.1.dylib, - * \c MoltenVK.framework/MoltenVK and \c libMoltenVK.dylib in that order. - * On iOS SDL will attempt to load \c libMoltenVK.dylib. Applications + * followed by \c libvulkan.dylib, in that order. + * On iOS SDL will attempt to load \c libvulkan.dylib only. Applications * using a dynamic framework or .dylib must ensure it is included in its * application bundle. * @@ -153,7 +153,7 @@ extern DECLSPEC void SDLCALL SDL_Vulkan_UnloadLibrary(void); * is smaller than the number of required extensions, \c SDL_FALSE will be * returned instead of \c SDL_TRUE, to indicate that not all the required * extensions were returned. - * + * * \note If \c window is not NULL, it will be checked against its creation * flags to ensure that the Vulkan flag is present. This parameter * will be removed in a future major release. diff --git a/sdl2-sys/SDL2-2.0.9/include/begin_code.h b/sdl2-sys/SDL2-2.0.10/include/begin_code.h similarity index 97% rename from sdl2-sys/SDL2-2.0.9/include/begin_code.h rename to sdl2-sys/SDL2-2.0.10/include/begin_code.h index 6c2106246f2..22c997c4165 100644 --- a/sdl2-sys/SDL2-2.0.9/include/begin_code.h +++ b/sdl2-sys/SDL2-2.0.10/include/begin_code.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -105,6 +105,9 @@ #ifdef _MSC_VER #pragma warning(disable: 4103) #endif +#ifdef __clang__ +#pragma clang diagnostic ignored "-Wpragma-pack" +#endif #ifdef __BORLANDC__ #pragma nopackwarning #endif diff --git a/sdl2-sys/SDL2-2.0.9/include/close_code.h b/sdl2-sys/SDL2-2.0.10/include/close_code.h similarity index 90% rename from sdl2-sys/SDL2-2.0.9/include/close_code.h rename to sdl2-sys/SDL2-2.0.10/include/close_code.h index b3b70a4c833..8e4cac3daff 100644 --- a/sdl2-sys/SDL2-2.0.9/include/close_code.h +++ b/sdl2-sys/SDL2-2.0.10/include/close_code.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2018 Sam Lantinga + Copyright (C) 1997-2019 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -26,6 +26,9 @@ * after you finish any function and structure declarations in your headers */ +#ifndef _begin_code_h +#error close_code.h included without matching begin_code.h +#endif #undef _begin_code_h /* Reset structure packing at previous byte alignment */ diff --git a/sdl2-sys/SDL2-2.0.9/include/SDL_revision.h b/sdl2-sys/SDL2-2.0.9/include/SDL_revision.h deleted file mode 100644 index 92fbe67b132..00000000000 --- a/sdl2-sys/SDL2-2.0.9/include/SDL_revision.h +++ /dev/null @@ -1,2 +0,0 @@ -#define SDL_REVISION "hg-12373:8feb5da6f2fb" -#define SDL_REVISION_NUMBER 12373 diff --git a/sdl2-sys/build.rs b/sdl2-sys/build.rs index 25be7610509..7ba0add445e 100644 --- a/sdl2-sys/build.rs +++ b/sdl2-sys/build.rs @@ -20,10 +20,10 @@ use std::path::{Path, PathBuf}; use std::{io, fs, env}; // corresponds to the headers that we have in sdl2-sys/SDL2-{version} -const SDL2_HEADERS_BUNDLED_VERSION: &str = "2.0.9"; +const SDL2_HEADERS_BUNDLED_VERSION: &str = "2.0.10"; // means the lastest stable version that can be downloaded from SDL2's source -const LASTEST_SDL2_VERSION: &str = "2.0.9"; +const LASTEST_SDL2_VERSION: &str = "2.0.10"; #[cfg(feature = "bindgen")] macro_rules! add_msvc_includes_to_bindings {