git: c249fe2babd4 - 2023Q1 - emulators/rpcs3: update to 0.0.27

From: Jan Beich <jbeich_at_FreeBSD.org>
Date: Thu, 02 Mar 2023 00:21:16 UTC
The branch 2023Q1 has been updated by jbeich:

URL: https://cgit.FreeBSD.org/ports/commit/?id=c249fe2babd4e44888ec8e7559c89d4d3d81d926

commit c249fe2babd4e44888ec8e7559c89d4d3d81d926
Author:     Jan Beich <jbeich@FreeBSD.org>
AuthorDate: 2023-01-10 19:57:32 +0000
Commit:     Jan Beich <jbeich@FreeBSD.org>
CommitDate: 2023-03-02 00:18:01 +0000

    emulators/rpcs3: update to 0.0.27
    
    Changes:        https://github.com/RPCS3/rpcs3/compare/v0.0.26...v0.0.27
    (cherry picked from commit 74e453882046ca05edb2949112741c7ecc8a3315)
    (cherry picked from commit 103c9530ab9c27fb255f929bd4ff8c3e3b91825b)
    (cherry picked from commit 333b1789ad89b5d609b142dc59efa9405f9a44c7)
    (cherry picked from commit dfae199e6deee94230a75543127b82eeedf700b8)
    (cherry picked from commit 59207909da060a98ff836257c2ddba86bb13bb1b)
    (cherry picked from commit 70b84303f4936fc8d4a3be1c7a9d236a237a6d4a)
    (cherry picked from commit 1cd52e743781fcc464c1aafcfb0670f41b3594a4)
    (cherry picked from commit be377985d580dcfed5414e615022fe8f0abfc825)
    (cherry picked from commit 0fc8edaa75fccf77ce4299f9b890351c296a1533)
    (cherry picked from commit 8c950cf571f33de28159dbc2d6bbc57540fff5e3)
    (cherry picked from commit d558f4988368c9a8c8ad9261f9ff732d04297e27)
    (cherry picked from commit 6919a1e358c7f9dcf64651b7761f5d9b4eb228f3)
    (cherry picked from commit 500380632b9d85ec29979153d434b0db83977b6e)
    (cherry picked from commit 402435627c36beb7284bf94551e68896589caf0a)
    (cherry picked from commit 84c39f23ebeb2701ebe563bba0bb73ba6e1d2866)
    (cherry picked from commit c6ee6f7749f0e5b7a6086d2a5069de4c615754e2)
---
 emulators/rpcs3/Makefile             | 19 +++++++++----------
 emulators/rpcs3/distinfo             | 26 +++++++++++++-------------
 emulators/rpcs3/files/patch-libc++13 | 26 ++++++++++++++++++++++++++
 emulators/rpcs3/pkg-plist            |  1 +
 4 files changed, 49 insertions(+), 23 deletions(-)

diff --git a/emulators/rpcs3/Makefile b/emulators/rpcs3/Makefile
index d249b3f07796..276de5e941dc 100644
--- a/emulators/rpcs3/Makefile
+++ b/emulators/rpcs3/Makefile
@@ -1,12 +1,9 @@
 PORTNAME=	rpcs3
 DISTVERSIONPREFIX=	v
-DISTVERSION=	0.0.26 # git rev-list --count HEAD
-DISTVERSIONSUFFIX=	-14525-gdf718bcb0f
+DISTVERSION=	0.0.27 # git rev-list --count HEAD
+DISTVERSIONSUFFIX=	-14783-g0178b20983
 CATEGORIES=	emulators wayland
 
-PATCH_SITES=	https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
-PATCHFILES+=	b0ee533b3216.patch:-p1 # https://github.com/RPCS3/rpcs3/pull/13257
-
 MAINTAINER=	jbeich@FreeBSD.org
 COMMENT=	PS3 emulator/debugger
 WWW=		https://rpcs3.net/
@@ -30,7 +27,7 @@ ONLY_FOR_ARCHS_REASON=	requires int128 and SSE2
 
 USE_GITHUB=	yes
 GH_ACCOUNT=	RPCS3
