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

  ViewVC Help
Powered by ViewVC 1.1.30