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

  ViewVC Help
Powered by ViewVC 1.1.30