-GH_TUPLE=	RPCS3:hidapi:hidapi-0.13.0-2-ga3ce129:hidapi/3rdparty/hidapi/hidapi \
+GH_TUPLE=	RPCS3:hidapi:hidapi-0.13.1-2-gecf1b62:hidapi/3rdparty/hidapi/hidapi \
 		RPCS3:llvm-mirror:9b52b6c39ae9:llvm/llvm \
 		RPCS3:soundtouch:2.3.1-16-g83cfba6:soundtouch/3rdparty/SoundTouch/soundtouch \
 		asmjit:asmjit:06d0bad:asmjit/3rdparty/asmjit/asmjit \
@@ -38,8 +35,9 @@ GH_TUPLE=	RPCS3:hidapi:hidapi-0.13.0-2-ga3ce129:hidapi/3rdparty/hidapi/hidapi \
 		KhronosGroup:SPIRV-Headers:1.5.4.raytracing.fixed-187-g85a1ed2:spirv_headers/3rdparty/SPIRV/SPIRV-Headers \
 		KhronosGroup:SPIRV-Tools:v2022.4:spirv_tools/3rdparty/SPIRV/SPIRV-Tools \
 		KhronosGroup:glslang:11.11.0-2-g10423ec6:glslang/3rdparty/glslang/glslang \
-		kinetiknz:cubeb:cubeb-0.2-1391-gdc511c6:cubeb/3rdparty/cubeb/cubeb \
-		wolfSSL:wolfssl:v5.5.0-stable:wolfssl/3rdparty/wolfssl/wolfssl
+		kinetiknz:cubeb:cubeb-0.2-1427-g70b4e3d:cubeb/3rdparty/cubeb/cubeb \
+		miniupnp:miniupnp:miniupnpd_2_3_2:miniupnp/3rdparty/miniupnp/miniupnp \
+		wolfSSL:wolfssl:v5.5.4-stable:wolfssl/3rdparty/wolfssl/wolfssl
 
 USES=		cmake elfctl gl iconv:wchar_t localbase:ldflags \
 		openal:soft pkgconfig python:3.4+,build qt:5 xorg
@@ -54,7 +52,7 @@ ELF_FEATURES=	+noaslr,wxneeded:bin/${PORTNAME}
 
 .if ${FLAVOR:U} == qt6 || make(makesum) || make(fetch)
 PATCH_SITES+=	https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/:qt6
-PATCHFILES+=	07549bfdfcfd.patch:-p1:qt6 # https://github.com/RPCS3/rpcs3/pull/12471
+PATCHFILES+=	98a2f373fd59.patch:-p1:qt6 # https://github.com/RPCS3/rpcs3/pull/12471
 PKGNAMESUFFIX=	-${FLAVOR}
 USES:=		${USES:S/qt:5/qt:6/}
 USE_QT=		base multimedia svg
@@ -82,7 +80,8 @@ ALSA_CMAKE_BOOL=	USE_ALSA
 EVDEV_DESC=		libevdev-based joystick support
 EVDEV_CMAKE_BOOL=	USE_LIBEVDEV
 EVDEV_BUILD_DEPENDS=	evdev-proto>0:devel/evdev-proto
-EVDEV_LIB_DEPENDS=	libevdev.so:devel/libevdev
+EVDEV_LIB_DEPENDS=	libevdev.so:devel/libevdev \
+			libudev.so:devel/libudev-devd
 
 FAUDIO_DESC=		FAudio audio support
 FAUDIO_LIB_DEPENDS=	libFAudio.so:audio/faudio
