aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Schlosser <bsdcode@disroot.org>2024-09-03 18:51:13 +0000
committerVladimir Druzenko <vvd@FreeBSD.org>2024-09-03 18:53:27 +0000
commitf162675ecbeed6c01c00fb9e3841bdc2a8aab59e (patch)
tree1c53325d655f9fde1979e4b20c92bb574b8d72c8
parentf83207b8a2209e88712feb4a1693cc0ba9206faf (diff)
downloadports-f162675ecbeed6c01c00fb9e3841bdc2a8aab59e.tar.gz
ports-f162675ecbeed6c01c00fb9e3841bdc2a8aab59e.zip
emulators/ares: Update 139.20240825 → 140
Release note: https://ares-emu.net/news/ares-v140-released Starting with version v140, emulators/ares will track release versions instead of development versions. The port applies an upstreamed patch to version v140, which resolves the issues with NVIDIA GPUs. This obsoletes the NVIDIA port option. PR: 281221
-rw-r--r--emulators/ares/Makefile20
-rw-r--r--emulators/ares/distinfo8
-rw-r--r--emulators/ares/files/extra-patch-ares_n64_vulkan_parallel-rdp_util_timer.cpp13
-rw-r--r--emulators/ares/files/extra-patch-ares_n64_vulkan_parallel-rdp_vulkan_device.cpp13
-rw-r--r--emulators/ares/pkg-message9
5 files changed, 17 insertions, 46 deletions
diff --git a/emulators/ares/Makefile b/emulators/ares/Makefile
index 0f3c9edd7c7a..a19403b61a7f 100644
--- a/emulators/ares/Makefile
+++ b/emulators/ares/Makefile
@@ -1,7 +1,17 @@
PORTNAME= ares
-DISTVERSION= 139.20240825
+DISTVERSIONPREFIX= v
+DISTVERSION= 140
CATEGORIES= emulators
+# committed upstream, remove with next version update
+# * contains 'unbreak FreeBSD build'
+# https://github.com/Themaister/Granite/pull/135
+# * contains 'NVIDIA fix'
+# https://github.com/ares-emulator/ares/issues/1547
+# https://github.com/Themaister/Granite/issues/133
+PATCH_SITES= https://github.com/${GH_ACCOUNT}/${PORTNAME}/commit/
+PATCHFILES= 7135646c447ab7eb3eff18132dbddf7dc03135fa.patch:-p1
+
MAINTAINER= bsdcode@disroot.org
COMMENT= Multi-system emulator
WWW= https://ares-emu.net
@@ -13,7 +23,6 @@ USES= compiler:c++17-lang gmake gnome localbase:ldflags pkgconfig \
xorg
USE_GITHUB= yes
GH_ACCOUNT= ares-emulator
-GH_TAGNAME= efb7f61
USE_GNOME= gtksourceview3
USE_XORG= x11 xext xrandr
@@ -29,7 +38,7 @@ MAKE_ARGS= compiler=${CC} \
symbols=false \
threaded=true
-OPTIONS_DEFINE= DEBUG DOCS HOTKEYS NVIDIA OPENMP SHADER
+OPTIONS_DEFINE= DEBUG DOCS HOTKEYS OPENMP SHADER
OPTIONS_DEFAULT= A26 ALSA AO CV FC GB GBA GLX MD MS MSX MYVISION N64 NG \
NGP OPENAL OPENMP OSS PCE PERFORMANCE PS1 SDLAUDIO \
SDLINPUT SFC SG SHADER SPEC UDEV UHID WS XLIB XVIDEO
@@ -56,7 +65,6 @@ MYVISION_DESC= My Vision
N64_DESC= Nintendo 64
NGP_DESC= Neo Geo Pocket
NG_DESC= Neo Geo (AES/MVS)
-NVIDIA_DESC= Apply shader cache workaround (implies ${NVIDIA_IMPLIES})
PCE_DESC= PC-Engine / TurboGrafx
PERFORMANCE_DESC= Faster but less accurate
PROFILE_DESC=
@@ -112,15 +120,11 @@ N64_RUN_DEPENDS= ${LOCALBASE}/lib/libvulkan.so:graphics/vulkan-loader
N64_MAKE_ARGS= cores+=n64 \
vulkan=true
N64_MAKE_ARGS_OFF= vulkan=false
-N64_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-ares_n64_vulkan_parallel-rdp_util_timer.cpp
NGP_MAKE_ARGS= cores+=ngp
NG_MAKE_ARGS= cores+=ng
-NVIDIA_IMPLIES= N64
-NVIDIA_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-ares_n64_vulkan_parallel-rdp_vulkan_device.cpp
-
OPENAL_USES= openal
OPENAL_MAKE_ARGS= ruby+=audio.openal
diff --git a/emulators/ares/distinfo b/emulators/ares/distinfo
index 3ad7898531d2..5b52ba6e87f1 100644
--- a/emulators/ares/distinfo
+++ b/emulators/ares/distinfo
@@ -1,3 +1,5 @@
-TIMESTAMP = 1724663853
-SHA256 (ares-emulator-ares-139.20240825-efb7f61_GH0.tar.gz) = 8d4a410b9141399ec0d592edc34ca8dd35d582a87cae3f4ec5fdacc8a1c3c64e
-SIZE (ares-emulator-ares-139.20240825-efb7f61_GH0.tar.gz) = 50956365
+TIMESTAMP = 1725355457
+SHA256 (ares-emulator-ares-v140_GH0.tar.gz) = 126464881ca1111a46627cb299516f60ad076bf3015da0b9325d6cac14339f4d
+SIZE (ares-emulator-ares-v140_GH0.tar.gz) = 50954599
+SHA256 (7135646c447ab7eb3eff18132dbddf7dc03135fa.patch) = 8a33c760618adf6bcd90894a2002d1aa60ef1cd68458980c341d2175881381a5
+SIZE (7135646c447ab7eb3eff18132dbddf7dc03135fa.patch) = 11018024
diff --git a/emulators/ares/files/extra-patch-ares_n64_vulkan_parallel-rdp_util_timer.cpp b/emulators/ares/files/extra-patch-ares_n64_vulkan_parallel-rdp_util_timer.cpp
deleted file mode 100644
index a17e90da8779..000000000000
--- a/emulators/ares/files/extra-patch-ares_n64_vulkan_parallel-rdp_util_timer.cpp
+++ /dev/null
@@ -1,13 +0,0 @@
-https://github.com/Themaister/Granite/pull/135
-
---- ares/n64/vulkan/parallel-rdp/util/timer.cpp.orig 2024-07-28 10:49:58 UTC
-+++ ares/n64/vulkan/parallel-rdp/util/timer.cpp
-@@ -107,7 +107,7 @@ int64_t get_current_time_nsecs()
- return int64_t(double(li.QuadPart) * static_qpc_freq.inv_freq);
- #else
- struct timespec ts = {};
--#ifdef ANDROID
-+#if defined(ANDROID) || defined(__FreeBSD__)
- constexpr auto timebase = CLOCK_MONOTONIC;
- #else
- constexpr auto timebase = CLOCK_MONOTONIC_RAW;
diff --git a/emulators/ares/files/extra-patch-ares_n64_vulkan_parallel-rdp_vulkan_device.cpp b/emulators/ares/files/extra-patch-ares_n64_vulkan_parallel-rdp_vulkan_device.cpp
deleted file mode 100644
index ac7c91bee2c2..000000000000
--- a/emulators/ares/files/extra-patch-ares_n64_vulkan_parallel-rdp_vulkan_device.cpp
+++ /dev/null
@@ -1,13 +0,0 @@
-https://github.com/Themaister/Granite/issues/133
-
---- ares/n64/vulkan/parallel-rdp/vulkan/device.cpp.orig 2024-08-11 00:29:27 UTC
-+++ ares/n64/vulkan/parallel-rdp/vulkan/device.cpp
-@@ -874,7 +874,7 @@ void Device::init_workarounds()
- workarounds.emulate_event_as_pipeline_barrier = true;
- }
-
-- if (ext.driver_id == VK_DRIVER_ID_NVIDIA_PROPRIETARY && gpu_props.driverVersion < VK_VERSION_MAJOR(535))
-+ if (ext.driver_id == VK_DRIVER_ID_NVIDIA_PROPRIETARY)
- {
- LOGW("Disabling pipeline cache control.\n");
- workarounds.broken_pipeline_cache_control = true;
diff --git a/emulators/ares/pkg-message b/emulators/ares/pkg-message
index 839b14b86e30..50cb22a05134 100644
--- a/emulators/ares/pkg-message
+++ b/emulators/ares/pkg-message
@@ -9,15 +9,6 @@ Users are encouraged to compile the port on their systems with
This can improve the performance of demanding cores like the N64.
-NVIDIA GPU users with versions >= 535 of the x11/nvidia-driver could encounter
-crashes or freezes while using the N64 core, see
-https://github.com/ares-emulator/ares/issues/1547 and
-https://github.com/Themaister/Granite/issues/133. As a workaround either try to
-compile the port with the NVIDIA option set (recommended), or disable the NVIDIA
-shader disk cache at startup with
-
- $ __GL_SHADER_DISK_CACHE=0 ares
-
The port provides the HOTKEYS option. This applies an inofficial patch which
locks all hotkey execution in the unpaused state of the emulator. This can be a
convenience for gamepad-only users who want to assign hotkey actions to gamepad