diff options
author | jkim <jkim@FreeBSD.org> | 2014-03-04 08:45:37 +0800 |
---|---|---|
committer | jkim <jkim@FreeBSD.org> | 2014-03-04 08:45:37 +0800 |
commit | 08202ab417d2d2877ccbb54e1e983a264c2c1718 (patch) | |
tree | 53bb6028fa45eb6699198f10d447206ea4b8abe2 /emulators | |
parent | 34711b3fbabab20e9b40dbeba58bf5347bbb81be (diff) | |
download | freebsd-ports-gnome-08202ab417d2d2877ccbb54e1e983a264c2c1718.tar.gz freebsd-ports-gnome-08202ab417d2d2877ccbb54e1e983a264c2c1718.tar.zst freebsd-ports-gnome-08202ab417d2d2877ccbb54e1e983a264c2c1718.zip |
Update to 4.3.8.
Obtained from: svn.redports.org/virtualbox
Diffstat (limited to 'emulators')
31 files changed, 582 insertions, 369 deletions
diff --git a/emulators/virtualbox-ose-additions/Makefile b/emulators/virtualbox-ose-additions/Makefile index 7b2b34300421..6bd8f57ac8e7 100644 --- a/emulators/virtualbox-ose-additions/Makefile +++ b/emulators/virtualbox-ose-additions/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= virtualbox-ose -DISTVERSION= 4.3.6 +DISTVERSION= 4.3.8 CATEGORIES= emulators MASTER_SITES= http://download.virtualbox.org/virtualbox/${DISTVERSION}/ \ http://tmp.chruetertee.ch/ \ @@ -21,6 +21,7 @@ BUILD_DEPENDS= yasm:${PORTSDIR}/devel/yasm \ kmk:${PORTSDIR}/devel/kBuild UNIQUENAME= ${PORTNAME}${PKGNAMESUFFIX} +PATCHDIR= ${.CURDIR}/../${PORTNAME}/files WRKSRC= ${WRKDIR}/VirtualBox-${PORTVERSION} USE_RC_SUBR= vboxguest vboxservice USES= iconv kmod @@ -40,7 +41,7 @@ CONFLICTS_INSTALL= virtualbox-ose-additions-devel-[3,4]* virtualbox-ose-[3,4]* v OPTIONS_DEFINE= DEBUG X11 OPENGL OPTIONS_DEFAULT= X11 -OPTIONS_SUB= DEBUG X11 OPENGL +OPTIONS_SUB= yes .include <bsd.port.options.mk> @@ -48,17 +49,19 @@ 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 + +BUILD_WRKSRC= ${VBOX_BIN}/src KMK_BUILDTYPE= release KMK_CONFIG= VBOX_LIBPATH_X11=${LOCALBASE} KMK_FLAGS= -MAKE_FLAGS= SYSDIR=${SRC_BASE}/sys - .if ${PORT_OPTIONS:MDEBUG} KMK_FLAGS+= BUILD_TYPE=debug KMK_BUILDTYPE= debug -MAKE_FLAGS+= DEBUG_FLAGS="-O1 -g" +MAKE_ARGS+= DEBUG_FLAGS="-O1 -g" .endif .if ${PORT_OPTIONS:MX11} @@ -71,6 +74,13 @@ VBOX_WITH_X11= .if ${PORT_OPTIONS:MOPENGL} USE_XORG+= xcomposite xdamage xext xfixes USE_GL= gl +VBOX_LIBS= VBoxOGL.so \ + VBoxOGLarrayspu.so \ + VBoxOGLcrutil.so \ + VBoxOGLerrorspu.so \ + VBoxOGLfeedbackspu.so \ + VBoxOGLpackspu.so \ + VBoxOGLpassthroughspu.so .else CONFIGURE_ARGS+=--disable-opengl .endif @@ -102,6 +112,7 @@ post-patch: ${WRKSRC}/configure \ ${WRKSRC}/kBuild/units/qt4.kmk \ ${WRKSRC}/kBuild/sdks/LIBSDL.kmk \ + ${WRKSRC}/src/VBox/Additions/common/crOpenGL/fakedri_drv.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 @@ -115,12 +126,11 @@ pre-build: @${REINPLACE_CMD} -e 's|/bin/bash|/bin/sh|' \ ${WRKSRC}/env.sh \ ${WRKSRC}/src/VBox/Additions/freebsd/Installer/vboxguest.sh - -do-build: - cd ${WRKSRC} && ${SH} env.sh && ${KMK_CONFIG} ${LOCALBASE}/bin/kmk ${KMK_FLAGS} - cd ${VBOX_BIN}/src && make ${MAKE_FLAGS} + cd ${WRKSRC} && ${SH} env.sh && \ + ${KMK_CONFIG} ${LOCALBASE}/bin/kmk ${KMK_FLAGS} do-install: + ${MKDIR} ${STAGEDIR}${KMODDIR} ${INSTALL_KLD} ${VBOX_BIN}/src/vboxguest/vboxguest.ko ${STAGEDIR}${KMODDIR} .if ${PORT_OPTIONS:MDEBUG} ${INSTALL_KLD} ${VBOX_BIN}/src/vboxguest/vboxguest.ko.symbols ${STAGEDIR}${KMODDIR} @@ -129,48 +139,40 @@ do-install: ${INSTALL_KLD} ${VBOX_BIN}/vboxvideo.ko ${STAGEDIR}${KMODDIR} .endif - ${MKDIR} ${STAGEDIR}${PREFIX}/etc/rc.d/ - - ${MKDIR} ${STAGEDIR}${PREFIX}/sbin - ${INSTALL_PROGRAM} ${VBOX_BIN}/VBoxControl ${STAGEDIR}${PREFIX}/sbin/ - ${INSTALL_PROGRAM} ${VBOX_BIN}/VBoxService ${STAGEDIR}${PREFIX}/sbin/ + ${INSTALL_PROGRAM} ${VBOX_SBINS:S|^|${VBOX_BIN}/|} \ + ${STAGEDIR}${PREFIX}/sbin/ .if ${PORT_OPTIONS:MX11} ${INSTALL_PROGRAM} ${VBOX_BIN}/VBoxClient ${STAGEDIR}${PREFIX}/bin/ - - ${MKDIR} ${STAGEDIR}${PREFIX}/bin ${INSTALL_SCRIPT} ${WRKSRC}/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ - ${STAGEDIR}${PREFIX}/bin/VBoxClient-all + ${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/ + ${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/ + ${STAGEDIR}${PREFIX}/share/autostart/ ${MKDIR} ${STAGEDIR}${VIDEODIR} - ${INSTALL_DATA} ${VBOX_BIN}/vboxvideo_drv_${XSERVER_ABI}.so ${STAGEDIR}${VIDEODIR}/vboxvideo_drv.so + ${INSTALL_DATA} ${VBOX_BIN}/vboxvideo_drv_${XSERVER_ABI}.so \ + ${STAGEDIR}${VIDEODIR}/vboxvideo_drv.so ${MKDIR} ${STAGEDIR}${INPUTDIR} - ${INSTALL_DATA} ${VBOX_BIN}/vboxmouse_drv_${XSERVER_ABI}.so ${STAGEDIR}${INPUTDIR}/vboxmouse_drv.so + ${INSTALL_DATA} ${VBOX_BIN}/vboxmouse_drv_${XSERVER_ABI}.so \ + ${STAGEDIR}${INPUTDIR}/vboxmouse_drv.so .endif .if ${PORT_OPTIONS:MOPENGL} - ${MKDIR} ${STAGEDIR}${PREFIX}/lib - ${INSTALL_DATA} ${VBOX_BIN}/VBoxOGL.so ${STAGEDIR}${PREFIX}/lib/ - ${INSTALL_DATA} ${VBOX_BIN}/VBoxOGLarrayspu.so ${STAGEDIR}${PREFIX}/lib/ - ${INSTALL_DATA} ${VBOX_BIN}/VBoxOGLcrutil.so ${STAGEDIR}${PREFIX}/lib/ - ${INSTALL_DATA} ${VBOX_BIN}/VBoxOGLerrorspu.so ${STAGEDIR}${PREFIX}/lib/ - ${INSTALL_DATA} ${VBOX_BIN}/VBoxOGLfeedbackspu.so ${STAGEDIR}${PREFIX}/lib/ - ${INSTALL_DATA} ${VBOX_BIN}/VBoxOGLpackspu.so ${STAGEDIR}${PREFIX}/lib/ - ${INSTALL_DATA} ${VBOX_BIN}/VBoxOGLpassthroughspu.so ${STAGEDIR}${PREFIX}/lib/ + ${INSTALL_DATA} ${VBOX_LIBS:S|^|${VBOX_BIN}/|} \ + ${STAGEDIR}${PREFIX}/lib/ ${MKDIR} ${STAGEDIR}${PREFIX}/lib/dri - ${LN} -sf ${PREFIX}/lib/VBoxOGL.so ${STAGEDIR}${PREFIX}/lib/dri/vboxvideo_dri.so + ${LN} -sf ${PREFIX}/lib/VBoxOGL.so \ + ${STAGEDIR}${PREFIX}/lib/dri/vboxvideo_dri.so .endif .include <bsd.port.post.mk> diff --git a/emulators/virtualbox-ose-additions/distinfo b/emulators/virtualbox-ose-additions/distinfo index 24e378bdad60..3ccbbdbc199b 100644 --- a/emulators/virtualbox-ose-additions/distinfo +++ b/emulators/virtualbox-ose-additions/distinfo @@ -1,2 +1,2 @@ -SHA256 (VirtualBox-4.3.6.tar.bz2) = c547e1e32e0b06fba9ee4ca7842f8ddee8e94c64aab17c2b0d0793f0caccbb27 -SIZE (VirtualBox-4.3.6.tar.bz2) = 89609199 +SHA256 (VirtualBox-4.3.8.tar.bz2) = ffabd8735bdc80753cec29d01b499769f41e083f37a3f58b3055f19d3b1b9641 +SIZE (VirtualBox-4.3.8.tar.bz2) = 90224116 diff --git a/emulators/virtualbox-ose-additions/files/patch-Config.kmk b/emulators/virtualbox-ose-additions/files/patch-Config.kmk deleted file mode 100644 index 4c5387eeaee2..000000000000 --- a/emulators/virtualbox-ose-additions/files/patch-Config.kmk +++ /dev/null @@ -1,58 +0,0 @@ ---- Config.kmk.orig 2013-10-15 13:01:31.000000000 +0200 -+++ Config.kmk 2013-10-20 14:43:19.015746151 +0200 -@@ -3387,16 +3387,16 @@ - $(VBOX_GCC_WARN) -Wpointer-arith -Winline $(VBOX_GCC_Wno-pointer-sign) $(VBOX_GCC_fdiagnostics-show-option) \ - -Wstrict-prototypes -Wmissing-prototypes -Wstrict-prototypes \ - -Wimplicit-function-declaration -Werror-implicit-function-declaration \ -- -O2 -fformat-extensions -ffreestanding -fno-strict-aliasing -fno-common -finline-limit=8000 \ -+ -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 - TEMPLATE_VBOXR0DRV_CXXFLAGS = -fno-exceptions -fno-rtti \ - $(VBOX_GCC_WARN) -Wpointer-arith -Winline \ -- -O2 -fno-format-extensions -fno-strict-aliasing -fno-common -finline-limit=8000 \ -+ -O2 -fno-strict-aliasing -fno-common -finline-limit=8000 \ - $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \ - -nostdinc - TEMPLATE_VBOXR0DRV_CXXFLAGS.x86 = $(TEMPLATE_VBOXR0DRV_CFLAGS.x86) -@@ -3630,8 +3630,6 @@ - /usr/X11R6/include \ - /usr/local/include - TEMPLATE_VBOXR3EXE_LIBPATH += \ -- /usr/lib \ -- /usr/X11R6/lib \ - /usr/local/lib - else ifeq ($(KBUILD_TARGET),solaris) - TEMPLATE_VBOXR3EXE_TOOL = GXX3PLAIN -@@ -4206,8 +4204,6 @@ - /usr/X11R6/include \ - /usr/local/include - TEMPLATE_VBOXMAINEXE_LIBPATH += \ -- /usr/lib \ -- /usr/X11R6/lib \ - /usr/local/lib - else ifeq ($(KBUILD_TARGET),solaris) - TEMPLATE_VBOXMAINEXE_TOOL = GXX3PLAIN -@@ -4673,8 +4669,6 @@ - /usr/X11R6/include \ - /usr/local/include - TEMPLATE_VBOXQT4GUIEXE_LIBPATH += \ -- /usr/lib \ -- /usr/X11R6/lib \ - /usr/local/lib - endif - ifeq ($(KBUILD_TARGET),solaris) -@@ -4869,8 +4863,6 @@ - /usr/X11R6/include \ - /usr/local/include - TEMPLATE_VBOXBLDPROG_LIBPATH += \ -- /usr/lib \ -- /usr/X11R6/lib \ - /usr/local/lib - else ifeq ($(KBUILD_HOST),solaris) - TEMPLATE_VBOXBLDPROG_TOOL = GXX3PLAIN diff --git a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Additions-x11-vboxvideo-Makefile.kmk b/emulators/virtualbox-ose-additions/files/patch-src-VBox-Additions-x11-vboxvideo-Makefile.kmk deleted file mode 100644 index 0525808f70c8..000000000000 --- a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Additions-x11-vboxvideo-Makefile.kmk +++ /dev/null @@ -1,20 +0,0 @@ ---- src/VBox/Additions/x11/vboxvideo/Makefile.kmk.orig 2012-10-26 18:23:35.000000000 +0200 -+++ src/VBox/Additions/x11/vboxvideo/Makefile.kmk 2012-10-28 16:54:59.074303788 +0100 -@@ -196,7 +196,7 @@ - vboxvideo_drv_15_TEMPLATE = VBOXGUESTR3XORGMOD - vboxvideo_drv_15_CFLAGS := $(vboxvideo_drv_70_CFLAGS) - vboxvideo_drv_15_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=100503000 --if1of ($(KBUILD_TARGET), linux solaris) -+if1of ($(KBUILD_TARGET), freebsd linux solaris) - vboxvideo_drv_15_DEFS += VBOX_DRI - endif - vboxvideo_drv_15_INCS = \ -@@ -204,7 +204,7 @@ - $(VBOX_PATH_X11_ROOT)/xorg-server-1.5.3 - vboxvideo_drv_15_INCS += $(PATH_ROOT)/src/VBox/Runtime/include - vboxvideo_drv_15_SOURCES = $(vboxvideo_drv_13_SOURCES) --if1of ($(KBUILD_TARGET), linux solaris) -+if1of ($(KBUILD_TARGET), freebsd linux solaris) - vboxvideo_drv_15_SOURCES += \ - vboxvideo_dri.c - endif diff --git a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Runtime-Makefile.kmk b/emulators/virtualbox-ose-additions/files/patch-src-VBox-Runtime-Makefile.kmk deleted file mode 100644 index 4da15d3e545a..000000000000 --- a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Runtime-Makefile.kmk +++ /dev/null @@ -1,14 +0,0 @@ ---- src/VBox/Runtime/Makefile.kmk.orig 2013-12-18 11:10:31.000000000 -0500 -+++ src/VBox/Runtime/Makefile.kmk 2014-02-20 18:14:28.000000000 -0500 -@@ -157,6 +157,11 @@ - IPRT_BLDCFG_TYPE=\"$(KBUILD_TYPE)\" - - # -+# Set the defines that utf8-posix.cpp needs. It's used by several targets. -+# -+r3/posix/utf8-posix.cpp_DEFS.freebsd = $(VBOX_ICONV_DEFS) -+ -+# - # Unicode Specification reader used to regenerate unidata.cpp. - # - uniread_TEMPLATE = VBOXBLDPROG diff --git a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Runtime-r0drv-freebsd-memobj-r0drv-freebsd.c b/emulators/virtualbox-ose-additions/files/patch-src-VBox-Runtime-r0drv-freebsd-memobj-r0drv-freebsd.c deleted file mode 100644 index b760cfe7f940..000000000000 --- a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Runtime-r0drv-freebsd-memobj-r0drv-freebsd.c +++ /dev/null @@ -1,47 +0,0 @@ -From Alan L. Cox on FreeBSD-current: - - I just glanced at the virtualbox code for a couple minutes. For - FreeBSD 9 and 10, these lock acquires are completely unnecessary, and - have been since FreeBSD 9.0. Just delete them. They may be equally - unnecessary under FreeBSD 8, but I didn't look carefully enough to - answer that question. - -[1] http://lists.freebsd.org/pipermail/freebsd-current/2012-November/037963.html ---- src/VBox/Runtime/r0drv/freebsd/memobj-r0drv-freebsd.c.orig 2013-11-29 12:04:53.000000000 +0100 -+++ src/VBox/Runtime/r0drv/freebsd/memobj-r0drv-freebsd.c 2013-11-29 12:37:29.000000000 +0100 -@@ -168,14 +168,19 @@ - VM_OBJECT_LOCK(pMemFreeBSD->pObject); - #endif - vm_page_t pPage = vm_page_find_least(pMemFreeBSD->pObject, 0); -+#if __FreeBSD_version < 900000 -+ /* See http://lists.freebsd.org/pipermail/freebsd-current/2012-November/037963.html */ - vm_page_lock_queues(); -+#endif - for (vm_page_t pPage = vm_page_find_least(pMemFreeBSD->pObject, 0); - pPage != NULL; - pPage = vm_page_next(pPage)) - { - vm_page_unwire(pPage, 0); - } -+#if __FreeBSD_version < 900000 - vm_page_unlock_queues(); -+#endif - #if __FreeBSD_version >= 1000030 - VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject); - #else -@@ -291,11 +296,15 @@ - while (iPage-- > 0) - { - pPage = vm_page_lookup(pObject, iPage); -+#if __FreeBSD_version < 900000 - vm_page_lock_queues(); -+#endif - if (fWire) - vm_page_unwire(pPage, 0); - vm_page_free(pPage); -+#if __FreeBSD_version < 900000 - vm_page_unlock_queues(); -+#endif - } - #if __FreeBSD_version >= 1000030 - VM_OBJECT_WUNLOCK(pObject); diff --git a/emulators/virtualbox-ose-additions/pkg-plist b/emulators/virtualbox-ose-additions/pkg-plist index cec78351f015..84a993167952 100644 --- a/emulators/virtualbox-ose-additions/pkg-plist +++ b/emulators/virtualbox-ose-additions/pkg-plist @@ -1,8 +1,7 @@ -%%X11%%bin/VBoxClient-all +@comment $FreeBSD: ports/emulators/virtualbox-ose-additions/pkg-plist,v 1.6 2012/11/17 05:57:24 svnexp Exp $ %%X11%%bin/VBoxClient +%%X11%%bin/VBoxClient-all %%X11%%etc/xdg/autostart/vboxclient.desktop -sbin/VBoxControl -sbin/VBoxService %%OPENGL%%lib/VBoxOGL.so %%OPENGL%%lib/VBoxOGLarrayspu.so %%OPENGL%%lib/VBoxOGLcrutil.so @@ -11,20 +10,18 @@ sbin/VBoxService %%OPENGL%%lib/VBoxOGLpackspu.so %%OPENGL%%lib/VBoxOGLpassthroughspu.so %%OPENGL%%lib/dri/vboxvideo_dri.so -%%X11%%share/autostart/vboxclient.desktop %%X11%%lib/xorg/modules/drivers/vboxvideo_drv.so %%X11%%lib/xorg/modules/input/vboxmouse_drv.so +sbin/VBoxControl +sbin/VBoxService +%%X11%%share/autostart/vboxclient.desktop %%X11%%@dirrmtry share/autostart %%X11%%@dirrmtry lib/xorg/modules/drivers %%X11%%@dirrmtry lib/xorg/modules/input %%X11%%@dirrmtry lib/xorg/modules %%X11%%@dirrmtry lib/xorg -%%X11%%@dirrmtry etc/xdg/autostart -%%X11%%@dirrmtry etc/xdg %%OPENGL%%@dirrmtry lib/dri -%%X11%%@dirrmtry lib @cwd / %%KMODDIR%%/vboxguest.ko %%DEBUG%%%%KMODDIR%%/vboxguest.ko.symbols %%X11%%%%KMODDIR%%/vboxvideo.ko -%%DEBUG%%%%X11%%%%KMODDIR%%/vboxvideo.ko diff --git a/emulators/virtualbox-ose-kmod/Makefile b/emulators/virtualbox-ose-kmod/Makefile index 7160043dee67..566845ebbe9d 100644 --- a/emulators/virtualbox-ose-kmod/Makefile +++ b/emulators/virtualbox-ose-kmod/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= virtualbox-ose -DISTVERSION= 4.3.6 +DISTVERSION= 4.3.8 CATEGORIES= emulators MASTER_SITES= http://download.virtualbox.org/virtualbox/${DISTVERSION}/ \ http://tmp.chruetertee.ch/ \ @@ -22,6 +22,7 @@ BUILD_DEPENDS= yasm:${PORTSDIR}/devel/yasm \ USES= kmod UNIQUENAME= ${PORTNAME}${PKGNAMESUFFIX} +PATCHDIR= ${.CURDIR}/../${PORTNAME}/files WRKSRC= ${WRKDIR}/VirtualBox-${PORTVERSION} USE_RC_SUBR= vboxnet ONLY_FOR_ARCHS= i386 amd64 @@ -37,27 +38,29 @@ CONFLICTS= bcc-[0-9]* CONFLICTS_INSTALL= virtualbox-ose-kmod-devel-4* virtualbox-ose-kmod-legacy-4* OPTIONS_DEFINE= DEBUG VIMAGE +OPTIONS_SUB= yes DEBUG_DESC= Debug symbols, additional logs and assertions VIMAGE_DESC= VIMAGE virtual networking support .include <bsd.port.options.mk> 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 -MAKE_FLAGS= SYSDIR=${SRC_BASE}/sys - .if ${PORT_OPTIONS:MDEBUG} KMK_FLAGS+= BUILD_TYPE=debug KMK_BUILDTYPE= debug -EXTRA_PATCHES+= ${FILESDIR}/extrapatch-Config.kmk ${FILESDIR}/extrapatch-src-VBox-HostDrivers-Support-freebsd-Makefile -MAKE_FLAGS+= DEBUG_FLAGS="-O1 -g" -PLIST_SUB+= WITH_DEBUG="" -.else -PLIST_SUB+= WITH_DEBUG="@comment " +EXTRA_PATCHES+= ${PATCHDIR}/extrapatch-Config.kmk \ + ${PATCHDIR}/extrapatch-src-VBox-HostDrivers-Support-freebsd-Makefile +MAKE_ARGS+= DEBUG_FLAGS="-O1 -g" .endif .if ${ARCH} == i386 @@ -84,19 +87,16 @@ post-patch: pre-build: @${REINPLACE_CMD} -e 's|/bin/bash|/bin/sh|' \ ${WRKSRC}/env.sh - -do-build: - cd ${WRKSRC} && ${SH} env.sh && cd ${WRKSRC}/src/VBox/HostDrivers && ${KMK_CONFIG} ${LOCALBASE}/bin/kmk ${KMK_FLAGS} - cd ${VBOX_BIN} && make ${MAKE_FLAGS} + cd ${WRKSRC} && ${SH} env.sh && cd ${WRKSRC}/src/VBox/HostDrivers && \ + ${KMK_CONFIG} ${LOCALBASE}/bin/kmk ${KMK_FLAGS} do-install: - ${INSTALL_KLD} ${VBOX_BIN}/vboxdrv/vboxdrv.ko ${STAGEDIR}${KMODDIR} - ${INSTALL_KLD} ${VBOX_BIN}/vboxnetadp/vboxnetadp.ko ${STAGEDIR}${KMODDIR} - ${INSTALL_KLD} ${VBOX_BIN}/vboxnetflt/vboxnetflt.ko ${STAGEDIR}${KMODDIR} + ${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}/vboxdrv/vboxdrv.ko.symbols ${STAGEDIR}${KMODDIR} - ${INSTALL_KLD} ${VBOX_BIN}/vboxnetadp/vboxnetadp.ko.symbols ${STAGEDIR}${KMODDIR} - ${INSTALL_KLD} ${VBOX_BIN}/vboxnetflt/vboxnetflt.ko.symbols ${STAGEDIR}${KMODDIR} + ${INSTALL_KLD} ${VBOX_BIN}/${i}/${i}.ko.symbols ${STAGEDIR}${KMODDIR} .endif +.endfor .include <bsd.port.post.mk> diff --git a/emulators/virtualbox-ose-kmod/distinfo b/emulators/virtualbox-ose-kmod/distinfo index 24e378bdad60..3ccbbdbc199b 100644 --- a/emulators/virtualbox-ose-kmod/distinfo +++ b/emulators/virtualbox-ose-kmod/distinfo @@ -1,2 +1,2 @@ -SHA256 (VirtualBox-4.3.6.tar.bz2) = c547e1e32e0b06fba9ee4ca7842f8ddee8e94c64aab17c2b0d0793f0caccbb27 -SIZE (VirtualBox-4.3.6.tar.bz2) = 89609199 +SHA256 (VirtualBox-4.3.8.tar.bz2) = ffabd8735bdc80753cec29d01b499769f41e083f37a3f58b3055f19d3b1b9641 +SIZE (VirtualBox-4.3.8.tar.bz2) = 90224116 diff --git a/emulators/virtualbox-ose-kmod/files/patch-Config.kmk b/emulators/virtualbox-ose-kmod/files/patch-Config.kmk deleted file mode 100644 index d7edc886bb4a..000000000000 --- a/emulators/virtualbox-ose-kmod/files/patch-Config.kmk +++ /dev/null @@ -1,56 +0,0 @@ ---- Config.kmk.orig 2012-12-20 14:44:38.260858319 +0100 -+++ Config.kmk 2012-12-20 14:55:59.491850177 +0100 -@@ -3239,7 +3239,7 @@ - $(VBOX_GCC_WARN) -Wpointer-arith -Winline $(VBOX_GCC_Wno-pointer-sign) $(VBOX_GCC_fdiagnostics-show-option) \ - -Wstrict-prototypes -Wmissing-prototypes -Wstrict-prototypes \ - -Wimplicit-function-declaration -Werror-implicit-function-declaration \ -- -O2 -fformat-extensions -ffreestanding -fno-strict-aliasing -fno-common -finline-limit=8000 \ -+ -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 -@@ -3248,7 +3248,7 @@ - -mno-3dnow -msoft-float -fno-asynchronous-unwind-tables -Wundef - TEMPLATE_VBOXR0DRV_CXXFLAGS = -fno-exceptions -fno-rtti \ - $(VBOX_GCC_WARN) -Wpointer-arith -Winline \ -- -O2 -fno-format-extensions -fno-strict-aliasing -fno-common -finline-limit=8000 \ -+ -O2 -fno-strict-aliasing -fno-common -finline-limit=8000 \ - $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \ - -nostdinc - TEMPLATE_VBOXR0DRV_CXXFLAGS.x86 = $(TEMPLATE_VBOXR0DRV_CFLAGS.x86) -@@ -3465,8 +3465,6 @@ - /usr/X11R6/include \ - /usr/local/include - TEMPLATE_VBOXR3EXE_LIBPATH += \ -- /usr/lib \ -- /usr/X11R6/lib \ - /usr/local/lib - else ifeq ($(KBUILD_TARGET),solaris) - TEMPLATE_VBOXR3EXE_TOOL = GXX3PLAIN -@@ -3955,8 +3953,6 @@ - /usr/X11R6/include \ - /usr/local/include - TEMPLATE_VBOXMAINEXE_LIBPATH += \ -- /usr/lib \ -- /usr/X11R6/lib \ - /usr/local/lib - else ifeq ($(KBUILD_TARGET),solaris) - TEMPLATE_VBOXMAINEXE_TOOL = GXX3PLAIN -@@ -4371,8 +4367,6 @@ - /usr/X11R6/include \ - /usr/local/include - TEMPLATE_VBOXQT4GUIEXE_LIBPATH += \ -- /usr/lib \ -- /usr/X11R6/lib \ - /usr/local/lib - endif - ifeq ($(KBUILD_TARGET),solaris) -@@ -4555,8 +4549,6 @@ - /usr/X11R6/include \ - /usr/local/include - TEMPLATE_VBOXBLDPROG_LIBPATH += \ -- /usr/lib \ -- /usr/X11R6/lib \ - /usr/local/lib - else ifeq ($(KBUILD_HOST),solaris) - TEMPLATE_VBOXBLDPROG_TOOL = GXX3PLAIN diff --git a/emulators/virtualbox-ose-kmod/files/patch-src-VBox-Runtime-r0drv-freebsd-memobj-r0drv-freebsd.c b/emulators/virtualbox-ose-kmod/files/patch-src-VBox-Runtime-r0drv-freebsd-memobj-r0drv-freebsd.c deleted file mode 100644 index b760cfe7f940..000000000000 --- a/emulators/virtualbox-ose-kmod/files/patch-src-VBox-Runtime-r0drv-freebsd-memobj-r0drv-freebsd.c +++ /dev/null @@ -1,47 +0,0 @@ -From Alan L. Cox on FreeBSD-current: - - I just glanced at the virtualbox code for a couple minutes. For - FreeBSD 9 and 10, these lock acquires are completely unnecessary, and - have been since FreeBSD 9.0. Just delete them. They may be equally - unnecessary under FreeBSD 8, but I didn't look carefully enough to - answer that question. - -[1] http://lists.freebsd.org/pipermail/freebsd-current/2012-November/037963.html ---- src/VBox/Runtime/r0drv/freebsd/memobj-r0drv-freebsd.c.orig 2013-11-29 12:04:53.000000000 +0100 -+++ src/VBox/Runtime/r0drv/freebsd/memobj-r0drv-freebsd.c 2013-11-29 12:37:29.000000000 +0100 -@@ -168,14 +168,19 @@ - VM_OBJECT_LOCK(pMemFreeBSD->pObject); - #endif - vm_page_t pPage = vm_page_find_least(pMemFreeBSD->pObject, 0); -+#if __FreeBSD_version < 900000 -+ /* See http://lists.freebsd.org/pipermail/freebsd-current/2012-November/037963.html */ - vm_page_lock_queues(); -+#endif - for (vm_page_t pPage = vm_page_find_least(pMemFreeBSD->pObject, 0); - pPage != NULL; - pPage = vm_page_next(pPage)) - { - vm_page_unwire(pPage, 0); - } -+#if __FreeBSD_version < 900000 - vm_page_unlock_queues(); -+#endif - #if __FreeBSD_version >= 1000030 - VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject); - #else -@@ -291,11 +296,15 @@ - while (iPage-- > 0) - { - pPage = vm_page_lookup(pObject, iPage); -+#if __FreeBSD_version < 900000 - vm_page_lock_queues(); -+#endif - if (fWire) - vm_page_unwire(pPage, 0); - vm_page_free(pPage); -+#if __FreeBSD_version < 900000 - vm_page_unlock_queues(); -+#endif - } - #if __FreeBSD_version >= 1000030 - VM_OBJECT_WUNLOCK(pObject); diff --git a/emulators/virtualbox-ose-kmod/pkg-plist b/emulators/virtualbox-ose-kmod/pkg-plist index 50d6e52825bb..0fdfc43f46e5 100644 --- a/emulators/virtualbox-ose-kmod/pkg-plist +++ b/emulators/virtualbox-ose-kmod/pkg-plist @@ -1,7 +1,8 @@ +@comment $FreeBSD$ @cwd / %%KMODDIR%%/vboxdrv.ko -%%WITH_DEBUG%%%%KMODDIR%%/vboxdrv.ko.symbols +%%DEBUG%%%%KMODDIR%%/vboxdrv.ko.symbols %%KMODDIR%%/vboxnetadp.ko -%%WITH_DEBUG%%%%KMODDIR%%/vboxnetadp.ko.symbols +%%DEBUG%%%%KMODDIR%%/vboxnetadp.ko.symbols %%KMODDIR%%/vboxnetflt.ko -%%WITH_DEBUG%%%%KMODDIR%%/vboxnetflt.ko.symbols +%%DEBUG%%%%KMODDIR%%/vboxnetflt.ko.symbols diff --git a/emulators/virtualbox-ose/Makefile b/emulators/virtualbox-ose/Makefile index 721fa3eb4066..2274d54e411e 100644 --- a/emulators/virtualbox-ose/Makefile +++ b/emulators/virtualbox-ose/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= virtualbox-ose -DISTVERSION= 4.3.6 +DISTVERSION= 4.3.8 CATEGORIES= emulators MASTER_SITES= http://download.virtualbox.org/virtualbox/${DISTVERSION}/ \ http://tmp.chruetertee.ch/ \ @@ -26,7 +26,7 @@ BUILD_DEPENDS= yasm:${PORTSDIR}/devel/yasm \ LIB_DEPENDS= libpng.so:${PORTSDIR}/graphics/png \ libxslt.so:${PORTSDIR}/textproc/libxslt \ libcurl.so:${PORTSDIR}/ftp/curl -RUN_DEPENDS= ${KMODDIR}/vboxdrv.ko:${PORTSDIR}/emulators/virtualbox-ose-kmod \ +RUN_DEPENDS= ${LOCALBASE}/etc/rc.d/vboxnet:${PORTSDIR}/emulators/virtualbox-ose-kmod \ cdrecord:${PORTSDIR}/sysutils/cdrtools WRKSRC= ${WRKDIR}/VirtualBox-${PORTVERSION} @@ -54,7 +54,7 @@ VBOX_GUEST_VER= ${PORTVERSION} OPTIONS_DEFINE= QT4 DEBUG GUESTADDITIONS DBUS PULSEAUDIO UDPTUNNEL VDE VNC WEBSERVICE NLS X11 VPX PYTHON OPTIONS_DEFAULT= QT4 DBUS X11 UDPTUNNEL VNC WEBSERVICE PYTHON -OPTIONS_SUB= X11 QT4 GUESTADDITIONS VNC NLS WEBSERVICE PYTHON +OPTIONS_SUB= yes DEBUG_DESC= Debug symbols, additional logs and assertions QT4_DESC= Build with QT4 Frontend GUESTADDITIONS_DESC= Build with Guest Additions @@ -87,14 +87,12 @@ ENV= .SHELL: path="/bin/sh" unsetenv=true .endif -NO_STAGE= yes .include <bsd.port.options.mk> -KMODDIR= /boot/modules - -PLIST_SUB+= PYTHON_VER=${PYTHON_VER} \ +PLIST_SUB+= GUEST_VER=${VBOX_GUEST_VER} \ + PYTHON_VER=${PYTHON_VER} \ PYTHON_VERU=${PYTHON_VER:S/./_/} \ - GUEST_VER=${VBOX_GUEST_VER} + VBOXGROUP=${VBOXGROUP} SUB_LIST+= VBOXUSER=${VBOXUSER} \ VBOXWSUSER=${VBOXWSUSER} @@ -102,7 +100,7 @@ USE_RC_SUBR+= vboxheadless vboxwatchdog KMK_BUILDTYPE= release KMK_CONFIG= VBOX_LIBPATH_X11=${LOCALBASE} VBOX_FREEBSD_SRC=${SRC_BASE}/sys -KMK_FLAGS= -j 1 +KMK_FLAGS= -j${MAKE_JOBS_NUMBER} .if empty(PORT_OPTIONS:MQT4) && !empty(PORT_OPTIONS:MNLS) BROKEN= NLS support requires QT4 frontend. Run 'make config' again! @@ -170,8 +168,8 @@ PLIST_SUB+= ARCH="${KMK_ARCH}" .include <bsd.port.pre.mk> .if ${OSVERSION} < 900000 -EXTRA_PATCHES+= ${FILESDIR}/extrapatch-src-VBox-Main-src-server-generic-NetIf-generic.cpp \ - ${FILESDIR}/extrapatch-src-VBox-Devices-PC-vbox.dsl +EXTRA_PATCHES+= ${PATCHDIR}/extrapatch-src-VBox-Devices-PC-vbox.dsl \ + ${PATCHDIR}/extrapatch-src-VBox-Main-src-server-generic-NetIf-generic.cpp .endif pre-everything:: @@ -225,83 +223,63 @@ post-patch: .endif pre-build: - @${REINPLACE_CMD} -e 's|/bin/bash|/bin/sh|' \ - ${WRKSRC}/env.sh + @${REINPLACE_CMD} -e 's|/bin/bash|/bin/sh|' ${WRKSRC}/env.sh do-build: - cd ${WRKSRC} && ${SH} env.sh && ${KMK_CONFIG} ${LOCALBASE}/bin/kmk ${KMK_FLAGS} + cd ${WRKSRC} && ${SH} env.sh && \ + ${KMK_CONFIG} ${LOCALBASE}/bin/kmk ${KMK_FLAGS} do-install: - ${MKDIR} ${DATADIR} - (cd ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/sdk/bindings/xpcom && ${COPYTREE_SHARE} "idl samples" ${DATADIR}) + ${MKDIR} ${STAGEDIR}${DATADIR} + cd ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/sdk/bindings/xpcom && ${COPYTREE_SHARE} "idl samples" ${STAGEDIR}${DATADIR} - ${MKDIR} ${PREFIX}/include/virtualbox - (cd ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/sdk/bindings/xpcom/include && ${COPYTREE_SHARE} "*" ${PREFIX}/include/virtualbox) + ${MKDIR} ${STAGEDIR}${PREFIX}/include/virtualbox + cd ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/sdk/bindings/xpcom/include && ${COPYTREE_SHARE} "*" ${STAGEDIR}${PREFIX}/include/virtualbox - ${MKDIR} ${PREFIX}/lib/virtualbox - (cd ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin && ${COPYTREE_SHARE} "*.so *.gc *.r0 *.fd components VBoxExtPackHelperApp" ${PREFIX}/lib/virtualbox) + ${MKDIR} ${STAGEDIR}${PREFIX}/lib/virtualbox + cd ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin && ${COPYTREE_SHARE} "*.so *.gc *.r0 *.fd components VBoxExtPackHelperApp" ${STAGEDIR}${PREFIX}/lib/virtualbox .if ${PORT_OPTIONS:MNLS} - ${MKDIR} ${DATADIR}/nls - (cd ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/obj/VirtualBox/qtnls && ${COPYTREE_SHARE} "*.qm" ${DATADIR}/nls) + cd ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/obj/VirtualBox/qtnls && ${COPYTREE_SHARE} "*.qm" ${STAGEDIR}${DATADIR}/nls .endif - ${MKDIR} ${PREFIX}/bin .for f in VBoxManage VBoxNetAdpCtl VBoxNetDHCP VBoxSVC VBoxXPCOMIPCD VBoxBalloonCtrl ${VBOX_FRONTENDS} ${VBOX_WEB} - ${INSTALL_PROGRAM} ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/${f} ${PREFIX}/lib/virtualbox/ - ${LN} -sf ${PREFIX}/lib/virtualbox/${f} ${PREFIX}/bin/ -.endfor - -.for f in VBoxNetAdpCtl VBoxNetDHCP ${VBOX_FRONTENDS} - ${CHMOD} 4511 ${PREFIX}/lib/virtualbox/${f} -.endfor - -.for f in VBoxManage VBoxSVC VBoxXPCOMIPCD VBoxExtPackHelperApp VBoxBalloonCtrl - ${CHMOD} 0711 ${PREFIX}/lib/virtualbox/${f} + ${INSTALL_PROGRAM} ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/${f} ${STAGEDIR}${PREFIX}/lib/virtualbox/ + ${LN} -sf ${PREFIX}/lib/virtualbox/${f} ${STAGEDIR}${PREFIX}/bin/ .endfor .if ${PORT_OPTIONS:MVNC} - ${MKDIR} ${PREFIX}/lib/virtualbox/ExtensionPacks - ${CP} -a ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/ExtensionPacks/VNC ${PREFIX}/lib/virtualbox/ExtensionPacks + ${MKDIR} ${STAGEDIR}${PREFIX}/lib/virtualbox/ExtensionPacks/VNC/${KMK_ARCH} + ${INSTALL_DATA} ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/ExtensionPacks/VNC/ExtPack* ${STAGEDIR}${PREFIX}/lib/virtualbox/ExtensionPacks/VNC/ + ${INSTALL_LIB} ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/ExtensionPacks/VNC/${KMK_ARCH}/* ${STAGEDIR}${PREFIX}/lib/virtualbox/ExtensionPacks/VNC/${KMK_ARCH}/ .endif .if ${PORT_OPTIONS:MWEBSERVICE} - ${MKDIR} ${DATADIR}/sdk/bindings/webservice + ${MKDIR} ${STAGEDIR}${DATADIR}/sdk/bindings/webservice .for f in vboxweb.wsdl - ${INSTALL_DATA} ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/obj/webservice/${f} ${DATADIR}/sdk/bindings/webservice/ + ${INSTALL_DATA} ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/obj/webservice/${f} ${STAGEDIR}${DATADIR}/sdk/bindings/webservice/ .endfor .endif .if ${PORT_OPTIONS:MGUESTADDITIONS} - ${MKDIR} ${PREFIX}/lib/virtualbox/additions - ${INSTALL_DATA} ${DISTDIR}/${GUESTADDITIONS} ${PREFIX}/lib/virtualbox/additions/ - ${LN} -sf ${PREFIX}/lib/virtualbox/additions/${GUESTADDITIONS} ${PREFIX}/lib/virtualbox/additions/VBoxGuestAdditions.iso + ${MKDIR} ${STAGEDIR}${PREFIX}/lib/virtualbox/additions + ${INSTALL_DATA} ${DISTDIR}/${GUESTADDITIONS} ${STAGEDIR}${PREFIX}/lib/virtualbox/additions/ + ${LN} -sf ${PREFIX}/lib/virtualbox/additions/${GUESTADDITIONS} ${STAGEDIR}${PREFIX}/lib/virtualbox/additions/VBoxGuestAdditions.iso .endif .if ${PORT_OPTIONS:MPYTHON} cd ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/sdk/installer && \ - VBOX_INSTALL_PATH="${PREFIX}/lib/virtualbox" ${PYTHON_CMD} vboxapisetup.py install + ${SETENV} VBOX_INSTALL_PATH="${PREFIX}/lib/virtualbox" \ + ${PYTHON_CMD} vboxapisetup.py install --root=${STAGEDIR} - @${MKDIR} ${PYTHON_SITELIBDIR} - (cd ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/sdk/bindings/xpcom/python && ${COPYTREE_SHARE} "*" ${PYTHON_SITELIBDIR}) - ${PYTHON_CMD} -mcompileall ${PYTHON_SITELIBDIR}/xpcom/ + @${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR} + cd ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/sdk/bindings/xpcom/python && ${COPYTREE_SHARE} "*" ${STAGEDIR}${PYTHON_SITELIBDIR} + ${PYTHON_CMD} -mcompileall ${STAGEDIR}${PYTHON_SITELIBDIR}/xpcom/ .endif -post-install: -.for f in VBoxManage VBoxNetDHCP VBoxSVC VBoxXPCOMIPCD VBoxExtPackHelperApp VBoxBalloonCtrl ${VBOX_FRONTENDS} - ${CHOWN} root:${VBOXGROUP} ${PREFIX}/lib/virtualbox/${f} -.endfor - - @${FIND} ${DATADIR} -type d -print0 | ${XARGS} -0 ${CHMOD} 755 - @${FIND} ${PREFIX}/include/virtualbox -type d -print0 | ${XARGS} -0 ${CHMOD} 755 - @${FIND} ${PREFIX}/lib/virtualbox -type d -print0 | ${XARGS} -0 ${CHMOD} 755 - .if ${PORT_OPTIONS:MQT4} - ${MKDIR} ${PREFIX}/share/pixmaps/ - ${INSTALL_DATA} ${WRKSRC}/src/VBox/Frontends/VirtualBox/images/OSE/VirtualBox_48px.png ${PREFIX}/share/pixmaps/VBox.png - ${MKDIR} ${PREFIX}/share/applications/ - ${INSTALL_DATA} ${WRKSRC}/src/VBox/Installer/freebsd/virtualbox.desktop ${PREFIX}/share/applications/virtualbox.desktop + ${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 - @${CAT} ${PKGMESSAGE} .include <bsd.port.post.mk> diff --git a/emulators/virtualbox-ose/distinfo b/emulators/virtualbox-ose/distinfo index 8eda22d67cee..50082a66d3fa 100644 --- a/emulators/virtualbox-ose/distinfo +++ b/emulators/virtualbox-ose/distinfo @@ -1,4 +1,4 @@ -SHA256 (VirtualBox-4.3.6.tar.bz2) = c547e1e32e0b06fba9ee4ca7842f8ddee8e94c64aab17c2b0d0793f0caccbb27 -SIZE (VirtualBox-4.3.6.tar.bz2) = 89609199 -SHA256 (VBoxGuestAdditions_4.3.6.iso) = 95648fcdb5d028e64145a2fe2f2f28c946d219da366389295a61fed296ca79f0 -SIZE (VBoxGuestAdditions_4.3.6.iso) = 64161792 +SHA256 (VirtualBox-4.3.8.tar.bz2) = ffabd8735bdc80753cec29d01b499769f41e083f37a3f58b3055f19d3b1b9641 +SIZE (VirtualBox-4.3.8.tar.bz2) = 90224116 +SHA256 (VBoxGuestAdditions_4.3.8.iso) = a1e58f3a15cab81b82424c6382a490bb02377d78d537a57538692fa83ce448c7 +SIZE (VBoxGuestAdditions_4.3.8.iso) = 64540672 diff --git a/emulators/virtualbox-ose-kmod/files/extrapatch-Config.kmk b/emulators/virtualbox-ose/files/extrapatch-Config.kmk index 7df1b0883f27..7df1b0883f27 100644 --- a/emulators/virtualbox-ose-kmod/files/extrapatch-Config.kmk +++ b/emulators/virtualbox-ose/files/extrapatch-Config.kmk diff --git a/emulators/virtualbox-ose-kmod/files/extrapatch-src-VBox-HostDrivers-Support-freebsd-Makefile b/emulators/virtualbox-ose/files/extrapatch-src-VBox-HostDrivers-Support-freebsd-Makefile index 67361da543f7..67361da543f7 100644 --- a/emulators/virtualbox-ose-kmod/files/extrapatch-src-VBox-HostDrivers-Support-freebsd-Makefile +++ b/emulators/virtualbox-ose/files/extrapatch-src-VBox-HostDrivers-Support-freebsd-Makefile diff --git a/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c new file mode 100644 index 000000000000..269546e610d5 --- /dev/null +++ b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c @@ -0,0 +1,255 @@ +--- src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c.orig 2014-02-25 12:00:25.000000000 -0500 ++++ src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c 2014-03-01 03:23:16.000000000 -0500 +@@ -89,8 +89,7 @@ + /* + * Character device file handlers. + */ +-static d_fdopen_t VBoxGuestFreeBSDOpen; +-static d_close_t VBoxGuestFreeBSDClose; ++static d_open_t VBoxGuestFreeBSDOpen; + static d_ioctl_t VBoxGuestFreeBSDIOCtl; + static d_write_t VBoxGuestFreeBSDWrite; + static d_read_t VBoxGuestFreeBSDRead; +@@ -121,8 +120,7 @@ + { + .d_version = D_VERSION, + .d_flags = D_TRACKCLOSE | D_NEEDMINOR, +- .d_fdopen = VBoxGuestFreeBSDOpen, +- .d_close = VBoxGuestFreeBSDClose, ++ .d_open = VBoxGuestFreeBSDOpen, + .d_ioctl = VBoxGuestFreeBSDIOCtl, + .d_read = VBoxGuestFreeBSDRead, + .d_write = VBoxGuestFreeBSDWrite, +@@ -130,106 +128,45 @@ + .d_name = DEVICE_NAME + }; + ++/** 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_pVBoxGuestFreeBSDClones; +-/** The dev_clone event handler tag. */ +-static eventhandler_tag g_VBoxGuestFreeBSDEHTag; + /** Reference counter */ + static volatile uint32_t cUsers; + /** selinfo structure used for polling. */ + static struct selinfo g_SelInfo; + +-/** +- * DEVFS event handler. +- */ +-static void VBoxGuestFreeBSDClone(void *pvArg, struct ucred *pCred, char *pszName, int cchName, struct cdev **ppDev) ++static void VBoxGuestFreeBSDDtr(void *pSession) + { +- int iUnit; +- int rc; +- +- Log(("VBoxGuestFreeBSDClone: pszName=%s ppDev=%p\n", pszName, ppDev)); +- +- /* +- * One device node per user, si_drv1 points to the session. +- * /dev/vboxguest<N> 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(("VBoxGuestFreeBSDClone: iUnit=%d >= 256 - rejected\n", iUnit)); +- return; +- } +- +- Log(("VBoxGuestFreeBSDClone: pszName=%s iUnit=%d\n", pszName, iUnit)); +- +- rc = clone_create(&g_pVBoxGuestFreeBSDClones, &g_VBoxGuestFreeBSDChrDevSW, &iUnit, ppDev, 0); +- Log(("VBoxGuestFreeBSDClone: clone_create -> %d; iUnit=%d\n", rc, iUnit)); +- if (rc) +- { +- *ppDev = make_dev(&g_VBoxGuestFreeBSDChrDevSW, +- iUnit, +- UID_ROOT, +- GID_WHEEL, +- 0664, +- "vboxguest%d", iUnit); +- if (*ppDev) +- { +- dev_ref(*ppDev); +- (*ppDev)->si_flags |= SI_CHEAPCLONE; +- Log(("VBoxGuestFreeBSDClone: 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(("VBoxGuestFreeBSDClone: make_dev iUnit=%d failed\n", iUnit)); +- } +- else +- Log(("VBoxGuestFreeBSDClone: Existing *ppDev=%p iUnit=%d si_drv1=%p si_drv2=%p\n", +- *ppDev, iUnit, (*ppDev)->si_drv1, (*ppDev)->si_drv2)); ++ VBoxGuestCloseSession(&g_DevExt, pSession); ++ ASMAtomicDecU32(&cUsers); + } + + /** + * File open handler + * + */ +-#if __FreeBSD_version >= 700000 +-static int VBoxGuestFreeBSDOpen(struct cdev *pDev, int fOpen, struct thread *pTd, struct file *pFd) +-#else +-static int VBoxGuestFreeBSDOpen(struct cdev *pDev, int fOpen, struct thread *pTd) +-#endif ++static int VBoxGuestFreeBSDOpen(struct cdev *pDev, int fOpen, int DevType, struct thread *pTd) + { +- int rc; +- PVBOXGUESTSESSION pSession; ++ PVBOXGUESTSESSION pSession; ++ int rc; + + LogFlow((DEVICE_NAME ":VBoxGuestFreeBSDOpen\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 = VBoxGuestCreateUserSession(&g_DevExt, &pSession); + if (RT_SUCCESS(rc)) + { +- if (ASMAtomicCmpXchgPtr(&pDev->si_drv1, pSession, (void *)0x42)) +- { +- Log((DEVICE_NAME ":VBoxGuestFreeBSDOpen success: g_DevExt=%p pSession=%p rc=%d pid=%d\n", &g_DevExt, pSession, rc, (int)RTProcSelf())); ++ Log((DEVICE_NAME ":VBoxGuestFreeBSDOpen success: g_DevExt=%p pSession=%p rc=%d pid=%d\n", &g_DevExt, pSession, rc, (int)RTProcSelf())); ++ rc = devfs_set_cdevpriv(pSession, VBoxGuestFreeBSDDtr); ++ if (rc) ++ VBoxGuestCloseSession(&g_DevExt, pSession); ++ else + ASMAtomicIncU32(&cUsers); +- return 0; +- } +- +- VBoxGuestCloseSession(&g_DevExt, pSession); ++ return rc; + } + + LogRel((DEVICE_NAME ":VBoxGuestFreeBSDOpen: failed. rc=%d\n", rc)); +@@ -237,47 +174,19 @@ + } + + /** +- * File close handler +- * +- */ +-static int VBoxGuestFreeBSDClose(struct cdev *pDev, int fFile, int DevType, struct thread *pTd) +-{ +- PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)pDev->si_drv1; +- Log(("VBoxGuestFreeBSDClose: fFile=%#x pSession=%p\n", fFile, pSession)); +- +- /* +- * Close the session if it's still hanging on to the device... +- */ +- if (VALID_PTR(pSession)) +- { +- VBoxGuestCloseSession(&g_DevExt, pSession); +- if (!ASMAtomicCmpXchgPtr(&pDev->si_drv1, NULL, pSession)) +- Log(("VBoxGuestFreeBSDClose: 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(("VBoxGuestFreeBSDClose: si_drv1=%p!\n", pSession)); +- return 0; +-} +- +-/** + * IOCTL handler + * + */ + static int VBoxGuestFreeBSDIOCtl(struct cdev *pDev, u_long ulCmd, caddr_t pvData, int fFile, struct thread *pTd) + { +- LogFlow((DEVICE_NAME ":VBoxGuestFreeBSDIOCtl\n")); ++ PVBOXGUESTSESSION pSession; ++ int rc; + +- int rc = 0; ++ LogFlow((DEVICE_NAME ":VBoxGuestFreeBSDIOCtl\n")); + +- /* +- * Validate the input. +- */ +- PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)pDev->si_drv1; +- if (RT_UNLIKELY(!VALID_PTR(pSession))) +- return EINVAL; ++ rc = devfs_get_cdevpriv((void **)&pSession); ++ if (rc) ++ return rc; + + /* + * Validate the request wrapper. +@@ -361,12 +270,14 @@ + + static int VBoxGuestFreeBSDPoll (struct cdev *pDev, int fEvents, struct thread *td) + { +- int fEventsProcessed; ++ PVBOXGUESTSESSION pSession; ++ int fEventsProcessed, rc; + + LogFlow((DEVICE_NAME "::Poll: 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((DEVICE_NAME "::Poll: no state data for %s\n", devtoname(pDev))); + return (fEvents & (POLLHUP|POLLIN|POLLRDNORM|POLLOUT|POLLWRNORM)); + } +@@ -407,10 +318,7 @@ + /* + * Reverse what we did in VBoxGuestFreeBSDAttach. + */ +- if (g_VBoxGuestFreeBSDEHTag != NULL) +- EVENTHANDLER_DEREGISTER(dev_clone, g_VBoxGuestFreeBSDEHTag); +- +- clone_cleanup(&g_pVBoxGuestFreeBSDClones); ++ destroy_dev(g_pDev); + + VBoxGuestFreeBSDRemoveIRQ(pDevice, pState); + +@@ -562,18 +470,21 @@ + if (RT_SUCCESS(rc)) + { + /* +- * Configure device cloning. ++ * Configure device. + */ +- clone_setup(&g_pVBoxGuestFreeBSDClones); +- g_VBoxGuestFreeBSDEHTag = EVENTHANDLER_REGISTER(dev_clone, VBoxGuestFreeBSDClone, 0, 1000); +- if (g_VBoxGuestFreeBSDEHTag) ++ g_pDev = make_dev(&g_VBoxGuestFreeBSDChrDevSW, ++ 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_pVBoxGuestFreeBSDClones); ++ printf(DEVICE_NAME ": make_dev failed\n"); + VBoxGuestFreeBSDRemoveIRQ(pDevice, pState); + } + else diff --git a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile index ed9f2b80ce46..ed9f2b80ce46 100644 --- a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile +++ b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile diff --git a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-files_vboxguest b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-files_vboxguest index cde44a17359a..cde44a17359a 100644 --- a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-files_vboxguest +++ b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-files_vboxguest diff --git a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Additions-common-VBoxGuestLib-Makefile.kmk b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuestLib-Makefile.kmk index 71e85c9b2012..71e85c9b2012 100644 --- a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Additions-common-VBoxGuestLib-Makefile.kmk +++ b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-common-VBoxGuestLib-Makefile.kmk diff --git a/emulators/virtualbox-ose/files/patch-src-VBox-Additions-freebsd-Makefile b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-freebsd-Makefile new file mode 100644 index 000000000000..0908c1b15eb2 --- /dev/null +++ b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-freebsd-Makefile @@ -0,0 +1,19 @@ +--- src/VBox/Additions/freebsd/Makefile.orig 2014-02-25 12:00:30.000000000 -0500 ++++ src/VBox/Additions/freebsd/Makefile 2014-03-03 15:27:32.000000000 -0500 +@@ -19,14 +19,14 @@ + + all: + @echo "*** Building 'vboxguest' module ***" +- @$(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxguest ++ @$(MAKE) CC=cc LDFLAGS= KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxguest + @if [ -f vboxguest/vboxguest.ko ]; then \ + cp vboxguest/vboxguest.ko .; \ + fi + @echo + @if [ -d vboxvfs ]; then \ + echo "*** Building 'vboxvfs' module ***"; \ +- $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxvfs; \ ++ $(MAKE) CC=cc LDFLAGS= KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxvfs; \ + if [ -f vboxvfs/vboxvfs.ko ]; then \ + cp vboxvfs/vboxvfs.ko .; \ + fi; \ diff --git a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Additions-x11-Installer-98vboxadd-xclient b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-x11-Installer-98vboxadd-xclient index edb9514f95c5..edb9514f95c5 100644 --- a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Additions-x11-Installer-98vboxadd-xclient +++ b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-x11-Installer-98vboxadd-xclient diff --git a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Additions-x11-Installer-vboxclient.desktop b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-x11-Installer-vboxclient.desktop index fadd31bc4d48..fadd31bc4d48 100644 --- a/emulators/virtualbox-ose-additions/files/patch-src-VBox-Additions-x11-Installer-vboxclient.desktop +++ b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-x11-Installer-vboxclient.desktop diff --git a/emulators/virtualbox-ose/files/patch-src-VBox-Additions-x11-vboxvideo-Makefile.kmk b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-x11-vboxvideo-Makefile.kmk new file mode 100644 index 000000000000..7f5ea7b042dc --- /dev/null +++ b/emulators/virtualbox-ose/files/patch-src-VBox-Additions-x11-vboxvideo-Makefile.kmk @@ -0,0 +1,138 @@ +--- src/VBox/Additions/x11/vboxvideo/Makefile.kmk.orig 2014-02-25 12:00:33.000000000 -0500 ++++ src/VBox/Additions/x11/vboxvideo/Makefile.kmk 2014-02-26 16:10:28.000000000 -0500 +@@ -33,7 +33,7 @@ + vboxvideo_13_DEFS := $(vboxvideo_70_DEFS) VBOXVIDEO_13 + vboxvideo_15_DEFS := \ + $(vboxvideo_13_DEFS) NO_ANSIC PCIACCESS XSERVER_LIBPCIACCESS +-if1of ($(KBUILD_TARGET), linux solaris) ++if1of ($(KBUILD_TARGET), freebsd linux solaris) + vboxvideo_15_DEFS += \ + VBOX_DRI + endif +@@ -198,7 +198,7 @@ + vboxvideo_drv_15_TEMPLATE = VBOXGUESTR3XORGMOD + vboxvideo_drv_15_CFLAGS := $(vboxvideo_drv_70_CFLAGS) + vboxvideo_drv_15_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=100503000 +-if1of ($(KBUILD_TARGET), linux solaris) ++if1of ($(KBUILD_TARGET), freebsd linux solaris) + vboxvideo_drv_15_DEFS += \ + VBOX_DRI_OLD + endif +@@ -207,7 +207,7 @@ + $(VBOX_PATH_X11_ROOT)/xorg-server-1.5.3 + vboxvideo_drv_15_INCS += $(PATH_ROOT)/src/VBox/Runtime/include + vboxvideo_drv_15_SOURCES = $(vboxvideo_drv_13_SOURCES) +-if1of ($(KBUILD_TARGET), linux solaris) ++if1of ($(KBUILD_TARGET), freebsd linux solaris) + vboxvideo_drv_15_SOURCES += \ + vboxvideo_dri.c + endif +@@ -220,7 +220,7 @@ + vboxvideo_drv_16_TEMPLATE = VBOXGUESTR3XORGMOD + vboxvideo_drv_16_CFLAGS := $(vboxvideo_drv_70_CFLAGS) + vboxvideo_drv_16_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=100600000 +-if1of ($(KBUILD_TARGET), linux solaris) ++if1of ($(KBUILD_TARGET), freebsd linux solaris) + vboxvideo_drv_16_DEFS += \ + VBOX_DRI_OLD + endif +@@ -238,11 +238,19 @@ + vboxvideo_drv_17_TEMPLATE = VBOXGUESTR3XORGMOD + vboxvideo_drv_17_CFLAGS := $(vboxvideo_drv_70_CFLAGS) + vboxvideo_drv_17_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=100699000 ++if1of ($(KBUILD_TARGET), freebsd) ++ vboxvideo_drv_17_DEFS += \ ++ VBOX_DRI_OLD ++endif + vboxvideo_drv_17_INCS = \ + $(vboxvideo_xorg_INCS) \ + $(VBOX_PATH_X11_ROOT)/xorg-server-1.7.7 + vboxvideo_drv_17_INCS += $(PATH_ROOT)/src/VBox/Runtime/include + vboxvideo_drv_17_SOURCES := $(vboxvideo_drv_13_SOURCES) ++if1of ($(KBUILD_TARGET), freebsd) ++ vboxvideo_drv_17_SOURCES += \ ++ vboxvideo_dri.c ++endif + if1of ($(KBUILD_TARGET), linux solaris) + vboxvideo_drv_17_SOURCES += \ + vboxvideo_dri2.c +@@ -256,6 +264,10 @@ + vboxvideo_drv_18_TEMPLATE = VBOXGUESTR3XORGMOD + vboxvideo_drv_18_CFLAGS := $(vboxvideo_drv_70_CFLAGS) + vboxvideo_drv_18_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=100800000 ++if1of ($(KBUILD_TARGET), freebsd) ++ vboxvideo_drv_18_DEFS += \ ++ VBOX_DRI_OLD ++endif + vboxvideo_drv_18_INCS = \ + $(vboxvideo_xorg_INCS) \ + $(VBOX_PATH_X11_ROOT)/xorg-server-1.8.0 +@@ -270,6 +282,10 @@ + vboxvideo_drv_19_TEMPLATE = VBOXGUESTR3XORGMOD + vboxvideo_drv_19_CFLAGS := $(vboxvideo_drv_70_CFLAGS) + vboxvideo_drv_19_DEFS := $(vboxvideo_15_DEFS) XORG_VERSION_CURRENT=100900000 ++if1of ($(KBUILD_TARGET), freebsd) ++ vboxvideo_drv_19_DEFS += \ ++ VBOX_DRI_OLD ++endif + vboxvideo_drv_19_INCS = \ + $(vboxvideo_xorg_INCS) \ + $(VBOX_PATH_X11_ROOT)/xorg-server-1.9.0 +@@ -288,7 +304,11 @@ + $(vboxvideo_xorg_INCS) \ + $(VBOX_PATH_X11_ROOT)/xorg-server-1.10.0 + vboxvideo_drv_110_INCS += $(PATH_ROOT)/src/VBox/Runtime/include +-vboxvideo_drv_110_SOURCES := $(vboxvideo_drv_17_SOURCES) ++vboxvideo_drv_110_SOURCES := $(vboxvideo_drv_13_SOURCES) ++if1of ($(KBUILD_TARGET), freebsd linux solaris) ++ vboxvideo_drv_110_SOURCES += \ ++ vboxvideo_dri2.c ++endif + + + # +@@ -302,7 +322,7 @@ + $(vboxvideo_xorg_INCS) \ + $(VBOX_PATH_X11_ROOT)/xorg-server-1.11.0 + vboxvideo_drv_111_INCS += $(PATH_ROOT)/src/VBox/Runtime/include +-vboxvideo_drv_111_SOURCES := $(vboxvideo_drv_17_SOURCES) ++vboxvideo_drv_111_SOURCES := $(vboxvideo_drv_110_SOURCES) + + + # +@@ -316,7 +336,7 @@ + $(vboxvideo_xorg_INCS) \ + $(VBOX_PATH_X11_ROOT)/xorg-server-1.12.0 + vboxvideo_drv_112_INCS += $(PATH_ROOT)/src/VBox/Runtime/include +-vboxvideo_drv_112_SOURCES := $(vboxvideo_drv_17_SOURCES) ++vboxvideo_drv_112_SOURCES := $(vboxvideo_drv_110_SOURCES) + + + # +@@ -330,7 +350,7 @@ + $(vboxvideo_xorg_INCS) \ + $(VBOX_PATH_X11_ROOT)/xorg-server-1.13.0 + vboxvideo_drv_113_INCS += $(PATH_ROOT)/src/VBox/Runtime/include +-vboxvideo_drv_113_SOURCES := $(vboxvideo_drv_17_SOURCES) ++vboxvideo_drv_113_SOURCES := $(vboxvideo_drv_110_SOURCES) + + + # +@@ -344,7 +364,7 @@ + $(vboxvideo_xorg_INCS) \ + $(VBOX_PATH_X11_ROOT)/xorg-server-1.14.0 + vboxvideo_drv_114_INCS += $(PATH_ROOT)/src/VBox/Runtime/include +-vboxvideo_drv_114_SOURCES := $(vboxvideo_drv_17_SOURCES) ++vboxvideo_drv_114_SOURCES := $(vboxvideo_drv_110_SOURCES) + + + # +@@ -358,7 +378,7 @@ + $(vboxvideo_xorg_INCS) \ + $(VBOX_PATH_X11_ROOT)/xorg-server-1.15.0 + vboxvideo_drv_115_INCS += $(PATH_ROOT)/src/VBox/Runtime/include +-vboxvideo_drv_115_SOURCES := $(vboxvideo_drv_17_SOURCES) ++vboxvideo_drv_115_SOURCES := $(vboxvideo_drv_110_SOURCES) + + + ifdef VBOX_USE_SYSTEM_XORG_HEADERS diff --git a/emulators/virtualbox-ose/files/patch-src-VBox-Devices-Network-slirp-resolv_conf_parser.c b/emulators/virtualbox-ose/files/patch-src-VBox-Devices-Network-slirp-resolv_conf_parser.c new file mode 100644 index 000000000000..0248be948790 --- /dev/null +++ b/emulators/virtualbox-ose/files/patch-src-VBox-Devices-Network-slirp-resolv_conf_parser.c @@ -0,0 +1,11 @@ +--- src/VBox/Devices/Network/slirp/resolv_conf_parser.c.orig 2014-01-30 22:19:47.429683181 +0400 ++++ src/VBox/Devices/Network/slirp/resolv_conf_parser.c 2014-01-30 22:22:08.149672985 +0400 +@@ -15,6 +15,8 @@ + * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. + */ + ++#include <sys/socket.h> ++ + #include <iprt/assert.h> + #include <iprt/initterm.h> + #include <iprt/net.h> diff --git a/emulators/virtualbox-ose-kmod/files/patch-src-VBox-HostDrivers-Support-freebsd-Makefile b/emulators/virtualbox-ose/files/patch-src-VBox-HostDrivers-Support-freebsd-Makefile index 56fa83e858e0..56fa83e858e0 100644 --- a/emulators/virtualbox-ose-kmod/files/patch-src-VBox-HostDrivers-Support-freebsd-Makefile +++ b/emulators/virtualbox-ose/files/patch-src-VBox-HostDrivers-Support-freebsd-Makefile diff --git a/emulators/virtualbox-ose-kmod/files/patch-src-VBox-HostDrivers-VBoxNetAdp-Makefile.kmk b/emulators/virtualbox-ose/files/patch-src-VBox-HostDrivers-VBoxNetAdp-Makefile.kmk index 01d25b3ac02a..01d25b3ac02a 100644 --- a/emulators/virtualbox-ose-kmod/files/patch-src-VBox-HostDrivers-VBoxNetAdp-Makefile.kmk +++ b/emulators/virtualbox-ose/files/patch-src-VBox-HostDrivers-VBoxNetAdp-Makefile.kmk diff --git a/emulators/virtualbox-ose-kmod/files/patch-src-VBox-HostDrivers-VBoxNetFlt-freebsd-VBoxNetFlt-freebsd.c b/emulators/virtualbox-ose/files/patch-src-VBox-HostDrivers-VBoxNetFlt-freebsd-VBoxNetFlt-freebsd.c index 6cb5a1ebd30c..6cb5a1ebd30c 100644 --- a/emulators/virtualbox-ose-kmod/files/patch-src-VBox-HostDrivers-VBoxNetFlt-freebsd-VBoxNetFlt-freebsd.c +++ b/emulators/virtualbox-ose/files/patch-src-VBox-HostDrivers-VBoxNetFlt-freebsd-VBoxNetFlt-freebsd.c diff --git a/emulators/virtualbox-ose/files/patch-src-VBox-NetworkServices-NAT-VBoxNetLwipNAT.cpp b/emulators/virtualbox-ose/files/patch-src-VBox-NetworkServices-NAT-VBoxNetLwipNAT.cpp new file mode 100644 index 000000000000..aff879d1cd90 --- /dev/null +++ b/emulators/virtualbox-ose/files/patch-src-VBox-NetworkServices-NAT-VBoxNetLwipNAT.cpp @@ -0,0 +1,11 @@ +--- src/VBox/NetworkServices/NAT/VBoxNetLwipNAT.cpp.orig 2014-02-25 12:09:19.000000000 -0500 ++++ src/VBox/NetworkServices/NAT/VBoxNetLwipNAT.cpp 2014-03-03 14:50:41.000000000 -0500 +@@ -73,6 +73,8 @@ + #include <vector> + #include <string> + ++#include <stdio.h> ++ + #include "../NetLib/VBoxNetLib.h" + #include "../NetLib/VBoxNetBaseService.h" + #include "../NetLib/utils.h" diff --git a/emulators/virtualbox-ose-kmod/files/patch-src-VBox-Runtime-r0drv-freebsd-sleepqueue-r0drv-freebsd.h b/emulators/virtualbox-ose/files/patch-src-VBox-Runtime-r0drv-freebsd-sleepqueue-r0drv-freebsd.h index e1ae4d7ea855..e1ae4d7ea855 100644 --- a/emulators/virtualbox-ose-kmod/files/patch-src-VBox-Runtime-r0drv-freebsd-sleepqueue-r0drv-freebsd.h +++ b/emulators/virtualbox-ose/files/patch-src-VBox-Runtime-r0drv-freebsd-sleepqueue-r0drv-freebsd.h diff --git a/emulators/virtualbox-ose/pkg-plist b/emulators/virtualbox-ose/pkg-plist index e9bb8a41cd07..032c2f5a65c8 100644 --- a/emulators/virtualbox-ose/pkg-plist +++ b/emulators/virtualbox-ose/pkg-plist @@ -13,24 +13,48 @@ bin/VBoxXPCOMIPCD %%WEBSERVICE%%bin/webtest lib/virtualbox/DBGCPlugInDiggers.so lib/virtualbox/VBoxAuth.so +@group %%VBOXGROUP%% +@mode 4511 lib/virtualbox/VBoxAutostart +@group +@mode lib/virtualbox/VBoxAuthSimple.so +@group %%VBOXGROUP%% +@mode 0711 lib/virtualbox/VBoxBalloonCtrl +@group +@mode %%QT4%%lib/virtualbox/VBoxDbg.so lib/virtualbox/VBoxDD.so lib/virtualbox/VBoxDD2.so lib/virtualbox/VBoxDDU.so lib/virtualbox/VBoxEFI32.fd lib/virtualbox/VBoxEFI64.fd +@group %%VBOXGROUP%% +@mode 0711 lib/virtualbox/VBoxExtPackHelperApp +@group +@mode lib/virtualbox/VBoxGuestControlSvc.so lib/virtualbox/VBoxGuestPropSvc.so +@group %%VBOXGROUP%% +@mode 4511 lib/virtualbox/VBoxHeadless +@group +@mode lib/virtualbox/VBoxHeadless.so %%X11%%lib/virtualbox/VBoxKeyboard.so +@group %%VBOXGROUP%% +@mode 0711 lib/virtualbox/VBoxManage +@group +@mode +@mode 4511 lib/virtualbox/VBoxNetAdpCtl +@group %%VBOXGROUP%% lib/virtualbox/VBoxNetDHCP +@group +@mode lib/virtualbox/VBoxNetDHCP.so lib/virtualbox/VBoxNetNAT.so %%X11%%lib/virtualbox/VBoxOGLhostcrutil.so @@ -38,13 +62,25 @@ lib/virtualbox/VBoxNetNAT.so %%X11%%lib/virtualbox/VBoxOGLrenderspu.so %%PYTHON%%lib/virtualbox/VBoxPython.so lib/virtualbox/VBoxREM.so +@group %%VBOXGROUP%% +@mode 4511 %%QT4%%lib/virtualbox/VBoxTestOGL +@group +@mode %%I386%%lib/virtualbox/VBoxREM32.so %%I386%%lib/virtualbox/VBoxREM64.so lib/virtualbox/VBoxRT.so +@group %%VBOXGROUP%% +@mode 4511 %%X11%%lib/virtualbox/VBoxSDL +@group +@mode %%X11%%lib/virtualbox/VBoxSDL.so +@group %%VBOXGROUP%% +@mode 0711 lib/virtualbox/VBoxSVC +@group +@mode lib/virtualbox/VBoxSharedClipboard.so %%X11%%lib/virtualbox/VBoxSharedCrOpenGL.so lib/virtualbox/VBoxSharedFolders.so @@ -52,8 +88,16 @@ lib/virtualbox/VBoxVMM.so lib/virtualbox/VBoxVMMPreload.so lib/virtualbox/VBoxXPCOM.so lib/virtualbox/VBoxXPCOMC.so +@group %%VBOXGROUP%% +@mode 0711 lib/virtualbox/VBoxXPCOMIPCD +@group +@mode +@group %%VBOXGROUP%% +@mode 4511 %%QT4%%lib/virtualbox/VirtualBox +@group +@mode %%QT4%%lib/virtualbox/VirtualBox.so lib/virtualbox/VBoxDD2GC.gc lib/virtualbox/VBoxDDGC.gc @@ -615,14 +659,13 @@ include/virtualbox/xpcom/xpcom-config.h @dirrm include/virtualbox/nsprpub @dirrm include/virtualbox/ipcd @dirrm include/virtualbox -%%NLS%%@dirrm %%DATADIR%%/nls %%WEBSERVICE%%@dirrm %%DATADIR%%/sdk/bindings/webservice %%WEBSERVICE%%@dirrm %%DATADIR%%/sdk/bindings %%WEBSERVICE%%@dirrm %%DATADIR%%/sdk @dirrm %%DATADIR%%/samples +%%NLS%%@dirrm %%DATADIR%%/nls @dirrm %%DATADIR%%/idl @dirrm %%DATADIR%% -%%QT4%%@dirrmtry share/applications @dirrm lib/virtualbox/components %%VNC%%@dirrm lib/virtualbox/ExtensionPacks/VNC/%%ARCH%% %%VNC%%@dirrm lib/virtualbox/ExtensionPacks/VNC |