diff options
author | nia <nia@pkgsrc.org> | 2020-04-05 16:22:42 +0000 |
---|---|---|
committer | nia <nia@pkgsrc.org> | 2020-04-05 16:22:42 +0000 |
commit | 741e83dc61ee706198742ba19d885dc18a209934 (patch) | |
tree | 6e2faeca1d793603d3bc9d45380fdfaf6321c505 | |
parent | 91a406ed71989a4bad56bdf37c22a0c08390909d (diff) | |
download | pkgsrc-741e83dc61ee706198742ba19d885dc18a209934.tar.gz |
SDL2: Update with the latest round of patches sent to bugzilla
- Drop patches that are no longer relevant.
- Add support for 32-bit LPCM audio on NetBSD.
- Fix a wayland protocol handling issue.
8 files changed, 93 insertions, 49 deletions
diff --git a/devel/SDL2/Makefile b/devel/SDL2/Makefile index ca0718350a9..0b9947189c5 100644 --- a/devel/SDL2/Makefile +++ b/devel/SDL2/Makefile @@ -1,6 +1,7 @@ -# $NetBSD: Makefile,v 1.47 2020/03/17 12:49:29 nia Exp $ +# $NetBSD: Makefile,v 1.48 2020/04/05 16:22:42 nia Exp $ DISTNAME= SDL2-2.0.12 +PKGREVISION= 1 CATEGORIES= devel MASTER_SITES= https://www.libsdl.org/release/ diff --git a/devel/SDL2/distinfo b/devel/SDL2/distinfo index 7baca6a8002..6e1d2c8aa7f 100644 --- a/devel/SDL2/distinfo +++ b/devel/SDL2/distinfo @@ -1,11 +1,12 @@ -$NetBSD: distinfo,v 1.38 2020/03/17 12:49:29 nia Exp $ +$NetBSD: distinfo,v 1.39 2020/04/05 16:22:42 nia Exp $ SHA1 (SDL2-2.0.12.tar.gz) = e8ba91bf5eb438dbcf1fedf0530a1bcbe30d3bb6 RMD160 (SDL2-2.0.12.tar.gz) = 0f2c979da6151b622a6445e7fc8d4e3ea8987105 SHA512 (SDL2-2.0.12.tar.gz) = 3f1f04af0f3d9dda9c84a2e9274ae8d83ea0da3fc367970a820036cc4dc1dbf990cfc37e4975ae05f0b45a4ffa739c6c19e470c00bf3f2bce9b8b63717b8b317 Size (SDL2-2.0.12.tar.gz) = 5720162 bytes SHA1 (patch-configure) = 3038dc62450f6b64197ee4aa42d8ec9518a608bd -SHA1 (patch-src_joystick_bsd_SDL__sysjoystick.c) = 1c5756e47ad906235369b46b36d7b0b1ee776156 -SHA1 (patch-src_video_cocoa_SDL__cocoawindow.m) = 1d5ac9c17ceadf668925734b5cad311e26f2fc58 -SHA1 (patch-src_video_wayland_SDL__waylandevents.c) = 15ba8caf1b0036ffe859669cc1ed4a535d164e7b +SHA1 (patch-src_audio_netbsd_SDL__netbsdaudio.c) = 2100f4259a0054730475cc2bf062771b093bd083 +SHA1 (patch-src_video_wayland_SDL__waylandevents.c) = 57e42371e072048e5b377aeb58bb1ffce72784f0 +SHA1 (patch-src_video_wayland_SDL__waylandevents__c.h) = 3a723a81f05052bd50e8cb1592ba747b5f59ea1a +SHA1 (patch-src_video_wayland_SDL__waylandvideo.c) = 823e434710f8b946b13ea7a6751cf1c30ec48600 SHA1 (patch-src_video_x11_SDL__x11opengl.c) = d506a17a0d7e3571e2ae4385cc864f9a2e4eeb3c diff --git a/devel/SDL2/patches/patch-src_audio_netbsd_SDL__netbsdaudio.c b/devel/SDL2/patches/patch-src_audio_netbsd_SDL__netbsdaudio.c new file mode 100644 index 00000000000..9be99b493f9 --- /dev/null +++ b/devel/SDL2/patches/patch-src_audio_netbsd_SDL__netbsdaudio.c @@ -0,0 +1,21 @@ +$NetBSD: patch-src_audio_netbsd_SDL__netbsdaudio.c,v 1.4 2020/04/05 16:22:42 nia Exp $ + +https://bugzilla.libsdl.org/show_bug.cgi?id=5076 + +--- src/audio/netbsd/SDL_netbsdaudio.c.orig 2020-03-11 01:36:18.000000000 +0000 ++++ src/audio/netbsd/SDL_netbsdaudio.c +@@ -261,6 +261,14 @@ NETBSDAUDIO_OpenDevice(_THIS, void *hand + prinfo->encoding = AUDIO_ENCODING_ULINEAR_BE; + prinfo->precision = 16; + break; ++ case AUDIO_S32LSB: ++ prinfo->encoding = AUDIO_ENCODING_SLINEAR_LE; ++ prinfo->precision = 32; ++ break; ++ case AUDIO_S32MSB: ++ prinfo->encoding = AUDIO_ENCODING_SLINEAR_BE; ++ prinfo->precision = 32; ++ break; + } + if (prinfo->encoding != AUDIO_ENCODING_NONE) { + break; diff --git a/devel/SDL2/patches/patch-src_joystick_bsd_SDL__sysjoystick.c b/devel/SDL2/patches/patch-src_joystick_bsd_SDL__sysjoystick.c deleted file mode 100644 index d46d17f7027..00000000000 --- a/devel/SDL2/patches/patch-src_joystick_bsd_SDL__sysjoystick.c +++ /dev/null @@ -1,19 +0,0 @@ -$NetBSD: patch-src_joystick_bsd_SDL__sysjoystick.c,v 1.7 2019/07/27 15:29:10 nia Exp $ - -Move variable declarations to top, for C90. - ---- src/joystick/bsd/SDL_sysjoystick.c.orig 2019-07-25 04:32:36.000000000 +0000 -+++ src/joystick/bsd/SDL_sysjoystick.c -@@ -45,6 +45,12 @@ - #ifdef __DragonFly__ - #include <bus/usb/usb.h> - #include <bus/usb/usbhid.h> -+#elif defined(__NetBSD__) -+#include <dev/usb/usb.h> -+#include <dev/usb/usbhid.h> -+#if __NetBSD_Version__ >= 899000900 -+#include <dev/hid/hid.h> -+#endif - #else - #include <dev/usb/usb.h> - #include <dev/usb/usbhid.h> diff --git a/devel/SDL2/patches/patch-src_video_cocoa_SDL__cocoawindow.m b/devel/SDL2/patches/patch-src_video_cocoa_SDL__cocoawindow.m deleted file mode 100644 index 579f9b9397d..00000000000 --- a/devel/SDL2/patches/patch-src_video_cocoa_SDL__cocoawindow.m +++ /dev/null @@ -1,24 +0,0 @@ -$NetBSD: patch-src_video_cocoa_SDL__cocoawindow.m,v 1.1 2018/12/05 10:46:15 bsiegert Exp $ - -# HG changeset patch -# User Ryan C. Gordon <icculus@icculus.org> -# Date 1538007032 14400 -# Node ID 55489adbb75c8eb7c7719a3f9c85a15d06df2f27 -# Parent 21c0605222581aa820dbb19db987c5dc0d497239 -cocoa: Force an OpenGL context update when the window becomes key. - -Fixes missing rendering on macOS 10.14 ("Mojave"). - -Fixes Bugzilla #4272. - ---- src/video/cocoa/SDL_cocoawindow.m.orig 2018-10-31 15:07:22.000000000 +0000 -+++ src/video/cocoa/SDL_cocoawindow.m -@@ -632,6 +632,8 @@ SetWindowStyle(SDL_Window * window, NSUI - const unsigned int newflags = [NSEvent modifierFlags] & NSEventModifierFlagCapsLock; - _data->videodata->modifierFlags = (_data->videodata->modifierFlags & ~NSEventModifierFlagCapsLock) | newflags; - SDL_ToggleModState(KMOD_CAPS, newflags != 0); -+ -+ ScheduleContextUpdates(_data); - } - - - (void)windowDidResignKey:(NSNotification *)aNotification diff --git a/devel/SDL2/patches/patch-src_video_wayland_SDL__waylandevents.c b/devel/SDL2/patches/patch-src_video_wayland_SDL__waylandevents.c index 088c4e43755..7e79ea38c31 100644 --- a/devel/SDL2/patches/patch-src_video_wayland_SDL__waylandevents.c +++ b/devel/SDL2/patches/patch-src_video_wayland_SDL__waylandevents.c @@ -1,7 +1,11 @@ -$NetBSD: patch-src_video_wayland_SDL__waylandevents.c,v 1.4 2020/03/17 12:49:29 nia Exp $ +$NetBSD: patch-src_video_wayland_SDL__waylandevents.c,v 1.5 2020/04/05 16:22:42 nia Exp $ Allow building with Wayland on operating systems without evdev. +Fix wl_seat version fallback. + +https://bugzilla.libsdl.org/show_bug.cgi?id=5074 + --- src/video/wayland/SDL_waylandevents.c.orig 2020-03-11 01:36:18.000000000 +0000 +++ src/video/wayland/SDL_waylandevents.c @@ -43,7 +43,15 @@ @@ -20,3 +24,33 @@ Allow building with Wayland on operating systems without evdev. #include <sys/select.h> #include <sys/mman.h> #include <poll.h> +@@ -437,7 +445,7 @@ pointer_handle_axis(void *data, struct w + { + struct SDL_WaylandInput *input = data; + +- if(wl_seat_interface.version >= 5) ++ if(wl_seat_get_version(input->seat) >= 5) + pointer_handle_axis_common(input, SDL_FALSE, axis, value); + else + pointer_handle_axis_common_v1(input, time, axis, value); +@@ -998,7 +1006,7 @@ static const struct wl_data_device_liste + }; + + void +-Wayland_display_add_input(SDL_VideoData *d, uint32_t id) ++Wayland_display_add_input(SDL_VideoData *d, uint32_t id, uint32_t version) + { + struct SDL_WaylandInput *input; + SDL_WaylandDataDevice *data_device = NULL; +@@ -1008,10 +1016,7 @@ Wayland_display_add_input(SDL_VideoData + return; + + input->display = d; +- if (wl_seat_interface.version >= 5) +- input->seat = wl_registry_bind(d->registry, id, &wl_seat_interface, 5); +- else +- input->seat = wl_registry_bind(d->registry, id, &wl_seat_interface, 1); ++ input->seat = wl_registry_bind(d->registry, id, &wl_seat_interface, SDL_min(5, version)); + input->sx_w = wl_fixed_from_int(0); + input->sy_w = wl_fixed_from_int(0); + d->input = input; diff --git a/devel/SDL2/patches/patch-src_video_wayland_SDL__waylandevents__c.h b/devel/SDL2/patches/patch-src_video_wayland_SDL__waylandevents__c.h new file mode 100644 index 00000000000..b9efc398ed7 --- /dev/null +++ b/devel/SDL2/patches/patch-src_video_wayland_SDL__waylandevents__c.h @@ -0,0 +1,15 @@ +$NetBSD: patch-src_video_wayland_SDL__waylandevents__c.h,v 1.1 2020/04/05 16:22:42 nia Exp $ + +https://bugzilla.libsdl.org/show_bug.cgi?id=5074 + +--- src/video/wayland/SDL_waylandevents_c.h.orig 2020-03-11 01:36:18.000000000 +0000 ++++ src/video/wayland/SDL_waylandevents_c.h +@@ -32,7 +32,7 @@ struct SDL_WaylandInput; + + extern void Wayland_PumpEvents(_THIS); + +-extern void Wayland_display_add_input(SDL_VideoData *d, uint32_t id); ++extern void Wayland_display_add_input(SDL_VideoData *d, uint32_t id, uint32_t version); + extern void Wayland_display_destroy_input(SDL_VideoData *d); + + extern SDL_WaylandDataDevice* Wayland_get_data_device(struct SDL_WaylandInput *input); diff --git a/devel/SDL2/patches/patch-src_video_wayland_SDL__waylandvideo.c b/devel/SDL2/patches/patch-src_video_wayland_SDL__waylandvideo.c new file mode 100644 index 00000000000..96a40e2f468 --- /dev/null +++ b/devel/SDL2/patches/patch-src_video_wayland_SDL__waylandvideo.c @@ -0,0 +1,15 @@ +$NetBSD: patch-src_video_wayland_SDL__waylandvideo.c,v 1.3 2020/04/05 16:22:42 nia Exp $ + +https://bugzilla.libsdl.org/show_bug.cgi?id=5074 + +--- src/video/wayland/SDL_waylandvideo.c.orig 2020-03-11 01:36:18.000000000 +0000 ++++ src/video/wayland/SDL_waylandvideo.c +@@ -364,7 +364,7 @@ display_handle_global(void *data, struct + } else if (strcmp(interface, "wl_output") == 0) { + Wayland_add_display(d, id); + } else if (strcmp(interface, "wl_seat") == 0) { +- Wayland_display_add_input(d, id); ++ Wayland_display_add_input(d, id, version); + } else if (strcmp(interface, "xdg_wm_base") == 0) { + d->shell.xdg = wl_registry_bind(d->registry, id, &xdg_wm_base_interface, 1); + xdg_wm_base_add_listener(d->shell.xdg, &shell_listener_xdg, NULL); |