Gentoo Archives: gentoo-commits

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