Rebuild SDL for macOS

changeset 8f1abe5e7d8f

Patches:
https://bugzilla.libsdl.org/show_bug.cgi?id=5276
This commit is contained in:
Cameron Gutman
2020-09-05 14:05:20 -07:00
parent dcbaa52683
commit 62b296cf85
21 changed files with 351 additions and 93 deletions

View File

@@ -3,7 +3,7 @@
<plist version="1.0">
<dict>
<key>BuildMachineOSBuild</key>
<string>19F96</string>
<string>19G2021</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
@@ -27,17 +27,17 @@
<key>DTCompiler</key>
<string>com.apple.compilers.llvm.clang.1_0</string>
<key>DTPlatformBuild</key>
<string>11E608c</string>
<string>11E801a</string>
<key>DTPlatformVersion</key>
<string>GM</string>
<key>DTSDKBuild</key>
<string>19E258</string>
<string>19G68</string>
<key>DTSDKName</key>
<string>macosx10.15</string>
<key>DTXcode</key>
<string>1150</string>
<string>1170</string>
<key>DTXcodeBuild</key>
<string>11E608c</string>
<string>11E801a</string>
<key>LSMinimumSystemVersion</key>
<string>10.6</string>
</dict>

View File

@@ -10,7 +10,7 @@
</data>
<key>Resources/Info.plist</key>
<data>
tR+x/NCnJsVSyHgQHeO7i3tSOIU=
k9vWJij3RA8s13h/WkHnqVv977U=
</data>
<key>Resources/LICENSE-bsd.txt</key>
<data>
@@ -57,11 +57,11 @@
<dict>
<key>hash</key>
<data>
tR+x/NCnJsVSyHgQHeO7i3tSOIU=
k9vWJij3RA8s13h/WkHnqVv977U=
</data>
<key>hash2</key>
<data>
TpkMw2KE7HxxrnL7tHRLz5ncKnrhWMDThAKKFHGVPNY=
WME8EBqUAByTxhCypUOOYXVJiElcUNSkBXR1bxH3n5Q=
</data>
</dict>
<key>Resources/LICENSE-bsd.txt</key>

View File

@@ -59,6 +59,7 @@
#include "SDL_timer.h"
#include "SDL_version.h"
#include "SDL_video.h"
#include "SDL_locale.h"
#include "begin_code.h"
/* Set up for C function definitions, even when using C++ */

View File

@@ -53,6 +53,8 @@ assert can have unique static variables associated with it.
#define SDL_TriggerBreakpoint() __debugbreak()
#elif ( (!defined(__NACL__)) && ((defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__))) )
#define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "int $3\n\t" )
#elif ( defined(__APPLE__) && defined(__arm64__) ) /* this might work on other ARM targets, but this is a known quantity... */
#define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "brk #22\n\t" )
#elif defined(__386__) && defined(__WATCOMC__)
#define SDL_TriggerBreakpoint() { _asm { int 0x03 } }
#elif defined(HAVE_SIGNAL_H) && !defined(__WATCOMC__)

View File

@@ -246,10 +246,33 @@ extern DECLSPEC size_t SDLCALL SDL_SIMDGetAlignment(void);
* \return Pointer to newly-allocated block, NULL if out of memory.
*
* \sa SDL_SIMDAlignment
* \sa SDL_SIMDRealloc
* \sa SDL_SIMDFree
*/
extern DECLSPEC void * SDLCALL SDL_SIMDAlloc(const size_t len);
/**
* \brief Reallocate 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.
*
* \param mem The pointer obtained from SDL_SIMDAlloc. This function also
* accepts NULL, at which point this function is the same as
* calling SDL_realloc with a NULL pointer.
* \param len The length, in bytes, of the block to allocated. The actual
* allocated block might be larger due to padding, etc. Passing 0
* will return a non-NULL pointer, assuming the system isn't out of
* memory.
* \return Pointer to newly-reallocated block, NULL if out of memory.
*
* \sa SDL_SIMDAlignment
* \sa SDL_SIMDAlloc
* \sa SDL_SIMDFree
*/
extern DECLSPEC void * SDLCALL SDL_SIMDRealloc(void *mem, size_t len);
/**
* \brief Deallocate memory obtained from SDL_SIMDAlloc
*
@@ -260,6 +283,7 @@ extern DECLSPEC void * SDLCALL SDL_SIMDAlloc(const size_t len);
* However, SDL_SIMDFree(NULL) is a legal no-op.
*
* \sa SDL_SIMDAlloc
* \sa SDL_SIMDRealloc
*/
extern DECLSPEC void SDLCALL SDL_SIMDFree(void *ptr);

