diff options
author | Guido Falsi <madpilot@FreeBSD.org> | 2021-03-09 18:27:36 +0000 |
---|---|---|
committer | Guido Falsi <madpilot@FreeBSD.org> | 2021-03-09 18:27:36 +0000 |
commit | 42d8425b62bb66d04dd01c96d516c11451fd86dd (patch) | |
tree | e2c43c73c1351cea5743d20d5dc2626d9bcb2c04 /emulators/virtualbox-ose-additions-legacy | |
parent | 82a7880d546383cb6825198f005cf50498300c87 (diff) | |
download | ports-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')
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 |