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