diff options
36 files changed, 296 insertions, 1081 deletions
diff --git a/app-emulation/virtualbox-extpack-oracle/Manifest b/app-emulation/virtualbox-extpack-oracle/Manifest index d778d08c..3b03dfeb 100644 --- a/app-emulation/virtualbox-extpack-oracle/Manifest +++ b/app-emulation/virtualbox-extpack-oracle/Manifest @@ -1 +1 @@ -DIST Oracle_VM_VirtualBox_Extension_Pack-5.1.28-117968.tar.gz 19626161 SHA256 1a2551b204bd53a252a75a4653b983427bb15d473bc77b14149c7870ce049871 SHA512 71c6ce267c14303bbd9e386ea849d37aeb569afff848054deced4c74fd6fffca83c96b392d066f684b7101a786cc7d24cf9308114c08cbb77b26bb07bf23fcf8 WHIRLPOOL c6fd42f422dca4db4165ff18da0054aff5c0d275850dec4002fb70e8e4248f8f5cffc87697b0802343ebff29cf62938f298df365f9ce19523092d418206deff9 +DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.4-119785.tar.gz 19465971 SHA256 98e9df4f23212c3de827af9d770b391cf2dba8d21f4de597145512c1479302cd SHA512 97f496c9e3ef63a513c6fc31127459136b2bbef885a277d30c832831f079e3fbe8c6900b1799db1a4497a32b116cafb2fe982bd28a201da8d6f4222f70c548d8 WHIRLPOOL c0150bbd51725760cb68a39af3963a1113afd1d00ab5deb2c95800035068ae659328bb2f01088a5f406d4ea8392ba43bbd5913b99b73e8a1399d6a8a8802f718 diff --git a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.1.28.117968-r1710.ebuild b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.2.4.119785.ebuild index 3c6c739d..1c8dbec2 100644 --- a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.1.28.117968-r1710.ebuild +++ b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.2.4.119785.ebuild @@ -25,7 +25,7 @@ SRC_URI="http://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack LICENSE="PUEL" SLOT="0" -KEYWORDS="amd64 x86" +KEYWORDS="amd64 ~x86" IUSE="" RESTRICT="mirror strip" diff --git a/app-emulation/virtualbox-guest-additions/Manifest b/app-emulation/virtualbox-guest-additions/Manifest index 05a3b09f..c4c2a6e6 100644 --- a/app-emulation/virtualbox-guest-additions/Manifest +++ b/app-emulation/virtualbox-guest-additions/Manifest @@ -1 +1,2 @@ -DIST VirtualBox-5.1.28.tar.bz2 116427658 SHA256 ce7d4bf6535f70e3214abeb4866f7a8634aa3c7b6dedf8825e6ad80bd821398d SHA512 5c21fd535424d7fd9adbb51894ec6d37ecf00a63a850362bd7b61fedca5031e096641814130a97ad839c0bd7089dc3dc465509615aab2af3c5735ff71005670a WHIRLPOOL 2e3fbeb39083c2e69fb23200570781a8845780a6295553af48fa9155db132e37d0fc2fb26e8a45c52864f69f02e8a0d0cbd4c895e5fbb87ab9a51dd60c7c7904 +DIST VirtualBox-5.2.4.tar.bz2 118481693 SHA256 c9a060bd99168e05587f1ba74b54e9c1f709734bdfc956b0242fe63e81bb7d14 SHA512 19cb168393098fd28ab2017a27d09a558721d57b31c5d3610deb68a17dfa7fd7ffe9ad7be18714a314724ab5ecb54e7ab5fb76183e8e89afbed2da79649e2798 WHIRLPOOL 3000c4e01ccc0fe09734892b8ed7a69b6f836d6dce8993a8b4049be56b73ce1a318843d27dbb174e92fbdfc25ee10e6c081cb2c3193912b7ec577c9fac619cda +DIST virtualbox-5.1.30-patches-02.tar.xz 2608 SHA256 25922641e19911fe41d63a348702ed2dcab2ef79379ea236c5da6c36f77a75a5 SHA512 8a490f7cc44e40262fc47819736251c177adb635256794e9500f52729197c85211d5b0c0d000268089953a4c185872a8ba03c5d42df6b80f05eac8b81335320a WHIRLPOOL 3a7ebadf5cc8ba71fe4e4fe43d529ce72dbe95c40838d66112418ad335cb1b1cf7b6aa37fa71ccc6d50044486cb0eef52e59567530935e5a0ed83e9c3f67ec36 diff --git a/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-3-localconfig b/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-3-localconfig deleted file mode 100644 index aeea54d6..00000000 --- a/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-3-localconfig +++ /dev/null @@ -1,30 +0,0 @@ -# -*- Makefile -*- -# -# Overwrite some default kBuild settings -# - -# -# Copyright (C) 2006-2008 Sun Microsystems, Inc. -# -# This file is part of VirtualBox Open Source Edition (OSE), as -# available from http://www.virtualbox.org. This file is free software; -# you can redistribute it and/or modify it under the terms of the GNU -# General Public License as published by the Free Software Foundation, -# in version 2 as it comes in the "COPYING" file of the VirtualBox OSE -# distribution. VirtualBox OSE is distributed in the hope that it will -# be useful, but WITHOUT ANY WARRANTY of any kind. -# - -# don't build testcases to save time, they are not needed for the package -VBOX_WITH_TESTCASES := -VBOX_WITH_TESTSUITE := - -KBUILD_MSG_STYLE := brief - -## paths, origin, hardening -VBOX_WITH_HARDENING := 2 -VBOX_WITH_ORIGIN := -VBOX_ONLY_ADDITIONS := 1 - -## don't build with -Werror -VBOX_WITH_WARNINGS_AS_ERRORS := diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.1.28-r1710.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.2.4.ebuild index 34fbf5cf..91b07ca6 100644 --- a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.1.28-r1710.ebuild +++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.2.4.ebuild @@ -10,14 +10,16 @@ MY_PV="${MY_PV/rc/RC}" MY_P=VirtualBox-${MY_PV} DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests" HOMEPAGE="http://www.virtualbox.org/" -SRC_URI="http://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2" +SRC_URI="http://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2 + https://dev.gentoo.org/~polynomial-c/virtualbox/patchsets/virtualbox-5.1.30-patches-02.tar.xz" LICENSE="GPL-2" SLOT="0" -KEYWORDS="amd64 x86" +KEYWORDS="amd64 ~x86" IUSE="X" -RDEPEND="X? ( x11-apps/xrandr +RDEPEND=" + X? ( x11-apps/xrandr x11-apps/xrefresh x11-libs/libXmu x11-libs/libX11 @@ -30,19 +32,22 @@ RDEPEND="X? ( x11-apps/xrandr x11-proto/glproto ) sys-apps/dbus ~sys-kernel/virtualbox-guest-dkms-${PV} - !!x11-drivers/xf86-input-virtualbox" -DEPEND="${RDEPEND} - >=dev-util/kbuild-0.1.9998_pre20131130 + !!x11-drivers/xf86-input-virtualbox + !x11-drivers/xf86-video-virtualbox +" +DEPEND=" + ${RDEPEND} + >=dev-util/kbuild-0.1.9998.3127 >=dev-lang/yasm-0.6.2 sys-devel/bin86 sys-libs/pam sys-power/iasl X? ( x11-proto/renderproto ) - !X? ( x11-proto/xproto )" -PDEPEND="X? ( ~x11-drivers/xf86-video-virtualbox-${PV} )" - -BUILD_TARGETS="all" -BUILD_TARGET_ARCH="${ARCH}" + !X? ( x11-proto/xproto ) +" +PDEPEND=" + X? ( x11-drivers/xf86-video-vboxvideo ) +" S="${WORKDIR}/${MY_P}" @@ -55,9 +60,6 @@ pkg_setup() { src_unpack() { unpack ${A} - "${S}"/src/VBox/Additions/linux/export_modules "${WORKDIR}/vbox-kmod.tar.gz" - unpack ./vbox-kmod.tar.gz - cd "${S}" rm -rf kBuild/bin tools } @@ -79,6 +81,9 @@ src_prepare() { sed -e '/^check_gcc$/d' -i configure || die + rm "${WORKDIR}/patches/011_virtualbox-5.1.30-sysmacros.patch" || die + eapply "${WORKDIR}/patches" + eapply_user } @@ -105,7 +110,8 @@ src_configure() { src_compile() { MAKE="kmk" \ emake TOOL_YASM_AS=yasm \ - VBOX_ONLY_ADDITIONS=1 + VBOX_ONLY_ADDITIONS=1 \ + KBUILD_VERBOSE=2 } src_install() { diff --git a/app-emulation/virtualbox-modules/Manifest b/app-emulation/virtualbox-modules/Manifest deleted file mode 100644 index f5626a46..00000000 --- a/app-emulation/virtualbox-modules/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST vbox-kernel-module-src-5.1.28.tar.xz 625464 SHA256 d6f3b7afa98d2b526d8da3c8906addc307eea069db371d012ebbffc1ccdf9dd2 SHA512 c8ae6c065ad42e57eee9a54f288ba60fd9b32efe18cb74c8a035d547b30e7d857c9091307485a8dfc77eec45de29d3217c6871140e167e2438759c314c47680a WHIRLPOOL c6508d63cacfcd3ac901f276cd793dc83c595bc73965518baa544b5cf5157ea52363b759f03586f743d6c2e0fda7252b98136c96cef28ecfb31f6915d4ce5709 diff --git a/app-emulation/virtualbox-modules/files/create_vbox_modules_tarball.sh b/app-emulation/virtualbox-modules/files/create_vbox_modules_tarball.sh deleted file mode 100755 index 756d2435..00000000 --- a/app-emulation/virtualbox-modules/files/create_vbox_modules_tarball.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash - -# Create a virtualbox modules tarball from a VirtualBox binary package. -# We cannot download the package by this script because of the unpredictable -# build number being in the filename. -# -# usage: create_vbox_modules_tarball.sh VirtualBox-4.1.18-78361-Linux_amd64.run - -[ -f "$1" ] || exit 1 - -VBOX_PACKAGE="$1" -VERSION_SUFFIX="" - -if [[ ${VBOX_PACKAGE} = *_BETA* ]] || [[ ${VBOX_PACKAGE} = *_RC* ]] ; then - VERSION_SUFFIX="$(echo ${VBOX_PACKAGE} | sed 's@.*VirtualBox-[[:digit:]\.]\+\(_[[:alpha:]]\+[[:digit:]]\).*@\L\1@')" - -fi - -VBOX_VER="$(echo ${VBOX_PACKAGE} | sed 's@.*VirtualBox-\([[:digit:]\.]\+\).*@\1@')${VERSION_SUFFIX}" - - -sh ${VBOX_PACKAGE} --noexec --keep --nox11 || exit 2 -cd install || exit 3 -tar -xaf VirtualBox.tar.bz2 || exit 4 -cd src/vboxhost || exit 5 -tar -cvJf ../../../vbox-kernel-module-src-${VBOX_VER}.tar.xz . || exit 6 -cd ../../.. && rm install -rf - -exit 0 diff --git a/app-emulation/virtualbox-modules/virtualbox-modules-5.1.28-r1710.ebuild b/app-emulation/virtualbox-modules/virtualbox-modules-5.2.4.ebuild index 41d58d9d..d420616a 100644 --- a/app-emulation/virtualbox-modules/virtualbox-modules-5.1.28-r1710.ebuild +++ b/app-emulation/virtualbox-modules/virtualbox-modules-5.2.4.ebuild @@ -9,7 +9,7 @@ inherit eutils user MY_P=vbox-kernel-module-src-${PV} DESCRIPTION="Kernel Modules for Virtualbox" HOMEPAGE="http://www.virtualbox.org/" -SRC_URI="https://dev.gentoo.org/~polynomial-c/virtualbox/${MY_P}.tar.xz" +SRC_URI="" LICENSE="GPL-2" SLOT="0" diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest index a4d028e0..5c90cbae 100644 --- a/app-emulation/virtualbox/Manifest +++ b/app-emulation/virtualbox/Manifest @@ -1,2 +1,2 @@ -DIST VirtualBox-5.1.28.tar.bz2 116427658 SHA256 ce7d4bf6535f70e3214abeb4866f7a8634aa3c7b6dedf8825e6ad80bd821398d SHA512 5c21fd535424d7fd9adbb51894ec6d37ecf00a63a850362bd7b61fedca5031e096641814130a97ad839c0bd7089dc3dc465509615aab2af3c5735ff71005670a WHIRLPOOL 2e3fbeb39083c2e69fb23200570781a8845780a6295553af48fa9155db132e37d0fc2fb26e8a45c52864f69f02e8a0d0cbd4c895e5fbb87ab9a51dd60c7c7904 -DIST virtualbox-5.1.18-patches-01.tar.xz 4512 SHA256 1aa525a8230f77abc672e61bea76af9ddfbb8f22acf21ef382b7a0a88de92764 SHA512 f1c88dd9b7fbafb9764df0a88dc5615aa78a01408d0a14c0dae33e3a53bd75c191c0181934848e17f5fd77784f9e01bf44b444f1485fc302cb1538c2e8ddac95 WHIRLPOOL c11adda0297cc18f0ac614a3492c411413bf640090c9cdb4c5382c4da0391734c479d92c2933e46e0dc8ccf59e155ce35e72182abcb5015a7e03ec33d51c1ab0 +DIST VirtualBox-5.2.4.tar.bz2 118481693 SHA256 c9a060bd99168e05587f1ba74b54e9c1f709734bdfc956b0242fe63e81bb7d14 SHA512 19cb168393098fd28ab2017a27d09a558721d57b31c5d3610deb68a17dfa7fd7ffe9ad7be18714a314724ab5ecb54e7ab5fb76183e8e89afbed2da79649e2798 WHIRLPOOL 3000c4e01ccc0fe09734892b8ed7a69b6f836d6dce8993a8b4049be56b73ce1a318843d27dbb174e92fbdfc25ee10e6c081cb2c3193912b7ec577c9fac619cda +DIST virtualbox-5.2.0-patches-01.tar.xz 2460 SHA256 8487fce158d5f582cb298608bbfff1b6ac0bad531fc27fbc49cf80d201f1165f SHA512 b91278dd81a50e412f5a281c72949f591a1c53303080549b74b28763cab9e3948948afb0256e0453d17736683cca3372a8e9c6d63f02f3eff3ef92c2a1ea332b WHIRLPOOL ba508ce9493723e0f7d43d176e69d459c970ca532d19085be83d1c34d8fac8f30501718d3bd69ca09d453b51cfb5b31d563f238affbfd7551a3f7fd80d1765ba diff --git a/app-emulation/virtualbox/files/050_virtualbox-5.1.24-nopie.patch b/app-emulation/virtualbox/files/050_virtualbox-5.1.24-nopie.patch new file mode 100644 index 00000000..73c377a6 --- /dev/null +++ b/app-emulation/virtualbox/files/050_virtualbox-5.1.24-nopie.patch @@ -0,0 +1,158 @@ +diff -Naur VirtualBox-5.1.24/Config.kmk VirtualBox-5.1.24/Config.kmk +--- VirtualBox-5.1.24/Config.kmk 2017-07-26 13:55:27.803972185 -0400 ++++ VirtualBox-5.1.24/Config.kmk 2017-07-26 13:53:10.700974328 -0400 +@@ -2601,6 +2601,7 @@ + $(QUIET)$(APPEND) '$@' 'VBOX_GCC_Wno-overlength-strings?= $(call VBOX_GCC_CHECK_CC,-Wno-overlength-strings,)' + $(QUIET)$(APPEND) '$@' 'VBOX_GCC_Wno-overloaded-virtual?= $(call VBOX_GCC_CHECK_CXX,-Wno-overloaded-virtual,)' + $(QUIET)$(APPEND) '$@' 'VBOX_GCC_fno-stack-protector ?= $(call VBOX_GCC_CHECK_CC,-fno-stack-protector,)' ++ $(QUIET)$(APPEND) '$@' 'VBOX_GCC_nopie ?= $(call VBOX_GCC_CHECK_CC,-nopie,)' + $(QUIET)$(APPEND) '$@' 'VBOX_GCC_fno-dwarf2-cfi-asm ?= $(call VBOX_GCC_CHECK_CC,-fno-dwarf2-cfi-asm,)' + $(QUIET)$(APPEND) '$@' 'VBOX_GCC_m64 ?= $(call VBOX_GCC_CHECK_CC,-m64,)' + $(QUIET)$(APPEND) '$@' 'VBOX_GCC_no-pie ?= $(call VBOX_GCC_CHECK_CC,-no-pie,)' +@@ -3843,8 +3844,8 @@ + + ifeq ($(VBOX_LDR_FMT32),elf) + TEMPLATE_VBoxRc_TOOL = $(VBOX_GCC32_TOOL) +- TEMPLATE_VBoxRc_CXXFLAGS = -fno-pie -nostdinc -g $(VBOX_GCC_pipe) $(VBOX_GCC_WERR) $(VBOX_GCC_PEDANTIC_CXX) $(VBOX_GCC32_Wno-variadic-macros) -fno-exceptions $(VBOX_GCC_GC_OPT) $(VBOX_GCC_GC_FP) -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fno-strict-aliasing $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_fvisibility-hidden) $(VBOX_GCC_fvisibility-inlines-hidden) -fno-rtti $(VBOX_GCC_IPRT_FMT_CHECK) +- TEMPLATE_VBoxRc_CFLAGS = -fno-pie -nostdinc -g $(VBOX_GCC_pipe) $(VBOX_GCC_WERR) $(VBOX_GCC_PEDANTIC_C) $(VBOX_GCC32_Wno-variadic-macros) -fno-exceptions $(VBOX_GCC_GC_OPT) $(VBOX_GCC_GC_FP) -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fno-strict-aliasing $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_fvisibility-hidden) $(VBOX_GCC_IPRT_FMT_CHECK) ++ TEMPLATE_VBoxRc_CXXFLAGS = -nostdinc -g $(VBOX_GCC_pipe) $(VBOX_GCC_WERR) $(VBOX_GCC_PEDANTIC_CXX) $(VBOX_GCC32_Wno-variadic-macros) -fno-exceptions $(VBOX_GCC_GC_OPT) $(VBOX_GCC_GC_FP) -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fno-strict-aliasing $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) $(VBOX_GCC_fvisibility-hidden) $(VBOX_GCC_fvisibility-inlines-hidden) -fno-rtti $(VBOX_GCC_IPRT_FMT_CHECK) ++ TEMPLATE_VBoxRc_CFLAGS = -nostdinc -g $(VBOX_GCC_pipe) $(VBOX_GCC_WERR) $(VBOX_GCC_PEDANTIC_C) $(VBOX_GCC32_Wno-variadic-macros) -fno-exceptions $(VBOX_GCC_GC_OPT) $(VBOX_GCC_GC_FP) -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fno-strict-aliasing $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) $(VBOX_GCC_fvisibility-hidden) $(VBOX_GCC_IPRT_FMT_CHECK) + ifeq ($(KBUILD_TARGET),solaris) + TEMPLATE_VBoxRc_LDFLAGS = -r + else +@@ -3864,8 +3865,8 @@ + ifeq ($(VBOX_LDR_FMT32),macho) + TEMPLATE_VBoxRc_TOOL = $(VBOX_GCC_TOOL) + TEMPLATE_VBoxRc_DEFS += $(VBOX_DARWIN_DEF_SDK_DEFS) +- TEMPLATE_VBoxRc_CXXFLAGS = $(VBOX_DARWIN_DEF_SDK_CXXFLAGS) -m32 -nostdinc -g $(VBOX_GCC_pipe) $(VBOX_GCC_WERR) $(VBOX_GCC_PEDANTIC_CXX) $(VBOX_GCC32_Wno-variadic-macros) -fno-common -msoft-float -static $(VBOX_GCC_fno-stack-protector) -fno-exceptions $(VBOX_GCC_GC_OPT) $(VBOX_GCC_GC_FP) -fno-strict-aliasing -fno-rtti +- TEMPLATE_VBoxRc_CFLAGS = $(VBOX_DARWIN_DEF_SDK_CFLAGS) -m32 -nostdinc -g $(VBOX_GCC_pipe) $(VBOX_GCC_WERR) $(VBOX_GCC_PEDANTIC_C) $(VBOX_GCC32_Wno-variadic-macros) -fno-common -msoft-float -static $(VBOX_GCC_fno-stack-protector) -fno-exceptions $(VBOX_GCC_GC_OPT) $(VBOX_GCC_GC_FP) -fno-strict-aliasing ++ TEMPLATE_VBoxRc_CXXFLAGS = $(VBOX_DARWIN_DEF_SDK_CXXFLAGS) -m32 -nostdinc -g $(VBOX_GCC_pipe) $(VBOX_GCC_WERR) $(VBOX_GCC_PEDANTIC_CXX) $(VBOX_GCC32_Wno-variadic-macros) -fno-common -msoft-float -static $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) -fno-exceptions $(VBOX_GCC_GC_OPT) $(VBOX_GCC_GC_FP) -fno-strict-aliasing -fno-rtti ++ TEMPLATE_VBoxRc_CFLAGS = $(VBOX_DARWIN_DEF_SDK_CFLAGS) -m32 -nostdinc -g $(VBOX_GCC_pipe) $(VBOX_GCC_WERR) $(VBOX_GCC_PEDANTIC_C) $(VBOX_GCC32_Wno-variadic-macros) -fno-common -msoft-float -static $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) -fno-exceptions $(VBOX_GCC_GC_OPT) $(VBOX_GCC_GC_FP) -fno-strict-aliasing + TEMPLATE_VBoxRc_LDFLAGS = $(VBOX_DARWIN_DEF_SDK_LDFLAGS) -m32 -nostdlib + #TEMPLATE_VBoxRc_LDFLAGS.release = -Wl,-S ??? + endif +@@ -3903,9 +3904,9 @@ + endif + + ifeq ($(VBOX_LDR_FMT32),elf) +- TEMPLATE_VBoxRcExe_CFLAGS = $(filter-out -nostdinc,$(TEMPLATE_VBoxRc_CFLAGS)) -O0 +- TEMPLATE_VBoxRcExe_CXXFLAGS = $(filter-out -nostdinc,$(TEMPLATE_VBoxRc_CXXFLAGS)) -O0 +- TEMPLATE_VBoxRcExe_LDFLAGS = -g ++ TEMPLATE_VBoxRcExe_CFLAGS = $(filter-out -nostdinc,$(TEMPLATE_VBoxRc_CFLAGS)) -O0 $(VBOX_GCC_nopie) ++ TEMPLATE_VBoxRcExe_CXXFLAGS = $(filter-out -nostdinc,$(TEMPLATE_VBoxRc_CXXFLAGS)) -O0 $(VBOX_GCC_nopie) ++ TEMPLATE_VBoxRcExe_LDFLAGS = -g $(VBOX_GCC_nopie) + TEMPLATE_VBoxRcExe_LDFLAGS.dbgopt = -g + TEMPLATE_VBoxRcExe_LDFLAGS.strict = -g + TEMPLATE_VBoxRcExe_LDFLAGS.release = -g +@@ -3984,8 +3985,8 @@ + + ifeq ($(VBOX_LDR_FMT),elf) + TEMPLATE_VBoxR0_TOOL = $(VBOX_GCC_TOOL) +-TEMPLATE_VBoxR0_CFLAGS = -fno-pie -nostdinc -g $(VBOX_GCC_pipe) $(VBOX_GCC_WERR) $(VBOX_GCC_PEDANTIC_C) $(VBOX_GCC_Wno-variadic-macros) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) -fno-strict-aliasing -fno-exceptions $(VBOX_GCC_fno-stack-protector) -fno-common $(VBOX_GCC_fvisibility-hidden) -std=gnu99 $(VBOX_GCC_IPRT_FMT_CHECK) +-TEMPLATE_VBoxR0_CXXFLAGS = -fno-pie -nostdinc -g $(VBOX_GCC_pipe) $(VBOX_GCC_WERR) $(VBOX_GCC_PEDANTIC_CXX) $(VBOX_GCC_Wno-variadic-macros) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) -fno-strict-aliasing -fno-exceptions $(VBOX_GCC_fno-stack-protector) -fno-common $(VBOX_GCC_fvisibility-inlines-hidden) $(VBOX_GCC_fvisibility-hidden) -fno-rtti $(VBOX_GCC_IPRT_FMT_CHECK) ++TEMPLATE_VBoxR0_CFLAGS = -nostdinc -g $(VBOX_GCC_pipe) $(VBOX_GCC_WERR) $(VBOX_GCC_PEDANTIC_C) $(VBOX_GCC_Wno-variadic-macros) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) -fno-strict-aliasing -fno-exceptions $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) -fno-common $(VBOX_GCC_fvisibility-hidden) -std=gnu99 $(VBOX_GCC_IPRT_FMT_CHECK) ++TEMPLATE_VBoxR0_CXXFLAGS = -nostdinc -g $(VBOX_GCC_pipe) $(VBOX_GCC_WERR) $(VBOX_GCC_PEDANTIC_CXX) $(VBOX_GCC_Wno-variadic-macros) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) -fno-strict-aliasing -fno-exceptions $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) -fno-common $(VBOX_GCC_fvisibility-inlines-hidden) $(VBOX_GCC_fvisibility-hidden) -fno-rtti $(VBOX_GCC_IPRT_FMT_CHECK) + TEMPLATE_VBoxR0_CFLAGS.amd64 = -m64 -mno-red-zone -mcmodel=kernel -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fno-asynchronous-unwind-tables -ffreestanding + TEMPLATE_VBoxR0_CXXFLAGS.amd64 = -m64 -mno-red-zone -mcmodel=kernel -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fno-asynchronous-unwind-tables + ifeq ($(KBUILD_TARGET),solaris) +@@ -4018,12 +4019,12 @@ + TEMPLATE_VBoxR0_DEFS += $(VBOX_DARWIN_DEF_SDK_DEFS) + TEMPLATE_VBoxR0_CXXFLAGS = $(VBOX_DARWIN_DEF_SDK_CXXFLAGS) -nostdinc -g $(VBOX_GCC_pipe) $(VBOX_GCC_WERR) $(VBOX_GCC_PEDANTIC_CXX) $(VBOX_GCC_Wno-variadic-macros) \ + -fno-common -msoft-float -static -fno-rtti -fno-exceptions $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) -fno-strict-aliasing \ +- -mno-sse -mno-mmx -mno-sse2 -mno-3dnow $(VBOX_GCC_fno-stack-protector) ++ -mno-sse -mno-mmx -mno-sse2 -mno-3dnow $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) + TEMPLATE_VBoxR0_CXXFLAGS.amd64 = -m64 -mno-red-zone -mno-sse3 -mno-sse4 -mno-sse4.1 -mno-sse4.2 -mno-sse4a -fno-unwind-tables + TEMPLATE_VBoxR0_CXXFLAGS.x86 = -m32 + TEMPLATE_VBoxR0_CFLAGS = $(VBOX_DARWIN_DEF_SDK_CFLAGS) -nostdinc -g $(VBOX_GCC_pipe) $(VBOX_GCC_WERR) $(VBOX_GCC_PEDANTIC_C) $(VBOX_GCC_Wno-variadic-macros) \ + -fno-common -msoft-float -static -fno-exceptions $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) -fno-strict-aliasing \ +- -mno-sse -mno-mmx -mno-sse2 -mno-3dnow $(VBOX_GCC_fno-stack-protector) ++ -mno-sse -mno-mmx -mno-sse2 -mno-3dnow $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) + TEMPLATE_VBoxR0_CFLAGS.amd64 = -m64 -mno-red-zone -mno-sse3 -mno-sse4 -mno-sse4.1 -mno-sse4.2 -mno-sse4a -fno-unwind-tables + TEMPLATE_VBoxR0_CFLAGS.x86 = -m32 + TEMPLATE_VBoxR0_LDFLAGS = $(VBOX_DARWIN_DEF_SDK_LDFLAGS) -nostdlib +@@ -4259,7 +4260,7 @@ + -Wstrict-prototypes -Wmissing-prototypes -Wstrict-prototypes \ + -Wimplicit-function-declaration -Werror-implicit-function-declaration \ + -O2 -ffreestanding -fno-strict-aliasing -fno-common -finline-limit=8000 \ +- $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \ ++ $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) $(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.amd64 = -m64 --param inline-unit-growth=100 --param large-function-growth=1000 \ +@@ -4268,7 +4269,7 @@ + TEMPLATE_VBOXR0DRV_CXXFLAGS = -fno-exceptions -fno-rtti \ + $(VBOX_GCC_WARN) -Wpointer-arith -Winline \ + -O2 -fno-strict-aliasing -fno-common -finline-limit=8000 \ +- $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \ ++ $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \ + -nostdinc + TEMPLATE_VBOXR0DRV_CXXFLAGS.x86 = $(TEMPLATE_VBOXR0DRV_CFLAGS.x86) + TEMPLATE_VBOXR0DRV_CXXFLAGS.amd64 = $(TEMPLATE_VBOXR0DRV_CFLAGS.amd64) +@@ -4341,7 +4342,7 @@ + -Wstrict-prototypes -Wmissing-prototypes -Wstrict-prototypes \ + -Wimplicit-function-declaration -Werror-implicit-function-declaration \ + -O2 -ffreestanding -fno-strict-aliasing -fno-common -finline-limit=8000 \ +- $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \ ++ $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \ + -nostdinc -std=c99 -msoft-float + TEMPLATE_VBOXR0DRV_CFLAGS.x86 = -m32 \ + -mpreferred-stack-boundary=2 -mno-mmx -mno-sse -mno-avx \ +@@ -4353,7 +4354,7 @@ + TEMPLATE_VBOXR0DRV_CXXFLAGS = -fno-exceptions -fno-rtti \ + $(VBOX_GCC_WARN) -Wpointer-arith -Winline \ + -O2 -fno-strict-aliasing -fno-common -finline-limit=8000 \ +- $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \ ++ $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \ + -nostdinc -msoft-float + TEMPLATE_VBOXR0DRV_CXXFLAGS.x86 = $(TEMPLATE_VBOXR0DRV_CFLAGS.x86) + TEMPLATE_VBOXR0DRV_CXXFLAGS.amd64 = $(TEMPLATE_VBOXR0DRV_CFLAGS.amd64) +@@ -4394,7 +4395,7 @@ + TEMPLATE_VBOXR0DRV_LDFLAGS = -shared -no-undefined -dc -dy -lroot -rpath-link /boot/system/develop/lib/x86 --no-add-needed /boot/system/develop/lib/_KERNEL_ --no-add-needed /boot/system/develop/lib/haiku_version_glue.o + TEMPLATE_VBOXR0DRV_CFLAGS = -fno-PIC \ + $(VBOX_GCC_WARN) -Wstrict-prototypes $(VBOX_GCC_Wno-pointer-sign) -Wno-sign-compare \ +- $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration ++ $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration + TEMPLATE_VBOXR0DRV_CFLAGS.x86 = -mno-sse -mno-mmx -mno-sse2 -mno-3dnow + TEMPLATE_VBOXR0DRV_CFLAGS.x86 = -m32 -mno-sse -mno-mmx -mno-sse2 -mno-3dnow + TEMPLATE_VBOXR0DRV_CFLAGS.amd64 = -m64 -mno-sse -mno-mmx -mno-sse2 -mno-3dnow \ +@@ -5210,8 +5211,8 @@ + TEMPLATE_VBoxNoCrtGccLib_TOOL = $(VBOX_GCC_TOOL) + TEMPLATE_VBoxNoCrtGccLib_ASTOOL = $(VBOX_ASTOOL) + TEMPLATE_VBoxNoCrtGccLib_ASFLAGS = $(VBOX_ASFLAGS) +- TEMPLATE_VBoxNoCrtGccLib_CFLAGS += $(VBOX_GCC_fno-stack-protector) +- TEMPLATE_VBoxNoCrtGccLib_CXXFLAGS += $(VBOX_GCC_fno-stack-protector) ++ TEMPLATE_VBoxNoCrtGccLib_CFLAGS += $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) ++ TEMPLATE_VBoxNoCrtGccLib_CXXFLAGS += $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) + ifeq ($(KBUILD_TARGET_ARCH),amd64) + # in 64-bit mode we'll build a sys-module (VBoxREM2). + if1of ($(KBUILD_TARGET), darwin solaris) +@@ -6467,8 +6468,8 @@ + TEMPLATE_VBOXGUESTR3XF86MOD_CFLAGS = $(TEMPLATE_VBOXGUESTR3EXE_CFLAGS) -fno-pie -fno-merge-constants -std=c99 -ffreestanding + TEMPLATE_VBOXGUESTR3XF86MOD_CXXFLAGS= $(TEMPLATE_VBOXGUESTR3EXE_CXXFLAGS) -fno-pie -fno-merge-constants -ffreestanding + ifndef VBOX_WITH_COMPATIBLE_LINUX_GUEST_PACKAGE +- TEMPLATE_VBOXGUESTR3XF86MOD_CFLAGS += $(VBOX_GCC_fno-stack-protector) +- TEMPLATE_VBOXGUESTR3XF86MOD_CXXFLAGS += $(VBOX_GCC_fno-stack-protector) ++ TEMPLATE_VBOXGUESTR3XF86MOD_CFLAGS += $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) ++ TEMPLATE_VBOXGUESTR3XF86MOD_CXXFLAGS += $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_nopie) + endif + TEMPLATE_VBOXGUESTR3XF86MOD_SYSSUFF = .o + TEMPLATE_VBOXGUESTR3XF86MOD_LIBS = \ +diff -Naur VirtualBox-5.1.24/src/VBox/Devices/PC/ipxe/Makefile.kmk VirtualBox-5.1.24/src/VBox/Devices/PC/ipxe/Makefile.kmk +--- VirtualBox-5.1.24/src/VBox/Devices/PC/ipxe/Makefile.kmk 2017-07-26 13:55:27.746972186 -0400 ++++ VirtualBox-5.1.24/src/VBox/Devices/PC/ipxe/Makefile.kmk 2017-07-26 13:53:10.641974329 -0400 +@@ -132,6 +132,7 @@ + -W \ + -Wformat-nonliteral \ + $(VBOX_GCC_fno-stack-protector) \ ++ $(VBOX_GCC_nopie) \ + $(VBOX_GCC_fno-dwarf2-cfi-asm) \ + $(VBOX_GCC_Wno-address) + TEMPLATE_iPxe_ASFLAGS = \ +@@ -155,6 +156,7 @@ + -W \ + -Wformat-nonliteral \ + $(VBOX_GCC_fno-stack-protector) \ ++ $(VBOX_GCC_nopie) \ + $(VBOX_GCC_fno-dwarf2-cfi-asm) \ + $(VBOX_GCC_Wno-address) \ + -DASSEMBLY diff --git a/app-emulation/virtualbox/files/vboxwebsrv-confd b/app-emulation/virtualbox/files/vboxwebsrv-confd index 447348e9..fdcd17e9 100644 --- a/app-emulation/virtualbox/files/vboxwebsrv-confd +++ b/app-emulation/virtualbox/files/vboxwebsrv-confd @@ -1,6 +1,5 @@ # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Id$ # The host to bind to (defaults to "localhost"). VBOXWEBSRV_HOST="localhost" diff --git a/app-emulation/virtualbox/files/vboxwebsrv-initd b/app-emulation/virtualbox/files/vboxwebsrv-initd index d9544962..f50c3ec0 100644 --- a/app-emulation/virtualbox/files/vboxwebsrv-initd +++ b/app-emulation/virtualbox/files/vboxwebsrv-initd @@ -1,7 +1,6 @@ #!/sbin/openrc-run # Copyright 1999-2016 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Id$ depend() { need net diff --git a/app-emulation/virtualbox/files/virtualbox-4-localconfig b/app-emulation/virtualbox/files/virtualbox-4-localconfig deleted file mode 100644 index 5138d925..00000000 --- a/app-emulation/virtualbox/files/virtualbox-4-localconfig +++ /dev/null @@ -1,45 +0,0 @@ -# -*- Makefile -*- -# -# Overwrite some default kBuild settings -# - -# -# Copyright (C) 2006-2008 Sun Microsystems, Inc. -# -# This file is part of VirtualBox Open Source Edition (OSE), as -# available from http://www.virtualbox.org. This file is free software; -# you can redistribute it and/or modify it under the terms of the GNU -# General Public License as published by the Free Software Foundation, -# in version 2 as it comes in the "COPYING" file of the VirtualBox OSE -# distribution. VirtualBox OSE is distributed in the hope that it will -# be useful, but WITHOUT ANY WARRANTY of any kind. -# - -# shut up wine complaining about unknown locale -EXEC_X86_WIN32 := wine - -# don't build testcases to save time, they are not needed for the package -VBOX_WITH_TESTCASES := -VBOX_WITH_TESTSUITE := -VBOX_DOCBOOK_WITH_LATEX := 1 - -KBUILD_MSG_STYLE := brief - -## paths, origin, hardening -VBOX_WITH_HARDENING := 1 -VBOX_WITH_ORIGIN := -VBOX_PATH_APP_PRIVATE_ARCH := /usr/MY_LIBDIR/virtualbox -VBOX_PATH_SHARED_LIBS := $(VBOX_PATH_APP_PRIVATE_ARCH) -VBOX_WITH_RUNPATH := $(VBOX_PATH_APP_PRIVATE_ARCH) -VBOX_PATH_APP_PRIVATE := /usr/share/virtualbox -VBOX_PATH_APP_DOCS = $(VBOX_PATH_PACKAGE_DOCS) - -## don't build unwanted/splitted stuff -VBOX_WITHOUT_ADDITIONS := 1 -VBOX_WITH_VBOXDRV := -VBOX_WITH_VBOXBFE := -VBOX_WITH_KCHMVIEWER := - -## don't build with -Werror -VBOX_WITH_WARNINGS_AS_ERRORS := - diff --git a/app-emulation/virtualbox/files/virtualbox-5.1.22-opengl_dlopen_fix.patch b/app-emulation/virtualbox/files/virtualbox-5.1.22-opengl_dlopen_fix.patch deleted file mode 100644 index 71fa978c..00000000 --- a/app-emulation/virtualbox/files/virtualbox-5.1.22-opengl_dlopen_fix.patch +++ /dev/null @@ -1,167 +0,0 @@ -Index: VirtualBox-5.1.22/src/VBox/HostDrivers/Support/posix/SUPR3HardenedMain-posix.cpp -=================================================================== ---- VirtualBox-5.1.22/src/VBox/HostDrivers/Support/posix/SUPR3HardenedMain-posix.cpp (revision 115126) -+++ VirtualBox-5.1.22/src/VBox/HostDrivers/Support/posix/SUPR3HardenedMain-posix.cpp (revision 115307) -@@ -341,6 +341,7 @@ - * Patch 64-bit hosts. - */ - uint32_t cRipRelMovs = 0; -+ uint32_t cRelCalls = 0; - - /* Just use the disassembler to skip 12 bytes or more, we might need to - rewrite mov instructions using RIP relative addressing. */ -@@ -349,7 +350,8 @@ - cbInstr = 1; - int rc = DISInstr(pbTarget + offJmpBack, DISCPUMODE_64BIT, &Dis, &cbInstr); - if ( RT_FAILURE(rc) -- || (Dis.pCurInstr->fOpType & DISOPTYPE_CONTROLFLOW) -+ || ( Dis.pCurInstr->fOpType & DISOPTYPE_CONTROLFLOW -+ && Dis.pCurInstr->uOpcode != OP_CALL) - || ( Dis.ModRM.Bits.Mod == 0 - && Dis.ModRM.Bits.Rm == 5 /* wrt RIP */ - && Dis.pCurInstr->uOpcode != OP_MOV)) -@@ -357,15 +359,23 @@ - - if (Dis.ModRM.Bits.Mod == 0 && Dis.ModRM.Bits.Rm == 5 /* wrt RIP */) - cRipRelMovs++; -+ if ( Dis.pCurInstr->uOpcode == OP_CALL -+ && (Dis.pCurInstr->fOpType & DISOPTYPE_RELATIVE_CONTROLFLOW)) -+ cRelCalls++; - - offJmpBack += cbInstr; - cbPatchMem += cbInstr; - } - -+ /* -+ * Each relative call requires extra bytes as it is converted to a pushq imm32 -+ * + mov [RSP+4], imm32 + a jmp qword [$+8 wrt RIP] to avoid clobbering registers. -+ */ -+ cbPatchMem += cRelCalls * RT_ALIGN_32(13 + 6 + 8, 8); - cbPatchMem += 14; /* jmp qword [$+8 wrt RIP] + 8 byte address to jump to. */ - cbPatchMem = RT_ALIGN_32(cbPatchMem, 8); - -- /* Allocate suitable exectuable memory available. */ -+ /* Allocate suitable executable memory available. */ - bool fConvRipRelMovs = false; - uint8_t *pbPatchMem = supR3HardenedMainPosixExecMemAlloc(cbPatchMem, pbTarget, cRipRelMovs > 0); - if (!pbPatchMem) -@@ -396,7 +406,8 @@ - cbInstr = 1; - int rc = DISInstr(pbTarget + offInsn, DISCPUMODE_64BIT, &Dis, &cbInstr); - if ( RT_FAILURE(rc) -- || (Dis.pCurInstr->fOpType & DISOPTYPE_CONTROLFLOW)) -+ || ( Dis.pCurInstr->fOpType & DISOPTYPE_CONTROLFLOW -+ && Dis.pCurInstr->uOpcode != OP_CALL)) - return VERR_SUPLIB_UNEXPECTED_INSTRUCTION; - - if ( Dis.ModRM.Bits.Mod == 0 -@@ -439,6 +450,34 @@ - pbPatchMem += sizeof(int32_t); - } - } -+ else if ( Dis.pCurInstr->uOpcode == OP_CALL -+ && (Dis.pCurInstr->fOpType & DISOPTYPE_RELATIVE_CONTROLFLOW)) -+ { -+ /* Convert to absolute jump. */ -+ uintptr_t uAddr = (uintptr_t)&pbTarget[offInsn + cbInstr] + (intptr_t)Dis.Param1.uValue; -+ -+ /* Skip the push instructions till the return address is known. */ -+ uint8_t *pbPatchMemPush = pbPatchMem; -+ pbPatchMem += 13; -+ -+ *pbPatchMem++ = 0xff; /* jmp qword [$+8 wrt RIP] */ -+ *pbPatchMem++ = 0x25; -+ *(uint32_t *)pbPatchMem = (uint32_t)(RT_ALIGN_PT(pbPatchMem + 4, 8, uint8_t *) - (pbPatchMem + 4)); -+ pbPatchMem = RT_ALIGN_PT(pbPatchMem + 4, 8, uint8_t *); -+ *(uint64_t *)pbPatchMem = uAddr; -+ pbPatchMem += sizeof(uint64_t); -+ -+ /* Push the return address onto stack. Difficult on amd64 without clobbering registers... */ -+ uintptr_t uAddrReturn = (uintptr_t)pbPatchMem; -+ *pbPatchMemPush++ = 0x68; /* push imm32 sign-extended as 64-bit*/ -+ *(uint32_t *)pbPatchMemPush = RT_LO_U32(uAddrReturn); -+ pbPatchMemPush += sizeof(uint32_t); -+ *pbPatchMemPush++ = 0xc7; -+ *pbPatchMemPush++ = 0x44; -+ *pbPatchMemPush++ = 0x24; -+ *pbPatchMemPush++ = 0x04; /* movl [RSP+4], imm32 */ -+ *(uint32_t *)pbPatchMemPush = RT_HI_U32(uAddrReturn); -+ } - else - { - memcpy(pbPatchMem, pbTarget + offInsn, cbInstr); -Index: VirtualBox-5.1.22/src/VBox/HostDrivers/Support/SUPR3HardenedVerify.cpp -=================================================================== ---- VirtualBox-5.1.22/src/VBox/HostDrivers/Support/SUPR3HardenedVerify.cpp (revision 115126) -+++ VirtualBox-5.1.22/src/VBox/HostDrivers/Support/SUPR3HardenedVerify.cpp (revision 115307) -@@ -86,6 +86,9 @@ - /** The max path length acceptable for a trusted path. */ - #define SUPR3HARDENED_MAX_PATH 260U - -+/** Enable to resolve symlinks using realpath() instead of cooking our own stuff. */ -+#define SUP_HARDENED_VERIFY_FOLLOW_SYMLINKS_USE_REALPATH 1 -+ - #ifdef RT_OS_SOLARIS - # define dirfd(d) ((d)->d_fd) - #endif -@@ -1091,7 +1094,8 @@ - #endif - - --#if defined(RT_OS_DARWIN) || defined(RT_OS_LINUX) -+#ifndef SUP_HARDENED_VERIFY_FOLLOW_SYMLINKS_USE_REALPATH -+# if defined(RT_OS_DARWIN) || defined(RT_OS_LINUX) - /** - * Copies the error message to the error buffer and returns @a rc. - * -@@ -1104,6 +1108,7 @@ - { - return supR3HardenedSetErrorN(rc, pErrInfo, 1, pszMsg); - } -+# endif - #endif - - -@@ -1893,7 +1898,9 @@ - /* - * Verify each component from the root up. - */ -+#ifndef SUP_HARDENED_VERIFY_FOLLOW_SYMLINKS_USE_REALPATH - uint32_t iLoops = 0; -+#endif - SUPR3HARDENEDFSOBJSTATE FsObjState; - uint32_t iComponent = 0; - while (iComponent < Info.cComponents) -@@ -1915,6 +1922,24 @@ - if ( RT_SUCCESS(rc) - && S_ISLNK(FsObjState.Stat.st_mode)) - { -+#if SUP_HARDENED_VERIFY_FOLLOW_SYMLINKS_USE_REALPATH /* Another approach using realpath() and verifying the result when encountering a symlink. */ -+ char *pszFilenameResolved = realpath(pszFilename, NULL); -+ if (pszFilenameResolved) -+ { -+ rc = supR3HardenedVerifyFile(pszFilenameResolved, hNativeFile, fMaybe3rdParty, pErrInfo); -+ free(pszFilenameResolved); -+ return rc; -+ } -+ else -+ { -+ int iErr = errno; -+ supR3HardenedError(VERR_ACCESS_DENIED, false /*fFatal*/, -+ "supR3HardenedVerifyFileFollowSymlinks: Failed to resolve the real path '%s': %s (%d)\n", -+ pszFilename, strerror(iErr), iErr); -+ return supR3HardenedSetError4(VERR_ACCESS_DENIED, pErrInfo, -+ "realpath failed for '", pszFilename, "': ", strerror(iErr)); -+ } -+#else - /* Don't loop forever. */ - iLoops++; - if (iLoops < 8) -@@ -1989,6 +2014,7 @@ - else - return supR3HardenedSetError3(VERR_TOO_MANY_SYMLINKS, pErrInfo, - "Too many symbolic links: '", pszFilename, "'"); -+#endif - } - } - if (RT_FAILURE(rc)) diff --git a/app-emulation/virtualbox/files/virtualbox-5.1.4-paxmark-bldprogs.patch b/app-emulation/virtualbox/files/virtualbox-5.1.4-paxmark-bldprogs.patch new file mode 100644 index 00000000..50fa306d --- /dev/null +++ b/app-emulation/virtualbox/files/virtualbox-5.1.4-paxmark-bldprogs.patch @@ -0,0 +1,59 @@ +2017-02-20 Quentin Minster <quentin@minster.io> + + #https://bugs.gentoo.org/show_bug.cgi?id=591582 + * Config.kmk: add paxmark befor VBOX_VBOXTPG get run. + * src/VBox/VMM/Makefile.kmk: add paxmark befor VBOX_VBOXCPP get run. + * src/VBox/Main/Makefile.kmk: add paxmark befor USBIdDatabaseGenerator_1_TARGET get run. + +--- a/Config.kmk ++++ b/Config.kmk 2016-09-21 02:22:28 +@@ -3719,11 +3719,13 @@ + $(if-expr $(intersects $(KBUILD_TARGET_ARCH),$(KBUILD_ARCHES_64)),-64,-32) \ + -h --host-$(VBOX_HC_ARCH_BITS)-bit #-vvv + define TOOL_VBoxTpG_DTRACE_HDR_CMDS ++ $(QUIET)paxmark.sh -m "$(VBOX_VBOXTPG)" + $(QUIET)$(VBOX_VBOXTPG) $(flags) -o "$(out)" -s "$(source)" + endef + TOOL_VBoxTpG_DTRACE_OBJ_NOT_NEEDED := + TOOL_VBoxTpG_DTRACE_OBJ_FLAGS := -G --host-$(VBOX_HC_ARCH_BITS)-bit #-vvv + define TOOL_VBoxTpG_DTRACE_OBJ_CMDS ++ $(QUIET)paxmark.sh -m "$(VBOX_VBOXTPG)" + $(QUIET)$(VBOX_VBOXTPG) \ + $(if-expr $(intersects $(bld_trg_arch),$(KBUILD_ARCHES_64)),-64,-32) \ + $(flags) \ +@@ -3738,6 +3740,7 @@ + TOOL_VBoxTpG-Disabled_DTRACE_DEPORD = $(VBOX_VBOXTPG) + TOOL_VBoxTpG-Disabled_DTRACE_HDR_FLAGS := -h + define TOOL_VBoxTpG-Disabled_DTRACE_HDR_CMDS ++ $(QUIET)paxmark.sh -m "$(VBOX_VBOXTPG)" + $(QUIET)$(VBOX_VBOXTPG) $(flags) -o "$(out)" -s "$(source)" + endef + TOOL_VBoxTpG-Disabled_DTRACE_OBJ_NOT_NEEDED := $(KBUILD_OSES) +@@ -3752,6 +3755,7 @@ + TOOL_DTraceAndVBoxTpG_DTRACE_HDR_CMDS = + define TOOL_DTraceAndVBoxTpG_DTRACE_HDR_CMDS + $(TOOL_StandardDTrace_DTRACE_HDR_CMDS) ++ $(QUIET)paxmark.sh -m "$(VBOX_VBOXTPG)" + $(QUIET)$(VBOX_VBOXTPG) --generate-wrapper-header --host-$(VBOX_HC_ARCH_BITS)-bit --ring-3-context \ + $(filter-out -C, $(filter-out -h,$(flags))) \ + -o "$(out).tmp" -s "$(source)" +--- a/src/VBox/VMM/Makefile.kmk ++++ b/src/VBox/VMM/Makefile.kmk 2016-09-21 02:26:11 +@@ -795,6 +795,7 @@ + define def_vmm_lib_dtrace_preprocess + $$$$(VMMLibDTrace_0_OUTDIR)/$1: $2 $$(VBOX_VBOXCPP) | $$$$(dir $$$$@) + $$(QUIET)$$(call MSG_GENERATE,VMMLibDTrace,$$@,$$<) ++ $$(QUIET)paxmark.sh -m "$(VBOX_VBOXCPP)" + $$(QUIET)$(VBOX_VBOXCPP) -d \ + -D VBOX_FOR_DTRACE_LIB \ + -D VBOX_FOR_DTRACE_LIB_$(toupper $(KBUILD_TARGET_ARCH)) \ +--- a/src/VBox/Main/Makefile.kmk ++++ b/src/VBox/Main/Makefile.kmk 2016-09-21 02:31:23 +@@ -522,6 +522,7 @@ + $$(VBoxSVC_0_OUTDIR)/USBIdDatabase.cpp: $$(USBIdDatabaseGenerator_1_TARGET) \ + $(PATH_SUB_CURRENT)/src-server/usb.ids $(PATH_SUB_CURRENT)/src-server/custom.ids | $$(dir $$@) + $(call MSG_GENERATE,USBIdDatabase,$@,$<) ++ $(QUIET)paxmark.sh -m "$(USBIdDatabaseGenerator_1_TARGET)" + $(QUIET)$(USBIdDatabaseGenerator_1_TARGET) -o "$@" $(filter %.ids,$^) + + BLDPROGS += USBIdDatabaseGenerator diff --git a/app-emulation/virtualbox/files/virtualbox-ose-3-config b/app-emulation/virtualbox/files/virtualbox-ose-3-config deleted file mode 100644 index af782214..00000000 --- a/app-emulation/virtualbox/files/virtualbox-ose-3-config +++ /dev/null @@ -1 +0,0 @@ -INSTALL_DIR=/usr/MY_LIBDIR/virtualbox diff --git a/app-emulation/virtualbox/files/virtualbox-ose-3-wrapper b/app-emulation/virtualbox/files/virtualbox-ose-3-wrapper deleted file mode 100644 index 6f2da490..00000000 --- a/app-emulation/virtualbox/files/virtualbox-ose-3-wrapper +++ /dev/null @@ -1,104 +0,0 @@ -#!/bin/sh -# -# Sun VirtualBox -# -# Copyright (C) 2006-2009 Sun Microsystems, Inc. -# -# This file is part of VirtualBox Open Source Edition (OSE), as -# available from http://www.virtualbox.org. This file is free software; -# you can redistribute it and/or modify it under the terms of the GNU -# General Public License (GPL) as published by the Free Software -# Foundation, in version 2 as it comes in the "COPYING" file of the -# VirtualBox OSE distribution. VirtualBox OSE is distributed in the -# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. -# -# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa -# Clara, CA 95054 USA or visit http://www.sun.com if you need -# additional information or have any questions. -# - -PATH="/usr/bin:/bin:/usr/sbin:/sbin" -CONFIG="/etc/vbox/vbox.cfg" - -if [ ! -r "$CONFIG" ]; then - echo "Could not find VirtualBox installation. Please reinstall." - exit 1 -fi - -. "$CONFIG" - -# Note: This script must not fail if the module was not successfully installed -# because the user might not want to run a VM but only change VM params! - -if [ "$1" = "shutdown" ]; then - SHUTDOWN="true" -elif ! lsmod|grep -q vboxdrv; then - cat << EOF -WARNING: The VirtualBox kernel modules are not loaded. - Please load all the needed kernel modules by: - - for m in vbox{drv,netadp,netflt}; do modprobe \$m; done - - You will not be able to start VMs until this problem is fixed. -EOF -elif [ ! -c /dev/vboxdrv ]; then - cat << EOF -WARNING: The character device /dev/vboxdrv does not exist. - Please try to reload all the needed kernel modules by: - - for m in vbox{netflt,netadp,drv}; do rmmod \$m; done - for m in vbox{drv,netadp,netflt}; do modprobe \$m; done - - and if that is not successful, try to re-install the package by: - - emerge -1av app-emulation/virtualbox-modules - - You will not be able to start VMs until this problem is fixed. -EOF -fi - -SERVER_PID=`ps -U \`whoami\` | grep VBoxSVC | awk '{ print $1 }'` -if [ -z "$SERVER_PID" ]; then - # Server not running yet/anymore, cleanup socket path. - # See IPC_GetDefaultSocketPath()! - if [ -n "$LOGNAME" ]; then - rm -rf /tmp/.vbox-$LOGNAME-ipc > /dev/null 2>&1 - else - rm -rf /tmp/.vbox-$USER-ipc > /dev/null 2>&1 - fi -fi - -if [ "$SHUTDOWN" = "true" ]; then - if [ -n "$SERVER_PID" ]; then - kill -TERM $SERVER_PID - sleep 2 - fi - exit 0 -fi - -APP=`which $0` -APP=`basename $APP` -APP=${APP##/*/} -case "$APP" in - VirtualBox) - exec "$INSTALL_DIR/VirtualBox" "$@" - ;; - VBoxManage) - exec "$INSTALL_DIR/VBoxManage" "$@" - ;; - VBoxSDL) - exec "$INSTALL_DIR/VBoxSDL" "$@" - ;; - VBoxVRDP) - exec "$INSTALL_DIR/VBoxHeadless" "$@" - ;; - VBoxHeadless) - exec "$INSTALL_DIR/VBoxHeadless" "$@" - ;; - vboxwebsrv) - exec "$INSTALL_DIR/vboxwebsrv" "$@" - ;; - *) - echo "Unknown application - $APP" - ;; -esac diff --git a/app-emulation/virtualbox/virtualbox-5.1.28-r1710.ebuild b/app-emulation/virtualbox/virtualbox-5.2.4.ebuild index 35574cec..d64c9f56 100644 --- a/app-emulation/virtualbox/virtualbox-5.1.28-r1710.ebuild +++ b/app-emulation/virtualbox/virtualbox-5.2.4.ebuild @@ -4,13 +4,13 @@ EAPI=6 PYTHON_COMPAT=( python2_7 ) -inherit eutils fdo-mime flag-o-matic java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 toolchain-funcs udev +inherit eutils flag-o-matic java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 toolchain-funcs udev xdg-utils MY_PV="${PV/beta/BETA}" MY_PV="${MY_PV/rc/RC}" MY_P=VirtualBox-${MY_PV} SRC_URI="http://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2 - https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.1.18-patches-01.tar.xz" + https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.2.0-patches-01.tar.xz" S="${WORKDIR}/${MY_P}" DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use" @@ -18,7 +18,7 @@ HOMEPAGE="http://www.virtualbox.org/" LICENSE="GPL-2" SLOT="0" -KEYWORDS="amd64 x86" +KEYWORDS="amd64 ~x86" IUSE="alsa debug doc headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc" RDEPEND="!app-emulation/virtualbox-bin @@ -55,7 +55,7 @@ RDEPEND="!app-emulation/virtualbox-bin udev? ( >=virtual/udev-171 ) vnc? ( >=net-libs/libvncserver-0.9.9 )" DEPEND="${RDEPEND} - >=dev-util/kbuild-0.1.9998_pre20131130-r1 + >=dev-util/kbuild-0.1.9998.3127 >=dev-lang/yasm-0.6.2 sys-devel/bin86 sys-libs/libcap @@ -182,13 +182,13 @@ src_prepare() { fi # Only add nopie patch when we're on hardened - if ! gcc-specs-pie ; then - rm "${WORKDIR}"/patches/050_${PN}-*-nopie.patch || die + if gcc-specs-pie ; then + eapply "${FILESDIR}/050_virtualbox-5.1.24-nopie.patch" fi # Only add paxmark patch when we're on pax_kernel if use pax_kernel ; then - epatch "${FILESDIR}"/virtualbox-5.1.4-paxmark-bldprogs.patch || die + eapply "${FILESDIR}"/virtualbox-5.1.4-paxmark-bldprogs.patch fi eapply "${WORKDIR}/patches" @@ -410,7 +410,7 @@ src_install() { } pkg_postinst() { - fdo-mime_desktop_database_update + xdg_desktop_database_update if use udev ; then udevadm control --reload-rules \ @@ -455,5 +455,5 @@ pkg_postinst() { } pkg_postrm() { - fdo-mime_desktop_database_update + xdg_desktop_database_update } diff --git a/sys-kernel/virtualbox-guest-dkms/Manifest b/sys-kernel/virtualbox-guest-dkms/Manifest index 85405b25..3edb082b 100644 --- a/sys-kernel/virtualbox-guest-dkms/Manifest +++ b/sys-kernel/virtualbox-guest-dkms/Manifest @@ -1 +1 @@ -DIST virtualbox-guest-dkms-5.1.28-1-x86_64.pkg.tar.xz 582084 SHA256 ccee43fc0ea6ee8ef351f00c581e017c9644cb03186a896459d45c3313bf923a SHA512 07d223340bb0f7061a7f9d8ba74ddc91ad930004abfe66f979a5fa512c70da968ea15f99375099a2e3cb38ae429238f47a060997319ce71e9478ded6e2c82157 WHIRLPOOL 1dd46c0ed3494874f5b2cd5f5baafda557983cd190aa461e144f129c191d46ceb3daa0ee8203078f08b104e5a3bf0a55d05193f26f2f827709c8a2b5a0e43906 +DIST virtualbox-guest-dkms-5.2.4-1-x86_64.pkg.tar.xz 581104 SHA256 ab795f86fc750989b7632b2634bd67cb5d469457868d99a23dc3c308a9a78366 SHA512 f5bc71f84abd5b37653db8e57fd91363c690d2878b604bef0d1d9db1beaccf9dce2d0ce856d807c7b34c9949005ec67732646a59d4b13bde6795fee3411cde2d WHIRLPOOL 9fc432d504a754f74ab84846ba6329afd3fca66b323e1eb516718eb5640a27afd6e1da926c9db375c2fb54714ec5bd20f039b995482cf963db86709f27f5d237 diff --git a/sys-kernel/virtualbox-guest-dkms/files/dkms.patch b/sys-kernel/virtualbox-guest-dkms/files/dkms.patch index d42d3ca8..86d19605 100644 --- a/sys-kernel/virtualbox-guest-dkms/files/dkms.patch +++ b/sys-kernel/virtualbox-guest-dkms/files/dkms.patch @@ -1,27 +1,20 @@ diff -Nur a/dkms.conf b/dkms.conf ---- a/dkms.conf 2017-07-18 12:50:58.000000000 +0100 -+++ b/dkms.conf 2017-07-23 14:40:45.746169005 +0100 -@@ -14,18 +14,18 @@ - # hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. +--- a/dkms.conf 2017-12-19 21:31:10.000000000 +0000 ++++ b/dkms.conf 2017-12-22 02:51:53.824679071 +0000 +@@ -15,7 +15,7 @@ # --PACKAGE_NAME="vboxguest" --PACKAGE_VERSION=5.1.28_OSE -+PACKAGE_NAME="virtualbox-guest-dkms" -+PACKAGE_VERSION=5.1.28 + PACKAGE_NAME="vboxguest" +-PACKAGE_VERSION=5.2.4_OSE ++PACKAGE_VERSION=5.2.4 AUTOINSTALL=yes BUILT_MODULE_NAME[0]="vboxguest" - BUILT_MODULE_LOCATION[0]="vboxguest" --DEST_MODULE_LOCATION[0]="/kernel/misc" -+DEST_MODULE_LOCATION[0]="/extra/dkms" - +@@ -25,7 +25,3 @@ BUILT_MODULE_NAME[1]="vboxsf" BUILT_MODULE_LOCATION[1]="vboxsf" --DEST_MODULE_LOCATION[1]="/kernel/misc" -+DEST_MODULE_LOCATION[1]="/extra/dkms" - - BUILT_MODULE_NAME[2]="vboxvideo" - BUILT_MODULE_LOCATION[2]="vboxvideo" + DEST_MODULE_LOCATION[1]="/kernel/misc" +- +-BUILT_MODULE_NAME[2]="vboxvideo" +-BUILT_MODULE_LOCATION[2]="vboxvideo" -DEST_MODULE_LOCATION[2]="/kernel/misc" -+DEST_MODULE_LOCATION[2]="/extra/dkms" diff --git a/sys-kernel/virtualbox-guest-dkms/virtualbox-guest-dkms-5.1.28-r1710.ebuild b/sys-kernel/virtualbox-guest-dkms/virtualbox-guest-dkms-5.2.4.ebuild index c4823e9c..c4823e9c 100644 --- a/sys-kernel/virtualbox-guest-dkms/virtualbox-guest-dkms-5.1.28-r1710.ebuild +++ b/sys-kernel/virtualbox-guest-dkms/virtualbox-guest-dkms-5.2.4.ebuild diff --git a/sys-kernel/virtualbox-modules-dkms/Manifest b/sys-kernel/virtualbox-modules-dkms/Manifest index f5626a46..a04cc5f6 100644 --- a/sys-kernel/virtualbox-modules-dkms/Manifest +++ b/sys-kernel/virtualbox-modules-dkms/Manifest @@ -1 +1 @@ -DIST vbox-kernel-module-src-5.1.28.tar.xz 625464 SHA256 d6f3b7afa98d2b526d8da3c8906addc307eea069db371d012ebbffc1ccdf9dd2 SHA512 c8ae6c065ad42e57eee9a54f288ba60fd9b32efe18cb74c8a035d547b30e7d857c9091307485a8dfc77eec45de29d3217c6871140e167e2438759c314c47680a WHIRLPOOL c6508d63cacfcd3ac901f276cd793dc83c595bc73965518baa544b5cf5157ea52363b759f03586f743d6c2e0fda7252b98136c96cef28ecfb31f6915d4ce5709 +DIST vbox-kernel-module-src-5.2.4.tar.xz 634212 SHA256 32dd695f8d89d1e7574a558c9298a4ba9b6c6cfec2f84483457d26065f5d3681 SHA512 3c2113a8781cde1a44954267ee469db91c843305a5b1468b1fd346af3f3626a3d98c8a958ec0e255401f569f75e652dbbb1a85fd6cc6b203cf170745c630cee1 WHIRLPOOL 5ec8f5d638de1900de5581cc1811081fbf44a551a0f6526252f1e9f727701aaa7e97b048ffcb33247668152f8ae7023ad3864ab3e96aca0190d9de06472d6187 diff --git a/sys-kernel/virtualbox-modules-dkms/files/dkms.conf b/sys-kernel/virtualbox-modules-dkms/files/dkms.conf index f5e9a646..80cc6b40 100644 --- a/sys-kernel/virtualbox-modules-dkms/files/dkms.conf +++ b/sys-kernel/virtualbox-modules-dkms/files/dkms.conf @@ -1,5 +1,5 @@ PACKAGE_NAME="virtualbox-modules-dkms" -PACKAGE_VERSION="5.1.28" +PACKAGE_VERSION="5.2.4" AUTOINSTALL="yes" MAKE[0]="'make' -j`nproc` KERNEL_UNAME=${kernelver}" diff --git a/sys-kernel/virtualbox-modules-dkms/virtualbox-modules-dkms-5.1.28-r1710.ebuild b/sys-kernel/virtualbox-modules-dkms/virtualbox-modules-dkms-5.2.4.ebuild index 00923566..00923566 100644 --- a/sys-kernel/virtualbox-modules-dkms/virtualbox-modules-dkms-5.1.28-r1710.ebuild +++ b/sys-kernel/virtualbox-modules-dkms/virtualbox-modules-dkms-5.2.4.ebuild diff --git a/x11-drivers/xf86-video-vboxvideo/Manifest b/x11-drivers/xf86-video-vboxvideo/Manifest new file mode 100644 index 00000000..40b23d5b --- /dev/null +++ b/x11-drivers/xf86-video-vboxvideo/Manifest @@ -0,0 +1,3 @@ +DIST xf86-video-vboxvideo-1.0.0.tar.bz2 353342 BLAKE2B 8088e150c8e91dd4872218773c2d57a052935926fe08c18d9f5165b112d6213bf79c80d85fd4d10c1b12bd2ac222983b3dbf241cb97c1cb087f4137314a95ead SHA512 1a9856a966495a3a291592ee3113ed5ee83e3ef530bf37d91605206a62f641726511ad48ca79b8a3e94f601f8cf15341255b0c7d14f5c8acf985b84f965d8dfc +EBUILD xf86-video-vboxvideo-1.0.0.ebuild 488 BLAKE2B 0d8c6193f5239a65bcdfd141bf644d65f7ccfc4ce2179f8b8706f941ef4a2df5f20fa6c05d27f5534b0b846b2a31859df493975edea4f76d3db6766c860cbce3 SHA512 2c76b73bfc1830343e352c03c24745c078ff3a168eb4384e7a6e0679d9831be4f884fb00523f98dff137bc7bde4e191bc9ff5ef7d4ccb0cccc3ea31786b96189 +MISC metadata.xml 257 BLAKE2B 35c1b06807230338ceb9de70f79760d55e93dcdba508da3c663e785ab3966781edc2098abd8df084b2ecabbf40ff8e8e4a0d0a6e131daf648ff58e101cf27587 SHA512 ff078cacb115b8f3624b45d883d8ed72701e3d2fccae06c04c633eb60821b23681cc151e00689d1b6035c94570535e7ac0de51a55dae99f606886164883185ea diff --git a/x11-drivers/xf86-video-vboxvideo/xf86-video-vboxvideo-1.0.0.ebuild b/x11-drivers/xf86-video-vboxvideo/xf86-video-vboxvideo-1.0.0.ebuild new file mode 100644 index 00000000..02ab4c8e --- /dev/null +++ b/x11-drivers/xf86-video-vboxvideo/xf86-video-vboxvideo-1.0.0.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +inherit xorg-2 + +DESCRIPTION="VirtualBox guest video driver" +HOMEPAGE="https://cgit.freedesktop.org/xorg/driver/xf86-video-vbox/" + +KEYWORDS="amd64 ~x86" +IUSE="" + +RDEPEND=" + >=x11-base/xorg-server-1.8:=[-minimal] + x11-libs/libXcomposite + x11-libs/libpciaccess +" +DEPEND=" + ${RDEPEND} + x11-proto/fontsproto + x11-proto/randrproto + x11-proto/renderproto + x11-proto/xextproto +" diff --git a/x11-drivers/xf86-video-virtualbox/Manifest b/x11-drivers/xf86-video-virtualbox/Manifest deleted file mode 100644 index 05a3b09f..00000000 --- a/x11-drivers/xf86-video-virtualbox/Manifest +++ /dev/null @@ -1 +0,0 @@ -DIST VirtualBox-5.1.28.tar.bz2 116427658 SHA256 ce7d4bf6535f70e3214abeb4866f7a8634aa3c7b6dedf8825e6ad80bd821398d SHA512 5c21fd535424d7fd9adbb51894ec6d37ecf00a63a850362bd7b61fedca5031e096641814130a97ad839c0bd7089dc3dc465509615aab2af3c5735ff71005670a WHIRLPOOL 2e3fbeb39083c2e69fb23200570781a8845780a6295553af48fa9155db132e37d0fc2fb26e8a45c52864f69f02e8a0d0cbd4c895e5fbb87ab9a51dd60c7c7904 diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-2.2.0-enable-opengl.patch b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-2.2.0-enable-opengl.patch deleted file mode 100644 index b0779d42..00000000 --- a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-2.2.0-enable-opengl.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- a/configure -+++ b/configure -@@ -1955,8 +1955,8 @@ - HEADLESS=1 - WITH_SDL=0 - WITH_SDL_TTF=0 -- WITH_X11=0 -- WITH_OPENGL=0 -+ WITH_X11=1 -+ WITH_OPENGL=1 - WITH_QT4=0 - ;; - --ose) diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3-vboxvideo_drm.makefile b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3-vboxvideo_drm.makefile deleted file mode 100644 index a09e58c0..00000000 --- a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-3-vboxvideo_drm.makefile +++ /dev/null @@ -1,240 +0,0 @@ -# -# VirtualBox Guest Additions Module Makefile. -# -# (For 2.6.x this file must be 'Makefile'!) -# -# Copyright (C) 2006-2007 Sun Microsystems, Inc. -# -# This file is part of VirtualBox Open Source Edition (OSE), as -# available from http://www.virtualbox.org. This file is free software; -# you can redistribute it and/or modify it under the terms of the GNU -# General Public License (GPL) as published by the Free Software -# Foundation, in version 2 as it comes in the "COPYING" file of the -# VirtualBox OSE distribution. VirtualBox OSE is distributed in the -# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. -# -# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa -# Clara, CA 95054 USA or visit http://www.sun.com if you need -# additional information or have any questions. -# - -## @todo We must make this into a common template *soon*. - -# -# First, figure out which architecture we're targeting and the build type. -# (We have to support basic cross building (ARCH=i386|x86_64).) -# While at it, warn about BUILD_* vars found to help with user problems. -# -ifeq ($(filter-out x86_64 amd64 AMD64,$(shell uname -m)),) - BUILD_TARGET_ARCH_DEF := amd64 -else - BUILD_TARGET_ARCH_DEF := x86 -endif -ifneq ($(filter-out amd64 x86,$(BUILD_TARGET_ARCH)),) - $(warning Ignoring unknown BUILD_TARGET_ARCH value '$(BUILD_TARGET_ARCH)'.) - BUILD_TARGET_ARCH := -endif -ifeq ($(BUILD_TARGET_ARCH),) - ifeq ($(ARCH),x86_64) - BUILD_TARGET_ARCH := amd64 - else - ifeq ($(ARCH),i386) - BUILD_TARGET_ARCH := x86 - else - BUILD_TARGET_ARCH := $(BUILD_TARGET_ARCH_DEF) - endif - endif -else - ifneq ($(BUILD_TARGET_ARCH),$(BUILD_TARGET_ARCH_DEF)) - $(warning Using BUILD_TARGET_ARCH='$(BUILD_TARGET_ARCH)' from the $(origin BUILD_TARGET_ARCH).) - endif -endif - -ifneq ($(filter-out release profile debug strict,$(BUILD_TYPE)),) - $(warning Ignoring unknown BUILD_TYPE value '$(BUILD_TYPE)'.) - BUILD_TYPE := -endif -ifeq ($(BUILD_TYPE),) - BUILD_TYPE := release -else - ifneq ($(BUILD_TYPE),release) - $(warning Using BUILD_TYPE='$(BUILD_TYPE)' from the $(origin BUILD_TYPE).) - endif -endif - -EXTRA_CFLAGS = -fshort-wchar - -ifneq ($(MAKECMDGOALS),clean) - -ifeq ($(KERNELRELEASE),) - - # - # building from this directory - # - - # kernel base directory - ifndef KERN_DIR - KERN_DIR := /lib/modules/$(shell uname -r)/build - ifneq ($(shell if test -d $(KERN_DIR); then echo yes; fi),yes) - KERN_DIR := /usr/src/linux - ifneq ($(shell if test -d $(KERN_DIR); then echo yes; fi),yes) - $(error Error: unable to find the sources of your current Linux kernel. \ - Specify KERN_DIR=<directory> and run Make again) - endif - $(warning Warning: using /usr/src/linux as the source directory of your \ - Linux kernel. If this is not correct, specify \ - KERN_DIR=<directory> and run Make again.) - endif - else - ifneq ($(shell if test -d $(KERN_DIR); then echo yes; fi),yes) - $(error Error: KERN_DIR does not point to a directory) - endif - endif - - # includes - ifndef KERN_INCL - KERN_INCL = $(KERN_DIR)/include - endif - ifneq ($(shell if test -d $(KERN_INCL); then echo yes; fi),yes) - $(error Error: unable to find the include directory for your current Linux \ - kernel. Specify KERN_INCL=<directory> and run Make again) - endif - - # module install dir. - ifneq ($(filter install install_rpm,$(MAKECMDGOALS)),) - ifndef MODULE_DIR - MODULE_DIR_TST := /lib/modules/$(shell uname -r) - ifeq ($(shell if test -d $(MODULE_DIR_TST); then echo yes; fi),yes) - MODULE_DIR := $(MODULE_DIR_TST)/misc - else - $(error Unable to find the folder to install the DRM driver to) - endif - endif # MODULE_DIR unspecified - endif - - # guess kernel version (24 or 26) - ifeq ($(shell if grep '"2\.4\.' $(KERN_INCL)/linux/version.h > /dev/null; then echo yes; fi),yes) - KERN_VERSION := 24 - else - KERN_VERSION := 26 - endif - -else # neq($(KERNELRELEASE),) - - # - # building from kbuild (make -C <kernel_directory> M=`pwd`) - # - - # guess kernel version (24 or 26) - ifeq ($(shell if echo "$(VERSION).$(PATCHLEVEL)." | grep '2\.4\.' > /dev/null; then echo yes; fi),yes) - KERN_VERSION := 24 - else - KERN_VERSION := 26 - endif - -endif # neq($(KERNELRELEASE),) - -# debug - show guesses. -ifdef DEBUG -$(warning dbg: KERN_DIR = $(KERN_DIR)) -$(warning dbg: KERN_INCL = $(KERN_INCL)) -$(warning dbg: MODULE_DIR = $(MODULE_DIR)) -$(warning dbg: KERN_VERSION = $(KERN_VERSION)) -endif - -KBUILD_VERBOSE ?= 1 - -# -# Compiler options -# -ifndef INCL - INCL := $(addprefix -I,$(KERN_INCL) $(EXTRA_INCL)) - ifndef KBUILD_EXTMOD - KBUILD_EXTMOD := $(shell pwd) - endif - INCL += $(addprefix -I$(KBUILD_EXTMOD),/ /include /r0drv/linux) - export INCL -endif -KFLAGS := -D__KERNEL__ -DMODULE -DRT_OS_LINUX -DIN_RING0 -DIN_RT_R0 \ - -DIN_SUP_R0 -DVBOX -DVBOX_WITH_HGCM -DLOG_TO_BACKDOOR -DIN_MODULE \ - -DIN_GUEST_R0 -ifeq ($(BUILD_TARGET_ARCH),amd64) - KFLAGS += -DRT_ARCH_AMD64 -DVBOX_WITH_64_BITS_GUESTS -else - KFLAGS += -DRT_ARCH_X86 -endif -ifeq ($(BUILD_TYPE),debug) -KFLAGS += -DDEBUG -endif - -# override is required by the Debian guys -override MODULE = vboxvideo -OBJS = vboxvideo_drm.o - -ifeq ($(KERN_VERSION), 24) -# -# 2.4 -# - -CFLAGS := -O2 -DVBOX_LINUX_2_4 $(INCL) $(KFLAGS) $(KDEBUG) -MODULE_EXT := o - -# 2.4 Module linking -$(MODULE).o: $(OBJS) - $(LD) -o $@ -r $(OBJS) - -.PHONY: $(MODULE) -all: $(MODULE) -$(MODULE): $(MODULE).o - -else -# -# 2.6 and later -# - -MODULE_EXT := ko - -$(MODULE)-y := $(OBJS) - -# special hack for Fedora Core 6 2.6.18 (fc6), rhel5 2.6.18 (el5), -# ClarkConnect 4.3 (cc4) and ClarkConnect 5 (v5) -ifeq ($(KERNELRELEASE),) - KFLAGS += $(foreach inc,$(KERN_INCL),\ - $(if $(wildcard $(inc)/linux/utsrelease.h),\ - $(if $(shell grep '"2.6.18.*fc6.*"' $(inc)/linux/utsrelease.h; \ - grep '"2.6.18.*el5.*"' $(inc)/linux/utsrelease.h; \ - grep '"2.6.18.*v5.*"' $(inc)/linux/utsrelease.h; \ - grep '"2.6.18.*cc4.*"' $(inc)/linux/utsrelease.h),\ - -DKERNEL_FC6,),)) -else - KFLAGS += $(if $(shell echo "$(KERNELRELEASE)"|grep '2.6.18.*fc6.*';\ - echo "$(KERNELRELEASE)"|grep '2.6.18.*el5.*';\ - echo "$(KERNELRELEASE)"|grep '2.6.18.*v5.*';\ - echo "$(KERNELRELEASE)"|grep '2.6.18.*cc4.*'),\ - -DKERNEL_FC6,) -endif - -# build defs -EXTRA_CFLAGS += $(INCL) $(KFLAGS) $(KDEBUG) - -all: $(MODULE) - -obj-m += $(MODULE).o - -$(MODULE): - $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C $(KERN_DIR) SUBDIRS=$(CURDIR) SRCROOT=$(CURDIR) modules - -endif - -install: $(MODULE) - @mkdir -p $(MODULE_DIR); \ - install -m 0664 -o root -g root $(MODULE).$(MODULE_EXT) $(MODULE_DIR); \ - PATH="$(PATH):/bin:/sbin" depmod -ae; - -endif # eq($(MAKECMDGOALS),clean) - -# important: Don't remove Module.symvers! DKMS does 'make clean' before building ... -clean: - for f in . linux r0drv r0drv/linux; do rm -f $$f/*.o $$f/.*.cmd $$f/.*.flags; done - rm -rf .vboxvideo* .tmp_ver* vboxvideo.* Modules.symvers modules.order - diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5-localconfig b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5-localconfig deleted file mode 100644 index aee5ec1e..00000000 --- a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5-localconfig +++ /dev/null @@ -1,30 +0,0 @@ -# -*- Makefile -*- -# -# Overwrite some default kBuild settings -# - -# -# Copyright (C) 2006-2008 Sun Microsystems, Inc. -# -# This file is part of VirtualBox Open Source Edition (OSE), as -# available from http://www.virtualbox.org. This file is free software; -# you can redistribute it and/or modify it under the terms of the GNU -# General Public License as published by the Free Software Foundation, -# in version 2 as it comes in the "COPYING" file of the VirtualBox OSE -# distribution. VirtualBox OSE is distributed in the hope that it will -# be useful, but WITHOUT ANY WARRANTY of any kind. -# - -# don't build testcases to save time, they are not needed for the package -VBOX_WITH_TESTCASES := -VBOX_WITH_VALIDATIONKIT := - -KBUILD_MSG_STYLE := brief - -## paths, origin, hardening -VBOX_WITH_HARDENING := 2 -VBOX_WITH_ORIGIN := -VBOX_ONLY_ADDITIONS := 1 - -TEMPLATE_VBOXGUESTR3XF86MOD_LDFLAGS.release = -TEMPLATE_VBOXGUESTR3XORGMOD_LDFLAGS = $(TEMPLATE_VBOXGUESTR3DLL_LDFLAGS) diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.0.0_beta3-configure_checks.patch b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.0.0_beta3-configure_checks.patch deleted file mode 100644 index 92f8a182..00000000 --- a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.0.0_beta3-configure_checks.patch +++ /dev/null @@ -1,52 +0,0 @@ ---- VirtualBox-5.0.0_BETA3/configure -+++ VirtualBox-5.0.0_BETA3/configure -@@ -1258,10 +1258,7 @@ - XCloseDisplay(dpy); - } - EOF -- [ -n "$INCX11" ] && I_INCX11=`prefix_I "$INCX11"` -- if test_compile "$LIBX11 $I_INCX11" Xlibs Xlibs; then -- log_success "found" -- fi -+ test_compile "$LIBX11 $I_INCX11" Xlibs Xlibs - } - - -@@ -1415,21 +1412,6 @@ - #include <GL/glu.h> - extern "C" int main(void) - { -- Display *dpy; -- int major, minor; -- -- dpy = XOpenDisplay(NULL); -- if (dpy) -- { -- Bool glx_version = glXQueryVersion(dpy, &major, &minor); -- XCloseDisplay(dpy); -- if (glx_version) -- { -- printf("found version %u.%u, OK.\n", major, minor); -- return 0; -- } -- } -- printf("found (inactive), OK.\n"); - return 0; - } - EOF -@@ -2706,7 +2688,6 @@ - # don't check for yasm for the time beeing as 0.40 and 0.50 both have known bugs - # [ "$OS" != "darwin" ] && check_yasm - [ "$OS" != "darwin" ] && check_xsltproc -- [ "$OS" != "darwin" ] && check_mkisofs - fi - - # the libraries -@@ -2774,7 +2755,6 @@ - check_compiler_h - [ $ONLY_ADDITIONS -eq 0 -a "$BUILD_MACHINE" = "amd64" -a $WITH_VMMRAW -eq 1 ] && check_32bit - # tools/common/makeself* -- [ $OSE -ge 1 ] && check_makeself - fi - - [ -n "$SETUP_WINE" ] && setup_wine diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.1.10-xorg119.patch b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.1.10-xorg119.patch deleted file mode 100644 index 26958fe8..00000000 --- a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.1.10-xorg119.patch +++ /dev/null @@ -1,82 +0,0 @@ -Fix from opensuse: -https://build.opensuse.org/package/view_file/Virtualization/virtualbox/Fix_for_server_1.19.patch - -https://bugs.gentoo.org/602784 - -Index: VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/vboxvideo.h -=================================================================== ---- VirtualBox-5.1.10.orig/src/VBox/Additions/x11/vboxvideo/vboxvideo.h -+++ VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/vboxvideo.h -@@ -52,6 +52,10 @@ - #ifndef _VBOXVIDEO_H_ - #define _VBOXVIDEO_H_ - -+#if XORG_VERSION_CURRENT >= 11900000 -+#include <bits/sigset.h> -+typedef __sigset_t sigset_t; -+#endif - #include <VBox/VBoxVideoGuest.h> - #include <VBox/VBoxVideo.h> - #include "version-generated.h" -Index: VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/helpers.c -=================================================================== ---- VirtualBox-5.1.10.orig/src/VBox/Additions/x11/vboxvideo/helpers.c -+++ VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/helpers.c -@@ -82,7 +82,11 @@ void vbvxSetIntegerPropery(ScrnInfoPtr p - - property_name = MakeAtom(pszName, strlen(pszName), TRUE); - VBVXASSERT(property_name != BAD_RESOURCE, ("Failed to set atom \"%s\"\n", pszName)); -+#if XORG_VERSION_CURRENT >= 11900000 -+ dixChangeWindowProperty(serverClient, ROOT_WINDOW(pScrn), property_name, XA_INTEGER, 32, PropModeReplace, cData, paData, fSendEvent); -+#else - ChangeWindowProperty(ROOT_WINDOW(pScrn), property_name, XA_INTEGER, 32, PropModeReplace, cData, paData, fSendEvent); -+#endif - } - - void vbvxReprobeCursor(ScrnInfoPtr pScrn) -Index: VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/vboxvideo.c -=================================================================== ---- VirtualBox-5.1.10.orig/src/VBox/Additions/x11/vboxvideo/vboxvideo.c -+++ VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/vboxvideo.c -@@ -1229,7 +1229,11 @@ static Bool VBOXScreenInit(ScreenPtr pSc - updateGraphicsCapability(pScrn, TRUE); - - /* Register block and wake-up handlers for getting new screen size hints. */ -+#if XORG_VERSION_CURRENT >= 11900000 -+ RegisterBlockAndWakeupHandlers(vboxBlockHandler, (ServerWakeupHandlerProcPtr)NoopDDA, (pointer)pScrn); -+#else - RegisterBlockAndWakeupHandlers(vboxBlockHandler, (WakeupHandlerProcPtr)NoopDDA, (pointer)pScrn); -+#endif - - /* software cursor */ - miDCInitialize(pScreen, xf86GetPointerScreenFuncs()); -Index: VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/pointer.c -=================================================================== ---- VirtualBox-5.1.10.orig/src/VBox/Additions/x11/vboxvideo/pointer.c -+++ VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/pointer.c -@@ -15,6 +15,10 @@ - * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. - */ - -+#if XORG_VERSION_CURRENT >= 11900000 -+#include <bits/sigset.h> -+typedef __sigset_t sigset_t; -+#endif - #include <VBox/VBoxGuestLib.h> - - #ifndef PCIACCESS -Index: VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/edid.c -=================================================================== ---- VirtualBox-5.1.10.orig/src/VBox/Additions/x11/vboxvideo/edid.c -+++ VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/edid.c -@@ -44,6 +44,10 @@ - * Dave Airlie <airlied@redhat.com> - */ - -+#if XORG_VERSION_CURRENT >= 11900000 -+#include <bits/sigset.h> -+typedef __sigset_t sigset_t; -+#endif - #include <misc.h> - #include <xf86DDC.h> - #include <xf86Crtc.h> diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.1.22-sysmacros.patch b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.1.22-sysmacros.patch deleted file mode 100644 index 673beef3..00000000 --- a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.1.22-sysmacros.patch +++ /dev/null @@ -1,15 +0,0 @@ -Fix bug #579910. Add sys/sysmacros.h header. - -https://bugs.gentoo.org/579910 - -index 20ae130..2f3fac0 100644 ---- a/src/VBox/Runtime/r3/linux/sysfs.cpp -+++ b/src/VBox/Runtime/r3/linux/sysfs.cpp -@@ -46,6 +46,7 @@ - #include <sys/sysctl.h> - #include <sys/stat.h> - #include <sys/fcntl.h> -+#include <sys/sysmacros.h> - #include <errno.h> - - diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.1.4-Makefile.module.kms.patch b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.1.4-Makefile.module.kms.patch deleted file mode 100644 index 3acd10cc..00000000 --- a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.1.4-Makefile.module.kms.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/src/VBox/Additions/linux/drm/Makefile.module.kms -+++ b/src/VBox/Additions/linux/drm/Makefile.module.kms -@@ -50,7 +50,7 @@ else - MANGLING := $(KBUILD_EXTMOD)/include/VBox/VBoxGuestMangling.h - endif - MOD_CFLAGS = -Wno-declaration-after-statement -fshort-wchar -include $(MANGLING) -fno-pie --MOD_INCL = $(addprefix -I$(KBUILD_EXTMOD),/ /include) -+MOD_INCL = $(addprefix -I$(KBUILD_EXTMOD),/ /include /r0drv/linux) - # What on earth is this? - MOD_INCL += $(addprefix -I$(KBUILD_EXTMOD)/vboxvideo,/ /include) - MOD_INCL += -Iinclude/drm diff --git a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-kms.patch b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-kms.patch deleted file mode 100644 index 56fdfd2a..00000000 --- a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-kms.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur a/src/VBox/Additions/linux/drm/Makefile.module.kms b/src/VBox/Additions/linux/drm/Makefile.module.kms ---- a/src/VBox/Additions/linux/drm/Makefile.module.kms 2017-07-17 16:58:30.000000000 +0100 -+++ b/src/VBox/Additions/linux/drm/Makefile.module.kms 2017-07-22 14:29:44.977047225 +0100 -@@ -50,7 +50,7 @@ - ifneq ($(KERN_VERSION),24) - MOD_CFLAGS += -include $(MANGLING) - endif --MOD_INCL = $(addprefix -I$(KBUILD_EXTMOD),/ /include) -+MOD_INCL = $(addprefix -I$(KBUILD_EXTMOD),/ /include /r0drv/linux) - # What on earth is this? - MOD_INCL += $(addprefix -I$(KBUILD_EXTMOD)/vboxvideo,/ /include) - MOD_INCL += -Iinclude/drm diff --git a/x11-drivers/xf86-video-virtualbox/xf86-video-virtualbox-5.1.28-r1710.ebuild b/x11-drivers/xf86-video-virtualbox/xf86-video-virtualbox-5.1.28-r1710.ebuild deleted file mode 100644 index b2c94230..00000000 --- a/x11-drivers/xf86-video-virtualbox/xf86-video-virtualbox-5.1.28-r1710.ebuild +++ /dev/null @@ -1,195 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -PYTHON_COMPAT=( python2_7 ) -inherit eutils multilib python-single-r1 versionator toolchain-funcs - -MY_PV="${PV/beta/BETA}" -MY_PV="${MY_PV/rc/RC}" -MY_P=VirtualBox-${MY_PV} -DESCRIPTION="VirtualBox X11 video driver for Gentoo guest" -HOMEPAGE="http://www.virtualbox.org/" -SRC_URI="http://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="amd64 x86" -IUSE="+dri" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -RDEPEND=" - >=x11-base/xorg-server-1.7:=[-minimal] - x11-libs/libXcomposite - ${PYTHON_DEPS}" -DEPEND="${RDEPEND} - >=dev-lang/yasm-0.6.2 - >=dev-util/kbuild-0.1.9998_pre20131130 - sys-power/iasl - x11-proto/fontsproto - x11-proto/randrproto - x11-proto/renderproto - x11-proto/resourceproto - x11-proto/scrnsaverproto - x11-proto/xextproto - x11-proto/xineramaproto - x11-proto/xproto - x11-libs/libXdmcp - x11-libs/libXau - x11-libs/libX11 - x11-libs/libXfixes - x11-libs/libXext - dri? ( x11-proto/xf86driproto - >=x11-libs/libdrm-2.4.5 )" -PDEPEND="dri? ( ~app-emulation/virtualbox-guest-additions-${PV} )" - -BUILD_TARGETS="all" -BUILD_TARGET_ARCH="${ARCH}" -S="${WORKDIR}/${MY_P}" -MODULES_SRC_DIR="${S}/src/VBox/Additions/linux/drm" - -PATCHES=( - # Ugly hack to build the opengl part of the video driver - "${FILESDIR}/${PN}-2.2.0-enable-opengl.patch" - - # unset useless/problematic checks in configure - "${FILESDIR}/${PN}-5.0.0_beta3-configure_checks.patch" - - # xorg-1.19 patch from opensuse (bug #602784) - "${FILESDIR}/${PN}-5.1.10-xorg119.patch" - - # fix bug #579946 - "${FILESDIR}/${PN}-5.1.22-sysmacros.patch" -) - -QA_TEXTRELS_x86="usr/lib/VBoxOGL.so" - -pkg_setup() { - if [ "${MERGE_TYPE}" != "binary" ]; then - version_is_at_least 4.9 $(gcc-version) || die "Please set gcc 4.9 or higher as active in gcc-config to build ${PN}" - fi - - python-single-r1_pkg_setup -} - -src_prepare() { - # Prepare the vboxvideo_drm Makefiles and build dir - eapply "${FILESDIR}"/${PN}-kms.patch - - # Remove shipped binaries (kBuild,yasm), see bug #232775 - rm -r kBuild/bin tools || die - - # Disable things unused or splitted into separate ebuilds - cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die - - # Remove pointless GCC version check - sed -e '/^check_gcc$/d' -i configure || die - - default - - # link with lazy on hardened #394757 - sed '/^TEMPLATE_VBOXR3EXE_LDFLAGS.linux/s/$/ -Wl,-z,lazy/' \ - -i Config.kmk || die -} - -src_configure() { - # build the user-space tools, warnings are harmless - local cmd=( - ./configure - --nofatal - --disable-xpcom - --disable-sdl-ttf - --disable-pulse - --disable-alsa - --with-gcc="$(tc-getCC)" - --with-g++="$(tc-getCXX)" - --target-arch=${ARCH} - --with-linux="${KV_OUT_DIR}" - --build-headless - ) - echo "${cmd[@]}" - "${cmd[@]}" || die "configure failed" - source ./env.sh - export VBOX_GCC_OPT="${CFLAGS} ${CPPFLAGS}" -} - -src_compile() { - local each targets=( - Runtime - Additions/common/VBoxGuestLib - GuestHost/OpenGL - Additions/x11/x11stubs - Additions/common/crOpenGL - Additions/x11/vboxvideo - ) - - # need to use the upstream build system to create necessary objects properly - use dri && targets+=( Additions/linux/drm ) - - for each in ${targets[@]} ; do - pushd "${S}"/src/VBox/${each} &>/dev/null || die - MAKE="kmk" \ - emake TOOL_YASM_AS=yasm \ - VBOX_USE_SYSTEM_XORG_HEADERS=1 \ - KBUILD_PATH="${S}/kBuild" \ - KBUILD_VERBOSE=2 - popd &>/dev/null || die - done - - if use dri; then - local objdir="out/linux.${ARCH}/release/obj/vboxvideo_drm" - # We need a Makefile, so use Makefile.module.kms - ln -s Makefile.module.kms "${MODULES_SRC_DIR}"/Makefile || die - # All of these are expected to be in $(KBUILD_EXTMOD)/ so symlink them into place - targets=( - include - src/VBox/Runtime/r0drv - src/VBox/Installer/linux/Makefile.include.{head,foot}er - out/linux.${ARCH}/release/{product,version,revision}-generated.h - ) - for each in ${targets[@]} ; do - ln -s "${S}"/${each} \ - "${MODULES_SRC_DIR}"/${each##*/} || die - done - # see the vboxvideo_drm_SOURCES list in Makefile.kmk for the below, - # and replace '..' with 'dt' - targets=( - dt/dt/common/VBoxVideo/HGSMIBase.o - dt/dt/common/VBoxVideo/Modesetting.o - dt/dt/common/VBoxVideo/VBVABase.o - dt/dt/dt/GuestHost/HGSMI/HGSMICommon.o - dt/dt/dt/GuestHost/HGSMI/HGSMIMemAlloc.o - dt/dt/dt/Runtime/common/alloc/heapoffset.o - ) - for each in ${targets[@]} ; do - ln -s "${S}"/${objdir}/${each} \ - "${MODULES_SRC_DIR}" || die - ln -s "${S}"/${objdir}/${each}.dep \ - "${MODULES_SRC_DIR}" || die - done - fi -} - -src_install() { - cd "${S}/out/linux.${ARCH}/release/bin/additions" || die - insinto /usr/$(get_libdir)/xorg/modules/drivers - newins vboxvideo_drv_system.so vboxvideo_drv.so - - # Guest OpenGL driver - insinto /usr/$(get_libdir) - doins -r VBoxOGL* - - if use dri ; then - dosym /usr/$(get_libdir)/VBoxOGL.so \ - /usr/$(get_libdir)/dri/vboxvideo_dri.so - fi -} - -pkg_postinst() { - elog "You need to edit the file /etc/X11/xorg.conf and set:" - elog "" - elog " Driver \"vboxvideo\"" - elog "" - elog "in the Graphics device section (Section \"Device\")" -} |