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

  ViewVC Help
Powered by ViewVC 1.1.30