]> git.pld-linux.org Git - packages/SDL2.git/commitdiff
upstream fix for missing cmake target; rel 2 auto/th/SDL2-2.24.0-2
authorJan Palus <atler@pld-linux.org>
Wed, 31 Aug 2022 09:12:41 +0000 (11:12 +0200)
committerJan Palus <atler@pld-linux.org>
Wed, 31 Aug 2022 09:12:41 +0000 (11:12 +0200)
from: https://github.com/libsdl-org/SDL/pull/6120

SDL2.spec
cmake-target.patch [new file with mode: 0644]

index 1f87f4ea861bfad9c4287a662ee69008bfec47b4..c2d3ba796654ed65b47fe5570365f096ba82e3d6 100644 (file)
--- a/SDL2.spec
+++ b/SDL2.spec
@@ -61,12 +61,13 @@ Summary(pl.UTF-8):  SDL (Simple DirectMedia Layer) - Biblioteka do gier/multimedi
 Summary(zh_CN.UTF-8):  SDL (Simple DirectMedia Layer) Generic APIs - 游戏/多媒体库
 Name:          SDL2
 Version:       2.24.0
-Release:       1
+Release:       2
 License:       Zlib (BSD-like)
 Group:         Libraries
 Source0:       http://www.libsdl.org/release/%{name}-%{version}.tar.gz
 # Source0-md5: cf539ffe9e0dd6f943ac9de75fd2e56e
 Patch0:                %{name}-config.patch
+Patch1:                cmake-target.patch
 URL:           http://www.libsdl.org/
 %{?with_kms:BuildRequires:     Mesa-libgbm-devel >= 11.1.0}
 %{?with_directfb:BuildRequires:        DirectFB-devel >= 1.0.0}
@@ -212,6 +213,7 @@ SDL - przykładowe programy.
 %prep
 %setup -q
 %patch0 -p1
+%patch1 -p1
 
 %build
 %{__libtoolize}
