From 0a262e7d6111af798669c4b481eb2f30b3b86fb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20Tassoux?= Date: Tue, 5 Jan 2021 21:33:13 +0100 Subject: [sdl2] Update to 2.0.14 (#15398) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * [sdl2] Update to 2.0.14 * Revert "[sdl2] Update to 2.0.14" This reverts commit b8e82e0dacb3877febd1f32e9b92c90fd8c0db19. * [sdl2] Update to 2.0.14 * [sdl2] Fix manifest formatting * [sdl2] Change the shared library preprocessor symbol name to DLL_EXPORT for compatibility with SDL 2.0.14 Co-authored-by: Rémy Tassoux --- ports/sdl2-image/CMakeLists.txt | 2 +- ports/sdl2-mixer/CMakeLists.txt | 2 +- ports/sdl2-net/CMakeLists.txt | 2 +- ports/sdl2-ttf/CMakeLists.txt | 2 +- ...nable-creation-of-pkg-cfg-file-on-windows.patch | 26 +++ ports/sdl2/0002-sdl2-skip-ibus-on-linux.patch | 15 ++ ports/sdl2/0003-sdl2-fix-uwp-build.patch | 25 +++ ...nable-creation-of-pkg-cfg-file-on-windows.patch | 33 ---- ports/sdl2/0007-sdl2-skip-ibus-on-linux.patch | 16 -- ports/sdl2/0008-fix-macos-metal-test.patch | 11 -- ports/sdl2/disable-hidapi-for-uwp.patch | 11 -- .../disable-wcslcpy-and-wcslcat-for-windows.patch | 12 -- ports/sdl2/enable-winrt-cmake.patch | 175 --------------------- .../sdl2/export-symbols-only-in-shared-build.patch | 24 --- ports/sdl2/fix-EventToken-header-reference.patch | 17 -- ports/sdl2/fix-space-in-path.patch | 24 --- ports/sdl2/no-propagate-shared-link-options.patch | 13 -- ports/sdl2/portfile.cmake | 19 +-- ports/sdl2/vcpkg.json | 3 +- ports/smpeg2/CMakeLists.txt | 2 +- 20 files changed, 78 insertions(+), 356 deletions(-) create mode 100644 ports/sdl2/0001-sdl2-Enable-creation-of-pkg-cfg-file-on-windows.patch create mode 100644 ports/sdl2/0002-sdl2-skip-ibus-on-linux.patch create mode 100644 ports/sdl2/0003-sdl2-fix-uwp-build.patch delete mode 100644 ports/sdl2/0006-sdl2-Enable-creation-of-pkg-cfg-file-on-windows.patch delete mode 100644 ports/sdl2/0007-sdl2-skip-ibus-on-linux.patch delete mode 100644 ports/sdl2/0008-fix-macos-metal-test.patch delete mode 100644 ports/sdl2/disable-hidapi-for-uwp.patch delete mode 100644 ports/sdl2/disable-wcslcpy-and-wcslcat-for-windows.patch delete mode 100644 ports/sdl2/enable-winrt-cmake.patch delete mode 100644 ports/sdl2/export-symbols-only-in-shared-build.patch delete mode 100644 ports/sdl2/fix-EventToken-header-reference.patch delete mode 100644 ports/sdl2/fix-space-in-path.patch delete mode 100644 ports/sdl2/no-propagate-shared-link-options.patch diff --git a/ports/sdl2-image/CMakeLists.txt b/ports/sdl2-image/CMakeLists.txt index 48afeb538..689f0fcd7 100644 --- a/ports/sdl2-image/CMakeLists.txt +++ b/ports/sdl2-image/CMakeLists.txt @@ -57,7 +57,7 @@ if (APPLE) ) endif() -set_target_properties(SDL2_image PROPERTIES DEFINE_SYMBOL SDL2_EXPORTS) +set_target_properties(SDL2_image PROPERTIES DEFINE_SYMBOL DLL_EXPORT) foreach(FORMAT ${SUPPORTED_FORMATS}) add_definitions(-DLOAD_${FORMAT}) diff --git a/ports/sdl2-mixer/CMakeLists.txt b/ports/sdl2-mixer/CMakeLists.txt index cc9816d0b..f7e8a8590 100644 --- a/ports/sdl2-mixer/CMakeLists.txt +++ b/ports/sdl2-mixer/CMakeLists.txt @@ -103,7 +103,7 @@ if((WIN32 OR APPLE) AND SDL_MIXER_ENABLE_NATIVEMIDI) endif() endif() -set_target_properties(SDL2_mixer PROPERTIES DEFINE_SYMBOL SDL2_EXPORTS) +set_target_properties(SDL2_mixer PROPERTIES DEFINE_SYMBOL DLL_EXPORT) target_compile_definitions(SDL2_mixer PRIVATE ${SDL_MIXER_DEFINES} ${SDL_MIXER_LOAD_DEFINES}) target_include_directories(SDL2_mixer PRIVATE ${SDL_MIXER_INCLUDES} ./native_midi) diff --git a/ports/sdl2-net/CMakeLists.txt b/ports/sdl2-net/CMakeLists.txt index 053093643..87c77929c 100644 --- a/ports/sdl2-net/CMakeLists.txt +++ b/ports/sdl2-net/CMakeLists.txt @@ -10,7 +10,7 @@ find_package(SDL2 CONFIG REQUIRED) add_library(SDL2_net SDLnet.c SDLnetselect.c SDLnetTCP.c SDLnetUDP.c version.rc) -set_target_properties(SDL2_net PROPERTIES DEFINE_SYMBOL SDL2_EXPORTS) +set_target_properties(SDL2_net PROPERTIES DEFINE_SYMBOL DLL_EXPORT) target_compile_definitions(SDL2_net PRIVATE _WINSOCK_DEPRECATED_NO_WARNINGS) target_include_directories(SDL2_net PRIVATE ${SDL_INCLUDE_DIR}/SDL2) diff --git a/ports/sdl2-ttf/CMakeLists.txt b/ports/sdl2-ttf/CMakeLists.txt index 8d34a413a..1ac20ec1f 100644 --- a/ports/sdl2-ttf/CMakeLists.txt +++ b/ports/sdl2-ttf/CMakeLists.txt @@ -7,7 +7,7 @@ find_package(Freetype REQUIRED) add_library(SDL2_ttf SDL_ttf.c version.rc) -set_target_properties(SDL2_ttf PROPERTIES DEFINE_SYMBOL SDL2_EXPORTS) +set_target_properties(SDL2_ttf PROPERTIES DEFINE_SYMBOL DLL_EXPORT) target_include_directories(SDL2_ttf PRIVATE ${SDL_INCLUDE_DIR}/SDL2 ${FREETYPE_INCLUDE_DIRS}) target_link_libraries(SDL2_ttf SDL2::SDL2 ${FREETYPE_LIBRARIES}) diff --git a/ports/sdl2/0001-sdl2-Enable-creation-of-pkg-cfg-file-on-windows.patch b/ports/sdl2/0001-sdl2-Enable-creation-of-pkg-cfg-file-on-windows.patch new file mode 100644 index 000000000..5aaf4db33 --- /dev/null +++ b/ports/sdl2/0001-sdl2-Enable-creation-of-pkg-cfg-file-on-windows.patch @@ -0,0 +1,26 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -2086,7 +2086,6 @@ + execute_process(COMMAND sh ${SDL2_SOURCE_DIR}/build-scripts/updaterev.sh + WORKING_DIRECTORY ${SDL2_BINARY_DIR}) + endif() +-if(NOT WINDOWS OR CYGWIN) + set(prefix ${CMAKE_INSTALL_PREFIX}) + set(exec_prefix "\${prefix}") + set(libdir "\${exec_prefix}/lib${LIB_SUFFIX}") +@@ -2129,7 +2129,6 @@ + "${SDL2_BINARY_DIR}/sdl2-config" @ONLY) + configure_file("${SDL2_SOURCE_DIR}/SDL2.spec.in" + "${SDL2_BINARY_DIR}/SDL2.spec" @ONLY) +-endif() + + ##### Info output ##### + message(STATUS "") +@@ -2376,6 +2376,7 @@ + # TODO: what about the .spec file? Is it only needed for RPM creation? + install(FILES "${SDL2_SOURCE_DIR}/sdl2.m4" DESTINATION "${CMAKE_INSTALL_FULL_DATAROOTDIR}/aclocal") + endif() ++install(FILES ${SDL2_BINARY_DIR}/sdl2.pc DESTINATION "lib${LIB_SUFFIX}/pkgconfig") + + ##### Uninstall target ##### + diff --git a/ports/sdl2/0002-sdl2-skip-ibus-on-linux.patch b/ports/sdl2/0002-sdl2-skip-ibus-on-linux.patch new file mode 100644 index 000000000..5dd4ad83c --- /dev/null +++ b/ports/sdl2/0002-sdl2-skip-ibus-on-linux.patch @@ -0,0 +1,15 @@ +--- CMakeLists.orig.txt 2020-10-28 09:08:51.925900284 +0100 ++++ CMakeLists.txt 2020-10-28 09:09:10.034165780 +0100 +@@ -1240,12 +1240,6 @@ + set(HAVE_FCITX TRUE) + endif() + +- pkg_search_module(IBUS ibus-1.0 ibus) +- if(IBUS_FOUND) +- set(HAVE_IBUS_IBUS_H TRUE) +- include_directories(${IBUS_INCLUDE_DIRS}) +- list(APPEND EXTRA_LIBS ${IBUS_LIBRARIES}) +- endif() + + if (HAVE_IBUS_IBUS_H OR HAVE_FCITX) + set(SDL_USE_IME TRUE) diff --git a/ports/sdl2/0003-sdl2-fix-uwp-build.patch b/ports/sdl2/0003-sdl2-fix-uwp-build.patch new file mode 100644 index 000000000..5175343ce --- /dev/null +++ b/ports/sdl2/0003-sdl2-fix-uwp-build.patch @@ -0,0 +1,25 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1395,8 +1395,13 @@ + endif() + endif() + ++ if(WINDOWS_STORE) ++ file(GLOB WINRT_MISC_SOURCES ${SDL2_SOURCE_DIR}/src/misc/winrt/*.cpp) ++ set(SOURCE_FILES ${SOURCE_FILES} ${WINRT_MISC_SOURCES}) ++ else() + file(GLOB MISC_SOURCES ${SDL2_SOURCE_DIR}/src/misc/windows/*.c) + set(SOURCE_FILES ${SOURCE_FILES} ${MISC_SOURCES}) ++ endif() + set(HAVE_SDL_MISC TRUE) + + # Check for DirectX +@@ -1522,7 +1522,7 @@ + set(HAVE_SDL_THREADS TRUE) + endif() + +- if(SDL_SENSOR AND HAVE_SENSORSAPI_H) ++ if(SDL_SENSOR AND HAVE_SENSORSAPI_H AND NOT WINDOWS_STORE) + set(SDL_SENSOR_WINDOWS 1) + set(HAVE_SDL_SENSORS TRUE) + file(GLOB WINDOWS_SENSOR_SOURCES ${SDL2_SOURCE_DIR}/src/sensor/windows/*.c) diff --git a/ports/sdl2/0006-sdl2-Enable-creation-of-pkg-cfg-file-on-windows.patch b/ports/sdl2/0006-sdl2-Enable-creation-of-pkg-cfg-file-on-windows.patch deleted file mode 100644 index 064885b08..000000000 --- a/ports/sdl2/0006-sdl2-Enable-creation-of-pkg-cfg-file-on-windows.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 7dfd35389..7944f401b 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1916,9 +1916,10 @@ listtostr(EXTRA_CFLAGS _EXTRA_CFLAGS) - set(EXTRA_CFLAGS ${_EXTRA_CFLAGS}) - - # Compat helpers for the configuration files --if(NOT WINDOWS OR CYGWIN) - # TODO: we need a Windows script, too -+ if(NOT WINDOWS OR CYGWIN) - execute_process(COMMAND sh ${SDL2_SOURCE_DIR}/build-scripts/updaterev.sh) -+ endif() - - set(prefix ${CMAKE_INSTALL_PREFIX}) - set(exec_prefix "\${prefix}") -@@ -1960,7 +1961,6 @@ if(NOT WINDOWS OR CYGWIN) - "${SDL2_BINARY_DIR}/sdl2-config" @ONLY) - configure_file("${SDL2_SOURCE_DIR}/SDL2.spec.in" - "${SDL2_BINARY_DIR}/SDL2.spec" @ONLY) --endif() - - ##### Info output ##### - message(STATUS "") -@@ -2198,6 +2198,7 @@ if(NOT (WINDOWS OR CYGWIN)) - # TODO: what about the .spec file? Is it only needed for RPM creation? - install(FILES "${SDL2_SOURCE_DIR}/sdl2.m4" DESTINATION "${CMAKE_INSTALL_FULL_DATAROOTDIR}/aclocal") - endif() -+install(FILES ${SDL2_BINARY_DIR}/sdl2.pc DESTINATION "lib${LIB_SUFFIX}/pkgconfig") - - ##### Uninstall target ##### - - diff --git a/ports/sdl2/0007-sdl2-skip-ibus-on-linux.patch b/ports/sdl2/0007-sdl2-skip-ibus-on-linux.patch deleted file mode 100644 index 8baa73c0f..000000000 --- a/ports/sdl2/0007-sdl2-skip-ibus-on-linux.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- CMakeLists.orig.txt 2020-10-28 09:08:51.925900284 +0100 -+++ CMakeLists.txt 2020-10-28 09:09:10.034165780 +0100 -@@ -1197,13 +1197,6 @@ - list(APPEND EXTRA_LIBS ${DBUS_LIBRARIES}) - endif() - -- pkg_search_module(IBUS ibus-1.0 ibus) -- if(IBUS_FOUND) -- set(HAVE_IBUS_IBUS_H TRUE) -- include_directories(${IBUS_INCLUDE_DIRS}) -- list(APPEND EXTRA_LIBS ${IBUS_LIBRARIES}) -- add_definitions(-DSDL_USE_IME) -- endif() - if(HAVE_LIBUNWIND_H) - # We've already found the header, so REQUIRE the lib to be present - pkg_search_module(UNWIND REQUIRED libunwind) diff --git a/ports/sdl2/0008-fix-macos-metal-test.patch b/ports/sdl2/0008-fix-macos-metal-test.patch deleted file mode 100644 index a1d781101..000000000 --- a/ports/sdl2/0008-fix-macos-metal-test.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- CMakeLists.txt.orig 2020-11-05 16:48:40.000000000 -0800 -+++ CMakeLists.txt 2020-11-05 16:49:02.000000000 -0800 -@@ -1701,7 +1701,7 @@ - - if(VIDEO_VULKAN OR VIDEO_METAL OR RENDER_METAL) - set(ORIG_CMAKE_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS}) -- set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -x objective-c") -+ set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -ObjC") - check_c_source_compiles(" - #include - #import diff --git a/ports/sdl2/disable-hidapi-for-uwp.patch b/ports/sdl2/disable-hidapi-for-uwp.patch deleted file mode 100644 index 9a1b500b4..000000000 --- a/ports/sdl2/disable-hidapi-for-uwp.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -173,7 +173,7 @@ - # so we'll just use libusb when it's available. libusb does not support iOS, - # so we default to yes on iOS. - # TODO: Windows can support libusb, the hid.c file just depends on Unix APIs --if(WINDOWS OR IOS OR TVOS OR ANDROID) -+if((WINDOWS AND NOT WINDOWS_STORE) OR IOS OR TVOS OR ANDROID) - set(HIDAPI_SKIP_LIBUSB TRUE) - else() - set(HIDAPI_SKIP_LIBUSB FALSE) diff --git a/ports/sdl2/disable-wcslcpy-and-wcslcat-for-windows.patch b/ports/sdl2/disable-wcslcpy-and-wcslcat-for-windows.patch deleted file mode 100644 index 894b24d0d..000000000 --- a/ports/sdl2/disable-wcslcpy-and-wcslcat-for-windows.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ur a/CMakeLists.txt b/CMakeLists.txt ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -772,7 +772,7 @@ - set(HAVE_SIGNAL_H 1) - foreach(_FN - malloc calloc realloc free qsort abs memset memcpy memmove memcmp -- wcslen wcslcpy wcslcat wcsdup wcsstr wcscmp wcsncmp -+ wcslen wcsdup wcsstr wcscmp wcsncmp - strlen _strrev _strupr _strlwr strchr strrchr strstr itoa _ltoa - _ultoa strtol strtoul strtoll strtod atoi atof strcmp strncmp - _stricmp _strnicmp strtok_s sscanf diff --git a/ports/sdl2/enable-winrt-cmake.patch b/ports/sdl2/enable-winrt-cmake.patch deleted file mode 100644 index 0e570847b..000000000 --- a/ports/sdl2/enable-winrt-cmake.patch +++ /dev/null @@ -1,175 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 0128c7a..bd534e4 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -5,6 +5,18 @@ - cmake_minimum_required(VERSION 2.8.11) - project(SDL2 C CXX) - -+if(WINDOWS_STORE) -+ enable_language(CXX) -+ cmake_minimum_required(VERSION 3.11) -+ add_definitions(-DSDL_BUILDING_WINRT=1 -ZW) -+ link_libraries( -+ -nodefaultlib:vccorlib$<$:d> -+ -nodefaultlib:msvcrt$<$:d> -+ vccorlib$<$:d>.lib -+ msvcrt$<$:d>.lib -+ ) -+endif() -+ - # !!! FIXME: this should probably do "MACOSX_RPATH ON" as a target property - # !!! FIXME: for the SDL2 shared library (so you get an - # !!! FIXME: install_name ("soname") of "@rpath/libSDL-whatever.dylib" -@@ -1297,6 +1309,11 @@ - file(GLOB CORE_SOURCES ${SDL2_SOURCE_DIR}/src/core/windows/*.c) - set(SOURCE_FILES ${SOURCE_FILES} ${CORE_SOURCES}) - -+ if(WINDOWS_STORE) -+ file(GLOB WINRT_SOURCE_FILES ${SDL2_SOURCE_DIR}/src/core/winrt/*.c ${SDL2_SOURCE_DIR}/src/core/winrt/*.cpp) -+ list(APPEND SOURCE_FILES ${WINRT_SOURCE_FILES}) -+ endif() -+ - if(MSVC) - # Prevent codegen that would use the VC runtime libraries. - set_property(DIRECTORY . APPEND PROPERTY COMPILE_OPTIONS "/GS-") -@@ -1342,6 +1359,9 @@ - check_include_file(ddraw.h HAVE_DDRAW_H) - check_include_file(dsound.h HAVE_DSOUND_H) - check_include_file(dinput.h HAVE_DINPUT_H) -+ if(WINDOWS_STORE OR VCPKG_TARGET_TRIPLET MATCHES "arm-windows") -+ set(HAVE_DINPUT_H 0) -+ endif() - check_include_file(dxgi.h HAVE_DXGI_H) - if(HAVE_D3D_H OR HAVE_D3D11_H OR HAVE_DDRAW_H OR HAVE_DSOUND_H OR HAVE_DINPUT_H) - set(HAVE_DIRECTX TRUE) -@@ -1359,18 +1379,20 @@ - check_include_file(audioclient.h HAVE_AUDIOCLIENT_H) - - if(SDL_AUDIO) -+ if(NOT WINDOWS_STORE) - set(SDL_AUDIO_DRIVER_WINMM 1) - file(GLOB WINMM_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/winmm/*.c) - set(SOURCE_FILES ${SOURCE_FILES} ${WINMM_AUDIO_SOURCES}) -+ endif() - set(HAVE_SDL_AUDIO TRUE) - -- if(HAVE_DSOUND_H) -+ if(HAVE_DSOUND_H AND NOT WINDOWS_STORE) - set(SDL_AUDIO_DRIVER_DSOUND 1) - file(GLOB DSOUND_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/directsound/*.c) - set(SOURCE_FILES ${SOURCE_FILES} ${DSOUND_AUDIO_SOURCES}) - endif() - -- if(WASAPI AND HAVE_AUDIOCLIENT_H AND HAVE_MMDEVICEAPI_H) -+ if(WASAPI AND HAVE_AUDIOCLIENT_H AND HAVE_MMDEVICEAPI_H AND NOT WINDOWS_STORE) - set(SDL_AUDIO_DRIVER_WASAPI 1) - file(GLOB WASAPI_AUDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/wasapi/*.c) - set(SOURCE_FILES ${SOURCE_FILES} ${WASAPI_AUDIO_SOURCES}) -@@ -1382,11 +1404,20 @@ - if(NOT SDL_LOADSO) - message_error("SDL_VIDEO requires SDL_LOADSO, which is not enabled") - endif() -+ if(WINDOWS_STORE) -+ set(SDL_VIDEO_DRIVER_WINRT 1) -+ file(GLOB WIN_VIDEO_SOURCES -+ ${SDL2_SOURCE_DIR}/src/video/winrt/*.c -+ ${SDL2_SOURCE_DIR}/src/video/winrt/*.cpp -+ ${SDL2_SOURCE_DIR}/src/render/direct3d11/*.cpp -+ ) -+ else() - set(SDL_VIDEO_DRIVER_WINDOWS 1) - file(GLOB WIN_VIDEO_SOURCES ${SDL2_SOURCE_DIR}/src/video/windows/*.c) -+ endif() - set(SOURCE_FILES ${SOURCE_FILES} ${WIN_VIDEO_SOURCES}) - -- if(RENDER_D3D AND HAVE_D3D_H) -+ if(RENDER_D3D AND HAVE_D3D_H AND NOT WINDOWS_STORE) - set(SDL_VIDEO_RENDER_D3D 1) - set(HAVE_RENDER_D3D TRUE) - endif() -@@ -1409,20 +1440,31 @@ - endif() - - if(SDL_POWER) -+ if(WINDOWS_STORE) -+ set(SDL_POWER_WINRT 1) -+ set(SOURCE_FILES ${SOURCE_FILES} ${SDL2_SOURCE_DIR}/src/power/winrt/SDL_syspower.cpp) -+ else() - set(SDL_POWER_WINDOWS 1) - set(SOURCE_FILES ${SOURCE_FILES} ${SDL2_SOURCE_DIR}/src/power/windows/SDL_syspower.c) -+ endif() - set(HAVE_SDL_POWER TRUE) - endif() - - if(SDL_FILESYSTEM) - set(SDL_FILESYSTEM_WINDOWS 1) -+ if(WINDOWS_STORE) -+ file(GLOB FILESYSTEM_SOURCES ${SDL2_SOURCE_DIR}/src/filesystem/winrt/*.cpp) -+ else() - file(GLOB FILESYSTEM_SOURCES ${SDL2_SOURCE_DIR}/src/filesystem/windows/*.c) -+ endif() - set(SOURCE_FILES ${SOURCE_FILES} ${FILESYSTEM_SOURCES}) - set(HAVE_SDL_FILESYSTEM TRUE) - endif() - - # Libraries for Win32 native and MinGW -+ if(NOT WINDOWS_STORE) - list(APPEND EXTRA_LIBS user32 gdi32 winmm imm32 ole32 oleaut32 version uuid advapi32 setupapi shell32) -+ endif() - - # TODO: in configure.ac the check for timers is set on - # cygwin | mingw32* - does this include mingw32CE? -@@ -1444,7 +1486,7 @@ - set(SOURCE_FILES ${SOURCE_FILES} ${CORE_SOURCES}) - - if(SDL_VIDEO) -- if(VIDEO_OPENGL) -+ if(VIDEO_OPENGL AND NOT WINDOWS_STORE) - set(SDL_VIDEO_OPENGL 1) - set(SDL_VIDEO_OPENGL_WGL 1) - set(SDL_VIDEO_RENDER_OGL 1) -@@ -2027,12 +2069,14 @@ - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}") - - # Always build SDLmain -+if(NOT WINDOWS_STORE) - add_library(SDL2main STATIC ${SDLMAIN_SOURCES}) - target_include_directories(SDL2main PUBLIC "$" $ $) - set(_INSTALL_LIBS "SDL2main") - if (NOT ANDROID) - set_target_properties(SDL2main PROPERTIES DEBUG_POSTFIX "${SDL_CMAKE_DEBUG_POSTFIX}") - endif() -+endif() - - if (ANDROID AND HAVE_HIDAPI) - set(_INSTALL_LIBS ${_INSTALL_LIBS} "hidapi") -diff --git a/include/SDL_config.h.cmake b/include/SDL_config.h.cmake -index 48dd2d4..0c4fa28 100644 ---- a/include/SDL_config.h.cmake -+++ b/include/SDL_config.h.cmake -@@ -335,6 +326,7 @@ - #cmakedefine SDL_VIDEO_DRIVER_DUMMY @SDL_VIDEO_DRIVER_DUMMY@ - #cmakedefine SDL_VIDEO_DRIVER_OFFSCREEN @SDL_VIDEO_DRIVER_OFFSCREEN@ - #cmakedefine SDL_VIDEO_DRIVER_WINDOWS @SDL_VIDEO_DRIVER_WINDOWS@ -+#cmakedefine SDL_VIDEO_DRIVER_WINRT @SDL_VIDEO_DRIVER_WINRT@ - #cmakedefine SDL_VIDEO_DRIVER_WAYLAND @SDL_VIDEO_DRIVER_WAYLAND@ - #cmakedefine SDL_VIDEO_DRIVER_RPI @SDL_VIDEO_DRIVER_RPI@ - #cmakedefine SDL_VIDEO_DRIVER_VIVANTE @SDL_VIDEO_DRIVER_VIVANTE@ -@@ -403,6 +404,7 @@ - #cmakedefine SDL_POWER_ANDROID @SDL_POWER_ANDROID@ - #cmakedefine SDL_POWER_LINUX @SDL_POWER_LINUX@ - #cmakedefine SDL_POWER_WINDOWS @SDL_POWER_WINDOWS@ -+#cmakedefine SDL_POWER_WINRT @SDL_POWER_WINRT@ - #cmakedefine SDL_POWER_MACOSX @SDL_POWER_MACOSX@ - #cmakedefine SDL_POWER_UIKIT @SDL_POWER_UIKIT@ - #cmakedefine SDL_POWER_HAIKU @SDL_POWER_HAIKU@ -@@ -428,7 +430,7 @@ - #cmakedefine SDL_IPHONE_KEYBOARD @SDL_IPHONE_KEYBOARD@ - #cmakedefine SDL_IPHONE_LAUNCHSCREEN @SDL_IPHONE_LAUNCHSCREEN@ - --#if !defined(__WIN32__) -+#if !defined(__WIN32__) && !defined(__WINRT__) - # if !defined(_STDINT_H_) && !defined(_STDINT_H) && !defined(HAVE_STDINT_H) && !defined(_HAVE_STDINT_H) - typedef unsigned int size_t; - typedef signed char int8_t; diff --git a/ports/sdl2/export-symbols-only-in-shared-build.patch b/ports/sdl2/export-symbols-only-in-shared-build.patch deleted file mode 100644 index 7e6d503e2..000000000 --- a/ports/sdl2/export-symbols-only-in-shared-build.patch +++ /dev/null @@ -1,24 +0,0 @@ -# HG changeset patch -# User Mikhail Paulyshka -# Date 1506252750 -10800 -# Sun Sep 24 14:32:30 2017 +0300 -# Branch SDL2-WIN-SYMBOLS_LEACKAGE -# Node ID 46ec9baae30cd4e0c584de125cae4a3cce2864ad -# Parent 8df7a59b55283aa09889522369a2b32674c048de -win32: fix symbols leakage for static libraries - -diff -r 8df7a59b5528 -r 46ec9baae30c include/begin_code.h ---- a/include/begin_code.h Fri Sep 22 11:25:52 2017 -0700 -+++ b/include/begin_code.h Sun Sep 24 14:32:30 2017 +0300 -@@ -58,8 +58,10 @@ - # else - # define DECLSPEC __declspec(dllimport) - # endif -+# elif defined(_DLL) -+# define DECLSPEC __declspec(dllexport) - # else --# define DECLSPEC __declspec(dllexport) -+# define DECLSPEC - # endif - # elif defined(__OS2__) - # ifdef BUILD_SDL diff --git a/ports/sdl2/fix-EventToken-header-reference.patch b/ports/sdl2/fix-EventToken-header-reference.patch deleted file mode 100644 index 5e34dc2f2..000000000 --- a/ports/sdl2/fix-EventToken-header-reference.patch +++ /dev/null @@ -1,17 +0,0 @@ - -diff -r 398b67c0a7d3 -r 7c2f418f701b src/video/winrt/SDL_winrtgamebar.cpp ---- a/src/video/winrt/SDL_winrtgamebar.cpp Wed Jun 10 09:36:10 2020 -0700 -+++ b/src/video/winrt/SDL_winrtgamebar.cpp Wed Jun 10 09:38:43 2020 -0700 -@@ -25,7 +25,7 @@ - /* Windows includes */ - #include - #include --#include -+#include - - - /* SDL includes */ - - - - diff --git a/ports/sdl2/fix-space-in-path.patch b/ports/sdl2/fix-space-in-path.patch deleted file mode 100644 index 499161d9a..000000000 --- a/ports/sdl2/fix-space-in-path.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -ur a/CMakeLists.txt b/CMakeLists.txt ---- a/CMakeLists.txt 2019-07-23 21:41:00.000000000 +0200 -+++ b/CMakeLists.txt 2019-10-27 20:26:38.000000000 +0100 -@@ -278,7 +278,7 @@ - # General includes - include_directories(${SDL2_BINARY_DIR}/include ${SDL2_SOURCE_DIR}/include) - if(USE_GCC OR USE_CLANG) -- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -idirafter ${SDL2_SOURCE_DIR}/src/video/khronos") -+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -idirafter \"${SDL2_SOURCE_DIR}/src/video/khronos\"") - else() - include_directories(${SDL2_SOURCE_DIR}/src/video/khronos) - endif() -diff -ur a/cmake/sdlchecks.cmake b/cmake/sdlchecks.cmake ---- a/cmake/sdlchecks.cmake 2019-07-23 21:41:00.000000000 +0200 -+++ b/cmake/sdlchecks.cmake 2019-10-27 20:27:10.000000000 +0100 -@@ -1088,7 +1088,7 @@ - set(HAVE_SDL_JOYSTICK TRUE) - file(GLOB HIDAPI_SOURCES ${SDL2_SOURCE_DIR}/src/joystick/hidapi/*.c) - set(SOURCE_FILES ${SOURCE_FILES} ${HIDAPI_SOURCES}) -- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${LIBUSB_CFLAGS} -I${SDL2_SOURCE_DIR}/src/hidapi/hidapi") -+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${LIBUSB_CFLAGS} \"-I${SDL2_SOURCE_DIR}/src/hidapi/hidapi\"") - if(NOT HIDAPI_SKIP_LIBUSB) - if(HIDAPI_ONLY_LIBUSB) - set(SOURCE_FILES ${SOURCE_FILES} ${SDL2_SOURCE_DIR}/src/hidapi/libusb/hid.c) diff --git a/ports/sdl2/no-propagate-shared-link-options.patch b/ports/sdl2/no-propagate-shared-link-options.patch deleted file mode 100644 index 5a26ad3c5..000000000 --- a/ports/sdl2/no-propagate-shared-link-options.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 7dfd35389..648218cc5 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -2062,7 +2062,7 @@ if(SDL_SHARED) - set_target_properties(SDL2 PROPERTIES STATIC_LIBRARY_FLAGS "/NODEFAULTLIB") - endif() - set(_INSTALL_LIBS "SDL2" ${_INSTALL_LIBS}) -- target_link_libraries(SDL2 ${EXTRA_LIBS} ${EXTRA_LDFLAGS}) -+ target_link_libraries(SDL2 PRIVATE ${EXTRA_LIBS} ${EXTRA_LDFLAGS}) - target_include_directories(SDL2 PUBLIC "$" $ $) - if (NOT ANDROID) - set_target_properties(SDL2 PROPERTIES DEBUG_POSTFIX "${SDL_CMAKE_DEBUG_POSTFIX}") diff --git a/ports/sdl2/portfile.cmake b/ports/sdl2/portfile.cmake index 837ef4f70..755160e8b 100644 --- a/ports/sdl2/portfile.cmake +++ b/ports/sdl2/portfile.cmake @@ -1,24 +1,17 @@ -set(SDL2_VERSION 2.0.12) +set(SDL2_VERSION 2.0.14) vcpkg_download_distfile(ARCHIVE - URLS "https://www.libsdl.org/release/SDL2-2.0.12.tar.gz" + URLS "https://www.libsdl.org/release/SDL2-${SDL2_VERSION}.tar.gz" FILENAME "SDL2-${SDL2_VERSION}.tar.gz" - SHA512 3f1f04af0f3d9dda9c84a2e9274ae8d83ea0da3fc367970a820036cc4dc1dbf990cfc37e4975ae05f0b45a4ffa739c6c19e470c00bf3f2bce9b8b63717b8b317 + SHA512 ebc482585bd565bf3003fbcedd91058b2183e333b9ea566d2f386da0298ff970645d9d25c1aa4459c7c96e9ea839fd1c5f2da0242a56892865b2e456cdd027ee ) vcpkg_extract_source_archive_ex( OUT_SOURCE_PATH SOURCE_PATH ARCHIVE ${ARCHIVE} PATCHES - export-symbols-only-in-shared-build.patch - enable-winrt-cmake.patch - disable-hidapi-for-uwp.patch - fix-space-in-path.patch - disable-wcslcpy-and-wcslcat-for-windows.patch - fix-EventToken-header-reference.patch - 0006-sdl2-Enable-creation-of-pkg-cfg-file-on-windows.patch - 0007-sdl2-skip-ibus-on-linux.patch - 0008-fix-macos-metal-test.patch - no-propagate-shared-link-options.patch + 0001-sdl2-Enable-creation-of-pkg-cfg-file-on-windows.patch + 0002-sdl2-skip-ibus-on-linux.patch + 0003-sdl2-fix-uwp-build.patch ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" SDL_STATIC) diff --git a/ports/sdl2/vcpkg.json b/ports/sdl2/vcpkg.json index 5445b69d7..55562888b 100644 --- a/ports/sdl2/vcpkg.json +++ b/ports/sdl2/vcpkg.json @@ -1,7 +1,6 @@ { "name": "sdl2", - "version-string": "2.0.12", - "port-version": 8, + "version-string": "2.0.14", "description": "Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D.", "homepage": "https://www.libsdl.org/download-2.0.php", "features": { diff --git a/ports/smpeg2/CMakeLists.txt b/ports/smpeg2/CMakeLists.txt index b0e284b05..5515c698f 100644 --- a/ports/smpeg2/CMakeLists.txt +++ b/ports/smpeg2/CMakeLists.txt @@ -45,7 +45,7 @@ add_library(smpeg2 MPEGsystem.cpp smpeg.cpp) -set_target_properties(smpeg2 PROPERTIES DEFINE_SYMBOL SDL2_EXPORTS) +set_target_properties(smpeg2 PROPERTIES DEFINE_SYMBOL DLL_EXPORT) if(BUILD_SHARED_LIBS) target_link_libraries(smpeg2 SDL2::SDL2) else() -- cgit v1.2.3