/[packages]/backports/5/nvidia-current/current/SPECS/nvidia-current.spec
ViewVC logotype

Contents of /backports/5/nvidia-current/current/SPECS/nvidia-current.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 490939 - (show annotations) (download)
Thu Oct 3 16:43:31 2013 UTC (10 years, 5 months ago) by tmb
Original Path: cauldron/nvidia-current/current/SPECS/nvidia-current.spec
File size: 37570 byte(s)
update to 319.60
1 # I love OpenSource :-(
2
3 ## NOTE: When modifying this .spec, you do not necessarily need to care about
4 ## the %simple stuff. It is fine to break them, I'll fix it when I need them :)
5 ## - Anssi
6
7 # %simple mode can be used to transform an arbitrary nvidia installer
8 # package to rpms, similar to %atibuild mode in fglrx.
9 # Macros version, rel, nsource, pkgname, distsuffix should be manually defined.
10 %define simple 0
11 %{?_without_simple: %global simple 0}
12 %{?_with_simple: %global simple 1}
13
14 %define name nvidia-current
15
16 %if !%simple
17 # When updating, please add new ids to ldetect-lst (merge2pcitable.pl)
18 %define version 319.60
19 %define rel 1
20 # the highest supported videodrv abi
21 %define videodrv_abi 14
22 %endif
23
24 %define priority 9700
25
26 %define pkgname32 NVIDIA-Linux-x86-%{version}
27 %define pkgname64 NVIDIA-Linux-x86_64-%{version}
28
29 # Disable when the sources aren't on ftp yet, but can be downloaded from
30 # http://us.download.nvidia.com
31 %define ftp 1
32
33 # For now, backportability is kept for 2008.0 forwards.
34
35 %define drivername nvidia-current
36 %define driverpkgname x11-driver-video-%{drivername}
37 %define modulename %{drivername}
38 # for description and documentation
39 %define cards GeForce 8xxx and later cards
40 %define xorg_extra_modules %{_libdir}/xorg/extra-modules
41 %define nvidia_driversdir %{_libdir}/%{drivername}/xorg
42 %define nvidia_extensionsdir %{_libdir}/%{drivername}/xorg
43 %define nvidia_modulesdir %{_libdir}/%{drivername}/xorg
44 %define nvidia_libdir %{_libdir}/%{drivername}
45 %define nvidia_libdir32 %{_prefix}/lib/%{drivername}
46 %define nvidia_bindir %{nvidia_libdir}/bin
47 # The entry in Cards+ this driver should be associated with, if there is
48 # no entry in ldetect-lst default pcitable:
49 # cooker ldetect-lst should be up-to-date
50 %define ldetect_cards_name %nil
51
52 # NVIDIA cards not listed in main ldetect-lst pcitable are not likely
53 # to be supported by nv which is from the same time period. Therefore
54 # mark them as not working with nv. (main pcitable entries override
55 # our entries)
56 %if %simple || %mgaversion <= 2
57 # nvidia/vesa
58 %define ldetect_cards_name NVIDIA GeForce 400 series and later
59 %endif
60
61 %define biarches x86_64
62
63 %if !%simple
64 %ifarch %{ix86}
65 %define nsource %{SOURCE0}
66 %define pkgname %{pkgname32}
67 %endif
68 %ifarch x86_64
69 %define nsource %{SOURCE1}
70 %define pkgname %{pkgname64}
71 %endif
72 %endif
73
74 # Other packages should not require any NVIDIA libraries, and this package
75 # should not be pulled in when libGL.so.1 is required
76 %define _provides_exceptions \\.so
77 %define common_requires_exceptions libGL\\.so\\|libGLcore\\.so\\|libnvidia.*\\.so
78
79 %ifarch %{biarches}
80 # (anssi) Allow installing of 64-bit package if the runtime dependencies
81 # of 32-bit libraries are not satisfied. If a 32-bit package that requires
82 # libGL.so.1 is installed, the 32-bit mesa libs are pulled in and that will
83 # pull the dependencies of 32-bit nvidia libraries in as well.
84 %define _requires_exceptions %common_requires_exceptions\\|lib.*so\\.[^(]\\+\\(([^)]\\+)\\)\\?$
85 %else
86 %define _requires_exceptions %common_requires_exceptions
87 %endif
88
89 # (anssi) Workaround wrong linking as of 310.19.
90 # This will probably be fixed soon (at least similar issues have been in the past).
91 # https://devtalk.nvidia.com/default/topic/523762/libnvidia-encode-so-310-19-has-dependency-on-missing-library/
92 %define _exclude_files_from_autoreq libnvidia-encode.so.%version
93
94 Summary: NVIDIA proprietary X.org driver and libraries, current driver series
95 Name: %{name}
96 Version: %{version}
97 Release: %mkrel %{rel}
98 %if !%simple
99 %if %ftp
100 Source0: ftp://download.nvidia.com/XFree86/Linux-x86/%{version}/%{pkgname32}.run
101 Source1: ftp://download.nvidia.com/XFree86/Linux-x86_64/%{version}/%{pkgname64}.run
102 # GPLv2 source code; see also http://cgit.freedesktop.org/~aplattner/
103 Source2: ftp://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-%{version}.tar.bz2
104 Source3: ftp://download.nvidia.com/XFree86/nvidia-xconfig/nvidia-xconfig-%{version}.tar.bz2
105 Source4: ftp://download.nvidia.com/XFree86/nvidia-modprobe/nvidia-modprobe-%{version}.tar.bz2
106 Source5: ftp://download.nvidia.com/XFree86/nvidia-persistenced/nvidia-persistenced-%{version}.tar.bz2
107 %else
108 Source0: http://us.download.nvidia.com/XFree86/Linux-x86/%{version}/%{pkgname32}.run
109 Source1: http://us.download.nvidia.com/XFree86/Linux-x86_64/%{version}/%{pkgname64}.run
110 # GPLv2 source code; see also http://cgit.freedesktop.org/~aplattner/
111 Source2: http://us.download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-%{version}.tar.bz2
112 Source3: http://us.download.nvidia.com/XFree86/nvidia-xconfig/nvidia-xconfig-%{version}.tar.bz2
113 Source4: http://us.download.nvidia.com/XFree86/nvidia-modprobe/nvidia-modprobe-%{version}.tar.bz2
114 Source5: http://us.download.nvidia.com/XFree86/nvidia-persistenced/nvidia-persistenced-%{version}.tar.bz2
115 %endif
116 # Script for building rpms of arbitrary nvidia installers (needs this .spec appended)
117 Source10: nvidia-mgabuild-skel
118 # https://qa.mandriva.com/show_bug.cgi?id=39921
119 Patch1: nvidia-settings-enable-dyntwinview-mga.patch
120 # include xf86vmproto for X_XF86VidModeGetGammaRampSize, fixes build on cooker
121 Patch3: nvidia-settings-include-xf86vmproto.patch
122 # fix build with -rt patched 2.6.33+
123 Patch4: nvidia-rt-2.6.33.patch
124 # (tmb) fix build for kernel-3.11
125 Patch6: nvidia-Linux-3.11.patch
126
127 %endif
128 License: Freeware
129 BuildRoot: %{_tmppath}/%{name}-buildroot
130 URL: http://www.nvidia.com/object/unix.html
131 Group: System/Kernel and hardware
132 ExclusiveArch: %{ix86} x86_64
133 %if !%simple
134 BuildRequires: ImageMagick
135 BuildRequires: gtk+2-devel
136 BuildRequires: libxv-devel
137 BuildRequires: MesaGL-devel
138 BuildRequires: libxxf86vm-devel
139 BuildRequires: vdpau-devel
140 %endif
141
142 %description
143 Source package of the current NVIDIA proprietary driver. Binary
144 packages are named x11-driver-video-nvidia-current.
145
146 %package -n %{driverpkgname}
147 Summary: NVIDIA proprietary X.org driver and libraries for %cards
148 Group: System/Kernel and hardware
149 Requires(post): update-alternatives >= 1.9.0
150 Requires(postun): update-alternatives >= 1.9.0
151 Requires: x11-server-common
152 Suggests: %{drivername}-doc-html = %{version}
153 # Proper support for versioned kmod() was added in 2008.1:
154 Requires: kmod(%{modulename}) = %{version}
155 # At least mplayer dlopens libvdpau.so.1, so the software will not pull in
156 # the vdpau library package. We ensure its installation here.
157 Requires: %{_lib}vdpau1
158 %if !%simple && %mgaversion >= 2
159 Requires: xserver-abi(videodrv) < %(echo $((%{videodrv_abi}+1)))
160 %endif
161 Conflicts: nvidia-current-cuda-opencl <= 295.59-1
162 # Obsoletes for naming changes:
163 Obsoletes: nvidia < 1:%{version}-%{release}
164 Provides: nvidia = 1:%{version}-%{release}
165 Obsoletes: nvidia97xx < %{version}-%{release}
166 Provides: nvidia97xx = %{version}-%{release}
167
168 %description -n %{driverpkgname}
169 NVIDIA proprietary X.org graphics driver, related libraries and
170 configuration tools for %cards,
171 including the associated Quadro cards.
172
173 NOTE: You should use XFdrake to configure your NVIDIA card. The
174 correct packages will be automatically installed and configured.
175
176 If you do not want to use XFdrake, see README.manual-setup.
177
178 This NVIDIA driver should be used with %cards,
179 including the associated Quadro cards.
180
181 %package -n dkms-%{drivername}
182 Summary: NVIDIA kernel module for %cards
183 Group: System/Kernel and hardware
184 Requires: dkms
185 Requires(post): dkms
186 Requires(preun): dkms
187 Obsoletes: dkms-nvidia < 1:%{version}-%{release}
188 Provides: dkms-nvidia = 1:%{version}-%{release}
189 Obsoletes: dkms-nvidia97xx < %{version}-%{release}
190 Provides: dkms-nvidia97xx = %{version}-%{release}
191
192 %description -n dkms-%{drivername}
193 NVIDIA kernel module for %cards. This
194 is to be used with the %{driverpkgname} package.
195
196 %package -n %{drivername}-devel
197 Summary: NVIDIA OpenGL/CUDA development liraries and headers
198 Group: Development/C
199 Requires: %{driverpkgname} = %{version}-%{release}
200 Requires: %{drivername}-cuda-opencl = %{version}-%{release}
201 Obsoletes: nvidia-devel < 1:%{version}-%{release}
202 Provides: nvidia-devel = 1:%{version}-%{release}
203 Obsoletes: nvidia97xx-devel < %{version}-%{release}
204 Provides: nvidia97xx-devel = %{version}-%{release}
205 Requires: %{_lib}vdpau-devel
206
207 %description -n %{drivername}-devel
208 NVIDIA OpenGL/CUDA headers for %cards. This package
209 is not required for normal use.
210
211 %package -n %{drivername}-cuda-opencl
212 Summary: CUDA and OpenCL libraries for NVIDIA proprietary driver
213 Group: System/Kernel and hardware
214 Provides: %{drivername}-cuda = %{version}-%{release}
215 Requires: kmod(%{modulename}) = %{version}
216 Conflicts: nvidia < 1:195.36.15-4
217 Conflicts: x11-driver-video-nvidia-current <= 295.59-1
218
219 %description -n %{drivername}-cuda-opencl
220 Cuda and OpenCL libraries for NVIDIA proprietary driver. This package is not
221 required for normal use, it provides libraries to use NVIDIA cards for High
222 Performance Computing (HPC).
223
224 # HTML doc splitted off because of size, for live cds:
225 %package -n %{drivername}-doc-html
226 Summary: NVIDIA html documentation (%{drivername})
227 Group: System/Kernel and hardware
228 Requires: %{driverpkgname} = %{version}-%{release}
229
230 %description -n %{drivername}-doc-html
231 HTML version of the README.txt file provided in package
232 %{driverpkgname}.
233
234 %prep
235 # No patches applied when %simple is set
236 %if %simple
237 %setup -q -c -T
238 %else
239 %setup -q -c -T -a 2 -a 3 -a 4 -a 5
240 cd nvidia-settings-%{version}
241 %patch1 -p1
242 %patch3 -p1
243 cd ..
244 %endif
245 sh %{nsource} --extract-only
246
247 %if !%simple
248 cd %{pkgname}
249 %patch4 -p1
250 %patch6 -p1
251 cd ..
252 %endif
253
254 rm -rf %{pkgname}/usr/src/nv/precompiled
255
256 %if %simple
257 # for old releases
258 mkdir -p %{pkgname}/kernel
259 %endif
260
261 # (tmb) nuke nVidia provided dkms.conf as we need our own
262 rm -rf %{pkgname}/kernel/dkms.conf
263
264 # install our own dkms.conf
265 cat > %{pkgname}/kernel/dkms.conf <<EOF
266 PACKAGE_NAME="%{drivername}"
267 PACKAGE_VERSION="%{version}-%{release}"
268 BUILT_MODULE_NAME[0]="nvidia"
269 DEST_MODULE_LOCATION[0]="/kernel/drivers/char/drm"
270 DEST_MODULE_NAME[0]="%{modulename}"
271 MAKE[0]="make SYSSRC=\${kernel_source_dir} module"
272 CLEAN="make -f Makefile.kbuild clean"
273 AUTOINSTALL="yes"
274 EOF
275
276 cat > README.install.urpmi <<EOF
277 This driver is for %cards.
278
279 Use XFdrake to configure X to use the correct NVIDIA driver. Any needed
280 packages will be automatically installed if not already present.
281 1. Run XFdrake as root.
282 2. Go to the Graphics Card list.
283 3. Select your card (it is usually already autoselected).
284 4. Answer any questions asked and then quit.
285
286 If you do not want to use XFdrake, see README.manual-setup.
287 EOF
288
289 cat > README.manual-setup <<EOF
290 This file describes the procedure for the manual installation of this NVIDIA
291 driver package. You can find the instructions for the recommended automatic
292 installation in the file 'README.install.urpmi' in this directory.
293
294 - Open %{_sysconfdir}/X11/xorg.conf and make the following changes:
295 o Change the Driver to "nvidia" in the Device section
296 o Make the line below the only 'glx' related line in the Module section,
297 adding it if it is not already there:
298 Load "glx"
299 o Remove any 'ModulePath' lines from the Files section
300 - Run "update-alternatives --set gl_conf %{_sysconfdir}/%{drivername}/ld.so.conf" as root.
301 - Run "ldconfig -X" as root.
302 EOF
303
304 %if !%simple
305 rm nvidia-settings-%{version}/src/*/*.a
306
307 %build
308 # The code contains dozens on top of dozens on top of dozens of "false" positives
309 export CFLAGS="%optflags -Wno-error=format-security"
310 export CXXFLAGS="$CFLAGS"
311 export LDFLAGS="%{?ldflags}"
312 %make -C nvidia-settings-%{version}/src/libXNVCtrl
313 %make -C nvidia-settings-%{version} STRIP_CMD=true
314 %make -C nvidia-xconfig-%{version} STRIP_CMD=true
315 %make -C nvidia-modprobe-%{version} STRIP_CMD=true
316 %make -C nvidia-persistenced-%{version} STRIP_CMD=true
317
318 # %simple
319 %endif
320
321 %install
322 rm -rf %{buildroot}
323 cd %{pkgname}
324
325 # menu entry
326 install -d -m755 %{buildroot}%{_datadir}/%{drivername}
327 cat > %{buildroot}%{_datadir}/%{drivername}/mageia-nvidia-settings.desktop <<EOF
328 [Desktop Entry]
329 Name=NVIDIA Display Settings
330 Comment=Configure NVIDIA X driver
331 Exec=%{_bindir}/nvidia-settings
332 Icon=%{drivername}-settings
333 Terminal=false
334 Type=Application
335 Categories=GTK;Settings;HardwareSettings;
336 EOF
337
338 install -d -m755 %{buildroot}%{_datadir}/applications
339 touch %{buildroot}%{_datadir}/applications/mageia-nvidia-settings.desktop
340
341 # icons
342 install -d -m755 %{buildroot}%{_iconsdir}/hicolor/{16x16,32x32,48x48}/apps
343 %if !%simple
344 convert nvidia-settings.png -resize 16x16 %{buildroot}%{_iconsdir}/hicolor/16x16/apps/%{drivername}-settings.png
345 convert nvidia-settings.png -resize 32x32 %{buildroot}%{_iconsdir}/hicolor/32x32/apps/%{drivername}-settings.png
346 convert nvidia-settings.png -resize 48x48 %{buildroot}%{_iconsdir}/hicolor/48x48/apps/%{drivername}-settings.png
347 %else
348 # no imagemagick
349 [ -e nvidia-settings.png ] || cp -a usr/share/pixmaps/nvidia-settings.png .
350 install -m644 nvidia-settings.png %{buildroot}%{_iconsdir}/hicolor/48x48/apps/%{drivername}-settings.png
351 %endif
352
353 error_fatal() {
354 echo "Error: $@." >&2
355 exit 1
356 }
357
358 error_unhandled() {
359 echo "Warning: $@." >&2
360 echo "Warning: $@." >> warns.log
361 %if !%simple
362 # cause distro builds to fail in case of unhandled files
363 exit 1
364 %endif
365 }
366
367 parseparams() {
368 for value in $rest; do
369 local param=$1
370 [ -n "$param" ] || error_fatal "unhandled parameter $value"
371 shift
372 eval $param=$value
373
374 [ -n "$value" ] || error_fatal "empty $param"
375
376 # resolve libdir based on $arch
377 if [ "$param" = "arch" ]; then
378 case "$arch" in
379 NATIVE) nvidia_libdir=%{nvidia_libdir};;
380 COMPAT32) nvidia_libdir=%{nvidia_libdir32};;
381 *) error_fatal "unknown arch $arch"
382 esac
383 fi
384 done
385 }
386
387 add_to_list() {
388 %if !%simple
389 # on distro builds, only use .manifest for %doc files
390 [ "${2#%doc}" = "${2}" ] && return
391 %endif
392 local list="$1.files"
393 local entry="$2"
394 echo $entry >> $list
395 }
396
397 install_symlink() {
398 local pkg="$1"
399 local dir="$2"
400 mkdir -p %{buildroot}$dir
401 ln -s $dest %{buildroot}$dir/$file
402 add_to_list $pkg $dir/$file
403 }
404
405 install_lib_symlink() {
406 local pkg="$1"
407 local dir="$2"
408 case "$file" in
409 libvdpau_*.so)
410 # vdpau drivers => not put into -devel
411 ;;
412 *.so)
413 pkg=nvidia-devel;;
414 esac
415 install_symlink $pkg $dir
416 }
417
418 install_file_only() {
419 local pkg="$1"
420 local dir="$2"
421 mkdir -p %{buildroot}$dir
422 # replace 0444 with more usual 0644
423 [ "$perms" = "0444" ] && perms="0644"
424 install -m $perms $file %{buildroot}$dir
425 }
426
427 install_file() {
428 local pkg="$1"
429 local dir="$2"
430 install_file_only $pkg $dir
431 add_to_list $pkg $dir/$(basename $file)
432 }
433
434 get_module_dir() {
435 local subdir="$1"
436 case "$subdir" in
437 extensions*) echo %{nvidia_extensionsdir};;
438 drivers/) echo %{nvidia_driversdir};;
439 /) echo %{nvidia_modulesdir};;
440 *) error_unhandled "unhandled module subdir $subdir"
441 echo %{nvidia_modulesdir};;
442 esac
443 }
444
445 for file in nvidia.files nvidia-devel.files nvidia-cuda.files nvidia-dkms.files nvidia-html.files; do
446 rm -f $file
447 touch $file
448 done
449
450 # install files according to .manifest
451 cat .manifest | tail -n +9 | while read line; do
452 rest=${line}
453 file=${rest%%%% *}
454 rest=${rest#* }
455 perms=${rest%%%% *}
456 rest=${rest#* }
457 type=${rest%%%% *}
458 rest=${rest#* }
459
460 case "$type" in
461 CUDA_LIB)
462 parseparams arch subdir
463 install_file nvidia-cuda $nvidia_libdir/$subdir
464 ;;
465 CUDA_SYMLINK)
466 parseparams arch subdir dest
467 install_lib_symlink nvidia-cuda $nvidia_libdir/$subdir
468 ;;
469 ENCODEAPI_LIB)
470 parseparams arch subdir
471 install_file nvidia $nvidia_libdir/$subdir
472 ;;
473 ENCODEAPI_LIB_SYMLINK)
474 parseparams arch dest
475 install_lib_symlink nvidia $nvidia_libdir
476 ;;
477 NVCUVID_LIB)
478 parseparams arch subdir
479 install_file nvidia-cuda $nvidia_libdir/$subdir
480 ;;
481 NVCUVID_LIB_SYMLINK)
482 parseparams arch dest
483 install_lib_symlink nvidia-cuda $nvidia_libdir
484 ;;
485 NVIFR_LIB)
486 parseparams arch style subdir
487 install_file nvidia $nvidia_libdir
488 ;;
489 NVIFR_LIB_SYMLINK)
490 parseparams arch style subdir dest
491 install_lib_symlink nvidia $nvidia_libdir
492 ;;
493 OPENGL_LIB)
494 parseparams arch
495 install_file nvidia $nvidia_libdir
496 ;;
497 OPENGL_SYMLINK)
498 parseparams arch dest
499 install_lib_symlink nvidia $nvidia_libdir
500 ;;
501 TLS_LIB)
502 parseparams arch style subdir
503 install_file nvidia $nvidia_libdir/$subdir
504 ;;
505 TLS_SYMLINK)
506 parseparams arch style subdir dest
507 install_lib_symlink nvidia $nvidia_libdir/$subdir
508 ;;
509 UTILITY_LIB)
510 install_file nvidia %{nvidia_libdir}
511 ;;
512 UTILITY_LIB_SYMLINK)
513 parseparams dest
514 install_lib_symlink nvidia %{nvidia_libdir}
515 ;;
516 VDPAU_LIB)
517 parseparams arch subdir
518 case $file in *libvdpau_nvidia.so*);; *) continue; esac
519 install_file nvidia $nvidia_libdir/$subdir
520 ;;
521 VDPAU_SYMLINK)
522 parseparams arch subdir dest
523 case $file in *libvdpau_nvidia.so*);; *) continue; esac
524 install_lib_symlink nvidia $nvidia_libdir/$subdir
525 ;;
526 XLIB_STATIC_LIB)
527 install_file nvidia-devel %{nvidia_libdir}
528 ;;
529 XLIB_SHARED_LIB)
530 install_file nvidia %{nvidia_libdir}
531 ;;
532 XLIB_SYMLINK)
533 parseparams dest
534 install_lib_symlink nvidia %{nvidia_libdir}
535 ;;
536 LIBGL_LA)
537 # (Anssi) we don't install .la files
538 ;;
539 XMODULE_SHARED_LIB|GLX_MODULE_SHARED_LIB)
540 parseparams subdir
541 install_file nvidia $(get_module_dir $subdir)
542 ;;
543 XMODULE_NEWSYM)
544 # symlink that is created only if it doesn't already
545 # exist (i.e. as part of x11-server)
546 case "$file" in
547 libwfb.so)
548 continue
549 ;;
550 *)
551 error_unhandled "unknown XMODULE_NEWSYM type file $file, skipped"
552 continue
553 esac
554 parseparams subdir dest
555 install_symlink nvidia $(get_module_dir $subdir)
556 ;;
557 XMODULE_SYMLINK|GLX_MODULE_SYMLINK)
558 parseparams subdir dest
559 install_symlink nvidia $(get_module_dir $subdir)
560 ;;
561 VDPAU_HEADER)
562 continue
563 parseparams subdir
564 install_file_only nvidia-devel %{_includedir}/%{drivername}/$subdir
565 ;;
566 OPENGL_HEADER|CUDA_HEADER)
567 parseparams subdir
568 install_file_only nvidia-devel %{_includedir}/%{drivername}/$subdir
569 ;;
570 DOCUMENTATION)
571 parseparams subdir
572 case $subdir in
573 */html)
574 add_to_list nvidia-html "%%doc %{pkgname}/$file"
575 continue
576 ;;
577 */include/*)
578 continue
579 ;;
580 esac
581 case $file in
582 *XF86Config*|*nvidia-settings.png)
583 continue;;
584 esac
585 add_to_list nvidia "%%doc %{pkgname}/$file"
586 ;;
587 MANPAGE|NVIDIA_MODPROBE_MANPAGE)
588 parseparams subdir
589 case "$file" in
590 *nvidia-installer*)
591 # not installed
592 continue
593 ;;
594 *nvidia-settings*|*nvidia-xconfig*|*nvidia-modprobe*|*nvidia-persistenced*)
595 %if !%simple
596 # installed separately below
597 continue
598 %endif
599 ;;
600 *nvidia-smi*|*nvidia-cuda-mps-control*)
601 # ok
602 ;;
603 *)
604 error_unhandled "skipped unknown man page $(basename $file)"
605 continue
606 esac
607 install_file_only nvidia %{_mandir}/$subdir
608 ;;
609 UTILITY_BINARY)
610 case "$file" in
611 *nvidia-settings|*nvidia-xconfig|*nvidia-persistenced)
612 %if !%simple
613 # not installed, we install our own copy
614 continue
615 %endif
616 ;;
617 *nvidia-smi|*nvidia-bug-report.sh|*nvidia-debugdump)
618 # ok
619 ;;
620 *nvidia-cuda-mps-control|*nvidia-cuda-mps-server)
621 # ok
622 ;;
623 *)
624 error_unhandled "unknown binary $(basename $file) will be installed to %{nvidia_bindir}/$(basename $file)"
625 ;;
626 esac
627 install_file nvidia %{nvidia_bindir}
628 ;;
629 UTILITY_BIN_SYMLINK)
630 case $file in nvidia-uninstall) continue;; esac
631 parseparams dest
632 install_symlink nvidia %{nvidia_bindir}
633 ;;
634 NVIDIA_MODPROBE)
635 # A suid-root tool (GPLv2) used as fallback for loading the module and
636 # creating the device nodes in case the driver component is running as
637 # a non-root user (e.g. a CUDA application). While the module is automatically
638 # loaded by udev rules, the device nodes are not automatically created
639 # like with regular drivers and therefore this tool is installed on
640 # Mageia as well, at least for now.
641
642 # We install our self-compiled version in non-simple mode
643 %if %simple
644 install_file nvidia %{nvidia_bindir}
645 %endif
646 ;;
647 INSTALLER_BINARY)
648 # not installed
649 ;;
650 KERNEL_MODULE_SRC)
651 install_file nvidia-dkms %{_usrsrc}/%{drivername}-%{version}-%{release}
652 ;;
653 CUDA_ICD)
654 # in theory this should go to the cuda subpackage, but it goes into the main package
655 # as this avoids one broken symlink and it is small enough to not cause space issues
656 install_file nvidia %{_sysconfdir}/%{drivername}
657 ;;
658 APPLICATION_PROFILE)
659 parseparams subdir
660 # application profile filenames are versioned, we can use a common
661 # non-alternativesized directory
662 install_file nvidia %{_datadir}/nvidia/$subdir
663 ;;
664 DOT_DESKTOP)
665 # we provide our own for now
666 ;;
667 *)
668 error_unhandled "file $(basename $file) of unknown type $type will be skipped"
669 esac
670 done
671
672 [ -z "$warnings" ] || echo "Please inform Anssi Hannula <anssi@mageia.org> or http://bugs.mageia.org/ of the above warnings." >> warns.log
673
674 %if %simple
675 find %{buildroot}%{_libdir} %{buildroot}%{_prefix}/lib -type d | while read dir; do
676 dir=${dir#%{buildroot}}
677 echo "$dir" | grep -q nvidia && echo "%%dir $dir" >> nvidia.files
678 done
679 [ -d %{buildroot}%{_includedir}/%{drivername} ] && echo "%{_includedir}/%{drivername}" >> nvidia-devel.files
680
681 # for old releases in %%simple mode
682 if ! [ -e %{buildroot}%{_usrsrc}/%{drivername}-%{version}-%{release}/dkms.conf ]; then
683 install -m644 kernel/dkms.conf %{buildroot}%{_usrsrc}/%{drivername}-%{version}-%{release}/dkms.conf
684 fi
685 %endif
686
687 %if !%simple
688 # confirm SONAME; if something else than libvdpau_nvidia.so or libvdpau_nvidia.so.1, adapt .spec as needed:
689 [ "$(objdump -p %{buildroot}%{nvidia_libdir}/vdpau/libvdpau_nvidia.so.%{version} | grep SONAME | gawk '{ print $2 }')" = "libvdpau_nvidia.so.1" ]
690
691 rm -f %{buildroot}%{nvidia_libdir}/vdpau/libvdpau_nvidia.so.1
692 rm -f %{buildroot}%{nvidia_libdir32}/vdpau/libvdpau_nvidia.so.1
693 %endif
694
695 # vdpau alternative symlink
696 install -d -m755 %{buildroot}%{_libdir}/vdpau
697 touch %{buildroot}%{_libdir}/vdpau/libvdpau_nvidia.so.1
698 %ifarch %{biarches}
699 install -d -m755 %{buildroot}%{_prefix}/lib/vdpau
700 touch %{buildroot}%{_prefix}/lib/vdpau/libvdpau_nvidia.so.1
701 %endif
702
703 %if !%simple
704 # self-built binaries
705 install -m755 ../nvidia-settings-%{version}/src/_out/*/nvidia-settings %{buildroot}%{nvidia_bindir}
706 install -m755 ../nvidia-xconfig-%{version}/_out/*/nvidia-xconfig %{buildroot}%{nvidia_bindir}
707 install -m755 ../nvidia-persistenced-%{version}/_out/*/nvidia-persistenced %{buildroot}%{nvidia_bindir}
708 install -m4755 ../nvidia-modprobe-%{version}/_out/*/nvidia-modprobe %{buildroot}%{nvidia_bindir}
709 %endif
710 # binary alternatives
711 install -d -m755 %{buildroot}%{_bindir}
712 touch %{buildroot}%{_bindir}/nvidia-debugdump
713 touch %{buildroot}%{_bindir}/nvidia-settings
714 touch %{buildroot}%{_bindir}/nvidia-smi
715 touch %{buildroot}%{_bindir}/nvidia-xconfig
716 touch %{buildroot}%{_bindir}/nvidia-bug-report.sh
717 touch %{buildroot}%{_bindir}/nvidia-modprobe
718 touch %{buildroot}%{_bindir}/nvidia-persistenced
719 touch %{buildroot}%{_bindir}/nvidia-cuda-mps-control
720 touch %{buildroot}%{_bindir}/nvidia-cuda-mps-server
721 # rpmlint:
722 chmod 0755 %{buildroot}%{_bindir}/*
723
724 %if !%simple
725 # install man pages
726 install -m644 ../nvidia-settings-%{version}/doc/_out/*/nvidia-settings.1 %{buildroot}%{_mandir}/man1
727 install -m644 ../nvidia-xconfig-%{version}/_out/*/nvidia-xconfig.1 %{buildroot}%{_mandir}/man1
728 install -m644 ../nvidia-modprobe-%{version}/_out/*/nvidia-modprobe.1 %{buildroot}%{_mandir}/man1
729 install -m644 ../nvidia-persistenced-%{version}/_out/*/nvidia-persistenced.1 %{buildroot}%{_mandir}/man1
730 %endif
731 # bug #41638 - whatis entries of nvidia man pages appear wrong
732 gunzip %{buildroot}%{_mandir}/man1/*.gz
733 sed -r -i '/^nvidia\\-[a-z]+ \\- NVIDIA/s,^nvidia\\-,nvidia-,' %{buildroot}%{_mandir}/man1/*.1
734 cd %{buildroot}%{_mandir}/man1
735 rename nvidia alt-%{drivername} *
736 cd -
737 touch %{buildroot}%{_mandir}/man1/nvidia-xconfig.1%{_extension}
738 touch %{buildroot}%{_mandir}/man1/nvidia-settings.1%{_extension}
739 touch %{buildroot}%{_mandir}/man1/nvidia-modprobe.1%{_extension}
740 touch %{buildroot}%{_mandir}/man1/nvidia-persistenced.1%{_extension}
741 touch %{buildroot}%{_mandir}/man1/nvidia-smi.1%{_extension}
742 touch %{buildroot}%{_mandir}/man1/nvidia-cuda-mps-control.1%{_extension}
743
744 # cuda nvidia.icd
745 install -d -m755 %{buildroot}%{_sysconfdir}/OpenCL/vendors
746 touch %{buildroot}%{_sysconfdir}/OpenCL/vendors/nvidia.icd
747
748 # ld.so.conf
749 install -d -m755 %{buildroot}%{_sysconfdir}/%{drivername}
750 echo "%{nvidia_libdir}" > %{buildroot}%{_sysconfdir}/%{drivername}/ld.so.conf
751 %ifarch %{biarches}
752 echo "%{nvidia_libdir32}" >> %{buildroot}%{_sysconfdir}/%{drivername}/ld.so.conf
753 %endif
754 install -d -m755 %{buildroot}%{_sysconfdir}/ld.so.conf.d
755 touch %{buildroot}%{_sysconfdir}/ld.so.conf.d/GL.conf
756
757 # modprobe.conf
758 install -d -m755 %{buildroot}%{_sysconfdir}/modprobe.d
759 touch %{buildroot}%{_sysconfdir}/modprobe.d/display-driver.conf
760 echo "install nvidia /sbin/modprobe %{modulename} \$CMDLINE_OPTS" > %{buildroot}%{_sysconfdir}/%{drivername}/modprobe.conf
761
762 # xinit script
763 install -d -m755 %{buildroot}%{_sysconfdir}/%{drivername}
764 cat > %{buildroot}%{_sysconfdir}/%{drivername}/nvidia-settings.xinit <<EOF
765 # to be sourced
766 #
767 # Do not modify this file; the changes will be overwritten.
768 # If you want to disable automatic configuration loading, create
769 # /etc/sysconfig/nvidia-settings with this line: LOAD_NVIDIA_SETTINGS="no"
770 #
771 LOAD_NVIDIA_SETTINGS="yes"
772 [ -f %{_sysconfdir}/sysconfig/nvidia-settings ] && . %{_sysconfdir}/sysconfig/nvidia-settings
773 [ "\$LOAD_NVIDIA_SETTINGS" = "yes" ] && %{_bindir}/nvidia-settings --load-config-only
774 EOF
775 chmod 0755 %{buildroot}%{_sysconfdir}/%{drivername}/nvidia-settings.xinit
776 install -d -m755 %{buildroot}%{_sysconfdir}/X11/xinit.d
777 touch %{buildroot}%{_sysconfdir}/X11/xinit.d/nvidia-settings.xinit
778
779 # install ldetect-lst pcitable files for backports
780 # local version of merge2pcitable.pl:read_nvidia_readme:
781 section="nothingyet"
782 set +x
783 [ -e README.txt ] || cp -a usr/share/doc/README.txt .
784 cat README.txt | while read line; do
785 if [ "$section" = "nothingyet" ] || [ "$section" = "midspace" ]; then
786 if echo "$line" | grep -Pq "^\s*NVIDIA GPU product\s+Device PCI ID"; then
787 section="data"
788 elif [ "$section" = "midspace" ] && echo "$line" | grep -Pq "legacy"; then
789 break
790 fi
791 continue
792 fi
793
794 if [ "$section" = "data" ] && echo "$line" | grep -Pq "^\s*$"; then
795 section="midspace"
796 continue
797 fi
798
799 echo "$line" | grep -Pq "^\s*-+[\s-]+$" && continue
800 id=$(echo "$line" | sed -nre 's,^\s*.+?\s\s+0x(....).*$,\1,p' | tr '[:upper:]' '[:lower:]')
801 id2=$(echo "$line" | sed -nre 's,^\s*.+?\s\s+0x(....)\s0x(....).*$,\2,p' | tr '[:upper:]' '[:lower:]')
802 subsysid=
803 # not useful as of 2013-05 -Anssi
804 #[ -n "$id2" ] && subsysid=" 0x10de 0x$id2"
805 echo "0x10de 0x$id$subsysid \"Card:%{ldetect_cards_name}\""
806 done | sort -u > pcitable.nvidia.lst
807 set -x
808 [ $(wc -l pcitable.nvidia.lst | cut -f1 -d" ") -gt 200 ]
809 %if "%{ldetect_cards_name}" != ""
810 install -d -m755 %{buildroot}%{_datadir}/ldetect-lst/pcitable.d
811 gzip -c pcitable.nvidia.lst > %{buildroot}%{_datadir}/ldetect-lst/pcitable.d/40%{drivername}.lst.gz
812 %endif
813
814 export EXCLUDE_FROM_STRIP="$(find %{buildroot} -type f \! -name nvidia-settings \! -name nvidia-xconfig \! -name nvidia-modprobe \! -name nvidia-persistenced)"
815
816 %post -n %{driverpkgname}
817 # XFdrake used to generate an nvidia.conf file
818 [ -L %{_sysconfdir}/modprobe.d/nvidia.conf ] || rm -f %{_sysconfdir}/modprobe.d/nvidia.conf
819
820 current_glconf="$(readlink -e %{_sysconfdir}/ld.so.conf.d/GL.conf)"
821
822 # owned by libvdpau1, created in case libvdpau1 is installed only just after
823 # this package
824 mkdir -p %{_libdir}/vdpau
825
826 %{_sbindir}/update-alternatives \
827 --install %{_sysconfdir}/ld.so.conf.d/GL.conf gl_conf %{_sysconfdir}/%{drivername}/ld.so.conf %{priority} \
828 --slave %{_mandir}/man1/nvidia-settings.1%{_extension} man_nvidiasettings%{_extension} %{_mandir}/man1/alt-%{drivername}-settings.1%{_extension} \
829 --slave %{_mandir}/man1/nvidia-xconfig.1%{_extension} man_nvidiaxconfig%{_extension} %{_mandir}/man1/alt-%{drivername}-xconfig.1%{_extension} \
830 --slave %{_mandir}/man1/nvidia-smi.1%{_extension} nvidia-smi.1%{_extension} %{_mandir}/man1/alt-%{drivername}-smi.1%{_extension} \
831 --slave %{_mandir}/man1/nvidia-cuda-mps-control.1%{_extension} nvidia-cuda-mps-control.1%{_extension} %{_mandir}/man1/alt-%{drivername}-cuda-mps-control.1%{_extension} \
832 --slave %{_datadir}/applications/mageia-nvidia-settings.desktop nvidia_desktop %{_datadir}/%{drivername}/mageia-nvidia-settings.desktop \
833 --slave %{_bindir}/nvidia-settings nvidia_settings %{nvidia_bindir}/nvidia-settings \
834 --slave %{_bindir}/nvidia-smi nvidia_smi %{nvidia_bindir}/nvidia-smi \
835 --slave %{_bindir}/nvidia-xconfig nvidia_xconfig %{nvidia_bindir}/nvidia-xconfig \
836 --slave %{_bindir}/nvidia-debugdump nvidia-debugdump %{nvidia_bindir}/nvidia-debugdump \
837 --slave %{_bindir}/nvidia-bug-report.sh nvidia_bug_report %{nvidia_bindir}/nvidia-bug-report.sh \
838 --slave %{_bindir}/nvidia-cuda-mps-control nvidia-cuda-mps-control %{nvidia_bindir}/nvidia-cuda-mps-control \
839 --slave %{_bindir}/nvidia-cuda-mps-server nvidia-cuda-mps-server %{nvidia_bindir}/nvidia-cuda-mps-server \
840 --slave %{_bindir}/nvidia-modprobe nvidia-modprobe %{nvidia_bindir}/nvidia-modprobe \
841 --slave %{_bindir}/nvidia-persistenced nvidia-persistenced %{nvidia_bindir}/nvidia-persistenced \
842 --slave %{_sysconfdir}/X11/xinit.d/nvidia-settings.xinit nvidia-settings.xinit %{_sysconfdir}/%{drivername}/nvidia-settings.xinit \
843 --slave %{_libdir}/vdpau/libvdpau_nvidia.so.1 %{_lib}vdpau_nvidia.so.1 %{nvidia_libdir}/vdpau/libvdpau_nvidia.so.%{version} \
844 --slave %{_sysconfdir}/modprobe.d/display-driver.conf display-driver.conf %{_sysconfdir}/%{drivername}/modprobe.conf \
845 --slave %{_sysconfdir}/OpenCL/vendors/nvidia.icd nvidia.icd %{_sysconfdir}/%{drivername}/nvidia.icd \
846 %ifarch %{biarches}
847 --slave %{_prefix}/lib/vdpau/libvdpau_nvidia.so.1 libvdpau_nvidia.so.1 %{nvidia_libdir32}/vdpau/libvdpau_nvidia.so.%{version} \
848 %endif
849 --slave %{xorg_extra_modules} xorg_extra_modules %{nvidia_extensionsdir} \
850
851 if [ "${current_glconf}" = "%{_sysconfdir}/nvidia97xx/ld.so.conf" ]; then
852 # Adapt for the renaming of the driver. X.org config still has the old ModulePaths
853 # but they do not matter as we are using alternatives for libglx.so now.
854 %{_sbindir}/update-alternatives --set gl_conf %{_sysconfdir}/%{drivername}/ld.so.conf
855 fi
856 # explicit /sbin/ldconfig due to alternatives
857 /sbin/ldconfig -X
858
859 %if "%{ldetect_cards_name}" != ""
860 [ -x %{_sbindir}/update-ldetect-lst ] && %{_sbindir}/update-ldetect-lst || :
861 %endif
862
863 %postun -n %{driverpkgname}
864 if [ ! -f %{_sysconfdir}/%{drivername}/ld.so.conf ]; then
865 %{_sbindir}/update-alternatives --remove gl_conf %{_sysconfdir}/%{drivername}/ld.so.conf
866 fi
867 # explicit /sbin/ldconfig due to alternatives
868 /sbin/ldconfig -X
869
870 %if "%{ldetect_cards_name}" != ""
871 [ -x %{_sbindir}/update-ldetect-lst ] && %{_sbindir}/update-ldetect-lst || :
872 %endif
873
874 %post -n %{drivername}-cuda-opencl
875 # explicit /sbin/ldconfig due to a non-standard library directory
876 /sbin/ldconfig -X
877
878 %post -n dkms-%{drivername}
879 /usr/sbin/dkms --rpm_safe_upgrade add -m %{drivername} -v %{version}-%{release} &&
880 /usr/sbin/dkms --rpm_safe_upgrade build -m %{drivername} -v %{version}-%{release} &&
881 /usr/sbin/dkms --rpm_safe_upgrade install -m %{drivername} -v %{version}-%{release} --force
882
883 # rmmod any old driver if present and not in use (e.g. by X)
884 rmmod nvidia > /dev/null 2>&1 || true
885
886 %preun -n dkms-%{drivername}
887 /usr/sbin/dkms --rpm_safe_upgrade remove -m %{drivername} -v %{version}-%{release} --all
888
889 # rmmod any old driver if present and not in use (e.g. by X)
890 rmmod nvidia > /dev/null 2>&1 || true
891
892 %clean
893 rm -rf %{buildroot}
894
895 %files -n %{driverpkgname} -f %{pkgname}/nvidia.files
896 %defattr(-,root,root)
897 # other documentation files are listed in nvidia.files
898 %doc README.install.urpmi README.manual-setup
899
900 %if "%{ldetect_cards_name}" != ""
901 %{_datadir}/ldetect-lst/pcitable.d/40%{drivername}.lst.gz
902 %endif
903
904 # ld.so.conf, modprobe.conf, xinit
905 %ghost %{_sysconfdir}/ld.so.conf.d/GL.conf
906 %ghost %{_sysconfdir}/X11/xinit.d/nvidia-settings.xinit
907 %ghost %{_sysconfdir}/modprobe.d/display-driver.conf
908 %dir %{_sysconfdir}/%{drivername}
909 %{_sysconfdir}/%{drivername}/modprobe.conf
910 %{_sysconfdir}/%{drivername}/ld.so.conf
911 %{_sysconfdir}/%{drivername}/nvidia-settings.xinit
912 %if !%simple
913 %{_sysconfdir}/%{drivername}/nvidia.icd
914 %dir %{_datadir}/nvidia
915 %{_datadir}/nvidia/nvidia-application-profiles-%{version}-rc
916 %endif
917
918 %dir %{_sysconfdir}/OpenCL
919 %dir %{_sysconfdir}/OpenCL/vendors
920 %ghost %{_sysconfdir}/OpenCL/vendors/nvidia.icd
921
922 %ghost %{_bindir}/nvidia-debugdump
923 %ghost %{_bindir}/nvidia-settings
924 %ghost %{_bindir}/nvidia-smi
925 %ghost %{_bindir}/nvidia-xconfig
926 %ghost %{_bindir}/nvidia-modprobe
927 %ghost %{_bindir}/nvidia-persistenced
928 %ghost %{_bindir}/nvidia-bug-report.sh
929 %ghost %{_bindir}/nvidia-cuda-mps-control
930 %ghost %{_bindir}/nvidia-cuda-mps-server
931 %if !%simple
932 %dir %{nvidia_bindir}
933 %{nvidia_bindir}/nvidia-debugdump
934 %{nvidia_bindir}/nvidia-settings
935 %{nvidia_bindir}/nvidia-smi
936 %{nvidia_bindir}/nvidia-xconfig
937 %{nvidia_bindir}/nvidia-modprobe
938 %{nvidia_bindir}/nvidia-persistenced
939 %{nvidia_bindir}/nvidia-bug-report.sh
940 %{nvidia_bindir}/nvidia-cuda-mps-control
941 %{nvidia_bindir}/nvidia-cuda-mps-server
942 %endif
943
944 %ghost %{_mandir}/man1/nvidia-xconfig.1%{_extension}
945 %ghost %{_mandir}/man1/nvidia-settings.1%{_extension}
946 %ghost %{_mandir}/man1/nvidia-modprobe.1%{_extension}
947 %ghost %{_mandir}/man1/nvidia-persistenced.1%{_extension}
948 %ghost %{_mandir}/man1/nvidia-smi.1%{_extension}
949 %ghost %{_mandir}/man1/nvidia-cuda-mps-control.1%{_extension}
950 %if !%simple
951 %{_mandir}/man1/alt-%{drivername}-xconfig.1*
952 %{_mandir}/man1/alt-%{drivername}-settings.1*
953 %{_mandir}/man1/alt-%{drivername}-modprobe.1*
954 %{_mandir}/man1/alt-%{drivername}-persistenced.1*
955 %{_mandir}/man1/alt-%{drivername}-smi.1*
956 %{_mandir}/man1/alt-%{drivername}-cuda-mps-control.1*
957 %else
958 %{_mandir}/man1/alt-%{drivername}-*
959 %endif
960
961 %ghost %{_datadir}/applications/mageia-nvidia-settings.desktop
962 %dir %{_datadir}/%{drivername}
963 %{_datadir}/%{drivername}/mageia-nvidia-settings.desktop
964
965 %if !%simple
966 %{_iconsdir}/hicolor/16x16/apps/%{drivername}-settings.png
967 %{_iconsdir}/hicolor/32x32/apps/%{drivername}-settings.png
968 %endif
969 %{_iconsdir}/hicolor/48x48/apps/%{drivername}-settings.png
970
971 %if !%simple
972 %dir %{nvidia_libdir}
973 %dir %{nvidia_libdir}/tls
974 %dir %{nvidia_libdir}/vdpau
975 %{nvidia_libdir}/libGL.so.%{version}
976 %{nvidia_libdir}/libnvidia-glcore.so.%{version}
977 %{nvidia_libdir}/libnvidia-cfg.so.%{version}
978 %{nvidia_libdir}/libnvidia-tls.so.%{version}
979 %{nvidia_libdir}/vdpau/libvdpau_nvidia.so.%{version}
980 %{nvidia_libdir}/libGL.so.1
981 %{nvidia_libdir}/libnvidia-cfg.so.1
982 %{nvidia_libdir}/libnvidia-ifr.so.1
983 %{nvidia_libdir}/libnvidia-ifr.so.%{version}
984 %{nvidia_libdir}/libnvidia-ml.so.1
985 %{nvidia_libdir}/libnvidia-ml.so.%{version}
986 %{nvidia_libdir}/libvdpau_nvidia.so
987 %{nvidia_libdir}/tls/libnvidia-tls.so.%{version}
988 %ifarch %{biarches}
989 %dir %{nvidia_libdir32}
990 %dir %{nvidia_libdir32}/tls
991 %dir %{nvidia_libdir32}/vdpau
992 %{nvidia_libdir32}/libGL.so.%{version}
993 %{nvidia_libdir32}/libnvidia-glcore.so.%{version}
994 %{nvidia_libdir32}/libnvidia-ifr.so.1
995 %{nvidia_libdir32}/libnvidia-ifr.so.%{version}
996 %{nvidia_libdir32}/libnvidia-ml.so.1
997 %{nvidia_libdir32}/libnvidia-ml.so.%{version}
998 %{nvidia_libdir32}/libnvidia-tls.so.%{version}
999 %{nvidia_libdir32}/libvdpau_nvidia.so
1000 %{nvidia_libdir32}/vdpau/libvdpau_nvidia.so.%{version}
1001 %{nvidia_libdir32}/libGL.so.1
1002 %{nvidia_libdir32}/tls/libnvidia-tls.so.%{version}
1003 %endif
1004 # %simple
1005 %endif
1006
1007 %ghost %{_libdir}/vdpau/libvdpau_nvidia.so.1
1008 %ifarch %{biarches}
1009 # avoid unowned directory
1010 %dir %{_prefix}/lib/vdpau
1011 %ghost %{_prefix}/lib/vdpau/libvdpau_nvidia.so.1
1012 %endif
1013
1014 %if !%simple
1015 %dir %{nvidia_modulesdir}
1016 %{nvidia_modulesdir}/libnvidia-wfb.so.1
1017 %endif
1018
1019 %if !%simple
1020 %{nvidia_modulesdir}/libnvidia-wfb.so.%{version}
1021 %endif
1022
1023 %if !%simple
1024 %{nvidia_extensionsdir}/libglx.so.%{version}
1025 %{nvidia_extensionsdir}/libglx.so
1026 %endif
1027
1028 %if !%simple
1029 %{nvidia_driversdir}/nvidia_drv.so
1030 %endif
1031
1032 %files -n %{drivername}-devel -f %pkgname/nvidia-devel.files
1033 %defattr(-,root,root)
1034 %if !%simple
1035 %{_includedir}/%{drivername}
1036 %{nvidia_libdir}/libGL.so
1037 %{nvidia_libdir}/libcuda.so
1038 %{nvidia_libdir}/libnvcuvid.so
1039 %{nvidia_libdir}/libnvidia-cfg.so
1040 %{nvidia_libdir}/libnvidia-ifr.so
1041 %{nvidia_libdir}/libOpenCL.so
1042 %{nvidia_libdir}/libnvidia-ml.so
1043 %{nvidia_libdir}/libnvidia-encode.so
1044 %ifarch %{biarches}
1045 %{nvidia_libdir32}/libnvidia-ml.so
1046 %{nvidia_libdir32}/libGL.so
1047 %{nvidia_libdir32}/libcuda.so
1048 %{nvidia_libdir32}/libnvcuvid.so
1049 %{nvidia_libdir32}/libnvidia-ifr.so
1050 %{nvidia_libdir32}/libOpenCL.so
1051 %{nvidia_libdir32}/libnvidia-encode.so
1052 %endif
1053 %endif
1054
1055 %files -n dkms-%{drivername}
1056 %defattr(-,root,root)
1057 %doc %{pkgname}/LICENSE
1058 %{_usrsrc}/%{drivername}-%{version}-%{release}
1059
1060 %files -n %{drivername}-doc-html -f %pkgname/nvidia-html.files
1061 %defattr(-,root,root)
1062
1063 %files -n %{drivername}-cuda-opencl -f %pkgname/nvidia-cuda.files
1064 %defattr(-,root,root)
1065 # Do not preferably add any alternativeszificated binaries here,
1066 # they cause broken symlinks.
1067 %if !%simple
1068 %{nvidia_libdir}/libOpenCL.so.1.0.0
1069 %{nvidia_libdir}/libOpenCL.so.1.0
1070 %{nvidia_libdir}/libOpenCL.so.1
1071 %{nvidia_libdir}/libnvcuvid.so.%{version}
1072 %{nvidia_libdir}/libnvcuvid.so.1
1073 %{nvidia_libdir}/libnvidia-compiler.so.%{version}
1074 %{nvidia_libdir}/libnvidia-encode.so.1
1075 %{nvidia_libdir}/libnvidia-encode.so.%{version}
1076 %{nvidia_libdir}/libnvidia-opencl.so.1
1077 %{nvidia_libdir}/libnvidia-opencl.so.%{version}
1078 %{nvidia_libdir}/libcuda.so.%{version}
1079 %{nvidia_libdir}/libcuda.so.1
1080 %ifarch %{biarches}
1081 %{nvidia_libdir32}/libOpenCL.so.1.0.0
1082 %{nvidia_libdir32}/libOpenCL.so.1.0
1083 %{nvidia_libdir32}/libOpenCL.so.1
1084 %{nvidia_libdir32}/libnvcuvid.so.%{version}
1085 %{nvidia_libdir32}/libnvcuvid.so.1
1086 %{nvidia_libdir32}/libnvidia-compiler.so.%{version}
1087 %{nvidia_libdir32}/libnvidia-encode.so.1
1088 %{nvidia_libdir32}/libnvidia-encode.so.%{version}
1089 %{nvidia_libdir32}/libnvidia-opencl.so.1
1090 %{nvidia_libdir32}/libnvidia-opencl.so.%{version}
1091 %{nvidia_libdir32}/libcuda.so.%{version}
1092 %{nvidia_libdir32}/libcuda.so.1
1093 %endif
1094 %endif

  ViewVC Help
Powered by ViewVC 1.1.30