aboutsummaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
Diffstat (limited to 'emulators')
-rw-r--r--emulators/86Box/Makefile2
-rw-r--r--emulators/fceux/Makefile29
-rw-r--r--emulators/openmsx/Makefile9
-rw-r--r--emulators/openmsx/distinfo6
-rw-r--r--emulators/openmsx/files/patch-src_sound_BlipBuffer.cc11
-rw-r--r--emulators/openmsx/pkg-plist32
-rw-r--r--emulators/rpcs3/Makefile31
-rw-r--r--emulators/rpcs3/distinfo20
-rw-r--r--emulators/rpcs3/files/patch-cubeb-revert112
-rw-r--r--emulators/rpcs3/files/patch-hidapi23
-rw-r--r--emulators/rpcs3/files/patch-miniupnpc20
-rw-r--r--emulators/rpcs3/pkg-plist88
-rw-r--r--emulators/virtualbox-ose-70/Makefile2
-rw-r--r--emulators/virtualbox-ose-71/Makefile2
-rw-r--r--emulators/virtualbox-ose-72/Makefile5
-rw-r--r--emulators/virtualbox-ose-72/distinfo14
-rw-r--r--emulators/virtualbox-ose-72/files/patch-configure9
-rw-r--r--emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Makefile.kmk15
-rw-r--r--emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxManager.cpp46
-rw-r--r--emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxManager.h20
-rw-r--r--emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxWidget.cpp24
-rw-r--r--emulators/virtualbox-ose-kmod-72/Makefile2
-rw-r--r--emulators/virtualbox-ose-kmod-72/distinfo6
-rw-r--r--emulators/virtualbox-ose-legacy/Makefile2
-rw-r--r--emulators/virtualbox-ose/Makefile2
25 files changed, 359 insertions, 173 deletions
diff --git a/emulators/86Box/Makefile b/emulators/86Box/Makefile
index 35d2c1c01cf0..6ed2545ec34e 100644
--- a/emulators/86Box/Makefile
+++ b/emulators/86Box/Makefile
@@ -3,7 +3,7 @@ DISTVERSIONPREFIX= v
DISTVERSION= 5.0
CATEGORIES= emulators
-MAINTAINER= tiago.gasiba@gmail.com
+MAINTAINER= tiga@FreeBSD.org
COMMENT= Emulator of x86-based machines based on PCem
WWW= https://86box.net/
diff --git a/emulators/fceux/Makefile b/emulators/fceux/Makefile
index b8cdef87b71a..d8f379380948 100644
--- a/emulators/fceux/Makefile
+++ b/emulators/fceux/Makefile
@@ -1,7 +1,7 @@
PORTNAME= fceux
DISTVERSIONPREFIX= v
DISTVERSION= 2.6.6
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= emulators games
PATCH_SITES= https://github.com/TASEmulators/fceux/commit/
@@ -17,21 +17,38 @@ LICENSE_FILE= ${WRKSRC}/COPYING
LIB_DEPENDS= libminizip.so:archivers/minizip
-USES= cmake desktop-file-utils gl libarchive lua:51 pkgconfig qt:5 sdl
-USE_GL= gl glu
-USE_QT= buildtools:build core gui opengl qmake:build widgets
-USE_SDL= sdl2
+FLAVORS= qt5 qt6
+FLAVOR?= ${FLAVORS:[1]}
+qt5_PKGNAMEPREFIX= qt5-
+qt6_PKGNAMEPREFIX= qt6-
+USES= cmake desktop-file-utils gl libarchive lua:51 pkgconfig sdl
USE_GITHUB= yes
GH_ACCOUNT= TASEmulators
+USE_GL= gl glu
+USE_SDL= sdl2
+
+.if ${FLAVOR} == qt5
+USE_QT= buildtools:build core gui opengl qmake:build widgets
+USES+= qt:5
+CMAKE_OFF= QT6
+.else
+USES+= qt:6
+USE_QT= base
+CMAKE_ON= QT6
+.endif
CFLAGS+= -DPUBLIC_RELEASE
-CMAKE_ON= GLVND
+CMAKE_ON+= GLVND QHELP QT6
OPTIONS_DEFINE= DOCS FFMPEG X264 X265
OPTIONS_DEFAULT= FFMPEG X264 X265
DOCS_CMAKE_BOOL= QHELP
+.if ${FLAVOR} == qt5
DOCS_USE= qt=help,sql
+.else
+DOCS_USE= qt=tools
+.endif
FFMPEG_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg
X264_LIB_DEPENDS= libx264.so:multimedia/libx264
X265_LIB_DEPENDS= libx265.so:multimedia/x265
diff --git a/emulators/openmsx/Makefile b/emulators/openmsx/Makefile
index 207d7503499e..5afcb44cf4e7 100644
--- a/emulators/openmsx/Makefile
+++ b/emulators/openmsx/Makefile
@@ -1,7 +1,7 @@
PORTNAME= openmsx
-DISTVERSION= 19.1
+DISTVERSION= 20.0
CATEGORIES= emulators
-MASTER_SITES= https://github.com/openMSX/openMSX/releases/download/RELEASE_19_1/
+MASTER_SITES= https://github.com/openMSX/openMSX/releases/download/RELEASE_20_0/
MAINTAINER= dmenelkir@gmail.com
COMMENT= Open source MSX emulator
@@ -18,12 +18,13 @@ LIB_DEPENDS= libao.so:audio/libao \
libtheora.so:multimedia/libtheora \
libvorbis.so:audio/libvorbis
-USES= gl gmake pkgconfig python sdl tcl
-USE_GCC= yes
+USES= compiler:c++20-lang gl gmake pkgconfig python sdl tcl
USE_GL= gl glew
USE_SDL= sdl2 ttf2
+CXXFLAGS+= -I/usr/include/c++/v1 -std=c++20
+
MAKEFILE= GNUmakefile
MAKE_ARGS= CXXFLAGS="${CXXFLAGS}" \
INSTALL_BINARY_DIR=${PREFIX}/bin \
diff --git a/emulators/openmsx/distinfo b/emulators/openmsx/distinfo
index 573625887d0f..f05561638370 100644
--- a/emulators/openmsx/distinfo
+++ b/emulators/openmsx/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1724517832
-SHA256 (openmsx-19.1.tar.gz) = 979b1322215095d82d5ea4a455c5e089fcbc4916c0725d6362a15b7022c0e249
-SIZE (openmsx-19.1.tar.gz) = 4216833
+TIMESTAMP = 1757074825
+SHA256 (openmsx-20.0.tar.gz) = 4c645e5a063e00919fa04720d39f62fb8dcb6321276637b16b5788dea5cd1ebf
+SIZE (openmsx-20.0.tar.gz) = 5947913
diff --git a/emulators/openmsx/files/patch-src_sound_BlipBuffer.cc b/emulators/openmsx/files/patch-src_sound_BlipBuffer.cc
new file mode 100644
index 000000000000..5abe500f3751
--- /dev/null
+++ b/emulators/openmsx/files/patch-src_sound_BlipBuffer.cc
@@ -0,0 +1,11 @@
+--- src/sound/BlipBuffer.cc.orig 2025-09-10 16:08:17 UTC
++++ src/sound/BlipBuffer.cc
+@@ -19,7 +19,7 @@ static constexpr int BLIP_RES = 1 << BlipBuffer::BLIP_
+
+
+ // Precalculated impulse table.
+-static constexpr auto impulses = [] {
++static const auto impulses = [] {
+ constexpr int HALF_SIZE = BLIP_RES / 2 * (BLIP_IMPULSE_WIDTH - 1);
+ std::array<double, BLIP_RES + HALF_SIZE + BLIP_RES> fImpulse = {};
+ std::span<double, HALF_SIZE> out = subspan<HALF_SIZE>(fImpulse, BLIP_RES);
diff --git a/emulators/openmsx/pkg-plist b/emulators/openmsx/pkg-plist
index 8888c3bed417..7674894c24eb 100644
--- a/emulators/openmsx/pkg-plist
+++ b/emulators/openmsx/pkg-plist
@@ -4,22 +4,28 @@ bin/openmsx
%%PORTDOCS%%%%DOCSDIR%%/cbios.txt
%%PORTDOCS%%%%DOCSDIR%%/manual/commands.html
%%PORTDOCS%%%%DOCSDIR%%/manual/compile.html
+%%PORTDOCS%%%%DOCSDIR%%/manual/debugger-layout.png
%%PORTDOCS%%%%DOCSDIR%%/manual/diskmanipulator.html
%%PORTDOCS%%%%DOCSDIR%%/manual/faq.html
%%PORTDOCS%%%%DOCSDIR%%/manual/index.html
+%%PORTDOCS%%%%DOCSDIR%%/manual/main_menu_bar.png
%%PORTDOCS%%%%DOCSDIR%%/manual/manual-minty.css
%%PORTDOCS%%%%DOCSDIR%%/manual/manual-purple.css
%%PORTDOCS%%%%DOCSDIR%%/manual/manual.css
%%PORTDOCS%%%%DOCSDIR%%/manual/nocartfound.png
%%PORTDOCS%%%%DOCSDIR%%/manual/openmsx-control.html
+%%PORTDOCS%%%%DOCSDIR%%/manual/osd_icons.png
%%PORTDOCS%%%%DOCSDIR%%/manual/setup.html
%%PORTDOCS%%%%DOCSDIR%%/manual/user.html
%%PORTDOCS%%%%DOCSDIR%%/release-history.txt
%%PORTDOCS%%%%DOCSDIR%%/release-notes.txt
+%%PORTDOCS%%%%DOCSDIR%%/manual/reverse_bar.png
+%%PORTDOCS%%%%DOCSDIR%%/manual/status_bar.png
%%DATADIR%%/extensions/2nd_PSG.xml
%%DATADIR%%/extensions/ASCII_Japanese_MSX-Write.xml
%%DATADIR%%/extensions/ASCII_Japanese_MSX-Write_II.xml
%%DATADIR%%/extensions/ASCII_MSX-DOS2.xml
+%%DATADIR%%/extensions/ASCII16-X_Mapper_XL.xml
%%DATADIR%%/extensions/AVT_DPF-550.xml
%%DATADIR%%/extensions/Beer_IDE.xml
%%DATADIR%%/extensions/Boosted_audio.xml
@@ -54,8 +60,10 @@ bin/openmsx
%%DATADIR%%/extensions/Microsol_CDX-2.xml
%%DATADIR%%/extensions/Mitsubishi_ML-30DC_ML-30FD.xml
%%DATADIR%%/extensions/Musical_Memory_Mapper.xml
+%%DATADIR%%/extensions/National_CF-SM003.xml
%%DATADIR%%/extensions/Neos_MA-20R.xml
%%DATADIR%%/extensions/Neos_MA-20V.xml
+%%DATADIR%%/extensions/OPL3Cartridge_Moonsound_compatible.xml
%%DATADIR%%/extensions/OPL3Cartridge.xml
%%DATADIR%%/extensions/OPL3Cartridge2_mono.xml
%%DATADIR%%/extensions/OPL3Cartridge2_stereo.xml
@@ -65,6 +73,7 @@ bin/openmsx
%%DATADIR%%/extensions/Password_Cartridge.xml
%%DATADIR%%/extensions/Philips_NMS_1200.xml
%%DATADIR%%/extensions/Philips_NMS_1205.xml
+%%DATADIR%%/extensions/Philips_VU_0040.xml
%%DATADIR%%/extensions/Philips_VY_0010.xml
%%DATADIR%%/extensions/Popolon_Sound_Cartridge.xml
%%DATADIR%%/extensions/README
@@ -158,6 +167,7 @@ bin/openmsx
%%DATADIR%%/machines/CIEL_Expert-Turbo.xml
%%DATADIR%%/machines/Canon_V-10.xml
%%DATADIR%%/machines/Canon_V-20.xml
+%%DATADIR%%/machines/Canon_V-20_FR.xml
%%DATADIR%%/machines/Canon_V-20_JP.xml
%%DATADIR%%/machines/Canon_V-25.xml
%%DATADIR%%/machines/Canon_V-30F.xml
@@ -182,6 +192,7 @@ bin/openmsx
%%DATADIR%%/machines/Frael_Bruc_100_1.xml
%%DATADIR%%/machines/Frael_Bruc_100_2.xml
%%DATADIR%%/machines/Fujitsu_FM-X.xml
+%%DATADIR%%/machines/General_Paxon_PCT-55.xml
%%DATADIR%%/machines/Goldstar_FC-200.xml
%%DATADIR%%/machines/Goldstar_FC-80U.xml
%%DATADIR%%/machines/Gradiente_Expert_DD_Plus.xml
@@ -190,8 +201,10 @@ bin/openmsx
%%DATADIR%%/machines/Gradiente_Expert_XP-800.xml
%%DATADIR%%/machines/Hitachi_MB-H1.xml
%%DATADIR%%/machines/Hitachi_MB-H2.xml
+%%DATADIR%%/machines/Hitachi_MB-H21.xml
%%DATADIR%%/machines/Hitachi_MB-H3.xml
%%DATADIR%%/machines/Hitachi_MB-H50.xml
+%%DATADIR%%/machines/Hitachi_MB-H70.xml
%%DATADIR%%/machines/JVC_HC-7GB.xml
%%DATADIR%%/machines/Mitsubishi_ML-8000.xml
%%DATADIR%%/machines/Mitsubishi_ML-F110.xml
@@ -268,6 +281,7 @@ bin/openmsx
%%DATADIR%%/machines/Sanyo_PHC-30N.xml
%%DATADIR%%/machines/Sanyo_PHC-33.xml
%%DATADIR%%/machines/Sanyo_PHC-35J.xml
+%%DATADIR%%/machines/Sanyo_MPC-64.xml
%%DATADIR%%/machines/Sanyo_PHC-70FD.xml
%%DATADIR%%/machines/Sanyo_PHC-70FD2.xml
%%DATADIR%%/machines/Sanyo_PHC-77.xml
@@ -311,6 +325,7 @@ bin/openmsx
%%DATADIR%%/machines/Sony_HB-G900AP.xml
%%DATADIR%%/machines/Sony_HB-G900D.xml
%%DATADIR%%/machines/Sony_HB-G900P.xml
+%%DATADIR%%/machines/Sony_HB-T600.xml
%%DATADIR%%/machines/Spectravideo_SVI-318.xml
%%DATADIR%%/machines/Spectravideo_SVI-328.xml
%%DATADIR%%/machines/Spectravideo_SVI-328_superexpanded.xml
@@ -318,6 +333,7 @@ bin/openmsx
%%DATADIR%%/machines/Spectravideo_SVI-728_ES.xml
%%DATADIR%%/machines/Spectravideo_SVI-728_SE.xml
%%DATADIR%%/machines/Spectravideo_SVI-738.xml
+%%DATADIR%%/machines/Spectravideo_SVI-738_DE.xml
%%DATADIR%%/machines/Spectravideo_SVI-738_PL.xml
%%DATADIR%%/machines/Spectravideo_SVI-738_SE.xml
%%DATADIR%%/machines/Talent_DPC-200.xml
@@ -350,6 +366,7 @@ bin/openmsx
%%DATADIR%%/machines/Yamaha_CX5M.xml
%%DATADIR%%/machines/Yamaha_CX5MII-128.xml
%%DATADIR%%/machines/Yamaha_CX5MII.xml
+%%DATADIR%%/machines/Yamaha_CX5MU.xml
%%DATADIR%%/machines/Yamaha_CX7-128.xml
%%DATADIR%%/machines/Yamaha_CX7M-128.xml
%%DATADIR%%/machines/Yamaha_SX-100.xml
@@ -361,6 +378,7 @@ bin/openmsx
%%DATADIR%%/machines/Yamaha_YIS-604-128.xml
%%DATADIR%%/machines/Yamaha_YIS-805-128R2.xml
%%DATADIR%%/machines/Yashica_YC-64.xml
+%%DATADIR%%/machines/Yeno_DPC-64.xml
%%DATADIR%%/machines/acid-tests/Acid2Test_basic-bios2p.lpt.ips
%%DATADIR%%/machines/acid-tests/Acid2Test_basic-bios2p.ppi.ips
%%DATADIR%%/machines/acid-tests/Acid2Test_basic-bios2p.psg.ips
@@ -421,13 +439,11 @@ bin/openmsx
%%DATADIR%%/scripts/_multi_screenshot.tcl
%%DATADIR%%/scripts/_music_keyboard.tcl
%%DATADIR%%/scripts/_osd.tcl
-%%DATADIR%%/scripts/_osd_keyboard.tcl
%%DATADIR%%/scripts/_osd_menu.tcl
%%DATADIR%%/scripts/_osd_nemesis.tcl
%%DATADIR%%/scripts/_osd_widgets.tcl
%%DATADIR%%/scripts/_psg_log.tcl
%%DATADIR%%/scripts/_psg_profile.tcl
-%%DATADIR%%/scripts/_quitmenu.tcl
%%DATADIR%%/scripts/_raster_view.tcl
%%DATADIR%%/scripts/_record_channels.tcl
%%DATADIR%%/scripts/_record_chunks.tcl
@@ -442,12 +458,10 @@ bin/openmsx
%%DATADIR%%/scripts/_slot.tcl
%%DATADIR%%/scripts/_soundchip_utils.tcl
%%DATADIR%%/scripts/_soundlog.tcl
-%%DATADIR%%/scripts/_sprites.tcl
%%DATADIR%%/scripts/_stack.tcl
%%DATADIR%%/scripts/_tas_tools.tcl
%%DATADIR%%/scripts/_test_machines_and_extensions.tcl
%%DATADIR%%/scripts/_text_echo.tcl
-%%DATADIR%%/scripts/_tileviewer.tcl
%%DATADIR%%/scripts/_toggle_freq.tcl
%%DATADIR%%/scripts/_trainer.tcl
%%DATADIR%%/scripts/_trainerdefs.tcl
@@ -460,15 +474,12 @@ bin/openmsx
%%DATADIR%%/scripts/_vdrive.tcl
%%DATADIR%%/scripts/_vgmrecorder.tcl
%%DATADIR%%/scripts/_vu-meters.tcl
-%%DATADIR%%/scripts/_widgets.tcl
%%DATADIR%%/scripts/autoplug.tcl
%%DATADIR%%/scripts/callbackprocs.tcl
%%DATADIR%%/scripts/cashandler.tcl
%%DATADIR%%/scripts/create_user_dirs.tcl
-%%DATADIR%%/scripts/frame_rate_pusher.tcl
%%DATADIR%%/scripts/keybindings.tcl
%%DATADIR%%/scripts/lazy.tcl
-%%DATADIR%%/scripts/load_icons.tcl
%%DATADIR%%/scripts/mode.tcl
%%DATADIR%%/scripts/monitor.tcl
%%DATADIR%%/scripts/osd_menu.tcl
@@ -477,7 +488,6 @@ bin/openmsx
%%DATADIR%%/scripts/screenshot.tcl
%%DATADIR%%/scripts/session_management.tcl
%%DATADIR%%/scripts/shield.png
-%%DATADIR%%/scripts/tabbed_machine_view.tcl
%%DATADIR%%/scripts/type.tcl
%%DATADIR%%/settings.xml
%%DATADIR%%/shaders/HQ2xLiteOffsets.dat
@@ -501,8 +511,6 @@ bin/openmsx
%%DATADIR%%/shaders/monitor3D.vert
%%DATADIR%%/shaders/rgb.frag
%%DATADIR%%/shaders/rgb.vert
-%%DATADIR%%/shaders/sai.frag
-%%DATADIR%%/shaders/sai.vert
%%DATADIR%%/shaders/scale2x.frag
%%DATADIR%%/shaders/scale2x.vert
%%DATADIR%%/shaders/simple.frag
@@ -520,8 +528,8 @@ bin/openmsx
%%DATADIR%%/skins/ConsoleBackground6.png
%%DATADIR%%/skins/ConsoleBackgroundBlue.png
%%DATADIR%%/skins/ConsoleBackgroundGrey.png
-%%DATADIR%%/skins/Vera.ttf.gz
-%%DATADIR%%/skins/VeraMono.ttf.gz
+%%DATADIR%%/skins/DejaVuSans.ttf.gz
+%%DATADIR%%/skins/DejaVuSansMono.ttf.gz
%%DATADIR%%/skins/breaked.png
%%DATADIR%%/skins/fancy/frame.png
%%DATADIR%%/skins/fancy/led-off.png
diff --git a/emulators/rpcs3/Makefile b/emulators/rpcs3/Makefile
index 2a8781edac4a..1ddffd7839de 100644
--- a/emulators/rpcs3/Makefile
+++ b/emulators/rpcs3/Makefile
@@ -1,7 +1,7 @@
PORTNAME= rpcs3
DISTVERSIONPREFIX= v
-DISTVERSION= 0.0.37 # git rev-list --count HEAD
-DISTVERSIONSUFFIX= -17986-g68d2573344
+DISTVERSION= 0.0.38 # git rev-list --count HEAD
+DISTVERSIONSUFFIX= -18170-g23b339d410
CATEGORIES= emulators wayland
MAINTAINER= jbeich@FreeBSD.org
@@ -13,10 +13,15 @@ LICENSE_COMB= multi
LICENSE_FILE_ISCL= ${WRKSRC_cubeb}/LICENSE
LICENSE_FILE_ZLIB= ${WRKSRC_asmjit}/LICENSE.md
-BUILD_DEPENDS= flatc:devel/flatbuffers
-LIB_DEPENDS= libcurl.so:ftp/curl \
+BUILD_DEPENDS= flatc:devel/flatbuffers \
+ glslang>0:graphics/glslang
+LIB_DEPENDS= libzstd.so:archivers/zstd \
+ librtmidi.so:audio/rtmidi \
+ libhidapi.so:comms/hidapi \
+ libcurl.so:ftp/curl \
libpng.so:graphics/png \
libavcodec.so:multimedia/ffmpeg \
+ libminiupnpc.so:net/miniupnpc \
libpugixml.so:textproc/pugixml
ONLY_FOR_ARCHS= aarch64 amd64
@@ -24,16 +29,12 @@ ONLY_FOR_ARCHS_REASON= requires int128 and SSE2
USE_GITHUB= yes
GH_ACCOUNT= RPCS3
-GH_TUPLE= RPCS3:hidapi:hidapi-0.14.0-53-gf424236:hidapi/3rdparty/hidapi/hidapi \
- RPCS3:soundtouch:2.3.1-78-g3982730:soundtouch/3rdparty/SoundTouch/soundtouch \
+GH_TUPLE= RPCS3:soundtouch:2.3.1-78-g3982730:soundtouch/3rdparty/SoundTouch/soundtouch \
asmjit:asmjit:416f735:asmjit/3rdparty/asmjit/asmjit \
- facebook:zstd:v1.5.7:zstd/3rdparty/zstd/zstd \
jbeder:yaml-cpp:0.8.0-11-g456c68f:yamlcpp/3rdparty/yaml-cpp/yaml-cpp \
- KhronosGroup:glslang:15.3.0:glslang/3rdparty/glslang/glslang \
kcat:openal-soft:1.23.1:openal_soft/3rdparty/OpenAL/openal-soft \
- kinetiknz:cubeb:cubeb-0.2-1425-g88585b6:cubeb/3rdparty/cubeb/cubeb \
+ kinetiknz:cubeb:cubeb-0.2-1617-ge495bee:cubeb/3rdparty/cubeb/cubeb \
Megamouse:VulkanMemoryAllocator:1d8f600:vkalloc/3rdparty/GPUOpen/VulkanMemoryAllocator \
- miniupnp:miniupnp:miniupnpd_2_3_9:miniupnp/3rdparty/miniupnp/miniupnp \
nothings:stb:013ac3b:stb/3rdparty/stblib/stb \
wolfSSL:wolfssl:v5.8.0-stable:wolfssl/3rdparty/wolfssl/wolfssl \
xioTechnologies:Fusion:v1.2.8:fusion/3rdparty/fusion/fusion
@@ -43,7 +44,8 @@ USES= cmake gl iconv:wchar_t llvm:min=19,lib localbase:ldflags \
USE_GL= gl glew
USE_QT= base multimedia svg
USE_XORG= x11
-CMAKE_ON= CMAKE_SKIP_RPATH ${CURL FFMPEG FLATBUFFERS LIBPNG PUGIXML XXHASH:L:S/^/USE_SYSTEM_/}
+CMAKE_ON= CMAKE_SKIP_RPATH
+CMAKE_ON+= ${GLSLANG FFMPEG FLATBUFFERS HIDAPI LIBPNG LIBUSB MINIUPNPC PUGIXML RTMIDI XXHASH ZSTD:L:S/^/USE_SYSTEM_/}
CMAKE_ON+= BUNDLE_SPEEX # only used by cubeb tests
CMAKE_OFF= USE_NATIVE_INSTRUCTIONS USE_PRECOMPILED_HEADERS
LDFLAGS+= -Wl,--as-needed # GLU
@@ -87,13 +89,6 @@ VULKAN_BUILD_DEPENDS= ${LOCALBASE}/include/vulkan/vulkan.h:graphics/vulkan-heade
VULKAN_LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader
VULKAN_CMAKE_BOOL= USE_VULKAN
-# XXX Unbundle audio/rtmidi
-GH_TUPLE+= thestk:rtmidi:6.0.0:rtmidi/3rdparty/rtmidi/rtmidi
-ALSA_LIB_DEPENDS+= libasound.so:audio/alsa-lib
-ALSA_CMAKE_BOOL+= RTMIDI_API_ALSA
-JACK_LIB_DEPENDS+= libjack.so:audio/jack
-JACK_CMAKE_BOOL+= RTMIDI_API_JACK
-
post-patch:
@${REINPLACE_CMD} -e '/GIT_BRANCH/s/local_build/master/' \
-e '/GIT_FULL_BRANCH/s/local_build/${GH_ACCOUNT}\/${GH_PROJECT}\/master/' \
diff --git a/emulators/rpcs3/distinfo b/emulators/rpcs3/distinfo
index ea0e9ab6a9f2..89f828272b3f 100644
--- a/emulators/rpcs3/distinfo
+++ b/emulators/rpcs3/distinfo
@@ -1,31 +1,21 @@
-TIMESTAMP = 1748728672
-SHA256 (RPCS3-rpcs3-v0.0.37-17986-g68d2573344_GH0.tar.gz) = de3235708b85cf9b03f3f8854bd5c81d4b8f88dff462b56978f18b00f20b824e
-SIZE (RPCS3-rpcs3-v0.0.37-17986-g68d2573344_GH0.tar.gz) = 5861021
-SHA256 (RPCS3-hidapi-hidapi-0.14.0-53-gf424236_GH0.tar.gz) = 1494ab721a834346774c7821bb40ce9476cc7c1f2881820483afa76098df4e2b
-SIZE (RPCS3-hidapi-hidapi-0.14.0-53-gf424236_GH0.tar.gz) = 364108
+TIMESTAMP = 1759349014
+SHA256 (RPCS3-rpcs3-v0.0.38-18170-g23b339d410_GH0.tar.gz) = 0b01ab9812e242299b803e4baa4c36f74ef63196a03d508e63cf4a0918f0aac6
+SIZE (RPCS3-rpcs3-v0.0.38-18170-g23b339d410_GH0.tar.gz) = 5883442
SHA256 (RPCS3-soundtouch-2.3.1-78-g3982730_GH0.tar.gz) = 68119ffee94c7eb2e12357599d7a47ec5cb029a89243daafb9ffad3fdfb433e9
SIZE (RPCS3-soundtouch-2.3.1-78-g3982730_GH0.tar.gz) = 607859
SHA256 (asmjit-asmjit-416f735_GH0.tar.gz) = 65ba9c3487da09af02db0c34405d1bdd3e49e134062930777f272007d97940fd
SIZE (asmjit-asmjit-416f735_GH0.tar.gz) = 1151444
-SHA256 (facebook-zstd-v1.5.7_GH0.tar.gz) = 37d7284556b20954e56e1ca85b80226768902e2edabd3b649e9e72c0c9012ee3
-SIZE (facebook-zstd-v1.5.7_GH0.tar.gz) = 2451884
SHA256 (jbeder-yaml-cpp-0.8.0-11-g456c68f_GH0.tar.gz) = 3793d936474b1e6366f934f128f168dae711fd5e248dac048226c7879cefd6a3
SIZE (jbeder-yaml-cpp-0.8.0-11-g456c68f_GH0.tar.gz) = 1018173
-SHA256 (KhronosGroup-glslang-15.3.0_GH0.tar.gz) = c6c21fe1873c37e639a6a9ac72d857ab63a5be6893a589f34e09a6c757174201
-SIZE (KhronosGroup-glslang-15.3.0_GH0.tar.gz) = 4023163
SHA256 (kcat-openal-soft-1.23.1_GH0.tar.gz) = dfddf3a1f61059853c625b7bb03de8433b455f2f79f89548cbcbd5edca3d4a4a
SIZE (kcat-openal-soft-1.23.1_GH0.tar.gz) = 840185
-SHA256 (kinetiknz-cubeb-cubeb-0.2-1425-g88585b6_GH0.tar.gz) = d10bf2d54d7202efa39ac10bc580048666d6e7a5019a5d1f0f71e8b7bf01f25c
-SIZE (kinetiknz-cubeb-cubeb-0.2-1425-g88585b6_GH0.tar.gz) = 226777
+SHA256 (kinetiknz-cubeb-cubeb-0.2-1617-ge495bee_GH0.tar.gz) = bfe466842ed7df055e3106789b1d0b1b06274eee9be123d920365722fa8780fb
+SIZE (kinetiknz-cubeb-cubeb-0.2-1617-ge495bee_GH0.tar.gz) = 243801
SHA256 (Megamouse-VulkanMemoryAllocator-1d8f600_GH0.tar.gz) = 5aef11d98bae2ea911cda9fedcac6935d5bc5d0776cee581fc7b7204bd7b0d47
SIZE (Megamouse-VulkanMemoryAllocator-1d8f600_GH0.tar.gz) = 962218
-SHA256 (miniupnp-miniupnp-miniupnpd_2_3_9_GH0.tar.gz) = ec7981351ad6a046eee0abf522ed1a45a3b0517e1da64e03826051f5f5354ea5
-SIZE (miniupnp-miniupnp-miniupnpd_2_3_9_GH0.tar.gz) = 540322
SHA256 (nothings-stb-013ac3b_GH0.tar.gz) = f2f5aeaa2504f8dc3ee7412cb480f9be218766c7a652ce3bcebbc25ec72d7e9c
SIZE (nothings-stb-013ac3b_GH0.tar.gz) = 1510649
SHA256 (wolfSSL-wolfssl-v5.8.0-stable_GH0.tar.gz) = f90f18c7f12913a0b351b1f4305e768697ea1380794df1f2984b9452ab0aeeaf
SIZE (wolfSSL-wolfssl-v5.8.0-stable_GH0.tar.gz) = 24936537
SHA256 (xioTechnologies-Fusion-v1.2.8_GH0.tar.gz) = ff9e4b8f09592226e310e8ac55073614743d04ace4e1ab66e96c3b517000600b
SIZE (xioTechnologies-Fusion-v1.2.8_GH0.tar.gz) = 447874
-SHA256 (thestk-rtmidi-6.0.0_GH0.tar.gz) = ef7bcda27fee6936b651c29ebe9544c74959d0b1583b716ce80a1c6fea7617f0
-SIZE (thestk-rtmidi-6.0.0_GH0.tar.gz) = 515502
diff --git a/emulators/rpcs3/files/patch-cubeb-revert b/emulators/rpcs3/files/patch-cubeb-revert
new file mode 100644
index 000000000000..c941396a31ea
--- /dev/null
+++ b/emulators/rpcs3/files/patch-cubeb-revert
@@ -0,0 +1,112 @@
+Revert https://github.com/mozilla/cubeb/commit/0846b39f1fdc
+until https://github.com/mozilla/cubeb/issues/746
+
+--- 3rdparty/cubeb/cubeb/src/cubeb_sndio.c.orig 2025-09-16 23:01:49 UTC
++++ 3rdparty/cubeb/cubeb/src/cubeb_sndio.c
+@@ -68,7 +68,7 @@ struct cubeb_stream {
+ struct sio_hdl * hdl; /* link us to sndio */
+ int mode; /* bitmap of SIO_{PLAY,REC} */
+ int active; /* cubec_start() called */
+- int conv; /* need float->s24 conversion */
++ int conv; /* need float->s16 conversion */
+ unsigned char * rbuf; /* rec data consumed from here */
+ unsigned char * pbuf; /* play data is prepared here */
+ unsigned int nfr; /* number of frames in ibuf and obuf */
+@@ -99,33 +99,33 @@ static void
+ }
+
+ static void
+-float_to_s24(void * ptr, long nsamp, float volume)
++float_to_s16(void * ptr, long nsamp, float volume)
+ {
+- int32_t * dst = ptr;
++ int16_t * dst = ptr;
+ float * src = ptr;
+- float mult = volume * 8388608;
++ float mult = volume * 32768;
+ int s;
+
+ while (nsamp-- > 0) {
+ s = lrintf(*(src++) * mult);
+- if (s < -8388608)
+- s = -8388608;
+- else if (s > 8388607)
+- s = 8388607;
++ if (s < -32768)
++ s = -32768;
++ else if (s > 32767)
++ s = 32767;
+ *(dst++) = s;
+ }
+ }
+
+ static void
+-s24_to_float(void * ptr, long nsamp)
++s16_to_float(void * ptr, long nsamp)
+ {
+- int32_t * src = ptr;
++ int16_t * src = ptr;
+ float * dst = ptr;
+
+ src += nsamp;
+ dst += nsamp;
+ while (nsamp-- > 0)
+- *(--dst) = (1. / 8388608) * *(--src);
++ *(--dst) = (1. / 32768) * *(--src);
+ }
+
+ static const char *
+@@ -213,7 +213,7 @@ sndio_mainloop(void * arg)
+ }
+
+ if ((s->mode & SIO_REC) && s->conv)
+- s24_to_float(s->rbuf, s->nfr * s->rchan);
++ s16_to_float(s->rbuf, s->nfr * s->rchan);
+
+ /* invoke call-back, it returns less that s->nfr if done */
+ pthread_mutex_unlock(&s->mtx);
+@@ -244,7 +244,7 @@ sndio_mainloop(void * arg)
+
+ if (s->mode & SIO_PLAY) {
+ if (s->conv)
+- float_to_s24(s->pbuf, nfr * s->pchan, s->volume);
++ float_to_s16(s->pbuf, nfr * s->pchan, s->volume);
+ else
+ s16_setvol(s->pbuf, nfr * s->pchan, s->volume);
+ }
+@@ -429,25 +429,21 @@ sndio_stream_init(cubeb * context, cubeb_stream ** str
+ }
+ WRAP(sio_initpar)(&wpar);
+ wpar.sig = 1;
++ wpar.bits = 16;
+ switch (format) {
+ case CUBEB_SAMPLE_S16LE:
+ wpar.le = 1;
+- wpar.bits = 16;
+ break;
+ case CUBEB_SAMPLE_S16BE:
+ wpar.le = 0;
+- wpar.bits = 16;
+ break;
+ case CUBEB_SAMPLE_FLOAT32NE:
+ wpar.le = SIO_LE_NATIVE;
+- wpar.bits = 24;
+- wpar.msb = 0;
+ break;
+ default:
+ DPR("sndio_stream_init() unsupported format\n");
+ goto err;
+ }
+- wpar.bps = SIO_BPS(wpar.bits);
+ wpar.rate = rate;
+ if (s->mode & SIO_REC)
+ wpar.rchan = input_stream_params->channels;
+@@ -459,8 +455,6 @@ sndio_stream_init(cubeb * context, cubeb_stream ** str
+ goto err;
+ }
+ if (rpar.bits != wpar.bits || rpar.le != wpar.le || rpar.sig != wpar.sig ||
+- rpar.bps != wpar.bps ||
+- (wpar.bits < 8 * wpar.bps && rpar.msb != wpar.msb) ||
+ rpar.rate != wpar.rate ||
+ ((s->mode & SIO_REC) && rpar.rchan != wpar.rchan) ||
+ ((s->mode & SIO_PLAY) && rpar.pchan != wpar.pchan)) {
diff --git a/emulators/rpcs3/files/patch-hidapi b/emulators/rpcs3/files/patch-hidapi
new file mode 100644
index 000000000000..eaa48cc6aae6
--- /dev/null
+++ b/emulators/rpcs3/files/patch-hidapi
@@ -0,0 +1,23 @@
+-- Checking for module 'hidapi-hidraw'
+-- Package 'hidapi-hidraw' not found
+CMake Error at /usr/local/share/cmake/Modules/FindPkgConfig.cmake:645 (message):
+ The following required packages were not found:
+
+ - hidapi-hidraw
+
+--- 3rdparty/hidapi/CMakeLists.txt.orig 2025-09-30 21:49:18 UTC
++++ 3rdparty/hidapi/CMakeLists.txt
+@@ -1,10 +1,10 @@ if(USE_SYSTEM_HIDAPI)
+ # hidapi
+ if(USE_SYSTEM_HIDAPI)
+ message(STATUS "RPCS3: using shared hidapi")
+- pkg_check_modules(hidapi-hidraw REQUIRED IMPORTED_TARGET hidapi-hidraw)
++ pkg_check_modules(hidapi REQUIRED IMPORTED_TARGET hidapi)
+ add_library(3rdparty_hidapi INTERFACE)
+- target_link_libraries(3rdparty_hidapi INTERFACE PkgConfig::hidapi-hidraw)
+- target_include_directories(3rdparty_hidapi INTERFACE PkgConfig::hidapi-hidraw)
++ target_link_libraries(3rdparty_hidapi INTERFACE PkgConfig::hidapi)
++ target_include_directories(3rdparty_hidapi INTERFACE PkgConfig::hidapi)
+ else()
+ set(BUILD_SHARED_LIBS FALSE CACHE BOOL "Don't build shared libs")
+ set(HIDAPI_INSTALL_TARGETS FALSE CACHE BOOL "Don't install anything")
diff --git a/emulators/rpcs3/files/patch-miniupnpc b/emulators/rpcs3/files/patch-miniupnpc
new file mode 100644
index 000000000000..d3799f56750d
--- /dev/null
+++ b/emulators/rpcs3/files/patch-miniupnpc
@@ -0,0 +1,20 @@
+Drop after net/miniupnpc >= 2.3.3 update.
+
+-- Checking for module 'miniupnpc>=2.3.3'
+-- Package dependency requirement 'miniupnpc >= 2.3.3' could not be satisfied.
+Package 'miniupnpc' has version '2.3.2', required version is '>= 2.3.3'
+CMake Error at /usr/local/share/cmake/Modules/FindPkgConfig.cmake:645 (message):
+ The following required packages were not found:
+
+ - miniupnpc>=2.3.3
+
+--- 3rdparty/miniupnp/CMakeLists.txt.orig 2025-09-30 21:49:18 UTC
++++ 3rdparty/miniupnp/CMakeLists.txt
+@@ -1,6 +1,6 @@ if(USE_SYSTEM_MINIUPNPC)
+ if(USE_SYSTEM_MINIUPNPC)
+ message(STATUS "RPCS3: using shared MiniUPnPc")
+- pkg_check_modules(MiniUPnPc REQUIRED IMPORTED_TARGET miniupnpc>=2.3.3)
++ pkg_check_modules(MiniUPnPc REQUIRED IMPORTED_TARGET miniupnpc)
+ add_library(3rdparty_miniupnpc INTERFACE)
+ target_link_libraries(3rdparty_miniupnpc INTERFACE PkgConfig::MiniUPnPc)
+ target_include_directories(3rdparty_miniupnpc INTERFACE PkgConfig::MiniUPnPc)
diff --git a/emulators/rpcs3/pkg-plist b/emulators/rpcs3/pkg-plist
index 663b6c377e73..0f140c004ab3 100644
--- a/emulators/rpcs3/pkg-plist
+++ b/emulators/rpcs3/pkg-plist
@@ -11,10 +11,98 @@ share/metainfo/rpcs3.metainfo.xml
%%DATADIR%%/GuiConfigs/Nekotekina by GooseWing.qss
%%DATADIR%%/GuiConfigs/Skyline (Nightfall).qss
%%DATADIR%%/GuiConfigs/Skyline.qss
+%%DATADIR%%/GuiConfigs/Windows 11 (Dark Mode) by GustavoGraziano.qss
+%%DATADIR%%/GuiConfigs/Windows 11 (Light Mode) by GustavoGraziano.qss
%%DATADIR%%/GuiConfigs/YoRHa by Ani.qss
%%DATADIR%%/GuiConfigs/YoRHa-background.jpg
%%DATADIR%%/GuiConfigs/check_mark_white.png
+%%DATADIR%%/GuiConfigs/dark/arrow-down-disabled.svg
+%%DATADIR%%/GuiConfigs/dark/arrow-down.svg
+%%DATADIR%%/GuiConfigs/dark/arrow-left-disabled.svg
+%%DATADIR%%/GuiConfigs/dark/arrow-left.svg
+%%DATADIR%%/GuiConfigs/dark/arrow-next.svg
+%%DATADIR%%/GuiConfigs/dark/arrow-prev.svg
+%%DATADIR%%/GuiConfigs/dark/arrow-right-disabled.svg
+%%DATADIR%%/GuiConfigs/dark/arrow-right.svg
+%%DATADIR%%/GuiConfigs/dark/arrow-up-disabled.svg
+%%DATADIR%%/GuiConfigs/dark/arrow-up.svg
+%%DATADIR%%/GuiConfigs/dark/check-mark-disabled.svg
+%%DATADIR%%/GuiConfigs/dark/check-mark.svg
+%%DATADIR%%/GuiConfigs/dark/checkbox-checked-disabled.svg
+%%DATADIR%%/GuiConfigs/dark/checkbox-checked-hover.svg
+%%DATADIR%%/GuiConfigs/dark/checkbox-checked-pressed.svg
+%%DATADIR%%/GuiConfigs/dark/checkbox-checked.svg
+%%DATADIR%%/GuiConfigs/dark/checkbox-disabled.svg
+%%DATADIR%%/GuiConfigs/dark/checkbox-indeterminate-disabled.svg
+%%DATADIR%%/GuiConfigs/dark/checkbox-indeterminate-hover.svg
+%%DATADIR%%/GuiConfigs/dark/checkbox-indeterminate-pressed.svg
+%%DATADIR%%/GuiConfigs/dark/checkbox-indeterminate.svg
+%%DATADIR%%/GuiConfigs/dark/checkbox-unchecked-hover.svg
+%%DATADIR%%/GuiConfigs/dark/checkbox-unchecked-pressed.svg
+%%DATADIR%%/GuiConfigs/dark/checkbox-unchecked.svg
+%%DATADIR%%/GuiConfigs/dark/empty.svg
+%%DATADIR%%/GuiConfigs/dark/list-arrow-closed-disabled.svg
+%%DATADIR%%/GuiConfigs/dark/list-arrow-closed.svg
+%%DATADIR%%/GuiConfigs/dark/list-arrow-open-disabled.svg
+%%DATADIR%%/GuiConfigs/dark/list-arrow-open.svg
+%%DATADIR%%/GuiConfigs/dark/radio-checked-disabled.svg
+%%DATADIR%%/GuiConfigs/dark/radio-checked-hover.svg
+%%DATADIR%%/GuiConfigs/dark/radio-checked-pressed.svg
+%%DATADIR%%/GuiConfigs/dark/radio-checked.svg
+%%DATADIR%%/GuiConfigs/dark/radio-disabled.svg
+%%DATADIR%%/GuiConfigs/dark/radio-unchecked-hover.svg
+%%DATADIR%%/GuiConfigs/dark/radio-unchecked-pressed.svg
+%%DATADIR%%/GuiConfigs/dark/radio-unchecked.svg
+%%DATADIR%%/GuiConfigs/dark/slider-handle-disabled.svg
+%%DATADIR%%/GuiConfigs/dark/slider-handle-hover.svg
+%%DATADIR%%/GuiConfigs/dark/slider-handle-pressed.svg
+%%DATADIR%%/GuiConfigs/dark/slider-handle.svg
+%%DATADIR%%/GuiConfigs/dark/window-close.svg
+%%DATADIR%%/GuiConfigs/dark/window-undock.svg
%%DATADIR%%/GuiConfigs/kot-bg.jpg
+%%DATADIR%%/GuiConfigs/light/arrow-down-disabled.svg
+%%DATADIR%%/GuiConfigs/light/arrow-down.svg
+%%DATADIR%%/GuiConfigs/light/arrow-left-disabled.svg
+%%DATADIR%%/GuiConfigs/light/arrow-left.svg
+%%DATADIR%%/GuiConfigs/light/arrow-next.svg
+%%DATADIR%%/GuiConfigs/light/arrow-prev.svg
+%%DATADIR%%/GuiConfigs/light/arrow-right-disabled.svg
+%%DATADIR%%/GuiConfigs/light/arrow-right.svg
+%%DATADIR%%/GuiConfigs/light/arrow-up-disabled.svg
+%%DATADIR%%/GuiConfigs/light/arrow-up.svg
+%%DATADIR%%/GuiConfigs/light/check-mark-disabled.svg
+%%DATADIR%%/GuiConfigs/light/check-mark.svg
+%%DATADIR%%/GuiConfigs/light/checkbox-checked-disabled.svg
+%%DATADIR%%/GuiConfigs/light/checkbox-checked-hover.svg
+%%DATADIR%%/GuiConfigs/light/checkbox-checked-pressed.svg
+%%DATADIR%%/GuiConfigs/light/checkbox-checked.svg
+%%DATADIR%%/GuiConfigs/light/checkbox-disabled.svg
+%%DATADIR%%/GuiConfigs/light/checkbox-indeterminate-disabled.svg
+%%DATADIR%%/GuiConfigs/light/checkbox-indeterminate-hover.svg
+%%DATADIR%%/GuiConfigs/light/checkbox-indeterminate-pressed.svg
+%%DATADIR%%/GuiConfigs/light/checkbox-indeterminate.svg
+%%DATADIR%%/GuiConfigs/light/checkbox-unchecked-hover.svg
+%%DATADIR%%/GuiConfigs/light/checkbox-unchecked-pressed.svg
+%%DATADIR%%/GuiConfigs/light/checkbox-unchecked.svg
+%%DATADIR%%/GuiConfigs/light/empty.svg
+%%DATADIR%%/GuiConfigs/light/list-arrow-closed-disabled.svg
+%%DATADIR%%/GuiConfigs/light/list-arrow-closed.svg
+%%DATADIR%%/GuiConfigs/light/list-arrow-open-disabled.svg
+%%DATADIR%%/GuiConfigs/light/list-arrow-open.svg
+%%DATADIR%%/GuiConfigs/light/radio-checked-disabled.svg
+%%DATADIR%%/GuiConfigs/light/radio-checked-hover.svg
+%%DATADIR%%/GuiConfigs/light/radio-checked-pressed.svg
+%%DATADIR%%/GuiConfigs/light/radio-checked.svg
+%%DATADIR%%/GuiConfigs/light/radio-disabled.svg
+%%DATADIR%%/GuiConfigs/light/radio-unchecked-hover.svg
+%%DATADIR%%/GuiConfigs/light/radio-unchecked-pressed.svg
+%%DATADIR%%/GuiConfigs/light/radio-unchecked.svg
+%%DATADIR%%/GuiConfigs/light/slider-handle-disabled.svg
+%%DATADIR%%/GuiConfigs/light/slider-handle-hover.svg
+%%DATADIR%%/GuiConfigs/light/slider-handle-pressed.svg
+%%DATADIR%%/GuiConfigs/light/slider-handle.svg
+%%DATADIR%%/GuiConfigs/light/window-close.svg
+%%DATADIR%%/GuiConfigs/light/window-undock.svg
%%DATADIR%%/GuiConfigs/list_arrow_blue.png
%%DATADIR%%/GuiConfigs/list_arrow_down_blue.png
%%DATADIR%%/GuiConfigs/list_arrow_down_green.png
diff --git a/emulators/virtualbox-ose-70/Makefile b/emulators/virtualbox-ose-70/Makefile
index 4d7dea9d02ca..70ae1ff3695f 100644
--- a/emulators/virtualbox-ose-70/Makefile
+++ b/emulators/virtualbox-ose-70/Makefile
@@ -317,6 +317,8 @@ post-patch:
@${REINPLACE_CMD} \
-e 's|^versions =.*|versions = ["${PYTHON_VER}${PYTHON_ABIVER}"]|' \
${WRKSRC}/src/libs/xpcom18a4/python/gen_python_deps.py
+ @${REINPLACE_CMD} -e 's|curl_proxytype|long|g' \
+ ${WRKSRC}/src/VBox/Runtime/generic/http-curl.cpp
post-patch-AIO-off:
@${REINPLACE_CMD} 's|r3/freebsd/fileaio-freebsd.cpp|r3/posix/fileaio-posix.cpp|' \
diff --git a/emulators/virtualbox-ose-71/Makefile b/emulators/virtualbox-ose-71/Makefile
index 7b5d79a0d306..288552b6f76d 100644
--- a/emulators/virtualbox-ose-71/Makefile
+++ b/emulators/virtualbox-ose-71/Makefile
@@ -317,6 +317,8 @@ post-patch:
@${REINPLACE_CMD} \
-e 's|^versions =.*|versions = ["${PYTHON_VER}${PYTHON_ABIVER}"]|' \
${WRKSRC}/src/libs/xpcom18a4/python/gen_python_deps.py
+ @${REINPLACE_CMD} -e 's|curl_proxytype|long|g' \
+ ${WRKSRC}/src/VBox/Runtime/generic/http-curl.cpp
post-patch-AIO-off:
@${REINPLACE_CMD} 's|r3/freebsd/fileaio-freebsd.cpp|r3/posix/fileaio-posix.cpp|' \
diff --git a/emulators/virtualbox-ose-72/Makefile b/emulators/virtualbox-ose-72/Makefile
index 3110b3efe1aa..fe41d449c234 100644
--- a/emulators/virtualbox-ose-72/Makefile
+++ b/emulators/virtualbox-ose-72/Makefile
@@ -1,5 +1,5 @@
PORTNAME= virtualbox-ose
-DISTVERSION= 7.2.0
+DISTVERSION= 7.2.2
PORTREVISION?= 0
CATEGORIES= emulators
MASTER_SITES= https://download.virtualbox.org/virtualbox/${DISTVERSION}/:src \
@@ -22,6 +22,7 @@ ONLY_FOR_ARCHS= amd64
BUILD_DEPENDS= gtar:archivers/gtar \
kmk:devel/kBuild \
yasm:devel/yasm \
+ ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat \
xsltproc:textproc/libxslt
LIB_DEPENDS= libpng.so:graphics/png \
libcurl.so:ftp/curl
@@ -317,6 +318,8 @@ post-patch:
@${REINPLACE_CMD} \
-e 's|^versions =.*|versions = ["${PYTHON_VER}${PYTHON_ABIVER}"]|' \
${WRKSRC}/src/libs/xpcom18a4/python/gen_python_deps.py
+ @${REINPLACE_CMD} -e 's|curl_proxytype|long|g' \
+ ${WRKSRC}/src/VBox/Runtime/generic/http-curl.cpp
post-patch-AIO-off:
@${REINPLACE_CMD} 's|r3/freebsd/fileaio-freebsd.cpp|r3/posix/fileaio-posix.cpp|' \
diff --git a/emulators/virtualbox-ose-72/distinfo b/emulators/virtualbox-ose-72/distinfo
index ed4ac420cdd3..48ed99a441f9 100644
--- a/emulators/virtualbox-ose-72/distinfo
+++ b/emulators/virtualbox-ose-72/distinfo
@@ -1,7 +1,7 @@
-TIMESTAMP = 1756400000
-SHA256 (VirtualBox-7.2.0.tar.bz2) = 4f2804ff27848ea772aee6b637bb1e10ee74ec2da117c257413e2d2c4f670ba0
-SIZE (VirtualBox-7.2.0.tar.bz2) = 206755781
-SHA256 (VirtualBox-docs-7.2.0.tar.bz2) = 12b27989f2ab9b9316384322a8f1cdadd7003d2e2d6592298e1a84e81f5e0572
-SIZE (VirtualBox-docs-7.2.0.tar.bz2) = 9200668
-SHA256 (VBoxGuestAdditions_7.2.0.iso) = 43f7a1045cad0aab40e3af906fea37244ba6873b91b4e227245a14e51b399abd
-SIZE (VBoxGuestAdditions_7.2.0.iso) = 53143552
+TIMESTAMP = 1759400000
+SHA256 (VirtualBox-7.2.2.tar.bz2) = b0e63bfb855327aecf1122cda33390c33734e5ffed72f123f5edf786a8ce1393
+SIZE (VirtualBox-7.2.2.tar.bz2) = 206992991
+SHA256 (VirtualBox-docs-7.2.2.tar.bz2) = 5784f7ccb0cd28f1e4647771301c51cbd2427ec84e071d3dd92c9f0e12690f8c
+SIZE (VirtualBox-docs-7.2.2.tar.bz2) = 9134609
+SHA256 (VBoxGuestAdditions_7.2.2.iso) = 42457487fb5f117265fe41bf8b2a521449c2cff75c95029d8f667f7dab5a4409
+SIZE (VBoxGuestAdditions_7.2.2.iso) = 53135360
diff --git a/emulators/virtualbox-ose-72/files/patch-configure b/emulators/virtualbox-ose-72/files/patch-configure
index 76ed44e26acf..6e5b1f151854 100644
--- a/emulators/virtualbox-ose-72/files/patch-configure
+++ b/emulators/virtualbox-ose-72/files/patch-configure
@@ -42,15 +42,6 @@
else
log_failure "Qt6 framework not found (can be disabled using --disable-qt)"
fail
-@@ -1897,7 +1905,7 @@ EOF
- return 0;
- }
- EOF
-- [ -n "$INCOGG" ] && I_INCVRB=`prefix_I "$INCOGG"`
-+ [ -n "$INCOGG" ] && I_INCOGG=`prefix_I "$INCOGG"`
- if test_compile "$LIBOGG $I_INCOGG" ogg ogg nofatal; then
- if test_execute; then
- cnf_append "SDK_VBoxLibOgg_INCS" "$INCOGG"
@@ -2125,8 +2133,8 @@ EOF
echo "compiling the following source file:" >> $LOG
cat $ODIR.tmp_src.cc >> $LOG
diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Makefile.kmk
index b66a828f5eb2..cc93f6379cbc 100644
--- a/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Makefile.kmk
+++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Makefile.kmk
@@ -1,4 +1,4 @@
---- src/VBox/Devices/Makefile.kmk.orig 2025-08-13 19:48:02 UTC
+--- src/VBox/Devices/Makefile.kmk.orig 2025-09-10 16:59:18 UTC
+++ src/VBox/Devices/Makefile.kmk
@@ -135,6 +135,7 @@ if !defined(VBOX_ONLY_EXTPACKS)
VBoxDDU_LDFLAGS.darwin += -framework IOKit
@@ -29,11 +29,20 @@
Graphics/DevVGA-SVGA3d-glLdr.cpp
else
VBoxDD_LIBS.linux += X11 GL
-+ VBoxDD_LIBS.freebsd += X11 GL
++ VBoxDD_LIBS.freebsd += X11 GL
VBoxDD_LIBS.win += $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/Opengl32.lib
endif
VBoxDD_LDFLAGS.darwin += -framework OpenGL
-@@ -1523,6 +1526,8 @@ if defined(VBOX_WITH_VMSVGA3D) && !defined(VBOX_ONLY_E
+@@ -517,6 +520,8 @@ if !defined(VBOX_ONLY_EXTPACKS) && "$(intersects $(KBU
+ Video/JPEGEnc.cpp
+ VBoxDD_SOURCES.darwin += \
+ Video/HostWebcam-darwin.mm
++ VBoxDD_SOURCES.freebsd += \
++ Video/HostWebcam-v4l2.cpp
+ VBoxDD_SOURCES.linux += \
+ Video/HostWebcam-v4l2.cpp
+ VBoxDD_SOURCES.solaris += \
+@@ -1536,6 +1541,8 @@ if defined(VBOX_WITH_VMSVGA3D) && !defined(VBOX_ONLY_E
VBoxSVGA3D_INCS = $(VBOX_GRAPHICS_INCS)
VBoxSVGA3D_INCS.win := \
Graphics/shaderlib/libWineStub/include
diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxManager.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxManager.cpp
deleted file mode 100644
index 7f18eb80356b..000000000000
--- a/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxManager.cpp
+++ /dev/null
@@ -1,46 +0,0 @@
---- src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxManager.cpp.orig 2025-08-13 19:50:55 UTC
-+++ src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxManager.cpp
-@@ -2402,6 +2402,9 @@ void UIVirtualBoxManager::prepare()
- qApp->installEventFilter(this);
- #endif
-
-+ /* Prepare notification-center invisibvle way: */
-+ prepareNotificationCenter();
-+
- /* Cache media data early if necessary: */
- if (uiCommon().agressiveCaching())
- gpMediumEnumerator->enumerateMedia();
-@@ -2446,6 +2449,12 @@ void UIVirtualBoxManager::prepare()
- #endif /* VBOX_GUI_WITH_NETWORK_MANAGER && VBOX_WITH_UPDATE_REQUEST */
- }
-
-+void UIVirtualBoxManager::prepareNotificationCenter()
-+{
-+ UINotificationCenter::create();
-+
-+}
-+
- void UIVirtualBoxManager::prepareCloudMachineManager()
- {
- UICloudMachineManager::create();
-@@ -2805,6 +2814,12 @@ void UIVirtualBoxManager::cleanupCloudMachineManager()
- UICloudMachineManager::destroy();
- }
-
-+void UIVirtualBoxManager::cleanupNotificationCenter()
-+{
-+ UINotificationCenter::destroy();
-+
-+}
-+
- void UIVirtualBoxManager::cleanup()
- {
- /* Ask sub-dialogs to commit data: */
-@@ -2814,6 +2829,7 @@ void UIVirtualBoxManager::cleanup()
- cleanupWidgets();
- cleanupMenuBar();
- cleanupCloudMachineManager();
-+ cleanupNotificationCenter();
- }
-
- UIVirtualMachineItem *UIVirtualBoxManager::currentItem() const
diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxManager.h b/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxManager.h
deleted file mode 100644
index 80daea0c318c..000000000000
--- a/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxManager.h
+++ /dev/null
@@ -1,20 +0,0 @@
---- src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxManager.h.orig 2025-08-13 19:50:55 UTC
-+++ src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxManager.h
-@@ -341,6 +341,8 @@ private slots: (private)
- * @{ */
- /** Prepares window. */
- void prepare();
-+ /** Prepares notification-center. */
-+ void prepareNotificationCenter();
- /** Prepares cloud machine manager. */
- void prepareCloudMachineManager();
- /** Prepares icon. */
-@@ -366,6 +368,8 @@ private slots: (private)
- void cleanupMenuBar();
- /** Cleanups cloud machine manager. */
- void cleanupCloudMachineManager();
-+ /** Cleanups notification-center. */
-+ void cleanupNotificationCenter();
- /** Cleanups window. */
- void cleanup();
- /** @} */
diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxWidget.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxWidget.cpp
deleted file mode 100644
index 52f736783c17..000000000000
--- a/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxWidget.cpp
+++ /dev/null
@@ -1,24 +0,0 @@
---- src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxWidget.cpp.orig 2025-08-13 19:50:55 UTC
-+++ src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxWidget.cpp
-@@ -399,8 +399,8 @@ void UIVirtualBoxWidget::prepareWidgets()
- }
- }
-
-- /* Create notification-center: */
-- UINotificationCenter::create(this);
-+ /* Reparent notification-center: */
-+ gpNotificationCenter->setParent(this);
-
- /* Update toolbar finally: */
- updateToolbar();
-@@ -746,8 +746,8 @@ void UIVirtualBoxWidget::cleanup()
-
- void UIVirtualBoxWidget::cleanup()
- {
-- /* Destroy notification-center: */
-- UINotificationCenter::destroy();
-+ /* Reparent notification-center: */
-+ gpNotificationCenter->setParent(0);
- }
-
- UIGlobalToolsWidget *UIVirtualBoxWidget::globalToolsWidget() const
diff --git a/emulators/virtualbox-ose-kmod-72/Makefile b/emulators/virtualbox-ose-kmod-72/Makefile
index 0990aebfbc08..40c529cae48a 100644
--- a/emulators/virtualbox-ose-kmod-72/Makefile
+++ b/emulators/virtualbox-ose-kmod-72/Makefile
@@ -1,5 +1,5 @@
PORTNAME= virtualbox-ose
-DISTVERSION= 7.2.0
+DISTVERSION= 7.2.2
CATEGORIES= emulators
MASTER_SITES= https://download.virtualbox.org/virtualbox/${DISTVERSION}/
PKGNAMESUFFIX= -kmod-72
diff --git a/emulators/virtualbox-ose-kmod-72/distinfo b/emulators/virtualbox-ose-kmod-72/distinfo
index c67534681918..41bf0f3a16ac 100644
--- a/emulators/virtualbox-ose-kmod-72/distinfo
+++ b/emulators/virtualbox-ose-kmod-72/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1755276527
-SHA256 (VirtualBox-7.2.0.tar.bz2) = 4f2804ff27848ea772aee6b637bb1e10ee74ec2da117c257413e2d2c4f670ba0
-SIZE (VirtualBox-7.2.0.tar.bz2) = 206755781
+TIMESTAMP = 1759400000
+SHA256 (VirtualBox-7.2.2.tar.bz2) = b0e63bfb855327aecf1122cda33390c33734e5ffed72f123f5edf786a8ce1393
+SIZE (VirtualBox-7.2.2.tar.bz2) = 206992991
diff --git a/emulators/virtualbox-ose-legacy/Makefile b/emulators/virtualbox-ose-legacy/Makefile
index 77ed9000a262..2040fa8bf3e0 100644
--- a/emulators/virtualbox-ose-legacy/Makefile
+++ b/emulators/virtualbox-ose-legacy/Makefile
@@ -314,6 +314,8 @@ post-patch:
@${REINPLACE_CMD} \
-e 's|^versions =.*|versions = ["${PYTHON_VER}${PYTHON_ABIVER}"]|' \
${WRKSRC}/src/libs/xpcom18a4/python/gen_python_deps.py
+ @${REINPLACE_CMD} -e 's|curl_proxytype|long|g' \
+ ${WRKSRC}/src/VBox/Runtime/generic/http-curl.cpp
do-build:
cd ${WRKSRC} && ${SH} -c '. ${WRKSRC}/env.sh && \
diff --git a/emulators/virtualbox-ose/Makefile b/emulators/virtualbox-ose/Makefile
index 3bb9bd477162..0090c98652d1 100644
--- a/emulators/virtualbox-ose/Makefile
+++ b/emulators/virtualbox-ose/Makefile
@@ -328,6 +328,8 @@ post-patch:
@${REINPLACE_CMD} \
-e 's|^versions =.*|versions = ["${PYTHON_VER}${PYTHON_ABIVER}"]|' \
${WRKSRC}/src/libs/xpcom18a4/python/gen_python_deps.py
+ @${REINPLACE_CMD} -e 's|curl_proxytype|long|g' \
+ ${WRKSRC}/src/VBox/Runtime/generic/http-curl.cpp
post-patch-AIO-off:
@${REINPLACE_CMD} 's|r3/freebsd/fileaio-freebsd.cpp|r3/posix/fileaio-posix.cpp|' \