Gentoo Archives: gentoo-commits

From: "Doug Goldstein (cardoe)" <cardoe@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in x11-drivers/nvidia-drivers: ChangeLog nvidia-drivers-256.53.ebuild
Date: Tue, 31 Aug 2010 15:57:54
Message-Id: 20100831155749.1F9A220051@flycatcher.gentoo.org
1 cardoe 10/08/31 15:57:49
2
3 Modified: ChangeLog
4 Added: nvidia-drivers-256.53.ebuild
5 Log:
6 version bump
7 (Portage version: 2.1.8.3/cvs/Linux x86_64)
8
9 Revision Changes Path
10 1.251 x11-drivers/nvidia-drivers/ChangeLog
11
12 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-drivers/nvidia-drivers/ChangeLog?rev=1.251&view=markup
13 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-drivers/nvidia-drivers/ChangeLog?rev=1.251&content-type=text/plain
14 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-drivers/nvidia-drivers/ChangeLog?r1=1.250&r2=1.251
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/ChangeLog,v
19 retrieving revision 1.250
20 retrieving revision 1.251
21 diff -u -r1.250 -r1.251
22 --- ChangeLog 30 Aug 2010 22:41:34 -0000 1.250
23 +++ ChangeLog 31 Aug 2010 15:57:49 -0000 1.251
24 @@ -1,6 +1,12 @@
25 # ChangeLog for x11-drivers/nvidia-drivers
26 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/ChangeLog,v 1.250 2010/08/30 22:41:34 cardoe Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/ChangeLog,v 1.251 2010/08/31 15:57:49 cardoe Exp $
29 +
30 +*nvidia-drivers-256.53 (31 Aug 2010)
31 +
32 + 31 Aug 2010; Doug Goldstein <cardoe@g.o>
33 + +nvidia-drivers-256.53.ebuild:
34 + version bump
35
36 30 Aug 2010; Doug Goldstein <cardoe@g.o>
37 nvidia-drivers-256.44-r1.ebuild, nvidia-drivers-256.52.ebuild:
38
39
40
41 1.1 x11-drivers/nvidia-drivers/nvidia-drivers-256.53.ebuild
42
43 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-256.53.ebuild?rev=1.1&view=markup
44 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-256.53.ebuild?rev=1.1&content-type=text/plain
45
46 Index: nvidia-drivers-256.53.ebuild
47 ===================================================================
48 # Copyright 1999-2010 Gentoo Foundation
49 # Distributed under the terms of the GNU General Public License v2
50 # $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-256.53.ebuild,v 1.1 2010/08/31 15:57:49 cardoe Exp $
51
52 EAPI="2"
53
54 inherit eutils multilib versionator linux-mod flag-o-matic nvidia-driver
55
56 X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
57 AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
58 X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
59
60 DESCRIPTION="NVIDIA X11 driver and GLX libraries"
61 HOMEPAGE="http://www.nvidia.com/"
62 SRC_URI="x86? ( ftp://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
63 amd64? ( ftp://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
64 x86-fbsd? ( ftp://download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )"
65
66 LICENSE="NVIDIA"
67 SLOT="0"
68 KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
69 IUSE="acpi custom-cflags gtk multilib kernel_linux"
70 RESTRICT="strip"
71 EMULTILIB_PKG="true"
72
73 COMMON="<x11-base/xorg-server-1.9.99
74 kernel_linux? ( >=sys-libs/glibc-2.6.1 )
75 multilib? ( app-emulation/emul-linux-x86-xlibs )
76 >=app-admin/eselect-opengl-1.0.9
77 !<media-video/nvidia-settings-256.52"
78 DEPEND="${COMMON}
79 kernel_linux? ( virtual/linux-sources )"
80 RDEPEND="${COMMON}
81 x11-libs/libXvMC
82 kernel_linux? ( virtual/modutils )
83 acpi? ( sys-power/acpid )"
84 PDEPEND=">=x11-libs/libvdpau-0.3-r1
85 gtk? ( media-video/nvidia-settings )"
86
87 QA_TEXTRELS_x86="usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV}
88 usr/lib/opengl/nvidia/lib/libGL.so.${PV}
89 usr/lib/libnvidia-glcore.so.${PV}
90 usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
91 usr/lib/xorg/modules/drivers/nvidia_drv.so
92 usr/lib/libcuda.so.${PV}
93 usr/lib/libnvidia-cfg.so.${PV}
94 usr/lib/libvdpau_nvidia.so.${PV}
95 usr/lib/libOpenCL.so.1.0.0
96 usr/lib/libnvidia-compiler.so.${PV}"
97
98 QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko
99 usr/lib/opengl/nvidia/lib/libGL.so.1
100 usr/lib/libnvidia-glcore.so.1
101 usr/lib/libnvidia-cfg.so.1
102 usr/lib/opengl/nvidia/extensions/libglx.so.1
103 usr/lib/xorg/modules/drivers/nvidia_drv.so"
104
105 QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV}
106 usr/lib32/libnvidia-glcore.so.${PV}
107 usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
108 usr/lib32/libcuda.so.${PV}
109 usr/lib32/libvdpau_nvidia.so.${PV}
110 usr/lib32/libOpenCL.so.1.0.0
111 usr/lib32/libnvidia-compiler.so.${PV}"
112
113 QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV}
114 usr/lib/libnvidia-glcore.so.${PV}
115 usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
116 usr/lib64/libXvMCNVIDIA.so.${PV}
117 usr/lib/libXvMCNVIDIA.a:NVXVMC.o
118 usr/lib/libnvidia-compiler.so.${PV}
119 usr/lib/libvdpau_nvidia.so.${PV}
120 usr/lib/libcuda.so.${PV}
121 usr/lib/libOpenCL.so.1.0.0"
122
123 QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV}
124 usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
125 usr/lib32/libnvidia-compiler.so.${PV}
126 usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV}
127 usr/lib32/libvdpau_nvidia.so.${PV}
128 usr/lib32/libcuda.so.${PV}
129 usr/lib32/libOpenCL.so.1.0.0
130 usr/lib64/libnvidia-compiler.so.${PV}
131 usr/lib64/libXvMCNVIDIA.a:NVXVMC.o
132 usr/lib64/libnvidia-cfg.so.${PV}
133 usr/lib64/libvdpau_nvidia.so.${PV}
134 usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV}
135 usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
136 usr/lib64/libnvidia-glcore.so.${PV}
137 usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}
138 usr/lib64/libXvMCNVIDIA.so.${PV}
139 usr/lib64/libcuda.so.${PV}
140 usr/lib64/libOpenCL.so.1.0.0
141 usr/lib64/xorg/modules/drivers/nvidia_drv.so
142 usr/bin/nvidia-smi
143 usr/bin/nvidia-xconfig
144 usr/bin/nvidia-settings"
145
146 QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV}
147 usr/lib/opengl/nvidia/lib/libGL.so.${PV}
148 usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
149 usr/lib/libXvMCNVIDIA.a
150 usr/lib64/libXvMCNVIDIA.so.${PV}"
151
152 QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
153 usr/lib32/libnvidia-glcore.so.${PV}
154 usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
155 usr/lib64/libnvidia-glcore.so.${PV}
156 usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}
157 usr/lib64/libXvMCNVIDIA.so.${PV}"
158
159 QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}"
160
161 QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV}
162 usr/lib32/libnvidia-compiler.so.${PV}"
163
164 QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV}
165 usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
166 usr/lib32/libnvidia-glcore.so.${PV}
167 usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV}
168 usr/lib32/libvdpau_nvidia.so.${PV}
169 usr/lib32/libOpenCL.so.1.0.0
170 usr/lib32/libnvidia-compiler.so.${PV}
171 usr/lib64/libXvMCNVIDIA.so.${PV}
172 usr/lib64/libcuda.so.${PV}
173 usr/lib64/libnvidia-cfg.so.${PV}
174 usr/lib64/libnvidia-glcore.so.${PV}
175 usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
176 usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV}
177 usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}
178 usr/lib64/xorg/modules/drivers/nvidia_drv.so
179 usr/lib64/libvdpau_nvidia.so.${PV}
180 usr/lib64/libOpenCL.so.1.0.0
181 usr/lib64/libnvidia-compiler.so.${PV}
182 usr/bin/nvidia-smi
183 usr/bin/nvidia-xconfig
184 usr/bin/nvidia-settings"
185
186 QA_DT_HASH_x86="usr/lib/libcuda.so.${PV}
187 usr/lib/libnvidia-cfg.so.${PV}
188 usr/lib/libnvidia-glcore.so.${PV}
189 usr/lib/opengl/nvidia/lib/libGL.so.${PV}
190 usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV}
191 usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
192 usr/lib/xorg/modules/drivers/nvidia_drv.so
193 usr/lib/libXvMCNVIDIA.so.${PV}
194 usr/lib/libvdpau_nvidia.so.${PV}
195 usr/lib/libOpenCL.so.1.0.0
196 usr/lib/libnvidia-compiler.so.${PV}
197 usr/bin/nvidia-smi
198 usr/bin/nvidia-xconfig
199 usr/bin/nvidia-settings"
200
201 S="${WORKDIR}/"
202
203 mtrr_check() {
204 ebegin "Checking for MTRR support"
205 linux_chkconfig_present MTRR
206 eend $?
207
208 if [[ $? -ne 0 ]] ; then
209 eerror "Please enable MTRR support in your kernel config, found at:"
210 eerror
211 eerror " Processor type and features"
212 eerror " [*] MTRR (Memory Type Range Register) support"
213 eerror
214 eerror "and recompile your kernel ..."
215 die "MTRR support not detected!"
216 fi
217 }
218
219 lockdep_check() {
220 if linux_chkconfig_present LOCKDEP; then
221 eerror "You've enabled LOCKDEP -- lock tracking -- in the kernel."
222 eerror "Unfortunately, this option exports the symbol 'lockdep_init_map' as GPL-only"
223 eerror "which will prevent ${P} from compiling."
224 eerror "Please make sure the following options have been unset:"
225 eerror " Kernel hacking --->"
226 eerror " [ ] Lock debugging: detect incorrect freeing of live locks"
227 eerror " [ ] Lock debugging: prove locking correctness"
228 eerror " [ ] Lock usage statistics"
229 eerror "in 'menuconfig'"
230 die "LOCKDEP enabled"
231 fi
232 }
233
234 pkg_setup() {
235 # try to turn off distcc and ccache for people that have a problem with it
236 export DISTCC_DISABLE=1
237 export CCACHE_DISABLE=1
238
239 if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then
240 eerror "This ebuild doesn't currently support changing your default abi."
241 die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
242 fi
243
244 if use kernel_linux; then
245 linux-mod_pkg_setup
246 MODULE_NAMES="nvidia(video:${S}/kernel)"
247 BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
248 SYSOUT=${KV_OUT_DIR} HOST_CC=$(tc-getBUILD_CC)"
249 mtrr_check
250 lockdep_check
251 fi
252
253 # On BSD userland it wants real make command
254 use userland_BSD && MAKE="$(get_bmake)"
255
256 export _POSIX2_VERSION="199209"
257
258 # Since Nvidia ships 3 different series of drivers, we need to give the user
259 # some kind of guidance as to what version they should install. This tries
260 # to point the user in the right direction but can't be perfect. check
261 # nvidia-driver.eclass
262 nvidia-driver-check-warning
263
264 # set variables to where files are in the package structure
265 if use kernel_FreeBSD; then
266 NV_DOC="${S}/doc"
267 NV_EXEC="${S}/obj"
268 NV_LIB="${S}/obj"
269 NV_SRC="${S}/src"
270 NV_MAN="${S}/x11/man"
271 NV_X11="${S}/obj"
272 NV_X11_DRV="${NV_X11}"
273 NV_X11_EXT="${NV_X11}"
274 NV_SOVER=1
275 elif use kernel_linux; then
276 NV_DOC="${S}"
277 NV_EXEC="${S}"
278 NV_LIB="${S}"
279 NV_SRC="${S}/kernel"
280 NV_MAN="${S}"
281 NV_X11="${S}"
282 NV_X11_DRV="${NV_X11}"
283 NV_X11_EXT="${NV_X11}"
284 NV_SOVER=${PV}
285 else
286 die "Could not determine proper NVIDIA package"
287 fi
288 }
289
290 src_unpack() {
291 if use kernel_linux && kernel_is lt 2 6 7; then
292 echo
293 ewarn "Your kernel version is ${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}"
294 ewarn "This is not officially supported for ${P}. It is likely you"
295 ewarn "will not be able to compile or use the kernel module."
296 ewarn "It is recommended that you upgrade your kernel to a version >= 2.6.7"
297 echo
298 ewarn "DO NOT file bug reports for kernel versions less than 2.6.7 as they will be ignored."
299 fi
300
301 if ! use x86-fbsd; then
302 cd "${S}"
303 unpack_makeself
304 else
305 unpack ${A}
306 fi
307 }
308
309 src_prepare() {
310 # Please add a brief description for every added patch
311 use x86-fbsd && cd doc
312
313 if use kernel_linux; then
314 # Quiet down warnings the user does not need to see
315 sed -i \
316 -e 's:-Wsign-compare::g' \
317 "${NV_SRC}"/Makefile.kbuild
318
319 # Add support for the 'x86' unified kernel arch in conftest.sh
320 epatch "${FILESDIR}"/256.35-unified-arch.patch
321
322 # If you set this then it's your own fault when stuff breaks :)
323 use custom-cflags && sed -i "s:-O:${CFLAGS}:" "${NV_SRC}"/Makefile.*
324
325 # If greater than 2.6.5 use M= instead of SUBDIR=
326 convert_to_m "${NV_SRC}"/Makefile.kbuild
327 fi
328 }
329
330 src_compile() {
331 # This is already the default on Linux, as there's no toplevel Makefile, but
332 # on FreeBSD there's one and triggers the kernel module build, as we install
333 # it by itself, pass this.
334
335 cd "${NV_SRC}"
336 if use x86-fbsd; then
337 MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
338 LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
339 elif use kernel_linux; then
340 linux-mod_src_compile
341 fi
342 }
343
344 src_install() {
345 if use kernel_linux; then
346 linux-mod_src_install
347
348 VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)"
349 if [ -z "$VIDEOGROUP" ]; then
350 eerror "Failed to determine the video group gid."
351 die "Failed to determine the video group gid."
352 fi
353
354 # Add the aliases
355 [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR"
356 sed -e 's:PACKAGE:'${PF}':g' \
357 -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \
358 "${WORKDIR}"/nvidia
359 insinto /etc/modprobe.d
360 newins "${WORKDIR}"/nvidia nvidia.conf || die
361 elif use x86-fbsd; then
362 insinto /boot/modules
363 doins "${WORKDIR}/${NV_PACKAGE}/src/nvidia.kld" || die
364
365 exeinto /boot/modules
366 doexe "${WORKDIR}/${NV_PACKAGE}/src/nvidia.ko" || die
367 fi
368
369 # NVIDIA kernel <-> userspace driver config lib
370 dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \
371 die "failed to install libnvidia-cfg"
372
373 # Xorg DDX driver
374 insinto /usr/$(get_libdir)/xorg/modules/drivers
375 doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so"
376
377 # Xorg GLX driver
378 insinto /usr/$(get_libdir)/opengl/nvidia/extensions
379 doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \
380 die "failed to install libglx.so"
381 dosym /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so.${NV_SOVER} \
382 /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \
383 die "failed to create libglx.so symlink"
384
385 # XvMC driver
386 dolib.a ${NV_X11}/libXvMCNVIDIA.a || \
387 die "failed to install libXvMCNVIDIA.so"
388 dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \
389 die "failed to install libXvMCNVIDIA.so"
390 dosym libXvMCNVIDIA.so.${NV_SOVER} /usr/$(get_libdir)/libXvMCNVIDIA.so || \
391 die "failed to create libXvMCNVIDIA.so symlink"
392
393 # CUDA and OpenCL headers
394 if use kernel_linux; then
395 dodir /usr/include/cuda
396 insinto /usr/include/cuda
397 doins cuda*.h || die "failed to install cuda headers"
398
399 dodir /usr/include/CL
400 insinto /usr/include/CL
401 doins cl*.h || die "failed to install OpenCL headers"
402
403 # OpenCL ICD for NVIDIA
404 dodir /etc/OpenCL/vendors
405 insinto /etc/OpenCL/vendors
406 doins nvidia.icd
407 fi
408
409 # Documentation
410 dohtml ${NV_DOC}/html/*
411 if use x86-fbsd; then
412 dodoc "${NV_DOC}/README"
413 doman "${NV_MAN}/nvidia-xconfig.1"
414 use gtk && doman "${NV_MAN}/nvidia-settings.1"
415 else
416 # Docs
417 newdoc "${NV_DOC}/README.txt" README
418 dodoc "${NV_DOC}/NVIDIA_Changelog"
419 doman "${NV_MAN}/nvidia-smi.1.gz"
420 doman "${NV_MAN}/nvidia-xconfig.1.gz"
421 use gtk && doman "${NV_MAN}/nvidia-settings.1.gz"
422 fi
423
424 # Helper Apps
425 dobin ${NV_EXEC}/nvidia-xconfig || die
426 use gtk && dobin ${NV_EXEC}/nvidia-settings
427 dobin ${NV_EXEC}/nvidia-bug-report.sh || die
428 if use kernel_linux; then
429 dobin ${NV_EXEC}/nvidia-smi || die
430 fi
431
432 # Desktop entries for nvidia-settings
433 if use gtk; then
434 dodir /usr/share/applications/
435 insinto /usr/share/applications/
436 doins ${NV_EXEC}/nvidia-settings.desktop
437 sed -e 's:__UTILS_PATH__:/usr/bin:' \
438 -e 's:__PIXMAP_PATH__:/usr/share/pixmaps:' \
439 -i "${D}"/usr/share/applications/nvidia-settings.desktop
440
441 dodir /usr/share/pixmaps/
442 insinto /usr/share/pixmaps/
443 doins ${NV_EXEC}/nvidia-settings.png
444 fi
445
446 if has_multilib_profile ; then
447 local OABI=${ABI}
448 for ABI in $(get_install_abis) ; do
449 src_install-libs
450 done
451 ABI=${OABI}
452 unset OABI
453 else
454 src_install-libs
455 fi
456
457 is_final_abi || die "failed to iterate through all ABIs"
458 }
459
460 # Install nvidia library:
461 # the first parameter is the place where to install it
462 # the second parameter is the base name of the library
463 # the third parameter is the provided soversion
464 donvidia() {
465 dodir $1
466 exeinto $1
467
468 libname=$(basename $2)
469
470 doexe $2.$3 || die "failed to install $2"
471 dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2"
472 [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1
473 }
474
475 src_install-libs() {
476 local inslibdir=$(get_libdir)
477 local NV_ROOT="/usr/${inslibdir}/opengl/nvidia"
478 local libdir= sover=
479
480 if use kernel_linux; then
481 if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then
482 libdir=32
483 else
484 libdir=.
485 fi
486 sover=${PV}
487 else
488 libdir=obj
489 # on FreeBSD it has just .1 suffix
490 sover=1
491 fi
492
493 # The GLX libraries
494 donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover}
495 donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover}
496 if use x86-fbsd; then
497 donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover}
498 else
499 donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover}
500 fi
501
502 # VDPAU
503 donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover}
504
505 # CUDA & OpenCL
506 if use kernel_linux; then
507 donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover}
508 donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover}
509 donvidia /usr/${inslibdir} ${libdir}/libOpenCL.so 1.0.0
510 dosym libOpenCL.so.1 /usr/${inslibdir}/libOpenCL.so
511 fi
512 }
513
514 pkg_preinst() {
515 if use kernel_linux; then
516 linux-mod_pkg_postinst
517 fi
518
519 # Clean the dynamic libGL stuff's home to ensure
520 # we dont have stale libs floating around
521 if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then
522 rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
523 fi
524 # Make sure we nuke the old nvidia-glx's env.d file
525 if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then
526 rm -f "${ROOT}"/etc/env.d/09nvidia
527 fi
528 }
529
530 pkg_postinst() {
531 if use kernel_linux; then
532 linux-mod_pkg_postinst
533 fi
534
535 # Switch to the nvidia implementation
536 eselect opengl set --use-old nvidia
537
538 echo
539 elog "You must be in the video group to use the NVIDIA device"
540 elog "For more info, read the docs at"
541 elog "http://www.gentoo.org/doc/en/nvidia-guide.xml#doc_chap3_sect6"
542 elog
543
544 elog "This ebuild installs a kernel module and X driver. Both must"
545 elog "match explicitly in their version. This means, if you restart"
546 elog "X, you must modprobe -r nvidia before starting it back up"
547 elog
548
549 elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\""
550 elog
551 elog "NVIDIA has requested that any bug reports submitted have the"
552 elog "output of /usr/bin/nvidia-bug-report.sh included."
553 elog
554 elog "To work with compiz, you must enable the AddARGBGLXVisuals option."
555 elog
556 elog "If you are having resolution problems, try disabling DynamicTwinView."
557 echo
558 }
559
560 pkg_postrm() {
561 if use kernel_linux; then
562 linux-mod_pkg_postrm
563 fi
564 eselect opengl set --use-old xorg-x11
565 }