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