View File

@@ -85,6 +85,8 @@ typedef enum
Called on Android in onResume()
*/
SDL_LOCALECHANGED, /**< The user's locale preferences have changed. */
/* Display events */
SDL_DISPLAYEVENT = 0x150, /**< Display state change */

View File

@@ -337,21 +337,12 @@ typedef struct _SDL_Haptic SDL_Haptic;
#define SDL_HAPTIC_SPHERICAL 2
/**
* \brief Uses first axis only.
* For some device with only one axis (steering wheel,...),
* SDL_HAPTIC_CARTESIAN does not work. SDL_HAPTIC_FIRST_AXIS can be used in
* this case.
* Using SDL_HAPTIC_FIRST_AXIS is equivalent to :
* \code
* SDL_HapticDirection direction;
* direction.type = SDL_HAPTIC_CARTESIAN;
* direction.dir[0] = 1;
* direction.dir[1] = 0;
* direction.dir[2] = 0;
* \endcode
* \brief Use this value to play an effect on the steering wheel axis. This
* provides better compatibility across platforms and devices as SDL will guess
* the correct axis.
* \sa SDL_HapticDirection
*/
#define SDL_HAPTIC_FIRST_AXIS 3
#define SDL_HAPTIC_STEERING_AXIS 3
/* @} *//* Direction encodings */
@@ -461,7 +452,7 @@ typedef struct _SDL_Haptic SDL_Haptic;
* \sa SDL_HAPTIC_POLAR
* \sa SDL_HAPTIC_CARTESIAN
* \sa SDL_HAPTIC_SPHERICAL
* \sa SDL_HAPTIC_FIRST_AXIS
* \sa SDL_HAPTIC_STEERING_AXIS
* \sa SDL_HapticEffect
* \sa SDL_HapticNumAxes
*/

View File

