diff options
Diffstat (limited to 'emulators')
99 files changed, 1636 insertions, 539 deletions
diff --git a/emulators/86Box/Makefile b/emulators/86Box/Makefile index 09e35b8a4d42..b9d9eb97d46d 100644 --- a/emulators/86Box/Makefile +++ b/emulators/86Box/Makefile @@ -1,6 +1,6 @@  PORTNAME=	86Box  DISTVERSIONPREFIX=	v -DISTVERSION=	5.1 +DISTVERSION=	5.2  CATEGORIES=	emulators  MAINTAINER=	tiga@FreeBSD.org diff --git a/emulators/86Box/distinfo b/emulators/86Box/distinfo index 2af26efb0b3d..ca8e7d02684b 100644 --- a/emulators/86Box/distinfo +++ b/emulators/86Box/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1759866999 -SHA256 (86Box-86Box-v5.1_GH0.tar.gz) = 942e9a2c8c8db3545eddf47854e8ac7585512060f41dbd7bb67b810f537b5eaa -SIZE (86Box-86Box-v5.1_GH0.tar.gz) = 13904013 +TIMESTAMP = 1761772842 +SHA256 (86Box-86Box-v5.2_GH0.tar.gz) = 0cdc51993563f88c1b586429207f004cdb08917887008d6b224d3cc2779559a3 +SIZE (86Box-86Box-v5.2_GH0.tar.gz) = 13933308 diff --git a/emulators/Makefile b/emulators/Makefile index dc3ed992a512..dfd04a82b365 100644 --- a/emulators/Makefile +++ b/emulators/Makefile @@ -17,8 +17,6 @@      SUBDIR += catapult      SUBDIR += cemu      SUBDIR += cingb -    SUBDIR += citra -    SUBDIR += citra-qt5      SUBDIR += cpmtools      SUBDIR += cpmtools2      SUBDIR += darcnes @@ -161,8 +159,14 @@      SUBDIR += virtualbox-ose-71      SUBDIR += virtualbox-ose-72      SUBDIR += virtualbox-ose-additions +    SUBDIR += virtualbox-ose-additions-70 +    SUBDIR += virtualbox-ose-additions-71 +    SUBDIR += virtualbox-ose-additions-72      SUBDIR += virtualbox-ose-additions-legacy      SUBDIR += virtualbox-ose-additions-nox11 +    SUBDIR += virtualbox-ose-additions-nox11-70 +    SUBDIR += virtualbox-ose-additions-nox11-71 +    SUBDIR += virtualbox-ose-additions-nox11-72      SUBDIR += virtualbox-ose-additions-nox11-legacy      SUBDIR += virtualbox-ose-kmod      SUBDIR += virtualbox-ose-kmod-70 diff --git a/emulators/adamem/Makefile b/emulators/adamem/Makefile index edb52404816e..efec258bfcad 100644 --- a/emulators/adamem/Makefile +++ b/emulators/adamem/Makefile @@ -9,10 +9,6 @@ MAINTAINER=	ports@FreeBSD.org  COMMENT=	Portable Coleco ADAM and ColecoVision emulator  WWW=		https://www.komkon.org/~dekogel/adamem.html -BROKEN_aarch64=		fails to build: regparm is not valid on this platform -BROKEN_armv6=		fails to build: regparm is not valid on this platform -BROKEN_armv7=		fails to build: regparm is not valid on this platform -  NO_WRKSUBDIR=	yes  USES=		xorg  USE_XORG=	sm x11 xau xext xfixes xi xrandr diff --git a/emulators/citra-qt5/Makefile b/emulators/citra-qt5/Makefile deleted file mode 100644 index b8bf5b627550..000000000000 --- a/emulators/citra-qt5/Makefile +++ /dev/null @@ -1,8 +0,0 @@ -PORTREVISION=	2 -PKGNAMESUFFIX=	-qt5 - -MASTERDIR=	${.CURDIR}/../citra - -OPTIONS_SLAVE=	QT5 - -.include "${MASTERDIR}/Makefile" diff --git a/emulators/citra/Makefile b/emulators/citra/Makefile deleted file mode 100644 index 56bae20fca16..000000000000 --- a/emulators/citra/Makefile +++ /dev/null @@ -1,112 +0,0 @@ -PORTNAME=	citra -PORTVERSION=	s20220902 -PORTREVISION?=	4 -CATEGORIES=	emulators -.if make(makesum) -MASTER_SITES=	https://api.citra-emu.org/gamedb/?dummy=/:gamedb -.else -MASTER_SITES=	LOCAL/jbeich:gamedb -.endif -DISTFILES=	${PORTNAME}-${DISTVERSIONFULL}/compatibility_list.json:gamedb -EXTRACT_ONLY=	${DISTFILES:N*\:gamedb:C/\:.*//} - -MAINTAINER=	ports@FreeBSD.org -COMMENT=	Nintendo 3DS emulator/debugger -WWW=		https://citra-emu.org - -LICENSE=	BSD2CLAUSE BSD3CLAUSE BSL GPLv2+ ISCL LGPL21+ MIT OpenSSL UNLICENSE -LICENSE_COMB=	multi -LICENSE_FILE_BSD2CLAUSE=${WRKSRC}/externals/fmt/LICENSE.rst -LICENSE_FILE_BSD3CLAUSE=${WRKSRC}/externals/inih/inih/LICENSE.txt -LICENSE_FILE_BSL=	${WRKSRC}/externals/catch/LICENSE.txt -LICENSE_FILE_GPLv2+ =	${WRKSRC}/license.txt -LICENSE_FILE_ISCL=	${WRKSRC}/externals/cubeb/LICENSE -LICENSE_FILE_LGPL21+ =	${_LICENSE_STORE}/LGPL21 # soundtouch -LICENSE_FILE_MIT=	${WRKSRC}/externals/enet/LICENSE -LICENSE_FILE_OpenSSL=	${WRKSRC}/externals/libressl/COPYING - -DEPRECATED=	project has been discontinued and build fails with FFmpeg >7 -EXPIRATION_DATE=	2025-10-31 -BROKEN_aarch64=	https://github.com/citra-emu/citra/issues/5921 - -BUILD_DEPENDS=	boost-libs>0:devel/boost-libs - -USE_GITHUB=	yes -GH_ACCOUNT=	citra-emu -GH_TAGNAME=	746609f35 -GH_TUPLE=	citra-emu:ext-boost:36603a1:boost/externals/boost \ -		citra-emu:ext-libressl-portable:8929f81:libressl/externals/libressl \ -		citra-emu:ext-soundtouch:060181e:soundtouch/externals/soundtouch \ -		MerryMage:dynarmic:r3-223-g9f88f234:dynarmic/externals/dynarmic \ -		arsenm:sanitizers-cmake:aab6948:sanitizers_cmake/externals/cubeb/cmake/sanitizers-cmake \ -		arun11299:cpp-jwt:v1.4-14-ge12ef06:cpp_jwt/externals/cpp-jwt \ -		benhoyt:inih:r52:inih/externals/inih/inih \ -		catchorg:Catch2:v2.13.7:catch/externals/catch \ -		facebook:zstd:v1.4.8:zstd/externals/zstd \ -		fmtlib:fmt:7.1.2:fmt/externals/fmt \ -		herumi:xbyak:v5.96:xbyak/externals/xbyak \ -		kinetiknz:cubeb:cubeb-0.2-1350-gf79e0cf:cubeb/externals/cubeb \ -		lsalzman:enet:v1.3.17-8-g498b9e3:enet/externals/enet \ -		lvandeve:lodepng:31d9704:lodepng/externals/lodepng/lodepng \ -		neobrain:nihstro:fd69de1:nihstro/externals/nihstro \ -		weidai11:cryptopp:CRYPTOPP_8_5_0:cryptopp/externals/cryptopp/cryptopp \ -		wwylele:teakra:01db7cd:teakra/externals/teakra - -USES=		cmake:testing compiler:c++17-lang localbase:ldflags sdl -USE_SDL=	sdl2 -CMAKE_ON=	USE_SYSTEM_BOOST Boost_USE_STATIC_LIBS -LDFLAGS+=	-Wl,--as-needed # Qt5Network - -OPTIONS_DEFINE=	ALSA FFMPEG PULSEAUDIO JACK SNDIO -OPTIONS_DEFAULT=FFMPEG PULSEAUDIO JACK SNDIO -OPTIONS_MULTI=	GUI -OPTIONS_MULTI_GUI=	QT5 SDL -OPTIONS_SLAVE?=	SDL -OPTIONS_EXCLUDE:=	${OPTIONS_MULTI_GUI} - -ALSA_BUILD_DEPENDS=	alsa-lib>0:audio/alsa-lib -ALSA_CMAKE_BOOL=	USE_ALSA - -FFMPEG_LIB_DEPENDS=	libavcodec.so:multimedia/ffmpeg -FFMPEG_CMAKE_BOOL=	ENABLE_FFMPEG_AUDIO_DECODER ENABLE_FFMPEG_VIDEO_DUMPER - -JACK_BUILD_DEPENDS=	jackit>0:audio/jack -JACK_CMAKE_BOOL=	USE_JACK - -PULSEAUDIO_BUILD_DEPENDS=pulseaudio>0:audio/pulseaudio -PULSEAUDIO_CMAKE_BOOL=	USE_PULSE - -SNDIO_BUILD_DEPENDS=	sndio>0:audio/sndio -SNDIO_CMAKE_BOOL=	USE_SNDIO - -SDL_CMAKE_BOOL=	ENABLE_SDL2 -SDL_PLIST_FILES=bin/${PORTNAME} \ -		bin/${PORTNAME}-room \ -		share/man/man6/${PORTNAME}.6.gz - -QT5_USES=	desktop-file-utils qt:5 shared-mime-info -QT5_USE=	QT=qmake:build,buildtools:build,linguisttools:build,concurrent:build,core,gui,multimedia,widgets -QT5_CMAKE_BOOL=	ENABLE_QT ENABLE_QT_TRANSLATION -QT5_PLIST_FILES=bin/${PORTNAME}-qt \ -		"@comment bin/${PORTNAME}-room" \ -		share/applications/${PORTNAME}.desktop \ -		share/icons/hicolor/scalable/apps/${PORTNAME}.svg \ -		share/man/man6/${PORTNAME}-qt.6.gz \ -		share/mime/packages/${PORTNAME}.xml - -.include <bsd.port.pre.mk> - -post-patch: -	@${REINPLACE_CMD} -e 's/@GIT_BRANCH@/master/' \ -		-e 's/@GIT_DESC@/${GH_TAGNAME}/' \ -		${WRKSRC}/src/common/scm_rev.cpp.in -.if ${COMPILER_TYPE} == clang -	@${REINPLACE_CMD} -e 's|std::unary_function|std::__unary_function|' \ -		${WRKSRC}/externals/boost/boost/container_hash/hash.hpp -.endif - -post-configure: -	@${CP} ${DISTFILES:M*\:gamedb:C/\:.*//:S,^,${DISTDIR}/,} \ -		${BUILD_WRKSRC}/dist/compatibility_list/ - -.include <bsd.port.post.mk> diff --git a/emulators/citra/distinfo b/emulators/citra/distinfo deleted file mode 100644 index 28eaf6147024..000000000000 --- a/emulators/citra/distinfo +++ /dev/null @@ -1,39 +0,0 @@ -TIMESTAMP = 1662057466 -SHA256 (citra-s20220902/compatibility_list.json) = 6e5225698694423c3b033820f8377b64f1107fe75d64c3bef98c629f07be546d -SIZE (citra-s20220902/compatibility_list.json) = 327573 -SHA256 (citra-emu-citra-s20220902-746609f35_GH0.tar.gz) = 00fa01f1daa46ff4371ba72b4f7bbf8f27a64185cf0958b1c766c65d833ba38a -SIZE (citra-emu-citra-s20220902-746609f35_GH0.tar.gz) = 7582369 -SHA256 (citra-emu-ext-boost-36603a1_GH0.tar.gz) = a1885cf0f7b1c790f8a83e963fec591bad1232e6b824e64d8db136920ec1b67d -SIZE (citra-emu-ext-boost-36603a1_GH0.tar.gz) = 2351603 -SHA256 (citra-emu-ext-libressl-portable-8929f81_GH0.tar.gz) = 90b580a6ce6686dfdc16528c9c3b50468540d955456f096652317a333e21a160 -SIZE (citra-emu-ext-libressl-portable-8929f81_GH0.tar.gz) = 2370673 -SHA256 (citra-emu-ext-soundtouch-060181e_GH0.tar.gz) = a593ab188e4feaeef8376c27b554cc413986efc777c195e44c6d3d223de9a63c -SIZE (citra-emu-ext-soundtouch-060181e_GH0.tar.gz) = 59514 -SHA256 (MerryMage-dynarmic-r3-223-g9f88f234_GH0.tar.gz) = cf2fedd00d689ae118bdb76680d2621ea7b4db5d67a5d9a1910eac35e3f848d4 -SIZE (MerryMage-dynarmic-r3-223-g9f88f234_GH0.tar.gz) = 1709689 -SHA256 (arsenm-sanitizers-cmake-aab6948_GH0.tar.gz) = d9009e17948aff769a6f6e16b52d4d8752c5cc2cab1e9c381d3a31fd1a680b58 -SIZE (arsenm-sanitizers-cmake-aab6948_GH0.tar.gz) = 7240 -SHA256 (arun11299-cpp-jwt-v1.4-14-ge12ef06_GH0.tar.gz) = 0409fa5413800fb291251cf3142e07a43fd4064996fee0e793323d3a74dd33b8 -SIZE (arun11299-cpp-jwt-v1.4-14-ge12ef06_GH0.tar.gz) = 1246634 -SHA256 (benhoyt-inih-r52_GH0.tar.gz) = 439cff9ce9a8afc52d08772ac3e93b3cecd79c7707f871fb4534fb3a48201880 -SIZE (benhoyt-inih-r52_GH0.tar.gz) = 16808 -SHA256 (catchorg-Catch2-v2.13.7_GH0.tar.gz) = 3cdb4138a072e4c0290034fe22d9f0a80d3bcfb8d7a8a5c49ad75d3a5da24fae -SIZE (catchorg-Catch2-v2.13.7_GH0.tar.gz) = 661014 -SHA256 (facebook-zstd-v1.4.8_GH0.tar.gz) = f176f0626cb797022fbf257c3c644d71c1c747bb74c32201f9203654da35e9fa -SIZE (facebook-zstd-v1.4.8_GH0.tar.gz) = 1816546 -SHA256 (fmtlib-fmt-7.1.2_GH0.tar.gz) = 4119a1c34dff91631e1d0a3707428f764f1ea22fe3cd5e70af5b4ccd5513831c -SIZE (fmtlib-fmt-7.1.2_GH0.tar.gz) = 769401 -SHA256 (herumi-xbyak-v5.96_GH0.tar.gz) = 727f15d3ed786cae255ebfed1829a84a357c0e4856c6304456d77f1b56c3d2c6 -SIZE (herumi-xbyak-v5.96_GH0.tar.gz) = 226999 -SHA256 (kinetiknz-cubeb-cubeb-0.2-1350-gf79e0cf_GH0.tar.gz) = 8629757290774a34ed3fcd53b6491e9ccc96231018406c58c493f336b3ced908 -SIZE (kinetiknz-cubeb-cubeb-0.2-1350-gf79e0cf_GH0.tar.gz) = 220847 -SHA256 (lsalzman-enet-v1.3.17-8-g498b9e3_GH0.tar.gz) = d8b51de11421bc38909977ece11e35bff656ef15a5838c218c87314d76e757a6 -SIZE (lsalzman-enet-v1.3.17-8-g498b9e3_GH0.tar.gz) = 79921 -SHA256 (lvandeve-lodepng-31d9704_GH0.tar.gz) = 86e140a13d1f425d45f891a082111435d3333385d36b66c94a031c029f4422c1 -SIZE (lvandeve-lodepng-31d9704_GH0.tar.gz) = 161881 -SHA256 (neobrain-nihstro-fd69de1_GH0.tar.gz) = cebeb307aad4b9fbc4d26eb54c01c90e118bc6287ab65688a50303a59272be5a -SIZE (neobrain-nihstro-fd69de1_GH0.tar.gz) = 110417 -SHA256 (weidai11-cryptopp-CRYPTOPP_8_5_0_GH0.tar.gz) = 8f64cf09cf4f61d5d74bca53574b8cc9959186cc0f072a2e6597e4999d6ad5db -SIZE (weidai11-cryptopp-CRYPTOPP_8_5_0_GH0.tar.gz) = 8998459 -SHA256 (wwylele-teakra-01db7cd_GH0.tar.gz) = 82f6c373ab0eacfcf376ab7270d5788177df7d79bd86bfa5a5eb6c66801c8c73 -SIZE (wwylele-teakra-01db7cd_GH0.tar.gz) = 983116 diff --git a/emulators/citra/files/patch-CMakeLists.txt b/emulators/citra/files/patch-CMakeLists.txt deleted file mode 100644 index 57c9d442a244..000000000000 --- a/emulators/citra/files/patch-CMakeLists.txt +++ /dev/null @@ -1,36 +0,0 @@ -citra-qt currently needs SDL for audio and input - ---- CMakeLists.txt.orig	2022-09-01 18:37:46 UTC -+++ CMakeLists.txt -@@ -71,7 +71,6 @@ endfunction() -         endif() -     endforeach() - endfunction() --check_submodules_present() -  - configure_file(${PROJECT_SOURCE_DIR}/dist/compatibility_list/compatibility_list.qrc -                ${PROJECT_BINARY_DIR}/dist/compatibility_list/compatibility_list.qrc -@@ -168,15 +167,15 @@ if (ENABLE_SDL2) -     else() -         find_package(SDL2 REQUIRED) -     endif() -- --    if (SDL2_FOUND) --        # TODO(yuriks): Make FindSDL2.cmake export an IMPORTED library instead --        add_library(SDL2 INTERFACE) --        target_link_libraries(SDL2 INTERFACE "${SDL2_LIBRARY}") --        target_include_directories(SDL2 INTERFACE "${SDL2_INCLUDE_DIR}") --    endif() - else() --    set(SDL2_FOUND NO) -+    find_package(SDL2) -+endif() -+ -+if (SDL2_FOUND) -+  # TODO(yuriks): Make FindSDL2.cmake export an IMPORTED library instead -+  add_library(SDL2 INTERFACE) -+  target_link_libraries(SDL2 INTERFACE "${SDL2_LIBRARY}") -+  target_include_directories(SDL2 INTERFACE "${SDL2_INCLUDE_DIR}") - endif() -  - if (ENABLE_QT) diff --git a/emulators/citra/files/patch-externals_teakra_src_test.h b/emulators/citra/files/patch-externals_teakra_src_test.h deleted file mode 100644 index 96ceb0b0b4af..000000000000 --- a/emulators/citra/files/patch-externals_teakra_src_test.h +++ /dev/null @@ -1,13 +0,0 @@ -https://github.com/wwylele/teakra/pull/35 - ---- externals/teakra/src/test.h.orig	2018-12-21 16:34:51 UTC -+++ externals/teakra/src/test.h -@@ -31,7 +31,7 @@ static_assert(std::is_trivially_copyable_v<State>); -  - struct TestCase { -     State before, after; --    u16 opcode, expand; -+    u16 opcode, expand, unused; - }; -  - static_assert(sizeof(TestCase) == 4312); diff --git a/emulators/citra/files/patch-src_input__common_udp_client.cpp b/emulators/citra/files/patch-src_input__common_udp_client.cpp deleted file mode 100644 index 111f6bc85c46..000000000000 --- a/emulators/citra/files/patch-src_input__common_udp_client.cpp +++ /dev/null @@ -1,11 +0,0 @@ ---- src/input_common/udp/client.cpp.orig	2025-02-16 22:55:21 UTC -+++ src/input_common/udp/client.cpp -@@ -109,7 +109,7 @@ class Socket { (private) -     } -  -     SocketCallback callback; --    boost::asio::io_service io_service; -+    boost::asio::io_context io_service; -     boost::asio::basic_waitable_timer<clock> timer; -     udp::socket socket; -  diff --git a/emulators/citra/pkg-descr b/emulators/citra/pkg-descr deleted file mode 100644 index 945b12a62228..000000000000 --- a/emulators/citra/pkg-descr +++ /dev/null @@ -1,8 +0,0 @@ -Citra is an experimental open-source Nintendo 3DS emulator/debugger -written in C++. It is written with portability in mind, with builds -actively maintained for Windows, Linux and OS X. Citra only emulates a -subset of 3DS hardware, and therefore is generally only useful for -running/debugging homebrew applications. At this time, Citra is even -able to boot several commercial games! Most of these do not run to a -playable state, but we are working every day to advance the project -forward. diff --git a/emulators/dolphin-emu/Makefile b/emulators/dolphin-emu/Makefile index ccf8ae0eb0a5..5e356d848235 100644 --- a/emulators/dolphin-emu/Makefile +++ b/emulators/dolphin-emu/Makefile @@ -1,5 +1,6 @@  PORTNAME=	dolphin-emu  PORTVERSION=	2509 +PORTREVISION=	1  CATEGORIES=	emulators  MAINTAINER=	martymac@FreeBSD.org diff --git a/emulators/flycast/Makefile b/emulators/flycast/Makefile index 770d580c03ca..d6efc271a1a4 100644 --- a/emulators/flycast/Makefile +++ b/emulators/flycast/Makefile @@ -1,7 +1,7 @@  PORTNAME=	flycast  DISTVERSIONPREFIX=	v  DISTVERSION=	2.5 -PORTREVISION=	5 +PORTREVISION=	6  CATEGORIES=	emulators  MAINTAINER=	bsdcode@disroot.org diff --git a/emulators/libc6-shim/Makefile b/emulators/libc6-shim/Makefile index f405dbf7db77..fd4e553e7902 100644 --- a/emulators/libc6-shim/Makefile +++ b/emulators/libc6-shim/Makefile @@ -1,5 +1,5 @@  PORTNAME=	libc6-shim -DISTVERSION=	20250323 +DISTVERSION=	20251025  CATEGORIES=	emulators  MAINTAINER=	iwtcex@gmail.com diff --git a/emulators/libc6-shim/distinfo b/emulators/libc6-shim/distinfo index 9ab2fdd543a9..4cfa23a50348 100644 --- a/emulators/libc6-shim/distinfo +++ b/emulators/libc6-shim/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1742733124 -SHA256 (shkhln-libc6-shim-20250323_GH0.tar.gz) = 600f0b25ae419f79e6a663dbc22e74d2c10f142e770044ff4744d8b04922e5fa -SIZE (shkhln-libc6-shim-20250323_GH0.tar.gz) = 105087 +TIMESTAMP = 1761432145 +SHA256 (shkhln-libc6-shim-20251025_GH0.tar.gz) = ca83120384be7af526d63aafddaf617d7bb3c63da957950536740aa2c0d38ab3 +SIZE (shkhln-libc6-shim-20251025_GH0.tar.gz) = 105640 diff --git a/emulators/nemu/Makefile b/emulators/nemu/Makefile index e8a4917abe13..6f70ad0dfaa7 100644 --- a/emulators/nemu/Makefile +++ b/emulators/nemu/Makefile @@ -1,7 +1,6 @@  PORTNAME=	nemu  DISTVERSIONPREFIX=	v -DISTVERSION=	3.3.1 -PORTREVISION=	1 +DISTVERSION=	3.4.0  CATEGORIES=	emulators  MAINTAINER=	arrowd@FreeBSD.org diff --git a/emulators/nemu/distinfo b/emulators/nemu/distinfo index 2165ecd2478c..1434b692581d 100644 --- a/emulators/nemu/distinfo +++ b/emulators/nemu/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1709378812 -SHA256 (nemuTUI-nemu-v3.3.1_GH0.tar.gz) = 7cdb27cbf5df1957d0f0a258fc334f15d9e2d06a450a982bb796094efc3960c0 -SIZE (nemuTUI-nemu-v3.3.1_GH0.tar.gz) = 174868 +TIMESTAMP = 1761325528 +SHA256 (nemuTUI-nemu-v3.4.0_GH0.tar.gz) = e272b3e80623f8aef66c3ecb5e2d8846ac89b2514a4bbb5026e74f51c1a5ef42 +SIZE (nemuTUI-nemu-v3.4.0_GH0.tar.gz) = 177146 diff --git a/emulators/nestopia/Makefile b/emulators/nestopia/Makefile index 64dfc49d3821..99d97a1d7a45 100644 --- a/emulators/nestopia/Makefile +++ b/emulators/nestopia/Makefile @@ -1,5 +1,5 @@  PORTNAME=	nestopia -DISTVERSION=	1.53.1 +DISTVERSION=	1.53.2  CATEGORIES=	emulators  MAINTAINER=	mclay@astate.edu @@ -18,14 +18,15 @@ LIB_DEPENDS=	libepoxy.so:graphics/libepoxy \  		libsamplerate.so:audio/libsamplerate  USES=		autoreconf gl gnome jpeg libarchive \ -		localbase:ldflags pkgconfig sdl +		localbase:ldflags pkgconfig sdl xorg  USE_CXXSTD=	c++17  USE_GITHUB=	yes  GH_ACCOUNT=	0ldsk00l -GNU_CONFIGURE=	yes  USE_GL=		gl glu  USE_SDL=	sdl2 -USE_XORG=	xrender xcursor xfixes xext xft xinerama x11 +USE_XORG=	x11 xcursor xext xfixes xft xinerama xrender + +GNU_CONFIGURE=	yes  OPTIONS_DEFINE=	DOCS JACK diff --git a/emulators/nestopia/distinfo b/emulators/nestopia/distinfo index b846fbdcf39b..045ff911d53c 100644 --- a/emulators/nestopia/distinfo +++ b/emulators/nestopia/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1742944821 -SHA256 (0ldsk00l-nestopia-1.53.1_GH0.tar.gz) = 21aa45f6c608fe290d73fdec0e6f362538a975455b16a4cc54bcdd10962fff3e -SIZE (0ldsk00l-nestopia-1.53.1_GH0.tar.gz) = 1704326 +TIMESTAMP = 1756411038 +SHA256 (0ldsk00l-nestopia-1.53.2_GH0.tar.gz) = 7783d2673ad496109e7dd3d75756cfef30c5b400409131b83b45c2fa3ddd735b +SIZE (0ldsk00l-nestopia-1.53.2_GH0.tar.gz) = 1709367 diff --git a/emulators/pcsx2/Makefile b/emulators/pcsx2/Makefile index 4affe0e991ad..2a27df254f49 100644 --- a/emulators/pcsx2/Makefile +++ b/emulators/pcsx2/Makefile @@ -1,6 +1,5 @@  PORTNAME=	pcsx2 -PORTVERSION=	2.3.439 -PORTREVISION=	3 +PORTVERSION=	2.4.0  DISTVERSIONPREFIX=	v  CATEGORIES=	emulators @@ -75,6 +74,9 @@ CMAKE_ARGS+=	\  OPTIONS_DEFINE=	DOCS  PORTDOCS=	Debugger.pdf GameIndex.pdf +# Stable releases use an even minor number +PORTSCOUT=	limit:^v[0-9]+.[02468]. +  # - Program and resources are copied from target dir ${CONFIGURE_WRKSRC}/bin  #   because only necessary resources are installed there (e.g. no dx11 stuff)  do-install: diff --git a/emulators/pcsx2/distinfo b/emulators/pcsx2/distinfo index 742e5ac06800..fc07e9b05e9d 100644 --- a/emulators/pcsx2/distinfo +++ b/emulators/pcsx2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1750709445 -SHA256 (pcsx2-pcsx2-v2.3.439_GH0.tar.gz) = ed75141b426964a63b87b19ddfdd7b3659d3652254de4e694eea1784cf3ace3f -SIZE (pcsx2-pcsx2-v2.3.439_GH0.tar.gz) = 19851256 +TIMESTAMP = 1760465569 +SHA256 (pcsx2-pcsx2-v2.4.0_GH0.tar.gz) = b18f0f4c28e482e7f88c5f428bd445fd511facabbb426dfd72d55ee904cc74c1 +SIZE (pcsx2-pcsx2-v2.4.0_GH0.tar.gz) = 20096340 diff --git a/emulators/ppsspp/Makefile b/emulators/ppsspp/Makefile index 18747dd52b1d..532d819af086 100644 --- a/emulators/ppsspp/Makefile +++ b/emulators/ppsspp/Makefile @@ -1,6 +1,7 @@  PORTNAME=	ppsspp  DISTVERSIONPREFIX=	v  DISTVERSION?=	1.19.3 +PORTREVISION=	1  CATEGORIES=	emulators  MAINTAINER=	kreinholz@gmail.com diff --git a/emulators/qemu/Makefile b/emulators/qemu/Makefile index 8b17f9d78b8c..0b56ac96479a 100644 --- a/emulators/qemu/Makefile +++ b/emulators/qemu/Makefile @@ -1,5 +1,5 @@  PORTNAME=	qemu -DISTVERSION=	10.1.1 +DISTVERSION=	10.1.2  CATEGORIES=	emulators  MASTER_SITES=	https://download.qemu.org/  DIST_SUBDIR=	qemu/${PORTVERSION} diff --git a/emulators/qemu/distinfo b/emulators/qemu/distinfo index b3187660634d..5e2a252aab2a 100644 --- a/emulators/qemu/distinfo +++ b/emulators/qemu/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1760114122 -SHA256 (qemu/10.1.1/qemu-10.1.1.tar.xz) = e56b93d95953a9b6a64d1985dbcedfb07dc54d92c50b7912526693536c589923 -SIZE (qemu/10.1.1/qemu-10.1.1.tar.xz) = 142046220 +TIMESTAMP = 1761563277 +SHA256 (qemu/10.1.2/qemu-10.1.2.tar.xz) = 9d75f331c1a5cb9b6eb8fd9f64f563ec2eab346c822cb97f8b35cd82d3f11479 +SIZE (qemu/10.1.2/qemu-10.1.2.tar.xz) = 142050300 diff --git a/emulators/rpcs3/Makefile b/emulators/rpcs3/Makefile index 1ddffd7839de..0aeae0be30c0 100644 --- a/emulators/rpcs3/Makefile +++ b/emulators/rpcs3/Makefile @@ -1,6 +1,7 @@  PORTNAME=	rpcs3  DISTVERSIONPREFIX=	v  DISTVERSION=	0.0.38 # git rev-list --count HEAD +PORTREVISION=	1  DISTVERSIONSUFFIX=	-18170-g23b339d410  CATEGORIES=	emulators wayland diff --git a/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c b/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c index e790f372f95f..5ac0dc7e17c8 100644 --- a/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c +++ b/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c @@ -1,5 +1,5 @@ ---- src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c.orig	2022-10-06 19:03:06.000000000 +0200 -+++ src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c	2024-12-26 15:28:38.066230000 +0100 +--- src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c.orig	2025-04-11 12:02:54 UTC ++++ src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c  @@ -55,6 +55,7 @@   #include <sys/uio.h>   #include <sys/bus.h> @@ -16,7 +16,7 @@   #include <iprt/initterm.h>   #include <iprt/process.h>   #include <iprt/string.h> -@@ -112,8 +114,6 @@ +@@ -112,8 +114,6 @@ struct VBoxGuestDeviceState       struct resource   *pIrqRes;       /** Pointer to the IRQ handler. */       void              *pfnIrqHandler; @@ -25,7 +25,7 @@   }; -@@ -123,8 +123,7 @@ +@@ -123,8 +123,7 @@ struct VBoxGuestDeviceState   /*    * Character device file handlers.    */ @@ -35,7 +35,7 @@   static d_ioctl_t  vgdrvFreeBSDIOCtl;   static int        vgdrvFreeBSDIOCtlSlow(PVBOXGUESTSESSION pSession, u_long ulCmd, caddr_t pvData, struct thread *pTd);   static d_write_t  vgdrvFreeBSDWrite; -@@ -155,8 +154,7 @@ +@@ -155,8 +154,7 @@ static struct cdevsw    g_vgdrvFreeBSDChrDevSW =   {       .d_version =        D_VERSION,       .d_flags =          D_TRACKCLOSE | D_NEEDMINOR, @@ -45,7 +45,7 @@       .d_ioctl =          vgdrvFreeBSDIOCtl,       .d_read =           vgdrvFreeBSDRead,       .d_write =          vgdrvFreeBSDWrite, -@@ -164,81 +162,28 @@ +@@ -164,81 +162,28 @@ static struct cdevsw    g_vgdrvFreeBSDChrDevSW =       .d_name =           "vboxguest"   }; @@ -134,7 +134,7 @@   {       int                 rc;       PVBOXGUESTSESSION   pSession; -@@ -250,12 +195,6 @@ +@@ -250,12 +195,6 @@ static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOp       LogFlow(("vgdrvFreeBSDOpen:\n"));       /* @@ -147,7 +147,7 @@        * Create a new session.        */       fRequestor = VMMDEV_REQUESTOR_USERMODE | VMMDEV_REQUESTOR_TRUST_NOT_GIVEN; -@@ -272,47 +211,20 @@ +@@ -272,14 +211,13 @@ static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOp       rc = VGDrvCommonCreateUserSession(&g_DevExt, fRequestor, &pSession);       if (RT_SUCCESS(rc))       { @@ -168,10 +168,10 @@       }       LogRel(("vgdrvFreeBSDOpen: failed. rc=%d\n", rc)); -     return RTErrConvertToErrno(rc); +@@ -287,33 +225,6 @@ static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOp   } --/** + /**  - * File close handler  - *  - */ @@ -179,7 +179,7 @@  -{  -    PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)pDev->si_drv1;  -    Log(("vgdrvFreeBSDClose: fFile=%#x pSession=%p\n", fFile, pSession)); -  +-  -    /*  -     * Close the session if it's still hanging on to the device...  -     */ @@ -198,10 +198,11 @@  -}  -  - - /** +-/**    * I/O control request.    * -@@ -326,8 +238,12 @@ +  * @returns depends... +@@ -326,8 +237,12 @@ static int vgdrvFreeBSDIOCtl(struct cdev *pDev, u_long   static int vgdrvFreeBSDIOCtl(struct cdev *pDev, u_long ulCmd, caddr_t pvData, int fFile, struct thread *pTd)   {       PVBOXGUESTSESSION pSession; @@ -215,20 +216,25 @@       /*        * Deal with the fast ioctl path first.        */ -@@ -526,8 +442,10 @@ +@@ -522,12 +437,14 @@ static int vgdrvFreeBSDPoll(struct cdev *pDev, int fEv +  + static int vgdrvFreeBSDPoll(struct cdev *pDev, int fEvents, struct thread *td) + { +-    int fEventsProcessed; ++    PVBOXGUESTSESSION pSession; ++    int fEventsProcessed, rc;       LogFlow(("vgdrvFreeBSDPoll: fEvents=%d\n", fEvents));  -    PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)pDev->si_drv1;  -    if (RT_UNLIKELY(!RT_VALID_PTR(pSession))) { -+  +    rc = devfs_get_cdevpriv((void **)&pSession);  +    if (rc) -+      { ++    {           Log(("vgdrvFreeBSDPoll: no state data for %s\n", devtoname(pDev)));           return (fEvents & (POLLHUP|POLLIN|POLLRDNORM|POLLOUT|POLLWRNORM));       } -@@ -568,11 +486,8 @@ +@@ -568,11 +485,8 @@ static int vgdrvFreeBSDDetach(device_t pDevice)       /*        * Reverse what we did in vgdrvFreeBSDAttach.        */ @@ -241,7 +247,7 @@       vgdrvFreeBSDRemoveIRQ(pDevice, pState);       if (pState->pVMMDevMemRes) -@@ -737,18 +652,21 @@ +@@ -737,18 +651,21 @@ static int vgdrvFreeBSDAttach(device_t pDevice)                       VGDrvCommonProcessOptionsFromHost(&g_DevExt);                       /* @@ -269,7 +275,7 @@                       vgdrvFreeBSDRemoveIRQ(pDevice, pState);                   }                   else -@@ -792,8 +710,12 @@ +@@ -792,8 +709,12 @@ static driver_t vgdrvFreeBSDDriver =       sizeof(struct VBoxGuestDeviceState),   }; diff --git a/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile b/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile index 476346a59b13..37c1596cfe87 100644 --- a/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile +++ b/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile @@ -1,15 +1,17 @@ ---- src/VBox/Additions/common/VBoxGuest/freebsd/Makefile.orig	2019-04-16 10:09:09 UTC +--- src/VBox/Additions/common/VBoxGuest/freebsd/Makefile.orig	2025-10-16 14:25:29 UTC  +++ src/VBox/Additions/common/VBoxGuest/freebsd/Makefile -@@ -25,7 +25,7 @@ +@@ -34,9 +34,8 @@ KMOD = vboxguest + # SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0   #   KMOD = vboxguest -  --CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS  +CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_GUEST -DIN_GUEST_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS +-CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS +-   .if (${MACHINE_ARCH} == "i386")    CFLAGS += -DRT_ARCH_X86 -@@ -80,6 +80,7 @@ SRCS += \ + .elif (${MACHINE_ARCH} == "amd64") +@@ -91,6 +90,7 @@ SRCS += \   	handletable.c \   	handletablectx.c \   	once.c \ @@ -17,7 +19,7 @@   	thread.c   .PATH:	${.CURDIR}/common/string -@@ -147,6 +148,7 @@ SRCS += \ +@@ -163,6 +163,7 @@ SRCS += \   .PATH:	${.CURDIR}/r0drv   SRCS += \ @@ -25,3 +27,12 @@   	alloc-r0drv.c \   	initterm-r0drv.c \   	memobj-r0drv.c \ +@@ -196,7 +197,7 @@ SRCS += \ + SRCS += \ + 	log-vbox.c \ + 	logbackdoor.c \ +-	RTLogWriteVmm-amd64-x86. ++	RTLogWriteVmm-amd64-x86.c +  + .include <bsd.kmod.mk> +  diff --git a/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk index 270472c045e3..796aecabac8f 100644 --- a/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk +++ b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk @@ -1,4 +1,4 @@ ---- src/VBox/Additions/freebsd/mount_vboxvfs/Makefile.kmk.orig	2025-05-11 03:54:13 UTC +--- src/VBox/Additions/freebsd/mount_vboxvfs/Makefile.kmk.orig	2025-10-24 13:49:31 UTC  +++ src/VBox/Additions/freebsd/mount_vboxvfs/Makefile.kmk  @@ -0,0 +1,28 @@  +# $Id: Makefile.kmk $ @@ -18,7 +18,7 @@  +CFLAGS+=-I$(MOUNT)  +  +PROGRAMS                += mount_vboxvfs -+mount_vboxvfs_TEMPLATE    = NewVBoxGuestR3Exe ++mount_vboxvfs_TEMPLATE    = VBoxGuestR3Exe  +mount_vboxvfs_SOURCES     = mount_vboxvfs.c  +  +ifdef HAVE_MNTOPTS_IN_LIBUTIL diff --git a/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_vboxvfs_Makefile.kmk b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_vboxvfs_Makefile.kmk new file mode 100644 index 000000000000..679778e60181 --- /dev/null +++ b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_vboxvfs_Makefile.kmk @@ -0,0 +1,50 @@ +--- src/VBox/Additions/freebsd/vboxvfs/Makefile.kmk.orig	2025-10-22 19:18:12 UTC ++++ src/VBox/Additions/freebsd/vboxvfs/Makefile.kmk +@@ -43,32 +43,37 @@ vboxvfs_SOURCES       = \ + 	$(vboxvfs_0_OUTDIR) + vboxvfs_SOURCES       = \ + 	vboxvfs_vfsops.c \ +-	vboxvfs_vnops.c ++	bcmp.c \ ++	vboxvfs_vnops.c \ ++	vboxvfs_prov.c + vboxvfs_LIBS          = \ + 	$(VBOX_LIB_VBGL_R0) \ + 	$(VBOX_LIB_IPRT_GUEST_R0) + vboxvfs_DEPS          = \ +-	$$(vboxvfs_0_OUTDIR)/vnode_if.h \ +-	$$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h \ +-	$$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h ++	$(vboxvfs_0_OUTDIR)/vnode_if.h \ ++	$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h \ ++	$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h + vboxvfs_CLEAN        += $(vboxvfs_DEPS) +  + VBOX_AWK := /usr/bin/awk +  +-$$(vboxvfs_0_OUTDIR)/vnode_if.h: $(VBOX_FREEBSD_SRC)/kern/vnode_if.src ++$$(vboxvfs_0_OUTDIR): ++	$(QUIET)$(MKDIR) -p $(vboxvfs_0_OUTDIR) ++ ++$$(vboxvfs_0_OUTDIR)/vnode_if.h: $$(vboxvfs_0_OUTDIR) $(VBOX_FREEBSD_SRC)/kern/vnode_if.src + 	$(call MSG_TOOL,awk,VBoxGuest,$<,$@) + 	$(QUIET)$(VBOX_AWK) -f $(VBOX_FREEBSD_SRC)/tools/vnode_if.awk $(VBOX_FREEBSD_SRC)/kern/vnode_if.src -h +-	$(QUIET)$(MV) $(vboxvfs_0_OUTDIR)/vnode_if.h $(vboxvfs_0_OUTDIR)/vnode_if.h ++	$(QUIET)$(MV) vnode_if.h $(vboxvfs_0_OUTDIR)/vnode_if.h +  +-$$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h: $(VBOX_FREEBSD_SRC)/kern/vnode_if.src ++$$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h: $$(vboxvfs_0_OUTDIR) $(VBOX_FREEBSD_SRC)/kern/vnode_if.src + 	$(call MSG_TOOL,awk,VBoxGuest,$<,$@) + 	$(QUIET)$(VBOX_AWK) -f $(VBOX_FREEBSD_SRC)/tools/vnode_if.awk $(VBOX_FREEBSD_SRC)/kern/vnode_if.src -p +-	$(QUIET)$(MV) $(vboxvfs_0_OUTDIR)/vnode_if_newproto.h $(vboxvfs_0_OUTDIR)/vnode_if_newproto.h ++	$(QUIET)$(MV) vnode_if_newproto.h $(vboxvfs_0_OUTDIR)/vnode_if_newproto.h +  +-$$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h: $(VBOX_FREEBSD_SRC)/kern/vnode_if.src ++$$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h: $$(vboxvfs_0_OUTDIR) $(VBOX_FREEBSD_SRC)/kern/vnode_if.src + 	$(call MSG_TOOL,awk,VBoxGuest,$<,$@) + 	$(QUIET)$(VBOX_AWK) -f $(VBOX_FREEBSD_SRC)/tools/vnode_if.awk $(VBOX_FREEBSD_SRC)/kern/vnode_if.src -q +-	$(QUIET)$(MV) $(vboxvfs_0_OUTDIR)/vnode_if_typedef.h $(vboxvfs_0_OUTDIR)/vnode_if_typedef.h ++	$(QUIET)$(MV) vnode_if_typedef.h $(vboxvfs_0_OUTDIR)/vnode_if_typedef.h +  + include $(FILE_KBUILD_SUB_FOOTER) +  diff --git a/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk index afb19c804d7a..2d0377fb3e40 100644 --- a/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk +++ b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk @@ -1,6 +1,6 @@ ---- src/VBox/Additions/x11/vboxmouse/Makefile.kmk.orig	2019-01-25 18:24:30 UTC +--- src/VBox/Additions/x11/vboxmouse/Makefile.kmk.orig	2025-10-16 14:25:37 UTC  +++ src/VBox/Additions/x11/vboxmouse/Makefile.kmk -@@ -227,10 +227,22 @@ endif # neq ($(KBUILD_TARGET),linux) +@@ -237,10 +237,22 @@ ifdef VBOX_USE_SYSTEM_XORG_HEADERS   ifdef VBOX_USE_SYSTEM_XORG_HEADERS @@ -10,7 +10,7 @@  - SYSMODS := $(filter-out vboxmouse_drv%,$(SYSMODS))  + ifeq ($(KBUILD_TARGET),freebsd)  +  DLLS += vboxmouse_drv_system -+  vboxmouse_drv_system_TEMPLATE = VBOXGUESTR3XORGMOD ++  vboxmouse_drv_system_TEMPLATE = VBoxGuestR3XOrgMod  +  vboxmouse_drv_system_DEFS := $(vboxmouse_drv_70_DEFS) NO_ANSIC  +  vboxmouse_drv_system_INCS := \  +	/usr/local/include/pixman-1 \ diff --git a/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_x11_vboxvideo_Makefile.kmk b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_x11_vboxvideo_Makefile.kmk new file mode 100644 index 000000000000..38ef1ac68f9e --- /dev/null +++ b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_x11_vboxvideo_Makefile.kmk @@ -0,0 +1,15 @@ +--- src/VBox/Additions/x11/vboxvideo/Makefile.kmk.orig	2025-10-22 19:22:45 UTC ++++ src/VBox/Additions/x11/vboxvideo/Makefile.kmk +@@ -415,9 +415,10 @@ ifdef VBOX_USE_SYSTEM_XORG_HEADERS +  vboxvideo_drv_system_INCS += \ +  	$(PATH_ROOT)/src/VBox/Runtime/include \ +  	$(VBOX_GRAPHICS_INCS) \ +- 	/usr/include/xorg \ +- 	/usr/include/pixman-1 ++ 	/usr/local/include/xorg \ ++ 	/usr/local/include/pixman-1 +  vboxvideo_drv_system_SOURCES := $(vboxvideo_drv_17_SOURCES) ++ vboxvideo_drv_system_LIBS += $(vboxvideo_drv_70_LIBS) + endif +  +  diff --git a/emulators/virtualbox-ose-70/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c b/emulators/virtualbox-ose-70/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c index cbdcb490764f..86e5984d6b82 100644 --- a/emulators/virtualbox-ose-70/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c +++ b/emulators/virtualbox-ose-70/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c @@ -11,16 +11,26 @@       switch (pMemFreeBSD->Core.enmType)       { -@@ -155,8 +157,6 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +@@ -155,9 +157,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)           case RTR0MEMOBJTYPE_LOCK:           {  -            vm_map_t pMap = kernel_map;  - -             if (pMemFreeBSD->Core.u.Lock.R0Process != NIL_RTR0PROCESS) +-            if (pMemFreeBSD->Core.u.Lock.R0Process != NIL_RTR0PROCESS) ++            if (pMemFreeBSD->Core.u.Lock.R0Process != NIL_RTR0PROCESS) {                   pMap = &((struct proc *)pMemFreeBSD->Core.u.Lock.R0Process)->p_vmspace->vm_map; -@@ -197,6 +197,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +             rc = vm_map_unwire(pMap, +@@ -165,6 +165,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +                                (vm_offset_t)pMemFreeBSD->Core.pv + pMemFreeBSD->Core.cb, +                                VM_MAP_WIRE_SYSTEM | VM_MAP_WIRE_NOHOLES); +             AssertMsg(rc == KERN_SUCCESS, ("%#x", rc)); ++	   } +             break; +         } +  +@@ -197,6 +198,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)           case RTR0MEMOBJTYPE_PHYS_NC:           {               VM_OBJECT_WLOCK(pMemFreeBSD->pObject); @@ -28,7 +38,7 @@               vm_page_t pPage = vm_page_find_least(pMemFreeBSD->pObject, 0);   #if __FreeBSD_version < 1000000               vm_page_lock_queues(); -@@ -210,6 +211,14 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +@@ -210,6 +212,14 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)   #if __FreeBSD_version < 1000000               vm_page_unlock_queues();   #endif @@ -43,7 +53,7 @@               VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject);               vm_object_deallocate(pMemFreeBSD->pObject);               break; -@@ -220,6 +229,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +@@ -220,6 +230,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)               return VERR_INTERNAL_ERROR;       } @@ -51,7 +61,7 @@       return VINF_SUCCESS;   } -@@ -329,7 +339,8 @@ static int rtR0MemObjFreeBSDAllocHelper(PRTR0MEMOBJFRE +@@ -329,7 +340,8 @@ static int rtR0MemObjFreeBSDAllocHelper(PRTR0MEMOBJFRE       size_t      cPages = atop(pMemFreeBSD->Core.cb);       int         rc; @@ -61,7 +71,7 @@       /* No additional object reference for auto-deallocation upon unmapping. */   #if __FreeBSD_version >= 1000055 -@@ -371,6 +382,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ +@@ -371,6 +383,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ   DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable, const char *pszTag)   { @@ -69,7 +79,7 @@       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_PAGE,                                                                          NULL, cb, pszTag);       if (pMemFreeBSD) -@@ -380,8 +392,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ +@@ -380,8 +393,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ               *ppMem = &pMemFreeBSD->Core;           else               rtR0MemObjDelete(&pMemFreeBSD->Core); @@ -80,7 +90,7 @@       return VERR_NO_MEMORY;   } -@@ -395,6 +409,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI +@@ -395,6 +410,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI   DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable, const char *pszTag)   { @@ -88,7 +98,7 @@       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_LOW, NULL, cb, pszTag);       if (pMemFreeBSD)       { -@@ -403,14 +418,17 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI +@@ -403,14 +419,17 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI               *ppMem = &pMemFreeBSD->Core;           else               rtR0MemObjDelete(&pMemFreeBSD->Core); @@ -106,7 +116,7 @@       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_CONT,                                                                          NULL, cb, pszTag);       if (pMemFreeBSD) -@@ -423,8 +441,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJ +@@ -423,8 +442,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJ           }           else               rtR0MemObjDelete(&pMemFreeBSD->Core); @@ -117,7 +127,7 @@       return VERR_NO_MEMORY;   } -@@ -432,6 +452,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -432,6 +453,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB   static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJTYPE enmType, size_t cb,  RTHCPHYS PhysHighest,                                              size_t uAlignment, bool fContiguous, int rcNoMem, const char *pszTag)   { @@ -125,7 +135,7 @@       /* create the object. */       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), enmType, NULL, cb, pszTag);       if (pMemFreeBSD) -@@ -439,7 +460,8 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -439,7 +461,8 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB           vm_paddr_t const VmPhysAddrHigh = PhysHighest != NIL_RTHCPHYS ? PhysHighest : ~(vm_paddr_t)0;           u_long const     cPages         = atop(cb); @@ -135,7 +145,7 @@           int rc = rtR0MemObjFreeBSDPhysAllocHelper(pMemFreeBSD->pObject, cPages, VmPhysAddrHigh,                                                     uAlignment, fContiguous, true, rcNoMem); -@@ -449,7 +471,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -449,7 +472,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB               {                   Assert(enmType == RTR0MEMOBJTYPE_PHYS);                   VM_OBJECT_WLOCK(pMemFreeBSD->pObject); @@ -144,7 +154,7 @@                   VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject);                   pMemFreeBSD->Core.u.Phys.fAllocated = true;               } -@@ -462,8 +484,10 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -462,8 +485,10 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB               vm_object_deallocate(pMemFreeBSD->pObject);               rtR0MemObjDelete(&pMemFreeBSD->Core);           } @@ -155,7 +165,7 @@       return VERR_NO_MEMORY;   } -@@ -486,6 +510,7 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ +@@ -486,6 +511,7 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ                                             const char *pszTag)   {       AssertReturn(uCachePolicy == RTMEM_CACHE_POLICY_DONT_CARE, VERR_NOT_SUPPORTED); @@ -163,7 +173,7 @@       /* create the object. */       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_PHYS, -@@ -497,8 +522,10 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ +@@ -497,8 +523,10 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ           pMemFreeBSD->Core.u.Phys.PhysBase = Phys;           pMemFreeBSD->Core.u.Phys.uCachePolicy = uCachePolicy;           *ppMem = &pMemFreeBSD->Core; @@ -174,7 +184,7 @@       return VERR_NO_MEMORY;   } -@@ -510,6 +537,7 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER +@@ -510,6 +538,7 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER                                        vm_offset_t AddrStart, size_t cb, uint32_t fAccess,                                        RTR0PROCESS R0Process, int fFlags, const char *pszTag)   { @@ -182,7 +192,7 @@       int rc;       NOREF(fAccess); -@@ -519,21 +547,28 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER +@@ -519,21 +548,28 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER       if (!pMemFreeBSD)           return VERR_NO_MEMORY; @@ -219,7 +229,7 @@       return VERR_NO_MEMORY;/** @todo fix mach -> vbox error conversion for freebsd. */   } -@@ -573,6 +608,7 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN +@@ -573,6 +609,7 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN   static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJINTERNAL ppMem, void *pvFixed, size_t cb, size_t uAlignment,                                           RTR0PROCESS R0Process, vm_map_t pMap, const char *pszTag)   { @@ -227,7 +237,7 @@       int rc;       /* -@@ -631,11 +667,13 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN +@@ -631,11 +668,13 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN           pMemFreeBSD->Core.pv = (void *)MapAddress;           pMemFreeBSD->Core.u.ResVirt.R0Process = R0Process;           *ppMem = &pMemFreeBSD->Core; @@ -241,7 +251,7 @@       return rc;   } -@@ -659,6 +697,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ +@@ -659,6 +698,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ   DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJ pMemToMap, void *pvFixed, size_t uAlignment,                                             unsigned fProt, size_t offSub, size_t cbSub, const char *pszTag)   { @@ -250,7 +260,7 @@   //  AssertMsgReturn(!offSub && !cbSub, ("%#x %#x\n", offSub, cbSub), VERR_NOT_SUPPORTED);       AssertMsgReturn(pvFixed == (void *)-1, ("%p\n", pvFixed), VERR_NOT_SUPPORTED); -@@ -713,6 +753,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ +@@ -713,6 +754,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ               Assert((vm_offset_t)pMemFreeBSD->Core.pv == Addr);               pMemFreeBSD->Core.u.Mapping.R0Process = NIL_RTR0PROCESS;               *ppMem = &pMemFreeBSD->Core; @@ -258,7 +268,7 @@               return VINF_SUCCESS;           }           rc = vm_map_remove(kernel_map, Addr, Addr + cbSub); -@@ -721,6 +762,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ +@@ -721,6 +763,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ       else           vm_object_deallocate(pMemToMapFreeBSD->pObject); @@ -266,7 +276,7 @@       return VERR_NO_MEMORY;   } -@@ -728,6 +770,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN +@@ -728,6 +771,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN   DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJ pMemToMap, RTR3PTR R3PtrFixed, size_t uAlignment,                                           unsigned fProt, RTR0PROCESS R0Process, size_t offSub, size_t cbSub, const char *pszTag)   { @@ -275,7 +285,7 @@       /*        * Check for unsupported stuff.        */ -@@ -785,44 +829,50 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN +@@ -785,44 +830,50 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN       if (rc == KERN_SUCCESS)       { @@ -330,7 +340,7 @@       if ((fProt & RTMEM_PROT_NONE) == RTMEM_PROT_NONE)           ProtectionFlags = VM_PROT_NONE; -@@ -833,7 +883,12 @@ DECLHIDDEN(int) rtR0MemObjNativeProtect(PRTR0MEMOBJINT +@@ -833,7 +884,12 @@ DECLHIDDEN(int) rtR0MemObjNativeProtect(PRTR0MEMOBJINT       if ((fProt & RTMEM_PROT_EXEC) == RTMEM_PROT_EXEC)           ProtectionFlags |= VM_PROT_EXECUTE; @@ -343,7 +353,7 @@       if (krc == KERN_SUCCESS)           return VINF_SUCCESS; -@@ -858,11 +913,19 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P +@@ -858,11 +914,19 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P               vm_offset_t pb = (vm_offset_t)pMemFreeBSD->Core.pv + ptoa(iPage); @@ -367,7 +377,7 @@           }           case RTR0MEMOBJTYPE_MAPPING: -@@ -871,11 +934,15 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P +@@ -871,11 +935,15 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P               if (pMemFreeBSD->Core.u.Mapping.R0Process != NIL_RTR0PROCESS)               { @@ -384,7 +394,7 @@               }               return vtophys(pb);           } -@@ -886,9 +953,11 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P +@@ -886,9 +954,11 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P           {               RTHCPHYS addr; diff --git a/emulators/virtualbox-ose-70/files/vboxinit.in b/emulators/virtualbox-ose-70/files/vboxinit.in index 9895da9e362e..9574d7d6295e 100644 --- a/emulators/virtualbox-ose-70/files/vboxinit.in +++ b/emulators/virtualbox-ose-70/files/vboxinit.in @@ -16,7 +16,7 @@  # vboxinit_stop (str):		Default stop cmd for VBoxManage controlvm.  #				(default: savestate)  # vboxinit_start_delay (int):	Default startup delay in seconds. -#				(default: 0) +#				(default: 1)  # vboxinit_stop_delay (int):	Default shutdown delay in seconds.  #				(default: 0)  # diff --git a/emulators/virtualbox-ose-71/Makefile b/emulators/virtualbox-ose-71/Makefile index 96cae3c24bef..f0ee8e8fe57e 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?=	1 +DISTVERSION=	7.1.14 +PORTREVISION?=	0  CATEGORIES=	emulators  MASTER_SITES=	https://download.virtualbox.org/virtualbox/${DISTVERSION}/:src \  		LOCAL/vvd:docs diff --git a/emulators/virtualbox-ose-71/distinfo b/emulators/virtualbox-ose-71/distinfo index e7b992b0b10c..c6cabfd397f1 100644 --- a/emulators/virtualbox-ose-71/distinfo +++ b/emulators/virtualbox-ose-71/distinfo @@ -1,7 +1,7 @@ -TIMESTAMP = 1752700000 -SHA256 (VirtualBox-7.1.12.tar.bz2) = 6f9618f39168898134975f51df7c2d6d5129c0aa82b6ae11cf47f920c70df276 -SIZE (VirtualBox-7.1.12.tar.bz2) = 214691769 -SHA256 (VirtualBox-docs-7.1.12.tar.bz2) = ba48f2da2593d8cae56fcf601c132d77dbf1d16b1e26db162c89449250c269bd -SIZE (VirtualBox-docs-7.1.12.tar.bz2) = 10109084 -SHA256 (VBoxGuestAdditions_7.1.12.iso) = 256883e2eabf7ab5c10fb3b6831c294942ce34bc615807f9d0cf6c3d2e882236 -SIZE (VBoxGuestAdditions_7.1.12.iso) = 61331456 +TIMESTAMP = 1761088888 +SHA256 (VirtualBox-7.1.14.tar.bz2) = 6a4eea884cd98049a5357133b718078d8aaae68047836a3f86cd5904336d6218 +SIZE (VirtualBox-7.1.14.tar.bz2) = 216819853 +SHA256 (VirtualBox-docs-7.1.14.tar.bz2) = f0b683626a41a8aad1054e6c215c2b0f917a87a200a661a1e1a142b051a8a778 +SIZE (VirtualBox-docs-7.1.14.tar.bz2) = 10110959 +SHA256 (VBoxGuestAdditions_7.1.14.iso) = 3c22ab6fe1acadf1ac522a6fb53984a8bd236862a490ab5cc9e0e3bcc521aae6 +SIZE (VBoxGuestAdditions_7.1.14.iso) = 61343744 diff --git a/emulators/virtualbox-ose-71/files/patch-configure b/emulators/virtualbox-ose-71/files/patch-configure index 3645d1236ea8..ce88f3f17087 100644 --- a/emulators/virtualbox-ose-71/files/patch-configure +++ b/emulators/virtualbox-ose-71/files/patch-configure @@ -1,6 +1,6 @@ ---- configure.orig	2025-04-14 17:41:37 UTC +--- configure.orig	2025-10-16 14:17:04 UTC  +++ configure -@@ -158,10 +158,14 @@ if [ "$OS" = "freebsd" ]; then +@@ -156,10 +156,14 @@ if [ "$OS" = "freebsd" ]; then   if [ "$OS" = "freebsd" ]; then     INCCURL="-I/usr/local/include"     LIBCURL="-L/usr/local/lib -lcurl" @@ -15,7 +15,7 @@   else     INCCURL=""     LIBCURL="-lcurl" -@@ -1211,6 +1215,9 @@ extern "C" int main(int argc, char** argv) +@@ -1179,6 +1183,9 @@ extern "C" int main(int argc, char** argv)     printf("found version %d.%d.%d",            SDL_MAJOR_VERSION, SDL_MINOR_VERSION, SDL_PATCHLEVEL);   #if SDL_VERSION_ATLEAST(1,2,7) @@ -25,7 +25,7 @@     printf(", OK.\n");     return 0;   #else -@@ -1295,7 +1302,7 @@ EOF +@@ -1263,7 +1270,7 @@ EOF   #endif   }   EOF @@ -34,7 +34,7 @@       test_execute     fi   } -@@ -1599,6 +1606,7 @@ EOF +@@ -1567,6 +1574,7 @@ EOF           SDKQT6=$PATH_SDK_QT6         fi         FLGQT6="-framework QtCore -std=c++17 -Wl,-rpath,`L_to_PATH "$LIBQT6"`" @@ -42,28 +42,7 @@       else         log_failure "Qt6 framework not found (can be disabled using --disable-qt)"         fail -@@ -1875,9 +1883,9 @@ check_libvorbis() -   if which_wrapper pkg-config > /dev/null; then -     libvorbis_ver=`pkg-config vorbis --modversion 2>> $LOG` -     if [ $? -eq 0 ]; then --      FLGVRB=`pkg-config vorbis --cflags` -+      FLGVRB=`pkg-config vorbis vorbisenc --cflags` -       INCVRB=`strip_I "$FLGVRB"` --      LIBVRB=`pkg-config vorbis --libs` -+      LIBVRB=`pkg-config vorbis vorbisenc --libs` -     fi -     cat > $ODIR.tmp_src.cc << EOF - #include <cstdio> -@@ -1927,7 +1935,7 @@ EOF -   return 0; - } - EOF --    [ -n "$INCOGG" ] && I_INCVRB=`prefix_I "$INCOGG"` -+    [ -n "$INCOGG" ] && I_INCOGG=`prefix_I "$INCOGG"` -     if test_compile "$LIBOGG $I_INCOGG" ogg ogg nofatal; then -       if test_execute; then -         cnf_append "SDK_VBoxLibOgg_INCS" "$INCOGG" -@@ -2194,8 +2202,8 @@ EOF +@@ -2133,8 +2141,8 @@ EOF           echo "compiling the following source file:" >> $LOG           cat $ODIR.tmp_src.cc >> $LOG           echo "using the following command line:" >> $LOG @@ -74,7 +53,7 @@           if [ $? -eq 0 ]; then             found=1             break -@@ -2311,7 +2319,7 @@ check_gsoap() +@@ -2250,7 +2258,7 @@ check_gsoap()           else             cnf_append "VBOX_GSOAP_CXX_SOURCES" ""           fi @@ -83,7 +62,7 @@           gsoap_version=`pkg-config gsoapssl++ --modversion`           log_success "found version $gsoap_version"           return -@@ -2687,7 +2695,7 @@ for option in "$@"; do +@@ -2624,7 +2632,7 @@ for option in "$@"; do       --with-openssl-dir=*)         OPENSSLDIR=`echo $option | cut -d'=' -f2`         INCCRYPTO="-I${OPENSSLDIR}/include" @@ -92,7 +71,7 @@         # On Darwin (at least for macports) static OpenSSL also needs zlib.         [ "$OS" = "darwin" ] && LIBCRYPTO="$LIBCRYPTO ${OPENSSLDIR}/lib/libz.a"         # On Linux static OpenSSL typically needs a few additional libraries. -@@ -3054,12 +3062,22 @@ if [ $ONLY_ADDITIONS -eq 0 ]; then +@@ -2988,12 +2996,22 @@ if [ $ONLY_ADDITIONS -eq 0 ]; then     [ $WITH_JAVA   -eq 1 ] && check_java     # PulseAudio @@ -121,7 +100,7 @@     fi   fi -@@ -3075,14 +3093,6 @@ if [ "$OS" = "linux" ]; then +@@ -3009,14 +3027,6 @@ if [ "$OS" = "linux" ]; then       cnf_append "VBOX_WITHOUT_LINUX_TEST_BUILDS" "1"     fi     if [ $ONLY_ADDITIONS -eq 0 ]; then diff --git a/emulators/virtualbox-ose-71/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c b/emulators/virtualbox-ose-71/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c index e790f372f95f..204f6525ba77 100644 --- a/emulators/virtualbox-ose-71/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c +++ b/emulators/virtualbox-ose-71/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c @@ -1,5 +1,5 @@ ---- src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c.orig	2022-10-06 19:03:06.000000000 +0200 -+++ src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c	2024-12-26 15:28:38.066230000 +0100 +--- src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c.orig	2025-10-16 14:25:28 UTC ++++ src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c  @@ -55,6 +55,7 @@   #include <sys/uio.h>   #include <sys/bus.h> @@ -16,7 +16,7 @@   #include <iprt/initterm.h>   #include <iprt/process.h>   #include <iprt/string.h> -@@ -112,8 +114,6 @@ +@@ -112,8 +114,6 @@ struct VBoxGuestDeviceState       struct resource   *pIrqRes;       /** Pointer to the IRQ handler. */       void              *pfnIrqHandler; @@ -25,7 +25,7 @@   }; -@@ -123,8 +123,7 @@ +@@ -123,8 +123,7 @@ struct VBoxGuestDeviceState   /*    * Character device file handlers.    */ @@ -35,7 +35,7 @@   static d_ioctl_t  vgdrvFreeBSDIOCtl;   static int        vgdrvFreeBSDIOCtlSlow(PVBOXGUESTSESSION pSession, u_long ulCmd, caddr_t pvData, struct thread *pTd);   static d_write_t  vgdrvFreeBSDWrite; -@@ -155,8 +154,7 @@ +@@ -155,8 +154,7 @@ static struct cdevsw    g_vgdrvFreeBSDChrDevSW =   {       .d_version =        D_VERSION,       .d_flags =          D_TRACKCLOSE | D_NEEDMINOR, @@ -45,7 +45,7 @@       .d_ioctl =          vgdrvFreeBSDIOCtl,       .d_read =           vgdrvFreeBSDRead,       .d_write =          vgdrvFreeBSDWrite, -@@ -164,81 +162,28 @@ +@@ -164,81 +162,28 @@ static struct cdevsw    g_vgdrvFreeBSDChrDevSW =       .d_name =           "vboxguest"   }; @@ -134,7 +134,7 @@   {       int                 rc;       PVBOXGUESTSESSION   pSession; -@@ -250,12 +195,6 @@ +@@ -250,12 +195,6 @@ static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOp       LogFlow(("vgdrvFreeBSDOpen:\n"));       /* @@ -147,7 +147,7 @@        * Create a new session.        */       fRequestor = VMMDEV_REQUESTOR_USERMODE | VMMDEV_REQUESTOR_TRUST_NOT_GIVEN; -@@ -272,47 +211,20 @@ +@@ -272,14 +211,13 @@ static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOp       rc = VGDrvCommonCreateUserSession(&g_DevExt, fRequestor, &pSession);       if (RT_SUCCESS(rc))       { @@ -168,10 +168,10 @@       }       LogRel(("vgdrvFreeBSDOpen: failed. rc=%d\n", rc)); -     return RTErrConvertToErrno(rc); +@@ -287,33 +225,6 @@ static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOp   } --/** + /**  - * File close handler  - *  - */ @@ -179,7 +179,7 @@  -{  -    PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)pDev->si_drv1;  -    Log(("vgdrvFreeBSDClose: fFile=%#x pSession=%p\n", fFile, pSession)); -  +-  -    /*  -     * Close the session if it's still hanging on to the device...  -     */ @@ -198,10 +198,11 @@  -}  -  - - /** +-/**    * I/O control request.    * -@@ -326,8 +238,12 @@ +  * @returns depends... +@@ -326,8 +237,12 @@ static int vgdrvFreeBSDIOCtl(struct cdev *pDev, u_long   static int vgdrvFreeBSDIOCtl(struct cdev *pDev, u_long ulCmd, caddr_t pvData, int fFile, struct thread *pTd)   {       PVBOXGUESTSESSION pSession; @@ -215,20 +216,25 @@       /*        * Deal with the fast ioctl path first.        */ -@@ -526,8 +442,10 @@ +@@ -522,12 +437,14 @@ static int vgdrvFreeBSDPoll(struct cdev *pDev, int fEv +  + static int vgdrvFreeBSDPoll(struct cdev *pDev, int fEvents, struct thread *td) + { +-    int fEventsProcessed; ++    PVBOXGUESTSESSION pSession; ++    int fEventsProcessed, rc;       LogFlow(("vgdrvFreeBSDPoll: fEvents=%d\n", fEvents));  -    PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)pDev->si_drv1;  -    if (RT_UNLIKELY(!RT_VALID_PTR(pSession))) { -+  +    rc = devfs_get_cdevpriv((void **)&pSession);  +    if (rc) -+      { ++    {           Log(("vgdrvFreeBSDPoll: no state data for %s\n", devtoname(pDev)));           return (fEvents & (POLLHUP|POLLIN|POLLRDNORM|POLLOUT|POLLWRNORM));       } -@@ -568,11 +486,8 @@ +@@ -568,11 +485,8 @@ static int vgdrvFreeBSDDetach(device_t pDevice)       /*        * Reverse what we did in vgdrvFreeBSDAttach.        */ @@ -241,7 +247,7 @@       vgdrvFreeBSDRemoveIRQ(pDevice, pState);       if (pState->pVMMDevMemRes) -@@ -737,18 +652,21 @@ +@@ -738,18 +652,21 @@ static int vgdrvFreeBSDAttach(device_t pDevice)                       VGDrvCommonProcessOptionsFromHost(&g_DevExt);                       /* @@ -269,7 +275,7 @@                       vgdrvFreeBSDRemoveIRQ(pDevice, pState);                   }                   else -@@ -792,8 +710,12 @@ +@@ -793,8 +710,12 @@ static driver_t vgdrvFreeBSDDriver =       sizeof(struct VBoxGuestDeviceState),   }; diff --git a/emulators/virtualbox-ose-71/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile b/emulators/virtualbox-ose-71/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile index 476346a59b13..37c1596cfe87 100644 --- a/emulators/virtualbox-ose-71/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile +++ b/emulators/virtualbox-ose-71/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile @@ -1,15 +1,17 @@ ---- src/VBox/Additions/common/VBoxGuest/freebsd/Makefile.orig	2019-04-16 10:09:09 UTC +--- src/VBox/Additions/common/VBoxGuest/freebsd/Makefile.orig	2025-10-16 14:25:29 UTC  +++ src/VBox/Additions/common/VBoxGuest/freebsd/Makefile -@@ -25,7 +25,7 @@ +@@ -34,9 +34,8 @@ KMOD = vboxguest + # SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0   #   KMOD = vboxguest -  --CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS  +CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_GUEST -DIN_GUEST_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS +-CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS +-   .if (${MACHINE_ARCH} == "i386")    CFLAGS += -DRT_ARCH_X86 -@@ -80,6 +80,7 @@ SRCS += \ + .elif (${MACHINE_ARCH} == "amd64") +@@ -91,6 +90,7 @@ SRCS += \   	handletable.c \   	handletablectx.c \   	once.c \ @@ -17,7 +19,7 @@   	thread.c   .PATH:	${.CURDIR}/common/string -@@ -147,6 +148,7 @@ SRCS += \ +@@ -163,6 +163,7 @@ SRCS += \   .PATH:	${.CURDIR}/r0drv   SRCS += \ @@ -25,3 +27,12 @@   	alloc-r0drv.c \   	initterm-r0drv.c \   	memobj-r0drv.c \ +@@ -196,7 +197,7 @@ SRCS += \ + SRCS += \ + 	log-vbox.c \ + 	logbackdoor.c \ +-	RTLogWriteVmm-amd64-x86. ++	RTLogWriteVmm-amd64-x86.c +  + .include <bsd.kmod.mk> +  diff --git a/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk b/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk index 270472c045e3..796aecabac8f 100644 --- a/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk +++ b/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk @@ -1,4 +1,4 @@ ---- src/VBox/Additions/freebsd/mount_vboxvfs/Makefile.kmk.orig	2025-05-11 03:54:13 UTC +--- src/VBox/Additions/freebsd/mount_vboxvfs/Makefile.kmk.orig	2025-10-24 13:49:31 UTC  +++ src/VBox/Additions/freebsd/mount_vboxvfs/Makefile.kmk  @@ -0,0 +1,28 @@  +# $Id: Makefile.kmk $ @@ -18,7 +18,7 @@  +CFLAGS+=-I$(MOUNT)  +  +PROGRAMS                += mount_vboxvfs -+mount_vboxvfs_TEMPLATE    = NewVBoxGuestR3Exe ++mount_vboxvfs_TEMPLATE    = VBoxGuestR3Exe  +mount_vboxvfs_SOURCES     = mount_vboxvfs.c  +  +ifdef HAVE_MNTOPTS_IN_LIBUTIL diff --git a/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_freebsd_vboxvfs_Makefile.kmk b/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_freebsd_vboxvfs_Makefile.kmk new file mode 100644 index 000000000000..679778e60181 --- /dev/null +++ b/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_freebsd_vboxvfs_Makefile.kmk @@ -0,0 +1,50 @@ +--- src/VBox/Additions/freebsd/vboxvfs/Makefile.kmk.orig	2025-10-22 19:18:12 UTC ++++ src/VBox/Additions/freebsd/vboxvfs/Makefile.kmk +@@ -43,32 +43,37 @@ vboxvfs_SOURCES       = \ + 	$(vboxvfs_0_OUTDIR) + vboxvfs_SOURCES       = \ + 	vboxvfs_vfsops.c \ +-	vboxvfs_vnops.c ++	bcmp.c \ ++	vboxvfs_vnops.c \ ++	vboxvfs_prov.c + vboxvfs_LIBS          = \ + 	$(VBOX_LIB_VBGL_R0) \ + 	$(VBOX_LIB_IPRT_GUEST_R0) + vboxvfs_DEPS          = \ +-	$$(vboxvfs_0_OUTDIR)/vnode_if.h \ +-	$$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h \ +-	$$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h ++	$(vboxvfs_0_OUTDIR)/vnode_if.h \ ++	$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h \ ++	$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h + vboxvfs_CLEAN        += $(vboxvfs_DEPS) +  + VBOX_AWK := /usr/bin/awk +  +-$$(vboxvfs_0_OUTDIR)/vnode_if.h: $(VBOX_FREEBSD_SRC)/kern/vnode_if.src ++$$(vboxvfs_0_OUTDIR): ++	$(QUIET)$(MKDIR) -p $(vboxvfs_0_OUTDIR) ++ ++$$(vboxvfs_0_OUTDIR)/vnode_if.h: $$(vboxvfs_0_OUTDIR) $(VBOX_FREEBSD_SRC)/kern/vnode_if.src + 	$(call MSG_TOOL,awk,VBoxGuest,$<,$@) + 	$(QUIET)$(VBOX_AWK) -f $(VBOX_FREEBSD_SRC)/tools/vnode_if.awk $(VBOX_FREEBSD_SRC)/kern/vnode_if.src -h +-	$(QUIET)$(MV) $(vboxvfs_0_OUTDIR)/vnode_if.h $(vboxvfs_0_OUTDIR)/vnode_if.h ++	$(QUIET)$(MV) vnode_if.h $(vboxvfs_0_OUTDIR)/vnode_if.h +  +-$$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h: $(VBOX_FREEBSD_SRC)/kern/vnode_if.src ++$$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h: $$(vboxvfs_0_OUTDIR) $(VBOX_FREEBSD_SRC)/kern/vnode_if.src + 	$(call MSG_TOOL,awk,VBoxGuest,$<,$@) + 	$(QUIET)$(VBOX_AWK) -f $(VBOX_FREEBSD_SRC)/tools/vnode_if.awk $(VBOX_FREEBSD_SRC)/kern/vnode_if.src -p +-	$(QUIET)$(MV) $(vboxvfs_0_OUTDIR)/vnode_if_newproto.h $(vboxvfs_0_OUTDIR)/vnode_if_newproto.h ++	$(QUIET)$(MV) vnode_if_newproto.h $(vboxvfs_0_OUTDIR)/vnode_if_newproto.h +  +-$$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h: $(VBOX_FREEBSD_SRC)/kern/vnode_if.src ++$$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h: $$(vboxvfs_0_OUTDIR) $(VBOX_FREEBSD_SRC)/kern/vnode_if.src + 	$(call MSG_TOOL,awk,VBoxGuest,$<,$@) + 	$(QUIET)$(VBOX_AWK) -f $(VBOX_FREEBSD_SRC)/tools/vnode_if.awk $(VBOX_FREEBSD_SRC)/kern/vnode_if.src -q +-	$(QUIET)$(MV) $(vboxvfs_0_OUTDIR)/vnode_if_typedef.h $(vboxvfs_0_OUTDIR)/vnode_if_typedef.h ++	$(QUIET)$(MV) vnode_if_typedef.h $(vboxvfs_0_OUTDIR)/vnode_if_typedef.h +  + include $(FILE_KBUILD_SUB_FOOTER) +  diff --git a/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk b/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk index afb19c804d7a..2d0377fb3e40 100644 --- a/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk +++ b/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk @@ -1,6 +1,6 @@ ---- src/VBox/Additions/x11/vboxmouse/Makefile.kmk.orig	2019-01-25 18:24:30 UTC +--- src/VBox/Additions/x11/vboxmouse/Makefile.kmk.orig	2025-10-16 14:25:37 UTC  +++ src/VBox/Additions/x11/vboxmouse/Makefile.kmk -@@ -227,10 +227,22 @@ endif # neq ($(KBUILD_TARGET),linux) +@@ -237,10 +237,22 @@ ifdef VBOX_USE_SYSTEM_XORG_HEADERS   ifdef VBOX_USE_SYSTEM_XORG_HEADERS @@ -10,7 +10,7 @@  - SYSMODS := $(filter-out vboxmouse_drv%,$(SYSMODS))  + ifeq ($(KBUILD_TARGET),freebsd)  +  DLLS += vboxmouse_drv_system -+  vboxmouse_drv_system_TEMPLATE = VBOXGUESTR3XORGMOD ++  vboxmouse_drv_system_TEMPLATE = VBoxGuestR3XOrgMod  +  vboxmouse_drv_system_DEFS := $(vboxmouse_drv_70_DEFS) NO_ANSIC  +  vboxmouse_drv_system_INCS := \  +	/usr/local/include/pixman-1 \ diff --git a/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_x11_vboxvideo_Makefile.kmk b/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_x11_vboxvideo_Makefile.kmk new file mode 100644 index 000000000000..38ef1ac68f9e --- /dev/null +++ b/emulators/virtualbox-ose-71/files/patch-src_VBox_Additions_x11_vboxvideo_Makefile.kmk @@ -0,0 +1,15 @@ +--- src/VBox/Additions/x11/vboxvideo/Makefile.kmk.orig	2025-10-22 19:22:45 UTC ++++ src/VBox/Additions/x11/vboxvideo/Makefile.kmk +@@ -415,9 +415,10 @@ ifdef VBOX_USE_SYSTEM_XORG_HEADERS +  vboxvideo_drv_system_INCS += \ +  	$(PATH_ROOT)/src/VBox/Runtime/include \ +  	$(VBOX_GRAPHICS_INCS) \ +- 	/usr/include/xorg \ +- 	/usr/include/pixman-1 ++ 	/usr/local/include/xorg \ ++ 	/usr/local/include/pixman-1 +  vboxvideo_drv_system_SOURCES := $(vboxvideo_drv_17_SOURCES) ++ vboxvideo_drv_system_LIBS += $(vboxvideo_drv_70_LIBS) + endif +  +  diff --git a/emulators/virtualbox-ose-71/files/patch-src_VBox_Runtime_common_misc_handletablectx.cpp b/emulators/virtualbox-ose-71/files/patch-src_VBox_Runtime_common_misc_handletablectx.cpp new file mode 100644 index 000000000000..f8fe5b1a7ba3 --- /dev/null +++ b/emulators/virtualbox-ose-71/files/patch-src_VBox_Runtime_common_misc_handletablectx.cpp @@ -0,0 +1,24 @@ +--- src/VBox/Runtime/common/misc/handletablectx.cpp.orig	2025-10-16 14:35:39 UTC ++++ src/VBox/Runtime/common/misc/handletablectx.cpp +@@ -48,7 +48,9 @@ + #include <iprt/param.h> + #include <iprt/string.h> + #include <iprt/asm.h> ++#ifndef IN_GUEST + #include <iprt/system.h> ++#endif + #include "internal/magics.h" + #include "handletable.h" +  +@@ -118,7 +120,11 @@ RTDECL(int)     RTHandleTableAllocWithCtx(RTHANDLETABL +              */ +             uint32_t const  iLevel1 = pThis->cCur / RTHT_LEVEL2_ENTRIES; +             uint32_t        cLevel1 = iLevel1 >= pThis->cLevel1 ++#ifndef IN_GUEST  +                                     ? pThis->cLevel1 + RTSystemGetPageSize() / sizeof(void *) ++#else ++                                    ? pThis->cLevel1 + PAGE_SIZE / sizeof(void *) ++#endif +                                     : 0; +             if (cLevel1 > pThis->cMax / RTHT_LEVEL2_ENTRIES) +                 cLevel1 = pThis->cMax / RTHT_LEVEL2_ENTRIES; diff --git a/emulators/virtualbox-ose-71/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c b/emulators/virtualbox-ose-71/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c index 4c0ed355709c..2ae9e1f34147 100644 --- a/emulators/virtualbox-ose-71/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c +++ b/emulators/virtualbox-ose-71/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c @@ -1,4 +1,4 @@ ---- src/VBox/Runtime/r0drv/freebsd/memobj-r0drv-freebsd.c.orig	2025-04-14 17:59:13 UTC +--- src/VBox/Runtime/r0drv/freebsd/memobj-r0drv-freebsd.c.orig	2025-10-16 14:35:51 UTC  +++ src/VBox/Runtime/r0drv/freebsd/memobj-r0drv-freebsd.c  @@ -140,8 +140,10 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) @@ -11,16 +11,26 @@       switch (pMemFreeBSD->Core.enmType)       { -@@ -156,8 +158,6 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +@@ -156,9 +158,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)           case RTR0MEMOBJTYPE_LOCK:           {  -            vm_map_t pMap = kernel_map;  - -             if (pMemFreeBSD->Core.u.Lock.R0Process != NIL_RTR0PROCESS) +-            if (pMemFreeBSD->Core.u.Lock.R0Process != NIL_RTR0PROCESS) ++            if (pMemFreeBSD->Core.u.Lock.R0Process != NIL_RTR0PROCESS) {                   pMap = &((struct proc *)pMemFreeBSD->Core.u.Lock.R0Process)->p_vmspace->vm_map; -@@ -198,6 +198,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +             rc = vm_map_unwire(pMap, +@@ -166,6 +166,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +                                (vm_offset_t)pMemFreeBSD->Core.pv + pMemFreeBSD->Core.cb, +                                VM_MAP_WIRE_SYSTEM | VM_MAP_WIRE_NOHOLES); +             AssertMsg(rc == KERN_SUCCESS, ("%#x", rc)); ++	   } +             break; +         } +  +@@ -198,6 +199,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)           case RTR0MEMOBJTYPE_PHYS_NC:           {               VM_OBJECT_WLOCK(pMemFreeBSD->pObject); @@ -28,7 +38,7 @@               vm_page_t pPage = vm_page_find_least(pMemFreeBSD->pObject, 0);   #if __FreeBSD_version < 1000000               vm_page_lock_queues(); -@@ -211,6 +212,14 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +@@ -211,6 +213,14 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)   #if __FreeBSD_version < 1000000               vm_page_unlock_queues();   #endif @@ -43,7 +53,7 @@               VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject);               vm_object_deallocate(pMemFreeBSD->pObject);               break; -@@ -221,6 +230,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +@@ -221,6 +231,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)               return VERR_INTERNAL_ERROR;       } @@ -51,7 +61,7 @@       return VINF_SUCCESS;   } -@@ -330,7 +340,8 @@ static int rtR0MemObjFreeBSDAllocHelper(PRTR0MEMOBJFRE +@@ -330,7 +341,8 @@ static int rtR0MemObjFreeBSDAllocHelper(PRTR0MEMOBJFRE       size_t      cPages = atop(pMemFreeBSD->Core.cb);       int         rc; @@ -61,7 +71,7 @@       /* No additional object reference for auto-deallocation upon unmapping. */   #if __FreeBSD_version >= 1000055 -@@ -372,6 +383,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ +@@ -372,6 +384,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ   DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable, const char *pszTag)   { @@ -69,7 +79,7 @@       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_PAGE,                                                                          NULL, cb, pszTag);       if (pMemFreeBSD) -@@ -381,8 +393,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ +@@ -381,8 +394,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ               *ppMem = &pMemFreeBSD->Core;           else               rtR0MemObjDelete(&pMemFreeBSD->Core); @@ -80,7 +90,7 @@       return VERR_NO_MEMORY;   } -@@ -396,6 +410,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI +@@ -396,6 +411,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI   DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable, const char *pszTag)   { @@ -88,7 +98,7 @@       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_LOW, NULL, cb, pszTag);       if (pMemFreeBSD)       { -@@ -404,8 +419,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI +@@ -404,8 +420,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI               *ppMem = &pMemFreeBSD->Core;           else               rtR0MemObjDelete(&pMemFreeBSD->Core); @@ -99,7 +109,7 @@       return VERR_NO_MEMORY;   } -@@ -413,6 +430,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJ +@@ -413,6 +431,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJ   DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, RTHCPHYS PhysHigest,                                             bool fExecutable, const char *pszTag)   { @@ -107,7 +117,7 @@       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_CONT,                                                                          NULL, cb, pszTag);       if (pMemFreeBSD) -@@ -425,8 +443,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJ +@@ -425,8 +444,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJ           }           else               rtR0MemObjDelete(&pMemFreeBSD->Core); @@ -118,7 +128,7 @@       return VERR_NO_MEMORY;   } -@@ -434,6 +454,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -434,6 +455,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB   static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJTYPE enmType, size_t cb,  RTHCPHYS PhysHighest,                                              size_t uAlignment, bool fContiguous, int rcNoMem, const char *pszTag)   { @@ -126,7 +136,7 @@       /* create the object. */       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), enmType, NULL, cb, pszTag);       if (pMemFreeBSD) -@@ -441,7 +462,8 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -441,7 +463,8 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB           vm_paddr_t const VmPhysAddrHigh = PhysHighest != NIL_RTHCPHYS ? PhysHighest : ~(vm_paddr_t)0;           u_long const     cPages         = atop(cb); @@ -136,7 +146,7 @@           int rc = rtR0MemObjFreeBSDPhysAllocHelper(pMemFreeBSD->pObject, cPages, VmPhysAddrHigh,                                                     uAlignment, fContiguous, true, rcNoMem); -@@ -451,7 +473,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -451,7 +474,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB               {                   Assert(enmType == RTR0MEMOBJTYPE_PHYS);                   VM_OBJECT_WLOCK(pMemFreeBSD->pObject); @@ -145,7 +155,7 @@                   VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject);                   pMemFreeBSD->Core.u.Phys.fAllocated = true;               } -@@ -464,8 +486,10 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -464,8 +487,10 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB               vm_object_deallocate(pMemFreeBSD->pObject);               rtR0MemObjDelete(&pMemFreeBSD->Core);           } @@ -156,7 +166,7 @@       return VERR_NO_MEMORY;   } -@@ -488,6 +512,7 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ +@@ -488,6 +513,7 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ                                             const char *pszTag)   {       AssertReturn(uCachePolicy == RTMEM_CACHE_POLICY_DONT_CARE, VERR_NOT_SUPPORTED); @@ -164,7 +174,7 @@       /* create the object. */       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_PHYS, -@@ -499,8 +524,10 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ +@@ -499,8 +525,10 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ           pMemFreeBSD->Core.u.Phys.PhysBase = Phys;           pMemFreeBSD->Core.u.Phys.uCachePolicy = uCachePolicy;           *ppMem = &pMemFreeBSD->Core; @@ -175,7 +185,7 @@       return VERR_NO_MEMORY;   } -@@ -512,6 +539,7 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER +@@ -512,6 +540,7 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER                                        vm_offset_t AddrStart, size_t cb, uint32_t fAccess,                                        RTR0PROCESS R0Process, int fFlags, const char *pszTag)   { @@ -183,7 +193,7 @@       int rc;       NOREF(fAccess); -@@ -521,21 +549,28 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER +@@ -521,21 +550,28 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER       if (!pMemFreeBSD)           return VERR_NO_MEMORY; @@ -220,7 +230,7 @@       return VERR_NO_MEMORY;/** @todo fix mach -> vbox error conversion for freebsd. */   } -@@ -575,6 +610,7 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN +@@ -575,6 +611,7 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN   static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJINTERNAL ppMem, void *pvFixed, size_t cb, size_t uAlignment,                                           RTR0PROCESS R0Process, vm_map_t pMap, const char *pszTag)   { @@ -228,7 +238,7 @@       int rc;       /* -@@ -633,11 +669,13 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN +@@ -633,11 +670,13 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN           pMemFreeBSD->Core.pv = (void *)MapAddress;           pMemFreeBSD->Core.u.ResVirt.R0Process = R0Process;           *ppMem = &pMemFreeBSD->Core; @@ -242,7 +252,7 @@       return rc;   } -@@ -661,6 +699,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ +@@ -661,6 +700,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ   DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJ pMemToMap, void *pvFixed, size_t uAlignment,                                             unsigned fProt, size_t offSub, size_t cbSub, const char *pszTag)   { @@ -251,7 +261,7 @@   //  AssertMsgReturn(!offSub && !cbSub, ("%#x %#x\n", offSub, cbSub), VERR_NOT_SUPPORTED);       AssertMsgReturn(pvFixed == (void *)-1, ("%p\n", pvFixed), VERR_NOT_SUPPORTED); -@@ -715,6 +755,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ +@@ -715,6 +756,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ               Assert((vm_offset_t)pMemFreeBSD->Core.pv == Addr);               pMemFreeBSD->Core.u.Mapping.R0Process = NIL_RTR0PROCESS;               *ppMem = &pMemFreeBSD->Core; @@ -259,7 +269,7 @@               return VINF_SUCCESS;           }           rc = vm_map_remove(kernel_map, Addr, Addr + cbSub); -@@ -723,6 +764,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ +@@ -723,6 +765,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ       else           vm_object_deallocate(pMemToMapFreeBSD->pObject); @@ -267,7 +277,7 @@       return VERR_NO_MEMORY;   } -@@ -730,6 +772,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN +@@ -730,6 +773,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN   DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJ pMemToMap, RTR3PTR R3PtrFixed, size_t uAlignment,                                           unsigned fProt, RTR0PROCESS R0Process, size_t offSub, size_t cbSub, const char *pszTag)   { @@ -276,7 +286,7 @@       /*        * Check for unsupported stuff.        */ -@@ -787,44 +831,50 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN +@@ -787,44 +832,50 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN       if (rc == KERN_SUCCESS)       { @@ -331,7 +341,7 @@       if ((fProt & RTMEM_PROT_NONE) == RTMEM_PROT_NONE)           ProtectionFlags = VM_PROT_NONE; -@@ -835,7 +885,12 @@ DECLHIDDEN(int) rtR0MemObjNativeProtect(PRTR0MEMOBJINT +@@ -835,7 +886,12 @@ DECLHIDDEN(int) rtR0MemObjNativeProtect(PRTR0MEMOBJINT       if ((fProt & RTMEM_PROT_EXEC) == RTMEM_PROT_EXEC)           ProtectionFlags |= VM_PROT_EXECUTE; @@ -344,7 +354,7 @@       if (krc == KERN_SUCCESS)           return VINF_SUCCESS; -@@ -860,11 +915,19 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P +@@ -860,11 +916,19 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P               vm_offset_t pb = (vm_offset_t)pMemFreeBSD->Core.pv + ptoa(iPage); @@ -368,7 +378,7 @@           }           case RTR0MEMOBJTYPE_MAPPING: -@@ -873,11 +936,15 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P +@@ -873,11 +937,15 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P               if (pMemFreeBSD->Core.u.Mapping.R0Process != NIL_RTR0PROCESS)               { @@ -385,7 +395,7 @@               }               return vtophys(pb);           } -@@ -888,9 +955,11 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P +@@ -888,9 +956,11 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P           {               RTHCPHYS addr; @@ -397,7 +407,7 @@               return addr;           } -@@ -910,7 +979,7 @@ DECLHIDDEN(int) rtR0MemObjNativeZeroInitWithoutMapping +@@ -910,7 +980,7 @@ DECLHIDDEN(int) rtR0MemObjNativeZeroInitWithoutMapping   DECLHIDDEN(int) rtR0MemObjNativeZeroInitWithoutMapping(PRTR0MEMOBJINTERNAL pMem)   {       PRTR0MEMOBJFREEBSD const pMemFreeBsd = (PRTR0MEMOBJFREEBSD)pMem; diff --git a/emulators/virtualbox-ose-71/files/vboxinit.in b/emulators/virtualbox-ose-71/files/vboxinit.in index 9895da9e362e..9574d7d6295e 100644 --- a/emulators/virtualbox-ose-71/files/vboxinit.in +++ b/emulators/virtualbox-ose-71/files/vboxinit.in @@ -16,7 +16,7 @@  # vboxinit_stop (str):		Default stop cmd for VBoxManage controlvm.  #				(default: savestate)  # vboxinit_start_delay (int):	Default startup delay in seconds. -#				(default: 0) +#				(default: 1)  # vboxinit_stop_delay (int):	Default shutdown delay in seconds.  #				(default: 0)  # diff --git a/emulators/virtualbox-ose-72/Makefile b/emulators/virtualbox-ose-72/Makefile index f003955ce5e6..45bd8b9a18a5 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?=	1 +DISTVERSION=	7.2.4 +PORTREVISION?=	0  CATEGORIES=	emulators  MASTER_SITES=	https://download.virtualbox.org/virtualbox/${DISTVERSION}/:src \  		LOCAL/vvd:docs diff --git a/emulators/virtualbox-ose-72/distinfo b/emulators/virtualbox-ose-72/distinfo index 48ed99a441f9..e657c539342b 100644 --- a/emulators/virtualbox-ose-72/distinfo +++ b/emulators/virtualbox-ose-72/distinfo @@ -1,7 +1,7 @@ -TIMESTAMP = 1759400000 -SHA256 (VirtualBox-7.2.2.tar.bz2) = b0e63bfb855327aecf1122cda33390c33734e5ffed72f123f5edf786a8ce1393 -SIZE (VirtualBox-7.2.2.tar.bz2) = 206992991 -SHA256 (VirtualBox-docs-7.2.2.tar.bz2) = 5784f7ccb0cd28f1e4647771301c51cbd2427ec84e071d3dd92c9f0e12690f8c -SIZE (VirtualBox-docs-7.2.2.tar.bz2) = 9134609 -SHA256 (VBoxGuestAdditions_7.2.2.iso) = 42457487fb5f117265fe41bf8b2a521449c2cff75c95029d8f667f7dab5a4409 -SIZE (VBoxGuestAdditions_7.2.2.iso) = 53135360 +TIMESTAMP = 1761088888 +SHA256 (VirtualBox-7.2.4.tar.bz2) = d281ec981b5f580211a0cedd1b75a1adcb0fbfcbb768d8c2bf4429f4763e8bbd +SIZE (VirtualBox-7.2.4.tar.bz2) = 207084201 +SHA256 (VirtualBox-docs-7.2.4.tar.bz2) = d9639bdee32d36c05436485b1dfd7d0c08736e53a6fcf8bda0c708681cf211e5 +SIZE (VirtualBox-docs-7.2.4.tar.bz2) = 9134788 +SHA256 (VBoxGuestAdditions_7.2.4.iso) = 66fa60b041fcda5d8b2ed22ba91bfafafaa3a5ff05c7d8ba01fbbe639669e153 +SIZE (VBoxGuestAdditions_7.2.4.iso) = 53153792 diff --git a/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c index 5344a7ab812f..204f6525ba77 100644 --- a/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c +++ b/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c @@ -1,4 +1,4 @@ ---- src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c.orig	2025-08-13 19:41:14 UTC +--- src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c.orig	2025-10-16 14:25:28 UTC  +++ src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c  @@ -55,6 +55,7 @@   #include <sys/uio.h> @@ -147,7 +147,7 @@        * Create a new session.        */       fRequestor = VMMDEV_REQUESTOR_USERMODE | VMMDEV_REQUESTOR_TRUST_NOT_GIVEN; -@@ -272,47 +211,20 @@ static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOp +@@ -272,14 +211,13 @@ static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOp       rc = VGDrvCommonCreateUserSession(&g_DevExt, fRequestor, &pSession);       if (RT_SUCCESS(rc))       { @@ -168,10 +168,10 @@       }       LogRel(("vgdrvFreeBSDOpen: failed. rc=%d\n", rc)); -     return RTErrConvertToErrno(rc); +@@ -287,33 +225,6 @@ static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOp   } --/** + /**  - * File close handler  - *  - */ @@ -179,7 +179,7 @@  -{  -    PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)pDev->si_drv1;  -    Log(("vgdrvFreeBSDClose: fFile=%#x pSession=%p\n", fFile, pSession)); -  +-  -    /*  -     * Close the session if it's still hanging on to the device...  -     */ @@ -198,10 +198,11 @@  -}  -  - - /** +-/**    * I/O control request.    * -@@ -326,8 +238,12 @@ static int vgdrvFreeBSDIOCtl(struct cdev *pDev, u_long +  * @returns depends... +@@ -326,8 +237,12 @@ static int vgdrvFreeBSDIOCtl(struct cdev *pDev, u_long   static int vgdrvFreeBSDIOCtl(struct cdev *pDev, u_long ulCmd, caddr_t pvData, int fFile, struct thread *pTd)   {       PVBOXGUESTSESSION pSession; @@ -215,20 +216,25 @@       /*        * Deal with the fast ioctl path first.        */ -@@ -526,8 +442,10 @@ static int vgdrvFreeBSDPoll(struct cdev *pDev, int fEv +@@ -522,12 +437,14 @@ static int vgdrvFreeBSDPoll(struct cdev *pDev, int fEv +  + static int vgdrvFreeBSDPoll(struct cdev *pDev, int fEvents, struct thread *td) + { +-    int fEventsProcessed; ++    PVBOXGUESTSESSION pSession; ++    int fEventsProcessed, rc;       LogFlow(("vgdrvFreeBSDPoll: fEvents=%d\n", fEvents));  -    PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)pDev->si_drv1;  -    if (RT_UNLIKELY(!RT_VALID_PTR(pSession))) { -+  +    rc = devfs_get_cdevpriv((void **)&pSession);  +    if (rc) -+      { ++    {           Log(("vgdrvFreeBSDPoll: no state data for %s\n", devtoname(pDev)));           return (fEvents & (POLLHUP|POLLIN|POLLRDNORM|POLLOUT|POLLWRNORM));       } -@@ -568,11 +486,8 @@ static int vgdrvFreeBSDDetach(device_t pDevice) +@@ -568,11 +485,8 @@ static int vgdrvFreeBSDDetach(device_t pDevice)       /*        * Reverse what we did in vgdrvFreeBSDAttach.        */ @@ -241,7 +247,7 @@       vgdrvFreeBSDRemoveIRQ(pDevice, pState);       if (pState->pVMMDevMemRes) -@@ -738,18 +653,21 @@ static int vgdrvFreeBSDAttach(device_t pDevice) +@@ -738,18 +652,21 @@ static int vgdrvFreeBSDAttach(device_t pDevice)                       VGDrvCommonProcessOptionsFromHost(&g_DevExt);                       /* @@ -269,7 +275,7 @@                       vgdrvFreeBSDRemoveIRQ(pDevice, pState);                   }                   else -@@ -793,8 +711,12 @@ static driver_t vgdrvFreeBSDDriver = +@@ -793,8 +710,12 @@ static driver_t vgdrvFreeBSDDriver =       sizeof(struct VBoxGuestDeviceState),   }; diff --git a/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile b/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile index 1430dbb721fb..37c1596cfe87 100644 --- a/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile +++ b/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile @@ -1,15 +1,17 @@ ---- src/VBox/Additions/common/VBoxGuest/freebsd/Makefile.orig	2025-08-13 19:41:14 UTC +--- src/VBox/Additions/common/VBoxGuest/freebsd/Makefile.orig	2025-10-16 14:25:29 UTC  +++ src/VBox/Additions/common/VBoxGuest/freebsd/Makefile -@@ -35,7 +35,7 @@ KMOD = vboxguest +@@ -34,9 +34,8 @@ KMOD = vboxguest + # SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0   #   KMOD = vboxguest -  --CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS  +CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_GUEST -DIN_GUEST_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS +-CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS +-   .if (${MACHINE_ARCH} == "i386")    CFLAGS += -DRT_ARCH_X86 -@@ -91,6 +91,7 @@ SRCS += \ + .elif (${MACHINE_ARCH} == "amd64") +@@ -91,6 +90,7 @@ SRCS += \   	handletable.c \   	handletablectx.c \   	once.c \ @@ -17,7 +19,7 @@   	thread.c   .PATH:	${.CURDIR}/common/string -@@ -163,6 +164,7 @@ SRCS += \ +@@ -163,6 +163,7 @@ SRCS += \   .PATH:	${.CURDIR}/r0drv   SRCS += \ @@ -25,3 +27,12 @@   	alloc-r0drv.c \   	initterm-r0drv.c \   	memobj-r0drv.c \ +@@ -196,7 +197,7 @@ SRCS += \ + SRCS += \ + 	log-vbox.c \ + 	logbackdoor.c \ +-	RTLogWriteVmm-amd64-x86. ++	RTLogWriteVmm-amd64-x86.c +  + .include <bsd.kmod.mk> +  diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk index 270472c045e3..796aecabac8f 100644 --- a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk @@ -1,4 +1,4 @@ ---- src/VBox/Additions/freebsd/mount_vboxvfs/Makefile.kmk.orig	2025-05-11 03:54:13 UTC +--- src/VBox/Additions/freebsd/mount_vboxvfs/Makefile.kmk.orig	2025-10-24 13:49:31 UTC  +++ src/VBox/Additions/freebsd/mount_vboxvfs/Makefile.kmk  @@ -0,0 +1,28 @@  +# $Id: Makefile.kmk $ @@ -18,7 +18,7 @@  +CFLAGS+=-I$(MOUNT)  +  +PROGRAMS                += mount_vboxvfs -+mount_vboxvfs_TEMPLATE    = NewVBoxGuestR3Exe ++mount_vboxvfs_TEMPLATE    = VBoxGuestR3Exe  +mount_vboxvfs_SOURCES     = mount_vboxvfs.c  +  +ifdef HAVE_MNTOPTS_IN_LIBUTIL diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_Makefile.kmk new file mode 100644 index 000000000000..679778e60181 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_Makefile.kmk @@ -0,0 +1,50 @@ +--- src/VBox/Additions/freebsd/vboxvfs/Makefile.kmk.orig	2025-10-22 19:18:12 UTC ++++ src/VBox/Additions/freebsd/vboxvfs/Makefile.kmk +@@ -43,32 +43,37 @@ vboxvfs_SOURCES       = \ + 	$(vboxvfs_0_OUTDIR) + vboxvfs_SOURCES       = \ + 	vboxvfs_vfsops.c \ +-	vboxvfs_vnops.c ++	bcmp.c \ ++	vboxvfs_vnops.c \ ++	vboxvfs_prov.c + vboxvfs_LIBS          = \ + 	$(VBOX_LIB_VBGL_R0) \ + 	$(VBOX_LIB_IPRT_GUEST_R0) + vboxvfs_DEPS          = \ +-	$$(vboxvfs_0_OUTDIR)/vnode_if.h \ +-	$$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h \ +-	$$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h ++	$(vboxvfs_0_OUTDIR)/vnode_if.h \ ++	$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h \ ++	$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h + vboxvfs_CLEAN        += $(vboxvfs_DEPS) +  + VBOX_AWK := /usr/bin/awk +  +-$$(vboxvfs_0_OUTDIR)/vnode_if.h: $(VBOX_FREEBSD_SRC)/kern/vnode_if.src ++$$(vboxvfs_0_OUTDIR): ++	$(QUIET)$(MKDIR) -p $(vboxvfs_0_OUTDIR) ++ ++$$(vboxvfs_0_OUTDIR)/vnode_if.h: $$(vboxvfs_0_OUTDIR) $(VBOX_FREEBSD_SRC)/kern/vnode_if.src + 	$(call MSG_TOOL,awk,VBoxGuest,$<,$@) + 	$(QUIET)$(VBOX_AWK) -f $(VBOX_FREEBSD_SRC)/tools/vnode_if.awk $(VBOX_FREEBSD_SRC)/kern/vnode_if.src -h +-	$(QUIET)$(MV) $(vboxvfs_0_OUTDIR)/vnode_if.h $(vboxvfs_0_OUTDIR)/vnode_if.h ++	$(QUIET)$(MV) vnode_if.h $(vboxvfs_0_OUTDIR)/vnode_if.h +  +-$$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h: $(VBOX_FREEBSD_SRC)/kern/vnode_if.src ++$$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h: $$(vboxvfs_0_OUTDIR) $(VBOX_FREEBSD_SRC)/kern/vnode_if.src + 	$(call MSG_TOOL,awk,VBoxGuest,$<,$@) + 	$(QUIET)$(VBOX_AWK) -f $(VBOX_FREEBSD_SRC)/tools/vnode_if.awk $(VBOX_FREEBSD_SRC)/kern/vnode_if.src -p +-	$(QUIET)$(MV) $(vboxvfs_0_OUTDIR)/vnode_if_newproto.h $(vboxvfs_0_OUTDIR)/vnode_if_newproto.h ++	$(QUIET)$(MV) vnode_if_newproto.h $(vboxvfs_0_OUTDIR)/vnode_if_newproto.h +  +-$$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h: $(VBOX_FREEBSD_SRC)/kern/vnode_if.src ++$$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h: $$(vboxvfs_0_OUTDIR) $(VBOX_FREEBSD_SRC)/kern/vnode_if.src + 	$(call MSG_TOOL,awk,VBoxGuest,$<,$@) + 	$(QUIET)$(VBOX_AWK) -f $(VBOX_FREEBSD_SRC)/tools/vnode_if.awk $(VBOX_FREEBSD_SRC)/kern/vnode_if.src -q +-	$(QUIET)$(MV) $(vboxvfs_0_OUTDIR)/vnode_if_typedef.h $(vboxvfs_0_OUTDIR)/vnode_if_typedef.h ++	$(QUIET)$(MV) vnode_if_typedef.h $(vboxvfs_0_OUTDIR)/vnode_if_typedef.h +  + include $(FILE_KBUILD_SUB_FOOTER) +  diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk index bd5e626ecea2..2d0377fb3e40 100644 --- a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk @@ -1,4 +1,4 @@ ---- src/VBox/Additions/x11/vboxmouse/Makefile.kmk.orig	2025-08-13 19:41:22 UTC +--- src/VBox/Additions/x11/vboxmouse/Makefile.kmk.orig	2025-10-16 14:25:37 UTC  +++ src/VBox/Additions/x11/vboxmouse/Makefile.kmk  @@ -237,10 +237,22 @@ ifdef VBOX_USE_SYSTEM_XORG_HEADERS @@ -10,7 +10,7 @@  - SYSMODS := $(filter-out vboxmouse_drv%,$(SYSMODS))  + ifeq ($(KBUILD_TARGET),freebsd)  +  DLLS += vboxmouse_drv_system -+  vboxmouse_drv_system_TEMPLATE = VBOXGUESTR3XORGMOD ++  vboxmouse_drv_system_TEMPLATE = VBoxGuestR3XOrgMod  +  vboxmouse_drv_system_DEFS := $(vboxmouse_drv_70_DEFS) NO_ANSIC  +  vboxmouse_drv_system_INCS := \  +	/usr/local/include/pixman-1 \ diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_x11_vboxvideo_Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_x11_vboxvideo_Makefile.kmk new file mode 100644 index 000000000000..38ef1ac68f9e --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_x11_vboxvideo_Makefile.kmk @@ -0,0 +1,15 @@ +--- src/VBox/Additions/x11/vboxvideo/Makefile.kmk.orig	2025-10-22 19:22:45 UTC ++++ src/VBox/Additions/x11/vboxvideo/Makefile.kmk +@@ -415,9 +415,10 @@ ifdef VBOX_USE_SYSTEM_XORG_HEADERS +  vboxvideo_drv_system_INCS += \ +  	$(PATH_ROOT)/src/VBox/Runtime/include \ +  	$(VBOX_GRAPHICS_INCS) \ +- 	/usr/include/xorg \ +- 	/usr/include/pixman-1 ++ 	/usr/local/include/xorg \ ++ 	/usr/local/include/pixman-1 +  vboxvideo_drv_system_SOURCES := $(vboxvideo_drv_17_SOURCES) ++ vboxvideo_drv_system_LIBS += $(vboxvideo_drv_70_LIBS) + endif +  +  diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_common_misc_handletablectx.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_common_misc_handletablectx.cpp new file mode 100644 index 000000000000..f8fe5b1a7ba3 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_common_misc_handletablectx.cpp @@ -0,0 +1,24 @@ +--- src/VBox/Runtime/common/misc/handletablectx.cpp.orig	2025-10-16 14:35:39 UTC ++++ src/VBox/Runtime/common/misc/handletablectx.cpp +@@ -48,7 +48,9 @@ + #include <iprt/param.h> + #include <iprt/string.h> + #include <iprt/asm.h> ++#ifndef IN_GUEST + #include <iprt/system.h> ++#endif + #include "internal/magics.h" + #include "handletable.h" +  +@@ -118,7 +120,11 @@ RTDECL(int)     RTHandleTableAllocWithCtx(RTHANDLETABL +              */ +             uint32_t const  iLevel1 = pThis->cCur / RTHT_LEVEL2_ENTRIES; +             uint32_t        cLevel1 = iLevel1 >= pThis->cLevel1 ++#ifndef IN_GUEST  +                                     ? pThis->cLevel1 + RTSystemGetPageSize() / sizeof(void *) ++#else ++                                    ? pThis->cLevel1 + PAGE_SIZE / sizeof(void *) ++#endif +                                     : 0; +             if (cLevel1 > pThis->cMax / RTHT_LEVEL2_ENTRIES) +                 cLevel1 = pThis->cMax / RTHT_LEVEL2_ENTRIES; diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c index 4c0ed355709c..2ae9e1f34147 100644 --- a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c @@ -1,4 +1,4 @@ ---- src/VBox/Runtime/r0drv/freebsd/memobj-r0drv-freebsd.c.orig	2025-04-14 17:59:13 UTC +--- src/VBox/Runtime/r0drv/freebsd/memobj-r0drv-freebsd.c.orig	2025-10-16 14:35:51 UTC  +++ src/VBox/Runtime/r0drv/freebsd/memobj-r0drv-freebsd.c  @@ -140,8 +140,10 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) @@ -11,16 +11,26 @@       switch (pMemFreeBSD->Core.enmType)       { -@@ -156,8 +158,6 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +@@ -156,9 +158,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)           case RTR0MEMOBJTYPE_LOCK:           {  -            vm_map_t pMap = kernel_map;  - -             if (pMemFreeBSD->Core.u.Lock.R0Process != NIL_RTR0PROCESS) +-            if (pMemFreeBSD->Core.u.Lock.R0Process != NIL_RTR0PROCESS) ++            if (pMemFreeBSD->Core.u.Lock.R0Process != NIL_RTR0PROCESS) {                   pMap = &((struct proc *)pMemFreeBSD->Core.u.Lock.R0Process)->p_vmspace->vm_map; -@@ -198,6 +198,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +             rc = vm_map_unwire(pMap, +@@ -166,6 +166,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +                                (vm_offset_t)pMemFreeBSD->Core.pv + pMemFreeBSD->Core.cb, +                                VM_MAP_WIRE_SYSTEM | VM_MAP_WIRE_NOHOLES); +             AssertMsg(rc == KERN_SUCCESS, ("%#x", rc)); ++	   } +             break; +         } +  +@@ -198,6 +199,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)           case RTR0MEMOBJTYPE_PHYS_NC:           {               VM_OBJECT_WLOCK(pMemFreeBSD->pObject); @@ -28,7 +38,7 @@               vm_page_t pPage = vm_page_find_least(pMemFreeBSD->pObject, 0);   #if __FreeBSD_version < 1000000               vm_page_lock_queues(); -@@ -211,6 +212,14 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +@@ -211,6 +213,14 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)   #if __FreeBSD_version < 1000000               vm_page_unlock_queues();   #endif @@ -43,7 +53,7 @@               VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject);               vm_object_deallocate(pMemFreeBSD->pObject);               break; -@@ -221,6 +230,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +@@ -221,6 +231,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)               return VERR_INTERNAL_ERROR;       } @@ -51,7 +61,7 @@       return VINF_SUCCESS;   } -@@ -330,7 +340,8 @@ static int rtR0MemObjFreeBSDAllocHelper(PRTR0MEMOBJFRE +@@ -330,7 +341,8 @@ static int rtR0MemObjFreeBSDAllocHelper(PRTR0MEMOBJFRE       size_t      cPages = atop(pMemFreeBSD->Core.cb);       int         rc; @@ -61,7 +71,7 @@       /* No additional object reference for auto-deallocation upon unmapping. */   #if __FreeBSD_version >= 1000055 -@@ -372,6 +383,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ +@@ -372,6 +384,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ   DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable, const char *pszTag)   { @@ -69,7 +79,7 @@       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_PAGE,                                                                          NULL, cb, pszTag);       if (pMemFreeBSD) -@@ -381,8 +393,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ +@@ -381,8 +394,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ               *ppMem = &pMemFreeBSD->Core;           else               rtR0MemObjDelete(&pMemFreeBSD->Core); @@ -80,7 +90,7 @@       return VERR_NO_MEMORY;   } -@@ -396,6 +410,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI +@@ -396,6 +411,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI   DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable, const char *pszTag)   { @@ -88,7 +98,7 @@       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_LOW, NULL, cb, pszTag);       if (pMemFreeBSD)       { -@@ -404,8 +419,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI +@@ -404,8 +420,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI               *ppMem = &pMemFreeBSD->Core;           else               rtR0MemObjDelete(&pMemFreeBSD->Core); @@ -99,7 +109,7 @@       return VERR_NO_MEMORY;   } -@@ -413,6 +430,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJ +@@ -413,6 +431,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJ   DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, RTHCPHYS PhysHigest,                                             bool fExecutable, const char *pszTag)   { @@ -107,7 +117,7 @@       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_CONT,                                                                          NULL, cb, pszTag);       if (pMemFreeBSD) -@@ -425,8 +443,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJ +@@ -425,8 +444,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJ           }           else               rtR0MemObjDelete(&pMemFreeBSD->Core); @@ -118,7 +128,7 @@       return VERR_NO_MEMORY;   } -@@ -434,6 +454,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -434,6 +455,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB   static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJTYPE enmType, size_t cb,  RTHCPHYS PhysHighest,                                              size_t uAlignment, bool fContiguous, int rcNoMem, const char *pszTag)   { @@ -126,7 +136,7 @@       /* create the object. */       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), enmType, NULL, cb, pszTag);       if (pMemFreeBSD) -@@ -441,7 +462,8 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -441,7 +463,8 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB           vm_paddr_t const VmPhysAddrHigh = PhysHighest != NIL_RTHCPHYS ? PhysHighest : ~(vm_paddr_t)0;           u_long const     cPages         = atop(cb); @@ -136,7 +146,7 @@           int rc = rtR0MemObjFreeBSDPhysAllocHelper(pMemFreeBSD->pObject, cPages, VmPhysAddrHigh,                                                     uAlignment, fContiguous, true, rcNoMem); -@@ -451,7 +473,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -451,7 +474,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB               {                   Assert(enmType == RTR0MEMOBJTYPE_PHYS);                   VM_OBJECT_WLOCK(pMemFreeBSD->pObject); @@ -145,7 +155,7 @@                   VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject);                   pMemFreeBSD->Core.u.Phys.fAllocated = true;               } -@@ -464,8 +486,10 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -464,8 +487,10 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB               vm_object_deallocate(pMemFreeBSD->pObject);               rtR0MemObjDelete(&pMemFreeBSD->Core);           } @@ -156,7 +166,7 @@       return VERR_NO_MEMORY;   } -@@ -488,6 +512,7 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ +@@ -488,6 +513,7 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ                                             const char *pszTag)   {       AssertReturn(uCachePolicy == RTMEM_CACHE_POLICY_DONT_CARE, VERR_NOT_SUPPORTED); @@ -164,7 +174,7 @@       /* create the object. */       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_PHYS, -@@ -499,8 +524,10 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ +@@ -499,8 +525,10 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ           pMemFreeBSD->Core.u.Phys.PhysBase = Phys;           pMemFreeBSD->Core.u.Phys.uCachePolicy = uCachePolicy;           *ppMem = &pMemFreeBSD->Core; @@ -175,7 +185,7 @@       return VERR_NO_MEMORY;   } -@@ -512,6 +539,7 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER +@@ -512,6 +540,7 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER                                        vm_offset_t AddrStart, size_t cb, uint32_t fAccess,                                        RTR0PROCESS R0Process, int fFlags, const char *pszTag)   { @@ -183,7 +193,7 @@       int rc;       NOREF(fAccess); -@@ -521,21 +549,28 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER +@@ -521,21 +550,28 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER       if (!pMemFreeBSD)           return VERR_NO_MEMORY; @@ -220,7 +230,7 @@       return VERR_NO_MEMORY;/** @todo fix mach -> vbox error conversion for freebsd. */   } -@@ -575,6 +610,7 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN +@@ -575,6 +611,7 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN   static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJINTERNAL ppMem, void *pvFixed, size_t cb, size_t uAlignment,                                           RTR0PROCESS R0Process, vm_map_t pMap, const char *pszTag)   { @@ -228,7 +238,7 @@       int rc;       /* -@@ -633,11 +669,13 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN +@@ -633,11 +670,13 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN           pMemFreeBSD->Core.pv = (void *)MapAddress;           pMemFreeBSD->Core.u.ResVirt.R0Process = R0Process;           *ppMem = &pMemFreeBSD->Core; @@ -242,7 +252,7 @@       return rc;   } -@@ -661,6 +699,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ +@@ -661,6 +700,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ   DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJ pMemToMap, void *pvFixed, size_t uAlignment,                                             unsigned fProt, size_t offSub, size_t cbSub, const char *pszTag)   { @@ -251,7 +261,7 @@   //  AssertMsgReturn(!offSub && !cbSub, ("%#x %#x\n", offSub, cbSub), VERR_NOT_SUPPORTED);       AssertMsgReturn(pvFixed == (void *)-1, ("%p\n", pvFixed), VERR_NOT_SUPPORTED); -@@ -715,6 +755,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ +@@ -715,6 +756,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ               Assert((vm_offset_t)pMemFreeBSD->Core.pv == Addr);               pMemFreeBSD->Core.u.Mapping.R0Process = NIL_RTR0PROCESS;               *ppMem = &pMemFreeBSD->Core; @@ -259,7 +269,7 @@               return VINF_SUCCESS;           }           rc = vm_map_remove(kernel_map, Addr, Addr + cbSub); -@@ -723,6 +764,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ +@@ -723,6 +765,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ       else           vm_object_deallocate(pMemToMapFreeBSD->pObject); @@ -267,7 +277,7 @@       return VERR_NO_MEMORY;   } -@@ -730,6 +772,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN +@@ -730,6 +773,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN   DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJ pMemToMap, RTR3PTR R3PtrFixed, size_t uAlignment,                                           unsigned fProt, RTR0PROCESS R0Process, size_t offSub, size_t cbSub, const char *pszTag)   { @@ -276,7 +286,7 @@       /*        * Check for unsupported stuff.        */ -@@ -787,44 +831,50 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN +@@ -787,44 +832,50 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN       if (rc == KERN_SUCCESS)       { @@ -331,7 +341,7 @@       if ((fProt & RTMEM_PROT_NONE) == RTMEM_PROT_NONE)           ProtectionFlags = VM_PROT_NONE; -@@ -835,7 +885,12 @@ DECLHIDDEN(int) rtR0MemObjNativeProtect(PRTR0MEMOBJINT +@@ -835,7 +886,12 @@ DECLHIDDEN(int) rtR0MemObjNativeProtect(PRTR0MEMOBJINT       if ((fProt & RTMEM_PROT_EXEC) == RTMEM_PROT_EXEC)           ProtectionFlags |= VM_PROT_EXECUTE; @@ -344,7 +354,7 @@       if (krc == KERN_SUCCESS)           return VINF_SUCCESS; -@@ -860,11 +915,19 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P +@@ -860,11 +916,19 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P               vm_offset_t pb = (vm_offset_t)pMemFreeBSD->Core.pv + ptoa(iPage); @@ -368,7 +378,7 @@           }           case RTR0MEMOBJTYPE_MAPPING: -@@ -873,11 +936,15 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P +@@ -873,11 +937,15 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P               if (pMemFreeBSD->Core.u.Mapping.R0Process != NIL_RTR0PROCESS)               { @@ -385,7 +395,7 @@               }               return vtophys(pb);           } -@@ -888,9 +955,11 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P +@@ -888,9 +956,11 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P           {               RTHCPHYS addr; @@ -397,7 +407,7 @@               return addr;           } -@@ -910,7 +979,7 @@ DECLHIDDEN(int) rtR0MemObjNativeZeroInitWithoutMapping +@@ -910,7 +980,7 @@ DECLHIDDEN(int) rtR0MemObjNativeZeroInitWithoutMapping   DECLHIDDEN(int) rtR0MemObjNativeZeroInitWithoutMapping(PRTR0MEMOBJINTERNAL pMem)   {       PRTR0MEMOBJFREEBSD const pMemFreeBsd = (PRTR0MEMOBJFREEBSD)pMem; diff --git a/emulators/virtualbox-ose-72/files/vboxinit.in b/emulators/virtualbox-ose-72/files/vboxinit.in index 9895da9e362e..9574d7d6295e 100644 --- a/emulators/virtualbox-ose-72/files/vboxinit.in +++ b/emulators/virtualbox-ose-72/files/vboxinit.in @@ -16,7 +16,7 @@  # vboxinit_stop (str):		Default stop cmd for VBoxManage controlvm.  #				(default: savestate)  # vboxinit_start_delay (int):	Default startup delay in seconds. -#				(default: 0) +#				(default: 1)  # vboxinit_stop_delay (int):	Default shutdown delay in seconds.  #				(default: 0)  # diff --git a/emulators/virtualbox-ose-additions-70/Makefile b/emulators/virtualbox-ose-additions-70/Makefile new file mode 100644 index 000000000000..855c3f405b8e --- /dev/null +++ b/emulators/virtualbox-ose-additions-70/Makefile @@ -0,0 +1,174 @@ +PORTNAME=	virtualbox-ose +DISTVERSION=	7.0.26 +PORTREVISION?=	0 +CATEGORIES=	emulators +MASTER_SITES=	https://download.virtualbox.org/virtualbox/${DISTVERSION}/ +PKGNAMESUFFIX?=	-additions-70 +DISTNAME=	VirtualBox-${DISTVERSION} + +MAINTAINER=	vbox@FreeBSD.org +COMMENT=	VirtualBox additions for FreeBSD guests +WWW=		https://www.virtualbox.org/ + +LICENSE=	GPLv2 +LICENSE_FILE=	${WRKSRC}/COPYING + +ONLY_FOR_ARCHS=	amd64 + +BUILD_DEPENDS=	yasm:devel/yasm \ +		kmk:devel/kBuild \ +		xsltproc:textproc/libxslt + +USES=		compiler:c++14-lang cpe iconv kmod tar:bzip2 +CPE_VENDOR=	oracle +CPE_PRODUCT=	vm_virtualbox +USE_RC_SUBR=	vboxguest vboxservice + +HAS_CONFIGURE=		yes +CONFIGURE_ARGS+=	--disable-alsa \ +			--disable-docs \ +			--disable-libvpx \ +			--disable-opengl \ +			--disable-pulse \ +			--disable-python \ +			--disable-sdl-ttf \ +			--disable-xpcom +CONFIGURE_ARGS+=	--nofatal --with-gcc="${CC}" --with-g++="${CXX}" + +MAKE_JOBS_UNSAFE=	yes + +CONFLICTS_INSTALL=	virtualbox-ose-additions-legacy \ +			virtualbox-ose-additions-nox11-legacy \ +			virtualbox-ose-additions \ +			virtualbox-ose-additions-nox11 \ +			virtualbox-ose-additions-71 \ +			virtualbox-ose-additions-nox11-71 \ +			virtualbox-ose-additions-72 \ +			virtualbox-ose-additions-nox11-72 + +PATCHDIR=		${.CURDIR}/../${PORTNAME}-70/files +EXTRACT_AFTER_ARGS=	--exclude tools/*.x86 --exclude tools/*.amd64 --exclude Firmware +PORTSCOUT=		limit:^7\.0\. + +WRKSRC=			${WRKDIR}/VirtualBox-${DISTVERSION} + +OPTIONS_DEFINE=		DBUS DEBUG X11 +OPTIONS_DEFAULT=	DBUS X11 +OPTIONS_SUB=		yes + +DBUS_LIB_DEPENDS=	libdbus-1.so:devel/dbus +DBUS_CONFIGURE_OFF=	--disable-dbus +DEBUG_CONFIGURE_ON=	--build-debug +DEBUG_VARS=		KMK_BUILDTYPE=debug +DEBUG_VARS_OFF=		KMK_BUILDTYPE=release +X11_BUILD_DEPENDS=	${LOCALBASE}/include/xorg/compiler.h:x11-servers/xorg-server +X11_RUN_DEPENDS=	xrandr:x11/xrandr +X11_USES=		pkgconfig xorg +X11_USE=		XORG=x11,xcursor,xext,xorgproto,xmu,xrandr,xt +X11_VARS=		VBOX_WITH_X11=1 + +.include <bsd.port.options.mk> + +.if ${SLAVE_PORT} == no +CONFLICTS_INSTALL+=	virtualbox-ose-additions-nox11-70 +.else +CONFLICTS_INSTALL+=	virtualbox-ose-additions-70 +.endif + +VIDEODIR=	${PREFIX}/lib/xorg/modules/drivers +INPUTDIR=	${PREFIX}/lib/xorg/modules/input + +VBOX_BIN=	${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/additions +VBOX_SBINS=	VBoxControl \ +		VBoxService \ +		mount_vboxvfs + +BUILD_WRKSRC=	${VBOX_BIN}/src + +KMK_ARCH=	freebsd.${ARCH:S/i386/x86/} +KMK_CONFIG+=	VBOX_LIBPATH_X11=${LOCALBASE} VBOX_FREEBSD_SRC=${SRC_BASE}/sys VBOX_ONLY_ADDITIONS=1 + +.if ${PORT_OPTIONS:MX11} +.else +VBOX_WITH_X11= +.endif + +.include <bsd.port.pre.mk> + +post-patch: +	@${ECHO_CMD} 'VBOX_WITH_DRAG_AND_DROP = ${VBOX_WITH_X11}' >> \ +	    ${WRKSRC}/LocalConfig.kmk +	@${ECHO_CMD} 'VBOX_WITH_DRAG_AND_DROP_GH = ${VBOX_WITH_X11}' >> \ +	    ${WRKSRC}/LocalConfig.kmk +	@${ECHO_CMD} 'VBOX_WITH_X11_ADDITIONS = ${VBOX_WITH_X11}' >> \ +	    ${WRKSRC}/LocalConfig.kmk +	@${ECHO_CMD} 'VBOX_GCC_std = -std=c++11' >> ${WRKSRC}/LocalConfig.kmk +	@${ECHO_CMD} 'CXXDEFS += _LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR' >> \ +	    ${WRKSRC}/LocalConfig.kmk +.if ${COMPILER_TYPE} == clang +	@${REINPLACE_CMD} -e 's| -finline-limit=8000||' \ +	    -e 's| -fno-merge-constants||' \ +	    -e 's| -mpreferred-stack-boundary=2||' ${WRKSRC}/Config.kmk +.endif +	@${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \ +	    ${WRKSRC}/Config.kmk ${WRKSRC}/configure \ +	    ${WRKSRC}/kBuild/header.kmk ${WRKSRC}/kBuild/units/qt4.kmk \ +	    ${WRKSRC}/kBuild/units/qt5.kmk ${WRKSRC}/kBuild/sdks/LIBSDL.kmk \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/vboxclient.desktop \ +	    ${WRKSRC}/src/VBox/Additions/x11/vboxmouse/Makefile.kmk \ +	    ${WRKSRC}/src/VBox/Additions/x11/vboxvideo/Makefile.kmk +	@${REINPLACE_CMD} \ +	    -e 's|\$$KBUILDDIR_BIN/kmk_sed|${LOCALBASE}/bin/kmk_sed|g' \ +	    ${WRKSRC}/configure +.if empty(ICONV_LIB) +	@${REINPLACE_CMD} -e 's|iconv||' ${WRKSRC}/Config.kmk \ +	    ${WRKSRC}/src/VBox/Runtime/Makefile.kmk \ +	    ${WRKSRC}/src/VBox/Additions/x11/VBoxClient/Makefile.kmk +	@${ECHO_CMD} 'VBOX_ICONV_DEFS = LIBICONV_PLUG' >> ${WRKSRC}/LocalConfig.kmk +.endif +.if ${OSVERSION} >= 1500038 +	@${ECHO_CMD} 'HAVE_MNTOPTS_IN_LIBUTIL = 1' >> \ +	    ${WRKSRC}/LocalConfig.kmk +.endif + +post-patch-X11-on: +	@${ECHO_CMD} 'VBOX_USE_SYSTEM_XORG_HEADERS = 1' >> \ +	    ${WRKSRC}/LocalConfig.kmk + +pre-build: +	cd ${WRKSRC} && ${SH} -c \ +	    ". env.sh && ${KMK_CONFIG} ${LOCALBASE}/bin/kmk" + +do-install: +	${MKDIR} ${STAGEDIR}${KMODDIR} +	${INSTALL_KLD} ${VBOX_BIN}/src/vboxguest/vboxguest.ko \ +	    ${STAGEDIR}${KMODDIR} +	${INSTALL_KLD} ${VBOX_BIN}/vboxvfs.ko ${STAGEDIR}${KMODDIR} +	${INSTALL_LIB} ${VBOX_BIN}/pam_vbox.so ${STAGEDIR}${PREFIX}/lib +	${INSTALL_PROGRAM} ${VBOX_SBINS:S|^|${VBOX_BIN}/|} \ +	    ${STAGEDIR}${PREFIX}/sbin/ + +do-install-X11-on: +	${INSTALL_PROGRAM} ${VBOX_BIN}/VBoxClient ${STAGEDIR}${PREFIX}/bin/ +	${INSTALL_SCRIPT} \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ +	    ${STAGEDIR}${PREFIX}/bin/VBoxClient-all +	# X11 autostart +	${MKDIR} ${STAGEDIR}${PREFIX}/etc/xdg/autostart/ +	${INSTALL_DATA} \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/vboxclient.desktop \ +	    ${STAGEDIR}${PREFIX}/etc/xdg/autostart/ +	# KDE autostart +	${MKDIR} ${STAGEDIR}${PREFIX}/share/autostart/ +	${INSTALL_DATA} \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/vboxclient.desktop \ +	    ${STAGEDIR}${PREFIX}/share/autostart/ +	${MKDIR} ${STAGEDIR}${VIDEODIR} +	${INSTALL_LIB} ${VBOX_BIN}/vboxvideo_drv_system.so \ +	    ${STAGEDIR}${VIDEODIR}/vboxvideo_drv.so +	${MKDIR} ${STAGEDIR}${INPUTDIR} +	${INSTALL_LIB} ${VBOX_BIN}/vboxmouse_drv_system.so \ +	    ${STAGEDIR}${INPUTDIR}/vboxmouse_drv.so + +.include <bsd.port.post.mk> diff --git a/emulators/virtualbox-ose-additions-70/distinfo b/emulators/virtualbox-ose-additions-70/distinfo new file mode 100644 index 000000000000..644d77cfbd21 --- /dev/null +++ b/emulators/virtualbox-ose-additions-70/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1745631388 +SHA256 (VirtualBox-7.0.26.tar.bz2) = 8a6a83dd09e65a4aff85ba0df6bb1ba22c22f7f0923d86e4b130813d4a28c5db +SIZE (VirtualBox-7.0.26.tar.bz2) = 174650718 diff --git a/emulators/virtualbox-ose-additions-70/files/vboxguest.in b/emulators/virtualbox-ose-additions-70/files/vboxguest.in new file mode 100644 index 000000000000..707fedf94a88 --- /dev/null +++ b/emulators/virtualbox-ose-additions-70/files/vboxguest.in @@ -0,0 +1,64 @@ +#!/bin/sh + +# PROVIDE:	vboxguest +# REQUIRE:	FILESYSTEMS +# BEFORE:	netif +# KEYWORD:	nojail + +# +# Add the following lines to /etc/rc.conf.local or /etc/rc.conf +# to enable this service: +# +# vboxguest_enable (bool):   Set to NO by default. +#               Set it to YES to enable vboxguest on startup + +. /etc/rc.subr + +name="vboxguest" +rcvar=vboxguest_enable +start_cmd="vboxguest_start" +stop_cmd="vboxguest_stop" + +vboxguest_modules="vboxguest:pci/vboxguest" + +vboxguest_start() +{ +	local _k _m + +	for _m in ${vboxguest_modules}; do +		_k=${_m%:*} +		_m=${_m#*:} +		if ! kldstat -q -m ${_m}; then +			if ! kldload ${_k} > /dev/null 2>&1; then +				warn "Can't load ${_k} module." +				return 1 +			fi +		fi +	done +} + +vboxguest_stop() +{ +	local _k _m _r + +	_r= +	for _m in ${vboxguest_modules}; do +		_r="${_m} ${_r}" +	done +	for _m in ${_r}; do +		_k=${_m%:*} +		_m=${_m#*:} +		if kldstat -q -m ${_m}; then +			if ! kldunload ${_k} > /dev/null 2>&1; then +				warn "Can't unload ${_k} module." +				return 1 +			fi +		fi +	done +} + +load_rc_config $name + +: ${vboxguest_enable="NO"} + +run_rc_command "$1" diff --git a/emulators/virtualbox-ose-additions-70/files/vboxservice.in b/emulators/virtualbox-ose-additions-70/files/vboxservice.in new file mode 100644 index 000000000000..2a46dbc188ef --- /dev/null +++ b/emulators/virtualbox-ose-additions-70/files/vboxservice.in @@ -0,0 +1,23 @@ +#!/bin/sh + +# PROVIDE: vboxservice +# REQUIRE: DAEMON vboxguest +# BEFORE: LOGIN +# KEYWORD: shutdown + +# Define vboxservice_enable in /etc/rc.conf[.local] to enable it. +# +# vboxservice_enable (bool):  Set to "NO" by default. +#                             Set it to "YES" to enable VBoxService. + +. /etc/rc.subr + +name="vboxservice" +rcvar=vboxservice_enable +command="%%PREFIX%%/sbin/VBoxService" + +load_rc_config $name + +: ${vboxservice_enable="NO"} + +run_rc_command "$1" diff --git a/emulators/virtualbox-ose-additions-70/files/vboxvideo.conf b/emulators/virtualbox-ose-additions-70/files/vboxvideo.conf new file mode 100644 index 000000000000..dd6626429703 --- /dev/null +++ b/emulators/virtualbox-ose-additions-70/files/vboxvideo.conf @@ -0,0 +1,5 @@ +libEGL.so.1	VBoxEGL.so +libGL.so.1	VBoxOGL.so + +[libglx.so] +libGL.so.1	libGL.so.1 diff --git a/emulators/virtualbox-ose-additions-70/pkg-descr b/emulators/virtualbox-ose-additions-70/pkg-descr new file mode 100644 index 000000000000..d06e1a04878c --- /dev/null +++ b/emulators/virtualbox-ose-additions-70/pkg-descr @@ -0,0 +1,6 @@ +VirtualBox Guest Additions provide closer integration between host and +guest, and improve the performance of guest systems. + +This FreeBSD provided package can be installed in FreeBSD guest machines. + +Additions are not intended for use on Host machines. diff --git a/emulators/virtualbox-ose-additions-70/pkg-message b/emulators/virtualbox-ose-additions-70/pkg-message new file mode 100644 index 000000000000..9b858849abdb --- /dev/null +++ b/emulators/virtualbox-ose-additions-70/pkg-message @@ -0,0 +1,36 @@ +[ +{ type: install +  message: <<EOM +VirtualBox Guest Additions are installed. + +To enable and start the required services: + +# sysrc vboxguest_enable="YES" +# sysrc vboxservice_enable="YES" + +To start the services, restart the system. + +In some situations, a panic will occur when the kernel module loads. +Having no more than one virtual CPU might mitigate the issue. + +For features such as window scaling and clipboard sharing, membership of +the wheel group is required. With username "jerry" as an example: + +# pw groupmod wheel -m jerry + +The settings dialogue for FreeBSD guests encourages use of the VMSVGA +graphics controller. Whilst this might suit installations of FreeBSD +without a desktop environment (a common use case), it is not appropriate +where Guest Additions are installed. + +Where Guest Additions are installed: + +1. prefer VBoxSVGA + +2. do not enable 3D acceleration (doing so will invisibly +   lose the preference for VBoxSVGA) + +You may ignore the yellow alert that encourages use of VMSVGA. +EOM +} +] diff --git a/emulators/virtualbox-ose-additions-70/pkg-plist b/emulators/virtualbox-ose-additions-70/pkg-plist new file mode 100644 index 000000000000..dac84dc22bcc --- /dev/null +++ b/emulators/virtualbox-ose-additions-70/pkg-plist @@ -0,0 +1,12 @@ +%%X11%%bin/VBoxClient +%%X11%%bin/VBoxClient-all +%%X11%%etc/xdg/autostart/vboxclient.desktop +lib/pam_vbox.so +%%X11%%lib/xorg/modules/drivers/vboxvideo_drv.so +%%X11%%lib/xorg/modules/input/vboxmouse_drv.so +sbin/VBoxControl +sbin/VBoxService +sbin/mount_vboxvfs +%%X11%%share/autostart/vboxclient.desktop +/%%KMODDIR%%/vboxguest.ko +/%%KMODDIR%%/vboxvfs.ko diff --git a/emulators/virtualbox-ose-additions-71/Makefile b/emulators/virtualbox-ose-additions-71/Makefile new file mode 100644 index 000000000000..3a252cd3362b --- /dev/null +++ b/emulators/virtualbox-ose-additions-71/Makefile @@ -0,0 +1,174 @@ +PORTNAME=	virtualbox-ose +DISTVERSION=	7.1.14 +PORTREVISION?=	0 +CATEGORIES=	emulators +MASTER_SITES=	https://download.virtualbox.org/virtualbox/${DISTVERSION}/ +PKGNAMESUFFIX?=	-additions-71 +DISTNAME=	VirtualBox-${DISTVERSION} + +MAINTAINER=	vbox@FreeBSD.org +COMMENT=	VirtualBox additions for FreeBSD guests +WWW=		https://www.virtualbox.org/ + +LICENSE=	GPLv2 +LICENSE_FILE=	${WRKSRC}/COPYING + +ONLY_FOR_ARCHS=	amd64 + +BUILD_DEPENDS=	yasm:devel/yasm \ +		kmk:devel/kBuild \ +		xsltproc:textproc/libxslt + +USES=		compiler:c++17-lang cpe iconv kmod tar:bzip2 +CPE_VENDOR=	oracle +CPE_PRODUCT=	vm_virtualbox +USE_RC_SUBR=	vboxguest vboxservice + +HAS_CONFIGURE=		yes +CONFIGURE_ARGS+=	--disable-alsa \ +			--disable-docs \ +			--disable-libvpx \ +			--disable-opengl \ +			--disable-pulse \ +			--disable-python \ +			--disable-sdl-ttf \ +			--disable-xpcom +CONFIGURE_ARGS+=	--nofatal --with-gcc="${CC}" --with-g++="${CXX}" + +MAKE_JOBS_UNSAFE=	yes + +CONFLICTS_INSTALL=	virtualbox-ose-additions-legacy \ +			virtualbox-ose-additions-nox11-legacy \ +			virtualbox-ose-additions \ +			virtualbox-ose-additions-nox11 \ +			virtualbox-ose-additions-70 \ +			virtualbox-ose-additions-nox11-70 \ +			virtualbox-ose-additions-72 \ +			virtualbox-ose-additions-nox11-72 + +PATCHDIR=		${.CURDIR}/../${PORTNAME}-71/files +EXTRACT_AFTER_ARGS=	--exclude tools/*.x86 --exclude tools/*.amd64 --exclude Firmware +PORTSCOUT=		limit:^7\.1\. + +WRKSRC=			${WRKDIR}/VirtualBox-${DISTVERSION} + +OPTIONS_DEFINE=		DBUS DEBUG X11 +OPTIONS_DEFAULT=	DBUS X11 +OPTIONS_SUB=		yes + +DBUS_LIB_DEPENDS=	libdbus-1.so:devel/dbus +DBUS_CONFIGURE_OFF=	--disable-dbus +DEBUG_CONFIGURE_ON=	--build-debug +DEBUG_VARS=		KMK_BUILDTYPE=debug +DEBUG_VARS_OFF=		KMK_BUILDTYPE=release +X11_BUILD_DEPENDS=	${LOCALBASE}/include/xorg/compiler.h:x11-servers/xorg-server +X11_RUN_DEPENDS=	xrandr:x11/xrandr +X11_USES=		pkgconfig xorg +X11_USE=		XORG=x11,xcursor,xext,xorgproto,xmu,xrandr,xt +X11_VARS=		VBOX_WITH_X11=1 + +.include <bsd.port.options.mk> + +.if ${SLAVE_PORT} == no +CONFLICTS_INSTALL+=	virtualbox-ose-additions-nox11-71 +.else +CONFLICTS_INSTALL+=	virtualbox-ose-additions-71 +.endif + +VIDEODIR=	${PREFIX}/lib/xorg/modules/drivers +INPUTDIR=	${PREFIX}/lib/xorg/modules/input + +VBOX_BIN=	${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/additions +VBOX_SBINS=	VBoxControl \ +		VBoxService \ +		mount_vboxvfs + +BUILD_WRKSRC=	${VBOX_BIN}/src + +KMK_ARCH=	freebsd.${ARCH:S/i386/x86/} +KMK_CONFIG+=	VBOX_LIBPATH_X11=${LOCALBASE} VBOX_FREEBSD_SRC=${SRC_BASE}/sys VBOX_ONLY_ADDITIONS=1 + +.if ${PORT_OPTIONS:MX11} +.else +VBOX_WITH_X11= +.endif + +.include <bsd.port.pre.mk> + +post-patch: +	@${ECHO_CMD} 'VBOX_WITH_DRAG_AND_DROP = ${VBOX_WITH_X11}' >> \ +	    ${WRKSRC}/LocalConfig.kmk +	@${ECHO_CMD} 'VBOX_WITH_DRAG_AND_DROP_GH = ${VBOX_WITH_X11}' >> \ +	    ${WRKSRC}/LocalConfig.kmk +	@${ECHO_CMD} 'VBOX_WITH_X11_ADDITIONS = ${VBOX_WITH_X11}' >> \ +	    ${WRKSRC}/LocalConfig.kmk +	@${ECHO_CMD} 'VBOX_GCC_std = -std=c++11' >> ${WRKSRC}/LocalConfig.kmk +	@${ECHO_CMD} 'CXXDEFS += _LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR' >> \ +	    ${WRKSRC}/LocalConfig.kmk +.if ${COMPILER_TYPE} == clang +	@${REINPLACE_CMD} -e 's| -finline-limit=8000||' \ +	    -e 's| -fno-merge-constants||' \ +	    -e 's| -mpreferred-stack-boundary=2||' ${WRKSRC}/Config.kmk +.endif +	@${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \ +	    ${WRKSRC}/Config.kmk ${WRKSRC}/configure \ +	    ${WRKSRC}/kBuild/header.kmk ${WRKSRC}/kBuild/units/qt4.kmk \ +	    ${WRKSRC}/kBuild/units/qt5.kmk ${WRKSRC}/kBuild/sdks/LIBSDL.kmk \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/vboxclient.desktop \ +	    ${WRKSRC}/src/VBox/Additions/x11/vboxmouse/Makefile.kmk \ +	    ${WRKSRC}/src/VBox/Additions/x11/vboxvideo/Makefile.kmk +	@${REINPLACE_CMD} \ +	    -e 's|\$$KBUILDDIR_BIN/kmk_sed|${LOCALBASE}/bin/kmk_sed|g' \ +	    ${WRKSRC}/configure +.if empty(ICONV_LIB) +	@${REINPLACE_CMD} -e 's|iconv||' ${WRKSRC}/Config.kmk \ +	    ${WRKSRC}/src/VBox/Runtime/Makefile.kmk \ +	    ${WRKSRC}/src/VBox/Additions/x11/VBoxClient/Makefile.kmk +	@${ECHO_CMD} 'VBOX_ICONV_DEFS = LIBICONV_PLUG' >> ${WRKSRC}/LocalConfig.kmk +.endif +.if ${OSVERSION} >= 1500038 +	@${ECHO_CMD} 'HAVE_MNTOPTS_IN_LIBUTIL = 1' >> \ +	    ${WRKSRC}/LocalConfig.kmk +.endif + +post-patch-X11-on: +	@${ECHO_CMD} 'VBOX_USE_SYSTEM_XORG_HEADERS = 1' >> \ +	    ${WRKSRC}/LocalConfig.kmk + +pre-build: +	cd ${WRKSRC} && ${SH} -c \ +	    ". env.sh && ${KMK_CONFIG} ${LOCALBASE}/bin/kmk" + +do-install: +	${MKDIR} ${STAGEDIR}${KMODDIR} +	${INSTALL_KLD} ${VBOX_BIN}/src/vboxguest/vboxguest.ko \ +	    ${STAGEDIR}${KMODDIR} +	${INSTALL_KLD} ${VBOX_BIN}/vboxvfs.ko ${STAGEDIR}${KMODDIR} +	${INSTALL_LIB} ${VBOX_BIN}/pam_vbox.so ${STAGEDIR}${PREFIX}/lib +	${INSTALL_PROGRAM} ${VBOX_SBINS:S|^|${VBOX_BIN}/|} \ +	    ${STAGEDIR}${PREFIX}/sbin/ + +do-install-X11-on: +	${INSTALL_PROGRAM} ${VBOX_BIN}/VBoxClient ${STAGEDIR}${PREFIX}/bin/ +	${INSTALL_SCRIPT} \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ +	    ${STAGEDIR}${PREFIX}/bin/VBoxClient-all +	# X11 autostart +	${MKDIR} ${STAGEDIR}${PREFIX}/etc/xdg/autostart/ +	${INSTALL_DATA} \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/vboxclient.desktop \ +	    ${STAGEDIR}${PREFIX}/etc/xdg/autostart/ +	# KDE autostart +	${MKDIR} ${STAGEDIR}${PREFIX}/share/autostart/ +	${INSTALL_DATA} \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/vboxclient.desktop \ +	    ${STAGEDIR}${PREFIX}/share/autostart/ +	${MKDIR} ${STAGEDIR}${VIDEODIR} +	${INSTALL_LIB} ${VBOX_BIN}/vboxvideo_drv_system.so \ +	    ${STAGEDIR}${VIDEODIR}/vboxvideo_drv.so +	${MKDIR} ${STAGEDIR}${INPUTDIR} +	${INSTALL_LIB} ${VBOX_BIN}/vboxmouse_drv_system.so \ +	    ${STAGEDIR}${INPUTDIR}/vboxmouse_drv.so + +.include <bsd.port.post.mk> diff --git a/emulators/virtualbox-ose-additions-71/distinfo b/emulators/virtualbox-ose-additions-71/distinfo new file mode 100644 index 000000000000..904760a18c0f --- /dev/null +++ b/emulators/virtualbox-ose-additions-71/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1761146098 +SHA256 (VirtualBox-7.1.14.tar.bz2) = 6a4eea884cd98049a5357133b718078d8aaae68047836a3f86cd5904336d6218 +SIZE (VirtualBox-7.1.14.tar.bz2) = 216819853 diff --git a/emulators/virtualbox-ose-additions-71/files/vboxguest.in b/emulators/virtualbox-ose-additions-71/files/vboxguest.in new file mode 100644 index 000000000000..707fedf94a88 --- /dev/null +++ b/emulators/virtualbox-ose-additions-71/files/vboxguest.in @@ -0,0 +1,64 @@ +#!/bin/sh + +# PROVIDE:	vboxguest +# REQUIRE:	FILESYSTEMS +# BEFORE:	netif +# KEYWORD:	nojail + +# +# Add the following lines to /etc/rc.conf.local or /etc/rc.conf +# to enable this service: +# +# vboxguest_enable (bool):   Set to NO by default. +#               Set it to YES to enable vboxguest on startup + +. /etc/rc.subr + +name="vboxguest" +rcvar=vboxguest_enable +start_cmd="vboxguest_start" +stop_cmd="vboxguest_stop" + +vboxguest_modules="vboxguest:pci/vboxguest" + +vboxguest_start() +{ +	local _k _m + +	for _m in ${vboxguest_modules}; do +		_k=${_m%:*} +		_m=${_m#*:} +		if ! kldstat -q -m ${_m}; then +			if ! kldload ${_k} > /dev/null 2>&1; then +				warn "Can't load ${_k} module." +				return 1 +			fi +		fi +	done +} + +vboxguest_stop() +{ +	local _k _m _r + +	_r= +	for _m in ${vboxguest_modules}; do +		_r="${_m} ${_r}" +	done +	for _m in ${_r}; do +		_k=${_m%:*} +		_m=${_m#*:} +		if kldstat -q -m ${_m}; then +			if ! kldunload ${_k} > /dev/null 2>&1; then +				warn "Can't unload ${_k} module." +				return 1 +			fi +		fi +	done +} + +load_rc_config $name + +: ${vboxguest_enable="NO"} + +run_rc_command "$1" diff --git a/emulators/virtualbox-ose-additions-71/files/vboxservice.in b/emulators/virtualbox-ose-additions-71/files/vboxservice.in new file mode 100644 index 000000000000..2a46dbc188ef --- /dev/null +++ b/emulators/virtualbox-ose-additions-71/files/vboxservice.in @@ -0,0 +1,23 @@ +#!/bin/sh + +# PROVIDE: vboxservice +# REQUIRE: DAEMON vboxguest +# BEFORE: LOGIN +# KEYWORD: shutdown + +# Define vboxservice_enable in /etc/rc.conf[.local] to enable it. +# +# vboxservice_enable (bool):  Set to "NO" by default. +#                             Set it to "YES" to enable VBoxService. + +. /etc/rc.subr + +name="vboxservice" +rcvar=vboxservice_enable +command="%%PREFIX%%/sbin/VBoxService" + +load_rc_config $name + +: ${vboxservice_enable="NO"} + +run_rc_command "$1" diff --git a/emulators/virtualbox-ose-additions-71/files/vboxvideo.conf b/emulators/virtualbox-ose-additions-71/files/vboxvideo.conf new file mode 100644 index 000000000000..dd6626429703 --- /dev/null +++ b/emulators/virtualbox-ose-additions-71/files/vboxvideo.conf @@ -0,0 +1,5 @@ +libEGL.so.1	VBoxEGL.so +libGL.so.1	VBoxOGL.so + +[libglx.so] +libGL.so.1	libGL.so.1 diff --git a/emulators/virtualbox-ose-additions-71/pkg-descr b/emulators/virtualbox-ose-additions-71/pkg-descr new file mode 100644 index 000000000000..d06e1a04878c --- /dev/null +++ b/emulators/virtualbox-ose-additions-71/pkg-descr @@ -0,0 +1,6 @@ +VirtualBox Guest Additions provide closer integration between host and +guest, and improve the performance of guest systems. + +This FreeBSD provided package can be installed in FreeBSD guest machines. + +Additions are not intended for use on Host machines. diff --git a/emulators/virtualbox-ose-additions-71/pkg-message b/emulators/virtualbox-ose-additions-71/pkg-message new file mode 100644 index 000000000000..9b858849abdb --- /dev/null +++ b/emulators/virtualbox-ose-additions-71/pkg-message @@ -0,0 +1,36 @@ +[ +{ type: install +  message: <<EOM +VirtualBox Guest Additions are installed. + +To enable and start the required services: + +# sysrc vboxguest_enable="YES" +# sysrc vboxservice_enable="YES" + +To start the services, restart the system. + +In some situations, a panic will occur when the kernel module loads. +Having no more than one virtual CPU might mitigate the issue. + +For features such as window scaling and clipboard sharing, membership of +the wheel group is required. With username "jerry" as an example: + +# pw groupmod wheel -m jerry + +The settings dialogue for FreeBSD guests encourages use of the VMSVGA +graphics controller. Whilst this might suit installations of FreeBSD +without a desktop environment (a common use case), it is not appropriate +where Guest Additions are installed. + +Where Guest Additions are installed: + +1. prefer VBoxSVGA + +2. do not enable 3D acceleration (doing so will invisibly +   lose the preference for VBoxSVGA) + +You may ignore the yellow alert that encourages use of VMSVGA. +EOM +} +] diff --git a/emulators/virtualbox-ose-additions-71/pkg-plist b/emulators/virtualbox-ose-additions-71/pkg-plist new file mode 100644 index 000000000000..dac84dc22bcc --- /dev/null +++ b/emulators/virtualbox-ose-additions-71/pkg-plist @@ -0,0 +1,12 @@ +%%X11%%bin/VBoxClient +%%X11%%bin/VBoxClient-all +%%X11%%etc/xdg/autostart/vboxclient.desktop +lib/pam_vbox.so +%%X11%%lib/xorg/modules/drivers/vboxvideo_drv.so +%%X11%%lib/xorg/modules/input/vboxmouse_drv.so +sbin/VBoxControl +sbin/VBoxService +sbin/mount_vboxvfs +%%X11%%share/autostart/vboxclient.desktop +/%%KMODDIR%%/vboxguest.ko +/%%KMODDIR%%/vboxvfs.ko diff --git a/emulators/virtualbox-ose-additions-72/Makefile b/emulators/virtualbox-ose-additions-72/Makefile new file mode 100644 index 000000000000..6196899a7ad8 --- /dev/null +++ b/emulators/virtualbox-ose-additions-72/Makefile @@ -0,0 +1,174 @@ +PORTNAME=	virtualbox-ose +DISTVERSION=	7.2.4 +PORTREVISION?=	0 +CATEGORIES=	emulators +MASTER_SITES=	https://download.virtualbox.org/virtualbox/${DISTVERSION}/ +PKGNAMESUFFIX?=	-additions-72 +DISTNAME=	VirtualBox-${DISTVERSION} + +MAINTAINER=	vbox@FreeBSD.org +COMMENT=	VirtualBox additions for FreeBSD guests +WWW=		https://www.virtualbox.org/ + +LICENSE=	GPLv2 +LICENSE_FILE=	${WRKSRC}/COPYING + +ONLY_FOR_ARCHS=	amd64 + +BUILD_DEPENDS=	yasm:devel/yasm \ +		kmk:devel/kBuild \ +		xsltproc:textproc/libxslt + +USES=		compiler:c++17-lang cpe iconv kmod tar:bzip2 +CPE_VENDOR=	oracle +CPE_PRODUCT=	vm_virtualbox +USE_RC_SUBR=	vboxguest vboxservice + +HAS_CONFIGURE=		yes +CONFIGURE_ARGS+=	--disable-alsa \ +			--disable-docs \ +			--disable-libvpx \ +			--disable-opengl \ +			--disable-pulse \ +			--disable-python \ +			--disable-sdl-ttf \ +			--disable-xpcom +CONFIGURE_ARGS+=	--nofatal --with-gcc="${CC}" --with-g++="${CXX}" + +MAKE_JOBS_UNSAFE=	yes + +CONFLICTS_INSTALL=	virtualbox-ose-additions-legacy \ +			virtualbox-ose-additions-nox11-legacy \ +			virtualbox-ose-additions \ +			virtualbox-ose-additions-nox11 \ +			virtualbox-ose-additions-70 \ +			virtualbox-ose-additions-nox11-70 \ +			virtualbox-ose-additions-71 \ +			virtualbox-ose-additions-nox11-71 + +PATCHDIR=		${.CURDIR}/../${PORTNAME}-72/files +EXTRACT_AFTER_ARGS=	--exclude tools/*.x86 --exclude tools/*.amd64 --exclude Firmware +PORTSCOUT=		limit:^7\.2\. + +WRKSRC=			${WRKDIR}/VirtualBox-${DISTVERSION} + +OPTIONS_DEFINE=		DBUS DEBUG X11 +OPTIONS_DEFAULT=	DBUS X11 +OPTIONS_SUB=		yes + +DBUS_LIB_DEPENDS=	libdbus-1.so:devel/dbus +DBUS_CONFIGURE_OFF=	--disable-dbus +DEBUG_CONFIGURE_ON=	--build-debug +DEBUG_VARS=		KMK_BUILDTYPE=debug +DEBUG_VARS_OFF=		KMK_BUILDTYPE=release +X11_BUILD_DEPENDS=	${LOCALBASE}/include/xorg/compiler.h:x11-servers/xorg-server +X11_RUN_DEPENDS=	xrandr:x11/xrandr +X11_USES=		pkgconfig xorg +X11_USE=		XORG=x11,xcursor,xext,xorgproto,xmu,xrandr,xt +X11_VARS=		VBOX_WITH_X11=1 + +.include <bsd.port.options.mk> + +.if ${SLAVE_PORT} == no +CONFLICTS_INSTALL+=	virtualbox-ose-additions-nox11-72 +.else +CONFLICTS_INSTALL+=	virtualbox-ose-additions-72 +.endif + +VIDEODIR=	${PREFIX}/lib/xorg/modules/drivers +INPUTDIR=	${PREFIX}/lib/xorg/modules/input + +VBOX_BIN=	${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/additions +VBOX_SBINS=	VBoxControl \ +		VBoxService \ +		mount_vboxvfs + +BUILD_WRKSRC=	${VBOX_BIN}/src + +KMK_ARCH=	freebsd.${ARCH:S/i386/x86/} +KMK_CONFIG+=	VBOX_LIBPATH_X11=${LOCALBASE} VBOX_FREEBSD_SRC=${SRC_BASE}/sys VBOX_ONLY_ADDITIONS=1 + +.if ${PORT_OPTIONS:MX11} +.else +VBOX_WITH_X11= +.endif + +.include <bsd.port.pre.mk> + +post-patch: +	@${ECHO_CMD} 'VBOX_WITH_DRAG_AND_DROP = ${VBOX_WITH_X11}' >> \ +	    ${WRKSRC}/LocalConfig.kmk +	@${ECHO_CMD} 'VBOX_WITH_DRAG_AND_DROP_GH = ${VBOX_WITH_X11}' >> \ +	    ${WRKSRC}/LocalConfig.kmk +	@${ECHO_CMD} 'VBOX_WITH_X11_ADDITIONS = ${VBOX_WITH_X11}' >> \ +	    ${WRKSRC}/LocalConfig.kmk +	@${ECHO_CMD} 'VBOX_GCC_std = -std=c++11' >> ${WRKSRC}/LocalConfig.kmk +	@${ECHO_CMD} 'CXXDEFS += _LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR' >> \ +	    ${WRKSRC}/LocalConfig.kmk +.if ${COMPILER_TYPE} == clang +	@${REINPLACE_CMD} -e 's| -finline-limit=8000||' \ +	    -e 's| -fno-merge-constants||' \ +	    -e 's| -mpreferred-stack-boundary=2||' ${WRKSRC}/Config.kmk +.endif +	@${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \ +	    ${WRKSRC}/Config.kmk ${WRKSRC}/configure \ +	    ${WRKSRC}/kBuild/header.kmk ${WRKSRC}/kBuild/units/qt4.kmk \ +	    ${WRKSRC}/kBuild/units/qt5.kmk ${WRKSRC}/kBuild/sdks/LIBSDL.kmk \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/vboxclient.desktop \ +	    ${WRKSRC}/src/VBox/Additions/x11/vboxmouse/Makefile.kmk \ +	    ${WRKSRC}/src/VBox/Additions/x11/vboxvideo/Makefile.kmk +	@${REINPLACE_CMD} \ +	    -e 's|\$$KBUILDDIR_BIN/kmk_sed|${LOCALBASE}/bin/kmk_sed|g' \ +	    ${WRKSRC}/configure +.if empty(ICONV_LIB) +	@${REINPLACE_CMD} -e 's|iconv||' ${WRKSRC}/Config.kmk \ +	    ${WRKSRC}/src/VBox/Runtime/Makefile.kmk \ +	    ${WRKSRC}/src/VBox/Additions/x11/VBoxClient/Makefile.kmk +	@${ECHO_CMD} 'VBOX_ICONV_DEFS = LIBICONV_PLUG' >> ${WRKSRC}/LocalConfig.kmk +.endif +.if ${OSVERSION} >= 1500038 +	@${ECHO_CMD} 'HAVE_MNTOPTS_IN_LIBUTIL = 1' >> \ +	    ${WRKSRC}/LocalConfig.kmk +.endif + +post-patch-X11-on: +	@${ECHO_CMD} 'VBOX_USE_SYSTEM_XORG_HEADERS = 1' >> \ +	    ${WRKSRC}/LocalConfig.kmk + +pre-build: +	cd ${WRKSRC} && ${SH} -c \ +	    ". env.sh && ${KMK_CONFIG} ${LOCALBASE}/bin/kmk" + +do-install: +	${MKDIR} ${STAGEDIR}${KMODDIR} +	${INSTALL_KLD} ${VBOX_BIN}/src/vboxguest/vboxguest.ko \ +	    ${STAGEDIR}${KMODDIR} +	${INSTALL_KLD} ${VBOX_BIN}/vboxvfs.ko ${STAGEDIR}${KMODDIR} +	${INSTALL_LIB} ${VBOX_BIN}/pam_vbox.so ${STAGEDIR}${PREFIX}/lib +	${INSTALL_PROGRAM} ${VBOX_SBINS:S|^|${VBOX_BIN}/|} \ +	    ${STAGEDIR}${PREFIX}/sbin/ + +do-install-X11-on: +	${INSTALL_PROGRAM} ${VBOX_BIN}/VBoxClient ${STAGEDIR}${PREFIX}/bin/ +	${INSTALL_SCRIPT} \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ +	    ${STAGEDIR}${PREFIX}/bin/VBoxClient-all +	# X11 autostart +	${MKDIR} ${STAGEDIR}${PREFIX}/etc/xdg/autostart/ +	${INSTALL_DATA} \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/vboxclient.desktop \ +	    ${STAGEDIR}${PREFIX}/etc/xdg/autostart/ +	# KDE autostart +	${MKDIR} ${STAGEDIR}${PREFIX}/share/autostart/ +	${INSTALL_DATA} \ +	    ${WRKSRC}/src/VBox/Additions/x11/Installer/vboxclient.desktop \ +	    ${STAGEDIR}${PREFIX}/share/autostart/ +	${MKDIR} ${STAGEDIR}${VIDEODIR} +	${INSTALL_LIB} ${VBOX_BIN}/vboxvideo_drv_system.so \ +	    ${STAGEDIR}${VIDEODIR}/vboxvideo_drv.so +	${MKDIR} ${STAGEDIR}${INPUTDIR} +	${INSTALL_LIB} ${VBOX_BIN}/vboxmouse_drv_system.so \ +	    ${STAGEDIR}${INPUTDIR}/vboxmouse_drv.so + +.include <bsd.port.post.mk> diff --git a/emulators/virtualbox-ose-additions-72/distinfo b/emulators/virtualbox-ose-additions-72/distinfo new file mode 100644 index 000000000000..729b45a32abd --- /dev/null +++ b/emulators/virtualbox-ose-additions-72/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1761088888 +SHA256 (VirtualBox-7.2.4.tar.bz2) = d281ec981b5f580211a0cedd1b75a1adcb0fbfcbb768d8c2bf4429f4763e8bbd +SIZE (VirtualBox-7.2.4.tar.bz2) = 207084201 diff --git a/emulators/virtualbox-ose-additions-72/files/vboxguest.in b/emulators/virtualbox-ose-additions-72/files/vboxguest.in new file mode 100644 index 000000000000..707fedf94a88 --- /dev/null +++ b/emulators/virtualbox-ose-additions-72/files/vboxguest.in @@ -0,0 +1,64 @@ +#!/bin/sh + +# PROVIDE:	vboxguest +# REQUIRE:	FILESYSTEMS +# BEFORE:	netif +# KEYWORD:	nojail + +# +# Add the following lines to /etc/rc.conf.local or /etc/rc.conf +# to enable this service: +# +# vboxguest_enable (bool):   Set to NO by default. +#               Set it to YES to enable vboxguest on startup + +. /etc/rc.subr + +name="vboxguest" +rcvar=vboxguest_enable +start_cmd="vboxguest_start" +stop_cmd="vboxguest_stop" + +vboxguest_modules="vboxguest:pci/vboxguest" + +vboxguest_start() +{ +	local _k _m + +	for _m in ${vboxguest_modules}; do +		_k=${_m%:*} +		_m=${_m#*:} +		if ! kldstat -q -m ${_m}; then +			if ! kldload ${_k} > /dev/null 2>&1; then +				warn "Can't load ${_k} module." +				return 1 +			fi +		fi +	done +} + +vboxguest_stop() +{ +	local _k _m _r + +	_r= +	for _m in ${vboxguest_modules}; do +		_r="${_m} ${_r}" +	done +	for _m in ${_r}; do +		_k=${_m%:*} +		_m=${_m#*:} +		if kldstat -q -m ${_m}; then +			if ! kldunload ${_k} > /dev/null 2>&1; then +				warn "Can't unload ${_k} module." +				return 1 +			fi +		fi +	done +} + +load_rc_config $name + +: ${vboxguest_enable="NO"} + +run_rc_command "$1" diff --git a/emulators/virtualbox-ose-additions-72/files/vboxservice.in b/emulators/virtualbox-ose-additions-72/files/vboxservice.in new file mode 100644 index 000000000000..2a46dbc188ef --- /dev/null +++ b/emulators/virtualbox-ose-additions-72/files/vboxservice.in @@ -0,0 +1,23 @@ +#!/bin/sh + +# PROVIDE: vboxservice +# REQUIRE: DAEMON vboxguest +# BEFORE: LOGIN +# KEYWORD: shutdown + +# Define vboxservice_enable in /etc/rc.conf[.local] to enable it. +# +# vboxservice_enable (bool):  Set to "NO" by default. +#                             Set it to "YES" to enable VBoxService. + +. /etc/rc.subr + +name="vboxservice" +rcvar=vboxservice_enable +command="%%PREFIX%%/sbin/VBoxService" + +load_rc_config $name + +: ${vboxservice_enable="NO"} + +run_rc_command "$1" diff --git a/emulators/virtualbox-ose-additions-72/files/vboxvideo.conf b/emulators/virtualbox-ose-additions-72/files/vboxvideo.conf new file mode 100644 index 000000000000..dd6626429703 --- /dev/null +++ b/emulators/virtualbox-ose-additions-72/files/vboxvideo.conf @@ -0,0 +1,5 @@ +libEGL.so.1	VBoxEGL.so +libGL.so.1	VBoxOGL.so + +[libglx.so] +libGL.so.1	libGL.so.1 diff --git a/emulators/virtualbox-ose-additions-72/pkg-descr b/emulators/virtualbox-ose-additions-72/pkg-descr new file mode 100644 index 000000000000..d06e1a04878c --- /dev/null +++ b/emulators/virtualbox-ose-additions-72/pkg-descr @@ -0,0 +1,6 @@ +VirtualBox Guest Additions provide closer integration between host and +guest, and improve the performance of guest systems. + +This FreeBSD provided package can be installed in FreeBSD guest machines. + +Additions are not intended for use on Host machines. diff --git a/emulators/virtualbox-ose-additions-72/pkg-message b/emulators/virtualbox-ose-additions-72/pkg-message new file mode 100644 index 000000000000..9b858849abdb --- /dev/null +++ b/emulators/virtualbox-ose-additions-72/pkg-message @@ -0,0 +1,36 @@ +[ +{ type: install +  message: <<EOM +VirtualBox Guest Additions are installed. + +To enable and start the required services: + +# sysrc vboxguest_enable="YES" +# sysrc vboxservice_enable="YES" + +To start the services, restart the system. + +In some situations, a panic will occur when the kernel module loads. +Having no more than one virtual CPU might mitigate the issue. + +For features such as window scaling and clipboard sharing, membership of +the wheel group is required. With username "jerry" as an example: + +# pw groupmod wheel -m jerry + +The settings dialogue for FreeBSD guests encourages use of the VMSVGA +graphics controller. Whilst this might suit installations of FreeBSD +without a desktop environment (a common use case), it is not appropriate +where Guest Additions are installed. + +Where Guest Additions are installed: + +1. prefer VBoxSVGA + +2. do not enable 3D acceleration (doing so will invisibly +   lose the preference for VBoxSVGA) + +You may ignore the yellow alert that encourages use of VMSVGA. +EOM +} +] diff --git a/emulators/virtualbox-ose-additions-72/pkg-plist b/emulators/virtualbox-ose-additions-72/pkg-plist new file mode 100644 index 000000000000..dac84dc22bcc --- /dev/null +++ b/emulators/virtualbox-ose-additions-72/pkg-plist @@ -0,0 +1,12 @@ +%%X11%%bin/VBoxClient +%%X11%%bin/VBoxClient-all +%%X11%%etc/xdg/autostart/vboxclient.desktop +lib/pam_vbox.so +%%X11%%lib/xorg/modules/drivers/vboxvideo_drv.so +%%X11%%lib/xorg/modules/input/vboxmouse_drv.so +sbin/VBoxControl +sbin/VBoxService +sbin/mount_vboxvfs +%%X11%%share/autostart/vboxclient.desktop +/%%KMODDIR%%/vboxguest.ko +/%%KMODDIR%%/vboxvfs.ko diff --git a/emulators/virtualbox-ose-additions-nox11-70/Makefile b/emulators/virtualbox-ose-additions-nox11-70/Makefile new file mode 100644 index 000000000000..a9a2be2575ba --- /dev/null +++ b/emulators/virtualbox-ose-additions-nox11-70/Makefile @@ -0,0 +1,8 @@ +PORTREVISION=	0 +PKGNAMESUFFIX=	-additions-nox11-70 + +MASTERDIR=	${.CURDIR}/../virtualbox-ose-additions-70 + +OPTIONS_EXCLUDE=	DBUS DEBUG OPENGL X11 + +.include "${MASTERDIR}/Makefile" diff --git a/emulators/virtualbox-ose-additions-nox11-71/Makefile b/emulators/virtualbox-ose-additions-nox11-71/Makefile new file mode 100644 index 000000000000..ef057aa1f5f2 --- /dev/null +++ b/emulators/virtualbox-ose-additions-nox11-71/Makefile @@ -0,0 +1,8 @@ +PORTREVISION=	0 +PKGNAMESUFFIX=	-additions-nox11-71 + +MASTERDIR=	${.CURDIR}/../virtualbox-ose-additions-71 + +OPTIONS_EXCLUDE=	DBUS DEBUG OPENGL X11 + +.include "${MASTERDIR}/Makefile" diff --git a/emulators/virtualbox-ose-additions-nox11-72/Makefile b/emulators/virtualbox-ose-additions-nox11-72/Makefile new file mode 100644 index 000000000000..ed7edcf49366 --- /dev/null +++ b/emulators/virtualbox-ose-additions-nox11-72/Makefile @@ -0,0 +1,8 @@ +PORTREVISION=	0 +PKGNAMESUFFIX=	-additions-nox11-72 + +MASTERDIR=	${.CURDIR}/../virtualbox-ose-additions-72 + +OPTIONS_EXCLUDE=	DBUS DEBUG OPENGL X11 + +.include "${MASTERDIR}/Makefile" diff --git a/emulators/virtualbox-ose-kmod-71/Makefile b/emulators/virtualbox-ose-kmod-71/Makefile index 75f20dc887fc..88f593c525fc 100644 --- a/emulators/virtualbox-ose-kmod-71/Makefile +++ b/emulators/virtualbox-ose-kmod-71/Makefile @@ -1,5 +1,5 @@  PORTNAME=	virtualbox-ose -DISTVERSION=	7.1.12 +DISTVERSION=	7.1.14  CATEGORIES=	emulators  MASTER_SITES=	https://download.virtualbox.org/virtualbox/${DISTVERSION}/  PKGNAMESUFFIX=	-kmod-71 diff --git a/emulators/virtualbox-ose-kmod-71/distinfo b/emulators/virtualbox-ose-kmod-71/distinfo index fb7394d7745c..440b2b8ba4f1 100644 --- a/emulators/virtualbox-ose-kmod-71/distinfo +++ b/emulators/virtualbox-ose-kmod-71/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1752700000 -SHA256 (VirtualBox-7.1.12.tar.bz2) = 6f9618f39168898134975f51df7c2d6d5129c0aa82b6ae11cf47f920c70df276 -SIZE (VirtualBox-7.1.12.tar.bz2) = 214691769 +TIMESTAMP = 1761088888 +SHA256 (VirtualBox-7.1.14.tar.bz2) = 6a4eea884cd98049a5357133b718078d8aaae68047836a3f86cd5904336d6218 +SIZE (VirtualBox-7.1.14.tar.bz2) = 216819853 diff --git a/emulators/virtualbox-ose-kmod-72/Makefile b/emulators/virtualbox-ose-kmod-72/Makefile index 40c529cae48a..1fbfaa53f6df 100644 --- a/emulators/virtualbox-ose-kmod-72/Makefile +++ b/emulators/virtualbox-ose-kmod-72/Makefile @@ -1,5 +1,5 @@  PORTNAME=	virtualbox-ose -DISTVERSION=	7.2.2 +DISTVERSION=	7.2.4  CATEGORIES=	emulators  MASTER_SITES=	https://download.virtualbox.org/virtualbox/${DISTVERSION}/  PKGNAMESUFFIX=	-kmod-72 diff --git a/emulators/virtualbox-ose-kmod-72/distinfo b/emulators/virtualbox-ose-kmod-72/distinfo index 41bf0f3a16ac..729b45a32abd 100644 --- a/emulators/virtualbox-ose-kmod-72/distinfo +++ b/emulators/virtualbox-ose-kmod-72/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1759400000 -SHA256 (VirtualBox-7.2.2.tar.bz2) = b0e63bfb855327aecf1122cda33390c33734e5ffed72f123f5edf786a8ce1393 -SIZE (VirtualBox-7.2.2.tar.bz2) = 206992991 +TIMESTAMP = 1761088888 +SHA256 (VirtualBox-7.2.4.tar.bz2) = d281ec981b5f580211a0cedd1b75a1adcb0fbfcbb768d8c2bf4429f4763e8bbd +SIZE (VirtualBox-7.2.4.tar.bz2) = 207084201 diff --git a/emulators/virtualbox-ose-legacy/files/vboxinit.in b/emulators/virtualbox-ose-legacy/files/vboxinit.in index 9895da9e362e..9574d7d6295e 100644 --- a/emulators/virtualbox-ose-legacy/files/vboxinit.in +++ b/emulators/virtualbox-ose-legacy/files/vboxinit.in @@ -16,7 +16,7 @@  # vboxinit_stop (str):		Default stop cmd for VBoxManage controlvm.  #				(default: savestate)  # vboxinit_start_delay (int):	Default startup delay in seconds. -#				(default: 0) +#				(default: 1)  # vboxinit_stop_delay (int):	Default shutdown delay in seconds.  #				(default: 0)  # diff --git a/emulators/virtualbox-ose-nox11-71/Makefile b/emulators/virtualbox-ose-nox11-71/Makefile index 66d0c82c9bc9..bd1a0035d424 100644 --- a/emulators/virtualbox-ose-nox11-71/Makefile +++ b/emulators/virtualbox-ose-nox11-71/Makefile @@ -1,4 +1,4 @@ -PORTREVISION=	1 +PORTREVISION=	0  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 bd2cd188d048..d415932ea096 100644 --- a/emulators/virtualbox-ose-nox11-72/Makefile +++ b/emulators/virtualbox-ose-nox11-72/Makefile @@ -1,4 +1,4 @@ -PORTREVISION=	1 +PORTREVISION=	0  PKGNAMESUFFIX=	-nox11-72  MASTERDIR=	${.CURDIR}/../virtualbox-ose-72 diff --git a/emulators/virtualbox-ose/files/vboxinit.in b/emulators/virtualbox-ose/files/vboxinit.in index 9895da9e362e..9574d7d6295e 100644 --- a/emulators/virtualbox-ose/files/vboxinit.in +++ b/emulators/virtualbox-ose/files/vboxinit.in @@ -16,7 +16,7 @@  # vboxinit_stop (str):		Default stop cmd for VBoxManage controlvm.  #				(default: savestate)  # vboxinit_start_delay (int):	Default startup delay in seconds. -#				(default: 0) +#				(default: 1)  # vboxinit_stop_delay (int):	Default shutdown delay in seconds.  #				(default: 0)  # diff --git a/emulators/wine-devel/Makefile b/emulators/wine-devel/Makefile index 904dc99b83f7..b1d51d5546f1 100644 --- a/emulators/wine-devel/Makefile +++ b/emulators/wine-devel/Makefile @@ -1,5 +1,6 @@  PORTNAME=	wine -DISTVERSION=	10.16 +DISTVERSION=	10.18 +PORTREVISION=	1  PORTEPOCH=	1  CATEGORIES=	emulators  MASTER_SITES=	https://dl.winehq.org/wine/source/10.x/ @@ -16,6 +17,7 @@ LICENSE_FILE=	${WRKSRC}/LICENSE  ONLY_FOR_ARCHS=	amd64 i386  BUILD_DEPENDS=	${LOCALBASE}/bin/flex:textproc/flex +LIB_DEPENDS=	libhwloc.so:devel/hwloc2  # Only devel/llvm17 and later come with necessary include files - PR274542  USES=		bison cpe desktop-file-utils gmake llvm:min=17,build,noexport \ @@ -38,10 +40,10 @@ CONFIGURE_ARGS=	--verbose \  		--without-capi \  		--without-coreaudio \  		--without-dbus \ -		--without-ffmpeg \  		--without-gettext --without-gettextpo \  		--without-gphoto \  		--without-gssapi \ +		--with-hwloc \  		--without-inotify \  		--without-krb5 \  		--with-mingw CROSSCC="clang" \ @@ -69,13 +71,14 @@ SUB_FILES=	pkg-message  PORTDATA=	wine.inf -OPTIONS_DEFINE=		CUPS DOCS DOSBOX GECKO GNUTLS MONO V4L WAYLAND X11 -OPTIONS_DEFAULT=	ALSA GNUTLS WAYLAND X11 +OPTIONS_DEFINE=		CUPS DOCS DOSBOX FFMPEG GECKO GNUTLS MONO V4L WAYLAND X11 +OPTIONS_DEFAULT=	ALSA FFMPEG GNUTLS WAYLAND X11  OPTIONS_RADIO=		AUDIO  OPTIONS_RADIO_AUDIO=	ALSA OSS  OPTIONS_SUB=		yes  DOSBOX_DESC=	Use DOSBox to run MS-DOS programs +FFMPEG_DESC=	FFMPEG support  GECKO_DESC=	Bundle Gecko MSI package for Wine  MONO_DESC=	Bundle Mono MSI package for Wine  WAYLAND_DESC=	Wayland Support @@ -91,6 +94,9 @@ CUPS_CONFIGURE_WITH=	cups  DOSBOX_RUN_DEPENDS=	dosbox:emulators/dosbox +FFMPEG_LIB_DEPENDS=	libavutil.so:multimedia/ffmpeg +FFMPEG_CONFIGURE_WITH=	ffmpeg +  GECKO_RUN_DEPENDS=	wine-gecko-devel>0:emulators/wine-gecko-devel  GNUTLS_LIB_DEPENDS=	libgnutls.so:security/gnutls diff --git a/emulators/wine-devel/distinfo b/emulators/wine-devel/distinfo index 16223d1de1f3..930ce6712983 100644 --- a/emulators/wine-devel/distinfo +++ b/emulators/wine-devel/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1759596682 -SHA256 (wine-10.16.tar.xz) = c5ed2742bff208c63b005bcfb91a2fc6cc49af6c6695bc8c0cf0fe6f4da60446 -SIZE (wine-10.16.tar.xz) = 32840688 +TIMESTAMP = 1761986980 +SHA256 (wine-10.18.tar.xz) = 51fb7273d65d09dea032c4a5e2197b12724b27ca360e1a622b2373d1ee50ad7b +SIZE (wine-10.18.tar.xz) = 32970828 diff --git a/emulators/wine-devel/files/pkg-message.in b/emulators/wine-devel/files/pkg-message.in index 18639d47533e..46bbc14aacc2 100644 --- a/emulators/wine-devel/files/pkg-message.in +++ b/emulators/wine-devel/files/pkg-message.in @@ -18,4 +18,15 @@ EOF  $ wine64 regedit wayland.reg  EOM  } +{ type: upgrade +  maximum_version: "10.17" +  message: <<EOM +Since the version 10.17, wine require hwloc2 as an additional +dependency. If it was not automatically installed, then install it +for the 64bit part with: +# pkg install hwloc2 +And for the 32bit part do as the user that would use wine: +$ %%PREFIX%%/share/wine/pkg32.sh install hwloc2 +EOM +}  ] diff --git a/emulators/wine-devel/pkg-plist b/emulators/wine-devel/pkg-plist index 9e0a8606ff60..cbbfdee6007e 100644 --- a/emulators/wine-devel/pkg-plist +++ b/emulators/wine-devel/pkg-plist @@ -908,6 +908,8 @@ include/wine/windows/robuffer.h  include/wine/windows/robuffer.idl  include/wine/windows/roerrorapi.h  include/wine/windows/rometadata.h +include/wine/windows/rometadataapi.h +include/wine/windows/rometadataapi.idl  include/wine/windows/rometadataresolution.h  include/wine/windows/roparameterizediid.h  include/wine/windows/roparameterizediid.idl @@ -1019,6 +1021,7 @@ include/wine/windows/tbs.h  include/wine/windows/tchar.h  include/wine/windows/tcpestats.h  include/wine/windows/tcpmib.h +include/wine/windows/tdh.h  include/wine/windows/textserv.h  include/wine/windows/textstor.h  include/wine/windows/textstor.idl @@ -1625,6 +1628,7 @@ lib/wine/%%WINEARCH%%-unix/libstrmiids.a  lib/wine/%%WINEARCH%%-unix/libsxs.a  lib/wine/%%WINEARCH%%-unix/libt2embed.a  lib/wine/%%WINEARCH%%-unix/libtapi32.a +lib/wine/%%WINEARCH%%-unix/libtdh.a  lib/wine/%%WINEARCH%%-unix/libucrtbase.a  lib/wine/%%WINEARCH%%-unix/libuiautomationcore.a  lib/wine/%%WINEARCH%%-unix/libunicows.a @@ -1752,6 +1756,7 @@ lib/wine/%%WINEARCH%%-windows/colorcnv.dll  lib/wine/%%WINEARCH%%-windows/combase.dll  lib/wine/%%WINEARCH%%-windows/comcat.dll  lib/wine/%%WINEARCH%%-windows/comctl32.dll +lib/wine/%%WINEARCH%%-windows/comctl32_v6.dll  lib/wine/%%WINEARCH%%-windows/comdlg32.dll  lib/wine/%%WINEARCH%%-windows/coml2.dll  %%WINE32%%lib/wine/%%WINEARCH%%-windows/comm.drv16 @@ -2188,6 +2193,7 @@ lib/wine/%%WINEARCH%%-windows/libstrmiids.a  lib/wine/%%WINEARCH%%-windows/libsxs.a  lib/wine/%%WINEARCH%%-windows/libt2embed.a  lib/wine/%%WINEARCH%%-windows/libtapi32.a +lib/wine/%%WINEARCH%%-windows/libtdh.a  lib/wine/%%WINEARCH%%-windows/libucrtbase.a  lib/wine/%%WINEARCH%%-windows/libuiautomationcore.a  lib/wine/%%WINEARCH%%-windows/libunicows.a @@ -2612,6 +2618,7 @@ lib/wine/%%WINEARCH%%-windows/win32u.dll  %%WINE32%%lib/wine/%%WINEARCH%%-windows/win87em.dll16  %%WINE32%%lib/wine/%%WINEARCH%%-windows/winaspi.dll16  lib/wine/%%WINEARCH%%-windows/winbio.dll +lib/wine/%%WINEARCH%%-windows/winbrand.dll  %%WINE32%%lib/wine/%%WINEARCH%%-windows/windebug.dll16  lib/wine/%%WINEARCH%%-windows/windows.applicationmodel.dll  lib/wine/%%WINEARCH%%-windows/windows.devices.bluetooth.dll @@ -2636,6 +2643,7 @@ lib/wine/%%WINEARCH%%-windows/windows.storage.applicationdata.dll  lib/wine/%%WINEARCH%%-windows/windows.storage.dll  lib/wine/%%WINEARCH%%-windows/windows.system.profile.systemid.dll  lib/wine/%%WINEARCH%%-windows/windows.system.profile.systemmanufacturers.dll +lib/wine/%%WINEARCH%%-windows/windows.ui.core.textinput.dll  lib/wine/%%WINEARCH%%-windows/windows.ui.dll  lib/wine/%%WINEARCH%%-windows/windows.ui.xaml.dll  lib/wine/%%WINEARCH%%-windows/windows.web.dll diff --git a/emulators/wine-gecko-devel/Makefile b/emulators/wine-gecko-devel/Makefile index 8bce71815f82..5abee52c5833 100644 --- a/emulators/wine-gecko-devel/Makefile +++ b/emulators/wine-gecko-devel/Makefile @@ -1,9 +1,9 @@  PORTNAME=	wine-gecko  DISTVERSION=	2.47.4 +DISTVERSIONSUFFIX=-x86  CATEGORIES=	emulators  MASTER_SITES=	http://dl.winehq.org/wine/wine-gecko/${DISTVERSION}/  PKGNAMESUFFIX=	-devel -DISTNAME=	wine-gecko-${DISTVERSION}-x86  EXTRACT_SUFX=	.msi  EXTRACT_ONLY= diff --git a/emulators/wine-mono-devel/Makefile b/emulators/wine-mono-devel/Makefile index 961040290d8a..8321b31ce6d6 100644 --- a/emulators/wine-mono-devel/Makefile +++ b/emulators/wine-mono-devel/Makefile @@ -1,5 +1,5 @@  PORTNAME=	wine-mono -DISTVERSION=	10.2.0 +DISTVERSION=	10.3.0  DISTVERSIONSUFFIX=-x86  CATEGORIES=	emulators  MASTER_SITES=	http://dl.winehq.org/wine/wine-mono/${DISTVERSION}/ diff --git a/emulators/wine-mono-devel/distinfo b/emulators/wine-mono-devel/distinfo index c473cd4bba39..1ff6488fae14 100644 --- a/emulators/wine-mono-devel/distinfo +++ b/emulators/wine-mono-devel/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1755797604 -SHA256 (wine-mono-10.2.0-x86.msi) = 4e1ed3f02e92d053133d03ddfbefcf6db4a4dc231a9aed3367b17117a88847d8 -SIZE (wine-mono-10.2.0-x86.msi) = 85497856 +TIMESTAMP = 1760804584 +SHA256 (wine-mono-10.3.0-x86.msi) = cece5c63180094dffdf01d0fbe362a4b606e5280b98cdfd1b8568cdf9b572f98 +SIZE (wine-mono-10.3.0-x86.msi) = 85515264 diff --git a/emulators/wine/Makefile b/emulators/wine/Makefile index febca4eb8b88..8de3d4f3ba01 100644 --- a/emulators/wine/Makefile +++ b/emulators/wine/Makefile @@ -21,14 +21,13 @@ BUILD_DEPENDS=	${LOCALBASE}/bin/flex:textproc/flex  USES=		bison cpe desktop-file-utils gmake \  		llvm:min=17,build,noexport localbase \  		pkgconfig sdl shebangfix tar:xz +CPE_VENDOR=	winehq  USE_GCC=	yes  USE_LDCONFIG=	${PREFIX}/lib ${PREFIX}/lib/wine  USE_SDL=	sdl2 -CPE_VENDOR=	winehq - -CONFLICTS_INSTALL=	wine-devel - +SHEBANG_FILES=	tools/make_requests tools/winemaker/winemaker \ +		tools/winedump/function_grep.pl  GNU_CONFIGURE=	yes  CONFIGURE_ARGS+=--verbose \  		--disable-kerberos \ @@ -56,16 +55,17 @@ CONFIGURE_ARGS+=--verbose \  		--without-unwind \  		--without-usb  CONFIGURE_ENV=	CPPBIN="${CPP}" FLEX="${LOCALBASE}/bin/flex" -SHEBANG_FILES=	tools/make_requests tools/winemaker/winemaker \ -		tools/winedump/function_grep.pl + +PIE_UNSAFE=	yes + +CONFLICTS_INSTALL=	wine-devel  BINARY_ALIAS+=	clang=${LOCALBASE}/bin/clang${LLVM_VERSION} \  		lld-link=${LOCALBASE}/bin/lld-link${LLVM_VERSION} +PORTSCOUT=	limit:^10\.0  SUB_FILES=	pkg-message -PIE_UNSAFE=	yes -  PORTDATA=	wine.inf  OPTIONS_DEFINE=	CUPS DOCS DOSBOX GNUTLS V4L WAYLAND X11 GECKO MONO @@ -79,45 +79,43 @@ GECKO_DESC=	Bundle Gecko MSI package for Wine  MONO_DESC=	Bundle Mono MSI package for Wine  WAYLAND_DESC=	Wayland Support -PORTSCOUT=	limit:^10\.0 - -ALSA_CONFIGURE_WITH=	alsa -ALSA_USES=		gnome gstreamer -ALSA_USE=		GNOME=glib20  ALSA_LIB_DEPENDS=	libasound.so:audio/alsa-lib  ALSA_RUN_DEPENDS=	alsa-plugins>0:audio/alsa-plugins +ALSA_USES=		gnome gstreamer +ALSA_USE=		GNOME=glib20 +ALSA_CONFIGURE_WITH=	alsa -CUPS_CONFIGURE_WITH=	cups  CUPS_LIB_DEPENDS=	libcups.so:print/cups +CUPS_CONFIGURE_WITH=	cups  DOSBOX_RUN_DEPENDS=	dosbox:emulators/dosbox  GECKO_RUN_DEPENDS=	wine-gecko>0:emulators/wine-gecko -GNUTLS_CONFIGURE_WITH=	gnutls  GNUTLS_LIB_DEPENDS=	libgnutls.so:security/gnutls +GNUTLS_CONFIGURE_WITH=	gnutls  MONO_RUN_DEPENDS=	wine-mono>0:emulators/wine-mono -OSS_CONFIGURE_WITH=	oss  OSS_USES=		gnome gstreamer  OSS_USE=		GNOME=glib20 +OSS_CONFIGURE_WITH=	oss -V4L_CONFIGURE_WITH=	v4l2  V4L_BUILD_DEPENDS=	${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat  V4L_LIB_DEPENDS=	libv4l2.so:multimedia/libv4l +V4L_CONFIGURE_WITH=	v4l2 -WAYLAND_CONFIGURE_WITH=	wayland  WAYLAND_BUILD_DEPENDS=	${LOCALBASE}/include/linux/input.h:devel/evdev-proto  WAYLAND_LIB_DEPENDS=	libwayland-client.so:graphics/wayland \  			libxkbcommon.so:x11/libxkbcommon +WAYLAND_CONFIGURE_WITH=	wayland -X11_CONFIGURE_WITH=	x fontconfig freetype opengl xinerama xinput2 xrandr xrender -X11_USES=		gl xorg -X11_USE=		GL=glu XORG=x11,xext,xcomposite,xcursor,xi,xinerama,xrandr,xrender  X11_LIB_DEPENDS=	libfontconfig.so:x11-fonts/fontconfig \  			libfreetype.so:print/freetype2 \  			libvulkan.so:graphics/vulkan-loader +X11_USES=		gl xorg +X11_USE=		GL=glu XORG=x11,xcomposite,xcursor,xext,xi,xinerama,xrandr,xrender +X11_CONFIGURE_WITH=	fontconfig freetype opengl x xinerama xinput2 xrandr xrender  .include <bsd.port.pre.mk>  | 
