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

  ViewVC Help
Powered by ViewVC 1.1.30