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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 550648 - (hide annotations) (download)
Mon Nov 11 23:22:22 2013 UTC (10 years, 5 months ago) by tmb
Original Path: cauldron/nvidia-current/current/SPECS/nvidia-current.spec
File size: 38623 byte(s)
- update to 331.20 (new longterm branch)
- drop merged / obsolete P1, P4, P6, P7
- dont build uvm module for now (broken build)
- update filelists


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

  ViewVC Help
Powered by ViewVC 1.1.30