Index: head/emulators/virtualbox-ose/Makefile =================================================================== --- head/emulators/virtualbox-ose/Makefile (revision 452714) +++ head/emulators/virtualbox-ose/Makefile (revision 452715) @@ -1,429 +1,409 @@ # Created by: Bernhard Froehlich # $FreeBSD$ PORTNAME= virtualbox-ose -PORTVERSION= 5.1.30 +PORTVERSION= 5.2.0 CATEGORIES= emulators MASTER_SITES= http://download.virtualbox.org/virtualbox/${PORTVERSION}/ DISTFILES= VirtualBox-${PORTVERSION}${EXTRACT_SUFX} ${GUESTADDITIONS} EXTRACT_ONLY= VirtualBox-${PORTVERSION}${EXTRACT_SUFX} MAINTAINER= vbox@FreeBSD.org COMMENT= General-purpose full virtualizer for x86 hardware LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= yasm:devel/yasm \ xsltproc:textproc/libxslt \ kmk:devel/kBuild \ gtar:archivers/gtar \ cdrecord:sysutils/cdrtools LIB_DEPENDS= libpng.so:graphics/png \ libxslt.so:textproc/libxslt \ libcurl.so:ftp/curl RUN_DEPENDS= ${LOCALBASE}/etc/rc.d/vboxnet:emulators/virtualbox-ose-kmod \ cdrecord:sysutils/cdrtools CPE_VENDOR= oracle CPE_PRODUCT= vm_virtualbox WRKSRC= ${WRKDIR}/VirtualBox-${PORTVERSION} ONLY_FOR_ARCHS= i386 amd64 -USES= compiler cpe iconv pkgconfig ssl tar:bzip2 +USES= compiler:c++11-lang cpe iconv pkgconfig ssl tar:bzip2 USE_GNOME= libidl libxml2 HAS_CONFIGURE= yes CONFIGURE_ARGS= --disable-java --passive-mesa CONFIGURE_ARGS+= --with-gcc="${CC}" --with-g++="${CXX}" CONFLICTS_INSTALL= virtualbox-ose-additions-* \ virtualbox-ose-devel-[0-9]* \ virtualbox-ose-legacy-[0-9]* \ virtualbox-ose-lite-[0-9]* VBOXUSER?= vboxusers VBOXWSUSER?= vboxusers VBOXGROUP?= vboxusers USERS= ${VBOXUSER} GROUPS= ${VBOXGROUP} VBOX_DIR= ${PREFIX}/${VBOX_DIR_REL} VBOX_DIR_REL= lib/virtualbox VBOX_LINKS= VBoxVRDP VBOX_PROGS= VBoxAutostart VBoxBalloonCtrl VBoxBugReport VBoxHeadless \ VBoxManage VBOX_UTILS= VBoxExtPackHelperApp VBoxNetAdpCtl VBoxNetDHCP VBoxNetNAT \ VBoxSVC VBoxXPCOMIPCD OPTIONS_DEFINE= ALSA DBUS DEBUG GUESTADDITIONS MANUAL NLS PULSEAUDIO \ - PYTHON R0LOGGING UDPTUNNEL VDE VNC WEBSERVICE VPX X11 + PYTHON QT5 R0LOGGING UDPTUNNEL VDE VNC WEBSERVICE VPX X11 OPTIONS_DEFAULT= DBUS QT5 UDPTUNNEL VNC WEBSERVICE X11 -OPTIONS_RADIO= GUI -OPTIONS_RADIO_GUI= QT4 QT5 OPTIONS_SUB= yes DEBUG_DESC= Debug symbols, additional logs and assertions GUESTADDITIONS_DESC= Build with Guest Additions MANUAL_DESC= Build with user manual -QT4_DESC= Build with QT4 Frontend QT5_DESC= Build with QT5 Frontend R0LOGGING_DESC= Enable R0 logging UDPTUNNEL_DESC= Build with UDP tunnel support VDE_DESC= Build with VDE support VNC_DESC= Build with VNC support VPX_DESC= Use vpx for video capturing WEBSERVICE_DESC= Build Webservice ALSA_CONFIGURE_OFF= --disable-alsa ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib DBUS_CONFIGURE_OFF= --disable-dbus DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus DEBUG_CONFIGURE_ON= --build-debug MANUAL_BUILD_DEPENDS= ${LOCALBASE}/share/xml/docbook/4.4/docbookx.dtd:textproc/docbook-xml MANUAL_CONFIGURE_OFF= --disable-docs PULSEAUDIO_CONFIGURE_OFF= --disable-pulse PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PYTHON_CONFIGURE_OFF= --disable-python UDPTUNNEL_CONFIGURE_OFF= --disable-udptunnel VDE_CONFIGURE_ON= --enable-vde VDE_RUN_DEPENDS= vde_switch:net/vde2 VNC_CONFIGURE_ON= --enable-vnc VNC_LIB_DEPENDS= libvncserver.so:net/libvncserver VPX_CONFIGURE_OFF= --disable-libvpx VPX_LIB_DEPENDS= libvpx.so:multimedia/libvpx X11_CONFIGURE_OFF= --build-headless ENV= .export ENV PLIST_SUB= GUEST_VER=${PORTVERSION} \ PYTHON_VERU=${PYTHON_VER:S/./_/}${PYTHON_ABIVER} \ VBOXGROUP=${VBOXGROUP} SUB_LIST= VBOXDIR=${VBOX_DIR} \ VBOXGROUP=${VBOXGROUP} \ VBOXUSER=${VBOXUSER} \ VBOXWSUSER=${VBOXWSUSER} USE_RC_SUBR= vboxheadless vboxwatchdog .include .if ${SLAVE_PORT} == no CONFLICTS_INSTALL+= virtualbox-ose-nox11-[0-9]* OPTIONS_DEFAULT+= PYTHON .else CONFLICTS_INSTALL+= virtualbox-ose-[0-9]* .endif .if ${ARCH} == "amd64" _ELF32!= kldstat -q -m elf32 && echo yes || echo no .endif -.if ${PORT_OPTIONS:MNLS} && empty(PORT_OPTIONS:MQT[45]) +.if ${PORT_OPTIONS:MNLS} && empty(PORT_OPTIONS:MQT5) BROKEN= NLS support requires QT frontend. Run 'make config' again! .endif .if ${PORT_OPTIONS:MQT[45]} && empty(PORT_OPTIONS:MX11) BROKEN= QT frontend requires X11 support. Run 'make config' again! .endif .if ${PORT_OPTIONS:MDEBUG} KMK_BUILDTYPE= debug KMK_FLAGS+= BUILD_TYPE=debug .else KMK_BUILDTYPE= release .endif .if ${PORT_OPTIONS:MR0LOGGING} && empty(PORT_OPTIONS:MDEBUG) BROKEN= R0 logging requires debug build .endif .if ${PORT_OPTIONS:MGUESTADDITIONS} GUESTADDITIONS= VBoxGuestAdditions_${PORTVERSION}.iso RESTRICTED= for personal use only RESTRICTED_FILES= ${GUESTADDITIONS} .endif .if ${PORT_OPTIONS:MMANUAL} DBKXMLDIR= ${LOCALBASE}/share/xml/docbook/4.4 DBKXSLDIR= ${LOCALBASE}/share/xsl/docbook USE_TEX= dvipsk:build formats:build .endif .if ${PORT_OPTIONS:MPYTHON} USES+= python USE_PYTHON= distutils noegginfo PYDISTUTILS_PKGNAME= vboxapi PYDISTUTILS_PKGVERSION= 1.0 .else USES+= python:build .endif -.if ${PORT_OPTIONS:MQT[45]} +.if ${PORT_OPTIONS:MQT5} +CONFIGURE_ARGS+= --enable-qt5 PLIST_SUB+= QT="" QT_NONSTANDARD= yes USE_GL= gl +USE_QT5= buildtools_build core dbus gui linguist_build opengl +USE_QT5+= printsupport widgets x11extras USE_XORG= xcb INSTALLS_ICONS= yes VBOX_PROGS+= VirtualBox VBOX_UTILS+= VBoxTestOGL VBOX_WITH_QT= 1 -.if ${PORT_OPTIONS:MQT4} -EXTRA_PATCHES+= ${PATCHDIR}/extrapatch-src_VBox_Frontends_VirtualBox_src_net_UIDownloaderAdditions.cpp \ - ${PATCHDIR}/extrapatch-src_VBox_Frontends_VirtualBox_src_net_UIDownloaderExtensionPack.cpp \ - ${PATCHDIR}/extrapatch-src_VBox_Frontends_VirtualBox_src_settings_global_UIGlobalSettingsNetworkDetailsHost.cpp \ - ${PATCHDIR}/extrapatch-src_VBox_Frontends_VirtualBox_src_widgets_UIMiniToolBar.cpp \ - ${PATCHDIR}/extrapatch-src_VBox_Frontends_VirtualBox_src_widgets_UIMiniToolBar.h -CONFIGURE_ARGS+= --enable-qt4 -USE_QT4= corelib gui linguist_build moc_build network opengl -USE_QT4+= rcc_build uic_build -WARNING= "Qt4 support has been deprecated by the upstream.\ - This option may be removed in the future without notice." .else -CONFIGURE_ARGS+= --enable-qt5 -USE_QT5= buildtools_build core dbus gui linguist_build opengl -USE_QT5+= printsupport widgets x11extras -.endif -.else CONFIGURE_ARGS+= --disable-qt PLIST_SUB+= QT="@comment " .endif .if ${PORT_OPTIONS:MWEBSERVICE} BUILD_DEPENDS+= soapcpp2:devel/gsoap USE_RC_SUBR+= vboxwebsrv VBOX_LINKS+= vboxwebsrv VBOX_UTILS+= vboxwebsrv webtest .endif .if ${PORT_OPTIONS:MX11} USE_SDL= sdl USE_XORG+= inputproto x11 xcursor xext xinerama xmu xt VBOX_PROGS+= VBoxSDL .endif .if ${PORT_OPTIONS:MPYTHON} || ${PORT_OPTIONS:MWEBSERVICE} PLIST_SUB+= SDK="" .else PLIST_SUB+= SDK="@comment " .endif .if ${ARCH} == i386 KMK_ARCH= freebsd.x86 PLIST_SUB+= I386="" .else KMK_ARCH= freebsd.${ARCH} PLIST_SUB+= I386="@comment " .endif PLIST_SUB+= ARCH="${KMK_ARCH}" KMK_BUILDDIR= ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE} KMK_CONFIG= VBOX_LIBPATH_X11=${LOCALBASE} VBOX_FREEBSD_SRC=${SRC_BASE}/sys KMK_FLAGS+= -j${MAKE_JOBS_NUMBER} .include .if ${COMPILER_TYPE} == clang PATCH_DEPENDS+= ${LOCALBASE}/share/kBuild/tools/GXX3.kmk:devel/kBuild EXTRA_PATCHES+= ${PATCHDIR}/extrapatch-Config.kmk \ ${PATCHDIR}/extrapatch-src-VBox-Devices-PC-ipxe-Makefile.kmk \ ${PATCHDIR}/extrapatch-src-recompiler-Makefile.kmk .endif .if ${PYTHON_MAJOR_VER} >= 3 PLIST_SUB+= PYTHON_PYCDIR=/__pycache__/ \ PYTHON_PYCEXT=.cpython-${PYTHON_SUFFIX}.pyc .else PLIST_SUB+= PYTHON_PYCDIR=/ \ PYTHON_PYCEXT=.pyc .endif .if ${SSL_DEFAULT} != base CONFIGURE_ARGS+= --with-openssl-dir="${OPENSSLBASE}" .endif pre-everything:: .if ${ARCH} == "amd64" .if ${_ELF32} != yes @${ECHO} 'Requires 32-bit runtime support in kernel.' @${ECHO} 'Rebuild kernel with "options COMPAT_FREEBSD32" and reboot.' @${FALSE} .elif !exists(/usr/lib32/libc.so) @${ECHO} 'Requires 32-bit libraries installed under /usr/lib32.' @${ECHO} 'Do: cd /usr/src; make build32 install32; service ldconfig restart' @${FALSE} .endif .endif post-patch: @${ECHO} 'VBOX_PATH_APP_PRIVATE_ARCH = ${VBOX_DIR}' > \ ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_PATH_DOCBOOK = ${DBKXSLDIR}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_PATH_DOCBOOK_DTD = ${DBKXMLDIR}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_PATH_SHARED_LIBS = ${VBOX_DIR}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_RUNPATH = ${VBOX_DIR}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_PATH_APP_PRIVATE = ${DATADIR}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_PATH_APP_DOCS = ${DOCSDIR}' >> ${WRKSRC}/LocalConfig.kmk .if ${SSL_DEFAULT} != base @${ECHO} 'VBOX_WITH_ALT_HASH_CODE = 1' >> ${WRKSRC}/LocalConfig.kmk .endif @${ECHO} 'VBOX_WITH_EXTPACK_VBOXDTRACE =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_INSTALLER = 1' >> ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_VBOXDRV =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_TESTCASES =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO} 'SDK_VBOX_LIBPNG_INCS = ${PREFIX}/include/libpng' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO} 'SDK_VBOX_LIBPNG_LIBS = png' >> ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_ADDITIONS =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_DRAG_AND_DROP = ${VBOX_WITH_QT}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_DRAG_AND_DROP_GH = ${VBOX_WITH_QT}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_VALIDATIONKIT =' >> ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_X11_ADDITIONS =' >> ${WRKSRC}/LocalConfig.kmk -.if empty(PORT_OPTIONS:MQT5) - @${ECHO} 'VBOX_WITH_QTGUI_V5 =' >> ${WRKSRC}/LocalConfig.kmk -.endif .if ${PORT_OPTIONS:MR0LOGGING} @${ECHO} 'VBOX_WITH_R0_LOGGING = 1' >> ${WRKSRC}/LocalConfig.kmk .endif .if ${PORT_OPTIONS:MWEBSERVICE} @${ECHO} 'VBOX_WITH_WEBSERVICES = 1' >> ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_GSOAP_INSTALLED = 1' >> ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_PATH_GSOAP = ${PREFIX}/lib/gsoap' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_PATH_GSOAP_BIN = ${PREFIX}/bin' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_PATH_GSOAP_IMPORT = ${PREFIX}/share/gsoap/import' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_GCC_PEDANTIC_CXX = -Wshadow $$(VBOX_GCC_WARN) -Wno-long-long' >> \ ${WRKSRC}/LocalConfig.kmk + @${ECHO} 'VBOX_GCC_std = -std=c++11' >> ${WRKSRC}/LocalConfig.kmk .endif .if ${COMPILER_TYPE} == clang @${REINPLACE_CMD} -e 's| -finline-limit=8000||' \ -e 's| -mpreferred-stack-boundary=2||' ${WRKSRC}/Config.kmk @${REINPLACE_CMD} -e 's| -fpermissive||' ${WRKSRC}/Config.kmk \ ${WRKSRC}/src/VBox/Main/webservice/Makefile.kmk - @${ECHO} 'VBOX_GCC_Wno-unused-parameter = -Wno-unused-parameter' >> \ - ${WRKSRC}/LocalConfig.kmk @${ECHO} 'TOOL_VBoxGccFreeBSD_LD = ${CXX}' >> ${WRKSRC}/LocalConfig.kmk @${SED} -e 's|GXX3|VBoxGccFreeBSD|g' \ ${LOCALBASE}/share/kBuild/tools/GXX3.kmk > \ ${WRKSRC}/tools/kBuildTools/VBoxGccFreeBSD.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/libs/xpcom18a4/python/gen_python_deps.py @${REINPLACE_CMD} \ -e 's|\$$KBUILDDIR_BIN/kmk_sed|${LOCALBASE}/bin/kmk_sed|g' \ -e 's|SUPPYTHONLIBS=.*|SUPPYTHONLIBS="${PYTHON_VERSION}${PYTHON_ABIVER}"|' \ ${WRKSRC}/configure .if empty(ICONV_LIB) @${REINPLACE_CMD} -e 's|iconv||' ${WRKSRC}/Config.kmk \ ${WRKSRC}/src/VBox/Runtime/Makefile.kmk @${ECHO} 'VBOX_ICONV_DEFS = LIBICONV_PLUG' >> ${WRKSRC}/LocalConfig.kmk .endif @${REINPLACE_CMD} -e 's|/usr/local/lib/virtualbox|${VBOX_DIR}|' \ -e 's|/usr/local|${PREFIX}|' \ ${WRKSRC}/src/VBox/Installer/freebsd/VBox.sh @${REINPLACE_CMD} \ -e 's|^versions =.*|versions = ["${PYTHON_VER}${PYTHON_ABIVER}"]|' \ ${WRKSRC}/src/libs/xpcom18a4/python/gen_python_deps.py do-build: cd ${WRKSRC} && ${SH} -c '. ${WRKSRC}/env.sh && \ ${KMK_CONFIG} ${LOCALBASE}/bin/kmk ${KMK_FLAGS}' .if ${PORT_OPTIONS:MPYTHON} ${PYTHON_CMD} -mcompileall \ ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom/python/xpcom .endif do-install: ${MKDIR} ${STAGEDIR}${DATADIR} cd ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom && \ ${COPYTREE_SHARE} "idl samples" ${STAGEDIR}${DATADIR} ${MKDIR} ${STAGEDIR}${PREFIX}/include/virtualbox cd ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom/include && \ ${COPYTREE_SHARE} "*" ${STAGEDIR}${PREFIX}/include/virtualbox ${MKDIR} ${STAGEDIR}${VBOX_DIR} cd ${KMK_BUILDDIR}/bin && ${COPYTREE_SHARE} \ "*.fd *.r0 *.rc *.so components" ${STAGEDIR}${VBOX_DIR} ${LN} -fs ${DATADIR}/sdk ${STAGEDIR}${VBOX_DIR} ${INSTALL_SCRIPT} ${WRKSRC}/src/VBox/Installer/freebsd/VBox.sh \ ${STAGEDIR}${VBOX_DIR} .for f in ${VBOX_PROGS} ${VBOX_UTILS} ${INSTALL_PROGRAM} ${KMK_BUILDDIR}/bin/${f} ${STAGEDIR}${VBOX_DIR} .endfor .for f in ${VBOX_PROGS} ${VBOX_LINKS} ${LN} -fs ../${VBOX_DIR_REL}/VBox.sh ${STAGEDIR}${PREFIX}/bin/${f} .endfor .for f in ${VBOX_PROGS} ${LN} -fs ../${VBOX_DIR_REL}/VBox.sh ${STAGEDIR}${PREFIX}/bin/${f:tl} .endfor .if ${PORT_OPTIONS:MGUESTADDITIONS} ${MKDIR} ${STAGEDIR}${VBOX_DIR}/additions ${INSTALL_DATA} ${DISTDIR}/${GUESTADDITIONS} \ ${STAGEDIR}${VBOX_DIR}/additions/ ${LN} -fs ${VBOX_DIR}/additions/${GUESTADDITIONS} \ ${STAGEDIR}${VBOX_DIR}/additions/VBoxGuestAdditions.iso .endif .if ${PORT_OPTIONS:MMANUAL} ${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${KMK_BUILDDIR}/bin/UserManual*.pdf \ ${STAGEDIR}${DOCSDIR} .endif .if ${PORT_OPTIONS:MNLS} cd ${KMK_BUILDDIR}/obj/VirtualBox/qtnls && \ ${COPYTREE_SHARE} "*.qm" ${STAGEDIR}${DATADIR}/nls .endif .if ${PORT_OPTIONS:MPYTHON} cd ${KMK_BUILDDIR}/bin/sdk/installer && \ ${SETENV} VBOX_INSTALL_PATH="${VBOX_DIR}" \ ${PYTHON_CMD} vboxapisetup.py install --root=${STAGEDIR} @${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}/xpcom cd ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom/python/xpcom && \ ${COPYTREE_SHARE} "*" ${STAGEDIR}${PYTHON_SITELIBDIR}/xpcom @${MKDIR} ${STAGEDIR}${DATADIR}/sdk/bindings/xpcom/python ${LN} -fs ${PYTHON_SITELIBDIR}/xpcom \ ${STAGEDIR}${DATADIR}/sdk/bindings/xpcom/python .endif -.if ${PORT_OPTIONS:MQT[45]} +.if ${PORT_OPTIONS:MQT5} ${INSTALL_DATA} \ ${WRKSRC}/src/VBox/Frontends/VirtualBox/images/OSE/VirtualBox_48px.png \ ${STAGEDIR}${PREFIX}/share/pixmaps/VBox.png ${INSTALL_DATA} \ ${WRKSRC}/src/VBox/Installer/freebsd/virtualbox.desktop \ ${STAGEDIR}${PREFIX}/share/applications/virtualbox.desktop .endif .if ${PORT_OPTIONS:MVNC} ${MKDIR} ${STAGEDIR}${VBOX_DIR}/ExtensionPacks/VNC/${KMK_ARCH} ${INSTALL_DATA} ${KMK_BUILDDIR}/bin/ExtensionPacks/VNC/ExtPack* \ ${STAGEDIR}${VBOX_DIR}/ExtensionPacks/VNC/ ${INSTALL_LIB} ${KMK_BUILDDIR}/bin/ExtensionPacks/VNC/${KMK_ARCH}/* \ ${STAGEDIR}${VBOX_DIR}/ExtensionPacks/VNC/${KMK_ARCH}/ .endif .if ${PORT_OPTIONS:MWEBSERVICE} ${MKDIR} ${STAGEDIR}${DATADIR}/sdk/bindings/webservice ${INSTALL_DATA} ${KMK_BUILDDIR}/obj/webservice/vboxweb.wsdl \ ${STAGEDIR}${DATADIR}/sdk/bindings/webservice/ .endif .include Index: head/emulators/virtualbox-ose/distinfo =================================================================== --- head/emulators/virtualbox-ose/distinfo (revision 452714) +++ head/emulators/virtualbox-ose/distinfo (revision 452715) @@ -1,5 +1,5 @@ -TIMESTAMP = 1508180714 -SHA256 (VirtualBox-5.1.30.tar.bz2) = 6059b0986c9cdacc533177867634a76331ceccdcd46dddd111a50d1c42846d0b -SIZE (VirtualBox-5.1.30.tar.bz2) = 116510730 -SHA256 (VBoxGuestAdditions_5.1.30.iso) = 631ca8e8d513acf43a75de56a71a31aaffb5624864c57d10346ba657d991ec1e -SIZE (VBoxGuestAdditions_5.1.30.iso) = 59494400 +TIMESTAMP = 1508350098 +SHA256 (VirtualBox-5.2.0.tar.bz2) = 26fc73aee2df18142e4129beed1175fbd7eed69a9b6b150bcff7d9b92f4ade54 +SIZE (VirtualBox-5.2.0.tar.bz2) = 117789406 +SHA256 (VBoxGuestAdditions_5.2.0.iso) = 841678a04a1800de26e76bbb7a0f8f7f48fe903deede77a67394b93bf2f2cde4 +SIZE (VBoxGuestAdditions_5.2.0.iso) = 60325888 Index: head/emulators/virtualbox-ose/files/patch-src-VBox-Main-src-server-MachineImpl.cpp =================================================================== --- head/emulators/virtualbox-ose/files/patch-src-VBox-Main-src-server-MachineImpl.cpp (revision 452714) +++ head/emulators/virtualbox-ose/files/patch-src-VBox-Main-src-server-MachineImpl.cpp (nonexistent) @@ -1,47 +0,0 @@ ---- src/VBox/Main/src-server/MachineImpl.cpp.orig 2015-04-01 12:15:13.000000000 -0400 -+++ src/VBox/Main/src-server/MachineImpl.cpp 2015-04-01 16:11:54.601620000 -0400 -@@ -2299,7 +2299,7 @@ - case 0x8: - case 0x9: - case 0xA: -- AssertCompile(RT_ELEMENTS(mHWData->mCpuIdStdLeafs) == 0xB); -+ // AssertCompile(RT_ELEMENTS(mHWData->mCpuIdStdLeafs) == 0xB); - AssertRelease(aId < RT_ELEMENTS(mHWData->mCpuIdStdLeafs)); - i_setModified(IsModified_MachineData); - mHWData.backup(); -@@ -2321,7 +2321,7 @@ - case 0x80000008: - case 0x80000009: - case 0x8000000A: -- AssertCompile(RT_ELEMENTS(mHWData->mCpuIdExtLeafs) == 0xB); -+ // AssertCompile(RT_ELEMENTS(mHWData->mCpuIdExtLeafs) == 0xB); - AssertRelease(aId - 0x80000000 < RT_ELEMENTS(mHWData->mCpuIdExtLeafs)); - i_setModified(IsModified_MachineData); - mHWData.backup(); -@@ -2358,7 +2358,7 @@ - case 0x8: - case 0x9: - case 0xA: -- AssertCompile(RT_ELEMENTS(mHWData->mCpuIdStdLeafs) == 0xB); -+ // AssertCompile(RT_ELEMENTS(mHWData->mCpuIdStdLeafs) == 0xB); - AssertRelease(aId < RT_ELEMENTS(mHWData->mCpuIdStdLeafs)); - i_setModified(IsModified_MachineData); - mHWData.backup(); -@@ -2377,7 +2377,7 @@ - case 0x80000008: - case 0x80000009: - case 0x8000000A: -- AssertCompile(RT_ELEMENTS(mHWData->mCpuIdExtLeafs) == 0xB); -+ // AssertCompile(RT_ELEMENTS(mHWData->mCpuIdExtLeafs) == 0xB); - AssertRelease(aId - 0x80000000 < RT_ELEMENTS(mHWData->mCpuIdExtLeafs)); - i_setModified(IsModified_MachineData); - mHWData.backup(); -@@ -8790,7 +8790,7 @@ - mHWData->mVideoCaptureEnabled = data.fVideoCaptureEnabled; - for (unsigned i = 0; i < RT_ELEMENTS(mHWData->maVideoCaptureScreens); ++i) - mHWData->maVideoCaptureScreens[i] = ASMBitTest(&data.u64VideoCaptureScreens, i); -- AssertCompile(RT_ELEMENTS(mHWData->maVideoCaptureScreens) == sizeof(data.u64VideoCaptureScreens) * 8); -+ // AssertCompile(RT_ELEMENTS(mHWData->maVideoCaptureScreens) == sizeof(data.u64VideoCaptureScreens) * 8); - mHWData->mVideoCaptureRate = data.ulVideoCaptureRate; - mHWData->mVideoCaptureFPS = data.ulVideoCaptureFPS; - if (!data.strVideoCaptureFile.isEmpty()) Property changes on: head/emulators/virtualbox-ose/files/patch-src-VBox-Main-src-server-MachineImpl.cpp ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/emulators/virtualbox-ose/files/patch-src_VBox_Main_src-server_freebsd_USBProxyBackendFreeBSD.cpp =================================================================== --- head/emulators/virtualbox-ose/files/patch-src_VBox_Main_src-server_freebsd_USBProxyBackendFreeBSD.cpp (revision 452714) +++ head/emulators/virtualbox-ose/files/patch-src_VBox_Main_src-server_freebsd_USBProxyBackendFreeBSD.cpp (nonexistent) @@ -1,77 +0,0 @@ ---- src/VBox/Main/src-server/freebsd/USBProxyBackendFreeBSD.cpp.orig 2017-01-17 07:27:22 UTC -+++ src/VBox/Main/src-server/freebsd/USBProxyBackendFreeBSD.cpp -@@ -153,6 +153,12 @@ int USBProxyBackendFreeBSD::releaseDevic - } - - -+bool USBProxyBackendFreeBSD::isFakeUpdateRequired() -+{ -+ return true; -+} -+ -+ - int USBProxyBackendFreeBSD::wait(RTMSINTERVAL aMillies) - { - return RTSemEventWait(mNotifyEventSem, aMillies < 1000 ? 1000 : 5000); -@@ -270,8 +276,9 @@ PUSBDEVICE USBProxyBackendFreeBSD::getDe - break; - } - -- pDevice->enmState = USBDEVICESTATE_UNUSED; -+ pDevice->enmState = USBDEVICESTATE_USED_BY_HOST_CAPTURABLE; - pDevice->bBus = UsbDevInfo.udi_bus; -+ pDevice->bPort = UsbDevInfo.udi_hubport; - pDevice->bDeviceClass = UsbDevInfo.udi_class; - pDevice->bDeviceSubClass = UsbDevInfo.udi_subclass; - pDevice->bDeviceProtocol = UsbDevInfo.udi_protocol; -@@ -292,28 +299,33 @@ PUSBDEVICE USBProxyBackendFreeBSD::getDe - pDevice->enmSpeed = USBDEVICESPEED_HIGH; - break; - case USB_SPEED_SUPER: -+ pDevice->enmSpeed = USBDEVICESPEED_SUPER; -+ break; - case USB_SPEED_VARIABLE: -+ pDevice->enmSpeed = USBDEVICESPEED_VARIABLE; -+ break; - default: - pDevice->enmSpeed = USBDEVICESPEED_UNKNOWN; -+ break; - } - - if (UsbDevInfo.udi_vendor[0] != '\0') - { -+ USBLibPurgeEncoding(UsbDevInfo.udi_vendor); - pDevice->pszManufacturer = RTStrDupN(UsbDevInfo.udi_vendor, sizeof(UsbDevInfo.udi_vendor)); -- USBLibPurgeEncoding(pDevice->pszManufacturer); - } - - if (UsbDevInfo.udi_product[0] != '\0') - { -+ USBLibPurgeEncoding(UsbDevInfo.udi_product); - pDevice->pszProduct = RTStrDupN(UsbDevInfo.udi_product, sizeof(UsbDevInfo.udi_product)); -- USBLibPurgeEncoding(pDevice->pszProduct); - } - - if (UsbDevInfo.udi_serial[0] != '\0') - { -+ USBLibPurgeEncoding(UsbDevInfo.udi_serial); - pDevice->pszSerialNumber = RTStrDupN(UsbDevInfo.udi_serial, sizeof(UsbDevInfo.udi_serial)); -- USBLibPurgeEncoding(pDevice->pszSerialNumber); -- pDevice->u64SerialHash = USBLibHashSerial(pDevice->pszSerialNumber); -+ pDevice->u64SerialHash = USBLibHashSerial(UsbDevInfo.udi_serial); - } - rc = ioctl(FileUsb, USB_GET_PLUGTIME, &PlugTime); - if (rc == 0) -@@ -321,7 +333,6 @@ PUSBDEVICE USBProxyBackendFreeBSD::getDe - - pDevice->pszAddress = RTStrDup(pszDevicePath); - pDevice->pszBackend = RTStrDup("host"); -- pDevice->enmState = USBDEVICESTATE_USED_BY_HOST_CAPTURABLE; - - usbLogDevice(pDevice); - -@@ -337,4 +348,3 @@ PUSBDEVICE USBProxyBackendFreeBSD::getDe - - return pDevices; - } -- Property changes on: head/emulators/virtualbox-ose/files/patch-src_VBox_Main_src-server_freebsd_USBProxyBackendFreeBSD.cpp ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/emulators/virtualbox-ose/files/patch-src-VBox-Runtime-r3-posix-utf8-posix.cpp =================================================================== --- head/emulators/virtualbox-ose/files/patch-src-VBox-Runtime-r3-posix-utf8-posix.cpp (revision 452714) +++ head/emulators/virtualbox-ose/files/patch-src-VBox-Runtime-r3-posix-utf8-posix.cpp (nonexistent) @@ -1,20 +0,0 @@ ---- src/VBox/Runtime/r3/posix/utf8-posix.cpp.orig 2015-04-14 15:41:38.000000000 -0400 -+++ src/VBox/Runtime/r3/posix/utf8-posix.cpp 2015-04-15 12:50:21.401092000 -0400 -@@ -194,7 +194,7 @@ - const void *pvInputLeft = pvInput; - void *pvOutputLeft = pvOutput; - size_t cchNonRev; --#if defined(RT_OS_LINUX) || defined(RT_OS_HAIKU) || defined(RT_OS_SOLARIS) || (defined(RT_OS_DARWIN) && defined(_DARWIN_FEATURE_UNIX_CONFORMANCE)) /* there are different opinions about the constness of the input buffer. */ -+#if defined(RT_OS_LINUX) || defined(RT_OS_HAIKU) || defined(RT_OS_FREEBSD) || defined(RT_OS_DRAGONFLY) || defined(RT_OS_SOLARIS) || (defined(RT_OS_DARWIN) && defined(_DARWIN_FEATURE_UNIX_CONFORMANCE)) /* there are different opinions about the constness of the input buffer. */ - cchNonRev = iconv(hIconv, (char **)&pvInputLeft, &cbInLeft, (char **)&pvOutputLeft, &cbOutLeft); - #else - cchNonRev = iconv(hIconv, (const char **)&pvInputLeft, &cbInLeft, (char **)&pvOutputLeft, &cbOutLeft); -@@ -324,7 +324,7 @@ - const void *pvInputLeft = pvInput; - void *pvOutputLeft = pvOutput; - size_t cchNonRev; --#if defined(RT_OS_LINUX) || defined(RT_OS_HAIKU) || defined(RT_OS_SOLARIS) || (defined(RT_OS_DARWIN) && defined(_DARWIN_FEATURE_UNIX_CONFORMANCE)) /* there are different opinions about the constness of the input buffer. */ -+#if defined(RT_OS_LINUX) || defined(RT_OS_HAIKU) || defined(RT_OS_FREEBSD) || defined(RT_OS_DRAGONFLY) || defined(RT_OS_SOLARIS) || (defined(RT_OS_DARWIN) && defined(_DARWIN_FEATURE_UNIX_CONFORMANCE)) /* there are different opinions about the constness of the input buffer. */ - cchNonRev = iconv(icHandle, (char **)&pvInputLeft, &cbInLeft, (char **)&pvOutputLeft, &cbOutLeft); - #else - cchNonRev = iconv(icHandle, (const char **)&pvInputLeft, &cbInLeft, (char **)&pvOutputLeft, &cbOutLeft); Property changes on: head/emulators/virtualbox-ose/files/patch-src-VBox-Runtime-r3-posix-utf8-posix.cpp ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/emulators/virtualbox-ose/files/patch-c++11-qt5 =================================================================== --- head/emulators/virtualbox-ose/files/patch-c++11-qt5 (revision 452714) +++ head/emulators/virtualbox-ose/files/patch-c++11-qt5 (nonexistent) @@ -1,54 +0,0 @@ ---- src/VBox/Frontends/VirtualBox/Makefile.kmk.orig 2017-01-17 08:26:40.000000000 +0100 -+++ src/VBox/Frontends/VirtualBox/Makefile.kmk 2017-02-10 19:08:22.842186000 +0100 -@@ -238,6 +238,7 @@ - VirtualBox_LIBS.linux += xcb - VirtualBox_LIBS.solaris += xcb - VirtualBox_LIBS.freebsd += xcb -+ VirtualBox_CXXFLAGS.freebsd += -std=c++11 - endif # VBOX_WITH_QTGUI_V5 - - ifneq ($(KBUILD_TARGET),win) -@@ -888,6 +889,7 @@ - VirtualBox_SOURCES += \ - src/VBoxFBOverlay.cpp \ - src/VBoxGLSupportInfo.cpp -+ VirtualBox_CXXFLAGS += -std=c++11 - endif - - # -@@ -1222,6 +1224,7 @@ - VBoxOGL2D_SOURCES = \ - src/VBoxGLSupportInfo.cpp - VBoxOGL2D_INCS = include -+ VBoxOGL2D_CXXFLAGS += -std=c++11 - endif - endif - ---- src/VBox/Debugger/Makefile.kmk.orig 2017-02-10 19:55:21.598089000 +0100 -+++ src/VBox/Debugger/Makefile.kmk 2017-02-10 20:12:29.292761000 +0100 -@@ -115,6 +115,7 @@ - VBoxDbgBase.cpp \ - VBoxDbgConsole.cpp \ - VBoxDbgStatsQt4.cpp -+VBoxDbg_CXXFLAGS += -std=c++11 - VBoxDbg_LIBS = \ - $(VBOX_LIB_VMM_LAZY) - VBoxDbg_LDFLAGS.darwin = \ -@@ -141,6 +142,7 @@ - tstVBoxDbg_LIBS.linux += xcb - tstVBoxDbg_LIBS.solaris += xcb - tstVBoxDbg_LIBS.freebsd += xcb -+ tstVBoxDbg_CXXFLAGS += -std=c++1 - endif # VBOX_WITH_QTGUI_V5 - tstVBoxDbg_SOURCES = testcase/tstVBoxDbg.cpp - tstVBoxDbg_LIBS = \ ---- src/VBox/HostServices/SharedOpenGL/Makefile.kmk.orig 2017-02-10 20:31:10.812441000 +0100 -+++ src/VBox/HostServices/SharedOpenGL/Makefile.kmk 2017-02-10 20:32:04.804107000 +0100 -@@ -444,6 +444,7 @@ - VBoxTestOGL_LIBS.linux += xcb - VBoxTestOGL_LIBS.solaris += xcb - VBoxTestOGL_LIBS.freebsd += xcb -+ VBoxTestOGL_CXXFLAGS += -std=c++11 - endif # VBOX_WITH_QTGUI_V5 - VBoxTestOGL_LDFLAGS.darwin += -framework OpenGL - VBoxTestOGL_LIBS.win += $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/Opengl32.lib Property changes on: head/emulators/virtualbox-ose/files/patch-c++11-qt5 ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/emulators/virtualbox-ose/files/patch-src-VBox-Devices-PC-vbox.dsl =================================================================== --- head/emulators/virtualbox-ose/files/patch-src-VBox-Devices-PC-vbox.dsl (revision 452714) +++ head/emulators/virtualbox-ose/files/patch-src-VBox-Devices-PC-vbox.dsl (nonexistent) @@ -1,20 +0,0 @@ ---- src/VBox/Devices/PC/vbox.dsl.orig 2011-04-28 10:00:53.000000000 +0200 -+++ src/VBox/Devices/PC/vbox.dsl 2011-07-25 19:36:06.000000000 +0200 -@@ -1161,7 +1161,7 @@ - // (all of low memory space) - ResourceProducer, // bit 0 of general flags is 0 - PosDecode, // positive Decode -- MinNotFixed, // Range is not fixed -+ MinFixed, // Range is not fixed - MaxFixed, // Range is fixed - Cacheable, - ReadWrite, -@@ -1170,7 +1170,7 @@ - - 0xffdfffff, // Max = 4GB - 2MB - 0x00000000, // Translation -- 0x00000000, // Range Length (calculated -+ 0xffe00000, // Range Length (calculated - // dynamically) - , // Optional field left blank - , // Optional field left blank Property changes on: head/emulators/virtualbox-ose/files/patch-src-VBox-Devices-PC-vbox.dsl ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuestLib-Makefile.kmk =================================================================== --- head/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuestLib-Makefile.kmk (revision 452714) +++ head/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuestLib-Makefile.kmk (nonexistent) @@ -1,18 +0,0 @@ ---- src/VBox/Additions/common/VBoxGuestLib/Makefile.kmk.orig 2010-10-07 11:37:10.000000000 +0200 -+++ src/VBox/Additions/common/VBoxGuestLib/Makefile.kmk 2010-10-07 11:36:16.000000000 +0200 -@@ -140,6 +140,7 @@ - # the X server runtime instead of IPRT, for use with old servers where the - # C library is not available. - # -+ifdef VBOX_WITH_X11_ADDITIONS - VBoxGuestR3LibXFree86_TEMPLATE = VBOXGUESTR3XF86LIB - VBoxGuestR3LibXFree86_DEFS = \ - VBOX_WITH_HGCM \ -@@ -163,6 +164,7 @@ - $(VBOX_PATH_X11_XFREE_4_3)/exports/include/X11 - - VBoxGuestR3LibRuntimeXF86.cpp_CXXFLAGS = -Wno-shadow -+endif - - include $(KBUILD_PATH)/subfooter.kmk - Property changes on: head/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuestLib-Makefile.kmk ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/emulators/virtualbox-ose/files/patch-Config.kmk =================================================================== --- head/emulators/virtualbox-ose/files/patch-Config.kmk (revision 452714) +++ head/emulators/virtualbox-ose/files/patch-Config.kmk (revision 452715) @@ -1,164 +1,137 @@ ---- Config.kmk.orig 2016-08-16 19:55:20 UTC +--- Config.kmk.orig 2017-10-18 07:06:30 UTC +++ Config.kmk -@@ -348,7 +348,7 @@ VBOX_WITH_DOCS = 1 - # Include documentation in the package - VBOX_WITH_DOCS_PACKING = 1 - # Include CHM when building docs (unset in LocalConfig.kmk to suppress CHM) --ifn1of ($(KBUILD_TARGET), linux) -+ifn1of ($(KBUILD_TARGET), freebsd linux) - VBOX_WITH_DOCS_CHM = 1 - endif - # By default only include translations in documentation-only builds -@@ -431,11 +431,11 @@ ifn1of ($(KBUILD_TARGET), win darwin) +@@ -424,11 +424,11 @@ ifn1of ($(KBUILD_TARGET), win darwin) # Enable OSS audio support. VBOX_WITH_AUDIO_OSS = 1 endif -if1of ($(KBUILD_TARGET), linux) +if1of ($(KBUILD_TARGET), freebsd linux) # Enable ALSA audio support. VBOX_WITH_AUDIO_ALSA = 1 endif -if1of ($(KBUILD_TARGET), linux) +if1of ($(KBUILD_TARGET), freebsd linux) # Enable PulseAudio audio support. VBOX_WITH_AUDIO_PULSE = 1 endif -@@ -446,11 +446,11 @@ endif +@@ -440,11 +440,11 @@ VBOX_WITH_AUDIO_MMNOTIFICATION_CLIENT = 1 # Enable PCI passthrough support. VBOX_WITH_PCI_PASSTHROUGH = 1 # Enable statically linked dbus support. -if1of ($(KBUILD_TARGET), linux solaris) +if1of ($(KBUILD_TARGET), freebsd linux solaris) VBOX_WITH_DBUS = 1 endif # Enable building PAM modules. -if1of ($(KBUILD_TARGET), linux solaris) +if1of ($(KBUILD_TARGET), freebsd linux solaris) VBOX_WITH_PAM = 1 endif # Enable internal networking. -@@ -591,7 +591,7 @@ VBOX_WITH_WEBSERVICES = 1 - VBOX_WITH_WEBSERVICES_SSL = 1 - # The Qt GUI. - VBOX_WITH_QTGUI = 1 --if1of ($(KBUILD_TARGET), linux win solaris) -+if1of ($(KBUILD_TARGET), freebsd linux win solaris) - VBOX_WITH_QTGUI_V5 = 1 # r=bird: s/VBOX_WITH_QTGUI_V5/VBOX_WITH_QT5/g - our we released version 5.0 of the VirtualBox GUI last year, remember? - else if "$(KBUILD_TARGET)" == "darwin" && $(KBUILD_HOST_VERSION_MAJOR) >= 13 # (OS X 10.9 Mavericks) - VBOX_WITH_QTGUI_V5 = 1 -@@ -651,7 +651,7 @@ VBOX_WITH_VDITOOL = +@@ -648,7 +648,7 @@ VBOX_WITH_TESTCASES = 1 + VBOX_WITH_VDITOOL = # Enable this to build vbox-img even if VBOX_WITH_TESTCASES is disabled VBOX_WITH_VBOX_IMG = - # Enables the VPX module for VM video capturing -if1of ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH), darwin.x86 darwin.amd64 linux.x86 linux.amd64 solaris.amd64 win.x86 win.amd64) +if1of ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH), darwin.x86 darwin.amd64 freebsd.x86 freebsd.amd64 linux.x86 linux.amd64 solaris.amd64 win.x86 win.amd64) - VBOX_WITH_VPX = 1 - endif - # Enable shared folders -@@ -961,10 +961,6 @@ ifeq ($(KBUILD_TARGET),darwin) + # Enables the video capturing support. + VBOX_WITH_VIDEOREC = 1 + # Enable VPX (VP8 / VP9 codec), used for video capturing. +@@ -978,10 +978,6 @@ ifeq ($(KBUILD_TARGET),darwin) VBOX_WITH_VBOXSDL= endif -ifeq ($(KBUILD_TARGET),freebsd) - VBOX_WITH_DOCS= -endif - ifeq ($(KBUILD_TARGET),haiku) # Don't bother with SDL ttf for now. VBOX_WITH_SECURELABEL= -@@ -1123,7 +1119,7 @@ ifdef VBOX_OSE +@@ -1141,7 +1137,7 @@ ifdef VBOX_OSE VBOX_WITH_KCHMVIEWER= VBOX_WITH_PLUGIN_CRYPT= VBOX_WITH_DRAG_AND_DROP_PROMISES= - ifn1of ($(KBUILD_TARGET), linux) + ifn1of ($(KBUILD_TARGET), freebsd linux) VBOX_WITH_DOCS= VBOX_WITH_DOCS_PACKING= endif -@@ -4247,7 +4243,7 @@ TEMPLATE_VBOXR0DRV_CFLAGS = +@@ -4360,7 +4356,7 @@ TEMPLATE_VBOXR0DRV_CFLAGS = \ -O2 -ffreestanding -fno-strict-aliasing -fno-common -finline-limit=8000 \ $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \ -nostdinc -std=c99 -TEMPLATE_VBOXR0DRV_CFLAGS.x86 = -m32 -mno-align-long-strings -mpreferred-stack-boundary=2 -mno-mmx -mno-3dnow -mno-sse -mno-sse2 +TEMPLATE_VBOXR0DRV_CFLAGS.x86 = -m32 -mpreferred-stack-boundary=2 -mno-mmx -mno-3dnow -mno-sse -mno-sse2 TEMPLATE_VBOXR0DRV_CFLAGS.amd64 = -m64 --param inline-unit-growth=100 --param large-function-growth=1000 \ -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx \ -mno-3dnow -msoft-float -fno-asynchronous-unwind-tables -Wundef -@@ -4574,12 +4570,8 @@ TEMPLATE_VBOXR3EXE_LDFLAGS += +@@ -4689,12 +4685,8 @@ TEMPLATE_VBOXR3EXE_LDFLAGS += -fno-pic TEMPLATE_VBOXR3EXE_TOOL = GXX3 TEMPLATE_VBOXR3EXE_LIBS = pthread TEMPLATE_VBOXR3EXE_INCS += \ - /usr/include \ - /usr/X11R6/include \ /usr/local/include TEMPLATE_VBOXR3EXE_LIBPATH += \ - /usr/lib \ - /usr/X11R6/lib \ /usr/local/lib else ifeq ($(KBUILD_TARGET),netbsd) TEMPLATE_VBOXR3EXE_TOOL = GXX3 -@@ -4869,7 +4861,7 @@ ifeq ($(KBUILD_TARGET),win) # No CRT! +@@ -4984,7 +4976,7 @@ ifeq ($(KBUILD_TARGET),win) # No CRT! TEMPLATE_VBOXR3HARDENEDEXE_LDFLAGS.win.amd64 = $(TEMPLATE_VBOXR3EXE_LDFLAGS.win.amd64) /entry:suplibHardenedWindowsMain TEMPLATE_VBOXR3HARDENEDEXE_LIBS.x86 = $(NOT_SUCH_VARIABLE) TEMPLATE_VBOXR3HARDENEDEXE_LIBS.amd64 = $(NOT_SUCH_VARIABLE) -else ifn1of ($(KBUILD_TARGET), os2 solaris) +else ifn1of ($(KBUILD_TARGET), freebsd os2 solaris) # We want to keep the RPATH on Solaris to be able to find libgcc_1/libstdc++ within $(VBOX_WITH_RUNPATH) TEMPLATE_VBOXR3HARDENEDEXE_LDFLAGS = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_VBOXR3EXE_LDFLAGS)) TEMPLATE_VBOXR3HARDENEDEXE_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_VBOXR3EXE_LDFLAGS.linux)) -@@ -5362,12 +5354,8 @@ TEMPLATE_VBOXMAINEXE_LIBS +@@ -5515,12 +5507,8 @@ TEMPLATE_VBOXMAINEXE_LIBS = $(LIB_RUNTI TEMPLATE_VBOXMAINEXE_TOOL = GXX3 TEMPLATE_VBOXMAINEXE_LIBS = $(LIB_RUNTIME) TEMPLATE_VBOXMAINEXE_INCS += \ - /usr/include \ - /usr/X11R6/include \ /usr/local/include TEMPLATE_VBOXMAINEXE_LIBPATH += \ - /usr/lib \ - /usr/X11R6/lib \ /usr/local/lib else ifeq ($(KBUILD_TARGET),netbsd) TEMPLATE_VBOXMAINEXE_TOOL = GXX3 -@@ -5716,7 +5704,7 @@ ifdef VBOX_WITH_QTGUI - else - VBOX_PATH_QT ?= $(lastword $(filter %-$(tolower $(VBOX_VCC_TOOL_STEM)),$(sort $(wildcard $(KBUILD_DEVTOOLS_TRG)/qt/v5*)))) - endif -- else if1of ($(KBUILD_TARGET), linux solaris) -+ else if1of ($(KBUILD_TARGET), freebsd linux solaris) - ifndef VBOX_WITH_QTGUI_V5 - VBOX_PATH_QT ?= $(lastword $(sort $(wildcard $(KBUILD_DEVTOOLS_TRG)/qt/v4*))) - else -@@ -5914,12 +5902,8 @@ ifdef VBOX_WITH_QTGUI +@@ -6054,12 +6042,8 @@ ifdef VBOX_WITH_QTGUI $(VBOX_LIBPATH_X11) ifeq ($(KBUILD_TARGET),freebsd) TEMPLATE_VBOXQTGUIEXE_INCS += \ - /usr/include \ - /usr/X11R6/include \ /usr/local/include TEMPLATE_VBOXQTGUIEXE_LIBPATH += \ - /usr/lib \ - /usr/X11R6/lib \ /usr/local/lib endif ifeq ($(KBUILD_TARGET),solaris) -@@ -6144,12 +6128,8 @@ TEMPLATE_VBoxBldProg_LIBPATH +@@ -6282,12 +6266,8 @@ TEMPLATE_VBoxBldProg_LIBPATH += \ TEMPLATE_VBoxBldProg_TOOL = GXX3 TEMPLATE_VBoxBldProg_LIBS = pthread TEMPLATE_VBoxBldProg_INCS += \ - /usr/include \ - /usr/X11R6/include \ /usr/local/include TEMPLATE_VBoxBldProg_LIBPATH += \ - /usr/lib \ - /usr/X11R6/lib \ /usr/local/lib else ifeq ($(KBUILD_HOST),netbsd) TEMPLATE_VBoxBldProg_TOOL = GXX3 -@@ -6543,6 +6523,7 @@ TEMPLATE_VBOXCROGLR3HOSTDLL_LDFLAGS.darw +@@ -6707,6 +6687,7 @@ TEMPLATE_VBOXCROGLR3HOSTDLL_LDFLAGS.darwin += \ -current_version $(VBOX_VERSION_MAJOR).$(VBOX_VERSION_MINOR).$(VBOX_VERSION_BUILD) \ -compatibility_version $(VBOX_VERSION_MAJOR).$(VBOX_VERSION_MINOR).$(VBOX_VERSION_BUILD) TEMPLATE_VBOXCROGLR3HOSTDLL_LDFLAGS.linux = -Wl,--no-as-needed +TEMPLATE_VBOXCROGLR3HOSTDLL_LDFLAGS.freebsd = -Wl,--no-as-needed TEMPLATE_VBOXCROGLR3HOSTDLL_BLDDIRS = $(VBOX_PATH_CROGL_GENFILES)/ ifeq ($(KBUILD_TARGET),darwin) TEMPLATE_VBOXCROGLR3HOSTDLL_CFLAGS = $(TEMPLATE_VBOXR3NP_CFLAGS) -Wno-deprecated-declarations Index: head/emulators/virtualbox-ose/files/patch-configure =================================================================== --- head/emulators/virtualbox-ose/files/patch-configure (revision 452714) +++ head/emulators/virtualbox-ose/files/patch-configure (revision 452715) @@ -1,103 +1,103 @@ ---- configure.orig 2017-03-08 17:15:08 UTC +--- configure.orig 2017-10-18 07:06:30 UTC +++ configure -@@ -140,10 +140,14 @@ CXX_FLAGS="" +@@ -139,10 +139,14 @@ CXX_FLAGS="" if [ "$OS" = "freebsd" ]; then INCCURL="-I/usr/local/include" LIBCURL="-L/usr/local/lib -lcurl" + INCALSA="-I/usr/local/include" + LIBALSA="-L/usr/local/lib" INCPULSE="-I/usr/local/include" LIBPULSE="-L/usr/local/lib" INCPNG="-I/usr/local/include" LIBPNG="-L/usr/local/lib -lpng" + INCVNCSERVER="-I/usr/local/include" + LIBVNCSERVER="-L/usr/local/lib" else INCCURL="" LIBCURL="-lcurl" -@@ -441,6 +445,9 @@ check_gcc() +@@ -437,6 +441,9 @@ check_gcc() elif [ $cc_maj -eq 4 -a $cc_min -eq 0 -a "$OS" = "darwin" ]; then log_success "found version $cc_ver" # gcc-4.0 is allowed for Darwin only + elif [ $cc_maj -eq 4 -a $cc_min -eq 2 -a "$OS" = "freebsd" ]; then + log_success "found version $cc_ver" + # gcc-4.2 is allowed for FreeBSD only elif [ $cc_maj -lt 4 \ -o \( $cc_maj -eq 4 -a $cc_min -lt 4 -a "$OS" != "darwin" \) \ -o \( $cc_maj -eq 4 -a $cc_min -lt 2 -a "$OS" = "darwin" \) \ -@@ -1224,7 +1231,7 @@ extern "C" int main(void) +@@ -1233,7 +1240,7 @@ extern "C" int main(void) #endif } EOF - if test_compile "-lasound" asound asound; then + if test_compile "$INCALSA $LIBALSA -lasound" asound asound; then test_execute fi } -@@ -1694,8 +1701,7 @@ EOF +@@ -1533,8 +1540,7 @@ EOF if [ $? -eq 0 ]; then echo "(Qt5 from pkg-config)" >> $LOG FLGQT5=`pkg-config Qt5Core --cflags` - # gcc 4.8 is able to compile with C++11 (see also VBOX_GCC_std in Config.kmk) - [ $cc_maj -eq 4 -a $cc_min -eq 8 ] && FLGQT5="$FLGQT5 -std=c++11" + FLGQT5="$FLGQT5 -std=c++11" INCQT5=`strip_I "$FLGQT5"` LIBDIR5=`pkg-config Qt5Core --variable=libdir` LIBQT5=`pkg-config Qt5Core --libs` -@@ -2151,8 +2157,8 @@ EOF +@@ -1994,8 +2000,8 @@ EOF echo "compiling the following source file:" >> $LOG cat $ODIR.tmp_src.cc >> $LOG echo "using the following command line:" >> $LOG - echo "$CXX -O -Wall -o $ODIR.tmp_out $ODIR.tmp_src.cc -I$p/include/$d $p/$b/lib$d.so" >> $LOG - $CXX -O -Wall -o $ODIR.tmp_out $ODIR.tmp_src.cc -I$p/include/$d $p/$b/lib$d.so >> $LOG 2>&1 + echo "$CXX -O -Wall -o $ODIR.tmp_out $ODIR.tmp_src.cc -I$p/include/$d $p/$b/lib$d.so -pthread" >> $LOG + $CXX -O -Wall -o $ODIR.tmp_out $ODIR.tmp_src.cc -I$p/include/$d $p/$b/lib$d.so -pthread >> $LOG 2>&1 if [ $? -eq 0 ]; then found=1 break -@@ -2628,7 +2634,7 @@ for option in "$@"; do +@@ -2468,7 +2474,7 @@ for option in "$@"; do --with-openssl-dir=*) OPENSSLDIR=`echo $option | cut -d'=' -f2` INCCRYPTO="-I${OPENSSLDIR}/include" - LIBCRYPTO="${OPENSSLDIR}/lib/libcrypto.a ${OPENSSLDIR}/lib/libssl.a" + LIBCRYPTO="-L${OPENSSLDIR}/lib -lssl -lcrypto" ;; --with-ow-dir=*) WATCOM=`echo $option | cut -d'=' -f2` -@@ -2969,13 +2975,20 @@ if [ $ONLY_ADDITIONS -eq 0 ]; then +@@ -2803,13 +2809,20 @@ if [ $ONLY_ADDITIONS -eq 0 ]; then [ $WITH_PYTHON -eq 1 ] && check_python [ $WITH_JAVA -eq 1 ] && check_java - # PulseAudio if [ "$OS" = "linux" -o "$OS" = "freebsd" -o "$OS" = "netbsd" ]; then + if [ $WITH_ALSA -eq 1 ]; then + check_alsa + else + cnf_append "VBOX_WITH_AUDIO_ALSA" "" + fi if [ $WITH_PULSE -eq 1 ]; then check_pulse elif [ $WITH_PULSE -eq 0 ]; then cnf_append "VBOX_WITH_AUDIO_PULSE" "" fi + if [ $WITH_DBUS -eq 0 ]; then + cnf_append "VBOX_WITH_DBUS" "" + fi fi fi -@@ -2992,14 +3005,6 @@ if [ "$OS" = "linux" ]; then +@@ -2826,14 +2839,6 @@ if [ "$OS" = "linux" ]; then cnf_append "VBOX_WITH_ADDITION_DRIVERS" "" fi if [ $ONLY_ADDITIONS -eq 0 ]; then - if [ $WITH_ALSA -eq 1 ]; then - check_alsa - else - cnf_append "VBOX_WITH_AUDIO_ALSA" "" - fi - if [ $WITH_DBUS -eq 0 ]; then - cnf_append "VBOX_WITH_DBUS" "" - fi if [ $WITH_DEVMAPPER -eq 1 ]; then check_libdevmapper else Index: head/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c =================================================================== --- head/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c (revision 452714) +++ head/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c (revision 452715) @@ -1,332 +1,257 @@ ---- src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c.orig 2015-11-10 17:00:16 UTC +--- src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c.orig 2017-10-18 07:06:43 UTC +++ src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c -@@ -92,8 +92,6 @@ struct VBoxGuestDeviceState +@@ -93,8 +93,6 @@ struct VBoxGuestDeviceState struct resource *pIrqRes; /** Pointer to the IRQ handler. */ void *pfnIrqHandler; - /** VMMDev version */ - uint32_t u32Version; }; -@@ -103,8 +101,7 @@ struct VBoxGuestDeviceState +@@ -104,8 +102,7 @@ struct VBoxGuestDeviceState /* * Character device file handlers. */ -static d_fdopen_t vgdrvFreeBSDOpen; -static d_close_t vgdrvFreeBSDClose; +static d_open_t vgdrvFreeBSDOpen; static d_ioctl_t vgdrvFreeBSDIOCtl; + static int vgdrvFreeBSDIOCtlSlow(PVBOXGUESTSESSION pSession, u_long ulCmd, caddr_t pvData, struct thread *pTd); static d_write_t vgdrvFreeBSDWrite; - static d_read_t vgdrvFreeBSDRead; -@@ -134,8 +131,7 @@ static struct cdevsw g_vgdrvFreeBSDCh +@@ -136,8 +133,7 @@ static struct cdevsw g_vgdrvFreeBSDCh { .d_version = D_VERSION, .d_flags = D_TRACKCLOSE | D_NEEDMINOR, - .d_fdopen = vgdrvFreeBSDOpen, - .d_close = vgdrvFreeBSDClose, + .d_open = vgdrvFreeBSDOpen, .d_ioctl = vgdrvFreeBSDIOCtl, .d_read = vgdrvFreeBSDRead, .d_write = vgdrvFreeBSDWrite, -@@ -143,81 +139,28 @@ static struct cdevsw g_vgdrvFreeBSDCh +@@ -145,81 +141,28 @@ static struct cdevsw g_vgdrvFreeBSDCh .d_name = "vboxguest" }; +/** Device structure. */ +static struct cdev *g_pDev; + /** Device extention & session data association structure. */ static VBOXGUESTDEVEXT g_DevExt; -/** List of cloned device. Managed by the kernel. */ -static struct clonedevs *g_pvgdrvFreeBSDClones; -/** The dev_clone event handler tag. */ -static eventhandler_tag g_vgdrvFreeBSDEHTag; /** Reference counter */ static volatile uint32_t cUsers; /** selinfo structure used for polling. */ static struct selinfo g_SelInfo; -/** - * DEVFS event handler. - */ -static void vgdrvFreeBSDClone(void *pvArg, struct ucred *pCred, char *pszName, int cchName, struct cdev **ppDev) +static void vgdrvFreeBSDDtr(void *pSession) { - int iUnit; - int rc; - - Log(("vgdrvFreeBSDClone: pszName=%s ppDev=%p\n", pszName, ppDev)); - - /* - * One device node per user, si_drv1 points to the session. - * /dev/vboxguest where N = {0...255}. - */ - if (!ppDev) - return; - if (strcmp(pszName, "vboxguest") == 0) - iUnit = -1; - else if (dev_stdclone(pszName, NULL, "vboxguest", &iUnit) != 1) - return; - if (iUnit >= 256) - { - Log(("vgdrvFreeBSDClone: iUnit=%d >= 256 - rejected\n", iUnit)); - return; - } - - Log(("vgdrvFreeBSDClone: pszName=%s iUnit=%d\n", pszName, iUnit)); - - rc = clone_create(&g_pvgdrvFreeBSDClones, &g_vgdrvFreeBSDChrDevSW, &iUnit, ppDev, 0); - Log(("vgdrvFreeBSDClone: clone_create -> %d; iUnit=%d\n", rc, iUnit)); - if (rc) - { - *ppDev = make_dev(&g_vgdrvFreeBSDChrDevSW, - iUnit, - UID_ROOT, - GID_WHEEL, - 0664, - "vboxguest%d", iUnit); - if (*ppDev) - { - dev_ref(*ppDev); - (*ppDev)->si_flags |= SI_CHEAPCLONE; - Log(("vgdrvFreeBSDClone: Created *ppDev=%p iUnit=%d si_drv1=%p si_drv2=%p\n", - *ppDev, iUnit, (*ppDev)->si_drv1, (*ppDev)->si_drv2)); - (*ppDev)->si_drv1 = (*ppDev)->si_drv2 = NULL; - } - else - Log(("vgdrvFreeBSDClone: make_dev iUnit=%d failed\n", iUnit)); - } - else - Log(("vgdrvFreeBSDClone: Existing *ppDev=%p iUnit=%d si_drv1=%p si_drv2=%p\n", - *ppDev, iUnit, (*ppDev)->si_drv1, (*ppDev)->si_drv2)); + VGDrvCommonCloseSession(&g_DevExt, pSession); + ASMAtomicDecU32(&cUsers); } /** * File open handler * */ -#if __FreeBSD_version >= 700000 -static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOpen, struct thread *pTd, struct file *pFd) -#else -static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOpen, struct thread *pTd) -#endif +static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOpen, int DevType, struct thread *pTd) { int rc; PVBOXGUESTSESSION pSession; -@@ -225,25 +168,18 @@ static int vgdrvFreeBSDOpen(struct cdev +@@ -227,25 +170,18 @@ static int vgdrvFreeBSDOpen(struct cdev LogFlow(("vgdrvFreeBSDOpen:\n")); /* - * Try grab it (we don't grab the giant, remember). - */ - if (!ASMAtomicCmpXchgPtr(&pDev->si_drv1, (void *)0x42, NULL)) - return EBUSY; - - /* * Create a new session. */ rc = VGDrvCommonCreateUserSession(&g_DevExt, &pSession); if (RT_SUCCESS(rc)) { - if (ASMAtomicCmpXchgPtr(&pDev->si_drv1, pSession, (void *)0x42)) - { - Log(("vgdrvFreeBSDOpen: success - g_DevExt=%p pSession=%p rc=%d pid=%d\n", &g_DevExt, pSession, rc, (int)RTProcSelf())); -+ Log((DEVICE_NAME ":vgdrvFreeBSDOpen success: g_DevExt=%p pSession=%p rc=%d pid=%d\n", &g_DevExt, pSession, rc, (int)RTProcSelf())); ++ Log(("vgdrvFreeBSDOpen: success - g_DevExt=%p pSession=%p rc=%d pid=%d\n", &g_DevExt, pSession, rc, (int)RTProcSelf())); + rc = devfs_set_cdevpriv(pSession, vgdrvFreeBSDDtr); + if (rc) + VGDrvCommonCloseSession(&g_DevExt, pSession); + else ASMAtomicIncU32(&cUsers); - return 0; - } - - VGDrvCommonCloseSession(&g_DevExt, pSession); + return rc; } LogRel(("vgdrvFreeBSDOpen: failed. rc=%d\n", rc)); -@@ -251,47 +187,17 @@ static int vgdrvFreeBSDOpen(struct cdev +@@ -253,33 +189,6 @@ static int vgdrvFreeBSDOpen(struct cdev } /** - * File close handler - * - */ -static int vgdrvFreeBSDClose(struct cdev *pDev, int fFile, int DevType, struct thread *pTd) -{ - 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... - */ - if (VALID_PTR(pSession)) - { - VGDrvCommonCloseSession(&g_DevExt, pSession); - if (!ASMAtomicCmpXchgPtr(&pDev->si_drv1, NULL, pSession)) - Log(("vgdrvFreeBSDClose: si_drv1=%p expected %p!\n", pDev->si_drv1, pSession)); - ASMAtomicDecU32(&cUsers); - /* Don't use destroy_dev here because it may sleep resulting in a hanging user process. */ - destroy_dev_sched(pDev); - } - else - Log(("vgdrvFreeBSDClose: si_drv1=%p!\n", pSession)); - return 0; -} - +- -/** - * IOCTL handler + * I/O control request. * - */ + * @returns depends... +@@ -292,7 +201,11 @@ static int vgdrvFreeBSDClose(struct cdev static int vgdrvFreeBSDIOCtl(struct cdev *pDev, u_long ulCmd, caddr_t pvData, int fFile, struct thread *pTd) { -- LogFlow(("vgdrvFreeBSDIOCtl\n")); -- -- int rc = 0; -+ int rc; -+ PVBOXGUESTSESSION pSession; - -- /* -- * Validate the input. -- */ -- PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)pDev->si_drv1; -- if (RT_UNLIKELY(!VALID_PTR(pSession))) -- return EINVAL; + PVBOXGUESTSESSION pSession; +- devfs_get_cdevpriv((void **)&pSession); ++ int rc; ++ + rc = devfs_get_cdevpriv((void **)&pSession); + if (rc) + return rc; /* - * Validate the request wrapper. -@@ -308,43 +214,46 @@ static int vgdrvFreeBSDIOCtl(struct cdev - Log(("vgdrvFreeBSDIOCtl: bad magic %#x; pArg=%p Cmd=%lu.\n", ReqWrap->u32Magic, pvData, ulCmd)); - return EINVAL; - } -- if (RT_UNLIKELY( ReqWrap->cbData == 0 -- || ReqWrap->cbData > _1M*16)) -+ if (RT_UNLIKELY(ReqWrap->cbData > _1M*16)) - { - printf("vgdrvFreeBSDIOCtl: bad size %#x; pArg=%p Cmd=%lu.\n", ReqWrap->cbData, pvData, ulCmd); - return EINVAL; - } + * Deal with the fast ioctl path first. +@@ -488,12 +401,14 @@ int VBOXCALL VBoxGuestIDC(void *pvSessio - /* -- * Read the request. -+ * Read the request payload if any; requests like VBOXGUEST_IOCTL_CANCEL_ALL_WAITEVENTS have no data payload. - */ -- void *pvBuf = RTMemTmpAlloc(ReqWrap->cbData); -- if (RT_UNLIKELY(!pvBuf)) -+ void *pvBuf = NULL; -+ if (RT_LIKELY(ReqWrap->cbData > 0)) - { -- Log(("vgdrvFreeBSDIOCtl: RTMemTmpAlloc failed to alloc %d bytes.\n", ReqWrap->cbData)); -- return ENOMEM; -- } -+ pvBuf = RTMemTmpAlloc(ReqWrap->cbData); -+ if (RT_UNLIKELY(!pvBuf)) -+ { -+ Log((DEVICE_NAME ":vgdrvFreeBSDIOCtl: RTMemTmpAlloc failed to alloc %d bytes.\n", ReqWrap->cbData)); -+ return ENOMEM; -+ } - -- rc = copyin((void *)(uintptr_t)ReqWrap->pvDataR3, pvBuf, ReqWrap->cbData); -- if (RT_UNLIKELY(rc)) -- { -- RTMemTmpFree(pvBuf); -- Log(("vgdrvFreeBSDIOCtl: copyin failed; pvBuf=%p pArg=%p Cmd=%lu. rc=%d\n", pvBuf, pvData, ulCmd, rc)); -- return EFAULT; -- } -- if (RT_UNLIKELY( ReqWrap->cbData != 0 -- && !VALID_PTR(pvBuf))) -- { -- RTMemTmpFree(pvBuf); -- Log(("vgdrvFreeBSDIOCtl: pvBuf invalid pointer %p\n", pvBuf)); -- return EINVAL; -+ rc = copyin((void *)(uintptr_t)ReqWrap->pvDataR3, pvBuf, ReqWrap->cbData); -+ if (RT_UNLIKELY(rc)) -+ { -+ RTMemTmpFree(pvBuf); -+ Log(("vgdrvFreeBSDIOCtl: copyin failed; pvBuf=%p pArg=%p Cmd=%lu. rc=%d\n", pvBuf, pvData, ulCmd, rc)); -+ return EFAULT; -+ } -+ if (RT_UNLIKELY( ReqWrap->cbData != 0 -+ && !VALID_PTR(pvBuf))) -+ { -+ RTMemTmpFree(pvBuf); -+ Log(("vgdrvFreeBSDIOCtl: pvBuf invalid pointer %p\n", pvBuf)); -+ return EINVAL; -+ } - } - Log(("vgdrvFreeBSDIOCtl: pSession=%p pid=%d.\n", pSession, (int)RTProcSelf())); - - /* - * Process the IOCtl. - */ -- size_t cbDataReturned; -+ size_t cbDataReturned = 0; - rc = VGDrvCommonIoCtl(ulCmd, &g_DevExt, pSession, pvBuf, ReqWrap->cbData, &cbDataReturned); - if (RT_SUCCESS(rc)) - { -@@ -375,12 +284,14 @@ static int vgdrvFreeBSDIOCtl(struct cdev - 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(!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)); } -@@ -421,10 +332,7 @@ static int vgdrvFreeBSDDetach(device_t p +@@ -534,10 +449,7 @@ static int vgdrvFreeBSDDetach(device_t p /* * Reverse what we did in vgdrvFreeBSDAttach. */ - if (g_vgdrvFreeBSDEHTag != NULL) - EVENTHANDLER_DEREGISTER(dev_clone, g_vgdrvFreeBSDEHTag); - - clone_cleanup(&g_pvgdrvFreeBSDClones); + destroy_dev(g_pDev); vgdrvFreeBSDRemoveIRQ(pDevice, pState); -@@ -576,18 +484,21 @@ static int vgdrvFreeBSDAttach(device_t p +@@ -689,18 +601,21 @@ static int vgdrvFreeBSDAttach(device_t p if (RT_SUCCESS(rc)) { /* - * Configure device cloning. + * Configure device. */ - clone_setup(&g_pvgdrvFreeBSDClones); - g_vgdrvFreeBSDEHTag = EVENTHANDLER_REGISTER(dev_clone, vgdrvFreeBSDClone, 0, 1000); - if (g_vgdrvFreeBSDEHTag) + g_pDev = make_dev(&g_vgdrvFreeBSDChrDevSW, + 0, + UID_ROOT, + GID_WHEEL, + 0664, + "vboxguest"); + if (g_pDev) { printf(DEVICE_NAME ": loaded successfully\n"); return 0; } - printf(DEVICE_NAME ": EVENTHANDLER_REGISTER(dev_clone,,,) failed\n"); - clone_cleanup(&g_pvgdrvFreeBSDClones); + printf(DEVICE_NAME ": make_dev failed\n"); vgdrvFreeBSDRemoveIRQ(pDevice, pState); } else Index: head/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile =================================================================== --- head/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile (revision 452714) +++ head/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile (revision 452715) @@ -1,28 +1,18 @@ ---- src/VBox/Additions/common/VBoxGuest/freebsd/Makefile.orig 2016-08-16 19:55:31 UTC +--- src/VBox/Additions/common/VBoxGuest/freebsd/Makefile.orig 2017-10-18 07:06:43 UTC +++ src/VBox/Additions/common/VBoxGuest/freebsd/Makefile -@@ -71,6 +71,7 @@ SRCS += \ +@@ -70,6 +70,7 @@ SRCS += \ handletable.c \ handletablectx.c \ once.c \ + term.c \ thread.c .PATH: ${.CURDIR}/common/string -@@ -129,6 +130,7 @@ SRCS += \ +@@ -128,6 +129,7 @@ SRCS += \ + .PATH: ${.CURDIR}/r0drv SRCS += \ - alloc-r0drv.c \ + alloc-ef-r0drv.c \ + alloc-r0drv.c \ initterm-r0drv.c \ memobj-r0drv.c \ - powernotification-r0drv.c -@@ -149,8 +151,7 @@ SRCS += \ - spinlock-r0drv-freebsd.c \ - thread-r0drv-freebsd.c \ - thread2-r0drv-freebsd.c \ -- time-r0drv-freebsd.c \ -- timer-r0drv-freebsd.c -+ time-r0drv-freebsd.c - - .PATH: ${.CURDIR}/r0drv/generic - SRCS += \ Index: head/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-files_vboxguest =================================================================== --- head/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-files_vboxguest (revision 452714) +++ head/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-files_vboxguest (revision 452715) @@ -1,34 +1,26 @@ ---- src/VBox/Additions/common/VBoxGuest/freebsd/files_vboxguest.orig 2016-08-16 19:55:31 UTC +--- src/VBox/Additions/common/VBoxGuest/freebsd/files_vboxguest.orig 2017-10-18 07:06:43 UTC +++ src/VBox/Additions/common/VBoxGuest/freebsd/files_vboxguest -@@ -102,6 +102,7 @@ FILES_VBOXGUEST_NOBIN=" \ +@@ -99,6 +99,7 @@ FILES_VBOXGUEST_NOBIN=" \ ${PATH_ROOT}/src/VBox/Runtime/common/misc/handletable.h=>common/misc/handletable.h \ ${PATH_ROOT}/src/VBox/Runtime/common/misc/handletablectx.cpp=>common/misc/handletablectx.c \ ${PATH_ROOT}/src/VBox/Runtime/common/misc/once.cpp=>common/misc/once.c \ + ${PATH_ROOT}/src/VBox/Runtime/common/misc/term.cpp=>common/misc/term.c \ ${PATH_ROOT}/src/VBox/Runtime/common/misc/thread.cpp=>common/misc/thread.c \ ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg1Weak.cpp=>common/misc/RTAssertMsg1Weak.c \ ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2.cpp=>common/misc/RTAssertMsg2.c \ -@@ -139,6 +140,7 @@ FILES_VBOXGUEST_NOBIN=" \ - ${PATH_ROOT}/src/VBox/Runtime/include/internal/iprt.h=>include/internal/iprt.h \ - ${PATH_ROOT}/src/VBox/Runtime/include/internal/lockvalidator.h=>include/internal/lockvalidator.h \ - ${PATH_ROOT}/src/VBox/Runtime/include/internal/magics.h=>include/internal/magics.h \ -+ ${PATH_ROOT}/src/VBox/Runtime/include/internal/mem.h=>include/internal/mem.h \ - ${PATH_ROOT}/src/VBox/Runtime/include/internal/memobj.h=>include/internal/memobj.h \ - ${PATH_ROOT}/src/VBox/Runtime/include/internal/string.h=>include/internal/string.h \ - ${PATH_ROOT}/src/VBox/Runtime/include/internal/thread.h=>include/internal/thread.h \ -@@ -161,6 +163,7 @@ FILES_VBOXGUEST_NOBIN=" \ +@@ -160,6 +161,7 @@ FILES_VBOXGUEST_NOBIN=" \ ${PATH_ROOT}/src/VBox/Runtime/generic/errvars-generic.cpp=>generic/errvars-generic.c \ ${PATH_ROOT}/src/VBox/Runtime/generic/timer-generic.cpp=>generic/timer-generic.c \ ${PATH_ROOT}/src/VBox/Runtime/generic/mppresent-generic.cpp=>generic/mppresent-generic.c \ + ${PATH_ROOT}/src/VBox/Runtime/r0drv/alloc-ef-r0drv.cpp=>r0drv/alloc-ef-r0drv.c \ ${PATH_ROOT}/src/VBox/Runtime/r0drv/alloc-r0drv.cpp=>r0drv/alloc-r0drv.c \ ${PATH_ROOT}/src/VBox/Runtime/r0drv/alloc-r0drv.h=>r0drv/alloc-r0drv.h \ ${PATH_ROOT}/src/VBox/Runtime/r0drv/initterm-r0drv.cpp=>r0drv/initterm-r0drv.c \ -@@ -186,6 +189,7 @@ FILES_VBOXGUEST_NOBIN=" \ +@@ -186,6 +188,7 @@ FILES_VBOXGUEST_NOBIN=" \ ${PATH_ROOT}/src/VBox/Runtime/r0drv/freebsd/sleepqueue-r0drv-freebsd.h=>r0drv/freebsd/sleepqueue-r0drv-freebsd.h \ ${PATH_ROOT}/src/VBox/Runtime/r0drv/generic/semspinmutex-r0drv-generic.c=>r0drv/generic/semspinmutex-r0drv-generic.c \ ${PATH_ROOT}/src/VBox/Runtime/r0drv/generic/mpnotification-r0drv-generic.cpp=>r0drv/generic/mpnotification-r0drv-generic.c \ + ${PATH_ROOT}/src/VBox/Runtime/r0drv/generic/threadctxhooks-r0drv-generic.cpp=>r0drv/generic/threadctxhooks-r0drv-generic.c \ ${PATH_ROOT}/src/VBox/Runtime/r0drv/generic/RTMpIsCpuWorkPending-r0drv-generic.cpp=>r0drv/generic/RTMpIsCpuWorkPending-r0drv-generic.c \ ${PATH_ROOT}/src/VBox/Runtime/r0drv/memobj-r0drv.cpp=>r0drv/memobj-r0drv.c \ ${PATH_ROOT}/src/VBox/Runtime/VBox/log-vbox.cpp=>VBox/log-vbox.c \ Index: head/emulators/virtualbox-ose/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs.h =================================================================== --- head/emulators/virtualbox-ose/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs.h (revision 452714) +++ head/emulators/virtualbox-ose/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs.h (revision 452715) @@ -1,470 +1,466 @@ ---- src/VBox/Additions/freebsd/vboxvfs/vboxvfs.h.orig 2017-04-28 16:59:22.000000000 +0200 -+++ src/VBox/Additions/freebsd/vboxvfs/vboxvfs.h 2017-07-13 01:05:04.399618524 +0200 -@@ -1,10 +1,5 @@ +--- src/VBox/Additions/freebsd/vboxvfs/vboxvfs.h.orig 2017-10-18 07:06:47 UTC ++++ src/VBox/Additions/freebsd/vboxvfs/vboxvfs.h +@@ -1,8 +1,3 @@ -/* $Id: vboxvfs.h $ */ -/** @file - * Description. - */ - /* * Copyright (C) 2010-2016 Oracle Corporation * - * This file is part of VirtualBox Open Source Edition (OSE), as - * available from http://www.virtualbox.org. This file is free software; -@@ -21,72 +16,418 @@ +@@ -21,72 +16,416 @@ #define VBOXVFS_VFSNAME "vboxvfs" #define VBOXVFS_VERSION 1 -#define MAX_HOST_NAME 256 -#define MAX_NLS_NAME 32 +#define MAX_HOST_NAME 256 +#define MAX_NLS_NAME 32 +//#define MODEMASK 07777 /* mode bits plus permission bits */ +/** Helper macros */ +#define VFSTOVBOXFS(mp) ((struct vboxfs_mnt *)((mp)->mnt_data)) +#define VP_TO_VBOXFS_NODE(vp) ((struct vboxfs_node *)(vp)->v_data) +#define VBOXTOV(np) ((struct vnode *)(np)->n_vnode) -+ + +-struct vboxvfs_mount_info { +- char name[MAX_HOST_NAME]; +- char nls_name[MAX_NLS_NAME]; +- int uid; +- int gid; +- int ttl; +-}; +#define ROOTDIR_INO 1 +#define THEFILE_INO 2 +#define THEFILE_NAME "thefile" -+ + +#define VBOXFS_NODE_LOCK(node) mtx_lock(&(node)->sf_interlock) +#define VBOXFS_NODE_UNLOCK(node) mtx_unlock(&(node)->sf_interlock) +#define VBOXFS_NODE_MTX(node) (&(node)->sf_interlock) +#define VBOXFS_NODE_ASSERT_LOCKED(node) mtx_assert(VBOXFS_NODE_MTX(node), \ + MA_OWNED) + +#ifdef INVARIANTS +#define VBOXFS_ASSERT_LOCKED(node) do { \ + MPASS(node != NULL); \ + MPASS(node->sf_vnode != NULL); \ + if (!VOP_ISLOCKED(node->sf_vnode) && \ + !mtx_owned(VBOXFS_NODE_MTX(node))) \ + panic("vboxfs: node is not locked: %p", node); \ + } while (0) +#define VBOXFS_ASSERT_ELOCKED(node) do { \ + MPASS((node) != NULL); \ + MPASS((node)->sf_vnode != NULL); \ + mtx_assert(VBOXFS_NODE_MTX(node), MA_OWNED); \ + ASSERT_VOP_LOCKED((node)->sf_vnode, "vboxfs"); \ + } while (0) +#else +#define VBOXFS_ASSERT_LOCKED(node) (void)0 +#define VBOXFS_ASSERT_ELOCKED(node) (void)0 +#endif - --struct vboxvfs_mount_info { -- char name[MAX_HOST_NAME]; -- char nls_name[MAX_NLS_NAME]; -- int uid; -- int gid; -- int ttl; --}; ++ +#define VBOXFS_VNODE_ALLOCATING 1 +#define VBOXFS_VNODE_WANT 2 +#define VBOXFS_VNODE_DOOMED 4 +#define VBOXFS_VNODE_WRECLAIM 8 + +MALLOC_DECLARE(M_VBOXVFS); - ++ #ifdef _KERNEL +#ifndef FREEBSD_STYLE +#include "../../../../../include/iprt/nocrt/limits.h" +#include "../../../../../include/iprt/alloc.h" +#include "../../../../../include/iprt/asm.h" +#include "../../../../../include/iprt/asm-amd64-x86.h" +#include "../../../../../include/iprt/asm-math.h" +#include "../../../../../include/iprt/assert.h" +#include "../../../../../include/iprt/cdefs.h" +#include "../../../../../include/iprt/err.h" +#include "../../../../../include/iprt/fs.h" +#include "../../../../../include/iprt/log.h" +#include "../../../../../include/iprt/mangling.h" +#include "../../../../../include/iprt/mem.h" +#include "../../../../../include/iprt/param.h" +#include "../../../../../include/iprt/path.h" +#include "../../../../../include/iprt/semaphore.h" +#include "../../../../../include/iprt/stdarg.h" +#include "../../../../../include/iprt/stdint.h" +#include "../../../../../include/iprt/string.h" +#include "../../../../../include/iprt/time.h" +#include "../../../../../include/iprt/types.h" +#include "../../../../../include/iprt/uni.h" +#include "../../../../../include/iprt/nocrt/limits.h" +#include "../../../../../include/iprt/alloc.h" +#include "../../../../../include/iprt/asm.h" +#include "../../../../../include/iprt/asm-amd64-x86.h" +#include "../../../../../include/iprt/asm-math.h" +#include "../../../../../include/iprt/assert.h" +#include "../../../../../include/iprt/cdefs.h" +#include "../../../../../include/iprt/err.h" +#include "../../../../../include/iprt/fs.h" +#include "../../../../../include/iprt/log.h" +#include "../../../../../include/iprt/mangling.h" +#include "../../../../../include/iprt/mem.h" +#include "../../../../../include/iprt/param.h" +#include "../../../../../include/iprt/path.h" +#include "../../../../../include/iprt/semaphore.h" +#include "../../../../../include/iprt/stdarg.h" +#include "../../../../../include/iprt/stdint.h" +#include "../../../../../include/iprt/string.h" +#include "../../../../../include/iprt/time.h" +#include "../../../../../include/iprt/types.h" +#include "../../../../../include/iprt/uni.h" -+ -+#include "../../common/VBoxGuestLib/SysHlp.h" -+ + +-#include +#else + +#include "iprt/nocrt/limits.h" +#include "iprt/alloc.h" +#include "iprt/asm.h" +#include "iprt/asm-amd64-x86.h" +#include "iprt/asm-math.h" +#include "iprt/assert.h" +#include "iprt/cdefs.h" +#include "iprt/err.h" +#include "iprt/fs.h" +#include "iprt/log.h" +#include "iprt/mem.h" +#include "iprt/param.h" +#include "iprt/path.h" +#include "iprt/semaphore.h" +#include "iprt/stdarg.h" +#include "iprt/stdint.h" +#include "iprt/string.h" +#include "iprt/time.h" +#include "iprt/types.h" +#include "iprt/uni.h" +#include "iprt/nocrt/limits.h" +#include "iprt/alloc.h" +#include "iprt/asm.h" +#include "iprt/asm-amd64-x86.h" +#include "iprt/asm-math.h" +#include "iprt/assert.h" +#include "iprt/cdefs.h" +#include "iprt/err.h" +#include "iprt/fs.h" +#include "iprt/log.h" +#include "iprt/mem.h" +#include "iprt/param.h" +#include "iprt/path.h" +#include "iprt/semaphore.h" +#include "iprt/stdarg.h" +#include "iprt/stdint.h" +#include "iprt/string.h" +#include "iprt/time.h" +#include "iprt/types.h" +#include "iprt/uni.h" + +#include "common/VBoxGuestLib/SysHlp.h" + +#endif /* !FREEBSD_STYLE */ - --#include ++ #include #include +#include -+ + +-struct vboxvfsmount { +- uid_t uid; +- gid_t gid; +- mode_t file_mode; +- mode_t dir_mode; +- struct mount *mp; +- struct ucred *owner; +- u_int flags; +- long nextino; +- int caseopt; +- int didrele; +#if defined(RT_OS_FREEBSD) && defined(_KERNEL) +# undef PVM /** XXX: For not conflict with PVM in sys/priority.h */ +#endif +#include + +#define VBOXVFS_DEBUG(lvl, ...) do { \ + if (vboxvfs_debug >= (lvl)) { \ + printf("VBOXVFS[%u]: ", lvl); \ + printf(__VA_ARGS__); \ + printf("\n"); \ + } \ +} while (0) + +/* + * representation of an active mount point + */ +struct sfp_mount { + VBGLSFMAP map; -+}; -+ + }; + +-/* structs - stolen from the linux shared module code */ +/* + * Mount / Unmount a shared folder. + * + * sfprov_mount() takes as input the connection pointer and the name of + * the shared folder. On success, it returns zero and supplies an + * sfp_mount_t handle. On failure it returns any relevant errno value. + * + * sfprov_unmount() unmounts the mounted file system. It returns 0 on + * success and any relevant errno on failure. + */ +typedef struct sfp_mount sfp_mount_t; + +struct sfp_file { + SHFLHANDLE handle; + VBGLSFMAP map; /* need this again for the close operation */ +}; + +typedef struct sfp_file sfp_file_t; + +/* + * File operations: open/close/read/write/etc. + * + * open/create can return any relevant errno, however ENOENT + * generally means that the host file didn't exist. + */ +typedef struct sffs_stat { + mode_t sf_mode; + off_t sf_size; + off_t sf_alloc; + struct timespec sf_atime; + struct timespec sf_mtime; + struct timespec sf_ctime; +} sffs_stat_t; + +/* + * Read directory entries. + */ +/* + * a singly linked list of buffers, each containing an array of stat's+dirent's. + * sf_len is length of the sf_entries array, in bytes. + */ +typedef struct sffs_dirents { + struct sffs_dirents *sf_next; + long long sf_len; + struct sffs_dirent { + sffs_stat_t sf_stat; + struct dirent sf_entry; /* this is variable length */ + off_t sf_off; + } sf_entries[1]; +} sffs_dirents_t; + +/* + * Shared Folders filesystem per-mount data structure. + */ +struct vboxfs_mnt { + struct mount *sf_vfsp; /* filesystem's vfs struct */ + sfp_mount_t *sf_handle; /* guest-host communication handle */ + uid_t sf_uid; /* owner of all shared folders */ + gid_t sf_gid; /* group of all shared folders */ + mode_t sf_dmode; /* mode of all directories */ + mode_t sf_fmode; /* mode of all files */ + mode_t sf_dmask; /* mask of all directories */ + mode_t sf_fmask; /* mask of all files */ + int sf_stat_ttl; /* ttl for stat caches (in ms) */ + int sf_fsync; /* whether to honor fsync or not */ + uint64_t sf_ino; /* per FS ino generator */ + uma_zone_t sf_node_pool; + struct vboxfs_node *sf_root; +}; + +/* + * vboxfs_node is the file system dependent vnode data for vboxfs. + * vboxfs_node's also track all files ever accessed, both open and closed. + * It duplicates some of the information in vnode, since it holds + * information for files that may have been completely closed. + * + */ +struct vboxfs_node { + struct vboxfs_mnt *vboxfsmp; /* containing mounted file system */ + char *sf_path; /* full pathname to file or dir */ + uint64_t sf_ino; /* assigned unique ID number */ + struct vnode *sf_vnode; /* vnode if active */ + sfp_file_t *sf_file; /* non NULL if open */ + struct vboxfs_node *sf_parent; /* parent sfnode of this one */ + uint16_t sf_children; /* number of children sfnodes */ + uint8_t sf_type; /* VDIR or VREG */ + uint8_t sf_vpstate; /* XXX: ADD COMMENT */ + uint8_t sf_is_stale; /* this is stale and should be purged */ + sffs_stat_t sf_stat; /* cached file attrs for this node */ + uint64_t sf_stat_time; /* last-modified time of sf_stat */ + sffs_dirents_t *sf_dir_list; /* list of entries for this directory */ - --struct vboxvfsmount { -- uid_t uid; -- gid_t gid; -- mode_t file_mode; -- mode_t dir_mode; -- struct mount *mp; -- struct ucred *owner; -- u_int flags; -- long nextino; -- int caseopt; -- int didrele; ++ + /* interlock to protect sf_vpstate */ + struct mtx sf_interlock; +}; + +struct vboxfs_mount_info { + char name[MAX_HOST_NAME]; /* share name */ + char nls_name[MAX_NLS_NAME];/* name of an I/O charset */ + int uid; /* user ID for all entries, default 0=root */ + int gid; /* group ID for all entries, default 0=root */ + int ttl; /* time to live */ + int dmode; /* mode for directories if != 0xffffffff */ + int fmode; /* mode for regular files if != 0xffffffff */ + int dmask; /* umask applied to directories */ + int fmask; /* umask applied to regular files */ - }; - --/* structs - stolen from the linux shared module code */ ++}; ++ struct sf_glob_info { - VBGLSFMAP map; -/* struct nls_table *nls;*/ - int ttl; - int uid; - int gid; - struct vnode *vnode_root; + VBGLSFMAP map; +/* struct nls_table *nls;*/ + int ttl; + int uid; + int gid; + struct vnode *vnode_root; }; +/** Per-file system mount instance data. */ +typedef struct vboxfs_globinfo +{ + VBGLSFMAP Map; + int Ttl; + int Uid; + int Gid; + struct mount *pVFS; + struct vboxfs_node *pVNodeRoot; +} vboxfs_globinfo_t; + struct sf_inode_info { - SHFLSTRING *path; - int force_restat; + SHFLSTRING *path; + int force_restat; }; #if 0 struct sf_dir_info { - struct list_head info_list; + struct list_head info_list; }; #endif struct sf_dir_buf { - size_t nb_entries; - size_t free_bytes; - size_t used_bytes; - void *buf; + size_t nb_entries; + size_t free_bytes; + size_t used_bytes; + void *buf; #if 0 - struct list_head head; + struct list_head head; #endif }; struct sf_reg_info { - SHFLHANDLE handle; + SHFLHANDLE handle; }; +int vboxfs_alloc_vp(struct mount *, struct vboxfs_node *, int, + struct vnode **); +void vboxfs_free_vp(struct vnode *); + +int vboxfs_alloc_node(struct mount *, struct vboxfs_mnt *, const char*, + enum vtype, uid_t, gid_t, mode_t, struct vboxfs_node *, + struct vboxfs_node **); +void vboxfs_free_node(struct vboxfs_mnt *, struct vboxfs_node *); + +/* + * These are the provider interfaces used by sffs to access the underlying + * shared file system. + */ +#define SFPROV_VERSION 1 + +/* + * Initialization and termination. + * sfprov_connect() is called once before any other interfaces and returns + * a handle used in further calls. The argument should be SFPROV_VERSION + * from above. On failure it returns a NULL pointer. + * + * sfprov_disconnect() must only be called after all sf file systems have been + * unmounted. + */ +typedef struct sfp_connection sfp_connection_t; + +extern sfp_connection_t *sfprov_connect(int); +extern void sfprov_disconnect(void); + +extern int sfprov_mount(char *, sfp_mount_t **); +extern int sfprov_unmount(sfp_mount_t *); + +/* + * query information about a mounted file system + */ +typedef struct sffs_fsinfo { + uint64_t blksize; + uint64_t blksused; + uint64_t blksavail; + uint32_t maxnamesize; + uint32_t readonly; + uint32_t serial; +} sffs_fsinfo_t; + +extern int sfprov_get_fsinfo(sfp_mount_t *, sffs_fsinfo_t *); + +extern int sfprov_create(sfp_mount_t *, char *path, mode_t mode, + sfp_file_t **fp, sffs_stat_t *stat); +extern int sfprov_open(sfp_mount_t *, char *path, sfp_file_t **fp); +extern int sfprov_close(sfp_file_t *fp); +extern int sfprov_read(sfp_file_t *, char * buffer, uint64_t offset, + uint32_t *numbytes, int buflocked); +extern int sfprov_write(sfp_file_t *, char * buffer, uint64_t offset, + uint32_t *numbytes, int buflocked); +extern int sfprov_fsync(sfp_file_t *fp); + + +/* + * get/set information about a file (or directory) using pathname + */ +extern int sfprov_get_mode(sfp_mount_t *, char *, mode_t *); +extern int sfprov_get_size(sfp_mount_t *, char *, uint64_t *); +extern int sfprov_get_atime(sfp_mount_t *, char *, struct timespec *); +extern int sfprov_get_mtime(sfp_mount_t *, char *, struct timespec *); +extern int sfprov_get_ctime(sfp_mount_t *, char *, struct timespec *); +extern int sfprov_get_attr(sfp_mount_t *, char *, sffs_stat_t *); +extern int sfprov_set_attr(sfp_mount_t *, char *, mode_t, + struct timespec, struct timespec, struct timespec); +extern int sfprov_set_size(sfp_mount_t *, char *, uint64_t); + + +/* + * File/Directory operations + */ +extern int sfprov_trunc(sfp_mount_t *, char *); +extern int sfprov_remove(sfp_mount_t *, char *path, u_int is_link); +extern int sfprov_mkdir(sfp_mount_t *, char *path, mode_t mode, + sfp_file_t **fp, sffs_stat_t *stat); +extern int sfprov_rmdir(sfp_mount_t *, char *path); +extern int sfprov_rename(sfp_mount_t *, char *from, char *to, u_int is_dir); + + +/* + * Symbolic link operations + */ +extern int sfprov_set_show_symlinks(void); +extern int sfprov_readlink(sfp_mount_t *, char *path, char *target, + size_t tgt_size); +extern int sfprov_symlink(sfp_mount_t *, char *linkname, char *target, + sffs_stat_t *stat); + +#define SFFS_DIRENTS_SIZE 8192 +#define SFFS_DIRENTS_OFF (offsetof(sffs_dirents_t, sf_entries[0])) + +extern int sfprov_readdir(sfp_mount_t *mnt, char *path, + sffs_dirents_t **dirents); + #endif /* KERNEL */ #endif /* !___VBOXVFS_H___ */ - Index: head/emulators/virtualbox-ose/files/patch-src_VBox_Devices_Audio_DrvHostALSAAudio.cpp =================================================================== --- head/emulators/virtualbox-ose/files/patch-src_VBox_Devices_Audio_DrvHostALSAAudio.cpp (revision 452714) +++ head/emulators/virtualbox-ose/files/patch-src_VBox_Devices_Audio_DrvHostALSAAudio.cpp (revision 452715) @@ -1,18 +1,18 @@ ---- src/VBox/Devices/Audio/DrvHostALSAAudio.cpp.orig 2016-07-18 11:52:55 UTC +--- src/VBox/Devices/Audio/DrvHostALSAAudio.cpp.orig 2017-10-18 07:09:04 UTC +++ src/VBox/Devices/Audio/DrvHostALSAAudio.cpp -@@ -982,6 +982,7 @@ static DECLCALLBACK(int) drvHostALSAAudi - continue; - } +@@ -1231,6 +1231,7 @@ static DECLCALLBACK(int) drvHostALSAAudioStreamPlay(PP + continue; + } +#if EPIPE != ESTRPIPE - case -ESTRPIPE: - { - /* Stream was suspended and waiting for a recovery. */ -@@ -995,6 +996,7 @@ static DECLCALLBACK(int) drvHostALSAAudi - LogFlowFunc(("Resumed suspended output stream\n")); - continue; - } + case -ESTRPIPE: + { + /* Stream was suspended and waiting for a recovery. */ +@@ -1244,6 +1245,7 @@ static DECLCALLBACK(int) drvHostALSAAudioStreamPlay(PP + LogFlowFunc(("Resumed suspended output stream\n")); + continue; + } +#endif - default: - LogFlowFunc(("Failed to write %RI32 output frames, rc=%Rrc\n", + default: + LogFlowFunc(("Failed to write %RU32 bytes, error unknown\n", cbToWrite)); Index: head/emulators/virtualbox-ose/files/patch-src_VBox_Devices_Storage_DrvHostBase-freebsd.cpp =================================================================== --- head/emulators/virtualbox-ose/files/patch-src_VBox_Devices_Storage_DrvHostBase-freebsd.cpp (nonexistent) +++ head/emulators/virtualbox-ose/files/patch-src_VBox_Devices_Storage_DrvHostBase-freebsd.cpp (revision 452715) @@ -0,0 +1,10 @@ +--- src/VBox/Devices/Storage/DrvHostBase-freebsd.cpp.orig 2017-10-18 07:11:48 UTC ++++ src/VBox/Devices/Storage/DrvHostBase-freebsd.cpp +@@ -24,6 +24,7 @@ + #include + #include + #include ++#include + #include + + /** Maximum buffer size supported by the CAM subsystem. */ Property changes on: head/emulators/virtualbox-ose/files/patch-src_VBox_Devices_Storage_DrvHostBase-freebsd.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/emulators/virtualbox-ose/files/patch-src_VBox_Main_include_HostPower.h =================================================================== --- head/emulators/virtualbox-ose/files/patch-src_VBox_Main_include_HostPower.h (revision 452714) +++ head/emulators/virtualbox-ose/files/patch-src_VBox_Main_include_HostPower.h (revision 452715) @@ -1,20 +1,20 @@ ---- src/VBox/Main/include/HostPower.h.orig 2017-03-08 17:20:12 UTC +--- src/VBox/Main/include/HostPower.h.orig 2017-10-18 07:12:54 UTC +++ src/VBox/Main/include/HostPower.h @@ -28,7 +28,7 @@ #include -#ifdef RT_OS_LINUX +#if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) # include #endif -@@ -63,7 +63,7 @@ private: - HWND mHwnd; +@@ -64,7 +64,7 @@ class HostPowerServiceWin : public HostPowerService (p RTTHREAD mThread; }; --#elif defined(RT_OS_LINUX) -+#elif defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) + # endif +-# if defined(RT_OS_LINUX) || defined(DOXYGEN_RUNNING) ++# if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) || defined(DOXYGEN_RUNNING) /** * The Linux hosted Power Service. */ Index: head/emulators/virtualbox-ose/files/patch-src_VBox_Main_src-client_ConsoleImpl2.cpp =================================================================== --- head/emulators/virtualbox-ose/files/patch-src_VBox_Main_src-client_ConsoleImpl2.cpp (nonexistent) +++ head/emulators/virtualbox-ose/files/patch-src_VBox_Main_src-client_ConsoleImpl2.cpp (revision 452715) @@ -0,0 +1,20 @@ +--- src/VBox/Main/src-client/ConsoleImpl2.cpp.orig 2017-10-18 07:12:56 UTC ++++ src/VBox/Main/src-client/ConsoleImpl2.cpp +@@ -5206,7 +5206,7 @@ int Console::i_configNetwork(const char *pszDevice, + { + switch (hrc) + { +- case VERR_ACCESS_DENIED: ++ case (HRESULT)VERR_ACCESS_DENIED: + return VMSetError(VMR3GetVM(mpUVM), VERR_HOSTIF_INIT_FAILED, RT_SRC_POS, N_( + "Failed to open '/dev/net/tun' for read/write access. Please check the " + "permissions of that node. Either run 'chmod 0666 /dev/net/tun' or " +@@ -5408,7 +5408,7 @@ int Console::i_configNetwork(const char *pszDevice, + { + switch (hrc) + { +- case VERR_ACCESS_DENIED: ++ case (HRESULT)VERR_ACCESS_DENIED: + return VMSetError(VMR3GetVM(mpUVM), VERR_HOSTIF_INIT_FAILED, RT_SRC_POS, N_( + "Failed to open '/dev/%s' for read/write access. Please check the " + "permissions of that node, and that the net.link.tap.user_open " Property changes on: head/emulators/virtualbox-ose/files/patch-src_VBox_Main_src-client_ConsoleImpl2.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/emulators/virtualbox-ose/files/patch-src_VBox_Main_src-server_freebsd_NetIf-freebsd.cpp =================================================================== --- head/emulators/virtualbox-ose/files/patch-src_VBox_Main_src-server_freebsd_NetIf-freebsd.cpp (nonexistent) +++ head/emulators/virtualbox-ose/files/patch-src_VBox_Main_src-server_freebsd_NetIf-freebsd.cpp (revision 452715) @@ -0,0 +1,19 @@ +--- src/VBox/Main/src-server/freebsd/NetIf-freebsd.cpp.orig 2017-10-18 07:12:58 UTC ++++ src/VBox/Main/src-server/freebsd/NetIf-freebsd.cpp +@@ -43,6 +43,7 @@ + + #include + #include ++#include + + #include + #include +@@ -311,7 +312,7 @@ int NetIfList(std::list wireless = isWireless(pNew->szName); ++ pNew->fWireless = isWireless(pNew->szName); + + ComObjPtr IfObj; + IfObj.createObject(); Property changes on: head/emulators/virtualbox-ose/files/patch-src_VBox_Main_src-server_freebsd_NetIf-freebsd.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/emulators/virtualbox-ose/pkg-plist =================================================================== --- head/emulators/virtualbox-ose/pkg-plist (revision 452714) +++ head/emulators/virtualbox-ose/pkg-plist (revision 452715) @@ -1,615 +1,615 @@ bin/VBoxAutostart bin/VBoxBalloonCtrl bin/VBoxBugReport bin/VBoxHeadless bin/VBoxManage %%X11%%bin/VBoxSDL bin/VBoxVRDP %%QT%%bin/VirtualBox bin/vboxautostart bin/vboxballoonctrl bin/vboxbugreport bin/vboxheadless bin/vboxmanage %%X11%%bin/vboxsdl %%WEBSERVICE%%bin/vboxwebsrv %%QT%%bin/virtualbox include/virtualbox/VirtualBox_XPCOM.h include/virtualbox/ipcIClientObserver.h include/virtualbox/ipcIDConnectService.h include/virtualbox/ipcILockService.h include/virtualbox/ipcIMessageObserver.h include/virtualbox/ipcIService.h include/virtualbox/ipcITransactionObserver.h include/virtualbox/ipcITransactionService.h include/virtualbox/nsIArray.h include/virtualbox/nsIAsyncInputStream.h include/virtualbox/nsIAsyncOutputStream.h include/virtualbox/nsIAtom.h include/virtualbox/nsIAtomService.h include/virtualbox/nsIBinaryInputStream.h include/virtualbox/nsIBinaryOutputStream.h include/virtualbox/nsIByteArrayInputStream.h include/virtualbox/nsICategoryManager.h include/virtualbox/nsIClassInfo.h include/virtualbox/nsICollection.h include/virtualbox/nsIComponentLoader.h include/virtualbox/nsIComponentLoaderManager.h include/virtualbox/nsIComponentManager.h include/virtualbox/nsIComponentManagerObsolete.h include/virtualbox/nsIComponentRegistrar.h include/virtualbox/nsIConsoleListener.h include/virtualbox/nsIConsoleMessage.h include/virtualbox/nsIConsoleService.h include/virtualbox/nsIDebug.h include/virtualbox/nsIDirectoryEnumerator.h include/virtualbox/nsIDirectoryService.h include/virtualbox/nsIEnumerator.h include/virtualbox/nsIEnvironment.h include/virtualbox/nsIErrorService.h include/virtualbox/nsIEventQueue.h include/virtualbox/nsIEventQueueService.h include/virtualbox/nsIEventTarget.h include/virtualbox/nsIException.h include/virtualbox/nsIExceptionService.h include/virtualbox/nsIFactory.h include/virtualbox/nsIFastLoadFileControl.h include/virtualbox/nsIFastLoadService.h include/virtualbox/nsIFile.h include/virtualbox/nsIHashable.h include/virtualbox/nsIInputStream.h include/virtualbox/nsIInputStreamTee.h include/virtualbox/nsIInterfaceInfo.h include/virtualbox/nsIInterfaceInfoManager.h include/virtualbox/nsIInterfaceRequestor.h include/virtualbox/nsILineInputStream.h include/virtualbox/nsILocalFile.h include/virtualbox/nsILocalFileMac.h include/virtualbox/nsIMemory.h include/virtualbox/nsIModule.h include/virtualbox/nsIMultiplexInputStream.h include/virtualbox/nsINativeComponentLoader.h include/virtualbox/nsIObjectInputStream.h include/virtualbox/nsIObjectOutputStream.h include/virtualbox/nsIObserver.h include/virtualbox/nsIObserverService.h include/virtualbox/nsIOutputStream.h include/virtualbox/nsIPersistentProperties2.h include/virtualbox/nsIPipe.h include/virtualbox/nsIProcess.h include/virtualbox/nsIProgrammingLanguage.h include/virtualbox/nsIProperties.h include/virtualbox/nsIPropertyBag.h include/virtualbox/nsIProxyObjectManager.h include/virtualbox/nsIRecyclingAllocator.h include/virtualbox/nsIRunnable.h include/virtualbox/nsIScriptableInputStream.h include/virtualbox/nsISeekableStream.h include/virtualbox/nsISerializable.h include/virtualbox/nsIServiceManager.h include/virtualbox/nsISimpleEnumerator.h include/virtualbox/nsIStorageStream.h include/virtualbox/nsIStreamBufferAccess.h include/virtualbox/nsIStringEnumerator.h include/virtualbox/nsIStringStream.h include/virtualbox/nsISupports.h include/virtualbox/nsISupportsArray.h include/virtualbox/nsISupportsIterators.h include/virtualbox/nsISupportsPrimitives.h include/virtualbox/nsIThread.h include/virtualbox/nsITimelineService.h include/virtualbox/nsITimer.h include/virtualbox/nsITimerInternal.h include/virtualbox/nsITimerManager.h include/virtualbox/nsITraceRefcnt.h include/virtualbox/nsIVariant.h include/virtualbox/nsIWeakReference.h include/virtualbox/nsIXPTLoader.h include/virtualbox/nsrootidl.h include/virtualbox/ipcd/ipcCID.h include/virtualbox/ipcd/ipcLockCID.h include/virtualbox/ipcd/ipcMessageReader.h include/virtualbox/ipcd/ipcMessageWriter.h include/virtualbox/ipcd/ipcModule.h include/virtualbox/ipcd/ipcModuleUtil.h include/virtualbox/ipcd/ipcdclient.h include/virtualbox/nsprpub/nspr.h include/virtualbox/nsprpub/plarena.h include/virtualbox/nsprpub/plarenas.h include/virtualbox/nsprpub/plbase64.h include/virtualbox/nsprpub/plerror.h include/virtualbox/nsprpub/plgetopt.h include/virtualbox/nsprpub/plhash.h include/virtualbox/nsprpub/plresolv.h include/virtualbox/nsprpub/plstr.h include/virtualbox/nsprpub/pratom.h include/virtualbox/nsprpub/prbit.h include/virtualbox/nsprpub/prclist.h include/virtualbox/nsprpub/prcmon.h include/virtualbox/nsprpub/prcountr.h include/virtualbox/nsprpub/prcpucfg.h include/virtualbox/nsprpub/prcvar.h include/virtualbox/nsprpub/prdtoa.h include/virtualbox/nsprpub/prenv.h include/virtualbox/nsprpub/prerr.h include/virtualbox/nsprpub/prerror.h include/virtualbox/nsprpub/prinet.h include/virtualbox/nsprpub/prinit.h include/virtualbox/nsprpub/prinrval.h include/virtualbox/nsprpub/prio.h include/virtualbox/nsprpub/pripcsem.h include/virtualbox/nsprpub/prlink.h include/virtualbox/nsprpub/prlock.h include/virtualbox/nsprpub/prlog.h include/virtualbox/nsprpub/prlong.h include/virtualbox/nsprpub/prmem.h include/virtualbox/nsprpub/prmon.h include/virtualbox/nsprpub/prmwait.h include/virtualbox/nsprpub/prnetdb.h include/virtualbox/nsprpub/prolock.h include/virtualbox/nsprpub/prpdce.h include/virtualbox/nsprpub/prprf.h include/virtualbox/nsprpub/prproces.h include/virtualbox/nsprpub/prrng.h include/virtualbox/nsprpub/prrwlock.h include/virtualbox/nsprpub/prshm.h include/virtualbox/nsprpub/prshma.h include/virtualbox/nsprpub/prsystem.h include/virtualbox/nsprpub/prthread.h include/virtualbox/nsprpub/prtime.h include/virtualbox/nsprpub/prtpool.h include/virtualbox/nsprpub/prtrace.h include/virtualbox/nsprpub/prtypes.h include/virtualbox/nsprpub/prvrsion.h include/virtualbox/nsprpub/prwin16.h include/virtualbox/nsprpub/md/_darwin.cfg include/virtualbox/nsprpub/md/_darwin.h include/virtualbox/nsprpub/md/_freebsd.cfg include/virtualbox/nsprpub/md/_freebsd.h include/virtualbox/nsprpub/md/_iprt_atomic.h include/virtualbox/nsprpub/md/_linux.cfg include/virtualbox/nsprpub/md/_linux.h include/virtualbox/nsprpub/md/_macos.h include/virtualbox/nsprpub/md/_netbsd.cfg include/virtualbox/nsprpub/md/_netbsd.h include/virtualbox/nsprpub/md/_openbsd.cfg include/virtualbox/nsprpub/md/_openbsd.h include/virtualbox/nsprpub/md/_os2.cfg include/virtualbox/nsprpub/md/_os2.h include/virtualbox/nsprpub/md/_os2_errors.h include/virtualbox/nsprpub/md/_pcos.h include/virtualbox/nsprpub/md/_pth.h include/virtualbox/nsprpub/md/_solaris.h include/virtualbox/nsprpub/md/_solaris32.cfg include/virtualbox/nsprpub/md/_solaris64.cfg include/virtualbox/nsprpub/md/_unix_errors.h include/virtualbox/nsprpub/md/_unixos.h include/virtualbox/nsprpub/md/prosdep.h include/virtualbox/nsprpub/obsolete/pralarm.h include/virtualbox/nsprpub/obsolete/probslet.h include/virtualbox/nsprpub/obsolete/protypes.h include/virtualbox/nsprpub/obsolete/prsem.h include/virtualbox/nsprpub/private/pprio.h include/virtualbox/nsprpub/private/pprthred.h include/virtualbox/nsprpub/private/prpriv.h include/virtualbox/string/nsAString.h include/virtualbox/string/nsAlgorithm.h include/virtualbox/string/nsCharTraits.h include/virtualbox/string/nsDependentString.h include/virtualbox/string/nsDependentSubstring.h include/virtualbox/string/nsEmbedString.h include/virtualbox/string/nsLiteralString.h include/virtualbox/string/nsObsoleteAString.h include/virtualbox/string/nsPrintfCString.h include/virtualbox/string/nsPromiseFlatString.h include/virtualbox/string/nsReadableUtils.h include/virtualbox/string/nsString.h include/virtualbox/string/nsStringAPI.h include/virtualbox/string/nsStringFwd.h include/virtualbox/string/nsStringIterator.h include/virtualbox/string/nsSubstring.h include/virtualbox/string/nsSubstringTuple.h include/virtualbox/string/nsTAString.h include/virtualbox/string/nsTDependentString.h include/virtualbox/string/nsTDependentSubstring.h include/virtualbox/string/nsTObsoleteAString.h include/virtualbox/string/nsTPromiseFlatString.h include/virtualbox/string/nsTString.h include/virtualbox/string/nsTSubstring.h include/virtualbox/string/nsTSubstringTuple.h include/virtualbox/string/nsUTF8Utils.h include/virtualbox/string/nsXPIDLString.h include/virtualbox/string/string-template-def-char.h include/virtualbox/string/string-template-def-unichar.h include/virtualbox/string/string-template-undef.h include/virtualbox/xpcom/nsAgg.h include/virtualbox/xpcom/nsAppDirectoryServiceDefs.h include/virtualbox/xpcom/nsArray.h include/virtualbox/xpcom/nsArrayEnumerator.h include/virtualbox/xpcom/nsAtomService.h include/virtualbox/xpcom/nsAutoBuffer.h include/virtualbox/xpcom/nsAutoLock.h include/virtualbox/xpcom/nsAutoPtr.h include/virtualbox/xpcom/nsBaseHashtable.h include/virtualbox/xpcom/nsCOMArray.h include/virtualbox/xpcom/nsCOMPtr.h include/virtualbox/xpcom/nsCRT.h include/virtualbox/xpcom/nsCategoryManagerUtils.h include/virtualbox/xpcom/nsCheapSets.h include/virtualbox/xpcom/nsClassHashtable.h include/virtualbox/xpcom/nsCom.h include/virtualbox/xpcom/nsComponentManagerObsolete.h include/virtualbox/xpcom/nsComponentManagerUtils.h include/virtualbox/xpcom/nsCppSharedAllocator.h include/virtualbox/xpcom/nsDataHashtable.h include/virtualbox/xpcom/nsDebug.h include/virtualbox/xpcom/nsDebugImpl.h include/virtualbox/xpcom/nsDeque.h include/virtualbox/xpcom/nsDirectoryService.h include/virtualbox/xpcom/nsDirectoryServiceDefs.h include/virtualbox/xpcom/nsDirectoryServiceUtils.h include/virtualbox/xpcom/nsDoubleHashtable.h include/virtualbox/xpcom/nsEnumeratorUtils.h include/virtualbox/xpcom/nsError.h include/virtualbox/xpcom/nsEscape.h include/virtualbox/xpcom/nsEventQueueUtils.h include/virtualbox/xpcom/nsFastLoadPtr.h include/virtualbox/xpcom/nsFastLoadService.h include/virtualbox/xpcom/nsFixedSizeAllocator.h include/virtualbox/xpcom/nsGenericFactory.h include/virtualbox/xpcom/nsHashKeys.h include/virtualbox/xpcom/nsHashSets.h include/virtualbox/xpcom/nsHashtable.h include/virtualbox/xpcom/nsIAllocator.h include/virtualbox/xpcom/nsIByteBuffer.h include/virtualbox/xpcom/nsID.h include/virtualbox/xpcom/nsIGenericFactory.h include/virtualbox/xpcom/nsIID.h include/virtualbox/xpcom/nsIInterfaceRequestorUtils.h include/virtualbox/xpcom/nsIServiceManagerObsolete.h include/virtualbox/xpcom/nsIServiceManagerUtils.h include/virtualbox/xpcom/nsISupportsBase.h include/virtualbox/xpcom/nsISupportsImpl.h include/virtualbox/xpcom/nsISupportsObsolete.h include/virtualbox/xpcom/nsISupportsUtils.h include/virtualbox/xpcom/nsIUnicharBuffer.h include/virtualbox/xpcom/nsIUnicharInputStream.h include/virtualbox/xpcom/nsIWeakReferenceUtils.h include/virtualbox/xpcom/nsInt64.h include/virtualbox/xpcom/nsInterfaceHashtable.h include/virtualbox/xpcom/nsLinebreakConverter.h include/virtualbox/xpcom/nsLocalFile.h include/virtualbox/xpcom/nsLocalFileOS2.h include/virtualbox/xpcom/nsLocalFileOSX.h include/virtualbox/xpcom/nsLocalFileUnix.h include/virtualbox/xpcom/nsMemory.h include/virtualbox/xpcom/nsModule.h include/virtualbox/xpcom/nsMultiplexInputStream.h include/virtualbox/xpcom/nsNativeCharsetUtils.h include/virtualbox/xpcom/nsNativeComponentLoader.h include/virtualbox/xpcom/nsObserverService.h include/virtualbox/xpcom/nsObsoleteModuleLoading.h include/virtualbox/xpcom/nsProcess.h include/virtualbox/xpcom/nsProxiedService.h include/virtualbox/xpcom/nsProxyEvent.h include/virtualbox/xpcom/nsProxyRelease.h include/virtualbox/xpcom/nsQuickSort.h include/virtualbox/xpcom/nsRecyclingAllocator.h include/virtualbox/xpcom/nsRefPtrHashtable.h include/virtualbox/xpcom/nsScriptableInputStream.h include/virtualbox/xpcom/nsStaticAtom.h include/virtualbox/xpcom/nsStaticComponent.h include/virtualbox/xpcom/nsStaticNameTable.h include/virtualbox/xpcom/nsStorageStream.h include/virtualbox/xpcom/nsStreamUtils.h include/virtualbox/xpcom/nsStringEnumerator.h include/virtualbox/xpcom/nsStringIO.h include/virtualbox/xpcom/nsStringStream.h include/virtualbox/xpcom/nsSupportsArray.h include/virtualbox/xpcom/nsSupportsPrimitives.h include/virtualbox/xpcom/nsTHashtable.h include/virtualbox/xpcom/nsTextFormatter.h include/virtualbox/xpcom/nsTime.h include/virtualbox/xpcom/nsTraceRefcnt.h include/virtualbox/xpcom/nsTraceRefcntImpl.h include/virtualbox/xpcom/nsUnitConversion.h include/virtualbox/xpcom/nsValueArray.h include/virtualbox/xpcom/nsVariant.h include/virtualbox/xpcom/nsVoidArray.h include/virtualbox/xpcom/nsWeakPtr.h include/virtualbox/xpcom/nsWeakReference.h include/virtualbox/xpcom/nsXPCOM.h include/virtualbox/xpcom/nsXPCOMCID.h include/virtualbox/xpcom/nsXPCOMGlue.h include/virtualbox/xpcom/nscore.h include/virtualbox/xpcom/pldhash.h include/virtualbox/xpcom/plevent.h include/virtualbox/xpcom/xcDll.h include/virtualbox/xpcom/xpcom-config.h include/virtualbox/xpcom/xpt_arena.h include/virtualbox/xpcom/xpt_struct.h include/virtualbox/xpcom/xpt_xdr.h include/virtualbox/xpcom/xptcall.h include/virtualbox/xpcom/xptcstubsdecl.inc include/virtualbox/xpcom/xptcstubsdef.inc include/virtualbox/xpcom/xptinfo.h %%PYTHON%%%%PYTHON_SITELIBDIR%%/vboxapi-1.0-py%%PYTHON_VER%%.egg-info %%PYTHON%%%%PYTHON_SITELIBDIR%%/vboxapi/VirtualBox_constants.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/vboxapi%%PYTHON_PYCDIR%%VirtualBox_constants%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/vboxapi/__init__.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/vboxapi%%PYTHON_PYCDIR%%__init__%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/__init__.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%__init__%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/components.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%components%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/file.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%file%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/nsError.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%nsError%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/primitives.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%primitives%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/vboxxpcom.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%vboxxpcom%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/xpcom_consts.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%xpcom_consts%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/xpt.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%xpt%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/client/__init__.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/client%%PYTHON_PYCDIR%%__init__%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server/__init__.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server%%PYTHON_PYCDIR%%__init__%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server/enumerator.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server%%PYTHON_PYCDIR%%enumerator%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server/factory.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server%%PYTHON_PYCDIR%%factory%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server/loader.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server%%PYTHON_PYCDIR%%loader%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server/module.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server%%PYTHON_PYCDIR%%module%%PYTHON_PYCEXT%% %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server/policy.py %%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server%%PYTHON_PYCDIR%%policy%%PYTHON_PYCEXT%% %%QT%%lib/virtualbox/DbgPlugInDiggers.so lib/virtualbox/VBox.sh lib/virtualbox/VBoxAuth.so lib/virtualbox/VBoxAuthSimple.so lib/virtualbox/VBoxAutostart lib/virtualbox/VBoxBalloonCtrl lib/virtualbox/VBoxBugReport lib/virtualbox/VBoxDD.so lib/virtualbox/VBoxDD2.so lib/virtualbox/VBoxDD2R0.r0 lib/virtualbox/VBoxDD2RC.rc lib/virtualbox/VBoxDDR0.r0 lib/virtualbox/VBoxDDRC.rc lib/virtualbox/VBoxDDU.so %%QT%%lib/virtualbox/VBoxDbg.so %%QT%%lib/virtualbox/VBoxDragAndDropSvc.so lib/virtualbox/VBoxEFI32.fd lib/virtualbox/VBoxEFI64.fd lib/virtualbox/VBoxExtPackHelperApp lib/virtualbox/VBoxGuestControlSvc.so lib/virtualbox/VBoxGuestPropSvc.so @(root,%%VBOXGROUP%%,4510) lib/virtualbox/VBoxHeadless lib/virtualbox/VBoxHeadless.so lib/virtualbox/VBoxHostChannel.so %%X11%%lib/virtualbox/VBoxKeyboard.so lib/virtualbox/VBoxManage @(root,%%VBOXGROUP%%,4510) lib/virtualbox/VBoxNetAdpCtl @(root,%%VBOXGROUP%%,4510) lib/virtualbox/VBoxNetDHCP lib/virtualbox/VBoxNetDHCP.so @(root,%%VBOXGROUP%%,4510) lib/virtualbox/VBoxNetNAT lib/virtualbox/VBoxNetNAT.so %%X11%%lib/virtualbox/VBoxOGLhostcrutil.so %%X11%%lib/virtualbox/VBoxOGLhosterrorspu.so %%X11%%lib/virtualbox/VBoxOGLrenderspu.so %%PYTHON%%lib/virtualbox/VBoxPython.so %%PYTHON%%lib/virtualbox/VBoxPython%%PYTHON_VERU%%.so lib/virtualbox/VBoxREM.so %%I386%%lib/virtualbox/VBoxREM32.so %%I386%%lib/virtualbox/VBoxREM64.so lib/virtualbox/VBoxRT.so %%X11%%@(root,%%VBOXGROUP%%,4510) lib/virtualbox/VBoxSDL %%X11%%lib/virtualbox/VBoxSDL.so lib/virtualbox/VBoxSVC %%X11%%lib/virtualbox/VBoxSharedClipboard.so %%X11%%lib/virtualbox/VBoxSharedCrOpenGL.so lib/virtualbox/VBoxSharedFolders.so %%QT%%lib/virtualbox/VBoxTestOGL lib/virtualbox/VBoxVMM.so lib/virtualbox/VBoxVMMPreload.so lib/virtualbox/VBoxXPCOM.so lib/virtualbox/VBoxXPCOMC.so lib/virtualbox/VBoxXPCOMIPCD lib/virtualbox/VMMR0.r0 lib/virtualbox/VMMRC.rc %%QT%%@(root,%%VBOXGROUP%%,4510) lib/virtualbox/VirtualBox %%QT%%lib/virtualbox/VirtualBox.so lib/virtualbox/sdk %%WEBSERVICE%%lib/virtualbox/vboxwebsrv %%WEBSERVICE%%lib/virtualbox/webtest %%VNC%%lib/virtualbox/ExtensionPacks/VNC/ExtPack-license.html %%VNC%%lib/virtualbox/ExtensionPacks/VNC/ExtPack-license.rtf %%VNC%%lib/virtualbox/ExtensionPacks/VNC/ExtPack-license.txt %%VNC%%lib/virtualbox/ExtensionPacks/VNC/ExtPack.xml %%VNC%%lib/virtualbox/ExtensionPacks/VNC/%%ARCH%%/VBoxVNC.so %%VNC%%lib/virtualbox/ExtensionPacks/VNC/%%ARCH%%/VBoxVNCMain.so %%GUESTADDITIONS%%lib/virtualbox/additions/VBoxGuestAdditions.iso %%GUESTADDITIONS%%lib/virtualbox/additions/VBoxGuestAdditions_%%GUEST_VER%%.iso lib/virtualbox/components/VBoxC.so lib/virtualbox/components/VBoxSVCM.so lib/virtualbox/components/VBoxXPCOMBase.xpt lib/virtualbox/components/VBoxXPCOMIPCC.so lib/virtualbox/components/VirtualBox_XPCOM.xpt %%QT%%share/applications/virtualbox.desktop %%MANUAL%%%%DOCSDIR%%/UserManual.pdf %%QT%%share/pixmaps/VBox.png %%DATADIR%%/idl/VirtualBox_XPCOM.idl %%DATADIR%%/idl/ipcIClientObserver.idl %%DATADIR%%/idl/ipcIDConnectService.idl %%DATADIR%%/idl/ipcILockService.idl %%DATADIR%%/idl/ipcIMessageObserver.idl %%DATADIR%%/idl/ipcIService.idl %%DATADIR%%/idl/ipcITransactionObserver.idl %%DATADIR%%/idl/ipcITransactionService.idl %%DATADIR%%/idl/nsIArray.idl %%DATADIR%%/idl/nsIAsyncInputStream.idl %%DATADIR%%/idl/nsIAsyncOutputStream.idl %%DATADIR%%/idl/nsIAtom.idl %%DATADIR%%/idl/nsIAtomService.idl %%DATADIR%%/idl/nsIBinaryInputStream.idl %%DATADIR%%/idl/nsIBinaryOutputStream.idl %%DATADIR%%/idl/nsIByteArrayInputStream.idl %%DATADIR%%/idl/nsICategoryManager.idl %%DATADIR%%/idl/nsIClassInfo.idl %%DATADIR%%/idl/nsICollection.idl %%DATADIR%%/idl/nsIComponentLoader.idl %%DATADIR%%/idl/nsIComponentLoaderManager.idl %%DATADIR%%/idl/nsIComponentManager.idl %%DATADIR%%/idl/nsIComponentManagerObsolete.idl %%DATADIR%%/idl/nsIComponentRegistrar.idl %%DATADIR%%/idl/nsIConsoleListener.idl %%DATADIR%%/idl/nsIConsoleMessage.idl %%DATADIR%%/idl/nsIConsoleService.idl %%DATADIR%%/idl/nsIDebug.idl %%DATADIR%%/idl/nsIDirectoryEnumerator.idl %%DATADIR%%/idl/nsIDirectoryService.idl %%DATADIR%%/idl/nsIEnumerator.idl %%DATADIR%%/idl/nsIEnvironment.idl %%DATADIR%%/idl/nsIErrorService.idl %%DATADIR%%/idl/nsIEventQueue.idl %%DATADIR%%/idl/nsIEventQueueService.idl %%DATADIR%%/idl/nsIEventTarget.idl %%DATADIR%%/idl/nsIException.idl %%DATADIR%%/idl/nsIExceptionService.idl %%DATADIR%%/idl/nsIFactory.idl %%DATADIR%%/idl/nsIFastLoadFileControl.idl %%DATADIR%%/idl/nsIFastLoadService.idl %%DATADIR%%/idl/nsIFile.idl %%DATADIR%%/idl/nsIHashable.idl %%DATADIR%%/idl/nsIInputStream.idl %%DATADIR%%/idl/nsIInputStreamTee.idl %%DATADIR%%/idl/nsIInterfaceInfo.idl %%DATADIR%%/idl/nsIInterfaceInfoManager.idl %%DATADIR%%/idl/nsIInterfaceRequestor.idl %%DATADIR%%/idl/nsILineInputStream.idl %%DATADIR%%/idl/nsILocalFile.idl %%DATADIR%%/idl/nsILocalFileMac.idl %%DATADIR%%/idl/nsIMemory.idl %%DATADIR%%/idl/nsIModule.idl %%DATADIR%%/idl/nsIMultiplexInputStream.idl %%DATADIR%%/idl/nsINativeComponentLoader.idl %%DATADIR%%/idl/nsIObjectInputStream.idl %%DATADIR%%/idl/nsIObjectOutputStream.idl %%DATADIR%%/idl/nsIObserver.idl %%DATADIR%%/idl/nsIObserverService.idl %%DATADIR%%/idl/nsIOutputStream.idl %%DATADIR%%/idl/nsIPersistentProperties2.idl %%DATADIR%%/idl/nsIPipe.idl %%DATADIR%%/idl/nsIProcess.idl %%DATADIR%%/idl/nsIProgrammingLanguage.idl %%DATADIR%%/idl/nsIProperties.idl %%DATADIR%%/idl/nsIPropertyBag.idl %%DATADIR%%/idl/nsIProxyObjectManager.idl %%DATADIR%%/idl/nsIRecyclingAllocator.idl %%DATADIR%%/idl/nsIRunnable.idl %%DATADIR%%/idl/nsIScriptableInputStream.idl %%DATADIR%%/idl/nsISeekableStream.idl %%DATADIR%%/idl/nsISerializable.idl %%DATADIR%%/idl/nsIServiceManager.idl %%DATADIR%%/idl/nsISimpleEnumerator.idl %%DATADIR%%/idl/nsIStorageStream.idl %%DATADIR%%/idl/nsIStreamBufferAccess.idl %%DATADIR%%/idl/nsIStringEnumerator.idl %%DATADIR%%/idl/nsIStringStream.idl %%DATADIR%%/idl/nsISupports.idl %%DATADIR%%/idl/nsISupportsArray.idl %%DATADIR%%/idl/nsISupportsIterators.idl %%DATADIR%%/idl/nsISupportsPrimitives.idl %%DATADIR%%/idl/nsIThread.idl %%DATADIR%%/idl/nsITimelineService.idl %%DATADIR%%/idl/nsITimer.idl %%DATADIR%%/idl/nsITimerInternal.idl %%DATADIR%%/idl/nsITimerManager.idl %%DATADIR%%/idl/nsITraceRefcnt.idl %%DATADIR%%/idl/nsIVariant.idl %%DATADIR%%/idl/nsIWeakReference.idl %%DATADIR%%/idl/nsIXPTLoader.idl %%DATADIR%%/idl/nsrootidl.idl %%NLS%%%%DATADIR%%/nls/VirtualBox_bg.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_ca.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_ca_VA.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_cs.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_da.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_de.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_el.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_en.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_es.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_eu.qm -%%NLS%%%%DATADIR%%/nls/VirtualBox_fa_IR.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_fa.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_fi.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_fr.qm -%%NLS%%%%DATADIR%%/nls/VirtualBox_gl_ES.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_gl.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_he.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_hu.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_id.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_it.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_ja.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_km_KH.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_ko.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_lt.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_nl.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_pl.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_pt.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_pt_BR.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_ro.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_ru.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_sk.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_sl.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_sr.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_sv.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_th.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_tr.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_uk.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_zh_CN.qm %%NLS%%%%DATADIR%%/nls/VirtualBox_zh_TW.qm %%NLS%%%%DATADIR%%/nls/qt_bg.qm %%NLS%%%%DATADIR%%/nls/qt_ca.qm %%NLS%%%%DATADIR%%/nls/qt_ca_VA.qm %%NLS%%%%DATADIR%%/nls/qt_cs.qm %%NLS%%%%DATADIR%%/nls/qt_da.qm %%NLS%%%%DATADIR%%/nls/qt_de.qm %%NLS%%%%DATADIR%%/nls/qt_el.qm %%NLS%%%%DATADIR%%/nls/qt_en.qm %%NLS%%%%DATADIR%%/nls/qt_es.qm %%NLS%%%%DATADIR%%/nls/qt_eu.qm -%%NLS%%%%DATADIR%%/nls/qt_fa_IR.qm +%%NLS%%%%DATADIR%%/nls/qt_fa.qm %%NLS%%%%DATADIR%%/nls/qt_fi.qm %%NLS%%%%DATADIR%%/nls/qt_fr.qm -%%NLS%%%%DATADIR%%/nls/qt_gl_ES.qm +%%NLS%%%%DATADIR%%/nls/qt_gl.qm %%NLS%%%%DATADIR%%/nls/qt_he.qm %%NLS%%%%DATADIR%%/nls/qt_hu.qm %%NLS%%%%DATADIR%%/nls/qt_id.qm %%NLS%%%%DATADIR%%/nls/qt_it.qm %%NLS%%%%DATADIR%%/nls/qt_ja.qm %%NLS%%%%DATADIR%%/nls/qt_km_KH.qm %%NLS%%%%DATADIR%%/nls/qt_ko.qm %%NLS%%%%DATADIR%%/nls/qt_lt.qm %%NLS%%%%DATADIR%%/nls/qt_nl.qm %%NLS%%%%DATADIR%%/nls/qt_pl.qm %%NLS%%%%DATADIR%%/nls/qt_pt.qm %%NLS%%%%DATADIR%%/nls/qt_pt_BR.qm %%NLS%%%%DATADIR%%/nls/qt_ro.qm %%NLS%%%%DATADIR%%/nls/qt_ru.qm %%NLS%%%%DATADIR%%/nls/qt_sk.qm %%NLS%%%%DATADIR%%/nls/qt_sl.qm %%NLS%%%%DATADIR%%/nls/qt_sr.qm %%NLS%%%%DATADIR%%/nls/qt_sv.qm %%NLS%%%%DATADIR%%/nls/qt_th.qm %%NLS%%%%DATADIR%%/nls/qt_tr.qm %%NLS%%%%DATADIR%%/nls/qt_uk.qm %%NLS%%%%DATADIR%%/nls/qt_zh_CN.qm %%NLS%%%%DATADIR%%/nls/qt_zh_TW.qm %%DATADIR%%/samples/Makefile %%DATADIR%%/samples/tstVBoxAPIXPCOM.cpp %%WEBSERVICE%%%%DATADIR%%/sdk/bindings/webservice/vboxweb.wsdl %%PYTHON%%%%DATADIR%%/sdk/bindings/xpcom/python/xpcom Index: head/emulators/virtualbox-ose-additions/Makefile =================================================================== --- head/emulators/virtualbox-ose-additions/Makefile (revision 452714) +++ head/emulators/virtualbox-ose-additions/Makefile (revision 452715) @@ -1,217 +1,214 @@ # Created by: Bernhard Froehlich # $FreeBSD$ PORTNAME= virtualbox-ose -PORTVERSION= 5.1.30 +PORTVERSION= 5.2.0 CATEGORIES= emulators MASTER_SITES= http://download.virtualbox.org/virtualbox/${PORTVERSION}/ PKGNAMESUFFIX?= -additions DISTNAME= VirtualBox-${PORTVERSION} MAINTAINER= vbox@FreeBSD.org COMMENT= VirtualBox additions for FreeBSD guests LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= yasm:devel/yasm \ - kmk:devel/kBuild + kmk:devel/kBuild \ + xsltproc:textproc/libxslt CPE_VENDOR= oracle CPE_PRODUCT= vm_virtualbox PATCHDIR= ${.CURDIR}/../${PORTNAME}/files WRKSRC= ${WRKDIR}/VirtualBox-${PORTVERSION} USE_RC_SUBR= vboxguest vboxservice -USES= compiler:features cpe iconv kmod python:build tar:bzip2 +USES= compiler:c++11-lang cpe iconv kmod python:build tar:bzip2 ONLY_FOR_ARCHS= i386 amd64 MAKE_JOBS_UNSAFE= yes HAS_CONFIGURE= yes CONFIGURE_ARGS+= --disable-alsa \ --disable-docs \ --disable-libvpx \ --disable-pulse \ --disable-python \ --disable-sdl-ttf \ --disable-xpcom CONFIGURE_ARGS+= --nofatal --with-gcc="${CC}" --with-g++="${CXX}" CONFLICTS_INSTALL= virtualbox-ose-[0-9]* \ virtualbox-ose-additions-devel-[0-9]* \ virtualbox-ose-devel-[0-9]* \ virtualbox-ose-legacy-[0-9]* \ virtualbox-ose-lite-[0-9]* \ virtualbox-ose-nox11-[0-9]* OPTIONS_DEFINE= DBUS DEBUG OPENGL X11 OPTIONS_DEFAULT= DBUS X11 OPTIONS_SUB= yes DBUS_CONFIGURE_OFF= --disable-dbus DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus OPENGL_CONFIGURE_OFF= --disable-opengl .include .if ${SLAVE_PORT} == no CONFLICTS_INSTALL+= virtualbox-ose-additions-nox11-[0-9]* .else CONFLICTS_INSTALL+= virtualbox-ose-additions-[0-9]* .endif .if ${PORT_OPTIONS:MOPENGL} && empty(PORT_OPTIONS:MX11) BROKEN= OPENGL requires X11 support. Run 'make config' again! .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_BUILDTYPE= release KMK_CONFIG= VBOX_LIBPATH_X11=${LOCALBASE} KMK_FLAGS= .if ${PORT_OPTIONS:MDEBUG} KMK_FLAGS+= BUILD_TYPE=debug KMK_BUILDTYPE= debug MAKE_ARGS+= DEBUG_FLAGS="-O1 -g" .endif .if ${PORT_OPTIONS:MOPENGL} USE_XORG= xcomposite xdamage xfixes USE_GL= gl VBOX_LIBS= VBoxEGL.so \ VBoxOGL.so \ VBoxOGLarrayspu.so \ VBoxOGLcrutil.so \ VBoxOGLerrorspu.so \ VBoxOGLfeedbackspu.so \ VBoxOGLpackspu.so \ VBoxOGLpassthroughspu.so .endif .if ${PORT_OPTIONS:MX11} BUILD_DEPENDS+= ${LOCALBASE}/bin/X:x11-servers/xorg-server USE_XORG+= inputproto x11 xcursor xext xmu xorg-server xrandr xt USES+= pkgconfig VBOX_WITH_X11= 1 XORG_DRV_ABI= pkgconf --modversion xorg-server | \ ${SED} -E -e 's/\.[0-9]+$$//' -e 's/\.//' .else VBOX_WITH_X11= .endif .if ${ARCH} == i386 KMK_ARCH= freebsd.x86 .else KMK_ARCH= freebsd.${ARCH} .endif .include .if ${COMPILER_TYPE} == clang EXTRA_PATCHES+= ${PATCHDIR}/extrapatch-Config.kmk \ ${PATCHDIR}/extrapatch-src-VBox-Additions-x11-vboxvideo-Makefile.kmk \ ${PATCHDIR}/extrapatch-src-VBox-Additions-x11-x11include-xorg-server-1.17.1-compiler.h .if ${COMPILER_FEATURES:Mlibc++} EXTRA_PATCHES+= ${PATCHDIR}/extrapatch-src-VBox-Additions-x11-VBoxClient-Makefile.kmk .endif .endif .if ${ARCH} == "amd64" .if !exists(/usr/lib32/libc.so) pre-everything:: @${ECHO} 'Requires 32-bit libraries installed under /usr/lib32.' @${ECHO} 'Do: cd /usr/src; make build32 install32; service ldconfig restart' @${FALSE} .endif .endif post-patch: @${ECHO} 'VBOX_ONLY_ADDITIONS = 1' > ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_DRAG_AND_DROP = ${VBOX_WITH_X11}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_DRAG_AND_DROP_GH = ${VBOX_WITH_X11}' >> \ ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_X11_ADDITIONS = ${VBOX_WITH_X11}' >> \ ${WRKSRC}/LocalConfig.kmk + @${ECHO} 'VBOX_GCC_std = -std=c++11' >> ${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 -.if ${COMPILER_FEATURES:Mlibc++} - @${ECHO} 'VBOX_GCC_std = -std=c++11' >> ${WRKSRC}/LocalConfig.kmk -.endif - @${ECHO} 'VBOX_GCC_Wno-unused-parameter = -Wno-unused-parameter' >> \ - ${WRKSRC}/LocalConfig.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/common/crOpenGL/load.c \ ${WRKSRC}/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ ${WRKSRC}/src/VBox/Additions/x11/Installer/vboxclient.desktop @${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} 'VBOX_ICONV_DEFS = LIBICONV_PLUG' >> ${WRKSRC}/LocalConfig.kmk .endif pre-build: cd ${WRKSRC} && ${SH} -c \ '. env.sh && ${KMK_CONFIG} ${LOCALBASE}/bin/kmk ${KMK_FLAGS}' 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-DEBUG-on: ${INSTALL_KLD} ${VBOX_BIN}/src/vboxguest/vboxguest.ko.symbols \ ${STAGEDIR}${KMODDIR} 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_DATA} ${VBOX_BIN}/vboxvideo_drv_$$(${XORG_DRV_ABI}).so \ ${STAGEDIR}${VIDEODIR}/vboxvideo_drv.so ${MKDIR} ${STAGEDIR}${INPUTDIR} ${INSTALL_DATA} ${VBOX_BIN}/vboxmouse_drv_$$(${XORG_DRV_ABI}).so \ ${STAGEDIR}${INPUTDIR}/vboxmouse_drv.so do-install-OPENGL-on: ${INSTALL_DATA} ${FILESDIR}/vboxvideo.conf \ ${STAGEDIR}${PREFIX}/etc/libmap.d/ ${INSTALL_DATA} ${VBOX_LIBS:S|^|${VBOX_BIN}/|} \ ${STAGEDIR}${PREFIX}/lib/ .include Index: head/emulators/virtualbox-ose-additions/distinfo =================================================================== --- head/emulators/virtualbox-ose-additions/distinfo (revision 452714) +++ head/emulators/virtualbox-ose-additions/distinfo (revision 452715) @@ -1,3 +1,3 @@ -TIMESTAMP = 1508180714 -SHA256 (VirtualBox-5.1.30.tar.bz2) = 6059b0986c9cdacc533177867634a76331ceccdcd46dddd111a50d1c42846d0b -SIZE (VirtualBox-5.1.30.tar.bz2) = 116510730 +TIMESTAMP = 1508350098 +SHA256 (VirtualBox-5.2.0.tar.bz2) = 26fc73aee2df18142e4129beed1175fbd7eed69a9b6b150bcff7d9b92f4ade54 +SIZE (VirtualBox-5.2.0.tar.bz2) = 117789406 Index: head/emulators/virtualbox-ose-kmod/Makefile =================================================================== --- head/emulators/virtualbox-ose-kmod/Makefile (revision 452714) +++ head/emulators/virtualbox-ose-kmod/Makefile (revision 452715) @@ -1,111 +1,111 @@ # Created by: Bernhard Froehlich # $FreeBSD$ PORTNAME= virtualbox-ose -PORTVERSION= 5.1.30 +PORTVERSION= 5.2.0 CATEGORIES= emulators MASTER_SITES= http://download.virtualbox.org/virtualbox/${PORTVERSION}/ PKGNAMESUFFIX= -kmod DISTNAME= VirtualBox-${PORTVERSION} MAINTAINER= vbox@FreeBSD.org COMMENT= VirtualBox kernel module for FreeBSD LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= kmk:devel/kBuild CPE_VENDOR= oracle CPE_PRODUCT= vm_virtualbox USES= cpe kmod tar:bzip2 PATCHDIR= ${.CURDIR}/../${PORTNAME}/files WRKSRC= ${WRKDIR}/VirtualBox-${PORTVERSION} USE_RC_SUBR= vboxnet ONLY_FOR_ARCHS= i386 amd64 HAS_CONFIGURE= yes CONFIGURE_ARGS+= --build-headless CONFIGURE_ARGS+= --disable-alsa \ --disable-dbus \ --disable-docs \ --disable-libvpx \ --disable-pulse \ --disable-python \ --disable-sdl-ttf \ --disable-xpcom CONFIGURE_ARGS+= --nofatal --with-gcc="${CC}" --with-g++="${CXX}" CONFLICTS_INSTALL= virtualbox-ose-kmod-devel-* \ virtualbox-ose-kmod-legacy-* OPTIONS_DEFINE= DEBUG VIMAGE OPTIONS_SUB= yes DEBUG_DESC= Debug symbols, additional logs and assertions VIMAGE_DESC= VIMAGE virtual networking support .include VBOX_BIN= ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/src VBOX_KMODS= vboxdrv \ vboxnetadp \ vboxnetflt BUILD_WRKSRC= ${VBOX_BIN} KMK_BUILDTYPE= release KMK_CONFIG= VBOX_LIBPATH_X11=${LOCALBASE} VBOX_FREEBSD_SRC=${SRC_BASE}/sys KMK_FLAGS= HostDrivers-scripts vboxdrv-mod VBoxNetFlt-src VBoxNetAdp-src .if ${PORT_OPTIONS:MDEBUG} KMK_FLAGS+= BUILD_TYPE=debug KMK_BUILDTYPE= debug EXTRA_PATCHES+= ${PATCHDIR}/extrapatch-Config.kmk \ ${PATCHDIR}/extrapatch-src-VBox-HostDrivers-Support-freebsd-Makefile MAKE_ARGS+= DEBUG_FLAGS="-O1 -g" .endif .if ${ARCH} == i386 KMK_ARCH= freebsd.x86 .else KMK_ARCH= freebsd.${ARCH} .endif .include .if ${OSREL:R} >= 11 SYMBOLSUFFIX= debug .else SYMBOLSUFFIX= symbols .endif PLIST_SUB+= SYMBOLSUFFIX=${SYMBOLSUFFIX} post-patch: @${ECHO} 'VBOX_WITH_VBOXDRV = 1' > ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_NETFLT = 1' >> ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_NETADP = 1' >> ${WRKSRC}/LocalConfig.kmk @${ECHO} 'VBOX_WITH_ADDITIONS =' >> ${WRKSRC}/LocalConfig.kmk .if ${PORT_OPTIONS:MVIMAGE} @${ECHO} 'VBOX_WITH_NETFLT_VIMAGE = 1' >> ${WRKSRC}/LocalConfig.kmk .endif @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \ ${WRKSRC}/Config.kmk ${WRKSRC}/configure @${REINPLACE_CMD} \ -e 's|\$$KBUILDDIR_BIN/kmk_sed|${LOCALBASE}/bin/kmk_sed|g' \ ${WRKSRC}/configure pre-build: cd ${WRKSRC}/src/VBox/HostDrivers && ${SH} -c \ '. ${WRKSRC}/env.sh && ${KMK_CONFIG} ${LOCALBASE}/bin/kmk ${KMK_FLAGS}' do-install: ${MKDIR} ${STAGEDIR}${KMODDIR} .for i in ${VBOX_KMODS} ${INSTALL_KLD} ${VBOX_BIN}/${i}/${i}.ko ${STAGEDIR}${KMODDIR} .if ${PORT_OPTIONS:MDEBUG} ${INSTALL_KLD} ${VBOX_BIN}/${i}/${i}.ko.${SYMBOLSUFFIX} ${STAGEDIR}${KMODDIR} .endif .endfor .include Index: head/emulators/virtualbox-ose-kmod/distinfo =================================================================== --- head/emulators/virtualbox-ose-kmod/distinfo (revision 452714) +++ head/emulators/virtualbox-ose-kmod/distinfo (revision 452715) @@ -1,3 +1,3 @@ -TIMESTAMP = 1508180714 -SHA256 (VirtualBox-5.1.30.tar.bz2) = 6059b0986c9cdacc533177867634a76331ceccdcd46dddd111a50d1c42846d0b -SIZE (VirtualBox-5.1.30.tar.bz2) = 116510730 +TIMESTAMP = 1508350098 +SHA256 (VirtualBox-5.2.0.tar.bz2) = 26fc73aee2df18142e4129beed1175fbd7eed69a9b6b150bcff7d9b92f4ade54 +SIZE (VirtualBox-5.2.0.tar.bz2) = 117789406 Index: head/emulators/virtualbox-ose-nox11/Makefile =================================================================== --- head/emulators/virtualbox-ose-nox11/Makefile (revision 452714) +++ head/emulators/virtualbox-ose-nox11/Makefile (revision 452715) @@ -1,10 +1,10 @@ # $FreeBSD$ PKGNAMESUFFIX= -nox11 OPTIONS_EXCLUDE= ALSA DBUS DEBUG GUESTADDITIONS MANUAL NLS PULSEAUDIO -OPTIONS_EXCLUDE+= QT4 QT5 VPX X11 +OPTIONS_EXCLUDE+= QT5 VPX X11 MASTERDIR= ${.CURDIR}/../virtualbox-ose .include "${MASTERDIR}/Makefile"