diff --git a/emulators/rpcs3/distinfo b/emulators/rpcs3/distinfo
index 2618af507c33..423bde029cd1 100644
--- a/emulators/rpcs3/distinfo
+++ b/emulators/rpcs3/distinfo
@@ -1,8 +1,8 @@
-TIMESTAMP = 1673131661
-SHA256 (RPCS3-rpcs3-v0.0.26-14525-gdf718bcb0f_GH0.tar.gz) = 5d386755986f6e8bedfe167c147d5e540a0b09fc35d97a0d64df28f7322b0781
-SIZE (RPCS3-rpcs3-v0.0.26-14525-gdf718bcb0f_GH0.tar.gz) = 8721162
-SHA256 (RPCS3-hidapi-hidapi-0.13.0-2-ga3ce129_GH0.tar.gz) = d230e3fbbc6ef0e04b083d3a3ddfa4f1ddcaaef2aa8bb1fdb2c064b1d5b2f677
-SIZE (RPCS3-hidapi-hidapi-0.13.0-2-ga3ce129_GH0.tar.gz) = 245124
+TIMESTAMP = 1677707762
+SHA256 (RPCS3-rpcs3-v0.0.27-14783-g0178b20983_GH0.tar.gz) = 095b9b18804dff41ac341843a519bc9d9ebdb5e4b7dba8c3d9aa7890a2dcfd4a
+SIZE (RPCS3-rpcs3-v0.0.27-14783-g0178b20983_GH0.tar.gz) = 8775500
+SHA256 (RPCS3-hidapi-hidapi-0.13.1-2-gecf1b62_GH0.tar.gz) = a45fdf93aeb913407f0e707769b3ee7ac58bef6d44e299065ea1df038261ac1c
+SIZE (RPCS3-hidapi-hidapi-0.13.1-2-gecf1b62_GH0.tar.gz) = 245283
 SHA256 (RPCS3-llvm-mirror-9b52b6c39ae9_GH0.tar.gz) = 9df78a8282453a0e1a3653664ef11ef47b8ab4d2b86e486922770ed2240788b0
 SIZE (RPCS3-llvm-mirror-9b52b6c39ae9_GH0.tar.gz) = 29968896
 SHA256 (RPCS3-soundtouch-2.3.1-16-g83cfba6_GH0.tar.gz) = 56863dbed27510742ed4ced54e9a5fba8658bcbfbb1cc5cdb978d7d537a3a874
@@ -17,13 +17,13 @@ SHA256 (KhronosGroup-SPIRV-Tools-v2022.4_GH0.tar.gz) = a156215a2d7c6c5b267933ed6
 SIZE (KhronosGroup-SPIRV-Tools-v2022.4_GH0.tar.gz) = 3043339
 SHA256 (KhronosGroup-glslang-11.11.0-2-g10423ec6_GH0.tar.gz) = 444052c288ee2507f6bc22409333d90f2d91d3272e13f619b6b61ce2bac61dde
 SIZE (KhronosGroup-glslang-11.11.0-2-g10423ec6_GH0.tar.gz) = 3543809
-SHA256 (kinetiknz-cubeb-cubeb-0.2-1391-gdc511c6_GH0.tar.gz) = 904cbd1e3abc0983efa99cf0b21af211d827ce9232bac20eed60ee7219443f75
-SIZE (kinetiknz-cubeb-cubeb-0.2-1391-gdc511c6_GH0.tar.gz) = 223020
-SHA256 (wolfSSL-wolfssl-v5.5.0-stable_GH0.tar.gz) = c34b74b5f689fac7becb05583b044e84d3b10d39f38709f0095dd5d423ded67f
-SIZE (wolfSSL-wolfssl-v5.5.0-stable_GH0.tar.gz) = 18814382
+SHA256 (kinetiknz-cubeb-cubeb-0.2-1427-g70b4e3d_GH0.tar.gz) = d0dba91b1e280e0ab26e869d359c5716efd38abea60a96259e0aa0189832328e
+SIZE (kinetiknz-cubeb-cubeb-0.2-1427-g70b4e3d_GH0.tar.gz) = 226795
+SHA256 (miniupnp-miniupnp-miniupnpd_2_3_2_GH0.tar.gz) = 3b8567490c50e698b91c657c5eada79d05de7d18c266bb600371707643d0ce3c
+SIZE (miniupnp-miniupnp-miniupnpd_2_3_2_GH0.tar.gz) = 455225
+SHA256 (wolfSSL-wolfssl-v5.5.4-stable_GH0.tar.gz) = b7ee150e49def77c765bc02aac92ddeb0bebefd4cb12aa263d8f95e405221fb8
+SIZE (wolfSSL-wolfssl-v5.5.4-stable_GH0.tar.gz) = 19288452
 SHA256 (llvm-llvm-project-llvmorg-13.0.1_GH0.tar.gz) = 09c50d558bd975c41157364421820228df66632802a4a6a7c9c17f86a7340802
 SIZE (llvm-llvm-project-llvmorg-13.0.1_GH0.tar.gz) = 147290251
