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

  ViewVC Help
Powered by ViewVC 1.1.30