From 47e824684bb2e7d2cd7ea6c6ead1b03c9bf1057562c704f6c19d0eccc952512e Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sat, 30 Sep 2017 23:36:00 +0000 Subject: [PATCH 01/10] Accepting request 530173 from home:SpartanJ:branches:games - Update to 2.0.6: General: * Added cross-platform Vulkan graphics support in SDL_vulkan.h SDL_Vulkan_LoadLibrary() SDL_Vulkan_GetVkGetInstanceProcAddr() SDL_Vulkan_GetInstanceExtensions() SDL_Vulkan_CreateSurface() SDL_Vulkan_GetDrawableSize() SDL_Vulkan_UnloadLibrary() This is all the platform-specific code you need to bring up Vulkan on all SDL platforms. You can look at an example in test/testvulkan.c * Added SDL_ComposeCustomBlendMode() to create custom blend modes for 2D rendering * Added SDL_HasNEON() which returns whether the CPU has NEON instruction support * Added support for many game controllers, including the Nintendo Switch Pro Controller * Added support for inverted axes and separate axis directions in game controller mappings * Added functions to return information about a joystick before it's opened: SDL_JoystickGetDeviceVendor() SDL_JoystickGetDeviceProduct() SDL_JoystickGetDeviceProductVersion() SDL_JoystickGetDeviceType() SDL_JoystickGetDeviceInstanceID() * Added functions to return information about an open joystick: SDL_JoystickGetVendor() SDL_JoystickGetProduct() SDL_JoystickGetProductVersion() SDL_JoystickGetType() SDL_JoystickGetAxisInitialState() * Added functions to return information about an open game controller: SDL_GameControllerGetVendor() SDL_GameControllerGetProduct() SDL_GameControllerGetProductVersion() * Added SDL_GameControllerNumMappings() and SDL_GameControllerMappingForIndex() to be able to enumerate the built-in game controller mappings * Added SDL_LoadFile() and SDL_LoadFile_RW() to load a file into memory * Added SDL_DuplicateSurface() to make a copy of a surface * Added an experimental JACK audio driver * Implemented non-power-of-two audio resampling, optionally using libsamplerate to perform the resampling * Added the hint SDL_HINT_AUDIO_RESAMPLING_MODE to control the quality of resampling * Added the hint SDL_HINT_RENDER_LOGICAL_SIZE_MODE to control the scaling policy for SDL_RenderSetLogicalSize(): "0" or "letterbox" - Uses letterbox/sidebars to fit the entire rendering on screen (the default) "1" or "overscan" - Will zoom the rendering so it fills the entire screen, allowing edges to be drawn offscreen * Added the hints SDL_HINT_MOUSE_NORMAL_SPEED_SCALE and SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE to scale the mouse speed when being read from raw mouse input * Added the hint SDL_HINT_TOUCH_MOUSE_EVENTS to control whether SDL will synthesize mouse events from touch events Windows: * The new default audio driver on Windows is WASAPI and supports hot-plugging devices and changing the default audio device * The old XAudio2 audio driver is deprecated and will be removed in the next release * Added hints SDL_HINT_WINDOWS_INTRESOURCE_ICON and SDL_HINT_WINDOWS_INTRESOURCE_ICON_SMALL to specify a custom icon resource ID for SDL windows * The hint SDL_HINT_WINDOWS_DISABLE_THREAD_NAMING is now on by default for compatibility with .NET languages and various Windows debuggers * Updated the GUID format for game controller mappings, older mappings will be automatically converted on load * Implemented the SDL_WINDOW_ALWAYS_ON_TOP flag on Windows Linux: * Added an experimental KMS/DRM video driver for embedded development iOS: * Added a hint SDL_HINT_AUDIO_CATEGORY to control the audio category, determining whether the phone mute switch affects the audio OBS-URL: https://build.opensuse.org/request/show/530173 OBS-URL: https://build.opensuse.org/package/show/games/SDL2?expand=0&rev=55 --- SDL2-2.0.5.tar.gz | 3 - SDL2-2.0.5.tar.gz.sig | Bin 72 -> 0 bytes SDL2-2.0.6.tar.gz | 3 + SDL2-2.0.6.tar.gz.sig | Bin 0 -> 95 bytes SDL2.changes | 60 +++++++++++ SDL2.spec | 4 +- dbus-ime.diff | 230 ------------------------------------------ 7 files changed, 64 insertions(+), 236 deletions(-) delete mode 100644 SDL2-2.0.5.tar.gz delete mode 100644 SDL2-2.0.5.tar.gz.sig create mode 100644 SDL2-2.0.6.tar.gz create mode 100644 SDL2-2.0.6.tar.gz.sig delete mode 100644 dbus-ime.diff diff --git a/SDL2-2.0.5.tar.gz b/SDL2-2.0.5.tar.gz deleted file mode 100644 index c0d00da..0000000 --- a/SDL2-2.0.5.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:442038cf55965969f2ff06d976031813de643af9c9edc9e331bd761c242e8785 -size 4209352 diff --git a/SDL2-2.0.5.tar.gz.sig b/SDL2-2.0.5.tar.gz.sig deleted file mode 100644 index a11c77f2667e0c338b2ea305dd8cb4c81e104fa22ef209d5fb5c4fc9ea264ad3..0000000000000000000000000000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 72 zcmV-O0Jr~$Mg#y60ssaD0$2z|i~tG=5HO{acc*qc=0BSNofij@Hq$_xX9W*_Vsg1p eI#lcqy#Sd3Q&i?!geDV)392#~lB6~IXNEQE;1|&V diff --git a/SDL2-2.0.6.tar.gz b/SDL2-2.0.6.tar.gz new file mode 100644 index 0000000..89b4fe7 --- /dev/null +++ b/SDL2-2.0.6.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03658b5660d16d7b31263a691e058ed37acdab155d68dabbad79998fb552c5df +size 4420311 diff --git a/SDL2-2.0.6.tar.gz.sig b/SDL2-2.0.6.tar.gz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..0eebe1701ea3554afb62082225c481019e58d0525ce75958c24ffad30299c2b6 GIT binary patch literal 95 zcmeB(WnmCxVvrS6WD(U!j%^5DT3>$gL7TzS$>qz-te>$mMIMdmXW-%#fQj^(G0YE{ vwNoK}YOs2k=D%|1snZzu2rrOiSg^O!=$$4ncjxY$_Var7FWV -# Date 1477614538 -3600 -# Node ID b48d8a98e2618a6b4fd45aa2aab290ba4eb113c2 -# Parent 35fee69e84dfd745ef34e392e481f9088aeff70c -Fix double events / no repeat flag on key events when built withoutibus/fcitx - -Uses XkbSetDetectableKeyRepeat, and falls back to forcing @im=none if it's not -supported. - -diff -r 35fee69e84df -r b48d8a98e261 src/video/x11/SDL_x11events.c ---- a/src/video/x11/SDL_x11events.c Fri Oct 28 17:00:37 2016 -0700 -+++ b/src/video/x11/SDL_x11events.c Fri Oct 28 01:28:58 2016 +0100 -@@ -568,14 +568,18 @@ - printf("Filtered event type = %d display = %d window = %d\n", - xevent.type, xevent.xany.display, xevent.xany.window); - #endif -+ /* Make sure dead key press/release events are sent */ -+ /* But only if we're using one of the DBus IMEs, otherwise -+ some XIM IMEs will generate duplicate events */ - if (orig_keycode) { -- /* Make sure dead key press/release events are sent */ -+#if defined(HAVE_IBUS_IBUS_H) || defined(HAVE_FCITX_FRONTEND_H) - SDL_Scancode scancode = videodata->key_layout[orig_keycode]; - if (orig_event_type == KeyPress) { - SDL_SendKeyboardKey(SDL_PRESSED, scancode); - } else { - SDL_SendKeyboardKey(SDL_RELEASED, scancode); - } -+#endif - } - return; - } -diff -r 35fee69e84df -r b48d8a98e261 src/video/x11/SDL_x11keyboard.c ---- a/src/video/x11/SDL_x11keyboard.c Fri Oct 28 17:00:37 2016 -0700 -+++ b/src/video/x11/SDL_x11keyboard.c Fri Oct 28 01:28:58 2016 +0100 -@@ -33,6 +33,10 @@ - - #include "imKStoUCS.h" - -+#ifdef X_HAVE_UTF8_STRING -+#include -+#endif -+ - /* *INDENT-OFF* */ - static const struct { - KeySym keysym; -@@ -262,19 +266,82 @@ - int best_distance; - int best_index; - int distance; -- -+ BOOL xkb_repeat = 0; -+ - X11_XAutoRepeatOn(data->display); - - #if SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM - { -- int xkb_major = XkbMajorVersion; -- int xkb_minor = XkbMinorVersion; -- if (X11_XkbQueryExtension(data->display, NULL, NULL, NULL, &xkb_major, &xkb_minor)) { -- data->xkb = X11_XkbGetMap(data->display, XkbAllClientInfoMask, XkbUseCoreKbd); -- } -- } -+ int xkb_major = XkbMajorVersion; -+ int xkb_minor = XkbMinorVersion; -+ -+ if (X11_XkbQueryExtension(data->display, NULL, NULL, NULL, &xkb_major, &xkb_minor)) { -+ data->xkb = X11_XkbGetMap(data->display, XkbAllClientInfoMask, XkbUseCoreKbd); -+ } -+ -+ /* This will remove KeyRelease events for held keys */ -+ X11_XkbSetDetectableAutoRepeat(data->display, True, &xkb_repeat); -+ } - #endif -+ -+ /* Open a connection to the X input manager */ -+#ifdef X_HAVE_UTF8_STRING -+ if (SDL_X11_HAVE_UTF8) { -+ /* Set the locale, and call XSetLocaleModifiers before XOpenIM so that -+ Compose keys will work correctly. */ -+ char *prev_locale = setlocale(LC_ALL, NULL); -+ char *prev_xmods = X11_XSetLocaleModifiers(NULL); -+ const char *new_xmods = ""; -+#if defined(HAVE_IBUS_IBUS_H) || defined(HAVE_FCITX_FRONTEND_H) -+ const char *env_xmods = SDL_getenv("XMODIFIERS"); -+#endif -+ SDL_bool has_dbus_ime_support = SDL_FALSE; - -+ if (prev_locale) { -+ prev_locale = SDL_strdup(prev_locale); -+ } -+ -+ if (prev_xmods) { -+ prev_xmods = SDL_strdup(prev_xmods); -+ } -+ -+ /* IBus resends some key events that were filtered by XFilterEvents -+ when it is used via XIM which causes issues. Prevent this by forcing -+ @im=none if XMODIFIERS contains @im=ibus. IBus can still be used via -+ the DBus implementation, which also has support for pre-editing. */ -+#ifdef HAVE_IBUS_IBUS_H -+ if (env_xmods && SDL_strstr(env_xmods, "@im=ibus") != NULL) { -+ has_dbus_ime_support = SDL_TRUE; -+ } -+#endif -+#ifdef HAVE_FCITX_FRONTEND_H -+ if (env_xmods && SDL_strstr(env_xmods, "@im=fcitx") != NULL) { -+ has_dbus_ime_support = SDL_TRUE; -+ } -+#endif -+ if (has_dbus_ime_support || !xkb_repeat) { -+ new_xmods = "@im=none"; -+ } -+ -+ setlocale(LC_ALL, ""); -+ X11_XSetLocaleModifiers(new_xmods); -+ -+ data->im = X11_XOpenIM(data->display, NULL, data->classname, data->classname); -+ -+ /* Reset the locale + X locale modifiers back to how they were, -+ locale first because the X locale modifiers depend on it. */ -+ setlocale(LC_ALL, prev_locale); -+ X11_XSetLocaleModifiers(prev_xmods); -+ -+ if (prev_locale) { -+ SDL_free(prev_locale); -+ } -+ -+ if (prev_xmods) { -+ SDL_free(prev_xmods); -+ } -+ } -+#endif - /* Try to determine which scancodes are being used based on fingerprint */ - best_distance = SDL_arraysize(fingerprint) + 1; - best_index = -1; -diff -r 35fee69e84df -r b48d8a98e261 src/video/x11/SDL_x11sym.h ---- a/src/video/x11/SDL_x11sym.h Fri Oct 28 17:00:37 2016 -0700 -+++ b/src/video/x11/SDL_x11sym.h Fri Oct 28 01:28:58 2016 +0100 -@@ -179,6 +179,7 @@ - SDL_X11_SYM(Status,XkbGetUpdatedMap,(Display* a,unsigned int b,XkbDescPtr c),(a,b,c),return) - SDL_X11_SYM(XkbDescPtr,XkbGetMap,(Display* a,unsigned int b,unsigned int c),(a,b,c),return) - SDL_X11_SYM(void,XkbFreeClientMap,(XkbDescPtr a,unsigned int b, Bool c),(a,b,c),) -+SDL_X11_SYM(BOOL,XkbSetDetectableAutoRepeat,(Display* a, BOOL b, BOOL* c),(a,b,c),return) - #endif - - #if NeedWidePrototypes -diff -r 35fee69e84df -r b48d8a98e261 src/video/x11/SDL_x11video.c ---- a/src/video/x11/SDL_x11video.c Fri Oct 28 17:00:37 2016 -0700 -+++ b/src/video/x11/SDL_x11video.c Fri Oct 28 01:28:58 2016 +0100 -@@ -39,10 +39,6 @@ - #include "SDL_x11opengles.h" - #endif - --#ifdef X_HAVE_UTF8_STRING --#include --#endif -- - /* Initialization/Query functions */ - static int X11_VideoInit(_THIS); - static void X11_VideoQuit(_THIS); -@@ -388,65 +384,6 @@ - /* I have no idea how random this actually is, or has to be. */ - data->window_group = (XID) (((size_t) data->pid) ^ ((size_t) _this)); - -- /* Open a connection to the X input manager */ --#ifdef X_HAVE_UTF8_STRING -- if (SDL_X11_HAVE_UTF8) { -- /* Set the locale, and call XSetLocaleModifiers before XOpenIM so that -- Compose keys will work correctly. */ -- char *prev_locale = setlocale(LC_ALL, NULL); -- char *prev_xmods = X11_XSetLocaleModifiers(NULL); -- const char *new_xmods = ""; --#if defined(HAVE_IBUS_IBUS_H) || defined(HAVE_FCITX_FRONTEND_H) -- const char *env_xmods = SDL_getenv("XMODIFIERS"); --#endif -- SDL_bool has_dbus_ime_support = SDL_FALSE; -- -- if (prev_locale) { -- prev_locale = SDL_strdup(prev_locale); -- } -- -- if (prev_xmods) { -- prev_xmods = SDL_strdup(prev_xmods); -- } -- -- /* IBus resends some key events that were filtered by XFilterEvents -- when it is used via XIM which causes issues. Prevent this by forcing -- @im=none if XMODIFIERS contains @im=ibus. IBus can still be used via -- the DBus implementation, which also has support for pre-editing. */ --#ifdef HAVE_IBUS_IBUS_H -- if (env_xmods && SDL_strstr(env_xmods, "@im=ibus") != NULL) { -- has_dbus_ime_support = SDL_TRUE; -- } --#endif --#ifdef HAVE_FCITX_FRONTEND_H -- if (env_xmods && SDL_strstr(env_xmods, "@im=fcitx") != NULL) { -- has_dbus_ime_support = SDL_TRUE; -- } --#endif -- if (has_dbus_ime_support) { -- new_xmods = "@im=none"; -- } -- -- setlocale(LC_ALL, ""); -- X11_XSetLocaleModifiers(new_xmods); -- -- data->im = X11_XOpenIM(data->display, NULL, data->classname, data->classname); -- -- /* Reset the locale + X locale modifiers back to how they were, -- locale first because the X locale modifiers depend on it. */ -- setlocale(LC_ALL, prev_locale); -- X11_XSetLocaleModifiers(prev_xmods); -- -- if (prev_locale) { -- SDL_free(prev_locale); -- } -- -- if (prev_xmods) { -- SDL_free(prev_xmods); -- } -- } --#endif -- - /* Look up some useful Atoms */ - #define GET_ATOM(X) data->X = X11_XInternAtom(data->display, #X, False) - GET_ATOM(WM_PROTOCOLS); - From 2f6593dcfca292cb82c94c11cd697c7a1907d741e5778873e4574482287b94e3 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sat, 30 Sep 2017 23:40:55 +0000 Subject: [PATCH 02/10] Stick to the openSUSE changelog format, drop irrelevant points (like windows). OBS-URL: https://build.opensuse.org/package/show/games/SDL2?expand=0&rev=56 --- SDL2.changes | 86 ++++++++++++++++++---------------------------------- 1 file changed, 30 insertions(+), 56 deletions(-) diff --git a/SDL2.changes b/SDL2.changes index c32b830..e9d24f7 100644 --- a/SDL2.changes +++ b/SDL2.changes @@ -1,62 +1,36 @@ ------------------------------------------------------------------- Sat Sep 30 16:54:04 UTC 2017 - spartanj@gmail.com -- Update to 2.0.6: - -General: -* Added cross-platform Vulkan graphics support in SDL_vulkan.h - SDL_Vulkan_LoadLibrary() - SDL_Vulkan_GetVkGetInstanceProcAddr() - SDL_Vulkan_GetInstanceExtensions() - SDL_Vulkan_CreateSurface() - SDL_Vulkan_GetDrawableSize() - SDL_Vulkan_UnloadLibrary() - This is all the platform-specific code you need to bring up Vulkan on all SDL platforms. You can look at an example in test/testvulkan.c -* Added SDL_ComposeCustomBlendMode() to create custom blend modes for 2D rendering -* Added SDL_HasNEON() which returns whether the CPU has NEON instruction support -* Added support for many game controllers, including the Nintendo Switch Pro Controller -* Added support for inverted axes and separate axis directions in game controller mappings -* Added functions to return information about a joystick before it's opened: - SDL_JoystickGetDeviceVendor() - SDL_JoystickGetDeviceProduct() - SDL_JoystickGetDeviceProductVersion() - SDL_JoystickGetDeviceType() - SDL_JoystickGetDeviceInstanceID() -* Added functions to return information about an open joystick: - SDL_JoystickGetVendor() - SDL_JoystickGetProduct() - SDL_JoystickGetProductVersion() - SDL_JoystickGetType() - SDL_JoystickGetAxisInitialState() -* Added functions to return information about an open game controller: - SDL_GameControllerGetVendor() - SDL_GameControllerGetProduct() - SDL_GameControllerGetProductVersion() -* Added SDL_GameControllerNumMappings() and SDL_GameControllerMappingForIndex() to be able to enumerate the built-in game controller mappings -* Added SDL_LoadFile() and SDL_LoadFile_RW() to load a file into memory -* Added SDL_DuplicateSurface() to make a copy of a surface -* Added an experimental JACK audio driver -* Implemented non-power-of-two audio resampling, optionally using libsamplerate to perform the resampling -* Added the hint SDL_HINT_AUDIO_RESAMPLING_MODE to control the quality of resampling -* Added the hint SDL_HINT_RENDER_LOGICAL_SIZE_MODE to control the scaling policy for SDL_RenderSetLogicalSize(): - "0" or "letterbox" - Uses letterbox/sidebars to fit the entire rendering on screen (the default) - "1" or "overscan" - Will zoom the rendering so it fills the entire screen, allowing edges to be drawn offscreen -* Added the hints SDL_HINT_MOUSE_NORMAL_SPEED_SCALE and SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE to scale the mouse speed when being read from raw mouse input -* Added the hint SDL_HINT_TOUCH_MOUSE_EVENTS to control whether SDL will synthesize mouse events from touch events - -Windows: -* The new default audio driver on Windows is WASAPI and supports hot-plugging devices and changing the default audio device -* The old XAudio2 audio driver is deprecated and will be removed in the next release -* Added hints SDL_HINT_WINDOWS_INTRESOURCE_ICON and SDL_HINT_WINDOWS_INTRESOURCE_ICON_SMALL to specify a custom icon resource ID for SDL windows -* The hint SDL_HINT_WINDOWS_DISABLE_THREAD_NAMING is now on by default for compatibility with .NET languages and various Windows debuggers -* Updated the GUID format for game controller mappings, older mappings will be automatically converted on load -* Implemented the SDL_WINDOW_ALWAYS_ON_TOP flag on Windows - -Linux: -* Added an experimental KMS/DRM video driver for embedded development - -iOS: -* Added a hint SDL_HINT_AUDIO_CATEGORY to control the audio category, determining whether the phone mute switch affects the audio +- Update to new upstream release 2.0.6 + * Added Vulkan graphics support in SDL_vulkan.h. + * Added SDL_ComposeCustomBlendMode() to create custom blend + modes for 2D rendering. + * Added support for many game controllers, including the + Nintendo Switch Pro Controller. + * Added support for inverted axes and separate axis directions + in game controller mappings. + * Added functions to return information about joysticks and + open game controllers. + * Added SDL_GameControllerNumMappings() and + SDL_GameControllerMappingForIndex() to be able to enumerate + the built-in game controller mappings. + * Added SDL_LoadFile() and SDL_LoadFile_RW() to load a file + into memory. + * Added SDL_DuplicateSurface() to make a copy of a surface. + * Added an experimental JACK audio driver. + * Implemented non-power-of-two audio resampling, optionally + using libsamplerate to perform the resampling. + * Added the hint SDL_HINT_AUDIO_RESAMPLING_MODE to control the + quality of resampling. + * Added the hint SDL_HINT_RENDER_LOGICAL_SIZE_MODE to control + the scaling policy for SDL_RenderSetLogicalSize(). + * Added the hints SDL_HINT_MOUSE_NORMAL_SPEED_SCALE and + SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE to scale the mouse speed + when being read from raw mouse input. + * Added the hint SDL_HINT_TOUCH_MOUSE_EVENTS to control whether + SDL will synthesize mouse events from touch events. + * Added an experimental KMS/DRM video driver for embedded + development. ------------------------------------------------------------------- Tue Aug 1 13:14:45 UTC 2017 - fcrozat@suse.com From 506f9f0e0e04591c3ddbf5f292868d4ba06352cf1ccf368fd30ec9f7eb4ff0fc Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sun, 1 Oct 2017 07:52:27 +0000 Subject: [PATCH 03/10] libsamplerate not directly usable atm OBS-URL: https://build.opensuse.org/package/show/games/SDL2?expand=0&rev=57 --- SDL2.changes | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/SDL2.changes b/SDL2.changes index e9d24f7..92452ff 100644 --- a/SDL2.changes +++ b/SDL2.changes @@ -18,8 +18,7 @@ Sat Sep 30 16:54:04 UTC 2017 - spartanj@gmail.com into memory. * Added SDL_DuplicateSurface() to make a copy of a surface. * Added an experimental JACK audio driver. - * Implemented non-power-of-two audio resampling, optionally - using libsamplerate to perform the resampling. + * Implemented non-power-of-two audio resampling. * Added the hint SDL_HINT_AUDIO_RESAMPLING_MODE to control the quality of resampling. * Added the hint SDL_HINT_RENDER_LOGICAL_SIZE_MODE to control From 87a016977b67ee72659218cc13de64c54d4ec3a2bcb5ad02a7202b09b9713d51 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Sun, 1 Oct 2017 08:15:17 +0000 Subject: [PATCH 04/10] +changelog entries OBS-URL: https://build.opensuse.org/package/show/games/SDL2?expand=0&rev=58 --- SDL2.changes | 1 + 1 file changed, 1 insertion(+) diff --git a/SDL2.changes b/SDL2.changes index 92452ff..e23d9b4 100644 --- a/SDL2.changes +++ b/SDL2.changes @@ -30,6 +30,7 @@ Sat Sep 30 16:54:04 UTC 2017 - spartanj@gmail.com SDL will synthesize mouse events from touch events. * Added an experimental KMS/DRM video driver for embedded development. +- Remove dbus-ime.diff (no longer needed) ------------------------------------------------------------------- Tue Aug 1 13:14:45 UTC 2017 - fcrozat@suse.com From 138b1e728a02c531b4e1c6fed37be318afc98ba26812602b8d5dee8872ced806 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Mon, 2 Oct 2017 10:29:44 +0000 Subject: [PATCH 05/10] Accepting request 530384 from home:Guillaume_G:branches:games - Enable KMS/DRM video driver OBS-URL: https://build.opensuse.org/request/show/530384 OBS-URL: https://build.opensuse.org/package/show/games/SDL2?expand=0&rev=59 --- SDL2.changes | 5 +++++ SDL2.spec | 6 +++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/SDL2.changes b/SDL2.changes index e23d9b4..23d2059 100644 --- a/SDL2.changes +++ b/SDL2.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Mon Oct 2 10:06:41 UTC 2017 - guillaume@opensuse.org + +- Enable KMS/DRM video driver + ------------------------------------------------------------------- Sat Sep 30 16:54:04 UTC 2017 - spartanj@gmail.com diff --git a/SDL2.spec b/SDL2.spec index 1410a6f..8928ae7 100644 --- a/SDL2.spec +++ b/SDL2.spec @@ -52,6 +52,9 @@ BuildRequires: pkgconfig(glesv1_cm) BuildRequires: pkgconfig(glesv2) %endif BuildRequires: pkgconfig(ice) +# KMS/DRM driver needs libdrm and libgbm +BuildRequires: libdrm-devel >= 2.4.46 +BuildRequires: libgbm-devel >= 9.0.0 %if 0%{?suse_version} > 1220 BuildRequires: pkgconfig(tslib) %endif @@ -124,7 +127,8 @@ dos2unix COPYING.txt %endif --disable-rpath \ --disable-alsa-shared \ - --disable-video-directfb + --disable-video-directfb \ + --enable-video-kmsdrm make %{?_smp_mflags} V=1 %install From 57c361c23b9ebf7d22214faaea7e03e298fb0ceccd30ed6ca092dbe31ba30a11 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Mon, 2 Oct 2017 10:30:24 +0000 Subject: [PATCH 06/10] switch to pkgconfig OBS-URL: https://build.opensuse.org/package/show/games/SDL2?expand=0&rev=60 --- SDL2.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/SDL2.spec b/SDL2.spec index 8928ae7..d5d9ddd 100644 --- a/SDL2.spec +++ b/SDL2.spec @@ -53,8 +53,8 @@ BuildRequires: pkgconfig(glesv2) %endif BuildRequires: pkgconfig(ice) # KMS/DRM driver needs libdrm and libgbm -BuildRequires: libdrm-devel >= 2.4.46 -BuildRequires: libgbm-devel >= 9.0.0 +BuildRequires: pkgconfig(libdrm) >= 2.4.46 +BuildRequires: pkgconfig(libgbm) >= 9.0.0 %if 0%{?suse_version} > 1220 BuildRequires: pkgconfig(tslib) %endif From 1abf86990296fc9c50ade0ee0d828ae6ad4d06b0d875694d718b92b754d0d4db Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Mon, 2 Oct 2017 10:30:55 +0000 Subject: [PATCH 07/10] drop pre-11.2 openSUSE support OBS-URL: https://build.opensuse.org/package/show/games/SDL2?expand=0&rev=61 --- SDL2.spec | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/SDL2.spec b/SDL2.spec index d5d9ddd..8577eb0 100644 --- a/SDL2.spec +++ b/SDL2.spec @@ -42,15 +42,13 @@ BuildRequires: pkgconfig(dbus-1) %if !0%{?sle_version} BuildRequires: pkgconfig(fcitx) %endif +BuildRequires: pkgconfig(egl) BuildRequires: pkgconfig(gl) +BuildRequires: pkgconfig(glesv1_cm) +BuildRequires: pkgconfig(glesv2) BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(glu) BuildRequires: pkgconfig(ibus-1.0) -%if 0%{?suse_version} > 1120 -BuildRequires: pkgconfig(egl) -BuildRequires: pkgconfig(glesv1_cm) -BuildRequires: pkgconfig(glesv2) -%endif BuildRequires: pkgconfig(ice) # KMS/DRM driver needs libdrm and libgbm BuildRequires: pkgconfig(libdrm) >= 2.4.46 @@ -58,20 +56,18 @@ BuildRequires: pkgconfig(libgbm) >= 9.0.0 %if 0%{?suse_version} > 1220 BuildRequires: pkgconfig(tslib) %endif -BuildRequires: pkgconfig(x11) -%if 0%{?suse_version} > 1120 -BuildRequires: pkgconfig(xcursor) -BuildRequires: pkgconfig(xinerama) -BuildRequires: pkgconfig(xrandr) -BuildRequires: pkgconfig(xscrnsaver) -BuildRequires: pkgconfig(xxf86vm) -%endif BuildRequires: pkgconfig(libpulse-simple) >= 0.9 BuildRequires: pkgconfig(libudev) BuildRequires: pkgconfig(udev) BuildRequires: pkgconfig(wayland-server) +BuildRequires: pkgconfig(x11) +BuildRequires: pkgconfig(xcursor) BuildRequires: pkgconfig(xext) BuildRequires: pkgconfig(xi) +BuildRequires: pkgconfig(xinerama) +BuildRequires: pkgconfig(xrandr) +BuildRequires: pkgconfig(xscrnsaver) +BuildRequires: pkgconfig(xxf86vm) %description This is the "Simple DirectMedia Layer" library. It provides a generic From ebe1d7ac63135b6c33dd4de6e50c42bdf01737782c9e1c81e4ae97920c15a80f Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Mon, 2 Oct 2017 10:33:57 +0000 Subject: [PATCH 08/10] OBS-URL: https://build.opensuse.org/package/show/games/SDL2?expand=0&rev=62 --- SDL2.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SDL2.spec b/SDL2.spec index 8577eb0..4791ef1 100644 --- a/SDL2.spec +++ b/SDL2.spec @@ -51,8 +51,8 @@ BuildRequires: pkgconfig(glu) BuildRequires: pkgconfig(ibus-1.0) BuildRequires: pkgconfig(ice) # KMS/DRM driver needs libdrm and libgbm +BuildRequires: pkgconfig(gbm) >= 9.0.0 BuildRequires: pkgconfig(libdrm) >= 2.4.46 -BuildRequires: pkgconfig(libgbm) >= 9.0.0 %if 0%{?suse_version} > 1220 BuildRequires: pkgconfig(tslib) %endif From e156901c4cf02d2e7d918f01c8962706967700be76c1ae40d87bf35b0f853c13 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Mon, 2 Oct 2017 19:15:42 +0000 Subject: [PATCH 09/10] - Add dbus.diff OBS-URL: https://build.opensuse.org/package/show/games/SDL2?expand=0&rev=63 --- SDL2.changes | 5 +++++ SDL2.spec | 16 ++++++++-------- dbus.diff | 21 +++++++++++++++++++++ 3 files changed, 34 insertions(+), 8 deletions(-) create mode 100644 dbus.diff diff --git a/SDL2.changes b/SDL2.changes index 23d2059..e6d314b 100644 --- a/SDL2.changes +++ b/SDL2.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Mon Oct 2 19:11:12 UTC 2017 - jengelh@inai.de + +- Add dbus.diff + ------------------------------------------------------------------- Mon Oct 2 10:06:41 UTC 2017 - guillaume@opensuse.org diff --git a/SDL2.spec b/SDL2.spec index 4791ef1..59eb0c2 100644 --- a/SDL2.spec +++ b/SDL2.spec @@ -30,7 +30,8 @@ Source: http://libsdl.org/release/%name-%version.tar.gz Source2: http://libsdl.org/release/%name-%version.tar.gz.sig Source3: %name.keyring Source4: baselibs.conf -Patch1: %{name}-ppc64-declaration-after-statement.patch +Patch1: dbus.diff +Patch2: %name-ppc64-declaration-after-statement.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: cmake BuildRequires: dos2unix @@ -104,8 +105,9 @@ library. %prep %setup -q -%ifarch ppc64 ppc64le %patch -P 1 -p1 +%ifarch ppc64 ppc64le +%patch -P 2 -p1 %endif dos2unix WhatsNew.txt dos2unix TODO.txt @@ -117,14 +119,12 @@ dos2unix COPYING.txt %build # In this instance, we do want --with-pic because of libSDL2main.a. -%configure --with-pic \ +%configure --with-pic --disable-alsa-shared --disable-video-directfb \ + --enable-video-kmsdrm \ %if 0%{?sle_version} - --disable-fcitx \ + --disable-fcitx \ %endif - --disable-rpath \ - --disable-alsa-shared \ - --disable-video-directfb \ - --enable-video-kmsdrm + --disable-rpath make %{?_smp_mflags} V=1 %install diff --git a/dbus.diff b/dbus.diff new file mode 100644 index 0000000..dd30509 --- /dev/null +++ b/dbus.diff @@ -0,0 +1,21 @@ +References: https://bugzilla.libsdl.org/show_bug.cgi?id=3854 + +Fix an assertion, triggered by libdbus receiving garbage +from a varargs function in SDL. +--- + src/core/linux/SDL_ibus.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: SDL2-2.0.6/src/core/linux/SDL_ibus.c +=================================================================== +--- SDL2-2.0.6.orig/src/core/linux/SDL_ibus.c ++++ SDL2-2.0.6/src/core/linux/SDL_ibus.c +@@ -479,7 +479,7 @@ IBus_SimpleMessage(const char *method) + SDL_DBusContext *dbus = SDL_DBus_GetContext(); + + if (IBus_CheckConnection(dbus)) { +- SDL_DBus_CallVoidMethodOnConnection(ibus_conn, IBUS_SERVICE, input_ctx_path, IBUS_INPUT_INTERFACE, method); ++ SDL_DBus_CallVoidMethodOnConnection(ibus_conn, IBUS_SERVICE, input_ctx_path, IBUS_INPUT_INTERFACE, method, DBUS_TYPE_INVALID); + } + } + From 32d3b82a1b26d2514708362cca27f1fb0b770b69628cc774875d98dc014933be Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Mon, 16 Oct 2017 18:30:42 +0000 Subject: [PATCH 10/10] Accepting request 534284 from home:wolfi323:branches:games - Disable SSE3 (and also SSE2 on ix86) to prevent crashes on older CPUs that don't support these instructions OBS-URL: https://build.opensuse.org/request/show/534284 OBS-URL: https://build.opensuse.org/package/show/games/SDL2?expand=0&rev=64 --- SDL2.changes | 6 ++++++ SDL2.spec | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/SDL2.changes b/SDL2.changes index e6d314b..9aa69ad 100644 --- a/SDL2.changes +++ b/SDL2.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Mon Oct 16 16:31:47 UTC 2017 - wbauer@tmo.at + +- Disable SSE3 (and also SSE2 on ix86) to prevent crashes on older + CPUs that don't support these instructions + ------------------------------------------------------------------- Mon Oct 2 19:11:12 UTC 2017 - jengelh@inai.de diff --git a/SDL2.spec b/SDL2.spec index 59eb0c2..2db09f2 100644 --- a/SDL2.spec +++ b/SDL2.spec @@ -124,6 +124,10 @@ dos2unix COPYING.txt %if 0%{?sle_version} --disable-fcitx \ %endif +%ifarch ix86 + --enable-sse2=no \ +%endif + --enable-sse3=no \ --disable-rpath make %{?_smp_mflags} V=1