@@ -369,7 +369,9 @@ extern "C" {
#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.
* \brief Minimize your SDL_Window if it loses key focus when in fullscreen mode. Defaults to false.
* \warning Before SDL 2.0.14, this defaulted to true! In 2.0.14, we're
* seeing if "true" causes more problems than it solves in modern times.
*
*/
#define SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS"
@@ -694,6 +696,18 @@ extern "C" {
*/
#define SDL_HINT_JOYSTICK_RAWINPUT "SDL_JOYSTICK_RAWINPUT"
/**
* \brief A variable controlling whether Linux joysticks adhere their HID-defined deadzones or return unfiltered values.
* This is useful for Wine which implements its own deadzone handler if requested by games, also it enables xinput
* games to receive unfiltered values as required from the API.
*
* This variable can be set to the following values:
* "0" - Linux deadzones are not used by SDL
* "1" - Linux deadzones are used by SDL (the default)
*
*/
#define SDL_HINT_LINUX_JOYSTICK_DEADZONES "SDL_LINUX_JOYSTICK_DEADZONES"
/**
* \brief If set to "0" then never set the top most bit on a SDL Window, even if the video mode expects it.
* This is a debugging aid for developers and not expected to be used by end users. The default is "1"
@@ -763,6 +777,19 @@ extern "C" {
*/
#define SDL_HINT_THREAD_STACK_SIZE "SDL_THREAD_STACK_SIZE"
/**
* \brief A string specifying additional information to use with SDL_SetThreadPriority.
*
* By default SDL_SetThreadPriority will make appropriate system changes in order to
* apply a thread priority. For example on systems using pthreads the scheduler policy
* is changed automatically to a policy that works well with a given priority.
* Code which has specific requirements can override SDL's default behavior with this hint.
*
* pthread hint values are "current", "other", "fifo" and "rr".
* Currently no other platform hint values are defined but may be in the future.
*/
#define SDL_HINT_THREAD_PRIORITY_POLICY "SDL_THREAD_PRIORITY_POLICY"
/**
* \brief If set to 1, then do not allow high-DPI windows. ("Retina" on Mac and iOS)
*/
@@ -1027,6 +1054,21 @@ extern "C" {
*/
#define SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT "SDL_EMSCRIPTEN_KEYBOARD_ELEMENT"
/**
* \brief Disable giving back control to the browser automatically
* when running with asyncify
*
* With -s ASYNCIFY, SDL2 calls emscripten_sleep during operations
* such as refreshing the screen or polling events.
*
* This hint only applies to the emscripten platform
*
* The variable can be set to the following values:
* "0" - Disable emscripten_sleep calls (if you give back browser control manually or use asyncify for other purposes)
* "1" - Enable emscripten_sleep calls (the default)
*/
#define SDL_HINT_EMSCRIPTEN_ASYNCIFY "SDL_EMSCRIPTEN_ASYNCIFY"
/**
* \brief Tell SDL not to catch the SIGINT or SIGTERM signals.
*
@@ -1292,7 +1334,7 @@ extern "C" {
*/
#define SDL_HINT_WAVE_FACT_CHUNK "SDL_WAVE_FACT_CHUNK"
/*
/**
* \brief Override for SDL_GetDisplayUsableBounds()
*
* If set, this hint will override the expected results for
@@ -1306,6 +1348,63 @@ extern "C" {
*/
#define SDL_HINT_DISPLAY_USABLE_BOUNDS "SDL_DISPLAY_USABLE_BOUNDS"
/**
* \brief Specify an application name for an audio device.
*
* Some audio backends (such as PulseAudio) allow you to describe your audio
* stream. Among other things, this description might show up in a system
* control panel that lets the user adjust the volume on specific audio
* streams instead of using one giant master volume slider.
*
* This hints lets you transmit that information to the OS. The contents of
* this hint are used while opening an audio device. You should use a string
* that describes your program ("My Game 2: The Revenge")
*
* Setting this to "" or leaving it unset will have SDL use a reasonable
* default: probably the application's name or "SDL Application" if SDL
* doesn't have any better information.
*
* On targets where this is not supported, this hint does nothing.
*/
#define SDL_HINT_AUDIO_DEVICE_APP_NAME "SDL_AUDIO_DEVICE_APP_NAME"
/**
* \brief Specify an application name for an audio device.
*
* Some audio backends (such as PulseAudio) allow you to describe your audio
* stream. Among other things, this description might show up in a system
* control panel that lets the user adjust the volume on specific audio
* streams instead of using one giant master volume slider.
*
* This hints lets you transmit that information to the OS. The contents of
* this hint are used while opening an audio device. You should use a string
* that describes your what your program is playing ("audio stream" is
* probably sufficient in many cases, but this could be useful for something
* like "team chat" if you have a headset playing VoIP audio separately).
*
* Setting this to "" or leaving it unset will have SDL use a reasonable
* default: "audio stream" or something similar.
*
* On targets where this is not supported, this hint does nothing.
*/
#define SDL_HINT_AUDIO_DEVICE_STREAM_NAME "SDL_AUDIO_DEVICE_STREAM_NAME"
/**
* \brief Override for SDL_GetPreferredLocales()
*
* If set, this will be favored over anything the OS might report for the
* user's preferred locales. Changing this hint at runtime will not generate
* a SDL_LOCALECHANGED event (but if you can change the hint, you can push
* your own event, if you want).
*
* The format of this hint is a comma-separated list of language and locale,
* combined with an underscore, as is a common format: "en_GB". Locale is
* optional: "en". So you might have a list like this: "en_GB,jp,es_PT"
*/
#define SDL_HINT_PREFERRED_LOCALES "SDL_PREFERRED_LOCALES"
/**
* \brief An enumeration of hint priorities
*/

View File

@@ -336,13 +336,13 @@ typedef enum
KMOD_NUM = 0x1000,
KMOD_CAPS = 0x2000,
KMOD_MODE = 0x4000,
KMOD_RESERVED = 0x8000
} SDL_Keymod;
KMOD_RESERVED = 0x8000,
#define KMOD_CTRL (KMOD_LCTRL|KMOD_RCTRL)
#define KMOD_SHIFT (KMOD_LSHIFT|KMOD_RSHIFT)
#define KMOD_ALT (KMOD_LALT|KMOD_RALT)
#define KMOD_GUI (KMOD_LGUI|KMOD_RGUI)
KMOD_CTRL = KMOD_LCTRL | KMOD_RCTRL,
KMOD_SHIFT = KMOD_LSHIFT | KMOD_RSHIFT,
KMOD_ALT = KMOD_LALT | KMOD_RALT,
KMOD_GUI = KMOD_LGUI | KMOD_RGUI,
} SDL_Keymod;
#endif /* SDL_keycode_h_ */

View File

@@ -0,0 +1,101 @@
/*
Simple DirectMedia Layer
Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
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.
*/
/**
* \file SDL_locale.h
*
* Include file for SDL locale services
*/
#ifndef _SDL_locale_h
#define _SDL_locale_h
#include "SDL_stdinc.h"
#include "SDL_error.h"
#include "begin_code.h"
/* Set up for C function definitions, even when using C++ */
#ifdef __cplusplus
/* *INDENT-OFF* */
extern "C" {
/* *INDENT-ON* */
#endif
typedef struct SDL_Locale
{
const char *language; /**< A language name, like "en" for English. */
const char *country; /**< A country, like "US" for America. Can be NULL. */
} SDL_Locale;
/**
* \brief Report the user's preferred locale.
*
* This returns an array of SDL_Locale structs, the final item zeroed out.
* When the caller is done with this array, it should call SDL_free() on
* the returned value; all the memory involved is allocated in a single
* block, so a single SDL_free() will suffice.
*
* Returned language strings are in the format xx, where 'xx' is an ISO-639
* language specifier (such as "en" for English, "de" for German, etc).
* Country strings are in the format YY, where "YY" is an ISO-3166 country
* code (such as "US" for the United States, "CA" for Canada, etc). Country
* might be NULL if there's no specific guidance on them (so you might get
* { "en", "US" } for American English, but { "en", NULL } means "English
* language, generically"). Language strings are never NULL, except to
* terminate the array.
*
* Please note that not all of these strings are 2 characters; some are
* three or more.
*
* The returned list of locales are in the order of the user's preference.
* For example, a German citizen that is fluent in US English and knows
* enough Japanese to navigate around Tokyo might have a list like:
* { "de", "en_US", "jp", NULL }. Someone from England might prefer British
* English (where "color" is spelled "colour", etc), but will settle for
* anything like it: { "en_GB", "en", NULL }.
*
* This function returns NULL on error, including when the platform does not
* supply this information at all.
*
* This might be a "slow" call that has to query the operating system. It's
* best to ask for this once and save the results. However, this list can
* change, usually because the user has changed a system preference outside
* of your program; SDL will send an SDL_LOCALECHANGED event in this case,
* if possible, and you can call this function again to get an updated copy
* of preferred locales.
*
* \return array of locales, terminated with a locale with a NULL language
* field. Will return NULL on error.
*/
extern DECLSPEC SDL_Locale * SDLCALL SDL_GetPreferredLocales(void);
/* Ends C function definitions when using C++ */
#ifdef __cplusplus
/* *INDENT-OFF* */
}
/* *INDENT-ON* */
#endif
#include "close_code.h"
#endif /* _SDL_locale_h */
/* vi: set ts=4 sw=4 expandtab: */

View File

@@ -188,18 +188,22 @@ typedef enum
SDL_PIXELFORMAT_RGB332 =
SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED8, SDL_PACKEDORDER_XRGB,
SDL_PACKEDLAYOUT_332, 8, 1),
SDL_PIXELFORMAT_RGB444 =
SDL_PIXELFORMAT_XRGB4444 =
SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XRGB,
SDL_PACKEDLAYOUT_4444, 12, 2),
SDL_PIXELFORMAT_BGR444 =
SDL_PIXELFORMAT_RGB444 = SDL_PIXELFORMAT_XRGB4444,
SDL_PIXELFORMAT_XBGR4444 =
SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XBGR,
SDL_PACKEDLAYOUT_4444, 12, 2),
SDL_PIXELFORMAT_RGB555 =
SDL_PIXELFORMAT_BGR444 = SDL_PIXELFORMAT_XBGR4444,
SDL_PIXELFORMAT_XRGB1555 =
SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XRGB,
SDL_PACKEDLAYOUT_1555, 15, 2),
SDL_PIXELFORMAT_BGR555 =
SDL_PIXELFORMAT_RGB555 = SDL_PIXELFORMAT_XRGB1555,
SDL_PIXELFORMAT_XBGR1555 =
SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XBGR,
SDL_PACKEDLAYOUT_1555, 15, 2),
SDL_PIXELFORMAT_BGR555 = SDL_PIXELFORMAT_XBGR1555,
SDL_PIXELFORMAT_ARGB4444 =
SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_ARGB,
SDL_PACKEDLAYOUT_4444, 16, 2),
@@ -236,15 +240,17 @@ typedef enum
SDL_PIXELFORMAT_BGR24 =
SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_ARRAYU8, SDL_ARRAYORDER_BGR, 0,
24, 3),
SDL_PIXELFORMAT_RGB888 =
SDL_PIXELFORMAT_XRGB8888 =
SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_XRGB,
SDL_PACKEDLAYOUT_8888, 24, 4),
SDL_PIXELFORMAT_RGB888 = SDL_PIXELFORMAT_XRGB8888,
SDL_PIXELFORMAT_RGBX8888 =
SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_RGBX,
SDL_PACKEDLAYOUT_8888, 24, 4),
SDL_PIXELFORMAT_BGR888 =
SDL_PIXELFORMAT_XBGR8888 =
SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_XBGR,
SDL_PACKEDLAYOUT_8888, 24, 4),
SDL_PIXELFORMAT_BGR888 = SDL_PIXELFORMAT_XBGR8888,
SDL_PIXELFORMAT_BGRX8888 =
SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_BGRX,
SDL_PACKEDLAYOUT_8888, 24, 4),

