summaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
Diffstat (limited to 'emulators')
-rw-r--r--emulators/86Box/Makefile36
-rw-r--r--emulators/86Box/distinfo6
-rw-r--r--emulators/86Box/files/patch-cmake_flags-gcc-aarch64.cmake10
-rw-r--r--emulators/86Box/files/patch-cmake_flags-gcc-armv7.cmake10
-rw-r--r--emulators/86Box/files/patch-cmake_flags-gcc-x86__64.cmake12
-rw-r--r--emulators/86Box/files/patch-cmake_flags-gcc.cmake11
-rw-r--r--emulators/86Box/files/patch-src_cdrom_CMakeLists.txt10
-rw-r--r--emulators/86Box/files/patch-src_network_CMakeLists.txt10
-rw-r--r--emulators/86Box/files/patch-src_printer_CMakeLists.txt10
-rw-r--r--emulators/86Box/files/patch-src_qt_qt__mainwindow.cpp10
-rw-r--r--emulators/86Box/files/patch-src_qt_qt__vmmanager__details.cpp79
-rw-r--r--emulators/86Box/files/patch-src_qt_qt__vmmanager__detailsection.cpp11
-rw-r--r--emulators/86Box/files/patch-src_qt_qt__vmmanager__system.cpp219
-rw-r--r--emulators/86Box/files/patch-src_video_CMakeLists.txt11
-rw-r--r--emulators/dosbox-x/Makefile2
-rw-r--r--emulators/dosbox-x/distinfo6
-rw-r--r--emulators/dosbox-x/files/patch-configure.ac4
-rw-r--r--emulators/dosbox-x/files/patch-fix-ffmpeg888
-rw-r--r--emulators/dosbox-x/files/patch-src_gui_sdl__gui.cpp8
-rw-r--r--emulators/magia/Makefile2
-rw-r--r--emulators/mame/Makefile33
-rw-r--r--emulators/mame/distinfo6
-rw-r--r--emulators/mame/files/patch-3rdparty_lzma_C_CpuArch.c6
-rw-r--r--emulators/mame/files/patch-3rdparty_lzma_C_Sha256Opt.c4
-rw-r--r--emulators/mame/files/patch-makefile10
-rw-r--r--emulators/mame/files/patch-scripts_genie.lua34
-rw-r--r--emulators/mame/files/patch-scripts_src_main.lua4
-rw-r--r--emulators/mame/files/patch-scripts_src_osd_modules.lua26
-rw-r--r--emulators/mame/pkg-plist17
-rw-r--r--emulators/open-vm-kmod/Makefile6
-rw-r--r--emulators/open-vm-kmod/distinfo6
-rw-r--r--emulators/open-vm-kmod/files/patch-vmblock_subr.c29
-rw-r--r--emulators/open-vm-kmod/files/patch-vmblock_vfsops.c11
-rw-r--r--emulators/open-vm-kmod/files/patch-vmblock_vnops.c41
-rw-r--r--emulators/open-vm-kmod/files/patch-vmmemctl_os.c8
-rw-r--r--emulators/open-vm-tools/Makefile14
-rw-r--r--emulators/open-vm-tools/distinfo6
-rw-r--r--emulators/open-vm-tools/files/patch-Makefile.am11
-rw-r--r--emulators/open-vm-tools/files/patch-lib_guestApp_guestApp.c2
-rw-r--r--emulators/open-vm-tools/files/patch-lib_misc_codeset.c11
-rw-r--r--emulators/open-vm-tools/files/patch-pam_generic4
-rw-r--r--emulators/open-vm-tools/files/patch-scripts_common_vm-support11
-rw-r--r--emulators/open-vm-tools/files/patch-services_plugins_componentMgr_svtminion.sh11
-rw-r--r--emulators/open-vm-tools/files/patch-services_vmtoolsd_Makefile.am6
-rw-r--r--emulators/open-vm-tools/files/patch-vgauth_common_prefs.h20
-rw-r--r--emulators/open-vm-tools/files/patch-vgauth_service_Makefile.am17
-rw-r--r--emulators/open-vm-tools/files/patch-vmware-user-suid-wrapper_wrapper.h11
-rw-r--r--emulators/open-vm-tools/pkg-plist3
-rw-r--r--emulators/qemu-devel/Makefile6
-rw-r--r--emulators/qemu-devel/distinfo30
-rw-r--r--emulators/virtualbox-ose-70/Makefile15
-rw-r--r--emulators/virtualbox-ose-70/files/patch-Config.kmk83
-rw-r--r--emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c4
-rw-r--r--emulators/virtualbox-ose-71/Makefile15
-rw-r--r--emulators/virtualbox-ose-71/files/patch-Config.kmk73
-rw-r--r--emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c4
-rw-r--r--emulators/virtualbox-ose-72/Makefile15
-rw-r--r--emulators/virtualbox-ose-72/files/patch-Config.kmk71
-rw-r--r--emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c4
-rw-r--r--emulators/virtualbox-ose-legacy/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c4
-rw-r--r--emulators/virtualbox-ose-nox11-70/Makefile2
-rw-r--r--emulators/virtualbox-ose-nox11-71/Makefile2
-rw-r--r--emulators/virtualbox-ose-nox11-72/Makefile2
-rw-r--r--emulators/virtualbox-ose/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c4
-rw-r--r--emulators/wine-devel/Makefile2
-rw-r--r--emulators/wine-devel/distinfo6
-rw-r--r--emulators/wine-devel/files/patch-dlls_ntdll_unix_signal__i386.c11
-rw-r--r--emulators/wine-devel/pkg-plist11
-rw-r--r--emulators/z80pack/Makefile23
-rw-r--r--emulators/z80pack/distinfo6
-rw-r--r--emulators/z80pack/files/patch-Makefile30
-rw-r--r--emulators/z80pack/files/patch-cpmsim_srcsim_Makefile24
-rw-r--r--emulators/z80pack/files/patch-cpmsim_srcsim_Makefile.bsd23
-rw-r--r--emulators/z80pack/files/patch-cpmsim_srctools_Makefile30
-rw-r--r--emulators/z80pack/pkg-plist49
75 files changed, 589 insertions, 883 deletions
diff --git a/emulators/86Box/Makefile b/emulators/86Box/Makefile
index 6ed2545ec34e..09e35b8a4d42 100644
--- a/emulators/86Box/Makefile
+++ b/emulators/86Box/Makefile
@@ -1,6 +1,6 @@
PORTNAME= 86Box
DISTVERSIONPREFIX= v
-DISTVERSION= 5.0
+DISTVERSION= 5.1
CATEGORIES= emulators
MAINTAINER= tiga@FreeBSD.org
@@ -23,38 +23,28 @@ LIB_DEPENDS= libevdev.so:devel/libevdev \
libsndfile.so:audio/libsndfile \
libxkbcommon.so:x11/libxkbcommon
-FLAVORS= qt6 qt5
-FLAVOR?= qt6
-qt5_PKGNAMESUFFIX= -qt5
-qt6_PKGNAMESUFFIX= -qt6
-
-USES= cmake compiler:c++11-lang gnome pkgconfig qmake sdl xorg
+USES= cmake compiler:c++11-lang gl gnome pkgconfig qmake qt:6 sdl \
+ xorg
USE_GITHUB= yes
+USE_GL= opengl
USE_GNOME= glib20
+USE_QT= base tools:build
USE_SDL= sdl2
USE_XORG= x11 xcb xext xi
-.if ${FLAVOR} == qt5
-USES+= qt:5
-USE_QT= core gui network opengl widgets buildtools:build \
- linguisttools:build
-.else
BUILD_DEPENDS+= vulkan-headers>0:graphics/vulkan-headers
-USES+= gl qt:6
-USE_GL= opengl
-USE_QT= base tools:build
CMAKE_ON= USE_QT6
-CXXFLAGS+= -I${LOCALBASE}/include/qt6/QtGui/`pkg-config --modversion Qt6Gui`/QtGui
-.endif
-CMAKE_ON+= RELEASE ${CMAKE_ON_${ARCH}}
+CMAKE_ON+= ${CMAKE_ON_${ARCH}} RELEASE
CMAKE_ON_aarch64= NEW_DYNAREC
-CMAKE_OFF= DISCORD ${CMAKE_OFF_${ARCH}}
+CMAKE_OFF= ${CMAKE_OFF_${ARCH}} DISCORD
CMAKE_OFF_powerpc64le= DYNAREC
-SUB_FILES= 86Box-install-roms.sh
-SUB_LIST= DISTVERSION=${DISTVERSION} \
- DISTVERSIONPREFIX=${DISTVERSIONPREFIX}
+CXXFLAGS+= -I${LOCALBASE}/include/qt6/QtGui/`pkg-config --modversion Qt6Gui`/QtGui
+
+SUB_FILES= 86Box-install-roms.sh
+SUB_LIST= DISTVERSION=${DISTVERSION} \
+ DISTVERSIONPREFIX=${DISTVERSIONPREFIX}
OPTIONS_DEFINE= NLS WAYLAND
OPTIONS_DEFAULT= WAYLAND
@@ -64,7 +54,7 @@ NLS_CONFIGURE_ENABLE= nls
WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland
WAYLAND_USES= kde:5
-WAYLAND_USE= kde=ecm:build
+WAYLAND_USE= KDE=ecm:build
WAYLAND_CMAKE_OFF= -DCMAKE_DISABLE_FIND_PACKAGE_Wayland:BOOL=ON
ICON_RESOLUTIONS= 128x128 192x192 256x256 48x48 512x512 64x64 72x72 96x96
diff --git a/emulators/86Box/distinfo b/emulators/86Box/distinfo
index a08ab5ac5399..2af26efb0b3d 100644
--- a/emulators/86Box/distinfo
+++ b/emulators/86Box/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1756060000
-SHA256 (86Box-86Box-v5.0_GH0.tar.gz) = 00899cb06eb5591df57756d13929a470e50d5d87bc219d1d1d36ae7bbe83a4bf
-SIZE (86Box-86Box-v5.0_GH0.tar.gz) = 13880473
+TIMESTAMP = 1759866999
+SHA256 (86Box-86Box-v5.1_GH0.tar.gz) = 942e9a2c8c8db3545eddf47854e8ac7585512060f41dbd7bb67b810f537b5eaa
+SIZE (86Box-86Box-v5.1_GH0.tar.gz) = 13904013
diff --git a/emulators/86Box/files/patch-cmake_flags-gcc-aarch64.cmake b/emulators/86Box/files/patch-cmake_flags-gcc-aarch64.cmake
deleted file mode 100644
index 3a58a593294f..000000000000
--- a/emulators/86Box/files/patch-cmake_flags-gcc-aarch64.cmake
+++ /dev/null
@@ -1,10 +0,0 @@
---- cmake/flags-gcc-aarch64.cmake.orig 2024-07-26 18:14:45 UTC
-+++ cmake/flags-gcc-aarch64.cmake
-@@ -14,7 +14,4 @@
- # Copyright 2021 David Hrdlička.
- #
-
--string(APPEND CMAKE_C_FLAGS_INIT " -march=armv8-a")
--string(APPEND CMAKE_CXX_FLAGS_INIT " -march=armv8-a")
--
- include(${CMAKE_CURRENT_LIST_DIR}/flags-gcc.cmake)
diff --git a/emulators/86Box/files/patch-cmake_flags-gcc-armv7.cmake b/emulators/86Box/files/patch-cmake_flags-gcc-armv7.cmake
deleted file mode 100644
index 5809748fa55e..000000000000
--- a/emulators/86Box/files/patch-cmake_flags-gcc-armv7.cmake
+++ /dev/null
@@ -1,10 +0,0 @@
---- cmake/flags-gcc-armv7.cmake.orig 2024-07-26 18:16:08 UTC
-+++ cmake/flags-gcc-armv7.cmake
-@@ -14,7 +14,4 @@
- # Copyright 2021 David Hrdlička.
- #
-
--string(APPEND CMAKE_C_FLAGS_INIT " -march=armv7-a+fp -mfloat-abi=hard")
--string(APPEND CMAKE_CXX_FLAGS_INIT " -march=armv7-a+fp -mfloat-abi=hard")
--
- include(${CMAKE_CURRENT_LIST_DIR}/flags-gcc.cmake)
diff --git a/emulators/86Box/files/patch-cmake_flags-gcc-x86__64.cmake b/emulators/86Box/files/patch-cmake_flags-gcc-x86__64.cmake
deleted file mode 100644
index 100bdd0cb47c..000000000000
--- a/emulators/86Box/files/patch-cmake_flags-gcc-x86__64.cmake
+++ /dev/null
@@ -1,12 +0,0 @@
---- cmake/flags-gcc-x86_64.cmake.orig 2024-07-26 18:16:26 UTC
-+++ cmake/flags-gcc-x86_64.cmake
-@@ -14,7 +14,7 @@
- # Copyright 2021 David Hrdlička.
- #
-
--string(APPEND CMAKE_C_FLAGS_INIT " -m64 -march=x86-64 -msse2 -mfpmath=sse -mstackrealign")
--string(APPEND CMAKE_CXX_FLAGS_INIT " -m64 -march=x86-64 -msse2 -mfpmath=sse -mstackrealign")
-+string(APPEND CMAKE_C_FLAGS_INIT " -mstackrealign")
-+string(APPEND CMAKE_CXX_FLAGS_INIT " -mstackrealign")
-
- include(${CMAKE_CURRENT_LIST_DIR}/flags-gcc.cmake)
diff --git a/emulators/86Box/files/patch-cmake_flags-gcc.cmake b/emulators/86Box/files/patch-cmake_flags-gcc.cmake
deleted file mode 100644
index d9b56c9c71ed..000000000000
--- a/emulators/86Box/files/patch-cmake_flags-gcc.cmake
+++ /dev/null
@@ -1,11 +0,0 @@
---- cmake/flags-gcc.cmake.orig 2024-07-26 18:17:03 UTC
-+++ cmake/flags-gcc.cmake
-@@ -16,8 +16,6 @@ string(APPEND CMAKE_CXX_FLAGS_INIT " -fom
- # Define our flags
- string(APPEND CMAKE_C_FLAGS_INIT " -fomit-frame-pointer -Wall -fno-strict-aliasing -Werror=implicit-int -Werror=implicit-function-declaration -Werror=int-conversion -Werror=strict-prototypes -Werror=old-style-definition")
- string(APPEND CMAKE_CXX_FLAGS_INIT " -fomit-frame-pointer -Wall -fno-strict-aliasing")
--string(APPEND CMAKE_C_FLAGS_RELEASE_INIT " -g0 -O3")
--string(APPEND CMAKE_CXX_FLAGS_RELEASE_INIT " -g0 -O3")
- string(APPEND CMAKE_C_FLAGS_DEBUG_INIT " -ggdb -Og")
- string(APPEND CMAKE_CXX_FLAGS_DEBUG_INIT " -ggdb -Og")
- string(APPEND CMAKE_C_FLAGS_OPTIMIZED_INIT " -march=native -mtune=native -O3 -ffp-contract=fast -flto")
diff --git a/emulators/86Box/files/patch-src_cdrom_CMakeLists.txt b/emulators/86Box/files/patch-src_cdrom_CMakeLists.txt
deleted file mode 100644
index c02dd2399e58..000000000000
--- a/emulators/86Box/files/patch-src_cdrom_CMakeLists.txt
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/cdrom/CMakeLists.txt.orig 2025-08-24 18:40:59 UTC
-+++ src/cdrom/CMakeLists.txt
-@@ -26,6 +26,7 @@ target_link_libraries(86Box PkgConfig::SNDFILE)
- cdrom_mke.c
- )
- target_link_libraries(86Box PkgConfig::SNDFILE)
-+target_include_directories(cdrom PRIVATE /usr/local/include)
-
- if(CDROM_MITSUMI)
- target_compile_definitions(cdrom PRIVATE USE_CDROM_MITSUMI)
diff --git a/emulators/86Box/files/patch-src_network_CMakeLists.txt b/emulators/86Box/files/patch-src_network_CMakeLists.txt
deleted file mode 100644
index 6009eef2e7cb..000000000000
--- a/emulators/86Box/files/patch-src_network_CMakeLists.txt
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/network/CMakeLists.txt.orig 2025-08-24 18:50:29 UTC
-+++ src/network/CMakeLists.txt
-@@ -71,6 +71,7 @@ if (UNIX)
- endif()
-
- if (UNIX)
-+ set_source_files_properties(net_slirp.c PROPERTIES COMPILE_FLAGS "-I/usr/local/include")
- find_path(HAS_VDE "libvdeplug.h" PATHS ${VDE_INCLUDE_DIR} "/usr/include /usr/local/include" "/opt/homebrew/include" )
- if(HAS_VDE)
- find_library(VDE_LIB vdeplug)
diff --git a/emulators/86Box/files/patch-src_printer_CMakeLists.txt b/emulators/86Box/files/patch-src_printer_CMakeLists.txt
deleted file mode 100644
index a07e28d70427..000000000000
--- a/emulators/86Box/files/patch-src_printer_CMakeLists.txt
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/printer/CMakeLists.txt.orig 2025-08-24 12:26:31 UTC
-+++ src/printer/CMakeLists.txt
-@@ -37,6 +37,7 @@ target_link_libraries(86Box PkgConfig::FREETYPE)
- find_package(PkgConfig REQUIRED)
- pkg_check_modules(FREETYPE REQUIRED IMPORTED_TARGET freetype2)
- target_link_libraries(86Box PkgConfig::FREETYPE)
-+target_include_directories(print PRIVATE ${FREETYPE_INCLUDE_DIRS})
- if(STATIC_BUILD)
- # if(QT)
- # Qt provides its own version of harfbuzz which leads to duplicated symbols.
diff --git a/emulators/86Box/files/patch-src_qt_qt__mainwindow.cpp b/emulators/86Box/files/patch-src_qt_qt__mainwindow.cpp
deleted file mode 100644
index 89635e4db214..000000000000
--- a/emulators/86Box/files/patch-src_qt_qt__mainwindow.cpp
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/qt/qt_mainwindow.cpp.orig 2025-08-24 12:26:31 UTC
-+++ src/qt/qt_mainwindow.cpp
-@@ -469,6 +469,7 @@ MainWindow::MainWindow(QWidget *parent)
-
- #if QT_CONFIG(vulkan)
- bool vulkanAvailable = false;
-+ if (0)
- {
- QVulkanInstance instance;
- instance.setApiVersion(QVersionNumber(1, 0));
diff --git a/emulators/86Box/files/patch-src_qt_qt__vmmanager__details.cpp b/emulators/86Box/files/patch-src_qt_qt__vmmanager__details.cpp
deleted file mode 100644
index 6386154d5c15..000000000000
--- a/emulators/86Box/files/patch-src_qt_qt__vmmanager__details.cpp
+++ /dev/null
@@ -1,79 +0,0 @@
---- src/qt/qt_vmmanager_details.cpp.orig 2025-08-24 19:07:21 UTC
-+++ src/qt/qt_vmmanager_details.cpp
-@@ -248,52 +248,52 @@ VMManagerDetails::updateConfig(VMManagerSystem *passed
-
- // System
- systemSection->clear();
-- systemSection->addSection("Machine", passed_sysconfig->getDisplayValue(Display::Name::Machine));
-- systemSection->addSection("CPU", passed_sysconfig->getDisplayValue(Display::Name::CPU));
-- systemSection->addSection("Memory", passed_sysconfig->getDisplayValue(Display::Name::Memory));
-+ systemSection->addSection("Machine", passed_sysconfig->getDisplayValue(VMManager::Display::Name::Machine));
-+ systemSection->addSection("CPU", passed_sysconfig->getDisplayValue(VMManager::Display::Name::CPU));
-+ systemSection->addSection("Memory", passed_sysconfig->getDisplayValue(VMManager::Display::Name::Memory));
-
- // Video
- videoSection->clear();
-- videoSection->addSection("Video", passed_sysconfig->getDisplayValue(Display::Name::Video));
-- if(!passed_sysconfig->getDisplayValue(Display::Name::Voodoo).isEmpty()) {
-- videoSection->addSection("Voodoo", passed_sysconfig->getDisplayValue(Display::Name::Voodoo));
-+ videoSection->addSection("Video", passed_sysconfig->getDisplayValue(VMManager::Display::Name::Video));
-+ if(!passed_sysconfig->getDisplayValue(VMManager::Display::Name::Voodoo).isEmpty()) {
-+ videoSection->addSection("Voodoo", passed_sysconfig->getDisplayValue(VMManager::Display::Name::Voodoo));
- }
-
- // Disks
- storageSection->clear();
-- storageSection->addSection("Disks", passed_sysconfig->getDisplayValue(Display::Name::Disks));
-- storageSection->addSection("Floppy", passed_sysconfig->getDisplayValue(Display::Name::Floppy));
-- storageSection->addSection("CD-ROM", passed_sysconfig->getDisplayValue(Display::Name::CD));
-- storageSection->addSection("Removable disks", passed_sysconfig->getDisplayValue(Display::Name::RDisk));
-- storageSection->addSection("MO", passed_sysconfig->getDisplayValue(Display::Name::MO));
-- storageSection->addSection("SCSI", passed_sysconfig->getDisplayValue(Display::Name::SCSIController));
-- storageSection->addSection("Controllers", passed_sysconfig->getDisplayValue(Display::Name::StorageController));
-+ storageSection->addSection("Disks", passed_sysconfig->getDisplayValue(VMManager::Display::Name::Disks));
-+ storageSection->addSection("Floppy", passed_sysconfig->getDisplayValue(VMManager::Display::Name::Floppy));
-+ storageSection->addSection("CD-ROM", passed_sysconfig->getDisplayValue(VMManager::Display::Name::CD));
-+ storageSection->addSection("Removable disks", passed_sysconfig->getDisplayValue(VMManager::Display::Name::RDisk));
-+ storageSection->addSection("MO", passed_sysconfig->getDisplayValue(VMManager::Display::Name::MO));
-+ storageSection->addSection("SCSI", passed_sysconfig->getDisplayValue(VMManager::Display::Name::SCSIController));
-+ storageSection->addSection("Controllers", passed_sysconfig->getDisplayValue(VMManager::Display::Name::StorageController));
-
- // Audio
- audioSection->clear();
-- audioSection->addSection("Audio", passed_sysconfig->getDisplayValue(Display::Name::Audio));
-- audioSection->addSection("MIDI Out", passed_sysconfig->getDisplayValue(Display::Name::MidiOut));
-+ audioSection->addSection("Audio", passed_sysconfig->getDisplayValue(VMManager::Display::Name::Audio));
-+ audioSection->addSection("MIDI Out", passed_sysconfig->getDisplayValue(VMManager::Display::Name::MidiOut));
-
- // Network
- networkSection->clear();
-- networkSection->addSection("NIC", passed_sysconfig->getDisplayValue(Display::Name::NIC));
-+ networkSection->addSection("NIC", passed_sysconfig->getDisplayValue(VMManager::Display::Name::NIC));
-
- // Input
- inputSection->clear();
-- inputSection->addSection("Keyboard", passed_sysconfig->getDisplayValue(Display::Name::Keyboard));
-- inputSection->addSection("Mouse", passed_sysconfig->getDisplayValue(Display::Name::Mouse));
-- inputSection->addSection("Joystick", passed_sysconfig->getDisplayValue(Display::Name::Joystick));
-+ inputSection->addSection("Keyboard", passed_sysconfig->getDisplayValue(VMManager::Display::Name::Keyboard));
-+ inputSection->addSection("Mouse", passed_sysconfig->getDisplayValue(VMManager::Display::Name::Mouse));
-+ inputSection->addSection("Joystick", passed_sysconfig->getDisplayValue(VMManager::Display::Name::Joystick));
-
- // Ports
- portsSection->clear();
-- portsSection->addSection("Serial ports", passed_sysconfig->getDisplayValue(Display::Name::Serial));
-- portsSection->addSection("Parallel ports", passed_sysconfig->getDisplayValue(Display::Name::Parallel));
-+ portsSection->addSection("Serial ports", passed_sysconfig->getDisplayValue(VMManager::Display::Name::Serial));
-+ portsSection->addSection("Parallel ports", passed_sysconfig->getDisplayValue(VMManager::Display::Name::Parallel));
-
- // Other devices
- otherSection->clear();
-- otherSection->addSection("ISA RTC", passed_sysconfig->getDisplayValue(Display::Name::IsaRtc));
-- otherSection->addSection("ISA RAM", passed_sysconfig->getDisplayValue(Display::Name::IsaMem));
-- otherSection->addSection("ISA ROM", passed_sysconfig->getDisplayValue(Display::Name::IsaRom));
-+ otherSection->addSection("ISA RTC", passed_sysconfig->getDisplayValue(VMManager::Display::Name::IsaRtc));
-+ otherSection->addSection("ISA RAM", passed_sysconfig->getDisplayValue(VMManager::Display::Name::IsaMem));
-+ otherSection->addSection("ISA ROM", passed_sysconfig->getDisplayValue(VMManager::Display::Name::IsaRom));
-
- systemSection->setSections();
- videoSection->setSections();
diff --git a/emulators/86Box/files/patch-src_qt_qt__vmmanager__detailsection.cpp b/emulators/86Box/files/patch-src_qt_qt__vmmanager__detailsection.cpp
deleted file mode 100644
index 4b35ec0aa35b..000000000000
--- a/emulators/86Box/files/patch-src_qt_qt__vmmanager__detailsection.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/qt/qt_vmmanager_detailsection.cpp.orig 2025-08-24 19:05:30 UTC
-+++ src/qt/qt_vmmanager_detailsection.cpp
-@@ -145,7 +145,7 @@ void
- }
-
- void
--VMManagerDetailSection::addSection(const QString &name, const QString &value, Display::Name displayField)
-+VMManagerDetailSection::addSection(const QString &name, const QString &value, VMManager::Display::Name displayField)
- {
- const auto new_section = DetailSection { name, value};
- sections.push_back(new_section);
diff --git a/emulators/86Box/files/patch-src_qt_qt__vmmanager__system.cpp b/emulators/86Box/files/patch-src_qt_qt__vmmanager__system.cpp
deleted file mode 100644
index aa94a21eab29..000000000000
--- a/emulators/86Box/files/patch-src_qt_qt__vmmanager__system.cpp
+++ /dev/null
@@ -1,219 +0,0 @@
---- src/qt/qt_vmmanager_system.cpp.orig 2025-08-24 19:09:53 UTC
-+++ src/qt/qt_vmmanager_system.cpp
-@@ -557,7 +557,7 @@ VMManagerSystem::setupVars() {
- }
- }
- }
-- display_table[Display::Name::Machine] = machine_name;
-+ display_table[VMManager::Display::Name::Machine] = machine_name;
-
- // CPU: Combine name with speed and FPU
- QString cpu_name = "Unknown";
-@@ -592,34 +592,34 @@ VMManagerSystem::setupVars() {
- // int speed_display = machine_config["cpu_speed"].toInt() / 1000000;
- // cpu_name.append(QString::number(speed_display).prepend(" / "));
- // cpu_name.append(QCoreApplication::translate("", "MHz").prepend(' '));
-- display_table[Display::Name::CPU] = cpu_name;
-+ display_table[VMManager::Display::Name::CPU] = cpu_name;
-
- // Memory
- int divisor = (ram_granularity < 1024) ? 1 : 1024;
- QString display_unit = (divisor == 1) ? "KB" : "MB";
- auto mem_display = QString::number(machine_config["mem_size"].toInt() / divisor);
- mem_display.append(QCoreApplication::translate("", display_unit.toUtf8().constData()).prepend(' '));
-- display_table[Display::Name::Memory] = mem_display;
-+ display_table[VMManager::Display::Name::Memory] = mem_display;
-
- // Video card
- int video_int = video_get_video_from_internal_name(video_config["gfxcard"].toUtf8().data());
- const device_t* video_dev = video_card_getdevice(video_int);
-- display_table[Display::Name::Video] = DeviceConfig::DeviceName(video_dev, video_get_internal_name(video_int), 1);
-+ display_table[VMManager::Display::Name::Video] = DeviceConfig::DeviceName(video_dev, video_get_internal_name(video_int), 1);
-
- // Secondary video
- if (video_config.contains("gfxcard_2")) {
- int video2_int = video_get_video_from_internal_name(video_config["gfxcard_2"].toUtf8().data());
- const device_t* video2_dev = video_card_getdevice(video2_int);
-- display_table[Display::Name::Video].append(DeviceConfig::DeviceName(video2_dev, video_get_internal_name(video2_int), 1).prepend(VMManagerDetailSection::sectionSeparator));
-+ display_table[VMManager::Display::Name::Video].append(DeviceConfig::DeviceName(video2_dev, video_get_internal_name(video2_int), 1).prepend(VMManagerDetailSection::sectionSeparator));
- }
-
- // Add-on video that's not Voodoo
- if (video_config.contains("8514a") && (video_config["8514a"].toInt() != 0))
-- display_table[Display::Name::Video].append(tr("IBM 8514/A Graphics").prepend(VMManagerDetailSection::sectionSeparator));
-+ display_table[VMManager::Display::Name::Video].append(tr("IBM 8514/A Graphics").prepend(VMManagerDetailSection::sectionSeparator));
- if (video_config.contains("xga") && (video_config["xga"].toInt() != 0))
-- display_table[Display::Name::Video].append(tr("XGA Graphics").prepend(VMManagerDetailSection::sectionSeparator));
-+ display_table[VMManager::Display::Name::Video].append(tr("XGA Graphics").prepend(VMManagerDetailSection::sectionSeparator));
- if (video_config.contains("da2") && (video_config["da2"].toInt() != 0))
-- display_table[Display::Name::Video].append(tr("IBM PS/55 Display Adapter Graphics").prepend(VMManagerDetailSection::sectionSeparator));
-+ display_table[VMManager::Display::Name::Video].append(tr("IBM PS/55 Display Adapter Graphics").prepend(VMManagerDetailSection::sectionSeparator));
-
- // Voodoo
- QString voodoo_name = "";
-@@ -641,7 +641,7 @@ VMManagerSystem::setupVars() {
- break;
- }
- }
-- display_table[Display::Name::Voodoo] = voodoo_name;
-+ display_table[VMManager::Display::Name::Voodoo] = voodoo_name;
-
- // Drives
- // First the number of disks
-@@ -666,7 +666,7 @@ VMManagerSystem::setupVars() {
- if (disks.count()) {
- disks_display.append(" / ").append(bus_types.keys().join(", ").toUpper());
- }
--// display_table[Display::Name::Disks] = disks_display;
-+// display_table[VMManager::Display::Name::Disks] = disks_display;
-
- // Drives
- QString new_disk_display;
-@@ -699,7 +699,7 @@ VMManagerSystem::setupVars() {
- if(new_disk_display.isEmpty()) {
- new_disk_display = tr("No disks");
- }
-- display_table[Display::Name::Disks] = new_disk_display;
-+ display_table[VMManager::Display::Name::Disks] = new_disk_display;
-
- // Floppy & CD-ROM
- QStringList floppyDevices;
-@@ -748,8 +748,8 @@ VMManagerSystem::setupVars() {
- }
- }
-
-- display_table[Display::Name::Floppy] = floppyDevices.join(VMManagerDetailSection::sectionSeparator);
-- display_table[Display::Name::CD] = cdromDevices.join(VMManagerDetailSection::sectionSeparator);
-+ display_table[VMManager::Display::Name::Floppy] = floppyDevices.join(VMManagerDetailSection::sectionSeparator);
-+ display_table[VMManager::Display::Name::CD] = cdromDevices.join(VMManagerDetailSection::sectionSeparator);
-
- // Removable disks & MO
- QStringList rdiskDevices;
-@@ -786,8 +786,8 @@ VMManagerSystem::setupVars() {
- }
- }
-
-- display_table[Display::Name::RDisk] = rdiskDevices.join(VMManagerDetailSection::sectionSeparator);
-- display_table[Display::Name::MO] = moDevices.join(VMManagerDetailSection::sectionSeparator);
-+ display_table[VMManager::Display::Name::RDisk] = rdiskDevices.join(VMManagerDetailSection::sectionSeparator);
-+ display_table[VMManager::Display::Name::MO] = moDevices.join(VMManagerDetailSection::sectionSeparator);
-
-
- // SCSI controllers
-@@ -805,7 +805,7 @@ VMManagerSystem::setupVars() {
- }
- }
- }
-- display_table[Display::Name::SCSIController] = scsiControllers.join(VMManagerDetailSection::sectionSeparator);
-+ display_table[VMManager::Display::Name::SCSIController] = scsiControllers.join(VMManagerDetailSection::sectionSeparator);
-
- // Hard and floppy disk controllers
- QStringList storageControllers;
-@@ -864,7 +864,7 @@ VMManagerSystem::setupVars() {
- if (storage_config.contains(ide_qua_internal_name) && (storage_config[ide_qua_internal_name].toInt() != 0))
- storageControllers.append(DeviceConfig::DeviceName(hdc_get_device(hdc_get_from_internal_name(ide_qua_internal_name.toUtf8().data())), ide_qua_internal_name.toUtf8().constData(), 1));
-
-- display_table[Display::Name::StorageController] = storageControllers.join(VMManagerDetailSection::sectionSeparator);
-+ display_table[VMManager::Display::Name::StorageController] = storageControllers.join(VMManagerDetailSection::sectionSeparator);
-
- // Audio
- QStringList sndCards;
-@@ -889,7 +889,7 @@ VMManagerSystem::setupVars() {
- if(sndCards.isEmpty()) {
- sndCards.append(tr("None"));
- }
-- display_table[Display::Name::Audio] = sndCards.join(VMManagerDetailSection::sectionSeparator);
-+ display_table[VMManager::Display::Name::Audio] = sndCards.join(VMManagerDetailSection::sectionSeparator);
-
- // MIDI
- QString midiOutDev;
-@@ -901,7 +901,7 @@ VMManagerSystem::setupVars() {
- midiOutDev = midiDevName;
- }
- }
-- display_table[Display::Name::MidiOut] = midiOutDev;
-+ display_table[VMManager::Display::Name::MidiOut] = midiOutDev;
-
- // midi_device = mt32 (output)
- // mpu401_standalone = 1
-@@ -940,21 +940,21 @@ VMManagerSystem::setupVars() {
- if(nicList.isEmpty()) {
- nicList.append(tr("None"));
- }
-- display_table[Display::Name::NIC] = nicList.join(VMManagerDetailSection::sectionSeparator);
-+ display_table[VMManager::Display::Name::NIC] = nicList.join(VMManagerDetailSection::sectionSeparator);
-
- // Input (Keyboard)
- if (input_config.contains("keyboard_type")) {
- auto keyboard_internal_name = input_config["keyboard_type"];
- auto keyboard_dev = keyboard_get_from_internal_name(keyboard_internal_name.toUtf8().data());
- auto keyboard_dev_name = DeviceConfig::DeviceName(keyboard_get_device(keyboard_dev), keyboard_get_internal_name(keyboard_dev), 0);
-- display_table[Display::Name::Keyboard] = keyboard_dev_name;
-+ display_table[VMManager::Display::Name::Keyboard] = keyboard_dev_name;
- }
-
- // Input (Mouse)
- auto mouse_internal_name = input_config["mouse_type"];
- auto mouse_dev = mouse_get_from_internal_name(mouse_internal_name.toUtf8().data());
- auto mouse_dev_name = DeviceConfig::DeviceName(mouse_get_device(mouse_dev), mouse_get_internal_name(mouse_dev), 0);
-- display_table[Display::Name::Mouse] = mouse_dev_name;
-+ display_table[VMManager::Display::Name::Mouse] = mouse_dev_name;
-
- // Input (joystick)
- QString joystickDevice;
-@@ -965,7 +965,7 @@ VMManagerSystem::setupVars() {
- joystickDevice = joystickName;
- }
- }
-- display_table[Display::Name::Joystick] = joystickDevice;
-+ display_table[VMManager::Display::Name::Joystick] = joystickDevice;
-
- // # Ports
- // Serial
-@@ -1026,8 +1026,8 @@ VMManagerSystem::setupVars() {
- if (portIndex == PARALLEL_MAX)
- break;
- }
-- display_table[Display::Name::Serial] = (serialFinal.empty() ? tr("None") : serialFinal.join(", "));
-- display_table[Display::Name::Parallel] = (lptFinal.empty() ? tr("None") : lptFinal.join((hasLptDevices ? VMManagerDetailSection::sectionSeparator : ", ")));
-+ display_table[VMManager::Display::Name::Serial] = (serialFinal.empty() ? tr("None") : serialFinal.join(", "));
-+ display_table[VMManager::Display::Name::Parallel] = (lptFinal.empty() ? tr("None") : lptFinal.join((hasLptDevices ? VMManagerDetailSection::sectionSeparator : ", ")));
-
- // ISA RTC
- QString isartc_dev_name = "";
-@@ -1036,7 +1036,7 @@ VMManagerSystem::setupVars() {
- auto isartc_dev = isartc_get_from_internal_name(isartc_internal_name.toUtf8().data());
- isartc_dev_name = DeviceConfig::DeviceName(isartc_get_device(isartc_dev), isartc_get_internal_name(isartc_dev), 0);
- }
-- display_table[Display::Name::IsaRtc] = isartc_dev_name;
-+ display_table[VMManager::Display::Name::IsaRtc] = isartc_dev_name;
-
- // ISA RAM
- QStringList IsaMemCards;
-@@ -1053,7 +1053,7 @@ VMManagerSystem::setupVars() {
- }
- }
- }
-- display_table[Display::Name::IsaMem] = IsaMemCards.join(VMManagerDetailSection::sectionSeparator);
-+ display_table[VMManager::Display::Name::IsaMem] = IsaMemCards.join(VMManagerDetailSection::sectionSeparator);
-
- // ISA ROM
- QStringList IsaRomCards;
-@@ -1070,7 +1070,7 @@ VMManagerSystem::setupVars() {
- }
- }
- }
-- display_table[Display::Name::IsaRom] = IsaRomCards.join(VMManagerDetailSection::sectionSeparator);
-+ display_table[VMManager::Display::Name::IsaRom] = IsaRomCards.join(VMManagerDetailSection::sectionSeparator);
- }
-
- bool
-@@ -1119,7 +1119,7 @@ QString
- processStatusChanged();
- }
- QString
--VMManagerSystem::getDisplayValue(Display::Name key)
-+VMManagerSystem::getDisplayValue(VMManager::Display::Name key)
- {
- return (display_table.contains(key)) ? display_table[key] : "";
- }
diff --git a/emulators/86Box/files/patch-src_video_CMakeLists.txt b/emulators/86Box/files/patch-src_video_CMakeLists.txt
deleted file mode 100644
index 36e929c16c4b..000000000000
--- a/emulators/86Box/files/patch-src_video_CMakeLists.txt
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/video/CMakeLists.txt.orig 2025-08-24 18:56:26 UTC
-+++ src/video/CMakeLists.txt
-@@ -143,6 +143,8 @@ add_library(vid OBJECT
-
- )
-
-+target_include_directories(vid PRIVATE /usr/local/include)
-+
- if(G100)
- target_compile_definitions(vid PRIVATE USE_G100)
- endif()
diff --git a/emulators/dosbox-x/Makefile b/emulators/dosbox-x/Makefile
index 03c0416c7b26..9d8ae42d2c01 100644
--- a/emulators/dosbox-x/Makefile
+++ b/emulators/dosbox-x/Makefile
@@ -1,6 +1,6 @@
PORTNAME= dosbox-x
DISTVERSIONPREFIX= ${PORTNAME}-v
-DISTVERSION= 2025.05.03
+DISTVERSION= 2025.10.07
CATEGORIES= emulators
MAINTAINER= eduardo@FreeBSD.org
diff --git a/emulators/dosbox-x/distinfo b/emulators/dosbox-x/distinfo
index 219e59f0ef95..4897e7dc05d4 100644
--- a/emulators/dosbox-x/distinfo
+++ b/emulators/dosbox-x/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1746305468
-SHA256 (joncampbell123-dosbox-x-dosbox-x-v2025.05.03_GH0.tar.gz) = b29a2c9c38bfe1d1c1f2420d546b8c2456ae2ddce4c1f6b4d19f258841ce1581
-SIZE (joncampbell123-dosbox-x-dosbox-x-v2025.05.03_GH0.tar.gz) = 122834930
+TIMESTAMP = 1759852684
+SHA256 (joncampbell123-dosbox-x-dosbox-x-v2025.10.07_GH0.tar.gz) = fed630dba74f1ad1552bc5ec94cb68f70737e67a7ca1768f6071b255426ce117
+SIZE (joncampbell123-dosbox-x-dosbox-x-v2025.10.07_GH0.tar.gz) = 124274305
diff --git a/emulators/dosbox-x/files/patch-configure.ac b/emulators/dosbox-x/files/patch-configure.ac
index cfdc8b7bb563..a0fe5a986c29 100644
--- a/emulators/dosbox-x/files/patch-configure.ac
+++ b/emulators/dosbox-x/files/patch-configure.ac
@@ -1,6 +1,6 @@
---- configure.ac.orig 2024-10-02 06:16:36 UTC
+--- configure.ac.orig 2025-10-07 15:49:14 UTC
+++ configure.ac
-@@ -672,7 +672,10 @@ dnl LIBRARY TEST: ALSA
+@@ -728,7 +728,10 @@ dnl LIBRARY TEST: ALSA
dnl TODO: Need GCC to know this code is using C++ lambda functions
dnl LIBRARY TEST: ALSA
diff --git a/emulators/dosbox-x/files/patch-fix-ffmpeg8 b/emulators/dosbox-x/files/patch-fix-ffmpeg8
deleted file mode 100644
index 7c1782a7b3bd..000000000000
--- a/emulators/dosbox-x/files/patch-fix-ffmpeg8
+++ /dev/null
@@ -1,88 +0,0 @@
-Fix build with FFmpeg 8
-https://github.com/joncampbell123/dosbox-x/issues/5803
-
---- src/hardware/hardware.cpp.orig 2025-08-25 08:00:00 UTC
-+++ src/hardware/hardware.cpp
-@@ -123,20 +123,18 @@ void ffmpeg_closeall() {
- ffmpeg_avformat_began = false;
- }
- avio_close(ffmpeg_fmt_ctx->pb);
-- if (ffmpeg_vid_ctx != NULL) avcodec_close(ffmpeg_vid_ctx);
-- if (ffmpeg_aud_ctx != NULL) avcodec_close(ffmpeg_aud_ctx);
-+ if (ffmpeg_vid_ctx != NULL) avcodec_free_context(&ffmpeg_vid_ctx);
-+ if (ffmpeg_aud_ctx != NULL) avcodec_free_context(&ffmpeg_aud_ctx);
- avformat_free_context(ffmpeg_fmt_ctx);
- ffmpeg_fmt_ctx = NULL;
- ffmpeg_vid_ctx = NULL; // NTS: avformat_free_context() freed this for us, don't free again
- ffmpeg_aud_ctx = NULL; // NTS: avformat_free_context() freed this for us, don't free again
- }
- if (ffmpeg_vid_ctx != NULL) {
-- avcodec_close(ffmpeg_vid_ctx);
- avcodec_free_context(&ffmpeg_vid_ctx);
- ffmpeg_vid_ctx = NULL;
- }
- if (ffmpeg_aud_ctx != NULL) {
-- avcodec_close(ffmpeg_aud_ctx);
- avcodec_free_context(&ffmpeg_aud_ctx);
- ffmpeg_aud_ctx = NULL;
- }
-@@ -171,7 +169,6 @@ void ffmpeg_audio_frame_send() {
-
- if (!pkt) E_Exit("Error: Unable to alloc packet");
-
-- ffmpeg_aud_frame->key_frame = 1;
- ffmpeg_aud_frame->pts = (int64_t)ffmpeg_audio_sample_counter;
- r=avcodec_send_frame(ffmpeg_aud_ctx,ffmpeg_aud_frame);
- if (r < 0 && r != AVERROR(EAGAIN))
-@@ -426,7 +423,6 @@ void ffmpeg_reopen_video(double fps,const int bpp) {
-
- void ffmpeg_reopen_video(double fps,const int bpp) {
- if (ffmpeg_vid_ctx != NULL) {
-- avcodec_close(ffmpeg_vid_ctx);
- avcodec_free_context(&ffmpeg_vid_ctx);
- ffmpeg_vid_ctx = NULL;
- }
-@@ -1271,7 +1267,7 @@ skip_shot:
- ffmpeg_aud_ctx->sample_rate = (int)capture.video.audiorate;
- ffmpeg_aud_ctx->flags = 0; // do not use global headers
- ffmpeg_aud_ctx->bit_rate = 320000;
-- ffmpeg_aud_ctx->profile = FF_PROFILE_AAC_LOW;
-+ // ffmpeg_aud_ctx->profile = FF_PROFILE_AAC_LOW;
-
- #if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(59,24,100)
- ffmpeg_aud_ctx->channels = 2;
-@@ -1531,7 +1527,6 @@ skip_shot:
-
- // encode it
- ffmpeg_vid_frame->pts = (int64_t)capture.video.frames; // or else libx264 complains about non-monotonic timestamps
-- ffmpeg_vid_frame->key_frame = ((capture.video.frames % 15) == 0)?1:0;
-
- r=avcodec_send_frame(ffmpeg_vid_ctx,ffmpeg_vid_frame);
- if (r < 0 && r != AVERROR(EAGAIN))
-@@ -1768,7 +1763,7 @@ skip_mt_wav:
- }
-
- #pragma pack(push,1)
--typedef struct pcap_hdr_struct_t {
-+typedef struct {
- uint32_t magic_number; /* magic number */
- uint16_t version_major; /* major version number */
- uint16_t version_minor; /* minor version number */
-@@ -1776,14 +1771,14 @@ typedef struct pcap_hdr_struct_t {
- uint32_t sigfigs; /* accuracy of timestamps */
- uint32_t snaplen; /* max length of captured packets, in octets */
- uint32_t network; /* data link type */
--};
-+} pcap_hdr_struct_t;
-
--typedef struct pcaprec_hdr_struct_t {
-+typedef struct {
- uint32_t ts_sec; /* timestamp seconds */
- uint32_t ts_usec; /* timestamp microseconds */
- uint32_t incl_len; /* number of octets of packet saved in file */
- uint32_t orig_len; /* actual length of packet */
--};
-+} pcaprec_hdr_struct_t;
- #pragma pack(pop)
-
- void Capture_WritePacket(bool /*send*/,const unsigned char *buf,size_t len) {
diff --git a/emulators/dosbox-x/files/patch-src_gui_sdl__gui.cpp b/emulators/dosbox-x/files/patch-src_gui_sdl__gui.cpp
index 80b3eeb0c45a..29dc9baa8070 100644
--- a/emulators/dosbox-x/files/patch-src_gui_sdl__gui.cpp
+++ b/emulators/dosbox-x/files/patch-src_gui_sdl__gui.cpp
@@ -1,6 +1,6 @@
---- src/gui/sdl_gui.cpp.orig 2024-10-02 06:16:36 UTC
+--- src/gui/sdl_gui.cpp.orig 2025-10-07 15:49:14 UTC
+++ src/gui/sdl_gui.cpp
-@@ -3888,6 +3888,7 @@ void GUI_Shortcut(int select) {
+@@ -3886,6 +3886,7 @@ void GUI_Shortcut(int select) {
shortcutid=select;
shortcut=true;
sel = select;
@@ -8,7 +8,7 @@
#if defined(USE_TTF)
if (ttf.inUse && !confres) {
ttf_switch_off();
-@@ -3897,12 +3898,14 @@ void GUI_Shortcut(int select) {
+@@ -3895,12 +3896,14 @@ void GUI_Shortcut(int select) {
} else
#endif
RunCfgTool(0);
@@ -23,7 +23,7 @@
#if defined(USE_TTF)
if (ttf.inUse) {
ttf_switch_off();
-@@ -3912,4 +3915,5 @@ void GUI_Run(bool pressed) {
+@@ -3910,4 +3913,5 @@ void GUI_Run(bool pressed) {
} else
#endif
RunCfgTool(0);
diff --git a/emulators/magia/Makefile b/emulators/magia/Makefile
index 67772e93cc50..7bd0194d25b8 100644
--- a/emulators/magia/Makefile
+++ b/emulators/magia/Makefile
@@ -1,7 +1,7 @@
PORTNAME= magia
DISTVERSIONPREFIX= v
DISTVERSION= 0.2.0
-PORTREVISION= 30
+PORTREVISION= 31
CATEGORIES= emulators
MAINTAINER= ports@FreeBSD.org
diff --git a/emulators/mame/Makefile b/emulators/mame/Makefile
index c4cda0872bf7..201d86d0034c 100644
--- a/emulators/mame/Makefile
+++ b/emulators/mame/Makefile
@@ -1,12 +1,8 @@
PORTNAME= mame
-DISTVERSION= 0.277
-PORTREVISION= 2
+DISTVERSION= 0.281
CATEGORIES= emulators games
-PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
-PATCHFILES= b4e1f5f1b50fd3402232dd0385cac021ba488db6.patch:-p1 # Only link asmjit if native DRCs are built.
-
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= laurent.chardon@gmail.com
COMMENT= MAME: a multi-purpose emulation framework
WWW= https://mamedev.org/
@@ -25,7 +21,8 @@ ONLY_FOR_ARCHS= aarch64 amd64 armv7 i386 powerpc powerpc64 powerpc64le
ONLY_FOR_ARCHS_REASON= not yet ported to any architecture other than armv7, arm64, x86, and powerpc*
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sphinxcontrib-svg2pdfconverter>0:textproc/py-sphinxcontrib-svg2pdfconverter@${PY_FLAVOR} \
- asio>0:net/asio \
+ ${PYTHON_PKGNAMEPREFIX}sphinx>0:textproc/py-sphinx@${PY_FLAVOR} \
+ asio130>0:net/asio130 \
genie:devel/genie \
glm>0:math/glm \
rapidjson>0:devel/rapidjson
@@ -35,8 +32,8 @@ LIB_DEPENDS= libexpat.so:textproc/expat2 \
libutf8proc.so:textproc/utf8proc \
libzstd.so:archivers/zstd
-USES= compiler:c++17-lang gmake jpeg llvm:min=16 localbase pkgconfig \
- python:build sdl shebangfix sqlite:3 xorg
+USES= compiler:c++17-lang gmake jpeg llvm:min=16 localbase \
+ pkgconfig python:build sdl sqlite:3 xorg
USE_GITHUB= yes
GH_ACCOUNT= mamedev
@@ -82,6 +79,7 @@ PORTDOCS= *
OPTIONS_DEFINE= DOCS
OPTIONS_DEFAULT= MAME
+OPTIONS_DEFAULT+= ${ARCH:Mamd64:C/.+/SSE2/}
OPTIONS_GROUP= EMULATORS EXTRATOOLS HARDWARE
OPTIONS_GROUP_EMULATORS= MAME MAMENL MAMEVIRTUAL NLS QTDEBUGGER
OPTIONS_GROUP_EXTRATOOLS= TOOLS
@@ -89,9 +87,7 @@ OPTIONS_GROUP_HARDWARE= OPENMP SSE2
OPTIONS_RADIO= BUILDTYPE
OPTIONS_RADIO_BUILDTYPE= DEBUG SIZE_OPTIMIZED_CFLAGS \
SPEED_OPTIMIZED_CFLAGS
-.if !exists(/usr/include/omp.h)
-OPTIONS_EXCLUDE= OPENMP
-.endif
+OPTIONS_EXCLUDE+= ${ARCH:Namd64:Ni386:C/.+/SSE2/}
OPTIONS_SUB= yes
BUILDTYPE_DESC= Application production type
@@ -139,6 +135,7 @@ MAME_MAKE_ENV= ${_EMULATORS_MAKE_ENV}
MAME_PLIST_SUB= MAMEDATA=""
MAME_PLIST_SUB_OFF= MAMEDATA="@comment "
NLS_USES= gettext-runtime
+OPENMP_USES= compiler:openmp
OPENMP_MAKE_ENV= OPENMP=1
OPENMP_MAKE_ENV_OFF= OPENMP=0
QTDEBUGGER_USES= qt:6
@@ -192,25 +189,25 @@ _TOOLS_MANUALS= -name *.1 -depth 1 -type f -and -not -type d -and -not \
.include <bsd.port.options.mk>
.if ${ARCH:Maarch64} || ${ARCH:Mamd64} || ${ARCH:Mpowerpc64*}
-MAKE_ENV+= PTR64=1
+MAKE_ENV+= PTR64=1
.endif
.if ${ARCH} == aarch64 || ${ARCH} == armv7
-EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-3rdparty_lzma_C_AesOpt.c
+EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-3rdparty_lzma_C_AesOpt.c
.endif
# Compiling with -pg (PROFILE) causes the linker to run out of memory on i386,
# build with less profiling data:
.if ${ARCH:Mi386}
-DEBUG_MAKE_ENV= PROFILER=1
+DEBUG_MAKE_ENV= PROFILER=1
.else
-DEBUG_MAKE_ENV= PROFILE=1
+DEBUG_MAKE_ENV= PROFILE=1
.endif
.if empty(PORT_OPTIONS:MMAME) && empty(PORT_OPTIONS:MMAMENL) && \
empty(PORT_OPTIONS:MMAMEVIRTUAL)
-MAKE_ENV+= EMULATOR=0
-PLIST_SUB+= MAMEDATA="@comment "
+MAKE_ENV+= EMULATOR=0
+PLIST_SUB+= MAMEDATA="@comment "
.endif
post-extract:
diff --git a/emulators/mame/distinfo b/emulators/mame/distinfo
index 7a33b39a0b9d..0f735deaf410 100644
--- a/emulators/mame/distinfo
+++ b/emulators/mame/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1748505208
-SHA256 (mamedev-mame-0.277-mame0277_GH0.tar.gz) = 60055b19fc96306927257c5ffc265ecebcbe5c944cf98113d4d78f6304556c67
-SIZE (mamedev-mame-0.277-mame0277_GH0.tar.gz) = 209399226
+TIMESTAMP = 1759055187
+SHA256 (mamedev-mame-0.281-mame0281_GH0.tar.gz) = 8d648b43b0072b3efabc30290c1767a3c22a46ca3c4111a2f456b9f5d2a08319
+SIZE (mamedev-mame-0.281-mame0281_GH0.tar.gz) = 210289013
SHA256 (b4e1f5f1b50fd3402232dd0385cac021ba488db6.patch) = 431ce0bf9dff15632f8ed176b6ea8245c74089439f1af766a26ea4a140db1f92
SIZE (b4e1f5f1b50fd3402232dd0385cac021ba488db6.patch) = 2652
diff --git a/emulators/mame/files/patch-3rdparty_lzma_C_CpuArch.c b/emulators/mame/files/patch-3rdparty_lzma_C_CpuArch.c
index 0845a73832cb..96e75eb9da56 100644
--- a/emulators/mame/files/patch-3rdparty_lzma_C_CpuArch.c
+++ b/emulators/mame/files/patch-3rdparty_lzma_C_CpuArch.c
@@ -1,6 +1,6 @@
---- 3rdparty/lzma/C/CpuArch.c.orig 2023-05-30 17:50:57 UTC
+--- 3rdparty/lzma/C/CpuArch.c.orig 2025-09-24 14:56:11 UTC
+++ 3rdparty/lzma/C/CpuArch.c
-@@ -417,6 +417,31 @@ BoolInt CPU_IsSupported_AES (void) { return APPLE_CRYP
+@@ -762,6 +762,31 @@ BoolInt CPU_IsSupported_AES (void) { return APPLE_CRYP
#include <sys/auxv.h>
@@ -32,7 +32,7 @@
#define USE_HWCAP
#ifdef USE_HWCAP
-@@ -450,6 +475,7 @@ MY_HWCAP_CHECK_FUNC (SHA1)
+@@ -795,6 +820,7 @@ MY_HWCAP_CHECK_FUNC (AES)
MY_HWCAP_CHECK_FUNC (SHA2)
MY_HWCAP_CHECK_FUNC (AES)
diff --git a/emulators/mame/files/patch-3rdparty_lzma_C_Sha256Opt.c b/emulators/mame/files/patch-3rdparty_lzma_C_Sha256Opt.c
index 525d4f9e96e0..eeafd8402ec6 100644
--- a/emulators/mame/files/patch-3rdparty_lzma_C_Sha256Opt.c
+++ b/emulators/mame/files/patch-3rdparty_lzma_C_Sha256Opt.c
@@ -1,6 +1,6 @@
---- 3rdparty/lzma/C/Sha256Opt.c.orig 2023-05-30 17:50:57 UTC
+--- 3rdparty/lzma/C/Sha256Opt.c.orig 2025-09-24 14:56:11 UTC
+++ 3rdparty/lzma/C/Sha256Opt.c
-@@ -212,7 +212,7 @@ void MY_FAST_CALL Sha256_UpdateBlocks_HW(UInt32 state[
+@@ -202,7 +202,7 @@ void Z7_FASTCALL Sha256_UpdateBlocks_HW(UInt32 state[8
#endif // USE_HW_SHA
diff --git a/emulators/mame/files/patch-makefile b/emulators/mame/files/patch-makefile
index 5c87b1f66af7..53f4858b0d29 100644
--- a/emulators/mame/files/patch-makefile
+++ b/emulators/mame/files/patch-makefile
@@ -1,9 +1,9 @@
Remove redefinitions of toolchain, and hardcoded optimisations. Replace GENie
build target with devel/genie binary. Add Clang ARM64 support.
---- makefile.orig 2023-10-23 15:53:41 UTC
+--- makefile.orig 2025-09-24 14:56:11 UTC
+++ makefile
-@@ -448,9 +448,9 @@ ifneq ($(TARGETOS),asmjs)
+@@ -430,9 +430,9 @@ ifneq ($(TARGETOS),asmjs)
endif
ifneq ($(TARGETOS),asmjs)
@@ -16,7 +16,7 @@
endif
#-------------------------------------------------
-@@ -620,11 +620,6 @@ endif
+@@ -578,11 +578,6 @@ endif
SYMBOLS = 1
endif
@@ -28,7 +28,7 @@
# set the symbols level
ifdef SYMBOLS
PARAMS += --SYMBOLS='$(SYMBOLS)'
-@@ -1078,7 +1073,7 @@ endif
+@@ -1042,7 +1037,7 @@ endif
NEW_GIT_VERSION := unknown
endif
@@ -37,7 +37,7 @@
ifeq ($(TARGET),$(SUBTARGET_FULL))
FULLTARGET := $(TARGET)
-@@ -1412,6 +1407,11 @@ $(PROJECTDIR)/$(MAKETYPE)-freebsd-clang/Makefile: make
+@@ -1376,6 +1371,11 @@ $(PROJECTDIR)/$(MAKETYPE)-freebsd-clang/Makefile: make
$(PROJECTDIR)/$(MAKETYPE)-freebsd-clang/Makefile: makefile $(SCRIPTS) $(GENIE)
$(SILENT) $(GENIE) $(PARAMS) $(TARGET_PARAMS) --gcc=freebsd-clang --gcc_version=$(CLANG_VERSION) $(MAKETYPE)
diff --git a/emulators/mame/files/patch-scripts_genie.lua b/emulators/mame/files/patch-scripts_genie.lua
deleted file mode 100644
index 857219cdad87..000000000000
--- a/emulators/mame/files/patch-scripts_genie.lua
+++ /dev/null
@@ -1,34 +0,0 @@
- Reduce noise from build logs, and remove duplicate use of
- -fno-strict-aliasing. Move a hard coded linktime optimisation to be covered by
- the same OPTIMIZE conditional used elsewhere.
-
---- scripts/genie.lua.orig 2023-11-15 01:11:29 UTC
-+++ scripts/genie.lua
-@@ -804,7 +804,6 @@ if _OPTIONS["OPTIMIZE"] then
- if _OPTIONS["OPTIMIZE"] then
- buildoptions {
- "-O".. _OPTIONS["OPTIMIZE"],
-- "-fno-strict-aliasing"
- }
- if _OPTIONS["OPT_FLAGS"] then
- buildoptions {
-@@ -1168,7 +1167,6 @@ configuration { "asmjs" }
- }
- linkoptions {
- "-Wl,--start-group",
-- "-O" .. _OPTIONS["OPTIMIZE"],
- "-s USE_SDL=2",
- "-s USE_SDL_TTF=2",
- "--memory-init-file 0",
-@@ -1187,6 +1185,11 @@ configuration { "asmjs" }
- "--embed-file " .. _MAKE.esc(MAME_DIR) .. "artwork/bgfx@artwork/bgfx",
- "--embed-file " .. _MAKE.esc(MAME_DIR) .. "artwork/slot-mask.png@artwork/slot-mask.png",
- }
-+ if _OPTIONS["OPTIMIZE"] then
-+ linkoptions {
-+ "-O".. _OPTIONS["OPTIMIZE"],
-+ }
-+ end
- if _OPTIONS["SYMBOLS"]~=nil and _OPTIONS["SYMBOLS"]~="0" then
- linkoptions {
- "-g" .. _OPTIONS["SYMLEVEL"],
diff --git a/emulators/mame/files/patch-scripts_src_main.lua b/emulators/mame/files/patch-scripts_src_main.lua
index 391ffc7f10fb..0bb6d887d409 100644
--- a/emulators/mame/files/patch-scripts_src_main.lua
+++ b/emulators/mame/files/patch-scripts_src_main.lua
@@ -1,8 +1,8 @@
Remove suffixes from mame binary for debug/profile builds.
---- scripts/src/main.lua.orig 2023-11-14 03:17:20 UTC
+--- scripts/src/main.lua.orig 2025-09-24 14:56:11 UTC
+++ scripts/src/main.lua
-@@ -58,13 +58,13 @@ end
+@@ -71,13 +71,13 @@ end
configuration { "Release" }
targetsuffix ""
if _OPTIONS["PROFILE"] then
diff --git a/emulators/mame/files/patch-scripts_src_osd_modules.lua b/emulators/mame/files/patch-scripts_src_osd_modules.lua
index 2d5699969a93..c752c9d1668b 100644
--- a/emulators/mame/files/patch-scripts_src_osd_modules.lua
+++ b/emulators/mame/files/patch-scripts_src_osd_modules.lua
@@ -1,26 +1,26 @@
Enable the build to find Qt-6.
---- scripts/src/osd/modules.lua.orig 2023-10-23 15:53:41 UTC
+--- scripts/src/osd/modules.lua.orig 2025-09-24 14:56:11 UTC
+++ scripts/src/osd/modules.lua
-@@ -378,7 +378,7 @@ function qtdebuggerbuild()
+@@ -405,7 +405,7 @@ function qtdebuggerbuild()
MOC = "moc"
else
if _OPTIONS["QT_HOME"]~=nil then
-- MOCTST = backtick(_OPTIONS["QT_HOME"] .. "/bin/moc --version 2>/dev/null")
-+ MOCTST = backtick(_OPTIONS["QT_HOME"] .. "/libexec/qt6/moc --version 2>/dev/null")
- if (MOCTST=='') then
- MOCTST = backtick(_OPTIONS["QT_HOME"] .. "/libexec/moc --version 2>/dev/null")
- if (MOCTST=='') then
-@@ -388,7 +388,7 @@ function qtdebuggerbuild()
- MOC = _OPTIONS["QT_HOME"] .. "/libexec/moc"
+- local MOCTST = backtick(_OPTIONS["QT_HOME"] .. "/bin/moc --version 2>/dev/null")
++ local MOCTST = backtick(_OPTIONS["QT_HOME"] .. "/libexec/qt6/moc --version 2>/dev/null")
+ if MOCTST=='' then
+ local qt_host_libexecs = backtick(_OPTIONS["QT_HOME"] .. "/bin/qmake -query QT_HOST_LIBEXECS")
+ if not string.starts(qt_host_libexecs,"/") then
+@@ -419,7 +419,7 @@ function qtdebuggerbuild()
+ MOC = qt_host_libexecs .. "/moc"
end
else
- MOC = _OPTIONS["QT_HOME"] .. "/bin/moc"
+ MOC = _OPTIONS["QT_HOME"] .. "/libexec/qt6/moc"
end
else
- MOCTST = backtick("which moc-qt5 2>/dev/null")
-@@ -430,7 +430,7 @@ function qtdebuggerbuild()
+ local MOCTST = backtick("which moc-qt5 2>/dev/null")
+@@ -461,7 +461,7 @@ function qtdebuggerbuild()
else
if _OPTIONS["QT_HOME"]~=nil then
buildoptions {
@@ -29,8 +29,8 @@
}
else
buildoptions {
-@@ -500,9 +500,9 @@ function osdmodulestargetconf()
- }
+@@ -540,9 +540,9 @@ function osdmodulestargetconf()
+ end
else
if _OPTIONS["QT_HOME"]~=nil then
- local qt_version = str_to_version(backtick(_OPTIONS["QT_HOME"] .. "/bin/qmake -query QT_VERSION"))
diff --git a/emulators/mame/pkg-plist b/emulators/mame/pkg-plist
index 7236f88f8a3e..5ab30d4a8657 100644
--- a/emulators/mame/pkg-plist
+++ b/emulators/mame/pkg-plist
@@ -879,6 +879,7 @@ share/man/man1/MAME.1.gz
%%MAMEDATA%%%%DATADIR%%/hash/b2m.xml
%%MAMEDATA%%%%DATADIR%%/hash/basf7100.xml
%%MAMEDATA%%%%DATADIR%%/hash/bbc_cass.xml
+%%MAMEDATA%%%%DATADIR%%/hash/bbc_vsm.xml
%%MAMEDATA%%%%DATADIR%%/hash/bbc_flop_32016.xml
%%MAMEDATA%%%%DATADIR%%/hash/bbc_flop_6502.xml
%%MAMEDATA%%%%DATADIR%%/hash/bbc_flop_68000.xml
@@ -975,6 +976,7 @@ share/man/man1/MAME.1.gz
%%MAMEDATA%%%%DATADIR%%/hash/dragon_flex.xml
%%MAMEDATA%%%%DATADIR%%/hash/dragon_flop.xml
%%MAMEDATA%%%%DATADIR%%/hash/dragon_os9.xml
+%%MAMEDATA%%%%DATADIR%%/hash/duelmast_cart.xml
%%MAMEDATA%%%%DATADIR%%/hash/e01_flop.xml
%%MAMEDATA%%%%DATADIR%%/hash/easy_karaoke_cart.xml
%%MAMEDATA%%%%DATADIR%%/hash/ec1841.xml
@@ -1010,6 +1012,7 @@ share/man/man1/MAME.1.gz
%%MAMEDATA%%%%DATADIR%%/hash/fmtowns_flop_misc.xml
%%MAMEDATA%%%%DATADIR%%/hash/fmtowns_flop_orig.xml
%%MAMEDATA%%%%DATADIR%%/hash/fp1100_cass.xml
+%%MAMEDATA%%%%DATADIR%%/hash/gaelco_ds5002fp_rom.xml
%%MAMEDATA%%%%DATADIR%%/hash/galaxy.xml
%%MAMEDATA%%%%DATADIR%%/hash/gamate.xml
%%MAMEDATA%%%%DATADIR%%/hash/gameboy.xml
@@ -1022,6 +1025,7 @@ share/man/man1/MAME.1.gz
%%MAMEDATA%%%%DATADIR%%/hash/gba_ereader.xml
%%MAMEDATA%%%%DATADIR%%/hash/gbcolor.xml
%%MAMEDATA%%%%DATADIR%%/hash/gcslottv.xml
+%%MAMEDATA%%%%DATADIR%%/hash/generic_flop_525.xml
%%MAMEDATA%%%%DATADIR%%/hash/ggm.xml
%%MAMEDATA%%%%DATADIR%%/hash/gimix.xml
%%MAMEDATA%%%%DATADIR%%/hash/gj4000.xml
@@ -1070,6 +1074,7 @@ share/man/man1/MAME.1.gz
%%MAMEDATA%%%%DATADIR%%/hash/ibm6580.xml
%%MAMEDATA%%%%DATADIR%%/hash/ibmpcjr_cart.xml
%%MAMEDATA%%%%DATADIR%%/hash/ibmpcjr_flop.xml
+%%MAMEDATA%%%%DATADIR%%/hash/ibmpcjx.xml
%%MAMEDATA%%%%DATADIR%%/hash/icanguit.xml
%%MAMEDATA%%%%DATADIR%%/hash/icanpian.xml
%%MAMEDATA%%%%DATADIR%%/hash/intellect02.xml
@@ -1207,9 +1212,11 @@ share/man/man1/MAME.1.gz
%%MAMEDATA%%%%DATADIR%%/hash/myvision.xml
%%MAMEDATA%%%%DATADIR%%/hash/mz2000_cass.xml
%%MAMEDATA%%%%DATADIR%%/hash/mz2000_flop.xml
-%%MAMEDATA%%%%DATADIR%%/hash/mz2200_cass.xml
-%%MAMEDATA%%%%DATADIR%%/hash/mz2500.xml
+%%MAMEDATA%%%%DATADIR%%/hash/mz2500_flop.xml
+%%MAMEDATA%%%%DATADIR%%/hash/mz5500_flop.xml
%%MAMEDATA%%%%DATADIR%%/hash/mz700_cass.xml
+%%MAMEDATA%%%%DATADIR%%/hash/mz80b_cass.xml
+%%MAMEDATA%%%%DATADIR%%/hash/mz80b_flop.xml
%%MAMEDATA%%%%DATADIR%%/hash/mz800_cass.xml
%%MAMEDATA%%%%DATADIR%%/hash/n64.xml
%%MAMEDATA%%%%DATADIR%%/hash/n64_lodgenet.xml
@@ -1248,8 +1255,10 @@ share/man/man1/MAME.1.gz
%%MAMEDATA%%%%DATADIR%%/hash/partner_cass.xml
%%MAMEDATA%%%%DATADIR%%/hash/partner_flop.xml
%%MAMEDATA%%%%DATADIR%%/hash/pasogo.xml
+%%MAMEDATA%%%%DATADIR%%/hash/pasopia7_cass.xml
%%MAMEDATA%%%%DATADIR%%/hash/pasopia_cass.xml
%%MAMEDATA%%%%DATADIR%%/hash/pb2000c.xml
+%%MAMEDATA%%%%DATADIR%%/hash/pc100_flop.xml
%%MAMEDATA%%%%DATADIR%%/hash/pc1000.xml
%%MAMEDATA%%%%DATADIR%%/hash/pc1512_flop.xml
%%MAMEDATA%%%%DATADIR%%/hash/pc1512_hdd.xml
@@ -1368,6 +1377,7 @@ share/man/man1/MAME.1.gz
%%MAMEDATA%%%%DATADIR%%/hash/sgx.xml
%%MAMEDATA%%%%DATADIR%%/hash/singingstarkaraoke_cart.xml
%%MAMEDATA%%%%DATADIR%%/hash/sitcom.xml
+%%MAMEDATA%%%%DATADIR%%/hash/smartcycle_cart.xml
%%MAMEDATA%%%%DATADIR%%/hash/smarttv_cart.xml
%%MAMEDATA%%%%DATADIR%%/hash/smc777.xml
%%MAMEDATA%%%%DATADIR%%/hash/sms.xml
@@ -1427,6 +1437,7 @@ share/man/man1/MAME.1.gz
%%MAMEDATA%%%%DATADIR%%/hash/tdv2324.xml
%%MAMEDATA%%%%DATADIR%%/hash/tek4052_cart.xml
%%MAMEDATA%%%%DATADIR%%/hash/telestory_cart.xml
+%%MAMEDATA%%%%DATADIR%%/hash/teradrive_flop.xml
%%MAMEDATA%%%%DATADIR%%/hash/tg16.xml
%%MAMEDATA%%%%DATADIR%%/hash/thinkpad8xx.xml
%%MAMEDATA%%%%DATADIR%%/hash/ti74_cart.xml
@@ -1669,8 +1680,6 @@ share/man/man1/MAME.1.gz
%%MAMEDATA%%%%DATADIR%%/plugins/xml/init.lua
%%MAMEDATA%%%%DATADIR%%/plugins/xml/plugin.json
%%MAMEDATA%%%%DATADIR%%/samples/LICENSE
-%%MAMEDATA%%%%DATADIR%%/samples/MM1_keyboard/beep.wav
-%%MAMEDATA%%%%DATADIR%%/samples/MM1_keyboard/power_switch.wav
%%MAMEDATA%%%%DATADIR%%/samples/README.md
%%MAMEDATA%%%%DATADIR%%/samples/dir.txt
%%MAMEDATA%%%%DATADIR%%/samples/floppy/35_seek_12ms.wav
diff --git a/emulators/open-vm-kmod/Makefile b/emulators/open-vm-kmod/Makefile
index a7c726caf9fe..2fc821071214 100644
--- a/emulators/open-vm-kmod/Makefile
+++ b/emulators/open-vm-kmod/Makefile
@@ -1,5 +1,5 @@
PORTNAME= open-vm-kmod
-PORTVERSION= 12.5.2
+PORTVERSION= 13.0.5
DISTVERSIONPREFIX= stable-
PORTEPOCH= 2
CATEGORIES= emulators
@@ -10,8 +10,8 @@ WWW= https://github.com/vmware/open-vm-tools
LICENSE= BSD2CLAUSE GPLv2
LICENSE_COMB= multi
-LICENSE_FILE_GPLv2= ${WRKSRC}/vmmemctl/COPYING
LICENSE_FILE_BSD2CLAUSE= ${WRKSRC}/vmblock/COPYING
+LICENSE_FILE_GPLv2= ${WRKSRC}/vmmemctl/COPYING
ONLY_FOR_ARCHS= aarch64 amd64 i386
@@ -21,8 +21,8 @@ USE_GITHUB= yes
GH_ACCOUNT= vmware
GH_PROJECT= open-vm-tools
-WRKSRC_SUBDIR= open-vm-tools/modules/freebsd/
MAKE_ARGS= OVT_SOURCE_DIR=${WRKSRC:H:H:H}
+WRKSRC_SUBDIR= open-vm-tools/modules/freebsd/
PLIST_FILES= ${KMODDIR}/vmblock.ko \
${KMODDIR}/vmmemctl.ko
diff --git a/emulators/open-vm-kmod/distinfo b/emulators/open-vm-kmod/distinfo
index 884191452e52..b05fe8f3acc7 100644
--- a/emulators/open-vm-kmod/distinfo
+++ b/emulators/open-vm-kmod/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1750427304
-SHA256 (vmware-open-vm-tools-stable-12.5.2_GH0.tar.gz) = 9fa2ebda1aaf53c163a978832775d845378d9ce59032c07b1c63b84ba091610f
-SIZE (vmware-open-vm-tools-stable-12.5.2_GH0.tar.gz) = 3004283
+TIMESTAMP = 1759280952
+SHA256 (vmware-open-vm-tools-stable-13.0.5_GH0.tar.gz) = 9d4aa767c2b2acec2d56bb50546ef1bb59283e608444d50ef55c97afcd445457
+SIZE (vmware-open-vm-tools-stable-13.0.5_GH0.tar.gz) = 2990133
diff --git a/emulators/open-vm-kmod/files/patch-vmblock_subr.c b/emulators/open-vm-kmod/files/patch-vmblock_subr.c
new file mode 100644
index 000000000000..256772117d77
--- /dev/null
+++ b/emulators/open-vm-kmod/files/patch-vmblock_subr.c
@@ -0,0 +1,29 @@
+--- vmblock/subr.c.orig 2025-10-01 18:42:23 UTC
++++ vmblock/subr.c
+@@ -208,7 +208,7 @@ VMBlockHashGet(struct mount *mp, // IN: vmblock
+ }
+ }
+ mtx_unlock(&hashMutex);
+- return NULLVP;
++ return NULL;
+ }
+
+
+@@ -254,7 +254,7 @@ VMBlockHashInsert(struct mount *mp, // IN:
+ }
+ LIST_INSERT_HEAD(hd, xp, hashEntry);
+ mtx_unlock(&hashMutex);
+- return NULLVP;
++ return NULL;
+ }
+
+
+@@ -465,7 +465,7 @@ VMBlockCheckVp(vp, fil, lno)
+ panic("VMBlockCheckVp");
+ };
+ #endif
+- if (a->lowerVnode == NULLVP) {
++ if (a->lowerVnode == NULL) {
+ /* Should never happen */
+ int i; u_long *p;
+ printf("vp = %p, ZERO ptr\n", (void *)vp);
diff --git a/emulators/open-vm-kmod/files/patch-vmblock_vfsops.c b/emulators/open-vm-kmod/files/patch-vmblock_vfsops.c
index 97840675e338..11207b5cb0e2 100644
--- a/emulators/open-vm-kmod/files/patch-vmblock_vfsops.c
+++ b/emulators/open-vm-kmod/files/patch-vmblock_vfsops.c
@@ -1,4 +1,4 @@
---- vmblock/vfsops.c.orig 2024-10-10 15:05:07 UTC
+--- vmblock/vfsops.c.orig 2025-10-01 18:44:42 UTC
+++ vmblock/vfsops.c
@@ -173,7 +173,6 @@ VMBlockVFSMount(struct mount *mp) // IN: mount(
#endif
@@ -8,3 +8,12 @@
uma_zfree(VMBlockPathnameZone, pathname);
return error;
}
+@@ -354,7 +353,7 @@ VMBlockVFSRoot(struct mount *mp, // IN: vmblock
+ * Return locked reference to root.
+ */
+ vp = MNTTOVMBLOCKMNT(mp)->rootVnode;
+- VREF(vp);
++ vref(vp);
+ compat_vn_lock(vp, flags | LK_RETRY, compat_td);
+ *vpp = vp;
+ return 0;
diff --git a/emulators/open-vm-kmod/files/patch-vmblock_vnops.c b/emulators/open-vm-kmod/files/patch-vmblock_vnops.c
new file mode 100644
index 000000000000..64ebd25e1ce0
--- /dev/null
+++ b/emulators/open-vm-kmod/files/patch-vmblock_vnops.c
@@ -0,0 +1,41 @@
+--- vmblock/vnops.c.orig 2025-10-01 18:40:23 UTC
++++ vmblock/vnops.c
+@@ -479,9 +479,9 @@ struct vop_generic_args {
+ * Check for and don't map any that aren't. (We must always map first
+ * vp or vclean fails.)
+ */
+- if (i && (*this_vp_p == NULLVP ||
++ if (i && (*this_vp_p == NULL ||
+ (*this_vp_p)->v_op != &VMBlockVnodeOps)) {
+- old_vps[i] = NULLVP;
++ old_vps[i] = NULL;
+ } else {
+ old_vps[i] = *this_vp_p;
+ *(vps_p[i]) = VMBVPTOLOWERVP(*this_vp_p);
+@@ -491,7 +491,7 @@ struct vop_generic_args {
+ * future.)
+ */
+ if (reles & VDESC_VP0_WILLRELE) {
+- VREF(*this_vp_p);
++ vref(*this_vp_p);
+ }
+ }
+ }
+@@ -501,7 +501,7 @@ struct vop_generic_args {
+ * structure.
+ */
+ if (vps_p[0] && *vps_p[0]) {
+- error = VCALL(ap);
++ error = ap->a_desc->vdesc_call(ap);
+ } else {
+ printf("VMBlockVopBypass: no map for %s\n", descp->vdesc_name);
+ error = EINVAL;
+@@ -681,7 +681,7 @@ struct vop_lookup_args {
+ */
+ if (ldvp == lvp) {
+ *ap->a_vpp = dvp;
+- VREF(dvp);
++ vref(dvp);
+ vrele(lvp);
+ } else {
+ error = VMBlockNodeGet(dvp->v_mount, lvp, &vp, pathname);
diff --git a/emulators/open-vm-kmod/files/patch-vmmemctl_os.c b/emulators/open-vm-kmod/files/patch-vmmemctl_os.c
index d083ec453d4f..899fd4d90a50 100644
--- a/emulators/open-vm-kmod/files/patch-vmmemctl_os.c
+++ b/emulators/open-vm-kmod/files/patch-vmmemctl_os.c
@@ -1,14 +1,12 @@
---- vmmemctl/os.c.orig 2025-05-15 19:16:07 UTC
+--- vmmemctl/os.c.orig 2025-09-30 06:45:41 UTC
+++ vmmemctl/os.c
@@ -91,8 +91,13 @@ MALLOC_DEFINE(M_VMMEMCTL, BALLOON_NAME, "vmmemctl meta
/*
* FreeBSD specific MACROS
*/
--#define VM_PAGE_LOCK(page) vm_page_lock(page);
--#define VM_PAGE_UNLOCK(page) vm_page_unlock(page)
+#if __FreeBSD_version < 1500046
-+#define VM_PAGE_LOCK(page) vm_page_tryxbusy(page);
-+#define VM_PAGE_UNLOCK(page) vm_page_xunbusy(page)
+ #define VM_PAGE_LOCK(page) vm_page_lock(page);
+ #define VM_PAGE_UNLOCK(page) vm_page_unlock(page)
+#else
+#define VM_PAGE_LOCK(page) vm_page_tryxbusy(page);
+#define VM_PAGE_UNLOCK(page) vm_page_xunbusy(page)
diff --git a/emulators/open-vm-tools/Makefile b/emulators/open-vm-tools/Makefile
index 845b3ee995b3..0170a949bc17 100644
--- a/emulators/open-vm-tools/Makefile
+++ b/emulators/open-vm-tools/Makefile
@@ -1,5 +1,5 @@
PORTNAME= open-vm-tools
-PORTVERSION= 12.5.2
+PORTVERSION= 13.0.5
DISTVERSIONPREFIX= stable-
PORTEPOCH= 2
CATEGORIES= emulators
@@ -72,8 +72,16 @@ X11_USE= GNOME=gdkpixbuf,gdkpixbuf2xlib,gtk30,gtkmm30 \
X11_CONFIGURE_WITH= gtk3 gtkmm3 x
post-patch:
- @${REINPLACE_CMD} -e "s@%%PREFIX%%@${PREFIX}@"\
- ${WRKSRC}/lib/guestApp/guestApp.c
+ @${REINPLACE_CMD} -e "s@%%PREFIX%%@${PREFIX}@" \
+ ${WRKSRC}/Makefile.am \
+ ${WRKSRC}/lib/guestApp/guestApp.c \
+ ${WRKSRC}/lib/misc/codeset.c \
+ ${WRKSRC}/scripts/common/vm-support \
+ ${WRKSRC}/services/plugins/componentMgr/svtminion.sh \
+ ${WRKSRC}/services/vmtoolsd/Makefile.am \
+ ${WRKSRC}/vgauth/common/prefs.h \
+ ${WRKSRC}/vgauth/service/Makefile.am \
+ ${WRKSRC}/vmware-user-suid-wrapper/wrapper.h
post-install:
${MKDIR} ${STAGEDIR}${PREFIX}/lib/vmware-tools/modules/drivers
diff --git a/emulators/open-vm-tools/distinfo b/emulators/open-vm-tools/distinfo
index 38b3f66a1081..fdf03439d71a 100644
--- a/emulators/open-vm-tools/distinfo
+++ b/emulators/open-vm-tools/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1750427284
-SHA256 (vmware-open-vm-tools-stable-12.5.2_GH0.tar.gz) = 9fa2ebda1aaf53c163a978832775d845378d9ce59032c07b1c63b84ba091610f
-SIZE (vmware-open-vm-tools-stable-12.5.2_GH0.tar.gz) = 3004283
+TIMESTAMP = 1759281082
+SHA256 (vmware-open-vm-tools-stable-13.0.5_GH0.tar.gz) = 9d4aa767c2b2acec2d56bb50546ef1bb59283e608444d50ef55c97afcd445457
+SIZE (vmware-open-vm-tools-stable-13.0.5_GH0.tar.gz) = 2990133
diff --git a/emulators/open-vm-tools/files/patch-Makefile.am b/emulators/open-vm-tools/files/patch-Makefile.am
new file mode 100644
index 000000000000..acda99766f9f
--- /dev/null
+++ b/emulators/open-vm-tools/files/patch-Makefile.am
@@ -0,0 +1,11 @@
+--- Makefile.am.orig 2025-06-19 04:05:18 UTC
++++ Makefile.am
+@@ -77,6 +77,6 @@ endif
+
+
+ install-data-local:
+- $(INSTALL) -d $(DESTDIR)/etc/vmware-tools/
+- $(INSTALL) -m 644 $(srcdir)/tools.conf $(DESTDIR)/etc/vmware-tools/tools.conf.example
++ $(INSTALL) -d $(DESTDIR)%%PREFIX%%/etc/vmware-tools/
++ $(INSTALL) -m 644 $(srcdir)/tools.conf $(DESTDIR)%%PREFIX%%/etc/vmware-tools/tools.conf.sample
+
diff --git a/emulators/open-vm-tools/files/patch-lib_guestApp_guestApp.c b/emulators/open-vm-tools/files/patch-lib_guestApp_guestApp.c
index 8dded6d07581..48c614b1ee30 100644
--- a/emulators/open-vm-tools/files/patch-lib_guestApp_guestApp.c
+++ b/emulators/open-vm-tools/files/patch-lib_guestApp_guestApp.c
@@ -1,4 +1,4 @@
---- lib/guestApp/guestApp.c.orig 2024-10-10 15:05:07 UTC
+--- lib/guestApp/guestApp.c.orig 2025-06-19 04:05:18 UTC
+++ lib/guestApp/guestApp.c
@@ -65,7 +65,7 @@
#elif defined __APPLE__
diff --git a/emulators/open-vm-tools/files/patch-lib_misc_codeset.c b/emulators/open-vm-tools/files/patch-lib_misc_codeset.c
new file mode 100644
index 000000000000..2a3354fef566
--- /dev/null
+++ b/emulators/open-vm-tools/files/patch-lib_misc_codeset.c
@@ -0,0 +1,11 @@
+--- lib/misc/codeset.c.orig 2025-06-19 04:05:18 UTC
++++ lib/misc/codeset.c
+@@ -100,7 +100,7 @@
+ # define POSIX_ICU_DIR DEFAULT_LIBDIRECTORY
+ #elif !defined _WIN32
+ # if defined(VMX86_TOOLS)
+-# define POSIX_ICU_DIR "/etc/vmware-tools"
++# define POSIX_ICU_DIR "%%PREFIX%%/etc/vmware-tools"
+ # else
+ # define POSIX_ICU_DIR "/etc/vmware"
+ # endif
diff --git a/emulators/open-vm-tools/files/patch-pam_generic b/emulators/open-vm-tools/files/patch-pam_generic
index 1954cc6cf818..bdafd4d15d59 100644
--- a/emulators/open-vm-tools/files/patch-pam_generic
+++ b/emulators/open-vm-tools/files/patch-pam_generic
@@ -1,8 +1,8 @@
---- pam/generic.orig 2020-10-16 23:15:58 UTC
+--- pam/generic.orig 2025-06-19 04:05:18 UTC
+++ pam/generic
@@ -1,9 +1,5 @@
# This is a generic pam config file for open-vm-tools
- # See https://kb.vmware.com/s/article/78251 for advice to use
+ # See https://knowledge.broadcom.com/external/article?legacyId=78251 for advice to use
# common authentication mechanisms.
-auth required pam_shells.so
-auth sufficient pam_unix.so shadow
diff --git a/emulators/open-vm-tools/files/patch-scripts_common_vm-support b/emulators/open-vm-tools/files/patch-scripts_common_vm-support
new file mode 100644
index 000000000000..9b8d1d2f5ac6
--- /dev/null
+++ b/emulators/open-vm-tools/files/patch-scripts_common_vm-support
@@ -0,0 +1,11 @@
+--- scripts/common/vm-support.orig 2025-06-19 04:05:18 UTC
++++ scripts/common/vm-support
+@@ -397,7 +397,7 @@ banner "Collecting support information..."
+ # Common stuff that we gather for all OSes.
+ runcmd "/tmp/vm-support-version.txt" echo vm-support version: $VER
+
+-addfiles /etc/vmware-tools
++addfiles %%PREFIX%%/etc/vmware-tools
+ addfiles /var/log/boot*
+ addfiles /var/log/secure*
+ addfiles /var/log/messages*
diff --git a/emulators/open-vm-tools/files/patch-services_plugins_componentMgr_svtminion.sh b/emulators/open-vm-tools/files/patch-services_plugins_componentMgr_svtminion.sh
new file mode 100644
index 000000000000..e78069d0d1c9
--- /dev/null
+++ b/emulators/open-vm-tools/files/patch-services_plugins_componentMgr_svtminion.sh
@@ -0,0 +1,11 @@
+--- services/plugins/componentMgr/svtminion.sh.orig 2025-06-19 04:05:18 UTC
++++ services/plugins/componentMgr/svtminion.sh
+@@ -120,7 +120,7 @@ list_of_onedir_locations_check[0]="${onedir_pre_3006_l
+ list_of_onedir_locations_check[1]="${onedir_post_3005_location}"
+
+ ## VMware file and directory locations
+-readonly vmtools_base_dir_etc="/etc/vmware-tools"
++readonly vmtools_base_dir_etc="%%PREFIX%%/etc/vmware-tools"
+ readonly vmtools_conf_file="tools.conf"
+ readonly vmtools_salt_minion_section_name="salt_minion"
+
diff --git a/emulators/open-vm-tools/files/patch-services_vmtoolsd_Makefile.am b/emulators/open-vm-tools/files/patch-services_vmtoolsd_Makefile.am
index 3678de640c63..6d41f66c3e5c 100644
--- a/emulators/open-vm-tools/files/patch-services_vmtoolsd_Makefile.am
+++ b/emulators/open-vm-tools/files/patch-services_vmtoolsd_Makefile.am
@@ -1,11 +1,11 @@
---- services/vmtoolsd/Makefile.am.orig 2024-10-10 15:05:07 UTC
+--- services/vmtoolsd/Makefile.am.orig 2025-06-19 04:05:18 UTC
+++ services/vmtoolsd/Makefile.am
-@@ -81,7 +81,7 @@ install-exec-hook:
+@@ -81,7 +81,7 @@ install-data-hook:
@INSTVMSG@ vmtoolsd $(srcdir)/l10n $(DESTDIR)$(datadir)
install-exec-hook:
- $(INSTALL) -d $(DESTDIR)/etc/vmware-tools
-+# $(INSTALL) -d $(DESTDIR)/etc/vmware-tools
++ $(INSTALL) -d $(DESTDIR)%%PREFIX%%/etc/vmware-tools
$(INSTALL) -d $(DESTDIR)/$(PAM_PREFIX)/pam.d/
$(INSTALL) $(top_srcdir)/pam/generic $(DESTDIR)/$(PAM_PREFIX)/pam.d/vmtoolsd
diff --git a/emulators/open-vm-tools/files/patch-vgauth_common_prefs.h b/emulators/open-vm-tools/files/patch-vgauth_common_prefs.h
new file mode 100644
index 000000000000..31b2394e6d34
--- /dev/null
+++ b/emulators/open-vm-tools/files/patch-vgauth_common_prefs.h
@@ -0,0 +1,20 @@
+--- vgauth/common/prefs.h.orig 2025-06-19 04:05:18 UTC
++++ vgauth/common/prefs.h
+@@ -65,7 +65,7 @@ void Pref_LogAllEntries(const PrefHandle ph);
+ // fallback value if registry isn't set
+ #define VGAUTH_PREF_CONFIG_FILENAME "c:\\Program Files\\VMware\\VMware Tools\\vgauth.conf"
+ #else
+-#define VGAUTH_PREF_CONFIG_FILENAME "/etc/vmware-tools/vgauth.conf"
++#define VGAUTH_PREF_CONFIG_FILENAME "%%PREFIX%%/etc/vmware-tools/vgauth.conf"
+ // XXX temp til installer tweaks its location
+ #define VGAUTH_PREF_CONFIG_FILENAME_OLD "/etc/vmware/vgauth.conf"
+ #endif
+@@ -102,7 +102,7 @@ ticketTTL=3600
+ auditSuccessEvents=true
+
+ [localization]
+-msgCatalog = /etc/vmware-tools/vgauth/messages
++msgCatalog = %%PREFIX%%/etc/vmware-tools/vgauth/messages
+ # EOF
+ @endverbatim
+ * See http://developer.gnome.org/glib/2.28/glib-Key-value-file-parser.html#glib-Key-value-file-parser.description
diff --git a/emulators/open-vm-tools/files/patch-vgauth_service_Makefile.am b/emulators/open-vm-tools/files/patch-vgauth_service_Makefile.am
new file mode 100644
index 000000000000..e71997971912
--- /dev/null
+++ b/emulators/open-vm-tools/files/patch-vgauth_service_Makefile.am
@@ -0,0 +1,17 @@
+--- vgauth/service/Makefile.am.orig 2025-06-19 04:05:18 UTC
++++ vgauth/service/Makefile.am
+@@ -45,7 +45,7 @@ VGAuthService_SOURCES += ../common/VGAuthUtil.c
+ VGAuthService_SOURCES += ../common/vmxlog.c
+ VGAuthService_SOURCES += ../common/vmxrpc.c
+
+-VGAuthServicedir = /etc/vmware-tools/vgauth/schemas
++VGAuthServicedir = %%PREFIX%%/etc/vmware-tools/vgauth/schemas
+ VGAuthService_SCRIPTS =
+ VGAuthService_SCRIPTS += ../serviceImpl/schemas/datatypes.dtd
+ VGAuthService_SCRIPTS += ../serviceImpl/schemas/saml-schema-assertion-2.0.xsd
+@@ -93,4 +93,4 @@ VGAuthMsgDir = $(datadir)/open-vm-tools
+ install-data-hook:
+ @INSTVMSG@ VGAuthService $(srcdir)/l10n $(DESTDIR)$(datadir)
+ cat vgauth.conf | sed -e"s!@@VGAUTHSCHEMADIR@@!$(VGAuthServicedir)!" \
+- | sed -e"s!@@VGAUTHMSGDIR@@!$(VGAuthMsgDir)!" > $(DESTDIR)/etc/vmware-tools/vgauth.conf
++ | sed -e"s!@@VGAUTHMSGDIR@@!$(VGAuthMsgDir)!" > $(DESTDIR)%%PREFIX%%/etc/vmware-tools/vgauth.conf
diff --git a/emulators/open-vm-tools/files/patch-vmware-user-suid-wrapper_wrapper.h b/emulators/open-vm-tools/files/patch-vmware-user-suid-wrapper_wrapper.h
new file mode 100644
index 000000000000..568a224f1b07
--- /dev/null
+++ b/emulators/open-vm-tools/files/patch-vmware-user-suid-wrapper_wrapper.h
@@ -0,0 +1,11 @@
+--- vmware-user-suid-wrapper/wrapper.h.orig 2025-06-19 04:05:18 UTC
++++ vmware-user-suid-wrapper/wrapper.h
+@@ -43,7 +43,7 @@
+ * in the latter.
+ */
+ #ifdef USES_LOCATIONS_DB
+-# define LOCATIONS_PATH "/etc/vmware-tools/locations"
++# define LOCATIONS_PATH "%%PREFIX%%/etc/vmware-tools/locations"
+
+ /*
+ * Locations DB query selector. Values in this enum are used as array
diff --git a/emulators/open-vm-tools/pkg-plist b/emulators/open-vm-tools/pkg-plist
index 92ebcad1749b..a5a9f3428e99 100644
--- a/emulators/open-vm-tools/pkg-plist
+++ b/emulators/open-vm-tools/pkg-plist
@@ -1,4 +1,3 @@
-/etc/vmware-tools/tools.conf.example
bin/vm-support
%%FUSE%%bin/vmhgfs-fuse
bin/vmtoolsd
@@ -12,6 +11,7 @@ bin/vmware-toolbox-cmd
%%FUSE%%bin/vmware-vmblock-fuse
bin/vmware-xferlogs
etc/pam.d/vmtoolsd
+@sample etc/vmware-tools/tools.conf.sample
%%X11%%etc/xdg/autostart/vmware-user.desktop
%%DEPLOYPKG%%include/libDeployPkg/deployPkgFormat.h
%%DEPLOYPKG%%include/libDeployPkg/deploypkg.h
@@ -85,5 +85,4 @@ share/vmware-tools/suspend-vm-default
@dir lib/vmware-tools/modules/input
@dir %%DATADIR%%/scripts/vmware
@dir %%DATADIR%%/tests
-@dir /etc/vmware-tools
@preunexec %%PREFIX%%/bin/vmware-rpctool 'tools.set.version 0' 2>/dev/null || /usr/bin/true
diff --git a/emulators/qemu-devel/Makefile b/emulators/qemu-devel/Makefile
index b8c142a24b12..04d3ed93025a 100644
--- a/emulators/qemu-devel/Makefile
+++ b/emulators/qemu-devel/Makefile
@@ -1,5 +1,5 @@
PORTNAME= qemu
-DISTVERSION= 10.1.20250830
+DISTVERSION= 10.1.20250930
CATEGORIES= emulators
PKGNAMESUFFIX= -devel
DIST_SUBDIR= qemu/${PORTVERSION}
@@ -23,11 +23,11 @@ USES= bison compiler:c11 cpe gmake gnome iconv:wchar_t localbase:ldflags \
ninja perl5 pkgconfig python:build shebangfix tar:xz xorg
USE_GITLAB= yes
GL_ACCOUNT= qemu-project
-GL_TAGNAME= 91589bcd9fee0e66b241d04e5f37cd4f218187a2
+GL_TAGNAME= 29b77c1a2db2d796bc3847852a5c8dc2a1e6e83b
GL_TUPLE= qemu-project:keycodemapdb:f5772a62ec52591ff6870b7e8ef32482371f22c6:keycodemapdb/subprojects/keycodemapdb \
qemu-project:dtc:b6910bec11614980a21e46fbccc35934b671bd81:dtc/subprojects/dtc \
qemu-project:libvfio-user:0b28d205572c80b568a1003db2c8f37ca333e4d7:libvfio/subprojects/libvfio-user \
- qemu-project:meson:2cf1fa324069daa170c1f0d321c0f7d885fff670:meson/meson \
+ qemu-project:meson:c0a5e9293209f465ab114ae0fcd92de640ef48a6:meson/meson \
qemu-project:berkeley-softfloat-3:b64af41c3276f97f0e181920400ee056b9c88037:berkeleysoftfloat3/subprojects/berkeley-softfloat-3 \
qemu-project:berkeley-testfloat-3:e7af9751d9f9fd3b47911f51a5cfd08af256a9ab:berkeleytestfloat3/subprojects/berkeley-testfloat-3
USE_GNOME= cairo glib20
diff --git a/emulators/qemu-devel/distinfo b/emulators/qemu-devel/distinfo
index 3b8ed19f1d56..9f611f6e478f 100644
--- a/emulators/qemu-devel/distinfo
+++ b/emulators/qemu-devel/distinfo
@@ -1,15 +1,15 @@
-TIMESTAMP = 1756803889
-SHA256 (qemu/10.1.20250830/qemu-project-qemu-91589bcd9fee0e66b241d04e5f37cd4f218187a2_GL0.tar.gz) = ddf0254081a24244c68144387db547bcd205f48361f56bc1f0f5a4877593ce1d
-SIZE (qemu/10.1.20250830/qemu-project-qemu-91589bcd9fee0e66b241d04e5f37cd4f218187a2_GL0.tar.gz) = 40128088
-SHA256 (qemu/10.1.20250830/qemu-project-keycodemapdb-f5772a62ec52591ff6870b7e8ef32482371f22c6_GL0.tar.gz) = d014b53382dbb17b8196ad12f50de7f20d0ef1b9f7d54b0be51a6cbb14209195
-SIZE (qemu/10.1.20250830/qemu-project-keycodemapdb-f5772a62ec52591ff6870b7e8ef32482371f22c6_GL0.tar.gz) = 29580
-SHA256 (qemu/10.1.20250830/qemu-project-dtc-b6910bec11614980a21e46fbccc35934b671bd81_GL0.tar.gz) = e115f987eec23a1ba25150a46ced1675de3716072d3b4905afb3a9cda0f007c7
-SIZE (qemu/10.1.20250830/qemu-project-dtc-b6910bec11614980a21e46fbccc35934b671bd81_GL0.tar.gz) = 205556
-SHA256 (qemu/10.1.20250830/qemu-project-libvfio-user-0b28d205572c80b568a1003db2c8f37ca333e4d7_GL0.tar.gz) = d2f60cd4f86f345aab1332953eb736cce3518159e6e99bcc2d10467c06f717fe
-SIZE (qemu/10.1.20250830/qemu-project-libvfio-user-0b28d205572c80b568a1003db2c8f37ca333e4d7_GL0.tar.gz) = 189943
-SHA256 (qemu/10.1.20250830/qemu-project-meson-2cf1fa324069daa170c1f0d321c0f7d885fff670_GL0.tar.gz) = b4b7fe671632df719101be1a67b90e49446a5ec0dc006060ef28466f47e6fa5a
-SIZE (qemu/10.1.20250830/qemu-project-meson-2cf1fa324069daa170c1f0d321c0f7d885fff670_GL0.tar.gz) = 4934066
-SHA256 (qemu/10.1.20250830/qemu-project-berkeley-softfloat-3-b64af41c3276f97f0e181920400ee056b9c88037_GL0.tar.gz) = faae889814ea6a292f7ca03d9b36e6c7e95bab2a64777804883cc822b8d48757
-SIZE (qemu/10.1.20250830/qemu-project-berkeley-softfloat-3-b64af41c3276f97f0e181920400ee056b9c88037_GL0.tar.gz) = 148741
-SHA256 (qemu/10.1.20250830/qemu-project-berkeley-testfloat-3-e7af9751d9f9fd3b47911f51a5cfd08af256a9ab_GL0.tar.gz) = e7a09d51dc7e96cb8422c919c85fc3833d4f788567638c9162ef5cd7db59b1df
-SIZE (qemu/10.1.20250830/qemu-project-berkeley-testfloat-3-e7af9751d9f9fd3b47911f51a5cfd08af256a9ab_GL0.tar.gz) = 139308
+TIMESTAMP = 1759582279
+SHA256 (qemu/10.1.20250930/qemu-project-qemu-29b77c1a2db2d796bc3847852a5c8dc2a1e6e83b_GL0.tar.gz) = 008351e18d84b8e69924ff85e1a0ff8df22673903af24434d0c642bde2e9a1da
+SIZE (qemu/10.1.20250930/qemu-project-qemu-29b77c1a2db2d796bc3847852a5c8dc2a1e6e83b_GL0.tar.gz) = 40218554
+SHA256 (qemu/10.1.20250930/qemu-project-keycodemapdb-f5772a62ec52591ff6870b7e8ef32482371f22c6_GL0.tar.gz) = d014b53382dbb17b8196ad12f50de7f20d0ef1b9f7d54b0be51a6cbb14209195
+SIZE (qemu/10.1.20250930/qemu-project-keycodemapdb-f5772a62ec52591ff6870b7e8ef32482371f22c6_GL0.tar.gz) = 29580
+SHA256 (qemu/10.1.20250930/qemu-project-dtc-b6910bec11614980a21e46fbccc35934b671bd81_GL0.tar.gz) = e115f987eec23a1ba25150a46ced1675de3716072d3b4905afb3a9cda0f007c7
+SIZE (qemu/10.1.20250930/qemu-project-dtc-b6910bec11614980a21e46fbccc35934b671bd81_GL0.tar.gz) = 205556
+SHA256 (qemu/10.1.20250930/qemu-project-libvfio-user-0b28d205572c80b568a1003db2c8f37ca333e4d7_GL0.tar.gz) = d2f60cd4f86f345aab1332953eb736cce3518159e6e99bcc2d10467c06f717fe
+SIZE (qemu/10.1.20250930/qemu-project-libvfio-user-0b28d205572c80b568a1003db2c8f37ca333e4d7_GL0.tar.gz) = 189943
+SHA256 (qemu/10.1.20250930/qemu-project-meson-c0a5e9293209f465ab114ae0fcd92de640ef48a6_GL0.tar.gz) = d22430645a2340d7d3a356ba70ff6c769be0f7f1f9e5d4b7bc0fa7a202623a3a
+SIZE (qemu/10.1.20250930/qemu-project-meson-c0a5e9293209f465ab114ae0fcd92de640ef48a6_GL0.tar.gz) = 4937576
+SHA256 (qemu/10.1.20250930/qemu-project-berkeley-softfloat-3-b64af41c3276f97f0e181920400ee056b9c88037_GL0.tar.gz) = faae889814ea6a292f7ca03d9b36e6c7e95bab2a64777804883cc822b8d48757
+SIZE (qemu/10.1.20250930/qemu-project-berkeley-softfloat-3-b64af41c3276f97f0e181920400ee056b9c88037_GL0.tar.gz) = 148741
+SHA256 (qemu/10.1.20250930/qemu-project-berkeley-testfloat-3-e7af9751d9f9fd3b47911f51a5cfd08af256a9ab_GL0.tar.gz) = e7a09d51dc7e96cb8422c919c85fc3833d4f788567638c9162ef5cd7db59b1df
+SIZE (qemu/10.1.20250930/qemu-project-berkeley-testfloat-3-e7af9751d9f9fd3b47911f51a5cfd08af256a9ab_GL0.tar.gz) = 139308
diff --git a/emulators/virtualbox-ose-70/Makefile b/emulators/virtualbox-ose-70/Makefile
index 70ae1ff3695f..14e02f5abe9e 100644
--- a/emulators/virtualbox-ose-70/Makefile
+++ b/emulators/virtualbox-ose-70/Makefile
@@ -1,6 +1,6 @@
PORTNAME= virtualbox-ose
DISTVERSION= 7.0.26
-PORTREVISION?= 4
+PORTREVISION?= 5
CATEGORIES= emulators
MASTER_SITES= https://download.virtualbox.org/virtualbox/${DISTVERSION}/:src \
LOCAL/vvd:docs
@@ -79,10 +79,10 @@ PLIST_SUB= GUEST_VER=${DISTVERSION} \
SLAVE_PORT?= no
-OPTIONS_DEFINE= AIO ALSA DBUS DEBUG DOCS GUESTADDITIONS NLS OGG PULSEAUDIO \
- PYTHON QT5 R0LOGGING UDPTUNNEL VBOXIMG VDE VNC VORBIS VPX \
- WEBSERVICE X11
-OPTIONS_DEFAULT= AIO DBUS QT5 UDPTUNNEL VNC WEBSERVICE X11
+OPTIONS_DEFINE= AIO ALSA DBUS DEBUG DOCS GUESTADDITIONS NLS OGG \
+ PULSEAUDIO PYTHON QT5 R0LOGGING TPM UDPTUNNEL VBOXIMG \
+ VDE VNC VORBIS VPX WEBSERVICE X11
+OPTIONS_DEFAULT= AIO DBUS QT5 TPM UDPTUNNEL VNC WEBSERVICE X11
.if ${SLAVE_PORT} == no
OPTIONS_DEFAULT+= PYTHON
.endif
@@ -98,6 +98,7 @@ NLS_DESC= Native language support (requires QT5)
OGG_DESC= Use libogg from audio/libogg instead of bundled one
QT5_DESC= Build with QT5 frontend (requires X11)
R0LOGGING_DESC= Enable R0 logging (requires DEBUG)
+TPM_DESC= Enable TPM device emulation using sysutils/libtpms
UDPTUNNEL_DESC= Build with UDP tunnel support
VBOXIMG_DESC= Build vboximg-mount (requires fuse-libs)
VDE_DESC= Build with VDE support
@@ -122,12 +123,14 @@ PYTHON_USE= PYTHON=distutils,noegginfo,noflavors
PYTHON_CONFIGURE_OFF= --disable-python
PYTHON_VARS= pydistutils_pkgname=vboxapi pydistutils_pkgversion=1.0
QT5_IMPLIES= X11
-QT5_USES= gl qmake:no_env qt:5 xorg
+QT5_USES= gl qmake:no_env xorg
QT5_USE= QT=buildtools:build,core,dbus,gui,linguisttools:build,opengl \
QT=printsupport,widgets,x11extras,xml XORG=xcb GL=gl
QT5_CONFIGURE_ON= --enable-qt5
QT5_CONFIGURE_OFF= --disable-qt
R0LOGGING_IMPLIES= DEBUG
+TPM_LIB_DEPENDS= libtpms.so:sysutils/libtpms
+TPM_CONFIGURE_OFF= --disable-libtpms
UDPTUNNEL_CONFIGURE_OFF= --disable-udptunnel
VBOXIMG_LIB_DEPENDS= libfuse.so.2:filesystems/fusefs-libs
VDE_RUN_DEPENDS= vde_switch:net/vde2
diff --git a/emulators/virtualbox-ose-70/files/patch-Config.kmk b/emulators/virtualbox-ose-70/files/patch-Config.kmk
index 9fe5ecdc458d..007f50ebdc98 100644
--- a/emulators/virtualbox-ose-70/files/patch-Config.kmk
+++ b/emulators/virtualbox-ose-70/files/patch-Config.kmk
@@ -1,6 +1,6 @@
---- Config.kmk.orig 2024-10-10 20:19:24.000000000 +0200
-+++ Config.kmk 2024-12-27 17:28:48.466891000 +0100
-@@ -579,11 +579,11 @@
+--- Config.kmk.orig 2025-10-02 22:44:57 UTC
++++ Config.kmk
+@@ -579,11 +579,11 @@ endif
# Enable OSS audio support.
VBOX_WITH_AUDIO_OSS = 1
endif
@@ -14,7 +14,7 @@
# Enable PulseAudio audio support.
VBOX_WITH_AUDIO_PULSE = 1
endif
-@@ -596,11 +596,11 @@
+@@ -596,11 +596,11 @@ VBOX_WITH_PCI_PASSTHROUGH =
# (disabled with 6.1, since it's not complete/useful enough)
VBOX_WITH_PCI_PASSTHROUGH =
# Enable statically linked dbus support.
@@ -28,7 +28,7 @@
VBOX_WITH_PAM = 1
endif
# Enable internal networking.
-@@ -608,7 +608,7 @@
+@@ -608,7 +608,7 @@ VBOX_WITH_VMSVGA = 1
# Enable vmsvga (svga2) graphics device variant, 2D part
VBOX_WITH_VMSVGA = 1
# Enable vmsvga (svga2) graphics device variant, 3D part
@@ -37,7 +37,16 @@
VBOX_WITH_VMSVGA3D = 1
endif
# Enable vmsvga (svga2) graphics device variant, 3D part, VGPU10 DX commands
-@@ -787,7 +787,7 @@
+@@ -735,7 +735,7 @@ VBOX_WITH_TPM = 1
+ # Enable TPM device emulation support.
+ VBOX_WITH_TPM = 1
+ # Enable libtpms, required for the in process TPM emulation.
+-if1of ($(KBUILD_TARGET), linux darwin win solaris)
++if1of ($(KBUILD_TARGET), freebsd linux darwin win solaris)
+ VBOX_WITH_LIBTPMS = 1
+ endif
+ ## @}
+@@ -787,7 +787,7 @@ VBOX_WITH_VBOXMANAGE_NLS = 1
#endif
# Set this to prefix all C symbols in XPCOM, to avoid dynamic linking problems
# caused by our XPCOM library polluting the symbol namespace for system libs.
@@ -46,7 +55,7 @@
VBOX_WITH_XPCOM_NAMESPACE_CLEANUP = 1
endif
# The webservices api.
-@@ -1295,10 +1295,6 @@
+@@ -1295,10 +1295,6 @@ endif
endif
endif
@@ -57,7 +66,7 @@
ifeq ($(KBUILD_TARGET),haiku)
VBOX_WITH_VRDP_RDESKTOP =
# Permanent (no working SDL).
-@@ -1457,7 +1453,7 @@
+@@ -1457,7 +1453,7 @@ ifdef VBOX_OSE
# not yet
VBOX_WITH_PLUGIN_CRYPT =
VBOX_WITH_DRAG_AND_DROP_PROMISES =
@@ -66,7 +75,7 @@
VBOX_WITH_DOCS =
VBOX_WITH_DOCS_PACKING =
endif
-@@ -3518,19 +3514,7 @@
+@@ -3517,19 +3513,7 @@ ifndef VBOX_GCC_std
#
## @todo consider maxing this out.
ifndef VBOX_GCC_std
@@ -86,7 +95,7 @@
endif
ifndef VBOX_VCC_std
if $(VBOX_VCC_TOOL_STEM) >= VCC141 # since 2017 15.3
-@@ -5484,11 +5468,11 @@
+@@ -5483,11 +5467,11 @@ ifeq ($(VBOX_LDR_FMT),elf)
# Solaris driver signing.
TEMPLATE_VBoxR0_POST_CMDS = $(VBOX_SIGN_DRIVER_CMDS)
else
@@ -100,7 +109,7 @@
VBOX_WITH_VBOXR0_AS_DLL = 1
TEMPLATE_VBoxR0_DLLSUFF = .r0
TEMPLATE_VBoxR0_CFLAGS += -fPIC
-@@ -5499,7 +5483,7 @@
+@@ -5498,7 +5482,7 @@ ifeq ($(VBOX_LDR_FMT),elf)
else
TEMPLATE_VBoxR0_CFLAGS.amd64 += -mcmodel=kernel
TEMPLATE_VBoxR0_CXXFLAGS.amd64 += -mcmodel=kernel
@@ -109,7 +118,7 @@
ifdef VBOX_WITH_KMOD_WRAPPED_R0_MODS # For BTF/pahold issue we use -g1
TEMPLATE_VBoxR0_DEFS += VBOX_WITH_KMOD_WRAPPED_R0_MODS
TEMPLATE_VBoxR0_LDFLAGS.linux += $(PATH_ROOT)/src/VBox/HostDrivers/Support/linux/VBoxR0-wrapped.lds
-@@ -5880,7 +5864,7 @@
+@@ -5879,7 +5863,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
# x86 FreeBSD (6.2 or something):
# cc -O2 -fno-strict-aliasing -pipe -Werror -D_KERNEL -DKLD_MODULE \
# -nostdinc -I- -I. -I@ -I@/contrib/altq -I@/../include -I/usr/include \
@@ -118,7 +127,7 @@
# -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -ffreestanding -Wall -Wredundant-decls -Wnested-externs \
# -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -fformat-extensions \
# -std=c99 -c ../my.c
-@@ -5891,7 +5875,7 @@
+@@ -5890,7 +5874,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
#
# AMD64 FreeBSD (7.1):
# cc -O2 -fno-strict-aliasing -pipe -D_KERNEL -DKLD_MODULE -std=c99 -nostdinc -I. -I@ -I@/contrib/altq \
@@ -127,7 +136,7 @@
# -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx \
# -mno-3dnow -msoft-float -fno-asynchronous-unwind-tables -ffreestanding \
# -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign \
-@@ -5973,7 +5957,7 @@
+@@ -5972,7 +5956,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
| xargs -J% objcopy % $(outbase).kld
# Link the final .ko (a shared object).
@@ -136,7 +145,7 @@
endef
endif # x86
-@@ -6008,7 +5992,7 @@
+@@ -6007,7 +5991,7 @@ ifeq ($(KBUILD_TARGET),netbsd)
$(VBOX_GCC_fdiagnostics-show-option) \
-Wstrict-prototypes -Wmissing-prototypes -Wstrict-prototypes \
-Wimplicit-function-declaration -Werror-implicit-function-declaration \
@@ -145,7 +154,7 @@
$(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \
-nostdinc -std=c99 -msoft-float
TEMPLATE_VBoxR0Drv_CFLAGS.x86 = -m32 -mno-mmx -mno-sse -mno-avx \
-@@ -6019,7 +6003,7 @@
+@@ -6018,7 +6002,7 @@ ifeq ($(KBUILD_TARGET),netbsd)
-fno-asynchronous-unwind-tables -mno-fp-ret-in-387
TEMPLATE_VBoxR0Drv_CXXFLAGS = -fno-exceptions -fno-rtti \
$(VBOX_GCC_WARN) -Wpointer-arith -Winline \
@@ -154,7 +163,7 @@
$(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \
-nostdinc -msoft-float
TEMPLATE_VBoxR0Drv_CXXFLAGS.x86 = $(TEMPLATE_VBoxR0Drv_CFLAGS.x86)
-@@ -6318,11 +6302,11 @@
+@@ -6317,11 +6301,11 @@ else # the gcc guys
TEMPLATE_VBoxR3Exe_LIBS = pthread m rt dl
else ifeq ($(KBUILD_TARGET),os2)
TEMPLATE_VBoxR3Exe_TOOL = GXX3OMF
@@ -168,7 +177,7 @@
TEMPLATE_VBoxR3Exe_SDKS.darwin = $(VBOX_DARWIN_DEF_SDK_SDKS)
TEMPLATE_VBoxR3Exe_DEFS.darwin = $(VBOX_DARWIN_DEF_SDK_DEFS)
TEMPLATE_VBoxR3Exe_CFLAGS.darwin = $(VBOX_DARWIN_DEF_SDK_CFLAGS) -fno-common
-@@ -6339,17 +6323,26 @@
+@@ -6338,17 +6322,26 @@ else # the gcc guys
else ifeq ($(KBUILD_TARGET),haiku)
TEMPLATE_VBoxR3Exe_TOOL = GXX3
TEMPLATE_VBoxR3Exe_POST_CMDS = $(VBOX_HAIKU_XRES_SETVER_CMDS)
@@ -197,7 +206,7 @@
/usr/include \
/usr/X11R6/include \
/usr/local/include
-@@ -6368,7 +6361,7 @@
+@@ -6367,7 +6360,7 @@ else # the gcc guys
/usr/X11R7/lib
else ifeq ($(KBUILD_TARGET),solaris)
TEMPLATE_VBoxR3Exe_TOOL = GXX3PLAIN
@@ -206,7 +215,7 @@
if $(VBOX_GCC_VERSION_CC) < 30500
TEMPLATE_VBoxR3Exe_CFLAGS += -std=gnu99
endif
-@@ -6384,6 +6377,7 @@
+@@ -6383,6 +6376,7 @@ else # the gcc guys
TEMPLATE_VBoxR3Exe_LDFLAGS += '$(VBOX_GCC_RPATH_OPT)$(VBOX_WITH_RELATIVE_RUNPATH)'
endif
ifdef VBOX_WITH_ORIGIN
@@ -214,7 +223,7 @@
TEMPLATE_VBoxR3Exe_LDFLAGS.linux += $(VBOX_GCC_ORIGIN_OPT)
endif
endif
-@@ -6590,7 +6584,7 @@
+@@ -6589,7 +6583,7 @@ else
ifdef VBOX_WITH_NOCRT_STATIC
TEMPLATE_VBoxR3StaticBase_DEFS += RT_WITH_NOCRT_WRAPPERS
endif
@@ -223,7 +232,7 @@
# The gcc guys sans darwin, linux and solaris (don't depend on statically compiled system libs there)
TEMPLATE_VBoxR3StaticBase_CFLAGS = $(TEMPLATE_VBoxR3Exe_CFLAGS) -static
TEMPLATE_VBoxR3StaticBase_CXXFLAGS = $(TEMPLATE_VBoxR3Exe_CXXFLAGS) -static
-@@ -6656,7 +6650,7 @@
+@@ -6655,7 +6649,7 @@ else
$(SDK_VBoxLzf_LIBS) \
$(SDK_VBoxZlib_LIBS)
if1of ($(KBUILD_TARGET), darwin freebsd)
@@ -232,7 +241,7 @@
else ifeq ($(KBUILD_TARGET),solaris)
TEMPLATE_VBoxR3Static_LIBS += kstat
endif
-@@ -6830,6 +6824,7 @@
+@@ -6829,6 +6823,7 @@ else ifn1of ($(KBUILD_TARGET), os2)
else ifn1of ($(KBUILD_TARGET), os2)
ifneq ($(KBUILD_TYPE),asan) # Keep RPATH in asan builds so we can find libasan.so.X and libubsan.so.Y.
TEMPLATE_VBoxR3HardenedExe_LDFLAGS = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_VBoxR3Exe_LDFLAGS))
@@ -240,7 +249,7 @@
TEMPLATE_VBoxR3HardenedExe_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_VBoxR3Exe_LDFLAGS.linux))
endif
endif
-@@ -6861,6 +6856,7 @@
+@@ -6860,6 +6855,7 @@ ifn1of ($(KBUILD_TARGET), win os2)
$(if-expr !defined(VBOX_WITHOUT_WINDOWS_KERNEL_CODE_SIGNING_CERT),-IntegrityCheck,)
ifn1of ($(KBUILD_TARGET), win os2)
TEMPLATE_VBoxR3HardenedTstDll_LDFLAGS = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_VBoxR3TstDll_LDFLAGS))
@@ -248,7 +257,7 @@
TEMPLATE_VBoxR3HardenedTstDll_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_VBoxR3TstDll_LDFLAGS.linux))
endif
-@@ -6884,6 +6880,7 @@
+@@ -6883,6 +6879,7 @@ ifndef VBOX_WITH_HARDENING
TEMPLATE_VBoxR3SetUidToRoot_LDFLAGS += '$(VBOX_GCC_RPATH_OPT)$(VBOX_WITH_RELATIVE_RUNPATH)'
endif
ifdef VBOX_WITH_ORIGIN
@@ -256,7 +265,7 @@
TEMPLATE_VBoxR3SetUidToRoot_LDFLAGS.linux += $(VBOX_GCC_ORIGIN_OPT)
endif
endif
-@@ -7208,7 +7205,7 @@
+@@ -7207,7 +7204,7 @@ else # the GCC guys:
endif
TEMPLATE_VBoxMainExe_CXXFLAGS = -g $(VBOX_GCC_pipe) \
$(VBOX_GCC_PEDANTIC_CXX) $(VBOX_GCC_Wno-variadic-macros) $(VBOX_GCC_Wno-multistatement-macros) $(VBOX_GCC_Wno-class-memaccess) -Wshadow \
@@ -265,7 +274,7 @@
$(VBOX_GCC_fvisibility-inlines-hidden) $(VBOX_GCC_fvisibility-hidden) $(VBOX_GCC_std) $(VBOX_GCC_IPRT_FMT_CHECK) \
$(VBOX_GCC_SANITIZER_FLAGS)
if !defined("VBOX_GCC_Wno-delete-non-virtual-dtor") && defined("VBOX_GCC_Wno-non-virtual-dtor")
-@@ -7272,10 +7269,19 @@
+@@ -7271,10 +7268,19 @@ else # the GCC guys:
else ifeq ($(KBUILD_TARGET),haiku)
TEMPLATE_VBoxMainExe_TOOL = GXX3
TEMPLATE_VBoxMainExe_LIBS = $(LIB_RUNTIME) network stdc++ supc++
@@ -286,7 +295,7 @@
/usr/include \
/usr/X11R6/include \
/usr/local/include
-@@ -7307,6 +7313,7 @@
+@@ -7306,6 +7312,7 @@ else # the GCC guys:
TEMPLATE_VBoxMainExe_LDFLAGS += '$(VBOX_GCC_RPATH_OPT)$(VBOX_WITH_RELATIVE_RUNPATH)'
endif
ifdef VBOX_WITH_ORIGIN
@@ -294,7 +303,7 @@
TEMPLATE_VBoxMainExe_LDFLAGS.linux += $(VBOX_GCC_ORIGIN_OPT)
endif
-@@ -7943,13 +7950,11 @@
+@@ -7942,13 +7949,11 @@ ifdef VBOX_WITH_QTGUI
TEMPLATE_VBoxQtGuiExe_LIBPATH += \
$(VBOX_LIBPATH_X11)
ifeq ($(KBUILD_TARGET),freebsd)
@@ -310,7 +319,7 @@
/usr/local/lib
endif
ifeq ($(KBUILD_TARGET),solaris)
-@@ -8231,7 +8236,7 @@
+@@ -8230,7 +8235,7 @@ else
TEMPLATE_VBoxBldProg_LIBS = pthread m rt dl
else ifeq ($(KBUILD_HOST),os2)
TEMPLATE_VBoxBldProg_TOOL = GXX3OMF
@@ -319,7 +328,7 @@
else ifeq ($(KBUILD_HOST),darwin)
TEMPLATE_VBoxBldProg_TOOL = $(VBOX_GCC_TOOL)
if "$(VBOX_DEF_MACOSX_VERSION_MIN)" == "10.7" || "$(VBOX_DARWIN_HOST_VERSION_MAJOR)" == "7"
-@@ -8271,13 +8276,20 @@
+@@ -8270,13 +8275,20 @@ else
TEMPLATE_VBoxBldProg_LIBS =
else ifeq ($(KBUILD_HOST),haiku)
TEMPLATE_VBoxBldProg_TOOL = GXX3
@@ -342,7 +351,7 @@
/usr/include \
/usr/X11R6/include \
/usr/local/include
-@@ -8324,11 +8336,11 @@
+@@ -8323,11 +8335,11 @@ TEMPLATE_VBoxAdvBldProg_LIBS.darwin = \
$(TEMPLATE_VBoxBldProg_LIBS)
TEMPLATE_VBoxAdvBldProg_LIBS.darwin = \
$(TEMPLATE_VBoxAdvBldProg_LIBS) \
@@ -356,7 +365,7 @@
rt \
$(TEMPLATE_VBoxBldProg_LIBS.freebsd)
TEMPLATE_VBoxAdvBldProg_LIBS.linux = \
-@@ -8419,6 +8431,7 @@
+@@ -8418,6 +8430,7 @@ else # the gcc guys
# Do not inherit sanitizer flags from VBoxR3Exe in guest executables. Deal with them separately.
TEMPLATE_VBoxGuestR3ExeBase_CXXFLAGS.debug = $(NO_SUCH_VARIABLE)
TEMPLATE_VBoxGuestR3ExeBase_CFLAGS.debug = $(NO_SUCH_VARIABLE)
@@ -364,7 +373,7 @@
TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LDFLAGS.linux))
TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS.debug = $(NO_SUCH_VARIABLE)
TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LDFLAGS))
-@@ -8442,7 +8455,7 @@
+@@ -8441,7 +8454,7 @@ else if1of ($(KBUILD_TARGET), darwin freebsd openbsd)
ifeq ($(KBUILD_TARGET),linux) # As few libs as possible on linux.
TEMPLATE_VBoxGuestR3ExeBase_LIBS = pthread rt m dl
else if1of ($(KBUILD_TARGET), darwin freebsd openbsd)
@@ -373,7 +382,7 @@
else ifeq ($(KBUILD_TARGET),solaris)
TEMPLATE_VBoxGuestR3ExeBase_LIBS = $(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LIBS) nsl
endif
-@@ -8455,6 +8468,7 @@
+@@ -8454,6 +8467,7 @@ TEMPLATE_VBoxGuestR3ExeBase_CFLAGS.linux = $(TEMP
$(VBOX_GCC_fno-stack-protector)
TEMPLATE_VBoxGuestR3ExeBase_CFLAGS.linux = $(TEMPLATE_VBoxGuestR3ExeBase_CXXFLAGS.linux)
# The GNU_HASH ELF tag is not supported by older systems.
@@ -381,7 +390,7 @@
TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS.linux += $(VBOX_LD_hash_style_sysv)
-@@ -8684,6 +8698,7 @@
+@@ -8683,6 +8697,7 @@ TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.$(KBUILD_TARGET
TEMPLATE_VBoxGuestR3XFree86Mod_CXXFLAGS.linux = $(VBOX_GCC_fno-stack-protector) # Remove symvers.h
TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.$(KBUILD_TARGET) = $(NO_SUCH_VARIABLE)
# The GNU_HASH ELF tag is not supported by older glibc dynamic linkers.
@@ -389,7 +398,7 @@
TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.linux = $(subst -Wl$(COMMA),,$(VBOX_LD_hash_style_sysv))
TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.$(KBUILD_TYPE) = $(NO_SUCH_VARIABLE)
TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS := -r
-@@ -8725,7 +8740,7 @@
+@@ -8724,7 +8739,7 @@ TEMPLATE_VBoxGuestR3XOrgMod_LIBS.$(KBUILD_TARGET) =
TEMPLATE_VBoxGuestR3XOrgMod_LIBS = $(VBOX_LIB_VBGL_R3_XORG)
TEMPLATE_VBoxGuestR3XOrgMod_LIBS.$(KBUILD_TYPE) = $(NO_SUCH_VARIABLE)
TEMPLATE_VBoxGuestR3XOrgMod_LIBS.$(KBUILD_TARGET) = $(NO_SUCH_VARIABLE)
diff --git a/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
index edd43c7c03c7..1b0463711195 100644
--- a/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
+++ b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
@@ -1382,7 +1382,7 @@
+ int lkflags = cnp->cn_lkflags;
+ char *fullpath = NULL;
+
-+ *vpp = NULLVP;
++ *vpp = NULL;
+ error = ENOENT;
+ if (cnp->cn_flags & ISDOTDOT) {
+ error = vn_vget_ino_gen(dvp, vboxfs_vn_get_ino_alloc,
@@ -1392,7 +1392,7 @@
+ goto out;
+
+ } else if (cnp->cn_namelen == 1 && cnp->cn_nameptr[0] == '.') {
-+ VREF(dvp);
++ vref(dvp);
+ *vpp = dvp;
+ error = 0;
+ } else {
diff --git a/emulators/virtualbox-ose-71/Makefile b/emulators/virtualbox-ose-71/Makefile
index 288552b6f76d..390f4ffa655b 100644
--- a/emulators/virtualbox-ose-71/Makefile
+++ b/emulators/virtualbox-ose-71/Makefile
@@ -1,6 +1,6 @@
PORTNAME= virtualbox-ose
DISTVERSION= 7.1.12
-PORTREVISION?= 0
+PORTREVISION?= 1
CATEGORIES= emulators
MASTER_SITES= https://download.virtualbox.org/virtualbox/${DISTVERSION}/:src \
LOCAL/vvd:docs
@@ -78,10 +78,10 @@ PLIST_SUB= GUEST_VER=${DISTVERSION} \
SLAVE_PORT?= no
-OPTIONS_DEFINE= AIO ALSA DBUS DEBUG DOCS GUESTADDITIONS NLS OGG PULSEAUDIO \
- PYTHON QT6 R0LOGGING UDPTUNNEL VBOXIMG VDE VNC VORBIS VPX \
- WEBSERVICE X11
-OPTIONS_DEFAULT= AIO DBUS QT6 UDPTUNNEL VNC WEBSERVICE X11
+OPTIONS_DEFINE= AIO ALSA DBUS DEBUG DOCS GUESTADDITIONS NLS OGG \
+ PULSEAUDIO PYTHON QT6 R0LOGGING TPM UDPTUNNEL VBOXIMG \
+ VDE VNC VORBIS VPX WEBSERVICE X11
+OPTIONS_DEFAULT= AIO DBUS QT6 TPM UDPTUNNEL VNC WEBSERVICE X11
.if ${SLAVE_PORT} == no
OPTIONS_DEFAULT+= PYTHON
.endif
@@ -97,6 +97,7 @@ NLS_DESC= Native language support (requires QT6)
OGG_DESC= Use libogg from audio/libogg instead of bundled one
QT6_DESC= Build with QT6 frontend (requires X11)
R0LOGGING_DESC= Enable R0 logging (requires DEBUG)
+TPM_DESC= Enable TPM device emulation using sysutils/libtpms
UDPTUNNEL_DESC= Build with UDP tunnel support
VBOXIMG_DESC= Build vboximg-mount (requires fuse-libs)
VDE_DESC= Build with VDE support
@@ -121,11 +122,13 @@ PYTHON_USE= PYTHON=distutils,noegginfo,noflavors
PYTHON_CONFIGURE_OFF= --disable-python
PYTHON_VARS= pydistutils_pkgname=vboxapi pydistutils_pkgversion=1.0
QT6_IMPLIES= X11
-QT6_USES= gl qmake:no_env qt:6 xorg
+QT6_USES= gl qmake:no_env xorg
QT6_USE= QT=base,scxml,tools,translations \
XORG=xcb GL=gl
QT6_CONFIGURE_OFF= --disable-qt
R0LOGGING_IMPLIES= DEBUG
+TPM_LIB_DEPENDS= libtpms.so:sysutils/libtpms
+TPM_CONFIGURE_OFF= --disable-libtpms
UDPTUNNEL_CONFIGURE_OFF= --disable-udptunnel
VBOXIMG_LIB_DEPENDS= libfuse.so.2:filesystems/fusefs-libs
VDE_RUN_DEPENDS= vde_switch:net/vde2
diff --git a/emulators/virtualbox-ose-71/files/patch-Config.kmk b/emulators/virtualbox-ose-71/files/patch-Config.kmk
index 7aaf90147847..2094c6a0a671 100644
--- a/emulators/virtualbox-ose-71/files/patch-Config.kmk
+++ b/emulators/virtualbox-ose-71/files/patch-Config.kmk
@@ -1,4 +1,4 @@
---- Config.kmk.orig 2025-05-10 18:43:02 UTC
+--- Config.kmk.orig 2025-10-02 16:43:08 UTC
+++ Config.kmk
@@ -610,11 +610,11 @@ endif
# Enable OSS audio support.
@@ -37,6 +37,15 @@
VBOX_WITH_VMSVGA3D = 1
endif
# Enable vmsvga (svga2) graphics device variant, 3D part, VGPU10 DX commands
+@@ -766,7 +766,7 @@ VBOX_WITH_TPM = 1
+ # Enable TPM device emulation support.
+ VBOX_WITH_TPM = 1
+ # Enable libtpms, required for the in process TPM emulation.
+-if1of ($(KBUILD_TARGET), linux darwin win solaris)
++if1of ($(KBUILD_TARGET), freebsd linux darwin win solaris)
+ VBOX_WITH_LIBTPMS = 1
+ endif
+ # Disable keyboard HID Consumer/Desktop control keys passthrough
@@ -825,7 +825,7 @@ VBOX_WITH_VBOXMANAGE_NLS = 1
#endif
# Set this to prefix all C symbols in XPCOM, to avoid dynamic linking problems
@@ -46,7 +55,7 @@
VBOX_WITH_XPCOM_NAMESPACE_CLEANUP = 1
endif
# The webservices api.
-@@ -1357,10 +1357,6 @@ endif
+@@ -1355,10 +1355,6 @@ endif
endif
endif
@@ -57,7 +66,7 @@
ifeq ($(KBUILD_TARGET),haiku)
VBOX_WITH_VRDP_RDESKTOP =
# Permanent (no working SDL).
-@@ -1545,7 +1541,7 @@ ifdef VBOX_OSE
+@@ -1543,7 +1539,7 @@ ifdef VBOX_OSE
# not yet
VBOX_WITH_PLUGIN_CRYPT =
VBOX_WITH_DRAG_AND_DROP_PROMISES =
@@ -66,7 +75,7 @@
VBOX_WITH_DOCS =
VBOX_WITH_DOCS_PACKING =
endif
-@@ -3680,19 +3676,7 @@ ifndef VBOX_GCC_std
+@@ -3669,19 +3665,7 @@ ifndef VBOX_GCC_std
#
## @todo consider maxing this out.
ifndef VBOX_GCC_std
@@ -86,7 +95,7 @@
endif
ifndef VBOX_VCC_std
if $(VBOX_VCC_TOOL_STEM) >= VCC141 # since 2017 15.3
-@@ -5682,11 +5666,11 @@ ifeq ($(VBOX_LDR_FMT),elf)
+@@ -5673,11 +5657,11 @@ ifeq ($(VBOX_LDR_FMT),elf)
# Solaris driver signing.
TEMPLATE_VBoxR0_POST_CMDS = $(VBOX_SIGN_DRIVER_CMDS)
else
@@ -100,7 +109,7 @@
VBOX_WITH_VBOXR0_AS_DLL = 1
TEMPLATE_VBoxR0_DLLSUFF = .r0
TEMPLATE_VBoxR0_CFLAGS += -fPIC
-@@ -5697,7 +5681,7 @@ ifeq ($(VBOX_LDR_FMT),elf)
+@@ -5688,7 +5672,7 @@ ifeq ($(VBOX_LDR_FMT),elf)
else
TEMPLATE_VBoxR0_CFLAGS.amd64 += -mcmodel=kernel
TEMPLATE_VBoxR0_CXXFLAGS.amd64 += -mcmodel=kernel
@@ -109,7 +118,7 @@
ifdef VBOX_WITH_KMOD_WRAPPED_R0_MODS # For BTF/pahold issue we use -g1
TEMPLATE_VBoxR0_DEFS += VBOX_WITH_KMOD_WRAPPED_R0_MODS
TEMPLATE_VBoxR0_LDFLAGS.linux += $(PATH_ROOT)/src/VBox/HostDrivers/Support/linux/VBoxR0-wrapped.lds
-@@ -6081,7 +6065,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
+@@ -6072,7 +6056,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
# x86 FreeBSD (6.2 or something):
# cc -O2 -fno-strict-aliasing -pipe -Werror -D_KERNEL -DKLD_MODULE \
# -nostdinc -I- -I. -I@ -I@/contrib/altq -I@/../include -I/usr/include \
@@ -118,7 +127,7 @@
# -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -ffreestanding -Wall -Wredundant-decls -Wnested-externs \
# -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -fformat-extensions \
# -std=c99 -c ../my.c
-@@ -6092,7 +6076,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
+@@ -6083,7 +6067,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
#
# AMD64 FreeBSD (7.1):
# cc -O2 -fno-strict-aliasing -pipe -D_KERNEL -DKLD_MODULE -std=c99 -nostdinc -I. -I@ -I@/contrib/altq \
@@ -127,7 +136,7 @@
# -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx \
# -mno-3dnow -msoft-float -fno-asynchronous-unwind-tables -ffreestanding \
# -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign \
-@@ -6174,7 +6158,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
+@@ -6165,7 +6149,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
| xargs -J% objcopy % $(outbase).kld
# Link the final .ko (a shared object).
@@ -136,7 +145,7 @@
endef
endif # x86
-@@ -6209,7 +6193,7 @@ ifeq ($(KBUILD_TARGET),netbsd)
+@@ -6200,7 +6184,7 @@ ifeq ($(KBUILD_TARGET),netbsd)
$(VBOX_GCC_fdiagnostics-show-option) \
-Wstrict-prototypes -Wmissing-prototypes -Wstrict-prototypes \
-Wimplicit-function-declaration -Werror-implicit-function-declaration \
@@ -145,7 +154,7 @@
$(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \
-nostdinc -std=c99 -msoft-float
TEMPLATE_VBoxR0Drv_CFLAGS.x86 = -m32 -mno-mmx -mno-sse -mno-avx \
-@@ -6220,7 +6204,7 @@ ifeq ($(KBUILD_TARGET),netbsd)
+@@ -6211,7 +6195,7 @@ ifeq ($(KBUILD_TARGET),netbsd)
-fno-asynchronous-unwind-tables -mno-fp-ret-in-387
TEMPLATE_VBoxR0Drv_CXXFLAGS = -fno-exceptions -fno-rtti \
$(VBOX_GCC_WARN) -Wpointer-arith -Winline \
@@ -154,7 +163,7 @@
$(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \
-nostdinc -msoft-float
TEMPLATE_VBoxR0Drv_CXXFLAGS.x86 = $(TEMPLATE_VBoxR0Drv_CFLAGS.x86)
-@@ -6528,11 +6512,11 @@ else # the gcc guys
+@@ -6519,11 +6503,11 @@ else # the gcc guys
TEMPLATE_VBoxR3Exe_LIBS = pthread m rt dl
else ifeq ($(KBUILD_TARGET),os2)
TEMPLATE_VBoxR3Exe_TOOL = GXX3OMF
@@ -168,7 +177,7 @@
TEMPLATE_VBoxR3Exe_SDKS.darwin = $(VBOX_DARWIN_DEF_SDK_SDKS)
TEMPLATE_VBoxR3Exe_DEFS.darwin = $(VBOX_DARWIN_DEF_SDK_DEFS)
TEMPLATE_VBoxR3Exe_CFLAGS.darwin = $(VBOX_DARWIN_DEF_SDK_CFLAGS) -fno-common
-@@ -6549,17 +6533,26 @@ else # the gcc guys
+@@ -6540,17 +6524,26 @@ else # the gcc guys
else ifeq ($(KBUILD_TARGET),haiku)
TEMPLATE_VBoxR3Exe_TOOL = GXX3
TEMPLATE_VBoxR3Exe_POST_CMDS = $(VBOX_HAIKU_XRES_SETVER_CMDS)
@@ -197,7 +206,7 @@
/usr/include \
/usr/X11R6/include \
/usr/local/include
-@@ -6578,7 +6571,7 @@ else # the gcc guys
+@@ -6569,7 +6562,7 @@ else # the gcc guys
/usr/X11R7/lib
else ifeq ($(KBUILD_TARGET),solaris)
TEMPLATE_VBoxR3Exe_TOOL = GXX3PLAIN
@@ -206,7 +215,7 @@
if $(VBOX_GCC_VERSION_CC) < 30500
TEMPLATE_VBoxR3Exe_CFLAGS += -std=gnu99
endif
-@@ -6594,6 +6587,7 @@ else # the gcc guys
+@@ -6585,6 +6578,7 @@ else # the gcc guys
TEMPLATE_VBoxR3Exe_LDFLAGS += '$(VBOX_GCC_RPATH_OPT)$(VBOX_WITH_RELATIVE_RUNPATH)'
endif
ifdef VBOX_WITH_ORIGIN
@@ -214,7 +223,7 @@
TEMPLATE_VBoxR3Exe_LDFLAGS.linux += $(VBOX_GCC_ORIGIN_OPT)
endif
endif
-@@ -6808,7 +6802,7 @@ else
+@@ -6799,7 +6793,7 @@ else
ifdef VBOX_WITH_NOCRT_STATIC
TEMPLATE_VBoxR3StaticBase_DEFS += RT_WITH_NOCRT_WRAPPERS
endif
@@ -223,7 +232,7 @@
# The gcc guys sans darwin, linux and solaris (don't depend on statically compiled system libs there)
TEMPLATE_VBoxR3StaticBase_CFLAGS = $(TEMPLATE_VBoxR3Exe_CFLAGS) -static
TEMPLATE_VBoxR3StaticBase_CXXFLAGS = $(TEMPLATE_VBoxR3Exe_CXXFLAGS) -static
-@@ -6876,7 +6870,7 @@ else
+@@ -6867,7 +6861,7 @@ else
$(SDK_VBoxZlib_LIBS) \
$(SDK_VBoxLibLzma_LIBS)
if1of ($(KBUILD_TARGET), darwin freebsd)
@@ -232,7 +241,7 @@
else ifeq ($(KBUILD_TARGET),solaris)
TEMPLATE_VBoxR3Static_LIBS += kstat
endif
-@@ -7048,6 +7042,7 @@ else ifn1of ($(KBUILD_TARGET), os2)
+@@ -7039,6 +7033,7 @@ else ifn1of ($(KBUILD_TARGET), os2)
else ifn1of ($(KBUILD_TARGET), os2)
ifneq ($(KBUILD_TYPE),asan) # Keep RPATH in asan builds so we can find libasan.so.X and libubsan.so.Y.
TEMPLATE_VBoxR3HardenedExe_LDFLAGS = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_VBoxR3Exe_LDFLAGS))
@@ -240,7 +249,7 @@
TEMPLATE_VBoxR3HardenedExe_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_VBoxR3Exe_LDFLAGS.linux))
endif
endif
-@@ -7079,6 +7074,7 @@ ifn1of ($(KBUILD_TARGET), win os2)
+@@ -7070,6 +7065,7 @@ ifn1of ($(KBUILD_TARGET), win os2)
$(if-expr !defined(VBOX_WITHOUT_WINDOWS_KERNEL_CODE_SIGNING_CERT),-IntegrityCheck,)
ifn1of ($(KBUILD_TARGET), win os2)
TEMPLATE_VBoxR3HardenedTstDll_LDFLAGS = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_VBoxR3TstDll_LDFLAGS))
@@ -248,7 +257,7 @@
TEMPLATE_VBoxR3HardenedTstDll_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_VBoxR3TstDll_LDFLAGS.linux))
endif
-@@ -7102,6 +7098,7 @@ ifndef VBOX_WITH_HARDENING
+@@ -7093,6 +7089,7 @@ ifndef VBOX_WITH_HARDENING
TEMPLATE_VBoxR3SetUidToRoot_LDFLAGS += '$(VBOX_GCC_RPATH_OPT)$(VBOX_WITH_RELATIVE_RUNPATH)'
endif
ifdef VBOX_WITH_ORIGIN
@@ -256,7 +265,7 @@
TEMPLATE_VBoxR3SetUidToRoot_LDFLAGS.linux += $(VBOX_GCC_ORIGIN_OPT)
endif
endif
-@@ -7454,7 +7451,7 @@ else # the GCC guys:
+@@ -7445,7 +7442,7 @@ else # the GCC guys:
endif
TEMPLATE_VBoxMainExe_CXXFLAGS = -g $(VBOX_GCC_pipe) \
$(VBOX_GCC_PEDANTIC_CXX) $(VBOX_GCC_Wno-variadic-macros) $(VBOX_GCC_Wno-multistatement-macros) $(VBOX_GCC_Wno-class-memaccess) -Wshadow \
@@ -265,7 +274,7 @@
$(VBOX_GCC_fvisibility-inlines-hidden) $(VBOX_GCC_fvisibility-hidden) $(VBOX_GCC_std) $(VBOX_GCC_IPRT_FMT_CHECK) \
$(VBOX_GCC_SANITIZER_FLAGS)
if !defined("VBOX_GCC_Wno-delete-non-virtual-dtor") && defined("VBOX_GCC_Wno-non-virtual-dtor")
-@@ -7518,10 +7515,19 @@ else # the GCC guys:
+@@ -7509,10 +7506,19 @@ else # the GCC guys:
else ifeq ($(KBUILD_TARGET),haiku)
TEMPLATE_VBoxMainExe_TOOL = GXX3
TEMPLATE_VBoxMainExe_LIBS = $(LIB_RUNTIME) network stdc++ supc++
@@ -286,7 +295,7 @@
/usr/include \
/usr/X11R6/include \
/usr/local/include
-@@ -7553,6 +7559,7 @@ else # the GCC guys:
+@@ -7544,6 +7550,7 @@ else # the GCC guys:
TEMPLATE_VBoxMainExe_LDFLAGS += '$(VBOX_GCC_RPATH_OPT)$(VBOX_WITH_RELATIVE_RUNPATH)'
endif
ifdef VBOX_WITH_ORIGIN
@@ -294,7 +303,7 @@
TEMPLATE_VBoxMainExe_LDFLAGS.linux += $(VBOX_GCC_ORIGIN_OPT)
endif
-@@ -8181,14 +8188,13 @@ ifdef VBOX_WITH_QTGUI
+@@ -8172,14 +8179,13 @@ ifdef VBOX_WITH_QTGUI
TEMPLATE_VBoxQtGuiExe_LIBPATH += \
$(VBOX_LIBPATH_X11)
ifeq ($(KBUILD_TARGET),freebsd)
@@ -312,7 +321,7 @@
endif
ifeq ($(KBUILD_TARGET),solaris)
TEMPLATE_VBoxQtGuiExe_LDFLAGS.solaris = -Wl,-z,ignore # Same as VBOX_LD_as_needed.
-@@ -8460,7 +8466,7 @@ else
+@@ -8451,7 +8457,7 @@ else
TEMPLATE_VBoxBldProg_LIBS = pthread m rt dl
else ifeq ($(KBUILD_HOST),os2)
TEMPLATE_VBoxBldProg_TOOL = GXX3OMF
@@ -321,7 +330,7 @@
else ifeq ($(KBUILD_HOST),darwin)
TEMPLATE_VBoxBldProg_TOOL = $(VBOX_GCC_TOOL)
if "$(VBOX_DEF_MACOSX_VERSION_MIN)" == "10.7" || "$(VBOX_DARWIN_HOST_VERSION_MAJOR)" == "7"
-@@ -8500,13 +8506,20 @@ else
+@@ -8491,13 +8497,20 @@ else
TEMPLATE_VBoxBldProg_LIBS =
else ifeq ($(KBUILD_HOST),haiku)
TEMPLATE_VBoxBldProg_TOOL = GXX3
@@ -344,7 +353,7 @@
/usr/include \
/usr/X11R6/include \
/usr/local/include
-@@ -8553,11 +8566,11 @@ TEMPLATE_VBoxAdvBldProg_LIBS.darwin = \
+@@ -8544,11 +8557,11 @@ TEMPLATE_VBoxAdvBldProg_LIBS.darwin = \
$(TEMPLATE_VBoxBldProg_LIBS)
TEMPLATE_VBoxAdvBldProg_LIBS.darwin = \
$(TEMPLATE_VBoxAdvBldProg_LIBS) \
@@ -358,7 +367,7 @@
rt \
$(TEMPLATE_VBoxBldProg_LIBS.freebsd)
TEMPLATE_VBoxAdvBldProg_LIBS.linux = \
-@@ -8648,6 +8661,7 @@ else # the gcc guys
+@@ -8639,6 +8652,7 @@ else # the gcc guys
# Do not inherit sanitizer flags from VBoxR3Exe in guest executables. Deal with them separately.
TEMPLATE_VBoxGuestR3ExeBase_CXXFLAGS.debug = $(NO_SUCH_VARIABLE)
TEMPLATE_VBoxGuestR3ExeBase_CFLAGS.debug = $(NO_SUCH_VARIABLE)
@@ -366,7 +375,7 @@
TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LDFLAGS.linux))
TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS.debug = $(NO_SUCH_VARIABLE)
TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LDFLAGS))
-@@ -8671,7 +8685,7 @@ else if1of ($(KBUILD_TARGET), darwin freebsd openbsd)
+@@ -8662,7 +8676,7 @@ else if1of ($(KBUILD_TARGET), darwin freebsd openbsd)
ifeq ($(KBUILD_TARGET),linux) # As few libs as possible on linux.
TEMPLATE_VBoxGuestR3ExeBase_LIBS = pthread rt m dl
else if1of ($(KBUILD_TARGET), darwin freebsd openbsd)
@@ -375,7 +384,7 @@
else ifeq ($(KBUILD_TARGET),solaris)
TEMPLATE_VBoxGuestR3ExeBase_LIBS = $(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LIBS) nsl
endif
-@@ -8684,6 +8698,7 @@ TEMPLATE_VBoxGuestR3ExeBase_CFLAGS.linux = $(TEMP
+@@ -8675,6 +8689,7 @@ TEMPLATE_VBoxGuestR3ExeBase_CFLAGS.linux = $(TEMP
$(VBOX_GCC_fno-stack-protector)
TEMPLATE_VBoxGuestR3ExeBase_CFLAGS.linux = $(TEMPLATE_VBoxGuestR3ExeBase_CXXFLAGS.linux)
# The GNU_HASH ELF tag is not supported by older systems.
@@ -383,7 +392,7 @@
TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS.linux += $(VBOX_LD_hash_style_sysv)
-@@ -8929,6 +8944,7 @@ TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.$(KBUILD_TARGET
+@@ -8920,6 +8935,7 @@ TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.$(KBUILD_TARGET
TEMPLATE_VBoxGuestR3XFree86Mod_CXXFLAGS.linux = $(VBOX_GCC_fno-stack-protector) # Remove symvers.h
TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.$(KBUILD_TARGET) = $(NO_SUCH_VARIABLE)
# The GNU_HASH ELF tag is not supported by older glibc dynamic linkers.
@@ -391,7 +400,7 @@
TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.linux = $(subst -Wl$(COMMA),,$(VBOX_LD_hash_style_sysv))
TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.$(KBUILD_TYPE) = $(NO_SUCH_VARIABLE)
TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS := -r
-@@ -8970,7 +8986,7 @@ TEMPLATE_VBoxGuestR3XOrgMod_LIBS.$(KBUILD_TARGET) =
+@@ -8961,7 +8977,7 @@ TEMPLATE_VBoxGuestR3XOrgMod_LIBS.$(KBUILD_TARGET) =
TEMPLATE_VBoxGuestR3XOrgMod_LIBS = $(VBOX_LIB_VBGL_R3_XORG)
TEMPLATE_VBoxGuestR3XOrgMod_LIBS.$(KBUILD_TYPE) = $(NO_SUCH_VARIABLE)
TEMPLATE_VBoxGuestR3XOrgMod_LIBS.$(KBUILD_TARGET) = $(NO_SUCH_VARIABLE)
diff --git a/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c b/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
index edd43c7c03c7..1b0463711195 100644
--- a/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
+++ b/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
@@ -1382,7 +1382,7 @@
+ int lkflags = cnp->cn_lkflags;
+ char *fullpath = NULL;
+
-+ *vpp = NULLVP;
++ *vpp = NULL;
+ error = ENOENT;
+ if (cnp->cn_flags & ISDOTDOT) {
+ error = vn_vget_ino_gen(dvp, vboxfs_vn_get_ino_alloc,
@@ -1392,7 +1392,7 @@
+ goto out;
+
+ } else if (cnp->cn_namelen == 1 && cnp->cn_nameptr[0] == '.') {
-+ VREF(dvp);
++ vref(dvp);
+ *vpp = dvp;
+ error = 0;
+ } else {
diff --git a/emulators/virtualbox-ose-72/Makefile b/emulators/virtualbox-ose-72/Makefile
index fe41d449c234..8366e55ae779 100644
--- a/emulators/virtualbox-ose-72/Makefile
+++ b/emulators/virtualbox-ose-72/Makefile
@@ -1,6 +1,6 @@
PORTNAME= virtualbox-ose
DISTVERSION= 7.2.2
-PORTREVISION?= 0
+PORTREVISION?= 1
CATEGORIES= emulators
MASTER_SITES= https://download.virtualbox.org/virtualbox/${DISTVERSION}/:src \
LOCAL/vvd:docs
@@ -79,10 +79,10 @@ PLIST_SUB= GUEST_VER=${DISTVERSION} \
SLAVE_PORT?= no
-OPTIONS_DEFINE= AIO ALSA DBUS DEBUG DOCS GUESTADDITIONS NLS OGG PULSEAUDIO \
- PYTHON QT6 R0LOGGING UDPTUNNEL VBOXIMG VDE VNC VORBIS VPX \
- WEBSERVICE X11
-OPTIONS_DEFAULT= AIO DBUS QT6 UDPTUNNEL VNC WEBSERVICE X11
+OPTIONS_DEFINE= AIO ALSA DBUS DEBUG DOCS GUESTADDITIONS NLS OGG \
+ PULSEAUDIO PYTHON QT6 R0LOGGING TPM UDPTUNNEL VBOXIMG \
+ VDE VNC VORBIS VPX WEBSERVICE X11
+OPTIONS_DEFAULT= AIO DBUS QT6 TPM UDPTUNNEL VNC WEBSERVICE X11
.if ${SLAVE_PORT} == no
OPTIONS_DEFAULT+= PYTHON
.endif
@@ -98,6 +98,7 @@ NLS_DESC= Native language support (requires QT6)
OGG_DESC= Use libogg from audio/libogg instead of bundled one
QT6_DESC= Build with QT6 frontend (requires X11)
R0LOGGING_DESC= Enable R0 logging (requires DEBUG)
+TPM_DESC= Enable TPM device emulation using sysutils/libtpms
UDPTUNNEL_DESC= Build with UDP tunnel support
VBOXIMG_DESC= Build vboximg-mount (requires fuse-libs)
VDE_DESC= Build with VDE support
@@ -122,11 +123,13 @@ PYTHON_USE= PYTHON=distutils,noegginfo,noflavors
PYTHON_CONFIGURE_OFF= --disable-python
PYTHON_VARS= pydistutils_pkgname=vboxapi pydistutils_pkgversion=1.0
QT6_IMPLIES= X11
-QT6_USES= gl qmake:no_env qt:6 xorg
+QT6_USES= gl qmake:no_env xorg
QT6_USE= QT=base,scxml,tools,translations \
XORG=xcb GL=gl
QT6_CONFIGURE_OFF= --disable-qt
R0LOGGING_IMPLIES= DEBUG
+TPM_LIB_DEPENDS= libtpms.so:sysutils/libtpms
+TPM_CONFIGURE_OFF= --disable-libtpms
UDPTUNNEL_CONFIGURE_OFF= --disable-udptunnel
VBOXIMG_LIB_DEPENDS= libfuse.so.2:filesystems/fusefs-libs
VDE_RUN_DEPENDS= vde_switch:net/vde2
diff --git a/emulators/virtualbox-ose-72/files/patch-Config.kmk b/emulators/virtualbox-ose-72/files/patch-Config.kmk
index c284262eb189..d0e23bd4f3df 100644
--- a/emulators/virtualbox-ose-72/files/patch-Config.kmk
+++ b/emulators/virtualbox-ose-72/files/patch-Config.kmk
@@ -1,4 +1,4 @@
---- Config.kmk.orig 2025-08-28 22:09:24 UTC
+--- Config.kmk.orig 2025-10-02 22:45:13 UTC
+++ Config.kmk
@@ -624,11 +624,11 @@ endif
# Enable OSS audio support.
@@ -37,6 +37,15 @@
VBOX_WITH_VMSVGA3D = 1
endif
# Enable vmsvga (svga2) graphics device variant, 3D part, VGPU10 DX commands
+@@ -788,7 +788,7 @@ VBOX_WITH_TPM = 1
+ # Enable TPM device emulation support.
+ VBOX_WITH_TPM = 1
+ # Enable libtpms, required for the in process TPM emulation.
+-if1of ($(KBUILD_TARGET), linux darwin win solaris)
++if1of ($(KBUILD_TARGET), freebsd linux darwin win solaris)
+ VBOX_WITH_LIBTPMS = 1
+ endif
+ # Disable keyboard HID Consumer/Desktop control keys passthrough
@@ -847,7 +847,7 @@ VBOX_WITH_VBOXMANAGE_NLS = 1
#endif
# Set this to prefix all C symbols in XPCOM, to avoid dynamic linking problems
@@ -57,7 +66,7 @@
ifeq ($(KBUILD_TARGET),haiku)
VBOX_WITH_VRDP_RDESKTOP =
# Permanent (no working SDL).
-@@ -1563,7 +1559,7 @@ ifdef VBOX_OSE
+@@ -1562,7 +1558,7 @@ ifdef VBOX_OSE
# not yet
VBOX_WITH_PLUGIN_CRYPT =
VBOX_WITH_DRAG_AND_DROP_PROMISES =
@@ -66,7 +75,7 @@
VBOX_WITH_DOCS =
VBOX_WITH_DOCS_PACKING =
endif
-@@ -3637,19 +3633,19 @@ ifndef VBOX_GCC_std
+@@ -3636,19 +3632,19 @@ ifndef VBOX_GCC_std
#
## @todo consider maxing this out.
ifndef VBOX_GCC_std
@@ -98,7 +107,7 @@
endif
ifndef VBOX_VCC_std
if $(VBOX_VCC_TOOL_STEM) >= VCC141 # since 2017 15.3
-@@ -5688,11 +5684,11 @@ ifeq ($(VBOX_LDR_FMT),elf)
+@@ -5687,11 +5683,11 @@ ifeq ($(VBOX_LDR_FMT),elf)
# Solaris driver signing.
TEMPLATE_VBoxR0_POST_CMDS = $(VBOX_SIGN_DRIVER_CMDS)
else
@@ -112,7 +121,7 @@
VBOX_WITH_VBOXR0_AS_DLL = 1
TEMPLATE_VBoxR0_DLLSUFF = .r0
TEMPLATE_VBoxR0_CFLAGS += -fPIC
-@@ -5703,7 +5699,7 @@ ifeq ($(VBOX_LDR_FMT),elf)
+@@ -5702,7 +5698,7 @@ ifeq ($(VBOX_LDR_FMT),elf)
else
TEMPLATE_VBoxR0_CFLAGS.amd64 += -mcmodel=kernel
TEMPLATE_VBoxR0_CXXFLAGS.amd64 += -mcmodel=kernel
@@ -121,7 +130,7 @@
ifdef VBOX_WITH_KMOD_WRAPPED_R0_MODS # For BTF/pahold issue we use -g1
TEMPLATE_VBoxR0_DEFS += VBOX_WITH_KMOD_WRAPPED_R0_MODS
TEMPLATE_VBoxR0_LDFLAGS.linux += $(PATH_ROOT)/src/VBox/HostDrivers/Support/linux/VBoxR0-wrapped.lds
-@@ -6100,7 +6096,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
+@@ -6099,7 +6095,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
# x86 FreeBSD (6.2 or something):
# cc -O2 -fno-strict-aliasing -pipe -Werror -D_KERNEL -DKLD_MODULE \
# -nostdinc -I- -I. -I@ -I@/contrib/altq -I@/../include -I/usr/include \
@@ -130,7 +139,7 @@
# -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -ffreestanding -Wall -Wredundant-decls -Wnested-externs \
# -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -fformat-extensions \
# -std=c99 -c ../my.c
-@@ -6111,7 +6107,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
+@@ -6110,7 +6106,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
#
# AMD64 FreeBSD (7.1):
# cc -O2 -fno-strict-aliasing -pipe -D_KERNEL -DKLD_MODULE -std=c99 -nostdinc -I. -I@ -I@/contrib/altq \
@@ -139,7 +148,7 @@
# -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx \
# -mno-3dnow -msoft-float -fno-asynchronous-unwind-tables -ffreestanding \
# -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign \
-@@ -6193,7 +6189,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
+@@ -6192,7 +6188,7 @@ ifeq ($(KBUILD_TARGET),freebsd)
| xargs -J% objcopy % $(outbase).kld
# Link the final .ko (a shared object).
@@ -148,7 +157,7 @@
endef
endif # x86
-@@ -6228,7 +6224,7 @@ ifeq ($(KBUILD_TARGET),netbsd)
+@@ -6227,7 +6223,7 @@ ifeq ($(KBUILD_TARGET),netbsd)
$(VBOX_GCC_fdiagnostics-show-option) $(VBOX_GCC_fdiagnostics-color) \
-Wstrict-prototypes -Wmissing-prototypes -Wstrict-prototypes \
-Wimplicit-function-declaration -Werror-implicit-function-declaration \
@@ -157,7 +166,7 @@
$(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \
-nostdinc -std=c99 -msoft-float
TEMPLATE_VBoxR0Drv_CFLAGS.x86 = -m32 -mno-mmx -mno-sse -mno-avx \
-@@ -6239,7 +6235,7 @@ ifeq ($(KBUILD_TARGET),netbsd)
+@@ -6238,7 +6234,7 @@ ifeq ($(KBUILD_TARGET),netbsd)
-fno-asynchronous-unwind-tables -mno-fp-ret-in-387
TEMPLATE_VBoxR0Drv_CXXFLAGS = -fno-exceptions -fno-rtti \
$(VBOX_GCC_WARN) -Wpointer-arith -Winline \
@@ -166,7 +175,7 @@
$(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \
-nostdinc -msoft-float
TEMPLATE_VBoxR0Drv_CXXFLAGS.x86 = $(TEMPLATE_VBoxR0Drv_CFLAGS.x86)
-@@ -6565,11 +6561,11 @@ else # the gcc guys
+@@ -6562,11 +6558,11 @@ else # the gcc guys
TEMPLATE_VBoxR3Exe_LATE_LIBS = pthread m rt dl
else ifeq ($(KBUILD_TARGET),os2)
TEMPLATE_VBoxR3Exe_TOOL = GXX3OMF
@@ -180,7 +189,7 @@
TEMPLATE_VBoxR3Exe_SDKS.darwin = $(VBOX_DARWIN_DEF_SDK_SDKS)
TEMPLATE_VBoxR3Exe_DEFS.darwin = $(VBOX_DARWIN_DEF_SDK_DEFS)
TEMPLATE_VBoxR3Exe_CFLAGS.darwin = $(VBOX_DARWIN_DEF_SDK_CFLAGS) -fno-common
-@@ -6585,24 +6581,29 @@ else # the gcc guys
+@@ -6582,24 +6578,29 @@ else # the gcc guys
else ifeq ($(KBUILD_TARGET),haiku)
TEMPLATE_VBoxR3Exe_TOOL = GXX3
TEMPLATE_VBoxR3Exe_POST_CMDS = $(VBOX_HAIKU_XRES_SETVER_CMDS)
@@ -216,7 +225,7 @@
else ifeq ($(KBUILD_TARGET),netbsd)
TEMPLATE_VBoxR3Exe_TOOL = GXX3
TEMPLATE_VBoxR3Exe_LATE_LIBS = pthread
-@@ -6614,7 +6615,7 @@ else # the gcc guys
+@@ -6611,7 +6612,7 @@ else # the gcc guys
/usr/X11R7/lib
else ifeq ($(KBUILD_TARGET),solaris)
TEMPLATE_VBoxR3Exe_TOOL = GXX3PLAIN
@@ -225,7 +234,7 @@
if $(VBOX_GCC_VERSION_CC) < 30500
TEMPLATE_VBoxR3Exe_CFLAGS += -std=gnu99
endif
-@@ -6630,6 +6631,7 @@ else # the gcc guys
+@@ -6627,6 +6628,7 @@ else # the gcc guys
TEMPLATE_VBoxR3Exe_LDFLAGS += '$(VBOX_GCC_RPATH_OPT)$(VBOX_WITH_RELATIVE_RUNPATH)'
endif
ifdef VBOX_WITH_ORIGIN
@@ -233,7 +242,7 @@
TEMPLATE_VBoxR3Exe_LDFLAGS.linux += $(VBOX_GCC_ORIGIN_OPT)
endif
endif
-@@ -6868,7 +6870,7 @@ else
+@@ -6865,7 +6867,7 @@ else
ifdef VBOX_WITH_NOCRT_STATIC
TEMPLATE_VBoxR3StaticBase_DEFS += RT_WITH_NOCRT_WRAPPERS
endif
@@ -242,7 +251,7 @@
# The gcc guys sans darwin, linux and solaris (don't depend on statically compiled system libs there)
TEMPLATE_VBoxR3StaticBase_CFLAGS = $(TEMPLATE_VBoxR3Exe_CFLAGS) -static
TEMPLATE_VBoxR3StaticBase_CXXFLAGS = $(TEMPLATE_VBoxR3Exe_CXXFLAGS) -static
-@@ -6936,7 +6938,7 @@ else
+@@ -6933,7 +6935,7 @@ else
$(SDK_VBoxZlib_LATE_LIBS) \
$(SDK_VBoxLibLzma_LIBS)
if1of ($(KBUILD_TARGET), darwin freebsd)
@@ -251,7 +260,7 @@
else ifeq ($(KBUILD_TARGET),solaris)
TEMPLATE_VBoxR3Static_LATE_LIBS += kstat
endif
-@@ -7137,6 +7139,7 @@ else ifn1of ($(KBUILD_TARGET), os2)
+@@ -7134,6 +7136,7 @@ else ifn1of ($(KBUILD_TARGET), os2)
else ifn1of ($(KBUILD_TARGET), os2)
ifneq ($(KBUILD_TYPE),asan) # Keep RPATH in asan builds so we can find libasan.so.X and libubsan.so.Y.
TEMPLATE_VBoxR3HardenedExe_LDFLAGS = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_VBoxR3Exe_LDFLAGS))
@@ -259,7 +268,7 @@
TEMPLATE_VBoxR3HardenedExe_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_VBoxR3Exe_LDFLAGS.linux))
endif
endif
-@@ -7168,6 +7171,7 @@ ifn1of ($(KBUILD_TARGET), win os2)
+@@ -7166,6 +7169,7 @@ ifn1of ($(KBUILD_TARGET), win os2)
$(if-expr !defined(VBOX_WITHOUT_WINDOWS_KERNEL_CODE_SIGNING_CERT),-IntegrityCheck,)
ifn1of ($(KBUILD_TARGET), win os2)
TEMPLATE_VBoxR3HardenedTstDll_LDFLAGS = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_VBoxR3TstDll_LDFLAGS))
@@ -267,7 +276,7 @@
TEMPLATE_VBoxR3HardenedTstDll_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_VBoxR3TstDll_LDFLAGS.linux))
endif
-@@ -7192,6 +7196,7 @@ ifndef VBOX_WITH_HARDENING
+@@ -7190,6 +7194,7 @@ ifndef VBOX_WITH_HARDENING
TEMPLATE_VBoxR3SetUidToRoot_LDFLAGS += '$(VBOX_GCC_RPATH_OPT)$(VBOX_WITH_RELATIVE_RUNPATH)'
endif
ifdef VBOX_WITH_ORIGIN
@@ -275,7 +284,7 @@
TEMPLATE_VBoxR3SetUidToRoot_LDFLAGS.linux += $(VBOX_GCC_ORIGIN_OPT)
endif
endif
-@@ -7570,7 +7575,7 @@ else # the GCC guys:
+@@ -7567,7 +7572,7 @@ else # the GCC guys:
endif
TEMPLATE_VBoxMainExe_CXXFLAGS = -g $(VBOX_GCC_pipe) \
$(VBOX_GCC_PEDANTIC_CXX) $(VBOX_GCC_Wno-variadic-macros) $(VBOX_GCC_Wno-multistatement-macros) $(VBOX_GCC_Wno-class-memaccess) -Wshadow \
@@ -284,7 +293,7 @@
$(VBOX_GCC_fvisibility-inlines-hidden) $(VBOX_GCC_fvisibility-hidden) $(VBOX_GCC_std) $(VBOX_GCC_IPRT_FMT_CHECK) \
$(VBOX_GCC_SANITIZER_FLAGS)
if !defined("VBOX_GCC_Wno-delete-non-virtual-dtor") && defined("VBOX_GCC_Wno-non-virtual-dtor")
-@@ -7633,10 +7638,19 @@ else # the GCC guys:
+@@ -7630,10 +7635,19 @@ else # the GCC guys:
else ifeq ($(KBUILD_TARGET),haiku)
TEMPLATE_VBoxMainExe_TOOL = GXX3
TEMPLATE_VBoxMainExe_LATE_LIBS = $(LIB_RUNTIME) network stdc++ supc++
@@ -305,7 +314,7 @@
/usr/include \
/usr/X11R6/include \
/usr/local/include
-@@ -7668,6 +7682,7 @@ else # the GCC guys:
+@@ -7665,6 +7679,7 @@ else # the GCC guys:
TEMPLATE_VBoxMainExe_LDFLAGS += '$(VBOX_GCC_RPATH_OPT)$(VBOX_WITH_RELATIVE_RUNPATH)'
endif
ifdef VBOX_WITH_ORIGIN
@@ -313,7 +322,7 @@
TEMPLATE_VBoxMainExe_LDFLAGS.linux += $(VBOX_GCC_ORIGIN_OPT)
endif
-@@ -8352,14 +8367,13 @@ ifdef VBOX_WITH_QTGUI
+@@ -8350,14 +8365,13 @@ ifdef VBOX_WITH_QTGUI
TEMPLATE_VBoxQtGuiExe_LIBPATH += \
$(VBOX_LIBPATH_X11)
ifeq ($(KBUILD_TARGET),freebsd)
@@ -331,7 +340,7 @@
endif
ifeq ($(KBUILD_TARGET),solaris)
TEMPLATE_VBoxQtGuiExe_LDFLAGS.solaris = -Wl,-z,ignore # Same as VBOX_LD_as_needed.
-@@ -8623,7 +8637,7 @@ else
+@@ -8621,7 +8635,7 @@ else
TEMPLATE_VBoxBldProg_LATE_LIBS = pthread m rt dl
else ifeq ($(KBUILD_HOST),os2)
TEMPLATE_VBoxBldProg_TOOL = GXX3OMF
@@ -340,7 +349,7 @@
else ifeq ($(KBUILD_HOST),darwin)
TEMPLATE_VBoxBldProg_TOOL = $(VBOX_GCC_TOOL)
if "$(VBOX_DEF_MACOSX_VERSION_MIN)" == "10.7" || "$(VBOX_DARWIN_HOST_VERSION_MAJOR)" == "7"
-@@ -8663,13 +8677,20 @@ else
+@@ -8661,13 +8675,20 @@ else
TEMPLATE_VBoxBldProg_LATE_LIBS =
else ifeq ($(KBUILD_HOST),haiku)
TEMPLATE_VBoxBldProg_TOOL = GXX3
@@ -363,7 +372,7 @@
/usr/include \
/usr/X11R6/include \
/usr/local/include
-@@ -8716,11 +8737,11 @@ TEMPLATE_VBoxAdvBldProg_LATE_LIBS.darwin = \
+@@ -8714,11 +8735,11 @@ TEMPLATE_VBoxAdvBldProg_LATE_LIBS.darwin = \
$(TEMPLATE_VBoxBldProg_LATE_LIBS)
TEMPLATE_VBoxAdvBldProg_LATE_LIBS.darwin = \
$(TEMPLATE_VBoxAdvBldProg_LATE_LIBS) \
@@ -377,7 +386,7 @@
rt \
$(TEMPLATE_VBoxBldProg_LATE_LIBS.freebsd)
TEMPLATE_VBoxAdvBldProg_LATE_LIBS.linux = \
-@@ -8813,6 +8834,7 @@ else # the gcc guys
+@@ -8811,6 +8832,7 @@ else # the gcc guys
# Do not inherit sanitizer flags from VBoxR3Exe in guest executables. Deal with them separately.
TEMPLATE_VBoxGuestR3ExeBase_CXXFLAGS.debug = $(NO_SUCH_VARIABLE)
TEMPLATE_VBoxGuestR3ExeBase_CFLAGS.debug = $(NO_SUCH_VARIABLE)
@@ -385,7 +394,7 @@
TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LDFLAGS.linux))
TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS.debug = $(NO_SUCH_VARIABLE)
TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LDFLAGS))
-@@ -8836,7 +8858,7 @@ else if1of ($(KBUILD_TARGET), darwin freebsd openbsd)
+@@ -8834,7 +8856,7 @@ else if1of ($(KBUILD_TARGET), darwin freebsd openbsd)
ifeq ($(KBUILD_TARGET),linux) # As few libs as possible on linux.
TEMPLATE_VBoxGuestR3ExeBase_LATE_LIBS = pthread rt m dl
else if1of ($(KBUILD_TARGET), darwin freebsd openbsd)
@@ -394,7 +403,7 @@
else ifeq ($(KBUILD_TARGET),solaris)
TEMPLATE_VBoxGuestR3ExeBase_LATE_LIBS = $(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LATE_LIBS) nsl
endif
-@@ -8849,6 +8871,7 @@ TEMPLATE_VBoxGuestR3ExeBase_CFLAGS.linux = $(TEMP
+@@ -8847,6 +8869,7 @@ TEMPLATE_VBoxGuestR3ExeBase_CFLAGS.linux = $(TEMP
$(VBOX_GCC_fno-stack-protector)
TEMPLATE_VBoxGuestR3ExeBase_CFLAGS.linux = $(TEMPLATE_VBoxGuestR3ExeBase_CXXFLAGS.linux)
# The GNU_HASH ELF tag is not supported by older systems.
@@ -402,7 +411,7 @@
TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS.linux += $(VBOX_LD_hash_style_sysv)
-@@ -9085,6 +9108,7 @@ TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.$(KBUILD_TARGET
+@@ -9083,6 +9106,7 @@ TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.$(KBUILD_TARGET
TEMPLATE_VBoxGuestR3XFree86Mod_CXXFLAGS.linux = $(VBOX_GCC_fno-stack-protector) # Remove symvers.h
TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.$(KBUILD_TARGET) = $(NO_SUCH_VARIABLE)
# The GNU_HASH ELF tag is not supported by older glibc dynamic linkers.
@@ -410,7 +419,7 @@
TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.linux = $(subst -Wl$(COMMA),,$(VBOX_LD_hash_style_sysv))
TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.$(KBUILD_TYPE) = $(NO_SUCH_VARIABLE)
TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS := -r
-@@ -9128,7 +9152,7 @@ TEMPLATE_VBoxGuestR3XOrgMod_LATE_LIBS.$(KBUILD_TARGET)
+@@ -9126,7 +9150,7 @@ TEMPLATE_VBoxGuestR3XOrgMod_LATE_LIBS.$(KBUILD_TARGET)
TEMPLATE_VBoxGuestR3XOrgMod_LATE_LIBS = $(VBOX_LIB_VBGL_R3_XORG)
TEMPLATE_VBoxGuestR3XOrgMod_LATE_LIBS.$(KBUILD_TYPE) = $(NO_SUCH_VARIABLE)
TEMPLATE_VBoxGuestR3XOrgMod_LATE_LIBS.$(KBUILD_TARGET) = $(NO_SUCH_VARIABLE)
diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
index 90a799eef1db..2fda0de98007 100644
--- a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
+++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
@@ -1382,7 +1382,7 @@
+ int lkflags = cnp->cn_lkflags;
+ char *fullpath = NULL;
+
-+ *vpp = NULLVP;
++ *vpp = NULL;
+ error = ENOENT;
+ if (cnp->cn_flags & ISDOTDOT) {
+ error = vn_vget_ino_gen(dvp, vboxfs_vn_get_ino_alloc,
@@ -1392,7 +1392,7 @@
+ goto out;
+
+ } else if (cnp->cn_namelen == 1 && cnp->cn_nameptr[0] == '.') {
-+ VREF(dvp);
++ vref(dvp);
+ *vpp = dvp;
+ error = 0;
+ } else {
diff --git a/emulators/virtualbox-ose-legacy/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c b/emulators/virtualbox-ose-legacy/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
index 02fc514a9c14..6ae296b39748 100644
--- a/emulators/virtualbox-ose-legacy/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
+++ b/emulators/virtualbox-ose-legacy/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
@@ -1382,7 +1382,7 @@
+ int lkflags = cnp->cn_lkflags;
+ char *fullpath = NULL;
+
-+ *vpp = NULLVP;
++ *vpp = NULL;
+ error = ENOENT;
+ if (cnp->cn_flags & ISDOTDOT) {
+ error = vn_vget_ino_gen(dvp, vboxfs_vn_get_ino_alloc,
@@ -1392,7 +1392,7 @@
+ goto out;
+
+ } else if (cnp->cn_namelen == 1 && cnp->cn_nameptr[0] == '.') {
-+ VREF(dvp);
++ vref(dvp);
+ *vpp = dvp;
+ error = 0;
+ } else {
diff --git a/emulators/virtualbox-ose-nox11-70/Makefile b/emulators/virtualbox-ose-nox11-70/Makefile
index 8a6125129844..4b3abd505663 100644
--- a/emulators/virtualbox-ose-nox11-70/Makefile
+++ b/emulators/virtualbox-ose-nox11-70/Makefile
@@ -1,4 +1,4 @@
-PORTREVISION= 4
+PORTREVISION= 5
PKGNAMESUFFIX= -nox11-70
MASTERDIR= ${.CURDIR}/../virtualbox-ose-70
diff --git a/emulators/virtualbox-ose-nox11-71/Makefile b/emulators/virtualbox-ose-nox11-71/Makefile
index bd1a0035d424..66d0c82c9bc9 100644
--- a/emulators/virtualbox-ose-nox11-71/Makefile
+++ b/emulators/virtualbox-ose-nox11-71/Makefile
@@ -1,4 +1,4 @@
-PORTREVISION= 0
+PORTREVISION= 1
PKGNAMESUFFIX= -nox11-71
MASTERDIR= ${.CURDIR}/../virtualbox-ose-71
diff --git a/emulators/virtualbox-ose-nox11-72/Makefile b/emulators/virtualbox-ose-nox11-72/Makefile
index d415932ea096..bd2cd188d048 100644
--- a/emulators/virtualbox-ose-nox11-72/Makefile
+++ b/emulators/virtualbox-ose-nox11-72/Makefile
@@ -1,4 +1,4 @@
-PORTREVISION= 0
+PORTREVISION= 1
PKGNAMESUFFIX= -nox11-72
MASTERDIR= ${.CURDIR}/../virtualbox-ose-72
diff --git a/emulators/virtualbox-ose/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c b/emulators/virtualbox-ose/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
index edd43c7c03c7..1b0463711195 100644
--- a/emulators/virtualbox-ose/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
+++ b/emulators/virtualbox-ose/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c
@@ -1382,7 +1382,7 @@
+ int lkflags = cnp->cn_lkflags;
+ char *fullpath = NULL;
+
-+ *vpp = NULLVP;
++ *vpp = NULL;
+ error = ENOENT;
+ if (cnp->cn_flags & ISDOTDOT) {
+ error = vn_vget_ino_gen(dvp, vboxfs_vn_get_ino_alloc,
@@ -1392,7 +1392,7 @@
+ goto out;
+
+ } else if (cnp->cn_namelen == 1 && cnp->cn_nameptr[0] == '.') {
-+ VREF(dvp);
++ vref(dvp);
+ *vpp = dvp;
+ error = 0;
+ } else {
diff --git a/emulators/wine-devel/Makefile b/emulators/wine-devel/Makefile
index 60ff33bb3bcc..904dc99b83f7 100644
--- a/emulators/wine-devel/Makefile
+++ b/emulators/wine-devel/Makefile
@@ -1,5 +1,5 @@
PORTNAME= wine
-DISTVERSION= 10.15
+DISTVERSION= 10.16
PORTEPOCH= 1
CATEGORIES= emulators
MASTER_SITES= https://dl.winehq.org/wine/source/10.x/
diff --git a/emulators/wine-devel/distinfo b/emulators/wine-devel/distinfo
index 18fddc54f49b..16223d1de1f3 100644
--- a/emulators/wine-devel/distinfo
+++ b/emulators/wine-devel/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1757879331
-SHA256 (wine-10.15.tar.xz) = 307e21237c6e8bdea266f946d31f09ed27b1957df9a03516d8271fd13e1c261d
-SIZE (wine-10.15.tar.xz) = 32785484
+TIMESTAMP = 1759596682
+SHA256 (wine-10.16.tar.xz) = c5ed2742bff208c63b005bcfb91a2fc6cc49af6c6695bc8c0cf0fe6f4da60446
+SIZE (wine-10.16.tar.xz) = 32840688
diff --git a/emulators/wine-devel/files/patch-dlls_ntdll_unix_signal__i386.c b/emulators/wine-devel/files/patch-dlls_ntdll_unix_signal__i386.c
new file mode 100644
index 000000000000..bdabb53ea341
--- /dev/null
+++ b/emulators/wine-devel/files/patch-dlls_ntdll_unix_signal__i386.c
@@ -0,0 +1,11 @@
+--- dlls/ntdll/unix/signal_i386.c.orig 2025-10-03 21:01:38 UTC
++++ dlls/ntdll/unix/signal_i386.c
+@@ -827,7 +827,7 @@ static void fixup_frame_fpu_state( struct syscall_fram
+ if (FPUX_sig(sigcontext))
+ {
+ if (user_shared_data->ProcessorFeatures[PF_XMMI_INSTRUCTIONS_AVAILABLE])
+- frame->u.xsave = *FPUX_sig(sigcontext);
++ frame->u.xsave = *((XSAVE_FORMAT *) FPUX_sig(sigcontext));
+ else
+ fpux_to_fpu( &frame->u.fsave, FPUX_sig(sigcontext) );
+ frame->xstate.Mask = XSTATE_MASK_LEGACY;
diff --git a/emulators/wine-devel/pkg-plist b/emulators/wine-devel/pkg-plist
index b678d1b41818..9e0a8606ff60 100644
--- a/emulators/wine-devel/pkg-plist
+++ b/emulators/wine-devel/pkg-plist
@@ -2468,6 +2468,7 @@ lib/wine/%%WINEARCH%%-windows/rsaenh.dll
lib/wine/%%WINEARCH%%-windows/rstrtmgr.dll
lib/wine/%%WINEARCH%%-windows/rtutils.dll
lib/wine/%%WINEARCH%%-windows/rtworkq.dll
+lib/wine/%%WINEARCH%%-windows/runas.exe
%%WINE32%%lib/wine/%%WINEARCH%%-windows/rundll.exe16
lib/wine/%%WINEARCH%%-windows/rundll32.exe
lib/wine/%%WINEARCH%%-windows/samlib.dll
@@ -2876,6 +2877,16 @@ share/man/pl.UTF-8/man1/wine.1.gz
%%DATADIR%%/nls/normnfkd.nls
%%DATADIR%%/nls/sortdefault.nls
%%WINE64%%%%DATADIR%%/pkg32.sh
+%%DATADIR%%/winmd/windows.applicationmodel.winmd
+%%DATADIR%%/winmd/windows.globalization.winmd
+%%DATADIR%%/winmd/windows.graphics.winmd
+%%DATADIR%%/winmd/windows.media.winmd
+%%DATADIR%%/winmd/windows.networking.winmd
+%%DATADIR%%/winmd/windows.perception.winmd
+%%DATADIR%%/winmd/windows.storage.winmd
+%%DATADIR%%/winmd/windows.system.winmd
+%%DATADIR%%/winmd/windows.ui.winmd
+%%DATADIR%%/winmd/windows.ui.xaml.winmd
%%PORTDOCS%%%%DOCSDIR%%/ANNOUNCE.md
%%PORTDOCS%%%%DOCSDIR%%/AUTHORS
%%PORTDOCS%%%%DOCSDIR%%/README.md
diff --git a/emulators/z80pack/Makefile b/emulators/z80pack/Makefile
index 1bd347e60e5b..61ac011ca9d3 100644
--- a/emulators/z80pack/Makefile
+++ b/emulators/z80pack/Makefile
@@ -1,32 +1,23 @@
PORTNAME= z80pack
-DISTVERSION= 1.37
+DISTVERSION= 1.38
CATEGORIES= emulators
-MASTER_SITES= https://www.autometer.de/unix4fun/z80pack/ftp/
MAINTAINER= se@FreeBSD.org
COMMENT= Complete CP/M-80 emulator
-WWW= https://www.autometer.de/unix4fun/z80pack/
+WWW= https://www.icl1900.co.uk/unix4fun/z80pack/
CONFLICTS_INSTALL= hextools
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
-USES= tar:tgz
+USES= gl gmake jpeg
+USE_GL= gl glu
-OPTIONS_DEFINE= DOCS
+USE_GITHUB= yes
+GH_ACCOUNT= udo-munk
-do-build:
- ${MAKE} -C ${WRKSRC}/cpmsim/srcsim -f Makefile.bsd OPTFLAGS="${CFLAGS}" PREFIX=${PREFIX} all clean
- ${MAKE} -C ${WRKSRC}/cpmsim/srctools CC="${CC}" CFLAGS="${CFLAGS}"
-
-do-install:
-.for file in mkdskimg bin2hex send receive ptp2bin
- ${INSTALL_PROGRAM} ${WRKSRC}/cpmsim/srctools/${file} ${STAGEDIR}${PREFIX}/bin
-.endfor
- ${INSTALL_PROGRAM} ${WRKSRC}/cpmsim/cpmsim ${STAGEDIR}${PREFIX}/bin
- cd ${WRKSRC}/cpmsim/conf && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}
- cd ${WRKSRC}/cpmsim/disks/library && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}/disks
+OPTIONS_DEFINE= DOCS
do-install-DOCS-on:
cd ${WRKSRC}/doc && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}
diff --git a/emulators/z80pack/distinfo b/emulators/z80pack/distinfo
index 549e448cc1fc..b61e65f74b9c 100644
--- a/emulators/z80pack/distinfo
+++ b/emulators/z80pack/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1748766343
-SHA256 (z80pack-1.37.tgz) = 0a4d199c822546e28fb9d8e055b4bf7ca4c1b984b2f707f99d39f00b80c59d2a
-SIZE (z80pack-1.37.tgz) = 15674455
+TIMESTAMP = 1756888492
+SHA256 (udo-munk-z80pack-1.38_GH0.tar.gz) = dfed4f0c7721fb16f077aa33001962dde91548ae7ed56b1667218ec4baf5a6fc
+SIZE (udo-munk-z80pack-1.38_GH0.tar.gz) = 33151943
diff --git a/emulators/z80pack/files/patch-Makefile b/emulators/z80pack/files/patch-Makefile
new file mode 100644
index 000000000000..bc337c955163
--- /dev/null
+++ b/emulators/z80pack/files/patch-Makefile
@@ -0,0 +1,30 @@
+--- Makefile.orig 2024-06-01 14:02:02 UTC
++++ Makefile
+@@ -1,6 +1,6 @@ PACKAGE = z80pack
+ PACKAGE = z80pack
+-PREFIX = $(HOME)
+-#PREFIX = /usr/local
++#PREFIX = $(HOME)
++PREFIX = /usr/local
+ EXEC_PREFIX = $(PREFIX)
+ BINDIR = $(EXEC_PREFIX)/bin
+ DATAROOTDIR = $(PREFIX)/share
+@@ -109,12 +109,12 @@ install:
+ FORCE:
+
+ install:
+-# @set -e; for subdir in $(TOOLS) $(LIBS) $(BIOSES) $(MISC); do \
+-# $(MAKE) -C $$subdir "PREFIX=$(PREFIX)" install; \
+-# done
+-# @set -e; for subdir in $(MACHINES); do \
+-# $(MAKE) -C $$subdir/srcsim "PREFIX=$(PREFIX)" install; \
+-# done
++ @set -e; for subdir in $(TOOLS) $(LIBS) $(BIOSES) $(MISC); do \
++ $(MAKE) -C $$subdir "PREFIX=$(PREFIX)" install; \
++ done
++ @set -e; for subdir in $(MACHINES); do \
++ $(MAKE) -C $$subdir/srcsim "PREFIX=$(PREFIX)" install; \
++ done
+
+ uninstall:
+ # @set -e; for subdir in $(TOOLS) $(LIBS) $(BIOSES) $(MISC); do \
diff --git a/emulators/z80pack/files/patch-cpmsim_srcsim_Makefile b/emulators/z80pack/files/patch-cpmsim_srcsim_Makefile
new file mode 100644
index 000000000000..60d1a96a1a40
--- /dev/null
+++ b/emulators/z80pack/files/patch-cpmsim_srcsim_Makefile
@@ -0,0 +1,24 @@
+--- cpmsim/srcsim/Makefile.orig 2024-06-01 14:02:02 UTC
++++ cpmsim/srcsim/Makefile
+@@ -13,7 +13,7 @@ CPROG = $(MACHINE)sim
+ # http://www.gnu.org/prep/standards/html_node/Directory-Variables.html
+ PACKAGE = z80pack
+ CPROG = $(MACHINE)sim
+-PREFIX ?= /usr/local
++PREFIX = /usr/local
+ EXEC_PREFIX = $(PREFIX)
+ BINDIR = $(EXEC_PREFIX)/bin
+ DATAROOTDIR = $(PREFIX)/share
+@@ -103,8 +103,10 @@ install: $(SIM)
+ build: _rm_obj all
+
+ install: $(SIM)
+-# $(INSTALL) -d $(DESTDIR)$(BINDIR)
+-# $(INSTALL_PROGRAM) -s $(SIM) $(DESTDIR)$(BINDIR)
++ $(INSTALL) -d $(DESTDIR)$(BINDIR)
++ $(INSTALL_PROGRAM) -s $(SIM) $(DESTDIR)$(BINDIR)
++ $(INSTALL) -d $(DESTDIR)$(DISKS_DIR)
++ $(INSTALL_PROGRAM) ../disks/library/*.dsk $(DESTDIR)$(DISKS_DIR)
+
+ uninstall:
+ # rm -f $(DESTDIR)$(BINDIR)/$(CPROG)
diff --git a/emulators/z80pack/files/patch-cpmsim_srcsim_Makefile.bsd b/emulators/z80pack/files/patch-cpmsim_srcsim_Makefile.bsd
deleted file mode 100644
index a34be0654a9d..000000000000
--- a/emulators/z80pack/files/patch-cpmsim_srcsim_Makefile.bsd
+++ /dev/null
@@ -1,23 +0,0 @@
---- cpmsim/srcsim/Makefile.bsd.orig 2021-01-06 16:07:39 UTC
-+++ cpmsim/srcsim/Makefile.bsd
-@@ -1,8 +1,8 @@
- # system wide location for machines configuration files
--CONF=/usr/local/share/cpmsim/conf
-+CONF=${PREFIX}/share/z80pack/conf
-
- # system wide location for disk images
--DISKS=/usr/local/share/cpmsim/disks
-+DISKS=${PREFIX}/share/z80pack/disks
-
- CC = cc
-
-@@ -10,7 +10,8 @@ CC = cc
- #CFLAGS = -O3 -c -Wall -Wextra -Wno-self-assign -fstack-protector-all -D_FORTIFY_SOURCE=2 -DCONFDIR=\"${CONF}\" -DDISKSDIR=\"${DISKS}\"
-
- # Production
--CFLAGS = -O3 -c -Wall -Wextra -Wno-self-assign -U_FORTIFY_SOURCE -DCONFDIR=\"${CONF}\" -DDISKSDIR=\"${DISKS}\"
-+#CFLAGS = -O3 -c -Wall -Wextra -Wno-self-assign -U_FORTIFY_SOURCE -DCONFDIR=\"${CONF}\" -DDISKSDIR=\"${DISKS}\"
-+CFLAGS = ${OPTFLAGS} -c -Wall -Wextra -Wno-self-assign -U_FORTIFY_SOURCE -DCONFDIR=\"${CONF}\" -DDISKSDIR=\"${DISKS}\"
-
- LFLAGS =
-
diff --git a/emulators/z80pack/files/patch-cpmsim_srctools_Makefile b/emulators/z80pack/files/patch-cpmsim_srctools_Makefile
deleted file mode 100644
index 1d2a75a3e83a..000000000000
--- a/emulators/z80pack/files/patch-cpmsim_srctools_Makefile
+++ /dev/null
@@ -1,30 +0,0 @@
---- cpmsim/srctools/Makefile.orig 2021-01-06 16:07:39 UTC
-+++ cpmsim/srctools/Makefile
-@@ -1,19 +1,19 @@
- #
- # some places where the tools usually are installed
- #
--INSTALLDIR=${HOME}/bin
-+#INSTALLDIR=${HOME}/bin
- #INSTALLDIR=/usr/local/bin
-
- #CC = cc
--CC = gcc
-+#CC = gcc
-
--CFLAGS= -O3 -Wall
-+#CFLAGS= -O3 -Wall
-
--all: test mkdskimg bin2hex send receive ptp2bin
-- @echo
-- @echo "Done."
-- @echo "Now run make install"
-- @echo
-+all: mkdskimg bin2hex send receive ptp2bin
-+# @echo
-+# @echo "Done."
-+# @echo "Now run make install"
-+# @echo
-
- test:
- @test -d ${INSTALLDIR} || (echo "${INSTALLDIR} doesn't exist, fix INSTALLDIR"; exit 1)
diff --git a/emulators/z80pack/pkg-plist b/emulators/z80pack/pkg-plist
index 08d2b5e53f95..d678e6b7d108 100644
--- a/emulators/z80pack/pkg-plist
+++ b/emulators/z80pack/pkg-plist
@@ -1,30 +1,39 @@
bin/bin2hex
+bin/cpmrecv
+bin/cpmsend
bin/cpmsim
bin/mkdskimg
bin/ptp2bin
-bin/receive
-bin/send
+bin/z80asm
%%PORTDOCS%%%%DOCSDIR%%/CREDITS
%%PORTDOCS%%%%DOCSDIR%%/FrontPanel_User_Manual_2.0.pdf
%%PORTDOCS%%%%DOCSDIR%%/README-asm.txt
%%PORTDOCS%%%%DOCSDIR%%/README-cpm.txt
%%PORTDOCS%%%%DOCSDIR%%/README-frontpanel.txt
+%%PORTDOCS%%%%DOCSDIR%%/README-ice.txt
+%%PORTDOCS%%%%DOCSDIR%%/README-osx.txt
+%%PORTDOCS%%%%DOCSDIR%%/README-pico.txt
+%%PORTDOCS%%%%DOCSDIR%%/README-wsl.txt
+%%PORTDOCS%%%%DOCSDIR%%/picoboard1.jpg
+%%PORTDOCS%%%%DOCSDIR%%/picoboard2.jpg
+%%PORTDOCS%%%%DOCSDIR%%/picoboard3.jpg
%%PORTDOCS%%%%DOCSDIR%%/z80-documented.pdf
-%%DATADIR%%/disks/cpm13.dsk
-%%DATADIR%%/disks/cpm14.dsk
-%%DATADIR%%/disks/cpm1975.dsk
-%%DATADIR%%/disks/cpm2-1.dsk
-%%DATADIR%%/disks/cpm2-2.dsk
-%%DATADIR%%/disks/cpm2-62khd.dsk
-%%DATADIR%%/disks/cpm3-1.dsk
-%%DATADIR%%/disks/cpm3-2.dsk
-%%DATADIR%%/disks/cpm3-8080-1.dsk
-%%DATADIR%%/disks/cpm3-8080-2.dsk
-%%DATADIR%%/disks/hd-tools.dsk
-%%DATADIR%%/disks/hd-toolsrc.dsk
-%%DATADIR%%/disks/i8080tests.dsk
-%%DATADIR%%/disks/mpm-1.dsk
-%%DATADIR%%/disks/mpm-2.dsk
-%%DATADIR%%/disks/z80tests.dsk
-%%DATADIR%%/net_client.conf.example
-%%DATADIR%%/net_server.conf.example
+%%DATADIR%%/cpmsim/disks/cpm13.dsk
+%%DATADIR%%/cpmsim/disks/cpm14.dsk
+%%DATADIR%%/cpmsim/disks/cpm1975.dsk
+%%DATADIR%%/cpmsim/disks/cpm22-1.dsk
+%%DATADIR%%/cpmsim/disks/cpm22-2.dsk
+%%DATADIR%%/cpmsim/disks/cpm22-62khd.dsk
+%%DATADIR%%/cpmsim/disks/cpm3-1.dsk
+%%DATADIR%%/cpmsim/disks/cpm3-2.dsk
+%%DATADIR%%/cpmsim/disks/cpm3-8080-1.dsk
+%%DATADIR%%/cpmsim/disks/cpm3-8080-2.dsk
+%%DATADIR%%/cpmsim/disks/hd-tools.dsk
+%%DATADIR%%/cpmsim/disks/hd-toolsrc.dsk
+%%DATADIR%%/cpmsim/disks/i8080tests.dsk
+%%DATADIR%%/cpmsim/disks/mpm-1.dsk
+%%DATADIR%%/cpmsim/disks/mpm-2.dsk
+%%DATADIR%%/cpmsim/disks/ucsd-iv-1.dsk
+%%DATADIR%%/cpmsim/disks/ucsd-iv-2.dsk
+%%DATADIR%%/cpmsim/disks/ucsd-iv-interp.dsk
+%%DATADIR%%/cpmsim/disks/z80tests.dsk