-SHA256 (b0ee533b3216.patch) = 74e0c849a404397b77cde8c8f6897955783482a8a0d0aad6320b2a17d79fa3ea
-SIZE (b0ee533b3216.patch) = 1266
-SHA256 (07549bfdfcfd.patch) = 134b759d303f47c45b1bd092a7d78e630408f06ff71e05c2853313f11f190e5a
-SIZE (07549bfdfcfd.patch) = 112687
+SHA256 (98a2f373fd59.patch) = 22535803eca460d45607c303f66db085f59bbe07f1e23509b5e097ed25ad3dae
+SIZE (98a2f373fd59.patch) = 103152
diff --git a/emulators/rpcs3/files/patch-libc++13 b/emulators/rpcs3/files/patch-libc++13
new file mode 100644
index 000000000000..b4f61b5f22b4
--- /dev/null
+++ b/emulators/rpcs3/files/patch-libc++13
@@ -0,0 +1,26 @@
+Drop after FreeBSD 12.4 EOL around 2023-12-31.
+
+Utilities/Config.cpp:194:23: error: no matching function for call to 'to_chars'
+        if (auto [ptr, ec] = std::to_chars(str.data(), str.data() + str.size(), value, std::chars_format::fixed); ec == std::errc())
+                             ^~~~~~~~~~~~~
+/usr/include/c++/v1/charconv:166:6: note: candidate function not viable: no known conversion from 'std::chars_format' to 'int' for 4th argument
+void to_chars(char*, char*, bool, int = 10) = delete;
+     ^
+/usr/include/c++/v1/charconv:458:1: note: candidate template ignored: requirement 'is_integral<double>::value' was not satisfied [with _Tp = double]
+to_chars(char* __first, char* __last, _Tp __value, int __base)
+^
+/usr/include/c++/v1/charconv:450:1: note: candidate function template not viable: requires 3 arguments, but 4 were provided
+to_chars(char* __first, char* __last, _Tp __value)
+^
+
+--- Utilities/Config.cpp.orig	2023-02-25 10:23:07 UTC
++++ Utilities/Config.cpp
+@@ -185,7 +185,7 @@ bool try_to_string(std::string* out, const f64& value)
+ 
+ bool try_to_string(std::string* out, const f64& value)
+ {
+-#ifdef __APPLE__
++#if defined(_LIBCPP_VERSION) && _LIBCPP_VERSION < 14000
+ 	if (out) *out = std::to_string(value);
+ 	return true;
+ #else
diff --git a/emulators/rpcs3/pkg-plist b/emulators/rpcs3/pkg-plist
index 20e0cfa3b800..ba42a187a405 100644
--- a/emulators/rpcs3/pkg-plist
+++ b/emulators/rpcs3/pkg-plist
@@ -38,6 +38,7 @@ share/metainfo/rpcs3.metainfo.xml
 %%DATADIR%%/Icons/ui/right_stick.png
 %%DATADIR%%/Icons/ui/save.png
 %%DATADIR%%/Icons/ui/select.png
+%%DATADIR%%/Icons/ui/spinner-24.png
 %%DATADIR%%/Icons/ui/square.png
 %%DATADIR%%/Icons/ui/start.png
 %%DATADIR%%/Icons/ui/triangle.png