summaryrefslogtreecommitdiff
path: root/x11-drivers
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-11-18 09:38:27 +0000
committerV3n3RiX <venerix@redcorelinux.org>2018-11-18 09:38:27 +0000
commit536c3711867ec947c1738f2c4b96f22e4863322d (patch)
tree697733f5cb713908dcf378e13fd15a798a906a91 /x11-drivers
parentf65628136faa35d0c4d3b5e7332275c7b35fcd96 (diff)
gentoo resync : 18.11.2018
Diffstat (limited to 'x11-drivers')
-rw-r--r--x11-drivers/Manifest.gzbin6019 -> 6023 bytes
-rw-r--r--x11-drivers/nvidia-drivers/Manifest4
-rw-r--r--x11-drivers/nvidia-drivers/nvidia-drivers-410.78.ebuild590
-rw-r--r--x11-drivers/xf86-video-vboxvideo/Manifest2
-rw-r--r--x11-drivers/xf86-video-vboxvideo/xf86-video-vboxvideo-1.0.0.ebuild3
5 files changed, 597 insertions, 2 deletions
diff --git a/x11-drivers/Manifest.gz b/x11-drivers/Manifest.gz
index 39b2beeba2be..0bf2477c09a2 100644
--- a/x11-drivers/Manifest.gz
+++ b/x11-drivers/Manifest.gz
Binary files differ
diff --git a/x11-drivers/nvidia-drivers/Manifest b/x11-drivers/nvidia-drivers/Manifest
index 5c0564c44112..ffde376974c6 100644
--- a/x11-drivers/nvidia-drivers/Manifest
+++ b/x11-drivers/nvidia-drivers/Manifest
@@ -37,6 +37,7 @@ DIST NVIDIA-FreeBSD-x86_64-396.54.tar.gz 60938322 BLAKE2B a23488b625a15703b0c40b
DIST NVIDIA-FreeBSD-x86_64-410.57.tar.gz 62103893 BLAKE2B 30313d5d0759e85ca9679e2fd5f7a6b816bf9d7b3afcb068b9de50639461d15ef3e1e0b552430271cfbfed32b20762f9bf439ed5f9450b3741c8b3436ac12cdf SHA512 1a7f0d32ce7619ebb9f6f1c1de3c1ef50747fe10864480529d6602534657cc8b9200970da080dfc0440963c00e9fb23f11e1904ced4898010757946c967af8a1
DIST NVIDIA-FreeBSD-x86_64-410.66.tar.gz 61916683 BLAKE2B 835e40820339ce333a92b757087a09d8340cf957fa42257cbde1337b00c3156bb5ef23ba7c727b94146883c93e6a55a20ae5db4017d28f79d7d58b17d3b372d5 SHA512 c17d999c1f971ec597a6c52067f97f5395c5ca745d8db4b8c8f4d8519bf244b083b2ab0ac65f1bcf8b1525d18f1fb297092231edf7a7bb175befaaaf51601c06
DIST NVIDIA-FreeBSD-x86_64-410.73.tar.gz 61931692 BLAKE2B 6746f4980a13f5e62816a0ad443a96151fe2053aa6df3184a4c36040a77a52673248474f5025707af1b36d3f3e90b30964f44f251ec804d965792c454b6cd0ca SHA512 3a9aed0996ab1a6cad935ddac669c06d79a82013fbc2297945d8c75fde1a05c9b97d785f230092dc7d931b81f668c8427980f4563ca46d3648b568ad023cf23e
+DIST NVIDIA-FreeBSD-x86_64-410.78.tar.gz 61935486 BLAKE2B 3bc85aacd0775b600c37cd285de49fe3d35bba04fd8d3db1ec75f1fdfbd93a9d5b3d34b67e6fd82b5056bff875ccbc44cd2f06fed9b66703b26057c85f750867 SHA512 30488f9e5e6a377a478c49f13d648fba77ac910f43c3e561ce7715380480ac8b3860fecfb5b745beefadb6abe0b4c4135684c468a69c5b71b56cd463698b931a
DIST NVIDIA-Linux-armv7l-gnueabihf-375.82.run 26650801 BLAKE2B 31446667065c56b48f6a3e737afe29a4517459d3462138136bffe383bc6fe514d6e80b49c391c27edc96b8abc3da3dd4d6ee3f3dca17f3c9a0f1cdf0e72cf099 SHA512 28554f1c24fe63c9257c0de3e84e4e739a45bf1c20ec7a53bc2c1b69b4e2355675061491ef5b03f3ae489cf623e553cfa68442f5536f137837327036d1c53d63
DIST NVIDIA-Linux-armv7l-gnueabihf-378.13.run 26514235 BLAKE2B 2b3c540704496a290be7ae3f1ff378487c75af2298c12488da8b3a1814446e5df02a1ed99afd8ee7fc459d950aab472155359eae0bf56ac83389711d70638152 SHA512 253786a821df85fa926ae842114321b3c70502f887ea7c2b6790dfe3836039ee5d390e6722ca8785904ec6487e465916923d3042dc6191b3b4522c3161b80cb0
DIST NVIDIA-Linux-armv7l-gnueabihf-381.22.run 26815484 BLAKE2B e5f0241b07d1e54edea2025dd30061d1018c68cc2c7136c507eb894bbad5be3d0724494e2b9f33d1f8f60da4904999bbb964e6f2e78d045d7cd86bcd46b7f6d0 SHA512 934cda37c7aed26243b5b661122e1c060de5b4df890aaf2295b6650dddea37cb4f0e3f0bebddb00b5d687b66ab5e028a203195c4d4ad3379593babda42febe77
@@ -63,6 +64,7 @@ DIST NVIDIA-Linux-x86_64-396.54.run 86946680 BLAKE2B 9b3ab39c9d09c663238d0fac634
DIST NVIDIA-Linux-x86_64-410.57.run 107221029 BLAKE2B e873c9a21422fde847c10fd4286705e6ad6942c8a8f86cd514cbb8782f792051b1b1645990bd3a8ad025eeded853d23f9925b16a5bb108524346602462eaa1b8 SHA512 2ba6b4b7829410152e0fa57772969ca59f134995ef93d08c12cc6a7a97e081c1d718600a25f541444ce66603ed84b99e66b0ced6fb773ca40f98cd5dc1348d79
DIST NVIDIA-Linux-x86_64-410.66.run 107130897 BLAKE2B 1f294dd1b248fede6c8a418ffadd3035a9d1c516b9b52a04dc2366fa7dab63993bd2d7d111c0bbc4cc12411bbb219fb504dec1e82e1bfb72a25e719917b32147 SHA512 1773ea5150822735cf02808df68cd2f9ff8b502633632a7748b4bff387daec44527f1bfb0508938c9eee7fb12ac070b99b3f5a903e592bf6d9c6461f4f7a7e9e
DIST NVIDIA-Linux-x86_64-410.73.run 107004565 BLAKE2B c55655aefc410883b4b2c63305e3a9fc66ce2b611cd79fe8fe3225fec49a31ed73707fa4a6e1998fa19e7d13b859af0b5a5bb76f37109fbd9e39e0aa36afbac2 SHA512 2dca98babb4b2ce319089b179619444e1ef9b4b94c0d1981982c35a234f9e6934febe3ec3ca39cf1b3672a126b4290b1bc54469a0617b7fdebb4871cc4c75bac
+DIST NVIDIA-Linux-x86_64-410.78.run 107944209 BLAKE2B f493efb4b61716ae1f7ac760d57b330e0160e8cd7a90e80dd00744c2277d0c8024f6704eac3a9f95ff13d66f362bf9eecdc8176edb429ea7e45c4622b52beca7 SHA512 0bd7ed61dcfd4d7634ba450b106d7648fc274c256e7e4c4e51e544bd7779d68ffa08cba709ace5333679eeea1dbe4afa0c267361887eaa784d6f1369b717677d
DIST nvidia-settings-304.137.tar.bz2 1481361 BLAKE2B cf52a55a34eeb03a685a683487af6a198ba467dd8ba9983cc75624a37a226373cd931d98e8448b7b8ed430c54be2118c7b240ed2a9100b19bec5e832e2f6cdad SHA512 676d1f70c9a78ee234f5f1a283412430a386fa604de211afba02806a45906c5e246a002989b724d74752178d28c92a268de1c98d4c87876797d991253f16b0cc
DIST nvidia-settings-340.107.tar.bz2 1549413 BLAKE2B 127442ee2c35ceec47ab4f103bdd2d0278c621fcb9be47051111f6f8728ef5699bdc95fe33a3812a807c38c4868b04c2176e2ed218a422171d2a88ac0c00de96 SHA512 593e7e83aa350a3a7beaaa32aca8660d7e203f6f2e460a6e6eabcdc092087f9917ee4e6d141e37ad4e3b0a1b9908c085e4a71d2f579e481a03bbd1c6f75ca776
DIST nvidia-settings-375.82.tar.gz 2114647 BLAKE2B 26413fde8397e748fae362984039286c53a7fe104228452f3188b5e77b084ff4bf00131e77359ff5e92dfc325680c1f662950175cf806403d2a524ba86158f51 SHA512 7a374be56c8be52767d73a048029d9e55dc2abcf2f6a97eb4931544c927c85a1103a206be9e8d1ffcef36fec2caf2416f33699ad4d51e7dca17e4e844c37a595
@@ -75,6 +77,7 @@ DIST nvidia-settings-396.54.tar.bz2 1116371 BLAKE2B 114b88f393b0909c8d84a56a2808
DIST nvidia-settings-410.57.tar.bz2 1115668 BLAKE2B 7c6554226110da4dcff9b71bde0f1caa9c857a170da65d0224db0c1c0445b34a91db2858d371cc1f0ddc895d361fe074b95c7c421dc55eeebe478a7faa313db8 SHA512 c909af30b31d32e1369970c9a52eae0cf8018be509ce8297f5a60d25a937ec1abe18dc6462f12c9b20fb52d83157c60af53eb599a353748ad976f7a0a67cd756
DIST nvidia-settings-410.66.tar.bz2 1115615 BLAKE2B e9e608978849a9b3106745c80ddd85270406e1c1fd6c5353a19e54877a5b3e8aa3f169c06c669a2278a40f64e2cc27930565c02ff2d40250030933b05ecdb962 SHA512 90e4716622d9eabdc32b707fb139390f228db0d60b55bc5d1e3e15ead64ee47a49fd15e47301a85f1ea7dbfb5ae877e03d4b48c88e47db08f3c3ebd280abe989
DIST nvidia-settings-410.73.tar.bz2 1115717 BLAKE2B 7a6ea49cfc378ba7c91c89be51d0761cf2b5a9e872de2169f59e236d75669e86b29719d0479c26d6194ffecef7f8a57e7a18f33efc9356b44299d99c683ccbaf SHA512 b8b95c8a03242b1793fb5694330d57446e06a2c2eeaae4100d2366a48336941b03a51f426648f78fe3b59f858f4261018f7cdd9d28d2bce352187f74b4d1730b
+DIST nvidia-settings-410.78.tar.bz2 1115872 BLAKE2B 68471e3c3700c68c1082bd7ca349a791a8b7c9524f71882d78791a11ac4ecaa28d40cdd32baea20354732b4ee8e47767ae8c12d534f95a96494da5787869b4c1 SHA512 28aae1cbec6004d4f532aac2a728d66384440525c3f35f1bf5b7221c4722ccd02be119d44b261204c0f0c116d5455eca7555d10cab3f6d4184a39255750ccf97
EBUILD nvidia-drivers-304.137.ebuild 13647 BLAKE2B ff0bc9bc9d98a5f38ebd791c696291d6c88d0e10ab68509c73ae7b9e1f8b3188027627dd02b99329b551c77819a4bf2d77625762d6ff2bbe25c3bbe14afdd0e5 SHA512 617d92a8eca878b7a69b7bedead069b672d827c48e7531da49d985a913d4295039d8f5d9e2566c9ee9192cc5191bd3c70400310ea682b71c479df6082692e70c
EBUILD nvidia-drivers-340.107.ebuild 14648 BLAKE2B 3456f822cf41e497637b880898189ee040b2113779fb28ba2a04193180ac3769e00d61e80e697f779f50dd55b055a95dfc480f8e2f6fe5d78a30219ddda5c30e SHA512 d3df565fdb9425fe568eb16c9dc7ca50ff832a54629012a92a5d8c3e60f358f4a286f371b14cc6365dc8465bc78e1a1bdf5cbd4ca9ce26497ad4cacd695cfcd8
EBUILD nvidia-drivers-375.82.ebuild 15848 BLAKE2B f89ad536d15a0df282744c7c26c995dc1d94b8af60e2a7fe3d40a06134526b8eba96c06ae999ae55efca4a21655893a4e53498d0f729f1b35affe891b81438cb SHA512 4778befb48304ed07f9e47174eaf0e519dcdc261906151246e54f3fb8383c5fb5c45b45e42165d69523057007ab44a9c7b400a907ddd167dfdd29dc422995f93
@@ -87,4 +90,5 @@ EBUILD nvidia-drivers-396.54.ebuild 15944 BLAKE2B e9741974f11dc113a84c55f9fbe863
EBUILD nvidia-drivers-410.57-r1.ebuild 16174 BLAKE2B a1557248b2f07b4a9025ed05f31fb59a96f2ab89209cc8267ef381da6e2fdb47746b3fdec46f00d10e6dc3fd40bbeb1472dd4efb1aea957108a8447ad2c79ea8 SHA512 5de509e3548bc0874079cbe8214639295f575bae473408019fe898e06b18412fc309496df3e4c205644bd97485a90c9ca825f665246c6f87a12bbf6dcf8d6ab3
EBUILD nvidia-drivers-410.66.ebuild 16174 BLAKE2B a1557248b2f07b4a9025ed05f31fb59a96f2ab89209cc8267ef381da6e2fdb47746b3fdec46f00d10e6dc3fd40bbeb1472dd4efb1aea957108a8447ad2c79ea8 SHA512 5de509e3548bc0874079cbe8214639295f575bae473408019fe898e06b18412fc309496df3e4c205644bd97485a90c9ca825f665246c6f87a12bbf6dcf8d6ab3
EBUILD nvidia-drivers-410.73.ebuild 16174 BLAKE2B e7ba8f1d5b63f7e012a7cb2e01ec25d791d7e9901d9687106316e723c230ca5e4a469c1adf554327bd3741dd801f7dad0a5e7920a3bda99f2dd6d3fe7429c3a3 SHA512 f38ee45ef5c9be1def85eb06b93df3512b8ce629b67004c4aca2ee47deac81823ab821e2711266992cea679c440717ba4f532ec3d7e2cf41fe4eefecacd8df62
+EBUILD nvidia-drivers-410.78.ebuild 16174 BLAKE2B e7ba8f1d5b63f7e012a7cb2e01ec25d791d7e9901d9687106316e723c230ca5e4a469c1adf554327bd3741dd801f7dad0a5e7920a3bda99f2dd6d3fe7429c3a3 SHA512 f38ee45ef5c9be1def85eb06b93df3512b8ce629b67004c4aca2ee47deac81823ab821e2711266992cea679c440717ba4f532ec3d7e2cf41fe4eefecacd8df62
MISC metadata.xml 1275 BLAKE2B df5cb10ac396802437bf6efb3e80226124c11d6167bef2b64c3e525c17fb27213b13d7413ef909469440804a373b6e5c7088c53e0a6b44897860b7276ac3de6b SHA512 464ba5638a5d82a6e6bcbfe11b52759846f9f81e3f223cc313e0059b923427f21dab95b84595d6bffad4441fec96fe5f01044be572b72add8196a812f5682edb
diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-410.78.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-410.78.ebuild
new file mode 100644
index 000000000000..3df39be58609
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-410.78.ebuild
@@ -0,0 +1,590 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit eutils flag-o-matic linux-info linux-mod multilib-minimal nvidia-driver \
+ portability toolchain-funcs unpacker user udev
+
+DESCRIPTION="NVIDIA Accelerated Graphics Driver"
+HOMEPAGE="http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx"
+
+AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
+AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
+ARM_NV_PACKAGE="NVIDIA-Linux-armv7l-gnueabihf-${PV}"
+
+NV_URI="http://us.download.nvidia.com/XFree86/"
+SRC_URI="
+ amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
+ amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
+ tools? (
+ https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-${PV}.tar.bz2
+ )
+"
+
+LICENSE="GPL-2 NVIDIA-r2"
+SLOT="0/${PV%.*}"
+KEYWORDS="-* ~amd64 ~amd64-fbsd"
+RESTRICT="bindist mirror"
+EMULTILIB_PKG="true"
+
+IUSE="acpi compat +driver gtk3 kernel_FreeBSD kernel_linux +kms multilib pax_kernel static-libs +tools uvm wayland +X"
+REQUIRED_USE="
+ tools? ( X )
+ static-libs? ( tools )
+"
+
+COMMON="
+ app-eselect/eselect-opencl
+ kernel_linux? ( >=sys-libs/glibc-2.6.1 )
+ tools? (
+ dev-libs/atk
+ dev-libs/glib:2
+ dev-libs/jansson
+ gtk3? (
+ x11-libs/gtk+:3
+ )
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf[X]
+ x11-libs/gtk+:2
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXrandr
+ x11-libs/libXv
+ x11-libs/libXxf86vm
+ x11-libs/pango[X]
+ )
+ X? (
+ >=app-eselect/eselect-opengl-1.0.9
+ app-misc/pax-utils
+ )
+"
+DEPEND="
+ ${COMMON}
+ kernel_linux? ( virtual/linux-sources )
+ tools? ( sys-apps/dbus )
+"
+RDEPEND="
+ ${COMMON}
+ acpi? ( sys-power/acpid )
+ tools? ( !media-video/nvidia-settings )
+ wayland? ( dev-libs/wayland[${MULTILIB_USEDEP}] )
+ X? (
+ <x11-base/xorg-server-1.20.99:=
+ >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libvdpau-1.0[${MULTILIB_USEDEP}]
+ sys-libs/zlib[${MULTILIB_USEDEP}]
+ )
+"
+QA_PREBUILT="opt/* usr/lib*"
+S=${WORKDIR}/
+
+nvidia_drivers_versions_check() {
+ if use amd64 && has_multilib_profile && \
+ [ "${DEFAULT_ABI}" != "amd64" ]; then
+ eerror "This ebuild doesn't currently support changing your default ABI"
+ die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
+ fi
+
+ if use kernel_linux && kernel_is ge 4 20; then
+ ewarn "Gentoo supports kernels which are supported by NVIDIA"
+ ewarn "which are limited to the following kernels:"
+ ewarn "<sys-kernel/gentoo-sources-4.20"
+ ewarn "<sys-kernel/vanilla-sources-4.20"
+ ewarn ""
+ ewarn "You are free to utilize epatch_user to provide whatever"
+ ewarn "support you feel is appropriate, but will not receive"
+ ewarn "support as a result of those changes."
+ ewarn ""
+ ewarn "Do not file a bug report about this."
+ ewarn ""
+ fi
+
+ # Since Nvidia ships many different series of drivers, we need to give the user
+ # some kind of guidance as to what version they should install. This tries
+ # to point the user in the right direction but can't be perfect. check
+ # nvidia-driver.eclass
+ nvidia-driver-check-warning
+
+ # Kernel features/options to check for
+ CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
+
+ # Now do the above checks
+ use kernel_linux && check_extra_config
+}
+
+pkg_pretend() {
+ nvidia_drivers_versions_check
+}
+
+pkg_setup() {
+ nvidia_drivers_versions_check
+
+ # try to turn off distcc and ccache for people that have a problem with it
+ export DISTCC_DISABLE=1
+ export CCACHE_DISABLE=1
+
+ if use driver && use kernel_linux; then
+ MODULE_NAMES="nvidia(video:${S}/kernel)"
+ use uvm && MODULE_NAMES+=" nvidia-uvm(video:${S}/kernel)"
+ use kms && MODULE_NAMES+=" nvidia-modeset(video:${S}/kernel) nvidia-drm(video:${S}/kernel)"
+
+ # This needs to run after MODULE_NAMES (so that the eclass checks
+ # whether the kernel supports loadable modules) but before BUILD_PARAMS
+ # is set (so that KV_DIR is populated).
+ linux-mod_pkg_setup
+
+ BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
+ SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC) NV_VERBOSE=1"
+
+ # linux-mod_src_compile calls set_arch_to_kernel, which
+ # sets the ARCH to x86 but NVIDIA's wrapping Makefile
+ # expects x86_64 or i386 and then converts it to x86
+ # later on in the build process
+ BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
+ fi
+
+ if use kernel_linux && kernel_is lt 2 6 9; then
+ eerror "You must build this against 2.6.9 or higher kernels."
+ fi
+
+ # set variables to where files are in the package structure
+ if use kernel_FreeBSD; then
+ use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
+ NV_DOC="${S}/doc"
+ NV_OBJ="${S}/obj"
+ NV_SRC="${S}/src"
+ NV_MAN="${S}/x11/man"
+ NV_X11="${S}/obj"
+ NV_SOVER=1
+ elif use kernel_linux; then
+ NV_DOC="${S}"
+ NV_OBJ="${S}"
+ NV_SRC="${S}/kernel"
+ NV_MAN="${S}"
+ NV_X11="${S}"
+ NV_SOVER=${PV}
+ else
+ die "Could not determine proper NVIDIA package"
+ fi
+}
+
+src_prepare() {
+ if use pax_kernel; then
+ ewarn "Using PAX patches is not supported. You will be asked to"
+ ewarn "use a standard kernel should you have issues. Should you"
+ ewarn "need support with these patches, contact the PaX team."
+ eapply "${FILESDIR}"/${PN}-375.20-pax.patch
+ fi
+
+ local man_file
+ for man_file in "${NV_MAN}"/*1.gz; do
+ gunzip $man_file || die
+ done
+
+ if use tools; then
+ cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || die
+ sed -i \
+ -e "s:@PV@:${PV}:g" \
+ "${WORKDIR}"/nvidia-settings-linker.patch || die
+ eapply "${WORKDIR}"/nvidia-settings-linker.patch
+ fi
+
+ default
+
+ if ! [ -f nvidia_icd.json ]; then
+ cp nvidia_icd.json.template nvidia_icd.json || die
+ sed -i -e 's:__NV_VK_ICD__:libGLX_nvidia.so.0:g' nvidia_icd.json || die
+ fi
+}
+
+src_compile() {
+ # This is already the default on Linux, as there's no toplevel Makefile, but
+ # on FreeBSD there's one and triggers the kernel module build, as we install
+ # it by itself, pass this.
+
+ cd "${NV_SRC}"
+ if use kernel_FreeBSD; then
+ MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
+ LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
+ elif use driver && use kernel_linux; then
+ MAKEOPTS=-j1 linux-mod_src_compile
+ fi
+
+ if use tools; then
+ emake -C "${S}"/nvidia-settings-${PV}/src \
+ AR="$(tc-getAR)" \
+ CC="$(tc-getCC)" \
+ DO_STRIP= \
+ LD="$(tc-getCC)" \
+ LIBDIR="$(get_libdir)" \
+ NVLD="$(tc-getLD)" \
+ NV_VERBOSE=1 \
+ RANLIB="$(tc-getRANLIB)" \
+ build-xnvctrl
+
+ emake -C "${S}"/nvidia-settings-${PV}/src \
+ CC="$(tc-getCC)" \
+ DO_STRIP= \
+ GTK3_AVAILABLE=$(usex gtk3 1 0) \
+ LD="$(tc-getCC)" \
+ LIBDIR="$(get_libdir)" \
+ NVLD="$(tc-getLD)" \
+ NVML_ENABLED=0 \
+ NV_USE_BUNDLED_LIBJANSSON=0 \
+ NV_VERBOSE=1
+ fi
+}
+
+# Install nvidia library:
+# the first parameter is the library to install
+# the second parameter is the provided soversion
+# the third parameter is the target directory if it is not /usr/lib
+donvidia() {
+ # Full path to library
+ nv_LIB="${1}"
+
+ # SOVER to use
+ nv_SOVER="$(scanelf -qF'%S#F' ${nv_LIB})"
+
+ # Where to install
+ nv_DEST="${2}"
+
+ # Get just the library name
+ nv_LIBNAME=$(basename "${nv_LIB}")
+
+ if [[ "${nv_DEST}" ]]; then
+ exeinto ${nv_DEST}
+ action="doexe"
+ else
+ nv_DEST="/usr/$(get_libdir)"
+ action="dolib.so"
+ fi
+
+ # Install the library
+ ${action} ${nv_LIB} || die "failed to install ${nv_LIBNAME}"
+
+ # If the library has a SONAME and SONAME does not match the library name,
+ # then we need to create a symlink
+ if [[ ${nv_SOVER} ]] && ! [[ "${nv_SOVER}" = "${nv_LIBNAME}" ]]; then
+ dosym ${nv_LIBNAME} ${nv_DEST}/${nv_SOVER} \
+ || die "failed to create ${nv_DEST}/${nv_SOVER} symlink"
+ fi
+
+ dosym ${nv_LIBNAME} ${nv_DEST}/${nv_LIBNAME/.so*/.so} \
+ || die "failed to create ${nv_LIBNAME/.so*/.so} symlink"
+}
+
+src_install() {
+ if use driver && use kernel_linux; then
+ linux-mod_src_install
+
+ # Add the aliases
+ # This file is tweaked with the appropriate video group in
+ # pkg_preinst, see bug #491414
+ insinto /etc/modprobe.d
+ newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
+ doins "${FILESDIR}"/nvidia-rmmod.conf
+
+ # Ensures that our device nodes are created when not using X
+ exeinto "$(get_udevdir)"
+ newexe "${FILESDIR}"/nvidia-udev.sh-r1 nvidia-udev.sh
+ udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
+ elif use kernel_FreeBSD; then
+ if use x86-fbsd; then
+ insinto /boot/modules
+ doins "${S}/src/nvidia.kld"
+ fi
+
+ exeinto /boot/modules
+ doexe "${S}/src/nvidia.ko"
+ fi
+
+ # NVIDIA kernel <-> userspace driver config lib
+ donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER}
+
+ # NVIDIA framebuffer capture library
+ donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER}
+
+ # NVIDIA video encode/decode <-> CUDA
+ if use kernel_linux; then
+ donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER}
+ donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER}
+ fi
+
+ if use X; then
+ # Xorg DDX driver
+ insinto /usr/$(get_libdir)/xorg/modules/drivers
+ doins ${NV_X11}/nvidia_drv.so
+
+ # Xorg GLX driver
+ donvidia ${NV_X11}/libglxserver_nvidia.so.${NV_SOVER} \
+ /usr/$(get_libdir)/xorg/modules/extensions
+
+ # Xorg nvidia.conf
+ if has_version '>=x11-base/xorg-server-1.16'; then
+ insinto /usr/share/X11/xorg.conf.d
+ newins {,50-}nvidia-drm-outputclass.conf
+ fi
+
+ insinto /usr/share/glvnd/egl_vendor.d
+ doins ${NV_X11}/10_nvidia.json
+ fi
+
+ if use wayland; then
+ insinto /usr/share/egl/egl_external_platform.d
+ doins ${NV_X11}/10_nvidia_wayland.json
+ fi
+
+ # OpenCL ICD for NVIDIA
+ if use kernel_linux; then
+ insinto /etc/OpenCL/vendors
+ doins ${NV_OBJ}/nvidia.icd
+ fi
+
+ # Documentation
+ if use kernel_FreeBSD; then
+ dodoc "${NV_DOC}/README"
+ use X && doman "${NV_MAN}"/nvidia-xconfig.1
+ use tools && doman "${NV_MAN}"/nvidia-settings.1
+ else
+ # Docs
+ newdoc "${NV_DOC}/README.txt" README
+ dodoc "${NV_DOC}/NVIDIA_Changelog"
+ doman "${NV_MAN}"/nvidia-smi.1
+ use X && doman "${NV_MAN}"/nvidia-xconfig.1
+ use tools && doman "${NV_MAN}"/nvidia-settings.1
+ doman "${NV_MAN}"/nvidia-cuda-mps-control.1
+ fi
+
+ docinto html
+ dodoc -r ${NV_DOC}/html/*
+
+ # Helper Apps
+ exeinto /opt/bin/
+
+ if use X; then
+ doexe ${NV_OBJ}/nvidia-xconfig
+
+ insinto /etc/vulkan/icd.d
+ doins nvidia_icd.json
+ fi
+
+ if use kernel_linux; then
+ doexe ${NV_OBJ}/nvidia-cuda-mps-control
+ doexe ${NV_OBJ}/nvidia-cuda-mps-server
+ doexe ${NV_OBJ}/nvidia-debugdump
+ doexe ${NV_OBJ}/nvidia-persistenced
+ doexe ${NV_OBJ}/nvidia-smi
+
+ # install nvidia-modprobe setuid and symlink in /usr/bin (bug #505092)
+ doexe ${NV_OBJ}/nvidia-modprobe
+ fowners root:video /opt/bin/nvidia-modprobe
+ fperms 4710 /opt/bin/nvidia-modprobe
+ dosym /{opt,usr}/bin/nvidia-modprobe
+
+ doman nvidia-cuda-mps-control.1
+ doman nvidia-modprobe.1
+ doman nvidia-persistenced.1
+ newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
+ newconfd "${FILESDIR}/nvidia-persistenced.conf" nvidia-persistenced
+ newinitd "${FILESDIR}/nvidia-persistenced.init" nvidia-persistenced
+ fi
+
+ if use tools; then
+ emake -C "${S}"/nvidia-settings-${PV}/src/ \
+ DESTDIR="${D}" \
+ GTK3_AVAILABLE=$(usex gtk3 1 0) \
+ LIBDIR="${D}/usr/$(get_libdir)" \
+ NV_USE_BUNDLED_LIBJANSSON=0 \
+ NV_VERBOSE=1 \
+ PREFIX=/usr \
+ DO_STRIP= \
+ install
+
+ if use static-libs; then
+ dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
+
+ insinto /usr/include/NVCtrl
+ doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
+ fi
+
+ insinto /usr/share/nvidia/
+ doins nvidia-application-profiles-${PV}-key-documentation
+
+ insinto /etc/nvidia
+ newins \
+ nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
+
+ # There is no icon in the FreeBSD tarball.
+ use kernel_FreeBSD || \
+ doicon ${NV_OBJ}/nvidia-settings.png
+
+ domenu "${FILESDIR}"/nvidia-settings.desktop
+
+ exeinto /etc/X11/xinit/xinitrc.d
+ newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
+ fi
+
+ dobin ${NV_OBJ}/nvidia-bug-report.sh
+
+ if has_multilib_profile && use multilib; then
+ local OABI=${ABI}
+ for ABI in $(get_install_abis); do
+ src_install-libs
+ done
+ ABI=${OABI}
+ unset OABI
+ else
+ src_install-libs
+ fi
+
+ is_final_abi || die "failed to iterate through all ABIs"
+
+ readme.gentoo_create_doc
+}
+
+src_install-libs() {
+ local inslibdir=$(get_libdir)
+ local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
+ local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
+ local nv_libdir="${NV_OBJ}"
+
+ if use kernel_linux && has_multilib_profile && [[ ${ABI} == "x86" ]]; then
+ nv_libdir="${NV_OBJ}"/32
+ fi
+
+ if use X; then
+ NV_GLX_LIBRARIES=(
+ "libEGL.so.$(usex compat ${NV_SOVER} 1.1.0) ${GL_ROOT}"
+ "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}"
+ "libGL.so.$(usex compat ${NV_SOVER} 1.7.0) ${GL_ROOT}"
+ "libGLESv1_CM.so.1.2.0 ${GL_ROOT}"
+ "libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}"
+ "libGLESv2.so.2.1.0 ${GL_ROOT}"
+ "libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}"
+ "libGLX.so.0 ${GL_ROOT}"
+ "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}"
+ "libGLdispatch.so.0 ${GL_ROOT}"
+ "libOpenCL.so.1.0.0 ${CL_ROOT}"
+ "libOpenGL.so.0 ${GL_ROOT}"
+ "libcuda.so.${NV_SOVER}"
+ "libnvcuvid.so.${NV_SOVER}"
+ "libnvidia-compiler.so.${NV_SOVER}"
+ "libnvidia-eglcore.so.${NV_SOVER}"
+ "libnvidia-encode.so.${NV_SOVER}"
+ "libnvidia-fatbinaryloader.so.${NV_SOVER}"
+ "libnvidia-fbc.so.${NV_SOVER}"
+ "libnvidia-glcore.so.${NV_SOVER}"
+ "libnvidia-glsi.so.${NV_SOVER}"
+ "libnvidia-glvkspirv.so.${NV_SOVER}"
+ "libnvidia-ifr.so.${NV_SOVER}"
+ "libnvidia-opencl.so.${NV_SOVER}"
+ "libnvidia-ptxjitcompiler.so.${NV_SOVER}"
+ "libvdpau_nvidia.so.${NV_SOVER}"
+ )
+
+ if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]];
+ then
+ NV_GLX_LIBRARIES+=(
+ "libnvidia-egl-wayland.so.1.1.0"
+ )
+ fi
+
+ if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
+ then
+ NV_GLX_LIBRARIES+=(
+ "libnvidia-wfb.so.${NV_SOVER}"
+ )
+ fi
+
+ if use kernel_FreeBSD; then
+ NV_GLX_LIBRARIES+=(
+ "libnvidia-tls.so.${NV_SOVER}"
+ )
+ fi
+
+ if use kernel_linux; then
+ NV_GLX_LIBRARIES+=(
+ "libnvidia-ml.so.${NV_SOVER}"
+ "tls/libnvidia-tls.so.${NV_SOVER}"
+ )
+ fi
+
+ if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]];
+ then
+ NV_GLX_LIBRARIES+=(
+ "libnvidia-cbl.so.${NV_SOVER}"
+ "libnvidia-rtcore.so.${NV_SOVER}"
+ "libnvoptix.so.${NV_SOVER}"
+ )
+ fi
+
+ for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do
+ donvidia "${nv_libdir}"/${NV_LIB}
+ done
+ fi
+}
+
+pkg_preinst() {
+ if use driver && use kernel_linux; then
+ linux-mod_pkg_preinst
+
+ local videogroup="$(egetent group video | cut -d ':' -f 3)"
+ if [ -z "${videogroup}" ]; then
+ eerror "Failed to determine the video group gid"
+ die "Failed to determine the video group gid"
+ else
+ sed -i \
+ -e "s:PACKAGE:${PF}:g" \
+ -e "s:VIDEOGID:${videogroup}:" \
+ "${D}"/etc/modprobe.d/nvidia.conf || die
+ fi
+ fi
+
+ # Clean the dynamic libGL stuff's home to ensure
+ # we dont have stale libs floating around
+ if [ -d "${ROOT}"/usr/lib/opengl/nvidia ]; then
+ rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
+ fi
+ # Make sure we nuke the old nvidia-glx's env.d file
+ if [ -e "${ROOT}"/etc/env.d/09nvidia ]; then
+ rm -f "${ROOT}"/etc/env.d/09nvidia
+ fi
+}
+
+pkg_postinst() {
+ use driver && use kernel_linux && linux-mod_pkg_postinst
+
+ # Switch to the nvidia implementation
+ use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
+ "${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
+
+ readme.gentoo_print_elog
+
+ if ! use X; then
+ elog "You have elected to not install the X.org driver. Along with"
+ elog "this the OpenGL libraries and VDPAU libraries were not"
+ elog "installed. Additionally, once the driver is loaded your card"
+ elog "and fan will run at max speed which may not be desirable."
+ elog "Use the 'nvidia-smi' init script to have your card and fan"
+ elog "speed scale appropriately."
+ elog
+ fi
+ if ! use tools; then
+ elog "USE=tools controls whether the nvidia-settings application"
+ elog "is installed. If you would like to use it, enable that"
+ elog "flag and re-emerge this ebuild. Optionally you can install"
+ elog "media-video/nvidia-settings"
+ elog
+ fi
+}
+
+pkg_prerm() {
+ use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
+}
+
+pkg_postrm() {
+ use driver && use kernel_linux && linux-mod_pkg_postrm
+ use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
+}
diff --git a/x11-drivers/xf86-video-vboxvideo/Manifest b/x11-drivers/xf86-video-vboxvideo/Manifest
index 0dc7878cfa30..54f4b6c4a835 100644
--- a/x11-drivers/xf86-video-vboxvideo/Manifest
+++ b/x11-drivers/xf86-video-vboxvideo/Manifest
@@ -1,3 +1,3 @@
DIST xf86-video-vboxvideo-1.0.0.tar.bz2 353342 BLAKE2B 8088e150c8e91dd4872218773c2d57a052935926fe08c18d9f5165b112d6213bf79c80d85fd4d10c1b12bd2ac222983b3dbf241cb97c1cb087f4137314a95ead SHA512 1a9856a966495a3a291592ee3113ed5ee83e3ef530bf37d91605206a62f641726511ad48ca79b8a3e94f601f8cf15341255b0c7d14f5c8acf985b84f965d8dfc
-EBUILD xf86-video-vboxvideo-1.0.0.ebuild 419 BLAKE2B 8b57037dfbb399c5d2bb0c261f3fe08cb0ab25624fba23e7838e4a2c6a4f4e0b46e849952ba21754d6dc98bd260aa978b281fb1b1ed9024a52667a419be92a94 SHA512 58a6cec888a9c0be3aab5dacff8e5a22143dfc131d09fa041dfb762227894963c2285f722f4305a76082df7aba1b42be8eb5a545cd0d75bf8d35e849384e58f8
+EBUILD xf86-video-vboxvideo-1.0.0.ebuild 452 BLAKE2B d6ba25c1a6e49b5b6e843493ee8258dc9237283cc0272bd1f2da254cd5e05cfc53e76cf3317838629d76664863db73467c3beed084b17e20abff4da4de61d099 SHA512 4bbb0b3abdebfbf59be4774d1cae1a1cc395845791e93e2bd44281c4c8a880a7bfc9c54edc8b465406ea6521e647458ce76c86a3b4c93c2c9463e1442fe95b21
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
index c2869693013c..8409576b357f 100644
--- 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
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -12,6 +12,7 @@ KEYWORDS="amd64 x86"
IUSE=""
RDEPEND="
+ !x11-drivers/xf86-video-virtualbox
>=x11-base/xorg-server-1.8:=[-minimal]
x11-libs/libXcomposite
x11-libs/libpciaccess