diff --git a/cmake-target.patch b/cmake-target.patch
new file mode 100644 (file)
index 0000000..f611318
--- /dev/null
@@ -0,0 +1,109 @@
+From 945b611b268032bc11ef27812b2ce197f639e1e2 Mon Sep 17 00:00:00 2001
+From: Anonymous Maarten <anonymous.maarten@gmail.com>
+Date: Wed, 24 Aug 2022 04:12:58 +0200
+Subject: [PATCH 1/2] cmake: create SDL2::SDL2main target in Apple framework
+ official release
+
+---
+ Xcode/SDL/pkg-support/resources/CMake/sdl2-config.cmake | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/Xcode/SDL/pkg-support/resources/CMake/sdl2-config.cmake b/Xcode/SDL/pkg-support/resources/CMake/sdl2-config.cmake
+index cc5cc4a8a57..ca6bb3e9230 100644
+--- a/Xcode/SDL/pkg-support/resources/CMake/sdl2-config.cmake
++++ b/Xcode/SDL/pkg-support/resources/CMake/sdl2-config.cmake
+@@ -58,7 +58,10 @@ if(NOT TARGET SDL2::SDL2)
+             COMPATIBLE_INTERFACE_BOOL "SDL2_SHARED"
+             INTERFACE_SDL2_SHARED "ON"
+     )
++    set(SDL2_SDL2_FOUND TRUE)
+ endif()
+-set(SDL2_SDL2_FOUND)
++
++add_library(SDL2::SDL2main INTERFACE IMPORTED)
++set(SDL2_SDL2main_FOUND TRUE)
+ check_required_components(SDL2)
+
+From d2f4748d9753398c703dc0db10891136ab71621a Mon Sep 17 00:00:00 2001
+From: Anonymous Maarten <anonymous.maarten@gmail.com>
+Date: Wed, 24 Aug 2022 04:14:52 +0200
+Subject: [PATCH 2/2] cmake: always create SDL2::SDL2main target in autotools'
+ cmake config script
+
+---
+ sdl2-config.cmake.in | 57 ++++++++++++++++++++++----------------------
+ 1 file changed, 29 insertions(+), 28 deletions(-)
+
+diff --git a/sdl2-config.cmake.in b/sdl2-config.cmake.in
+index 75bd8d1edf0..2457586e6fb 100644
+--- a/sdl2-config.cmake.in
++++ b/sdl2-config.cmake.in
+@@ -62,38 +62,39 @@ string(REGEX REPLACE ";-L" ";" _sdl2_static_private_libdirs "${_sdl2_static_priv
+ if(_sdl2_libraries MATCHES ".*SDL2main.*")
+   list(INSERT SDL2_LIBRARIES 0 SDL2::SDL2main)
+   list(INSERT SDL2_STATIC_LIBRARIES 0 SDL2::SDL2main)
+-  set(_sdl2main_library ${SDL2_LIBDIR}/${CMAKE_STATIC_LIBRARY_PREFIX}SDL2main${CMAKE_STATIC_LIBRARY_SUFFIX})
+-  if(EXISTS "${_sdl2main_library}")
+-    set(SDL2MAIN_LIBRARY SDL2::SDL2main)
+-    if(NOT TARGET SDL2::SDL2main)
+-      add_library(SDL2::SDL2main STATIC IMPORTED)
+-      set_target_properties(SDL2::SDL2main
+-        PROPERTIES
+-          IMPORTED_LOCATION "${_sdl2main_library}"
+-      )
+-      if(WIN32)
+-        # INTERFACE_LINK_OPTIONS needs CMake 3.13
+-        cmake_minimum_required(VERSION 3.13)
+-        # Mark WinMain/WinMain@16 as undefined, such that it will be withheld by the linker.
+-        if(CMAKE_SIZEOF_VOID_P EQUAL 4)
+-          set_target_properties(SDL2::SDL2main
+-            PROPERTIES
+-              INTERFACE_LINK_OPTIONS "-Wl,--undefined=_WinMain@16"
+-          )
+-        else()
+-          set_target_properties(SDL2::SDL2main
+-            PROPERTIES
+-              INTERFACE_LINK_OPTIONS "-Wl,--undefined=WinMain"
+-          )
+-        endif()
++endif()
++
++set(_sdl2main_library ${SDL2_LIBDIR}/${CMAKE_STATIC_LIBRARY_PREFIX}SDL2main${CMAKE_STATIC_LIBRARY_SUFFIX})
++if(EXISTS "${_sdl2main_library}")
++  set(SDL2MAIN_LIBRARY SDL2::SDL2main)
++  if(NOT TARGET SDL2::SDL2main)
++    add_library(SDL2::SDL2main STATIC IMPORTED)
++    set_target_properties(SDL2::SDL2main
++      PROPERTIES
++        IMPORTED_LOCATION "${_sdl2main_library}"
++    )
++    if(WIN32)
++      # INTERFACE_LINK_OPTIONS needs CMake 3.13
++      cmake_minimum_required(VERSION 3.13)
++      # Mark WinMain/WinMain@16 as undefined, such that it will be withheld by the linker.
++      if(CMAKE_SIZEOF_VOID_P EQUAL 4)
++        set_target_properties(SDL2::SDL2main
++          PROPERTIES
++            INTERFACE_LINK_OPTIONS "-Wl,--undefined=_WinMain@16"
++        )
++      else()
++        set_target_properties(SDL2::SDL2main
++          PROPERTIES
++            INTERFACE_LINK_OPTIONS "-Wl,--undefined=WinMain"
++        )
+       endif()
+     endif()
+-    set(SDL2_SDL2main_FOUND TRUE)
+-  else()
+-    set(SDL2_SDL2main_FOUND FALSE)
+   endif()
+-  unset(_sdl2main_library)
++  set(SDL2_SDL2main_FOUND TRUE)
++else()
++  set(SDL2_SDL2main_FOUND FALSE)
+ endif()
++unset(_sdl2main_library)
+ # Remove SDL2 since this is the "central" library
+ # Remove SDL2main since this will be provided by SDL2::SDL2main (if available)
This page took 0.282526 seconds and 4 git commands to generate.