aboutsummaryrefslogtreecommitdiff
path: root/emulators/virtualbox-ose-additions-legacy
diff options
context:
space:
mode:
authorGuido Falsi <madpilot@FreeBSD.org>2021-03-09 18:27:36 +0000
committerGuido Falsi <madpilot@FreeBSD.org>2021-03-09 18:27:36 +0000
commit42d8425b62bb66d04dd01c96d516c11451fd86dd (patch)
treee2c43c73c1351cea5743d20d5dc2626d9bcb2c04 /emulators/virtualbox-ose-additions-legacy
parent82a7880d546383cb6825198f005cf50498300c87 (diff)
downloadports-42d8425b62bb66d04dd01c96d516c11451fd86dd.tar.gz
ports-42d8425b62bb66d04dd01c96d516c11451fd86dd.zip
- Update VirtualBox OSE to 6.1.18
- Old VirtualBox OSE 5.2.44 preserved as "-legacy" versions of the ports (repocopied) - Add back extra patch removed in r528258, actually required to build DEBUG kmod - Correctly define WITH_DEBUG when enabling the DEBUG option, so binaries are not stripped Please note that this new version supports only amd64 CPUs. If you need to use older hardware please install the legacy ports. Note that moving VM snapshots across major updates is unsupported, it's strongly suggested to properly shutdown VMs before upgrading, please check UPDATING for further details. This update is the result of work from many people, and thanks to all who gave feedback and tested things. Patch based on work from: Mario Lobo <lobo@bsd.com.br> and jkim. PR: 234878 Submitted by: kunda <chitty_cloud@me.com> Approved by: vbox (implicit) Reviewed by: decke Tested by: jwb, martin ilavsky <ilavsky.martin@gmail.com>, Mario Lobo <lobo@bsd.com.br> Relnotes: https://www.virtualbox.org/wiki/Changelog-6.1 Differential Revision: https://reviews.freebsd.org/D28871
Notes
Notes: svn path=/head/; revision=567950
Diffstat (limited to 'emulators/virtualbox-ose-additions-legacy')
-rw-r--r--emulators/virtualbox-ose-additions-legacy/Makefile174
-rw-r--r--emulators/virtualbox-ose-additions-legacy/distinfo3
-rw-r--r--emulators/virtualbox-ose-additions-legacy/files/vboxguest.in67
-rw-r--r--emulators/virtualbox-ose-additions-legacy/files/vboxservice.in25
-rw-r--r--emulators/virtualbox-ose-additions-legacy/files/vboxvideo.conf5
-rw-r--r--emulators/virtualbox-ose-additions-legacy/pkg-descr9
-rw-r--r--emulators/virtualbox-ose-additions-legacy/pkg-message23
-rw-r--r--emulators/virtualbox-ose-additions-legacy/pkg-plist12
8 files changed, 318 insertions, 0 deletions
diff --git a/emulators/virtualbox-ose-additions-legacy/Makefile b/emulators/virtualbox-ose-additions-legacy/Makefile
new file mode 100644
index 000000000000..80da0c5920e1
--- /dev/null
+++ b/emulators/virtualbox-ose-additions-legacy/Makefile
@@ -0,0 +1,174 @@
+# Created by: Bernhard Froehlich <decke@bluelife.at>
+# $FreeBSD$
+
+PORTNAME= virtualbox-ose
+PORTVERSION= 5.2.44
+PORTREVISION= 3
+CATEGORIES= emulators
+MASTER_SITES= https://download.oracle.com/virtualbox/${PORTVERSION}/
+PKGNAMESUFFIX?= -additions-legacy
+DISTNAME= VirtualBox-${PORTVERSION}
+
+MAINTAINER= vbox@FreeBSD.org
+COMMENT= VirtualBox additions for FreeBSD guests
+
+LICENSE= GPLv2
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+ONLY_FOR_ARCHS= amd64 i386
+USES= compiler:c++11-lang cpe iconv kmod tar:bzip2
+USE_RC_SUBR= vboxguest vboxservice
+
+BUILD_DEPENDS= yasm:devel/yasm \
+ kmk:devel/kBuild \
+ xsltproc:textproc/libxslt
+
+CPE_VENDOR= oracle
+CPE_PRODUCT= vm_virtualbox
+
+PATCHDIR= ${.CURDIR}/../${PORTNAME}-legacy/files
+WRKSRC= ${WRKDIR}/VirtualBox-${PORTVERSION}
+MAKE_JOBS_UNSAFE= yes
+
+HAS_CONFIGURE= yes
+CONFIGURE_ARGS+= --disable-alsa \
+ --disable-docs \
+ --disable-libvpx \
+ --disable-opengl \
+ --disable-pulse \
+ --disable-python \
+ --disable-sdl-ttf \
+ --disable-xpcom
+CONFIGURE_ARGS+= --nofatal --with-gcc="${CC}" --with-g++="${CXX}"
+
+CONFLICTS_INSTALL= virtualbox-ose-[0-9]* \
+ virtualbox-ose-additions-devel-[0-9]* \
+ virtualbox-ose-devel-[0-9]* \
+ virtualbox-ose-[0-9]* \
+ virtualbox-ose-lite-[0-9]* \
+ virtualbox-ose-nox11-[0-9]*
+
+OPTIONS_DEFINE= DBUS DEBUG X11
+OPTIONS_DEFAULT= DBUS X11
+OPTIONS_SUB= yes
+
+DBUS_CONFIGURE_OFF= --disable-dbus
+DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus
+DEBUG_CONFIGURE_ON= --build-debug
+DEBUG_VARS= KMK_BUILDTYPE=debug
+DEBUG_VARS_OFF= KMK_BUILDTYPE=release
+X11_BUILD_DEPENDS= ${LOCALBASE}/include/xorg/compiler.h:x11-servers/xorg-server
+X11_RUN_DEPENDS= xrandr:x11/xrandr
+X11_USE= XORG=x11,xcursor,xext,xorgproto,xmu,xrandr,xt
+X11_USES= pkgconfig xorg
+X11_VARS= VBOX_WITH_X11=1
+
+.include <bsd.port.options.mk>
+
+.if ${SLAVE_PORT} == no
+CONFLICTS_INSTALL+= virtualbox-ose-additions-nox11-[0-9]*
+.else
+CONFLICTS_INSTALL+= virtualbox-ose-additions-[0-9]*
+.endif
+
+VIDEODIR= ${PREFIX}/lib/xorg/modules/drivers
+INPUTDIR= ${PREFIX}/lib/xorg/modules/input
+
+VBOX_BIN= ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/additions
+VBOX_SBINS= VBoxControl \
+ VBoxService \
+ mount_vboxvfs
+
+BUILD_WRKSRC= ${VBOX_BIN}/src
+
+KMK_ARCH= freebsd.${ARCH:S/i386/x86/}
+KMK_CONFIG+= VBOX_LIBPATH_X11=${LOCALBASE} VBOX_FREEBSD_SRC=${SRC_BASE}/sys
+
+.if ${PORT_OPTIONS:MX11}
+.else
+VBOX_WITH_X11=
+.endif
+
+.include <bsd.port.pre.mk>
+
+.if ${COMPILER_TYPE} == clang
+.if ${COMPILER_FEATURES:Mlibc++}
+EXTRA_PATCHES+= ${PATCHDIR}/extrapatch-src-VBox-Additions-x11-VBoxClient-Makefile.kmk
+.endif
+.endif
+
+post-patch:
+ @${ECHO_CMD} 'VBOX_ONLY_ADDITIONS = 1' > ${WRKSRC}/LocalConfig.kmk
+ @${ECHO_CMD} 'VBOX_WITH_DRAG_AND_DROP = ${VBOX_WITH_X11}' >> \
+ ${WRKSRC}/LocalConfig.kmk
+ @${ECHO_CMD} 'VBOX_WITH_DRAG_AND_DROP_GH = ${VBOX_WITH_X11}' >> \
+ ${WRKSRC}/LocalConfig.kmk
+ @${ECHO_CMD} 'VBOX_WITH_X11_ADDITIONS = ${VBOX_WITH_X11}' >> \
+ ${WRKSRC}/LocalConfig.kmk
+ @${ECHO_CMD} 'VBOX_GCC_std = -std=c++11' >> ${WRKSRC}/LocalConfig.kmk
+.if ${COMPILER_TYPE} == clang
+ @${REINPLACE_CMD} -e 's| -finline-limit=8000||' \
+ -e 's| -fno-merge-constants||' \
+ -e 's| -mpreferred-stack-boundary=2||' ${WRKSRC}/Config.kmk
+.endif
+ @${REINPLACE_CMD} -e 's|/usr/X11|${LOCALBASE}|g' \
+ ${WRKSRC}/src/VBox/Additions/x11/VBoxClient/display.cpp
+ @${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 \
+ ${WRKSRC}/src/VBox/Additions/x11/vboxmouse/Makefile.kmk \
+ ${WRKSRC}/src/VBox/Additions/x11/vboxvideo/Makefile.kmk
+ @${REINPLACE_CMD} \
+ -e 's|\$$KBUILDDIR_BIN/kmk_sed|${LOCALBASE}/bin/kmk_sed|g' \
+ ${WRKSRC}/configure
+.if empty(ICONV_LIB)
+ @${REINPLACE_CMD} -e 's|iconv||' ${WRKSRC}/Config.kmk \
+ ${WRKSRC}/src/VBox/Runtime/Makefile.kmk \
+ ${WRKSRC}/src/VBox/Additions/x11/VBoxClient/Makefile.kmk
+ @${ECHO_CMD} 'VBOX_ICONV_DEFS = LIBICONV_PLUG' >> ${WRKSRC}/LocalConfig.kmk
+.endif
+
+post-patch-X11-on:
+ @${ECHO_CMD} 'VBOX_USE_SYSTEM_XORG_HEADERS = 1' >> \
+ ${WRKSRC}/LocalConfig.kmk
+
+pre-build:
+ cd ${WRKSRC} && ${SH} -c \
+ ". env.sh && ${KMK_CONFIG} ${LOCALBASE}/bin/kmk"
+
+do-install:
+ ${MKDIR} ${STAGEDIR}${KMODDIR}
+ ${INSTALL_KLD} ${VBOX_BIN}/src/vboxguest/vboxguest.ko \
+ ${STAGEDIR}${KMODDIR}
+ ${INSTALL_KLD} ${VBOX_BIN}/vboxvfs.ko ${STAGEDIR}${KMODDIR}
+ ${INSTALL_LIB} ${VBOX_BIN}/pam_vbox.so ${STAGEDIR}${PREFIX}/lib
+ ${INSTALL_PROGRAM} ${VBOX_SBINS:S|^|${VBOX_BIN}/|} \
+ ${STAGEDIR}${PREFIX}/sbin/
+
+do-install-X11-on:
+ ${INSTALL_PROGRAM} ${VBOX_BIN}/VBoxClient ${STAGEDIR}${PREFIX}/bin/
+ ${INSTALL_SCRIPT} \
+ ${WRKSRC}/src/VBox/Additions/x11/Installer/98vboxadd-xclient \
+ ${STAGEDIR}${PREFIX}/bin/VBoxClient-all
+ # X11 autostart
+ ${MKDIR} ${STAGEDIR}${PREFIX}/etc/xdg/autostart/
+ ${INSTALL_DATA} \
+ ${WRKSRC}/src/VBox/Additions/x11/Installer/vboxclient.desktop \
+ ${STAGEDIR}${PREFIX}/etc/xdg/autostart/
+ # KDE autostart
+ ${MKDIR} ${STAGEDIR}${PREFIX}/share/autostart/
+ ${INSTALL_DATA} \
+ ${WRKSRC}/src/VBox/Additions/x11/Installer/vboxclient.desktop \
+ ${STAGEDIR}${PREFIX}/share/autostart/
+ ${MKDIR} ${STAGEDIR}${VIDEODIR}
+ ${INSTALL_DATA} ${VBOX_BIN}/vboxvideo_drv_system.so \
+ ${STAGEDIR}${VIDEODIR}/vboxvideo_drv.so
+ ${MKDIR} ${STAGEDIR}${INPUTDIR}
+ ${INSTALL_DATA} ${VBOX_BIN}/vboxmouse_drv_system.so \
+ ${STAGEDIR}${INPUTDIR}/vboxmouse_drv.so
+
+.include <bsd.port.post.mk>
diff --git a/emulators/virtualbox-ose-additions-legacy/distinfo b/emulators/virtualbox-ose-additions-legacy/distinfo
new file mode 100644
index 000000000000..ec47b980d44c
--- /dev/null
+++ b/emulators/virtualbox-ose-additions-legacy/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1594821235
+SHA256 (VirtualBox-5.2.44.tar.bz2) = ad83b11cfae2734f7d6f619dd2f8bdada7d33492cd7682fab98cb4053122295e
+SIZE (VirtualBox-5.2.44.tar.bz2) = 124016934
diff --git a/emulators/virtualbox-ose-additions-legacy/files/vboxguest.in b/emulators/virtualbox-ose-additions-legacy/files/vboxguest.in
new file mode 100644
index 000000000000..08f3ef8ebab7
--- /dev/null
+++ b/emulators/virtualbox-ose-additions-legacy/files/vboxguest.in
@@ -0,0 +1,67 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+# PROVIDE: vboxguest
+# REQUIRE: FILESYSTEMS
+# BEFORE: netif
+# KEYWORD: nojail
+
+#
+# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
+# to enable this service:
+#
+# vboxguest_enable (bool): Set to NO by default.
+# Set it to YES to enable vboxguest on startup
+
+. /etc/rc.subr
+
+name="vboxguest"
+rcvar=vboxguest_enable
+start_cmd="vboxguest_start"
+stop_cmd="vboxguest_stop"
+
+vboxguest_modules="vboxguest:pci/vboxguest"
+
+vboxguest_start()
+{
+ local _k _m
+
+ for _m in ${vboxguest_modules}; do
+ _k=${_m%:*}
+ _m=${_m#*:}
+ if ! kldstat -q -m ${_m}; then
+ if ! kldload ${_k} > /dev/null 2>&1; then
+ warn "Can't load ${_k} module."
+ return 1
+ fi
+ fi
+ done
+}
+
+vboxguest_stop()
+{
+ local _k _m _r
+
+ _r=
+ for _m in ${vboxguest_modules}; do
+ _r="${_m} ${_r}"
+ done
+ for _m in ${_r}; do
+ _k=${_m%:*}
+ _m=${_m#*:}
+ if kldstat -q -m ${_m}; then
+ if ! kldunload ${_k} > /dev/null 2>&1; then
+ warn "Can't unload ${_k} module."
+ return 1
+ fi
+ fi
+ done
+}
+
+load_rc_config $name
+
+: ${vboxguest_enable="NO"}
+
+run_rc_command "$1"
diff --git a/emulators/virtualbox-ose-additions-legacy/files/vboxservice.in b/emulators/virtualbox-ose-additions-legacy/files/vboxservice.in
new file mode 100644
index 000000000000..cb2375868ca9
--- /dev/null
+++ b/emulators/virtualbox-ose-additions-legacy/files/vboxservice.in
@@ -0,0 +1,25 @@
+#!/bin/sh
+
+# $FreeBSD$
+
+# PROVIDE: vboxservice
+# REQUIRE: DAEMON vboxguest
+# BEFORE: LOGIN
+# KEYWORD: shutdown
+
+# Define vboxservice_enable in /etc/rc.conf[.local] to enable it.
+#
+# vboxservice_enable (bool): Set to "NO" by default.
+# Set it to "YES" to enable VBoxService.
+
+. /etc/rc.subr
+
+name="vboxservice"
+rcvar=vboxservice_enable
+command="%%PREFIX%%/sbin/VBoxService"
+
+load_rc_config $name
+
+: ${vboxservice_enable="NO"}
+
+run_rc_command "$1"
diff --git a/emulators/virtualbox-ose-additions-legacy/files/vboxvideo.conf b/emulators/virtualbox-ose-additions-legacy/files/vboxvideo.conf
new file mode 100644
index 000000000000..dd6626429703
--- /dev/null
+++ b/emulators/virtualbox-ose-additions-legacy/files/vboxvideo.conf
@@ -0,0 +1,5 @@
+libEGL.so.1 VBoxEGL.so
+libGL.so.1 VBoxOGL.so
+
+[libglx.so]
+libGL.so.1 libGL.so.1
diff --git a/emulators/virtualbox-ose-additions-legacy/pkg-descr b/emulators/virtualbox-ose-additions-legacy/pkg-descr
new file mode 100644
index 000000000000..e93c940f7f4a
--- /dev/null
+++ b/emulators/virtualbox-ose-additions-legacy/pkg-descr
@@ -0,0 +1,9 @@
+These additions are for installation inside a FreeBSD guest.
+
+VirtualBox is a family of powerful x86 virtualization products for
+enterprise as well as home use. Not only is VirtualBox an extremely
+feature rich, high performance product for enterprise customers, it
+is also the only professional solution that is freely available as
+Open Source Software under the terms of the GNU General Public License.
+
+WWW: https://www.virtualbox.org/
diff --git a/emulators/virtualbox-ose-additions-legacy/pkg-message b/emulators/virtualbox-ose-additions-legacy/pkg-message
new file mode 100644
index 000000000000..e8b5c6a5edfa
--- /dev/null
+++ b/emulators/virtualbox-ose-additions-legacy/pkg-message
@@ -0,0 +1,23 @@
+[
+{ type: install
+ message: <<EOM
+VirtualBox Guest Additions were installed.
+
+
+You need to enable the vboxguest startscript to load the kernel module and
+vboxservice to use host time synchronization.
+
+vboxguest_enable="YES"
+vboxservice_enable="YES"
+
+You also have to add all X11 users that want to use any of the additional
+features (clipboard sharing, window scaling) to the wheel group.
+
+% pw groupmod wheel -m jerry
+
+Reboot the machine to load the needed kernel modules.
+
+For detailed informations please visit http://wiki.freebsd.org/VirtualBox
+EOM
+}
+]
diff --git a/emulators/virtualbox-ose-additions-legacy/pkg-plist b/emulators/virtualbox-ose-additions-legacy/pkg-plist
new file mode 100644
index 000000000000..dac84dc22bcc
--- /dev/null
+++ b/emulators/virtualbox-ose-additions-legacy/pkg-plist
@@ -0,0 +1,12 @@
+%%X11%%bin/VBoxClient
+%%X11%%bin/VBoxClient-all
+%%X11%%etc/xdg/autostart/vboxclient.desktop
+lib/pam_vbox.so
+%%X11%%lib/xorg/modules/drivers/vboxvideo_drv.so
+%%X11%%lib/xorg/modules/input/vboxmouse_drv.so
+sbin/VBoxControl
+sbin/VBoxService
+sbin/mount_vboxvfs
+%%X11%%share/autostart/vboxclient.desktop
+/%%KMODDIR%%/vboxguest.ko
+/%%KMODDIR%%/vboxvfs.ko