Update to 2.0.20

- Drop backported patches included in this release
This commit is contained in:
Neal Gompa 2022-01-10 22:38:52 -05:00
parent 2ddcff2faa
commit d70a1efb5e
5 changed files with 8 additions and 177 deletions

1
.gitignore vendored
View File

@ -13,3 +13,4 @@
/SDL2-2.0.14.tar.gz
/SDL2-2.0.16.tar.gz
/SDL2-2.0.18.tar.gz
/SDL2-2.0.20.tar.gz

View File

@ -1,127 +0,0 @@
From f68563f1889a3786b74167bdbb286925ff7008be Mon Sep 17 00:00:00 2001
From: Neal Gompa <ngompa13@gmail.com>
Date: Fri, 7 Jan 2022 13:56:36 -0500
Subject: [PATCH] cmake: Split SDL2-static and SDL2main into their own target
exports
This makes it so that the generated targets are not interdependent,
which allows Linux distributions to split libraries into the
appropriate subpackages as needed.
---
CMakeLists.txt | 56 +++++++++++++++++++++++++++++++++++++-----------
SDL2Config.cmake | 6 ++++++
2 files changed, 50 insertions(+), 12 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 76cc3c516..be15edc74 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -2748,7 +2748,6 @@ if(NOT WINDOWS_STORE)
add_library(SDL2::SDL2main ALIAS SDL2main)
target_include_directories(SDL2main BEFORE PRIVATE "${SDL2_BINARY_DIR}/include")
target_include_directories(SDL2main PUBLIC "$<BUILD_INTERFACE:${SDL2_SOURCE_DIR}/include>" $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}> $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/SDL2>)
- set(_INSTALL_LIBS "SDL2main")
if (NOT ANDROID)
set_target_properties(SDL2main PROPERTIES DEBUG_POSTFIX "${SDL_CMAKE_DEBUG_POSTFIX}")
endif()
@@ -2794,7 +2793,6 @@ if(SDL_SHARED)
endif()
set_target_properties(SDL2 PROPERTIES STATIC_LIBRARY_FLAGS "/NODEFAULTLIB")
endif()
- set(_INSTALL_LIBS "SDL2" ${_INSTALL_LIBS})
target_link_libraries(SDL2 PRIVATE ${EXTRA_LIBS} ${EXTRA_LDFLAGS})
target_include_directories(SDL2 BEFORE PRIVATE "${SDL2_BINARY_DIR}/include")
target_include_directories(SDL2 PUBLIC "$<BUILD_INTERFACE:${SDL2_SOURCE_DIR}/include>;$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>;$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/SDL2>")
@@ -2826,7 +2824,6 @@ if(SDL_STATIC)
endif()
# TODO: Win32 platforms keep the same suffix .lib for import and static
# libraries - do we need to consider this?
- set(_INSTALL_LIBS "SDL2-static" ${_INSTALL_LIBS})
target_link_libraries(SDL2-static PRIVATE ${EXTRA_LIBS} ${EXTRA_LDFLAGS})
target_include_directories(SDL2-static BEFORE PRIVATE "${SDL2_BINARY_DIR}/include")
target_include_directories(SDL2-static PUBLIC "$<BUILD_INTERFACE:${SDL2_SOURCE_DIR}/include>" $<INSTALL_INTERFACE:include> $<INSTALL_INTERFACE:include/SDL2>)
@@ -2848,10 +2845,26 @@ if(SDL_TEST)
endif()
##### Installation targets #####
-install(TARGETS ${_INSTALL_LIBS} EXPORT SDL2Targets
- LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
- ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
- RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
+if(SDL_SHARED)
+ install(TARGETS SDL2 EXPORT SDL2Targets
+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
+endif()
+
+if(NOT WINDOWS_STORE)
+ install(TARGETS SDL2main EXPORT SDL2mainTargets
+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
+endif()
+
+if(SDL_STATIC)
+ install(TARGETS SDL2-static EXPORT SDL2staticTargets
+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
+endif()
##### Export files #####
if (WINDOWS AND NOT MINGW)
@@ -2866,11 +2879,30 @@ write_basic_package_version_file("${CMAKE_BINARY_DIR}/SDL2ConfigVersion.cmake"
COMPATIBILITY AnyNewerVersion
)
-install(EXPORT SDL2Targets
- FILE SDL2Targets.cmake
- NAMESPACE SDL2::
- DESTINATION ${PKG_PREFIX}
-)
+if(SDL_SHARED)
+ install(EXPORT SDL2Targets
+ FILE SDL2Targets.cmake
+ NAMESPACE SDL2::
+ DESTINATION ${PKG_PREFIX}
+ )
+endif()
+
+if(NOT WINDOWS_STORE)
+ install(EXPORT SDL2mainTargets
+ FILE SDL2mainTargets.cmake
+ NAMESPACE SDL2::
+ DESTINATION ${PKG_PREFIX}
+ )
+endif()
+
+if(SDL_STATIC)
+ install(EXPORT SDL2staticTargets
+ FILE SDL2staticTargets.cmake
+ NAMESPACE SDL2::
+ DESTINATION ${PKG_PREFIX}
+ )
+endif()
+
install(
FILES
${CMAKE_CURRENT_SOURCE_DIR}/SDL2Config.cmake
diff --git a/SDL2Config.cmake b/SDL2Config.cmake
index 7c31469f1..831eab6e8 100644
--- a/SDL2Config.cmake
+++ b/SDL2Config.cmake
@@ -1,4 +1,10 @@
include("${CMAKE_CURRENT_LIST_DIR}/SDL2Targets.cmake")
+if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/SDL2mainTargets.cmake")
+ include("${CMAKE_CURRENT_LIST_DIR}/SDL2mainTargets.cmake")
+endif()
+if(EXISTS "${CMAKE_CURRENT_LIST_DIR}/SDL2staticTargets.cmake")
+ include("${CMAKE_CURRENT_LIST_DIR}/SDL2staticTargets.cmake")
+endif()
# on static-only builds create an alias
if(NOT TARGET SDL2::SDL2 AND TARGET SDL2::SDL2-static)
--
2.33.1

View File

@ -1,39 +0,0 @@
From 068c13b1cac4fead98a458b70ef482ddc8205358 Mon Sep 17 00:00:00 2001
From: David Redondo <kde@david-redondo.de>
Date: Fri, 10 Dec 2021 16:22:34 +0100
Subject: [PATCH] Fix build against wayland 1.20
Fixes #5088
---
src/video/wayland/SDL_waylanddyn.h | 2 ++
src/video/wayland/SDL_waylandsym.h | 4 ++++
2 files changed, 6 insertions(+)
diff --git a/src/video/wayland/SDL_waylanddyn.h b/src/video/wayland/SDL_waylanddyn.h
index 13b0884d076..2268555604a 100644
--- a/src/video/wayland/SDL_waylanddyn.h
+++ b/src/video/wayland/SDL_waylanddyn.h
@@ -95,6 +95,8 @@ void SDL_WAYLAND_UnloadSymbols(void);
#define wl_proxy_marshal_constructor_versioned (*WAYLAND_wl_proxy_marshal_constructor_versioned)
#define wl_proxy_set_tag (*WAYLAND_wl_proxy_set_tag)
#define wl_proxy_get_tag (*WAYLAND_wl_proxy_get_tag)
+#define wl_proxy_marshal_flags (*WAYLAND_wl_proxy_marshal_flags)
+#define wl_proxy_marshal_array_flags (*WAYLAND_wl_proxy_marshal_array_flags)
#define wl_seat_interface (*WAYLAND_wl_seat_interface)
#define wl_surface_interface (*WAYLAND_wl_surface_interface)
diff --git a/src/video/wayland/SDL_waylandsym.h b/src/video/wayland/SDL_waylandsym.h
index d6e6a761d39..32e47d26e2d 100644
--- a/src/video/wayland/SDL_waylandsym.h
+++ b/src/video/wayland/SDL_waylandsym.h
@@ -84,6 +84,10 @@ SDL_WAYLAND_MODULE(WAYLAND_CLIENT_1_18)
SDL_WAYLAND_SYM(void, wl_proxy_set_tag, (struct wl_proxy *, const char * const *))
SDL_WAYLAND_SYM(const char * const *, wl_proxy_get_tag, (struct wl_proxy *))
+SDL_WAYLAND_MODULE(WAYLAND_CLIENT_1_20)
+SDL_WAYLAND_SYM(struct wl_proxy*, wl_proxy_marshal_flags, (struct wl_proxy *proxy, uint32_t opcode, const struct wl_interface *interfac, uint32_t version, uint32_t flags, ...))
+SDL_WAYLAND_SYM(struct wl_proxy*, wl_proxy_marshal_array_flags, (struct wl_proxy *proxy, uint32_t opcode, const struct wl_interface *interface, uint32_t version, uint32_t flags, union wl_argument *args))
+
SDL_WAYLAND_INTERFACE(wl_seat_interface)
SDL_WAYLAND_INTERFACE(wl_surface_interface)
SDL_WAYLAND_INTERFACE(wl_shm_pool_interface)

View File

@ -9,8 +9,8 @@
%global libdecor_majver 0
Name: SDL2
Version: 2.0.18
Release: 5%{?dist}
Version: 2.0.20
Release: 1%{?dist}
Summary: Cross-platform multimedia library
License: zlib and MIT
URL: http://www.libsdl.org/
@ -22,14 +22,6 @@ Patch0: multilib.patch
# ptrdiff_t is not the same as khronos defines on 32bit arches
Patch1: SDL2-2.0.9-khrplatform.patch
# Backports from upstream
## From: https://github.com/libsdl-org/SDL/commit/e2ade2bfc46d915cd306c63c830b81d800b2575f
Patch100: SDL2-2.0.18-Fix-build-against-wayland-1.20.patch
# Proposed upstream
## From: https://github.com/libsdl-org/SDL/pull/5171
Patch500: PR5171-split-static-cmake-targets.patch
BuildRequires: git-core
BuildRequires: cmake
BuildRequires: make
@ -175,6 +167,10 @@ install -p -m 644 %{SOURCE2} %{buildroot}%{_includedir}/SDL2/SDL_revision.h
%{_libdir}/cmake/SDL2/SDL2staticTargets*.cmake
%changelog
* Tue Jan 11 2022 Neal Gompa <ngompa@fedoraproject.org> - 2.0.20-1
- Update to 2.0.20
- Drop backported patches included in this release
* Fri Jan 07 2022 Neal Gompa <ngompa@fedoraproject.org> - 2.0.18-5
- Refresh SDL target split patch to include targets correctly

View File

@ -1 +1 @@
SHA512 (SDL2-2.0.18.tar.gz) = 8688b855ce15d574fb0726dd2a44109bb7b34d81c652c51025a32bf7eb7015ceb685834cf9fc3f97a2f5f5a3203f548ce6845420fafae7e5dc6bb9d11ce1740d
SHA512 (SDL2-2.0.20.tar.gz) = 4889949eaa674948bdb0a01bb2a842a0943b15b08ff27ec0079b0fd4f79d071ffb32488a5a51c12ad7c74ed5fe73b608cdf6336a44c95dae8a0fb3f47d0f01de