/[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 470904 - (hide annotations) (download)
Sat Aug 24 10:21:20 2013 UTC (10 years, 8 months ago) by anssi
Original Path: cauldron/nvidia-current/current/SPECS/nvidia-current.spec
File size: 37570 byte(s)
fix requires filtering for NVIFR library
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 469091 %define version 319.49
19 anssi 470904 %define rel 2
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 # https://qa.mandriva.com/show_bug.cgi?id=39921
119 ahmad 56909 Patch1: nvidia-settings-enable-dyntwinview-mga.patch
120 ahmad 56864 # 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 462230 # (tmb) fix build for kernel-3.11
125     Patch6: nvidia-Linux-3.11.patch
126 tmb 247582
127 ahmad 56864 %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 anssi 412170 BuildRequires: vdpau-devel
140 ahmad 56864 %endif
141    
142     %description
143     Source package of the current NVIDIA proprietary driver. Binary
144 ahmad 56909 packages are named x11-driver-video-nvidia-current.
145 ahmad 56864
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 anssi 219541 %if !%simple && %mgaversion >= 2
159     Requires: xserver-abi(videodrv) < %(echo $((%{videodrv_abi}+1)))
160 ahmad 66356 %endif
161 tmb 274692 Conflicts: nvidia-current-cuda-opencl <= 295.59-1
162 ahmad 56864 # 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 anssi 320407 Summary: NVIDIA OpenGL/CUDA development liraries and headers
198 ahmad 56864 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 anssi 320407 NVIDIA OpenGL/CUDA headers for %cards. This package
209     is not required for normal use.
210 ahmad 56864
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 anssi 95763 Requires: kmod(%{modulename}) = %{version}
216 ahmad 56864 Conflicts: nvidia < 1:195.36.15-4
217 tmb 274692 Conflicts: x11-driver-video-nvidia-current <= 295.59-1
218 ahmad 56864
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 anssi 412170 %setup -q -c -T -a 2 -a 3 -a 4 -a 5
240 ahmad 56864 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 tmb 462230 %patch6 -p1
251 ahmad 56864 cd ..
252     %endif
253    
254     rm -rf %{pkgname}/usr/src/nv/precompiled
255    
256 anssi 412170 %if %simple
257     # for old releases
258     mkdir -p %{pkgname}/kernel
259     %endif
260    
261 tmb 282366 # (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 ahmad 56864 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 tmb 282100 rm nvidia-settings-%{version}/src/*/*.a
306 ahmad 56864
307     %build
308 anssi 412170 # The code contains dozens on top of dozens on top of dozens of "false" positives
309     export CFLAGS="%optflags -Wno-error=format-security"
310 ahmad 56864 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 anssi 412170 %make -C nvidia-modprobe-%{version} STRIP_CMD=true
316     %make -C nvidia-persistenced-%{version} STRIP_CMD=true
317 ahmad 56864
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 ahmad 56909 cat > %{buildroot}%{_datadir}/%{drivername}/mageia-nvidia-settings.desktop <<EOF
328 ahmad 56864 [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 anssi 181441 Categories=GTK;Settings;HardwareSettings;
336 ahmad 56864 EOF
337    
338     install -d -m755 %{buildroot}%{_datadir}/applications
339 ahmad 56909 touch %{buildroot}%{_datadir}/applications/mageia-nvidia-settings.desktop
340 ahmad 56864
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 tmb 319556 ENCODEAPI_LIB)
470 anssi 320407 parseparams arch subdir
471     install_file nvidia $nvidia_libdir/$subdir
472 tmb 319556 ;;
473     ENCODEAPI_LIB_SYMLINK)
474     parseparams arch dest
475     install_lib_symlink nvidia $nvidia_libdir
476     ;;
477 ahmad 56864 NVCUVID_LIB)
478 anssi 320407 parseparams arch subdir
479     install_file nvidia-cuda $nvidia_libdir/$subdir
480 ahmad 56864 ;;
481     NVCUVID_LIB_SYMLINK)
482     parseparams arch dest
483     install_lib_symlink nvidia-cuda $nvidia_libdir
484     ;;
485 tmb 469114 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 ahmad 56864 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 anssi 208481 XMODULE_SHARED_LIB|GLX_MODULE_SHARED_LIB)
540 ahmad 56864 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 anssi 208481 XMODULE_SYMLINK|GLX_MODULE_SYMLINK)
558 ahmad 56864 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 anssi 412170 MANPAGE|NVIDIA_MODPROBE_MANPAGE)
588 ahmad 56864 parseparams subdir
589     case "$file" in
590     *nvidia-installer*)
591     # not installed
592     continue
593     ;;
594 anssi 412170 *nvidia-settings*|*nvidia-xconfig*|*nvidia-modprobe*|*nvidia-persistenced*)
595 ahmad 56864 %if !%simple
596     # installed separately below
597     continue
598     %endif
599     ;;
600 anssi 412170 *nvidia-smi*|*nvidia-cuda-mps-control*)
601 ahmad 56864 # 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 anssi 412170 *nvidia-settings|*nvidia-xconfig|*nvidia-persistenced)
612 ahmad 56864 %if !%simple
613     # not installed, we install our own copy
614     continue
615     %endif
616     ;;
617 anssi 412170 *nvidia-smi|*nvidia-bug-report.sh|*nvidia-debugdump)
618 ahmad 56864 # ok
619     ;;
620 anssi 412170 *nvidia-cuda-mps-control|*nvidia-cuda-mps-server)
621     # ok
622     ;;
623 ahmad 56864 *)
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 anssi 412170 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 ahmad 56864 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 anssi 412170 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 ahmad 56864 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 anssi 108523 [ -z "$warnings" ] || echo "Please inform Anssi Hannula <anssi@mageia.org> or http://bugs.mageia.org/ of the above warnings." >> warns.log
673 ahmad 56864
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 anssi 412170
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 ahmad 56864 %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 tmb 282100 install -m755 ../nvidia-settings-%{version}/src/_out/*/nvidia-settings %{buildroot}%{nvidia_bindir}
706 ahmad 56864 install -m755 ../nvidia-xconfig-%{version}/_out/*/nvidia-xconfig %{buildroot}%{nvidia_bindir}
707 anssi 412170 install -m755 ../nvidia-persistenced-%{version}/_out/*/nvidia-persistenced %{buildroot}%{nvidia_bindir}
708     install -m4755 ../nvidia-modprobe-%{version}/_out/*/nvidia-modprobe %{buildroot}%{nvidia_bindir}
709 ahmad 56864 %endif
710     # binary alternatives
711     install -d -m755 %{buildroot}%{_bindir}
712 anssi 152893 touch %{buildroot}%{_bindir}/nvidia-debugdump
713 ahmad 56864 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 anssi 412170 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 ahmad 56864 # rpmlint:
722     chmod 0755 %{buildroot}%{_bindir}/*
723    
724     %if !%simple
725     # install man pages
726 anssi 412170 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 ahmad 56864 %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 anssi 412170 touch %{buildroot}%{_mandir}/man1/nvidia-modprobe.1%{_extension}
740     touch %{buildroot}%{_mandir}/man1/nvidia-persistenced.1%{_extension}
741 ahmad 56864 touch %{buildroot}%{_mandir}/man1/nvidia-smi.1%{_extension}
742 anssi 412170 touch %{buildroot}%{_mandir}/man1/nvidia-cuda-mps-control.1%{_extension}
743 ahmad 56864
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 ahmad 66356 touch %{buildroot}%{_sysconfdir}/modprobe.d/display-driver.conf
760 anssi 87268 echo "install nvidia /sbin/modprobe %{modulename} \$CMDLINE_OPTS" > %{buildroot}%{_sysconfdir}/%{drivername}/modprobe.conf
761 ahmad 56864
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 anssi 412170 section="nothingyet"
782 ahmad 56864 set +x
783     [ -e README.txt ] || cp -a usr/share/doc/README.txt .
784     cat README.txt | while read line; do
785 anssi 412170 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 ahmad 56864 continue
792     fi
793 anssi 412170
794     if [ "$section" = "data" ] && echo "$line" | grep -Pq "^\s*$"; then
795     section="midspace"
796 ahmad 56864 continue
797     fi
798 anssi 412170
799 ahmad 56864 echo "$line" | grep -Pq "^\s*-+[\s-]+$" && continue
800 anssi 412170 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 ahmad 56864 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 anssi 412170 export EXCLUDE_FROM_STRIP="$(find %{buildroot} -type f \! -name nvidia-settings \! -name nvidia-xconfig \! -name nvidia-modprobe \! -name nvidia-persistenced)"
815 ahmad 56864
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 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} \
832 ahmad 56909 --slave %{_datadir}/applications/mageia-nvidia-settings.desktop nvidia_desktop %{_datadir}/%{drivername}/mageia-nvidia-settings.desktop \
833 ahmad 56864 --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 anssi 152893 --slave %{_bindir}/nvidia-debugdump nvidia-debugdump %{nvidia_bindir}/nvidia-debugdump \
837 ahmad 56864 --slave %{_bindir}/nvidia-bug-report.sh nvidia_bug_report %{nvidia_bindir}/nvidia-bug-report.sh \
838 anssi 412170 --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 ahmad 56864 --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 anssi 87344 --slave %{_sysconfdir}/modprobe.d/display-driver.conf display-driver.conf %{_sysconfdir}/%{drivername}/modprobe.conf \
845 ahmad 56864 --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 anssi 174611 %post -n %{drivername}-cuda-opencl
875     # explicit /sbin/ldconfig due to a non-standard library directory
876     /sbin/ldconfig -X
877 ahmad 56864
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 anssi 320407 # ld.so.conf, modprobe.conf, xinit
905 ahmad 56864 %ghost %{_sysconfdir}/ld.so.conf.d/GL.conf
906     %ghost %{_sysconfdir}/X11/xinit.d/nvidia-settings.xinit
907 ahmad 66356 %ghost %{_sysconfdir}/modprobe.d/display-driver.conf
908 ahmad 56864 %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 anssi 412170 %dir %{_datadir}/nvidia
915     %{_datadir}/nvidia/nvidia-application-profiles-%{version}-rc
916 ahmad 56864 %endif
917    
918     %dir %{_sysconfdir}/OpenCL
919     %dir %{_sysconfdir}/OpenCL/vendors
920     %ghost %{_sysconfdir}/OpenCL/vendors/nvidia.icd
921    
922 anssi 152893 %ghost %{_bindir}/nvidia-debugdump
923 ahmad 56864 %ghost %{_bindir}/nvidia-settings
924     %ghost %{_bindir}/nvidia-smi
925     %ghost %{_bindir}/nvidia-xconfig
926 anssi 412170 %ghost %{_bindir}/nvidia-modprobe
927     %ghost %{_bindir}/nvidia-persistenced
928 ahmad 56864 %ghost %{_bindir}/nvidia-bug-report.sh
929 anssi 412170 %ghost %{_bindir}/nvidia-cuda-mps-control
930     %ghost %{_bindir}/nvidia-cuda-mps-server
931 ahmad 56864 %if !%simple
932     %dir %{nvidia_bindir}
933 anssi 152893 %{nvidia_bindir}/nvidia-debugdump
934 ahmad 56864 %{nvidia_bindir}/nvidia-settings
935     %{nvidia_bindir}/nvidia-smi
936     %{nvidia_bindir}/nvidia-xconfig
937 anssi 412170 %{nvidia_bindir}/nvidia-modprobe
938     %{nvidia_bindir}/nvidia-persistenced
939 ahmad 56864 %{nvidia_bindir}/nvidia-bug-report.sh
940 anssi 412170 %{nvidia_bindir}/nvidia-cuda-mps-control
941     %{nvidia_bindir}/nvidia-cuda-mps-server
942 ahmad 56864 %endif
943    
944     %ghost %{_mandir}/man1/nvidia-xconfig.1%{_extension}
945     %ghost %{_mandir}/man1/nvidia-settings.1%{_extension}
946 anssi 412170 %ghost %{_mandir}/man1/nvidia-modprobe.1%{_extension}
947     %ghost %{_mandir}/man1/nvidia-persistenced.1%{_extension}
948 ahmad 56864 %ghost %{_mandir}/man1/nvidia-smi.1%{_extension}
949 anssi 412170 %ghost %{_mandir}/man1/nvidia-cuda-mps-control.1%{_extension}
950 ahmad 56864 %if !%simple
951     %{_mandir}/man1/alt-%{drivername}-xconfig.1*
952     %{_mandir}/man1/alt-%{drivername}-settings.1*
953 anssi 412170 %{_mandir}/man1/alt-%{drivername}-modprobe.1*
954     %{_mandir}/man1/alt-%{drivername}-persistenced.1*
955 ahmad 56864 %{_mandir}/man1/alt-%{drivername}-smi.1*
956 anssi 412170 %{_mandir}/man1/alt-%{drivername}-cuda-mps-control.1*
957 ahmad 56864 %else
958     %{_mandir}/man1/alt-%{drivername}-*
959     %endif
960    
961 ahmad 56909 %ghost %{_datadir}/applications/mageia-nvidia-settings.desktop
962 ahmad 56864 %dir %{_datadir}/%{drivername}
963 ahmad 56909 %{_datadir}/%{drivername}/mageia-nvidia-settings.desktop
964 ahmad 56864
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 tmb 469114 %{nvidia_libdir}/libnvidia-ifr.so.1
983     %{nvidia_libdir}/libnvidia-ifr.so.%{version}
984 tmb 274692 %{nvidia_libdir}/libnvidia-ml.so.1
985     %{nvidia_libdir}/libnvidia-ml.so.%{version}
986 ahmad 56864 %{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 tmb 469114 %{nvidia_libdir32}/libnvidia-ifr.so.1
995     %{nvidia_libdir32}/libnvidia-ifr.so.%{version}
996 tmb 274692 %{nvidia_libdir32}/libnvidia-ml.so.1
997     %{nvidia_libdir32}/libnvidia-ml.so.%{version}
998 ahmad 56864 %{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 ahmad 56909 %if !%simple
1015 ahmad 56864 %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 tmb 469114 %{nvidia_libdir}/libnvidia-ifr.so
1041 ahmad 56864 %{nvidia_libdir}/libOpenCL.so
1042 ahmad 56909 %{nvidia_libdir}/libnvidia-ml.so
1043 anssi 320407 %{nvidia_libdir}/libnvidia-encode.so
1044 ahmad 56864 %ifarch %{biarches}
1045 ahmad 131180 %{nvidia_libdir32}/libnvidia-ml.so
1046 ahmad 56864 %{nvidia_libdir32}/libGL.so
1047     %{nvidia_libdir32}/libcuda.so
1048 anssi 320407 %{nvidia_libdir32}/libnvcuvid.so
1049 tmb 469114 %{nvidia_libdir32}/libnvidia-ifr.so
1050 ahmad 56864 %{nvidia_libdir32}/libOpenCL.so
1051 anssi 320407 %{nvidia_libdir32}/libnvidia-encode.so
1052 ahmad 56864 %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 anssi 412170 # Do not preferably add any alternativeszificated binaries here,
1066     # they cause broken symlinks.
1067 ahmad 56864 %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 anssi 320407 %{nvidia_libdir}/libnvidia-encode.so.1
1075     %{nvidia_libdir}/libnvidia-encode.so.%{version}
1076 tmb 282100 %{nvidia_libdir}/libnvidia-opencl.so.1
1077     %{nvidia_libdir}/libnvidia-opencl.so.%{version}
1078 ahmad 56864 %{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 anssi 320407 %{nvidia_libdir32}/libnvcuvid.so.%{version}
1085     %{nvidia_libdir32}/libnvcuvid.so.1
1086 ahmad 56864 %{nvidia_libdir32}/libnvidia-compiler.so.%{version}
1087 anssi 320407 %{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 ahmad 56864 %{nvidia_libdir32}/libcuda.so.%{version}
1092     %{nvidia_libdir32}/libcuda.so.1
1093     %endif
1094     %endif

  ViewVC Help
Powered by ViewVC 1.1.30