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