From 1c41ad06786111b59b81e2adef01b39136f7df851a280a6618226cc90afd01c6 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Mon, 19 Aug 2024 21:00:46 +0000 Subject: [PATCH 1/2] [info=7ff1c7ddfcfca6294892aee8b69feb12507c6d67953bd3d80aaf7a14c1efb423] OBS-URL: https://build.opensuse.org/package/show/games/SDL3?expand=0&rev=7 --- .gitattributes | 23 +++++++ .gitignore | 1 + SDL3-3.1.2.tar.xz | 3 + SDL3.changes | 30 +++++++++ SDL3.keyring | 28 +++++++++ SDL3.spec | 154 ++++++++++++++++++++++++++++++++++++++++++++++ _scmsync.obsinfo | 4 ++ 7 files changed, 243 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 SDL3-3.1.2.tar.xz create mode 100644 SDL3.changes create mode 100644 SDL3.keyring create mode 100644 SDL3.spec create mode 100644 _scmsync.obsinfo diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/SDL3-3.1.2.tar.xz b/SDL3-3.1.2.tar.xz new file mode 100644 index 0000000..177d29f --- /dev/null +++ b/SDL3-3.1.2.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99a9e84b4d5afd68d423d364fdd03592efa7658208cddf3f846dbeb707569ecc +size 4751864 diff --git a/SDL3.changes b/SDL3.changes new file mode 100644 index 0000000..9ded2e0 --- /dev/null +++ b/SDL3.changes @@ -0,0 +1,30 @@ +------------------------------------------------------------------- +Wed May 1 19:06:37 UTC 2024 - Jan Engelhardt + +- Update to preview release 3.1.2 + * Added SDL_GlobDirectory() and SDL_GlobStorageDirectory() + * Reduced startup time when scanning for game controllers on + Linux + * Removed SDL_RENDERER_ACCELERATED, SDL_RENDERER_SOFTWARE, + SDL_HINT_RENDER_SCALE_QUALITY, SDL_quit.h + * Renamed SDL_eventaction to SDL_EventAction + +------------------------------------------------------------------- +Thu Apr 11 16:15:42 UTC 2024 - Jan Engelhardt + +- Update to preview release 3.1.1 + * Fixed a crash when rendering lots of content using the Vulkan + renderer + * Fixed text input being delivered when SDL_StartTextInput() + has not been called + * Fixed a performance regression initializing controllers on Linux + * Separated the joystick power state into battery status and + percentage + * Added an optional user parameter to main callback entry points + * Case insensitive string comparison functions are no longer + affected by locale + +------------------------------------------------------------------- +Fri Dec 2 21:18:51 UTC 2022 - Jan Engelhardt + +- Initial package (3.0~git251.1a890808a) for build.opensuse.org diff --git a/SDL3.keyring b/SDL3.keyring new file mode 100644 index 0000000..1ece2d6 --- /dev/null +++ b/SDL3.keyring @@ -0,0 +1,28 @@ +pub 1024D/A7763BE6 2001-01-05 +uid Sam Lantinga +sub 1024g/06F8768C 2001-01-05 + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v2.0.19 (GNU/Linux) + +mQGiBDpWOb0RBADQwd3d9mzt6KzqlsgXf9mikBuMbpKzYs1SBKYpdzUs9sRY0CnH +vCQTrL5sI57yKLnqEl6SbIiE75ZwrSWwvUDFFTh35Jew5nPZwv64en2kw2y4qrnJ +kBZCHDSU4KgfUZtoJ25Tmeru5MLNbXxCOoMszO5L5OchwMrGMtmFLRA/bwCgy5Th +d1/vJo+bej9tbgv++SJ05o0D/3MPK7EBoxWkQ0I+ScqOsvSMRQXWc/hXy4lyIp8e +xJByBApkv0LiiT3KlPpq/K2gTlDlCZ/JTt6Rv8Ug0g47R3a0aoz9kfc15UjHdiap +UOfF9MWmmbw59Lyx6+y2e0/C5xWzNOR1G4G5y4RZL/GXrp67xz/0fEhI85R+eASq +AEfSBAC5ZxwnBwyl+h+PXeJYKrPQjSUlgtSAkKp7PNBywwlue1LcSb7j4cc+cmgH +QMVuM883LPE59btNzFTAZjlzzIMiaXf5h9EkDARTGQ1wFiO3V5vIbVLh4kAoNfpT +egy7bYn3UrlbKg3V2DbCdEXm1zQufZzK7T0yenA5Ps8xXX7mNrQhU2FtIExhbnRp +bmdhIDxzbG91a2VuQGxpYnNkbC5vcmc+iF8EExECABcFAjpWOb0FCwcKAwQDFQMC +AxYCAQIXgAASCRAwpZN3p3Y75gdlR1BHAAEB31EAnjxYj6c496zRYru3fzUiPgl9 +JjFZAKCOkxoODf9qHbcdmFi1Mq0dTMP3OLkBDQQ6VjnDEAQA++MHQHlE0CPyEEX8 +urvzDmsnX9/lGpZeZ1/ECm4QT/04QVdRJReaz1/8ha/JJ3J/jw+Ti3aHxvyLsXR/ +dH61wKnqbQ+3UFI0di6Z+a2idPLkUeqnAFWUSLsjSzmYPeTE76Tw9BsBMcfmyYWe +jPZRNz4zNCNR21PNdSRSCq9/3NMAAwYD/1j+HquGLdhhd4jpKZtepybOxArNpZWE +t7DruzN6OdiwognWNrgx59iW2EJeCYgGuI1+3Ega0EjQ9ybPCmfR6SdE0ro2CmYR +JsYoJaHn0l6IArmF0E97jstIVVy3nNI729CFEPIvOHM8+0Hdd6gpNSQtbEFItt5l +XBwc8gr/AtqXiE4EGBECAAYFAjpWOcMAEgkQMKWTd6d2O+YHZUdQRwABAcZlAJ9z +Xumd1FC6YnvEST9eUQbeitjFhQCfYSvy7PxXgSfXedKsZmHWdka01zY= +=62+H +-----END PGP PUBLIC KEY BLOCK----- diff --git a/SDL3.spec b/SDL3.spec new file mode 100644 index 0000000..a7d37ca --- /dev/null +++ b/SDL3.spec @@ -0,0 +1,154 @@ +# +# spec file for package SDL3 +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%define sle_version 0 +Name: SDL3 +%define lname libSDL3-0 +Version: 3.1.2 +Release: 0 +Summary: Simple DirectMedia Layer Library +License: Zlib +Group: Development/Libraries/X11 +URL: https://libsdl.org/ +#Git-Clone: https://github.com/libsdl-org/SDL +#Source: https://libsdl.org/release/%name-%version.tar.gz +#Source2: https://libsdl.org/release/%name-%version.tar.gz.sig +Source: https://github.com/libsdl-org/SDL/releases/download/prerelease-%version/%name-%version.tar.xz +Source3: %name.keyring +BuildRequires: cmake +BuildRequires: gcc-c++ +BuildRequires: libdecor-devel +BuildRequires: pkg-config +BuildRequires: pkgconfig(alsa) >= 1.0.11 +BuildRequires: pkgconfig(dbus-1) +%if !0%{?sle_version} +BuildRequires: pkgconfig(fcitx) +%endif +BuildRequires: pkgconfig(egl) +BuildRequires: pkgconfig(gl) +BuildRequires: pkgconfig(glesv2) +BuildRequires: pkgconfig(glib-2.0) +BuildRequires: pkgconfig(glu) +BuildRequires: pkgconfig(ibus-1.0) +BuildRequires: pkgconfig(ice) +# KMS/DRM driver needs libdrm and libgbm +BuildRequires: pkgconfig(gbm) >= 11.1.0 +BuildRequires: pkgconfig(libdrm) >= 2.4.82 +BuildRequires: pkgconfig(libpipewire-0.3) >= 0.3.20 +BuildRequires: pkgconfig(libpulse-simple) >= 0.9 +BuildRequires: pkgconfig(libudev) +BuildRequires: pkgconfig(samplerate) +BuildRequires: pkgconfig(udev) +BuildRequires: pkgconfig(wayland-client) >= 1.18 +BuildRequires: pkgconfig(wayland-cursor) +BuildRequires: pkgconfig(wayland-egl) +BuildRequires: pkgconfig(wayland-protocols) +BuildRequires: pkgconfig(wayland-scanner) +BuildRequires: pkgconfig(x11) +BuildRequires: pkgconfig(xcursor) +BuildRequires: pkgconfig(xext) +BuildRequires: pkgconfig(xi) +BuildRequires: pkgconfig(xinerama) +BuildRequires: pkgconfig(xkbcommon) +BuildRequires: pkgconfig(xrandr) +BuildRequires: pkgconfig(xscrnsaver) +BuildRequires: pkgconfig(xxf86vm) + +%description +This is the "Simple DirectMedia Layer" library. It provides a generic +API for access to audio, keyboard, mouse, and display framebuffer +across multiple platforms. + +%package -n %lname +Summary: Simple DirectMedia Layer Library +Group: System/Libraries + +%description -n %lname +This is the "Simple DirectMedia Layer" library. It provides a generic +API for access to audio, keyboard, mouse, and display framebuffer +across multiple platforms. + +SDL uses dlopen, so if you experience problems under X11, check +again that libXrandr2 and libXi6 are in fact installed. + +%package devel +Summary: SDL3 Library Developer Files +Group: Development/Libraries/X11 +Requires: %lname = %version-%release +Requires: c_compiler +Requires: pkgconfig +Requires: pkgconfig(gl) +Requires: pkgconfig(glesv1_cm) +Requires: pkgconfig(glesv2) +Requires: pkgconfig(glu) +Requires: pkgconfig(x11) +Requires: pkgconfig(xproto) + +%description devel +This package contains files needed for development with the SDL +library. + +%package devel-doc +Summary: Manual pages for the SDL3 API +Group: Documentation/Man +BuildArch: noarch + +%description devel-doc +This package contains manual pages (in troff format) for the +SDL3 C API. + +%prep +%autosetup -p1 + +%build +%global _lto_cflags %_lto_cflags -ffat-lto-objects +# SDL_*_SHARED=false -> link to libs rather than dlopen. +%cmake \ +%ifarch %ix86 + -DSDL_MMX:BOOL=OFF -DSDL_SSE:BOOL=OFF -DSDL_SSE2:BOOL=OFF \ +%endif + -DSDL_SSE3:BOOL=OFF -DSDL_3DNOW:BOOL=OFF \ + -DSDL_ALSA_SHARED:BOOL=OFF -DSDL_LIBSAMPLERATE_SHARED:BOOL=OFF \ + -DSDL_PIPEWIRE_SHARED:BOOL=OFF -DSDL_PULSEAUDIO_SHARED:BOOL=OFF \ + -DSDL_X11_SHARED:BOOL=OFF -DSDL_WAYLAND_SHARED:BOOL=OFF \ + -DSDL_KMSDRM_SHARED:BOOL=OFF \ + -DSDL_STATIC:BOOL=OFF -DSDL_STATIC_PIC:BOOL=ON -DSDL_RPATH:BOOL=OFF \ + -DSDL_TEST_LIBRARY:BOOL=OFF + +%cmake_build + +%install +%cmake_install +rm -Rf "%buildroot/%_datadir/licenses" # we use %%license + +%ldconfig_scriptlets -n %lname + +%files -n %lname +%license LICENSE.txt +%_libdir/libSDL3.so.0* + +%files devel +%_libdir/libSDL3.so +%_includedir/SDL3/ +%_libdir/pkgconfig/sdl3.pc +%_libdir/cmake/SDL3/ + +%files devel-doc +%_mandir/man3/*.3* + +%changelog diff --git a/_scmsync.obsinfo b/_scmsync.obsinfo new file mode 100644 index 0000000..9c20fab --- /dev/null +++ b/_scmsync.obsinfo @@ -0,0 +1,4 @@ +mtime: 1714686445 +commit: 7ff1c7ddfcfca6294892aee8b69feb12507c6d67953bd3d80aaf7a14c1efb423 +url: https://src.opensuse.org/jengelh/SDL3 +revision: master From a0d64a6d8be6e68e69ce0cae571be7fc7c214c17854e34ff19cbb0e8683c3542 Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Mon, 19 Aug 2024 21:01:24 +0000 Subject: [PATCH 2/2] [info=769f4ba86b74cd19934b29acb6a164d9353633d8168f0ae67f2e10aefdb53e3c] OBS-URL: https://build.opensuse.org/package/show/games/SDL3?expand=0&rev=8 --- SDL3.changes | 5 +++++ SDL3.spec | 1 + _scmsync.obsinfo | 4 ++-- gcc14.patch | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 gcc14.patch diff --git a/SDL3.changes b/SDL3.changes index 9ded2e0..5f03a9f 100644 --- a/SDL3.changes +++ b/SDL3.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Mon Aug 19 21:05:37 UTC 2024 - Jan Engelhardt + +- Add gcc14.patch + ------------------------------------------------------------------- Wed May 1 19:06:37 UTC 2024 - Jan Engelhardt diff --git a/SDL3.spec b/SDL3.spec index a7d37ca..bf71131 100644 --- a/SDL3.spec +++ b/SDL3.spec @@ -30,6 +30,7 @@ URL: https://libsdl.org/ #Source2: https://libsdl.org/release/%name-%version.tar.gz.sig Source: https://github.com/libsdl-org/SDL/releases/download/prerelease-%version/%name-%version.tar.xz Source3: %name.keyring +Patch1: gcc14.patch BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: libdecor-devel diff --git a/_scmsync.obsinfo b/_scmsync.obsinfo index 9c20fab..c46b3eb 100644 --- a/_scmsync.obsinfo +++ b/_scmsync.obsinfo @@ -1,4 +1,4 @@ -mtime: 1714686445 -commit: 7ff1c7ddfcfca6294892aee8b69feb12507c6d67953bd3d80aaf7a14c1efb423 +mtime: 1724101552 +commit: 769f4ba86b74cd19934b29acb6a164d9353633d8168f0ae67f2e10aefdb53e3c url: https://src.opensuse.org/jengelh/SDL3 revision: master diff --git a/gcc14.patch b/gcc14.patch new file mode 100644 index 0000000..3c6e03a --- /dev/null +++ b/gcc14.patch @@ -0,0 +1,46 @@ +From fb02d9949459e7660195e7d98c06b29297be5ee8 Mon Sep 17 00:00:00 2001 +From: Jan Engelhardt +Date: Mon, 19 Aug 2024 22:47:45 +0200 +Subject: [PATCH] Resolve build failures in pipewire code +References: https://github.com/libsdl-org/SDL/pull/10568 + +g++-13 complains: + +``` +SDL_pipewire.c:129:42: warning: assignment to "struct pw_main_loop * +(*)(struct pw_main_loop *)" from incompatible pointer type "struct +pw_main_loop * (*)(const struct spa_dict *)" +[-Wincompatible-pointer-types] + 129 | #define SDL_PIPEWIRE_SYM(x) PIPEWIRE_##x = x +SDL_pipewire.c:148:5: note: in expansion of macro "SDL_PIPEWIRE_SYM" + 148 | SDL_PIPEWIRE_SYM(pw_main_loop_new); +``` + +g++-14 complains: + +``` +SDL_pipewire.c:129:42: error: assignment to "struct pw_main_loop * +(*)(const struct pw_main_loop *)" from incompatible pointer type +"struct pw_main_loop * (*)(const struct spa_dict *)" +[-Wincompatible-pointer-types] +``` +--- + src/audio/pipewire/SDL_pipewire.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/audio/pipewire/SDL_pipewire.c b/src/audio/pipewire/SDL_pipewire.c +index 251b324a3..ad8d1ef52 100644 +--- a/src/audio/pipewire/SDL_pipewire.c ++++ b/src/audio/pipewire/SDL_pipewire.c +@@ -56,7 +56,7 @@ static SDL_bool pipewire_initialized = SDL_FALSE; + static const char *(*PIPEWIRE_pw_get_library_version)(void); + static void (*PIPEWIRE_pw_init)(int *, char ***); + static void (*PIPEWIRE_pw_deinit)(void); +-static struct pw_main_loop *(*PIPEWIRE_pw_main_loop_new)(struct pw_main_loop *loop); ++static struct pw_main_loop *(*PIPEWIRE_pw_main_loop_new)(const struct spa_dict *loop); + static struct pw_loop *(*PIPEWIRE_pw_main_loop_get_loop)(struct pw_main_loop *loop); + static int (*PIPEWIRE_pw_main_loop_run)(struct pw_main_loop *loop); + static int (*PIPEWIRE_pw_main_loop_quit)(struct pw_main_loop *loop); +-- +2.46.0 +