View File

@@ -96,15 +96,7 @@ typedef struct SDL_RWops
#if defined(__ANDROID__)
struct
{
void *fileNameRef;
void *inputStreamRef;
void *readableByteChannelRef;
void *readMethod;
void *assetFileDescriptorRef;
long position;
long size;
long offset;
int fd;
void *asset;
} androidio;
#elif defined(__WIN32__)
struct

View File

@@ -577,6 +577,17 @@ extern DECLSPEC char *SDLCALL SDL_iconv_string(const char *tocode,
/* force builds using Clang's static analysis tools to use literal C runtime
here, since there are possibly tests that are ineffective otherwise. */
#if defined(__clang_analyzer__) && !defined(SDL_DISABLE_ANALYZE_MACROS)
/* The analyzer knows about strlcpy even when the system doesn't provide it */
#ifndef HAVE_STRLCPY
size_t strlcpy(char* dst, const char* src, size_t size);
#endif
/* The analyzer knows about strlcat even when the system doesn't provide it */
#ifndef HAVE_STRLCAT
size_t strlcat(char* dst, const char* src, size_t size);
#endif
#define SDL_malloc malloc
#define SDL_calloc calloc
#define SDL_realloc realloc
@@ -585,16 +596,23 @@ extern DECLSPEC char *SDLCALL SDL_iconv_string(const char *tocode,
#define SDL_memcpy memcpy
#define SDL_memmove memmove
#define SDL_memcmp memcmp
#define SDL_strlen strlen
#define SDL_strlcpy strlcpy
#define SDL_strlcat strlcat
#define SDL_strlen strlen
#define SDL_wcslen wcslen
#define SDL_wcslcpy wcslcpy
#define SDL_wcslcat wcslcat
#define SDL_strdup strdup
#define SDL_wcsdup wcsdup
#define SDL_strchr strchr
#define SDL_strrchr strrchr
#define SDL_strstr strstr
#define SDL_wcsstr wcsstr
#define SDL_strtokr strtok_r
#define SDL_strcmp strcmp
#define SDL_wcscmp wcscmp
#define SDL_strncmp strncmp
#define SDL_wcsncmp wcsncmp
#define SDL_strcasecmp strcasecmp
#define SDL_strncasecmp strncasecmp
#define SDL_sscanf sscanf

View File

@@ -198,6 +198,14 @@ extern DECLSPEC int SDLCALL SDL_AndroidGetExternalStorageState(void);
*/
extern DECLSPEC const char * SDLCALL SDL_AndroidGetExternalStoragePath(void);
/**
\brief Request permissions at runtime.
This blocks the calling thread until the permission is granted or
denied. Returns SDL_TRUE if the permission was granted.
*/
extern DECLSPEC SDL_bool SDLCALL SDL_AndroidRequestPermission(const char *permission);
#endif /* __ANDROID__ */
/* Platform specific functions for WinRT */

View File

@@ -54,6 +54,11 @@ typedef unsigned int SDL_TLSID;
/**
* The SDL thread priority.
*
* SDL will make system changes as necessary in order to apply the thread priority.
* Code which attempts to control thread state related to priority should be aware
* that calling SDL_SetThreadPriority may alter such state.
* SDL_HINT_THREAD_PRIORITY_POLICY can be used to control aspects of this behavior.
*
* \note On many systems you require special privileges to set high or time critical priority.
*/
typedef enum {

View File

@@ -204,10 +204,9 @@ extern DECLSPEC void SDLCALL SDL_Vulkan_UnloadLibrary(void);
*
* \sa SDL_Vulkan_CreateSurface()
*/
extern DECLSPEC SDL_bool SDLCALL SDL_Vulkan_GetInstanceExtensions(
SDL_Window *window,
unsigned int *pCount,
const char **pNames);
extern DECLSPEC SDL_bool SDLCALL SDL_Vulkan_GetInstanceExtensions(SDL_Window *window,
unsigned int *pCount,
const char **pNames);
/**
* \brief Create a Vulkan rendering surface for a window.
@@ -238,10 +237,9 @@ extern DECLSPEC SDL_bool SDLCALL SDL_Vulkan_GetInstanceExtensions(
*
* \sa SDL_Vulkan_GetInstanceExtensions()
*/
extern DECLSPEC SDL_bool SDLCALL SDL_Vulkan_CreateSurface(
SDL_Window *window,
VkInstance instance,
VkSurfaceKHR* surface);
extern DECLSPEC SDL_bool SDLCALL SDL_Vulkan_CreateSurface(SDL_Window *window,
VkInstance instance,
VkSurfaceKHR* surface);
/**
* \brief Get the size of a window's underlying drawable in pixels (for use

View File

@@ -3,7 +3,7 @@
<plist version="1.0">
<dict>
<key>BuildMachineOSBuild</key>
<string>19F96</string>
<string>19G2021</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
@@ -31,17 +31,17 @@
<key>DTCompiler</key>
<string>com.apple.compilers.llvm.clang.1_0</string>
<key>DTPlatformBuild</key>
<string>11E608c</string>
<string>11E801a</string>
<key>DTPlatformVersion</key>
<string>GM</string>
<key>DTSDKBuild</key>
<string>19E258</string>
<string>19G68</string>
<key>DTSDKName</key>
<string>macosx10.15</string>
<key>DTXcode</key>
<string>1150</string>
<string>1170</string>
<key>DTXcodeBuild</key>
<string>11E608c</string>
<string>11E801a</string>
<key>LSMinimumSystemVersion</key>
<string>10.6</string>
</dict>

View File

@@ -6,7 +6,7 @@
<dict>
<key>Resources/Info.plist</key>
<data>
MTBDzarlD49wUA3U3XslL/KNTTk=
sh0oOLkdzcvMFVtkzp3NXS7VQh4=
</data>
<key>Resources/License.txt</key>
<data>
@@ -18,7 +18,7 @@
</data>
<key>Resources/default.metallib</key>
<data>
Mp2xZ/ImK+qiewJUABPEZD4KGp8=
awST523PmC36+lehlmfUr/pwZko=
</data>
</dict>
<key>files2</key>
@@ -27,31 +27,31 @@
<dict>
<key>cdhash</key>
<data>
yLtbsvhYDBmCoZ2VyZew3DIgaks=
pFEaabK4ZTzSRMngHXqK2k/a6tE=
</data>
<key>requirement</key>
<string>cdhash H"c9731f7f9d142b4a0361a7b6fbcdc1a425ff9578" or cdhash H"c8bb5bb2f8580c1982a19d95c997b0dc32206a4b"</string>
<string>cdhash H"41e662828193db1f141e133758d4455d73697c3d" or cdhash H"a4511a69b2b8653cd244c9e01d7a8ada4fdaead1"</string>
</dict>
<key>Headers/SDL.h</key>
<dict>
<key>hash</key>
<data>
y6Zw1zugKvy7YINfHUZioLU3h7c=
o3KVp4++KuUyoa+pJDOXTKG80xY=
</data>
<key>hash2</key>
<data>
GRE94BY3eDOjtR9EDg6HtLEJAZjYaNV+dq4yfaEVj+U=
CLsLV07G2/+c6GGLTVZh91FNYojAHOsuglk/oCKmlso=
</data>
</dict>
<key>Headers/SDL_assert.h</key>
<dict>
<key>hash</key>
<data>
aeaMLHO4nr+PB14hBzqp6ZOQMqU=
FwT1P3mJzGKC9r+NdzApvnBKWB0=
</data>
<key>hash2</key>
<data>
BvLXUx+Vfr2uygauOVYH8TxUkdOjRrpuC51187UhoCU=
P97E6oE7Pm/2Rd/sQI2lfnboN3OaLWfA4fzXc4lHSW0=
</data>
</dict>
<key>Headers/SDL_atomic.h</key>
@@ -146,11 +146,11 @@
<dict>
<key>hash</key>
<data>
/DTS3Ju22TmH5Qrr4Sy4TfDdlcc=
YjRdjce9KUBEQg0r9+V22aY6/tU=
</data>
<key>hash2</key>
<data>
pPVS8mDMD17ThwISdh+NEXGOqQkOOClFoU0ylYgDNSM=
rOaeQwxwi97aliYs+g6rDQlSNO8BjTDD9tnx/2CcyjI=
</data>
</dict>
<key>Headers/SDL_endian.h</key>
@@ -179,11 +179,11 @@
<dict>
<key>hash</key>
<data>
K/UpbzGqq8vPXCNo//37Qod99bU=
06e1jUIsAc9O803iXrh2jmdbXuM=
</data>
<key>hash2</key>
<data>
ndL6QYSkZleJN4Va0neG0C1cytQi6sN2YRBZNqg0KGU=
6pGmPxZapBntgteeWW4BRZnhLf1R4CvlFsk60Xd3BPs=
</data>
</dict>
<key>Headers/SDL_filesystem.h</key>
@@ -223,22 +223,22 @@
<dict>
<key>hash</key>
<data>
A5VM8GOD6pgO+5umTAfGePUVpKE=
M0Oo9dh3zLva6qpGJhBbgAxAIuY=
</data>
<key>hash2</key>
<data>
GNOzk3bli3Um2gMNnpq6O6rl97hq0dZfj5BIgDSfl9A=
Nef5r8Bidx1FeTffn9+uzNZMlwxu1J37V4LOzOibxx4=
</data>
</dict>
<key>Headers/SDL_hints.h</key>
<dict>
<key>hash</key>
<data>
2fcgomKzlDXR0nG2BTecGYNI2fw=
/SzqZQDEmBA9aPLBuEQJLeHNGv4=
</data>
<key>hash2</key>
<data>
c8vMBfNzwpL6I0l2aghiLSNE3c/ZmOnQCIJCucACo7k=
17+Nv9lXJBOkimhfhtzZJcBqVKWf8z5tK/KQrvvU9xE=
</data>
</dict>
<key>Headers/SDL_joystick.h</key>
@@ -267,11 +267,11 @@
<dict>
<key>hash</key>
<data>
gMeCtdre9A0i6YsiBcA9UYyFU2M=
Fwnbxg/6DtHaQufmjH9Sx/zbF+A=
</data>
<key>hash2</key>
<data>
7q8a96GCxzmM/IeuC5Qe6HdURJ/tkw7ZE+w1EB05MMU=
m69IH60aX73QRefpJOur+rWzKRZJH9RF7P4LNUxti+g=
</data>
</dict>
<key>Headers/SDL_loadso.h</key>
@@ -285,6 +285,17 @@
bpcu/Ms5CE5EHVV1zXIfWghw8JM8qB2114xfsIUBPeE=
</data>
</dict>
<key>Headers/SDL_locale.h</key>
<dict>
<key>hash</key>
<data>
JCF6SSXRcv6uAPICgwmTq+WsVZs=
</data>
<key>hash2</key>
<data>
SYFN/L2S2pKTNZQe4dGUKTPTFXbqXZlZ3Vyl4y5wZ8s=
</data>
</dict>
<key>Headers/SDL_log.h</key>
<dict>
<key>hash</key>
@@ -454,11 +465,11 @@
<dict>
<key>hash</key>
<data>
U6CRAlpSfGNDzBGXdbi4oftVkwU=
dk4R8c81l+WVpQ9ueWDS2SGuXkA=
</data>
<key>hash2</key>
<data>
DgjII2f8X5emc/fKsW0hur9MGpTs8qpaTHe/NC7WdGE=
AQ9Th5IdVLO2XfkpMUuZAqxtYQXaQiiiHQVjTJyRq2g=
</data>
</dict>
<key>Headers/SDL_platform.h</key>
@@ -531,11 +542,11 @@
<dict>
<key>hash</key>
<data>
DLm3FArKEgTtJ69RUmMmUvF0NsI=
FWcGz9/xlaBkrR1vdvYvDibFPhg=
</data>
<key>hash2</key>
<data>
FIL6cT/Y+0AXFs3GF9EJ3m2pbkmMJxT/I+LuZP4/JrU=
OWI95ONgZvdn/FBJfMHV1BQWKQjx5LBN7MYuXwAadgg=
</data>
</dict>
<key>Headers/SDL_scancode.h</key>
@@ -575,11 +586,11 @@
<dict>
<key>hash</key>
<data>
smZhl9uPKfaFlYEpDbqiYDUGseY=
q9VYwFS+f9MaSiVwltDDrBpP8+o=
</data>
<key>hash2</key>
<data>
h9ZnfoqEmhF2HFFwjE00RNDngk+Lg0Fth+XPTKM/OdA=
hfUwgCUrzO8oRZglsZlgHLqCVGo4tlorFxvRjh+d/A8=
</data>
</dict>
<key>Headers/SDL_surface.h</key>
@@ -597,11 +608,11 @@
<dict>
<key>hash</key>
<data>
3tHnp+2bdRcZ3HH7EKLtOcbMlWQ=
iiUlVUMHJLVYtZYy8fesmrBw71U=
</data>
<key>hash2</key>
<data>
ZwR9c/Bto10ts3gyJZgBeZEDkcfYBxbXqZYho1rDulI=
SmI4OODh0gdcy0WduqkDD+AGZI66vpEOgPEXc7JY3sM=
</data>
</dict>
<key>Headers/SDL_syswm.h</key>
@@ -619,11 +630,11 @@
<dict>
<key>hash</key>
<data>
3tGB/eQF+z1hhlWNiw4xuJ6c0NA=
bN9PvUNyNE5PSLQzjdF4b38bzRY=
</data>
<key>hash2</key>
<data>
7WhLanB12mw0SlTjQFEZzDejcHmHtq/wBtc7oujsSSQ=
MymOftu/SUBMl4mrBetXv06hTmexfmEwWFuvGoMdmT8=
</data>
</dict>
<key>Headers/SDL_timer.h</key>
@@ -685,11 +696,11 @@
<dict>
<key>hash</key>
<data>
0R0iBIIZHeiqfvyj+3+sbtepfwo=
Hd6qVU8OT67v88A0rMVhZpceGQg=
</data>
<key>hash2</key>
<data>
ZUl2Z6rj4rI2+mitJQB2d+4hTIuTIzVf0fr7KM9hgKw=
rD48rqfdCs8UEGgpQilcPwZo50sH0NXKds0uYKXnkc8=
</data>
</dict>
<key>Headers/begin_code.h</key>
@@ -718,11 +729,11 @@
<dict>
<key>hash</key>
<data>
MTBDzarlD49wUA3U3XslL/KNTTk=
sh0oOLkdzcvMFVtkzp3NXS7VQh4=
</data>
<key>hash2</key>
<data>
Aw5qepe5IE6KD4635D6KSeP4YOFiTyVpeaIvjnM275U=
RWZqKrfBsPmghlDP7CT9Jf6NcUep+mHS5mvZnMIuieY=
</data>
</dict>
<key>Resources/License.txt</key>
@@ -751,11 +762,11 @@
<dict>
<key>hash</key>
<data>
Mp2xZ/ImK+qiewJUABPEZD4KGp8=
awST523PmC36+lehlmfUr/pwZko=
</data>
<key>hash2</key>
<data>
nTUBNl319cJwZLag6VcH4LF+dIjUoCOfS5FhrVYg16o=
+Foetj5EZqEAqjfkJcaUPc5XEgo/kcNG4bP0vzWuVHA=
</data>
</dict>
</dict>