SHA256
1
0
forked from pool/SDL2

- Update to release 2.0.22

OBS-URL: https://build.opensuse.org/package/show/games/SDL2?expand=0&rev=120
This commit is contained in:
2022-04-25 21:59:40 +00:00
committed by Git OBS Bridge
parent aa1945cf47
commit 9b2aa434fe
7 changed files with 69 additions and 148 deletions

View File

@@ -3,24 +3,21 @@ Date: 2018-01-10 23:56:12.245827883 +0100
Should-this-be-upstream: yes
Is-it-upstream: not submitted yet
The SDL project adds new functions over time, but they completely
fail to do the required ABI upkeep - which involves either bumping
the SO number or adding symvers. As a result of their lack of ABI
upkeep, the ELF system has no way to prohibit a too-modern program
being ran against a too-old SDL library, and that leads to bad user
experience, because symbols are resolved lazily and can crash the
program in the middle.
Functions were added over time, but neither was the SONAME changed
nor was a symvers file made. As a result, rpm is unable to
prevent a too-modern program being ran against a too-old SDL library.
It's bad user experience when symbols are resolved lazily, as the
program may crash.
---
Makefile.in | 2
sdl2.sym | 124 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 125 insertions(+), 1 deletion(-)
Makefile.in | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
Index: SDL2-2.0.16/Makefile.in
Index: SDL2-2.0.22/Makefile.in
===================================================================
--- SDL2-2.0.16.orig/Makefile.in
+++ SDL2-2.0.16/Makefile.in
@@ -132,7 +132,7 @@ LT_AGE = @LT_AGE@
--- SDL2-2.0.22.orig/Makefile.in
+++ SDL2-2.0.22/Makefile.in
@@ -134,7 +134,7 @@ LT_AGE = @LT_AGE@
LT_CURRENT = @LT_CURRENT@
LT_RELEASE = @LT_RELEASE@
LT_REVISION = @LT_REVISION@
@@ -29,132 +26,19 @@ Index: SDL2-2.0.16/Makefile.in
all: $(srcdir)/configure Makefile $(objects)/$(TARGET) $(objects)/$(SDLMAIN_TARGET) $(objects)/$(SDLTEST_TARGET)
Index: SDL2-2.0.16/sdl2.sym
===================================================================
--- /dev/null
+++ SDL2-2.0.16/sdl2.sym
@@ -0,0 +1,124 @@
+SUSE_2.0.5 {
+global:
+ SDL_DequeueAudio;
+ SDL_GetHintBoolean;
+ SDL_RenderSetIntegerScale;
+ SDL_CreateRGBSurfaceWithFormat;
+ SDL_CreateRGBSurfaceWithFormatFrom;
+ SDL_GetDisplayUsableBounds;
+ SDL_GetWindowBordersSize;
+ SDL_SetWindowResizable;
+ SDL_SetWindowOpacity;
+ SDL_SetWindowModalFor;
+};
+SUSE_2.0.6 {
+global:
+ SDL_Vulkan_LoadLibrary;
+ SDL_Vulkan_GetVkGetInstanceProcAddr;
+ SDL_Vulkan_GetInstanceExtensions;
+ SDL_Vulkan_CreateSurface;
+ SDL_Vulkan_GetDrawableSize;
+ SDL_Vulkan_UnloadLibrary;
+ SDL_ComposeCustomBlendMode;
+ SDL_HasNEON;
+ SDL_JoystickGetDeviceVendor;
+ SDL_JoystickGetDeviceProduct;
+ SDL_JoystickGetDeviceProductVersion;
+ SDL_JoystickGetDeviceType;
+ SDL_JoystickGetDeviceInstanceID;
+ SDL_JoystickGetVendor;
+ SDL_JoystickGetProduct;
+ SDL_JoystickGetProductVersion;
+ SDL_JoystickGetType;
+ SDL_JoystickGetAxisInitialState;
+ SDL_GameControllerGetVendor;
+ SDL_GameControllerGetProduct;
+ SDL_GameControllerGetProductVersion;
+ SDL_GameControllerNumMappings;
+ SDL_GameControllerMappingForIndex;
+ SDL_LoadFile;
+ SDL_LoadFile_RW;
+ SDL_DuplicateSurface;
+} SUSE_2.0.5;
+SUSE_2.0.7 {
+global:
+ SDL_NewAudioStream;
+ SDL_AudioStreamPut;
+ SDL_AudioStreamGet;
+ SDL_AudioStreamAvailable;
+ SDL_AudioStreamFlush;
+ SDL_AudioStreamClear;
+ SDL_FreeAudioStream;
+ SDL_GetMemoryFunctions;
+ SDL_SetMemoryFunctions;
+ SDL_GetNumAllocations;
+ SDL_LockJoystick;
+ SDL_UnlockJoystick;
+ SDL_SetEventFilter;
+ SDL_GetEventFilter;
+ SDL_AddEventWatch;
+ SDL_DelEventWatch;
+} SUSE_2.0.6;
+SUSE_2.0.8 {
+global:
+ SDL_fmod;
+ SDL_log10;
+ SDL_SetYUVConversionMode;
+ SDL_GetYUVConversionMode;
+} SUSE_2.0.7;
+SUSE_2.0.9 {
+global:
+ SDL_CreateThreadWithStackSize;
+ SDL_GameControllerGetPlayerIndex;
+ SDL_GameControllerMappingForDeviceIndex;
+ SDL_GameControllerRumble;
+ SDL_GetDisplayOrientation;
+ SDL_HasAVX512F;
+ SDL_HasColorKey;
+ SDL_IsTablet;
+ SDL_JoystickGetDevicePlayerIndex;
+ SDL_JoystickGetPlayerIndex;
+ SDL_JoystickRumble;
+ SDL_LinuxSetThreadPriority;
+ SDL_NumSensors;
+ SDL_SensorClose;
+ SDL_SensorFromInstanceID;
+ SDL_SensorGetData;
+ SDL_SensorGetDeviceInstanceID;
+ SDL_SensorGetDeviceName;
+ SDL_SensorGetDeviceNonPortableType;
+ SDL_SensorGetDeviceType;
+ SDL_SensorGetInstanceID;
+ SDL_SensorGetName;
+ SDL_SensorGetNonPortableType;
+ SDL_SensorGetType;
+ SDL_SensorOpen;
+ SDL_SensorUpdate;
+ SDL_exp;
+ SDL_expf;
+ SDL_wcsdup;
+} SUSE_2.0.8;
+SUSE_2.0.10 {
+global:
+ SDL_GetTouchDeviceType;
+ SDL_RWclose;
+ SDL_RWread;
+ SDL_RWseek;
+ SDL_RWsize;
+ SDL_RWtell;
+ SDL_RWwrite;
+ SDL_RenderCopyExF;
+ SDL_RenderCopyF;
+ SDL_RenderDrawLineF;
+ SDL_RenderDrawLinesF;
+ SDL_RenderDrawPointF;
+ SDL_RenderDrawPointsF;
+ SDL_RenderDrawRectF;
+ SDL_RenderDrawRectsF;
+ SDL_RenderFillRectF;
+ SDL_RenderFillRectsF;
+ SDL_RenderFlush;
+ SDL_SIMDAlloc;
+ SDL_SIMDFree;
+ SDL_SIMDGetAlignment;
+} SUSE_2.0.9;
@@ -155,7 +155,7 @@ update-revision:
.PHONY: all update-revision install install-bin install-hdrs install-lib install-data uninstall uninstall-bin uninstall-hdrs uninstall-lib uninstall-data clean distclean dist $(OBJECTS:.lo=.d)
-$(objects)/$(TARGET): $(GEN_HEADERS) $(GEN_OBJECTS) $(OBJECTS) $(VERSION_OBJECTS)
+$(objects)/$(TARGET): $(GEN_HEADERS) $(GEN_OBJECTS) $(OBJECTS) $(VERSION_OBJECTS) sdl2.sym
$(RUN_CMD_LTLINK)$(LIBTOOL) --tag=$(LIBTOOLLINKERTAG) --mode=link $(LINKER) -o $@ $(OBJECTS) $(GEN_OBJECTS) $(VERSION_OBJECTS) $(LDFLAGS) $(EXTRA_LDFLAGS) $(LT_LDFLAGS)
$(objects)/$(SDLMAIN_TARGET): $(SDLMAIN_OBJECTS)
@@ -257,3 +257,6 @@ dist $(distfile):
rpm: $(distfile)
rpmbuild -ta $?
+
+sdl2.sym:
+ echo 'V_${PACKAGE_VERSION} { global: *; };' >$@