3aae2e3ab65d46a4660a11ca01d6082e63495e5d
[packages/xorg-driver-video-nvidia.git] / xorg-driver-video-nvidia.spec
1 # TODO
2 # - should -libs Require main package?
3 # - drop binary-only nvidia-settings from here, and use nvidia-settings.spec for it?
4 # - kernel-drm is required on never kernels. driver for kernel-longterm not requires drm
5 #
6 # Conditional build:
7 %bcond_with     glvnd           # with GL vendor neutral libs
8 %bcond_without  system_libglvnd # do not use system libglvnd
9 %bcond_without  kernel          # without kernel packages
10 %bcond_without  userspace       # don't build userspace programs
11 %bcond_with     settings        # package nvidia-settings here (GPL version of same packaged from nvidia-settings.spec)
12 %bcond_with     verbose         # verbose build (V=1)
13
14 # The goal here is to have main, userspace, package built once with
15 # simple release number, and only rebuild kernel packages with kernel
16 # version as part of release number, without the need to bump release
17 # with every kernel change.
18 %if 0%{?_pld_builder:1} && %{with kernel} && %{with userspace}
19 %{error:kernel and userspace cannot be built at the same time on PLD builders}
20 exit 1
21 %endif
22
23 %if %{with glvnd}
24 %define         vulkan_lib      libGLX_nvidia.so.0
25 %else
26 %define         vulkan_lib      libGL.so.1
27 %endif
28
29 %if %{without userspace}
30 # nothing to be placed to debuginfo package
31 %define         _enable_debug_packages  0
32 %endif
33
34 %define         no_install_post_check_so 1
35
36 %define         rel     1
37 %define         pname   xorg-driver-video-nvidia
38 Summary:        Linux Drivers for nVidia GeForce/Quadro Chips
39 Summary(hu.UTF-8):      Linux meghajtók nVidia GeForce/Quadro chipekhez
40 Summary(pl.UTF-8):      Sterowniki do kart graficznych nVidia GeForce/Quadro
41 Name:           %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel}
42 # when updating version here, keep nvidia-settings.spec in sync as well
43 Version:        396.24
44 Release:        %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}}
45 Epoch:          1
46 License:        nVidia Binary
47 Group:          X11
48 Source0:        http://us.download.nvidia.com/XFree86/Linux-x86_64/%{version}/NVIDIA-Linux-x86_64-%{version}.run
49 # Source0-md5:  7b5c4735a5b7ad3a9d166ca85cc88e17
50 Source2:        %{pname}-xinitrc.sh
51 Source3:        gl.pc.in
52 Source4:        10-nvidia.conf
53 Source5:        10-nvidia-modules.conf
54 Patch0:         X11-driver-nvidia-GL.patch
55 Patch1:         X11-driver-nvidia-desktop.patch
56 URL:            http://www.nvidia.com/object/unix.html
57 BuildRequires:  rpmbuild(macros) >= 1.701
58 %{?with_kernel:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2}}
59 BuildRequires:  sed >= 4.0
60 BuildConflicts: XFree86-nvidia
61 Requires:       %{pname}-libs = %{epoch}:%{version}-%{rel}
62 Requires:       xorg-xserver-server
63 Requires:       xorg-xserver-server(videodrv-abi) <= 24.0
64 Requires:       xorg-xserver-server(videodrv-abi) >= 2.0
65 Provides:       ocl-icd(nvidia)
66 Provides:       ocl-icd-driver
67 Provides:       vulkan(icd) = 1.1.70
68 Provides:       xorg-driver-video
69 Provides:       xorg-xserver-module(glx)
70 Obsoletes:      XFree86-driver-nvidia
71 Obsoletes:      XFree86-nvidia
72 Conflicts:      XFree86-OpenGL-devel <= 4.2.0-3
73 ExclusiveArch:  %{ix86} %{x8664}
74 BuildRoot:      %{tmpdir}/%{pname}-%{version}-root-%(id -u -n)
75
76 %define         _noautoreqdep   libGL.so.1 libnvcuvid.so
77 # libnvidia-encode.so.*.* links with libnvcuvid.so instead of libnvcuvid.so.1
78 %define         _noautoreq      libnvcuvid.so
79
80 %description
81 This driver set adds improved 2D functionality to the Xorg X server as
82 well as high performance OpenGL acceleration, AGP support, support for
83 most flat panels, and 2D multiple monitor support. Supported hardware:
84 modern NVIDIA GeForce (from GeForce2 MX) and Quadro (Quadro4 and up)
85 based graphics accelerators.
86
87 The older graphics chips are unsupported:
88 - NV1 and RIVA 128/128ZX chips are supported in the base Xorg install
89   (nv driver)
90 - TNT/TNT2/GeForce 256/GeForce2 Ultra/Quadro2 are suported by -legacy
91   drivers.
92
93 %description -l hu.UTF-8
94 Ez a meghajtó kibővíti az Xorg X szerver 2D működését OpenGL
95 gyorsítással, AGP támogatással és támogatja a több monitort.
96 Támogatott hardverek: modern NVIDIA GeForce (GeForce2 MX-től) és
97 Quadro (Quadro4 és újabbak) alapú grafikai gyorsítók.
98
99 A régekbbi grafikus chipek nem támogatottak:
100 - NV1 és RIVA 128/128ZX chipek az alap Xorg telepítéssel (nv meghajtó)
101 - TNT/TNT2/GeForce 256/GeForce2 Ultra/Quadro2 a -legacy driverekkel
102   támogatottak.
103
104 %description -l pl.UTF-8
105 Usprawnione sterowniki dla kart graficznych nVidia do serwera Xorg,
106 dające wysokowydajną akcelerację OpenGL, obsługę AGP i wielu monitorów
107 2D. Obsługują w miarę nowe karty NVIDIA GeForce (od wersji GeForce2
108 MX) oraz Quadro (od wersji Quadro4).
109
110 Starsze układy graficzne nie są obsługiwane przez ten pakiet:
111 - NV1 i RIVA 128/128ZX są obsługiwane przez sterownik nv z Xorg
112 - TNT/TNT2/GeForce 256/GeForce 2 Ultra/Quadro 2 są obsługiwane przez
113   sterowniki -legacy
114
115 %package libs
116 Summary:        OpenGL (GL and GLX) Nvidia libraries
117 Summary(pl.UTF-8):      Biblioteki OpenGL (GL i GLX) Nvidia
118 Group:          X11/Development/Libraries
119 Requires(post,postun):  /sbin/ldconfig
120 %if %{with glvnd} && %{with system_libglvnd}
121 Requires:       libglvnd
122 Requires:       libglvnd-libGL
123 Requires:       libglvnd-libGLES
124 %endif
125 Requires:       libvdpau >= 0.3
126 Provides:       OpenGL = 3.3
127 Provides:       OpenGL-GLX = 1.4
128 Obsoletes:      X11-OpenGL-core < 1:7.0.0
129 Obsoletes:      X11-OpenGL-libGL < 1:7.0.0
130 Obsoletes:      XFree86-OpenGL-core < 1:7.0.0
131 Obsoletes:      XFree86-OpenGL-libGL < 1:7.0.0
132
133 %description libs
134 NVIDIA OpenGL (GL and GLX only) implementation libraries.
135
136 %description libs -l pl.UTF-8
137 Implementacja OpenGL (tylko GL i GLX) firmy NVIDIA.
138
139 %package devel
140 Summary:        OpenGL (GL and GLX) header files
141 Summary(hu.UTF-8):      OpenGL (GL és GLX) fejléc fájlok
142 Summary(pl.UTF-8):      Pliki nagłówkowe OpenGL (GL i GLX)
143 Group:          X11/Development/Libraries
144 Requires:       %{pname}-libs = %{epoch}:%{version}-%{rel}
145 Provides:       OpenGL-GLX-devel = 1.4
146 Provides:       OpenGL-devel = 2.1
147 Obsoletes:      X11-OpenGL-devel-base
148 Obsoletes:      XFree86-OpenGL-devel-base
149 Obsoletes:      XFree86-driver-nvidia-devel
150 Conflicts:      XFree86-OpenGL-devel < 4.3.99.902-0.3
151
152 %description devel
153 OpenGL header files (GL and GLX only) for NVIDIA OpenGL
154 implementation.
155
156 %description devel -l hu.UTF-8
157 OpenGL fejléc fájlok (csak GL és GLX) NVIDIA OpenGL implementációhoz.
158
159 %description devel -l pl.UTF-8
160 Pliki nagłówkowe OpenGL (tylko GL i GLX) dla implementacji OpenGL
161 firmy NVIDIA.
162
163 %package doc
164 Summary:        Documentation for NVIDIA Graphics Driver
165 Group:          Documentation
166 %if "%{_rpmversion}" >= "5"
167 BuildArch:      noarch
168 %endif
169
170 %description doc
171 NVIDIA Accelerated Linux Graphics Driver README and Installation
172 Guide.
173
174 %package progs
175 Summary:        Tools for advanced control of nVidia graphic cards
176 Summary(hu.UTF-8):      Eszközök az nVidia grafikus kártyák beállításához
177 Summary(pl.UTF-8):      Narzędzia do zarządzania kartami graficznymi nVidia
178 Group:          Applications/System
179 Requires:       %{pname} = %{epoch}:%{version}
180 Suggests:       pkgconfig
181 Obsoletes:      XFree86-driver-nvidia-progs
182
183 %description progs
184 Tools for advanced control of nVidia graphic cards.
185
186 %description progs -l hu.UTF-8
187 Eszközök az nVidia grafikus kártyák beállításához.
188
189 %description progs -l pl.UTF-8
190 Narzędzia do zarządzania kartami graficznymi nVidia.
191
192 %ifarch %{x8664}
193 %define kernel_pkg()\
194 %package -n kernel%{_alt_kernel}-video-nvidia\
195 Summary:        nVidia kernel module for nVidia Architecture support\
196 Summary(de.UTF-8):      Das nVidia-Kern-Modul für die nVidia-Architektur-Unterstützung\
197 Summary(hu.UTF-8):      nVidia Architektúra támogatás Linux kernelhez.\
198 Summary(pl.UTF-8):      Moduł jądra dla obsługi kart graficznych nVidia\
199 Release:        %{rel}@%{_kernel_ver_str}\
200 Group:          Base/Kernel\
201 Requires(post,postun):  /sbin/depmod\
202 Requires:       dev >= 2.7.7-10\
203 %requires_releq_kernel\
204 %if %{_kernel_version_code} >= %{_kernel_version_magic 3 10 0}\
205 Requires:       %{releq_kernel -n drm}\
206 %endif\
207 Requires(postun):       %releq_kernel\
208 Requires:       %{pname} = %{epoch}:%{version}\
209 Provides:       X11-driver-nvidia(kernel)\
210 Obsoletes:      XFree86-nvidia-kernel\
211 \
212 %description -n kernel%{_alt_kernel}-video-nvidia\
213 nVidia Architecture support for Linux kernel.\
214 \
215 %description -n kernel%{_alt_kernel}-video-nvidia -l de.UTF-8\
216 Die nVidia-Architektur-Unterstützung für den Linux-Kern.\
217 \
218 %description -n kernel%{_alt_kernel}-video-nvidia -l hu.UTF-8\
219 nVidia Architektúra támogatás Linux kernelhez.\
220 \
221 %description -n kernel%{_alt_kernel}-video-nvidia -l pl.UTF-8\
222 Obsługa architektury nVidia dla jądra Linuksa. Pakiet wymagany przez\
223 sterownik nVidii dla Xorg/XFree86.\
224 \
225 %if %{with kernel}\
226 %files -n kernel%{_alt_kernel}-video-nvidia\
227 %defattr(644,root,root,755)\
228 /lib/modules/%{_kernel_ver}/misc/*.ko*\
229 %endif\
230 \
231 %post   -n kernel%{_alt_kernel}-video-nvidia\
232 %depmod %{_kernel_ver}\
233 \
234 %postun -n kernel%{_alt_kernel}-video-nvidia\
235 %depmod %{_kernel_ver}\
236 %{nil}
237
238 %define build_kernel_pkg()\
239 cd kernel\
240 #cat >> Makefile <<'EOF'\
241 #\
242 #$(obj)/nv-kernel.o: $(src)/nv-kernel.o.bin\
243 #       cp $< $@\
244 #EOF\
245 #mv nv-kernel.o{,.bin}\
246 #build_kernel_modules -m nvidia\
247 %{__make} SYSSRC=%{_kernelsrcdir} clean\
248 %{__make} SYSSRC=%{_kernelsrcdir} IGNORE_CC_MISMATCH=1 NV_VERBOSE=1 CC=%{__cc} module\
249 cd ..\
250 %install_kernel_modules -D installed -m kernel/nvidia,kernel/nvidia-drm,kernel/nvidia-modeset -d misc\
251 %install_kernel_modules -D installed -m kernel/nvidia-uvm -d misc\
252 %{nil}
253
254 %{?with_kernel:%{expand:%create_kernel_packages}}
255 %endif
256
257 %prep
258 cd %{_builddir}
259 rm -rf NVIDIA-Linux-x86_64-%{version}
260 /bin/sh %{SOURCE0} --extract-only
261 %setup -qDT -n NVIDIA-Linux-x86_64-%{version}
262 %patch0 -p1
263 %patch1 -p1
264 echo 'EXTRA_CFLAGS += -Wno-pointer-arith -Wno-sign-compare -Wno-unused' >> kernel/Makefile.kbuild
265
266 %build
267 %ifarch %{x8664}
268 %{?with_kernel:%{expand:%build_kernel_packages}}
269 %endif
270
271 %install
272 rm -rf $RPM_BUILD_ROOT
273
274 %if %{with userspace}
275 install -d $RPM_BUILD_ROOT%{_libdir}/{nvidia,xorg/modules/{drivers,extensions/nvidia}} \
276         $RPM_BUILD_ROOT{%{_includedir}/GL,%{_libdir}/vdpau,%{_bindir},%{_mandir}/man1} \
277         $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir},/etc/X11/xinit/xinitrc.d} \
278         $RPM_BUILD_ROOT%{_sysconfdir}/{OpenCL/vendors,ld.so.conf.d,X11/xorg.conf.d} \
279         $RPM_BUILD_ROOT%{_datadir}/{glvnd/egl_vendor.d,nvidia,vulkan/icd.d}
280
281 %ifarch %{x8664}
282 %if %{with settings}
283 install -p nvidia-settings $RPM_BUILD_ROOT%{_bindir}
284 cp -p nvidia-settings.1* $RPM_BUILD_ROOT%{_mandir}/man1
285 cp -p nvidia-settings.desktop $RPM_BUILD_ROOT%{_desktopdir}
286 cp -p nvidia-settings.png $RPM_BUILD_ROOT%{_pixmapsdir}
287 install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d/nvidia-settings.sh
288 %endif
289
290 install -p nvidia-{smi,xconfig,bug-report.sh} $RPM_BUILD_ROOT%{_bindir}
291 install -p nvidia-cuda-mps-{control,server} $RPM_BUILD_ROOT%{_bindir}
292 cp -p nvidia-{smi,xconfig,cuda-mps-control}.1* $RPM_BUILD_ROOT%{_mandir}/man1
293 install -p nvidia.icd $RPM_BUILD_ROOT%{_sysconfdir}/OpenCL/vendors
294
295 install %{SOURCE4} $RPM_BUILD_ROOT/etc/X11/xorg.conf.d
296 install %{SOURCE5} $RPM_BUILD_ROOT/etc/X11/xorg.conf.d
297 sed -i -e 's|@@LIBDIR@@|%{_libdir}|g' $RPM_BUILD_ROOT/etc/X11/xorg.conf.d/10-nvidia-modules.conf
298 install -p nvidia-drm-outputclass.conf $RPM_BUILD_ROOT/etc/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf
299
300 install -p nvidia-application-profiles-%{version}-key-documentation $RPM_BUILD_ROOT%{_datadir}/nvidia
301 install -p nvidia-application-profiles-%{version}-rc $RPM_BUILD_ROOT%{_datadir}/nvidia
302 %endif
303
304 %ifarch %{ix86}
305 %define srcdir  32
306 %else
307 %define srcdir  .
308 %endif
309
310 for f in \
311 %if %{with glvnd}
312 %if %{without system_libglvnd}
313         %{srcdir}/libGL.so.1.7.0                                \
314         %{srcdir}/libGLX.so.0                           \
315         %{srcdir}/libOpenGL.so.0                                \
316         %{srcdir}/libGLdispatch.so.0                    \
317         %{srcdir}/libGLESv1_CM.so.1.2.0                 \
318         %{srcdir}/libGLESv2.so.2.1.0                    \
319         %{srcdir}/libEGL.so.1.1.0                               \
320 %endif
321         %{srcdir}/libGLX_nvidia.so.%{version}           \
322         %{srcdir}/libEGL_nvidia.so.%{version}           \
323         %{srcdir}/libGLESv1_CM_nvidia.so.%{version}     \
324         %{srcdir}/libGLESv2_nvidia.so.%{version}                \
325 %ifarch %{x8664}
326         %{srcdir}/libnvidia-egl-wayland.so.1.0.3                \
327         %{srcdir}/libnvidia-eglcore.so.%{version}               \
328 %endif
329 %else
330         %{srcdir}/libGL.so.%{version}                   \
331 %endif
332         %{srcdir}/libcuda.so.%{version}                 \
333         %{srcdir}/libnvcuvid.so.%{version}              \
334 %ifarch %{x8664}
335         %{srcdir}/libnvidia-cfg.so.%{version}           \
336 %endif
337         %{srcdir}/libnvidia-compiler.so.%{version}      \
338         %{srcdir}/libnvidia-encode.so.%{version}                \
339         %{srcdir}/libnvidia-fatbinaryloader.so.%{version}       \
340         %{srcdir}/libnvidia-fbc.so.%{version}   \
341         %{srcdir}/libnvidia-glcore.so.%{version}                \
342         %{srcdir}/libnvidia-glsi.so.%{version}          \
343         %{srcdir}/libnvidia-glvkspirv.so.%{version}             \
344         %{srcdir}/libnvidia-ifr.so.%{version}           \
345         %{srcdir}/libnvidia-ml.so.%{version}            \
346         %{srcdir}/libnvidia-opencl.so.%{version}                \
347         %{srcdir}/libnvidia-ptxjitcompiler.so.%{version}        \
348         %{srcdir}/tls/libnvidia-tls.so.%{version}               \
349 ; do
350         install -p $f $RPM_BUILD_ROOT%{_libdir}/nvidia
351 done
352
353 install -p %{srcdir}/libvdpau_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/vdpau
354
355 %ifarch %{x8664}
356 install -p libglx.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia
357 ln -s libglx.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia/libglx.so
358 install -p nvidia_drv.so $RPM_BUILD_ROOT%{_libdir}/xorg/modules/drivers/nvidia_drv.so.%{version}
359 ln -s nvidia_drv.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/drivers/nvidia_drv.so
360 install -p libnvidia-wfb.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia
361 ln -s libnvidia-wfb.so.1 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so
362 %endif
363
364 /sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}/nvidia
365 /sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia
366
367 cp -p gl*.h $RPM_BUILD_ROOT%{_includedir}/GL
368
369 ln -sf libvdpau_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/vdpau/libvdpau_nvidia.so.1
370
371 %ifarch %{x8664}
372 echo %{_libdir}/nvidia >$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia64.conf
373 echo %{_libdir}/vdpau >>$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia64.conf
374 %else
375 echo %{_libdir}/nvidia >$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia.conf
376 echo %{_libdir}/vdpau >>$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia.conf
377 %endif
378
379 # OpenGL ABI for Linux compatibility
380 %if %{with glvnd}
381 %if %{without system_libglvnd}
382 ln -sf libGL.so.1.7.0 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGL.so.1
383 ln -sf libGL.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGL.so
384 ln -sf libGLX.so.0 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLX.so
385 ln -sf libOpenGL.so.0 $RPM_BUILD_ROOT%{_libdir}/nvidia/libOpenGL.so
386 ln -sf libGLESv1_CM.so.1.2.0 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLESv1_CM.so.1
387 ln -sf libGLESv1_CM.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLESv1_CM.so
388 ln -sf libGLESv2.so.2.1.0 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLESv2.so.2
389 ln -sf libGLESv2.so.2 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLESv2.so
390 ln -sf libEGL.so.1.1.0 $RPM_BUILD_ROOT%{_libdir}/nvidia/libEGL.so.1
391 ln -sf libEGL.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libEGL.so
392 %endif
393 ln -sf libGLX_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLX_nvidia.so.0
394 ln -sf libGLX_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLX_indirect.so.0
395 ln -sf libEGL_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libEGL_nvidia.so.0
396 ln -sf libGLESv1_CM_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLESv1_CM_nvidia.so.1
397 ln -sf libGLESv2_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLESv2_nvidia.so.2
398
399 %ifarch %{x8664}
400 install -p 10_nvidia.json $RPM_BUILD_ROOT%{_datadir}/glvnd/egl_vendor.d
401 %endif
402 %else
403 ln -sf libGL.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGL.so.1
404 ln -sf libGL.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGL.so
405 %endif
406 ln -sf libcuda.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libcuda.so
407 ln -sf libnvcuvid.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libnvcuvid.so
408
409 %ifarch %{x8664}
410 sed 's!__NV_VK_ICD__!%{vulkan_lib}!g' nvidia_icd.json.template > $RPM_BUILD_ROOT%{_datadir}/vulkan/icd.d/nvidia_icd.json
411 %endif
412 %endif
413
414 %ifarch %{x8664}
415 %if %{with kernel}
416 install -d $RPM_BUILD_ROOT
417 cp -a installed/* $RPM_BUILD_ROOT
418 %endif
419 %endif
420
421 install -d $RPM_BUILD_ROOT%{_pkgconfigdir}
422 sed -e '
423         s|@@prefix@@|%{_prefix}|g;
424         s|@@libdir@@|%{_libdir}|g;
425         s|@@includedir@@|%{_includedir}|g;
426         s|@@version@@|%{version}|g' < %{SOURCE3} \
427         > $RPM_BUILD_ROOT%{_pkgconfigdir}/gl.pc
428
429 %clean
430 rm -rf $RPM_BUILD_ROOT
431
432 %post
433 cat << 'EOF'
434 NOTE: You must also install kernel module for this driver to work
435   kernel%{_alt_kernel}-video-nvidia-%{version}
436
437 EOF
438
439 %post   libs -p /sbin/ldconfig
440 %postun libs -p /sbin/ldconfig
441
442 %if %{with userspace}
443 %ifarch %{x8664}
444 %files
445 %defattr(644,root,root,755)
446 %doc LICENSE NVIDIA_Changelog README.txt
447 %dir %{_libdir}/xorg/modules/extensions/nvidia
448 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so.*.*
449 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so.1
450 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so
451 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libglx.so.*
452 %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libglx.so
453 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/nvidia_drv.so.*
454 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/nvidia_drv.so
455 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/X11/xorg.conf.d/10-nvidia.conf
456 %{_sysconfdir}/X11/xorg.conf.d/10-nvidia-modules.conf
457 %{_sysconfdir}/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf
458 %dir %{_datadir}/nvidia
459 %{_datadir}/nvidia/nvidia-application-profiles-%{version}-key-documentation
460 %{_datadir}/nvidia/nvidia-application-profiles-%{version}-rc
461 %endif
462
463 %files libs
464 %defattr(644,root,root,755)
465 %ifarch %{x8664}
466 %dir %{_sysconfdir}/OpenCL
467 %dir %{_sysconfdir}/OpenCL/vendors
468 %{_sysconfdir}/OpenCL/vendors/nvidia.icd
469 %endif}
470 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ld.so.conf.d/nvidia*.conf
471 %dir %{_libdir}/nvidia
472 %if %{with glvnd}
473 %if %{without system_libglvnd}
474 %attr(755,root,root) %{_libdir}/nvidia/libGL.so.1.7.0
475 %attr(755,root,root) %ghost %{_libdir}/nvidia/libGL.so.1
476 %attr(755,root,root) %{_libdir}/nvidia/libGLX.so.0
477 %attr(755,root,root) %{_libdir}/nvidia/libOpenGL.so.0
478 %attr(755,root,root) %{_libdir}/nvidia/libGLdispatch.so.0
479 %attr(755,root,root) %{_libdir}/nvidia/libGLESv1_CM.so.1.2.0
480 %attr(755,root,root) %ghost %{_libdir}/nvidia/libGLESv1_CM.so.1
481 %attr(755,root,root) %{_libdir}/nvidia/libGLESv2.so.2.1.0
482 %attr(755,root,root) %ghost %{_libdir}/nvidia/libGLESv2.so.2
483 %attr(755,root,root) %{_libdir}/nvidia/libEGL.so.1.1.0
484 %attr(755,root,root) %ghost %{_libdir}/nvidia/libEGL.so.1
485 %endif
486 %attr(755,root,root) %ghost %{_libdir}/nvidia/libEGL_nvidia.so.0
487 %attr(755,root,root) %{_libdir}/nvidia/libEGL_nvidia.so.*.*
488 %attr(755,root,root) %ghost %{_libdir}/nvidia/libGLESv1_CM_nvidia.so.1
489 %attr(755,root,root) %{_libdir}/nvidia/libGLESv1_CM_nvidia.so.*.*
490 %attr(755,root,root) %ghost %{_libdir}/nvidia/libGLESv2_nvidia.so.2
491 %attr(755,root,root) %{_libdir}/nvidia/libGLESv2_nvidia.so.*.*
492 %attr(755,root,root) %ghost %{_libdir}/nvidia/libGLX_indirect.so.0
493 %attr(755,root,root) %ghost %{_libdir}/nvidia/libGLX_nvidia.so.0
494 %attr(755,root,root) %{_libdir}/nvidia/libGLX_nvidia.so.*.*
495 %ifarch %{x8664}
496 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-egl-wayland.so.*.*.*
497 %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-egl-wayland.so.1
498 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-eglcore.so.*.*
499 %endif
500 %else
501 %attr(755,root,root) %{_libdir}/nvidia/libGL.so.*.*
502 %attr(755,root,root) %ghost %{_libdir}/nvidia/libGL.so.1
503 %endif
504 %attr(755,root,root) %{_libdir}/nvidia/libcuda.so.*.*
505 %attr(755,root,root) %ghost %{_libdir}/nvidia/libcuda.so.1
506 %attr(755,root,root) %{_libdir}/nvidia/libcuda.so
507 %attr(755,root,root) %{_libdir}/nvidia/libnvcuvid.so.*.*
508 %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvcuvid.so.1
509 %attr(755,root,root) %{_libdir}/nvidia/libnvcuvid.so
510 %ifarch %{x8664}
511 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-cfg.so.*.*
512 %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-cfg.so.1
513 %endif
514 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-compiler.so.*.*
515 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-encode.so.*.*
516 %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-encode.so.1
517 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-fatbinaryloader.so.*.*
518 %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-fbc.so.1
519 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-fbc.so.*.*
520 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-glcore.so.*.*
521 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-glsi.so.*.*
522 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-glvkspirv.so.*.*
523 %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-ifr.so.1
524 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-ifr.so.*.*
525 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-ptxjitcompiler.so.1
526 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-ml.so.*.*
527 %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-ml.so.1
528 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-opencl.so.*.*
529 %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-opencl.so.1
530 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-ptxjitcompiler.so.*.*
531 %attr(755,root,root) %{_libdir}/nvidia/libnvidia-tls.so.*.*
532 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_nvidia.so.*.*
533 %attr(755,root,root) %ghost %{_libdir}/vdpau/libvdpau_nvidia.so.1
534 %ifarch %{x8664}
535 %if %{with glvnd}
536 %{_datadir}/glvnd/egl_vendor.d/10_nvidia.json
537 %endif
538 %{_datadir}/vulkan/icd.d/nvidia_icd.json
539 %endif
540
541 %files devel
542 %defattr(644,root,root,755)
543 %dir %{_includedir}/GL
544 %{_includedir}/GL/gl.h
545 %{_includedir}/GL/glext.h
546 %{_includedir}/GL/glx.h
547 %{_includedir}/GL/glxext.h
548 %if %{with glvnd}
549 %if %{without system_libglvnd}
550 %attr(755,root,root) %{_libdir}/nvidia/libGL.so
551 %attr(755,root,root) %{_libdir}/nvidia/libGLX.so
552 %attr(755,root,root) %{_libdir}/nvidia/libOpenGL.so
553 %attr(755,root,root) %{_libdir}/nvidia/libGLESv1_CM.so
554 %attr(755,root,root) %{_libdir}/nvidia/libGLESv2.so
555 %attr(755,root,root) %{_libdir}/nvidia/libEGL.so
556 %endif
557 %else
558 %attr(755,root,root) %{_libdir}/nvidia/libGL.so
559 %endif
560 %{_pkgconfigdir}/gl.pc
561
562 %files doc
563 %defattr(644,root,root,755)
564 %doc html/*
565
566 %ifarch %{x8664}
567 %files progs
568 %defattr(644,root,root,755)
569 %attr(755,root,root) %{_bindir}/nvidia-bug-report.sh
570 %attr(755,root,root) %{_bindir}/nvidia-cuda-mps-control
571 %attr(755,root,root) %{_bindir}/nvidia-cuda-mps-server
572 %attr(755,root,root) %{_bindir}/nvidia-smi
573 %attr(755,root,root) %{_bindir}/nvidia-xconfig
574 %{_mandir}/man1/nvidia-cuda-mps-control.1*
575 %{_mandir}/man1/nvidia-smi.1*
576 %{_mandir}/man1/nvidia-xconfig.1*
577 %if %{with settings}
578 %attr(755,root,root) /etc/X11/xinit/xinitrc.d/*.sh
579 %attr(755,root,root) %{_bindir}/nvidia-settings
580 %{_mandir}/man1/nvidia-settings.1*
581 %{_desktopdir}/nvidia-settings.desktop
582 %{_pixmapsdir}/nvidia-settings.png
583 %endif
584 %endif
585 %endif
This page took 0.09613 seconds and 2 git commands to generate.