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