]>
Commit | Line | Data |
---|---|---|
2b14e59b | 1 | # TODO |
8ee831de | 2 | # - drop binary-only nvidia-settings from here, and use nvidia-settings.spec for it |
0dbede64 | 3 | # - kernel-drm is required on never kernels. driver for kernel-longterm not requires drm |
28142503 PS |
4 | # |
5 | # Conditional build: | |
99902135 | 6 | %bcond_without glvnd # with GL vendor neutral libs |
75de51d2 | 7 | %bcond_without system_libglvnd # do not use system libglvnd |
bf683e7a | 8 | %bcond_without kernel # without kernel packages |
1820d34b | 9 | %bcond_without userspace # don't build userspace programs |
5da85237 | 10 | %bcond_with settings # package nvidia-settings here (GPL version of same packaged from nvidia-settings.spec) |
a14b5013 | 11 | %bcond_with verbose # verbose build (V=1) |
12 | ||
e4947020 JR |
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 | ||
8d2b2a19 JP |
22 | %if %{with glvnd} |
23 | %define vulkan_lib libGLX_nvidia.so.0 | |
24 | %else | |
25 | %define vulkan_lib libGL.so.1 | |
26 | %endif | |
27 | ||
c543fa7c | 28 | %define _enable_debug_packages 0 |
e4947020 | 29 | |
7cbecde6 | 30 | %define no_install_post_check_so 1 |
c5bb5957 | 31 | |
2d10cd45 | 32 | %define rel 6 |
a7e1fe10 | 33 | %define pname xorg-driver-video-nvidia-legacy-390xx |
974295b8 | 34 | Summary: Linux Drivers for nVidia GeForce/Quadro Chips |
754fc4fe | 35 | Summary(hu.UTF-8): Linux meghajtók nVidia GeForce/Quadro chipekhez |
974295b8 | 36 | Summary(pl.UTF-8): Sterowniki do kart graficznych nVidia GeForce/Quadro |
e4947020 | 37 | Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel} |
8a7af30b | 38 | # when updating version here, keep nvidia-settings.spec in sync as well |
8bcab113 | 39 | Version: 390.157 |
e4947020 | 40 | Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}} |
d7c1ffa0 | 41 | Epoch: 1 |
28142503 | 42 | License: nVidia Binary |
4a185d32 | 43 | Group: X11 |
72b4eecc | 44 | Source0: https://us.download.nvidia.com/XFree86/Linux-x86/%{version}/NVIDIA-Linux-x86-%{version}.run |
8bcab113 | 45 | # Source0-md5: 0975ee17f9c690555dfb2a342a0138b8 |
72b4eecc | 46 | Source1: https://us.download.nvidia.com/XFree86/Linux-x86_64/%{version}/NVIDIA-Linux-x86_64-%{version}-no-compat32.run |
8bcab113 | 47 | # Source1-md5: 405c2220d5d3711e9f298c871e8d66ee |
a14b5013 | 48 | Source2: %{pname}-xinitrc.sh |
236b5374 | 49 | Source3: gl.pc.in |
cd436d42 JR |
50 | Source4: 10-nvidia.conf |
51 | Source5: 10-nvidia-modules.conf | |
bcf69910 JB |
52 | Patch0: X11-driver-nvidia-GL.patch |
53 | Patch1: X11-driver-nvidia-desktop.patch | |
28c17232 | 54 | Patch2: kenrel-6.2.patch |
b9d30c02 | 55 | Patch3: kernel-6.3.patch |
85d476e6 | 56 | Patch4: kernel-6.3-uvm.patch |
5d0c8dda | 57 | Patch5: kernel-6.4.patch |
1d545142 JR |
58 | Patch6: kernel-6.5-garbage-collect-all-references-to-get_user.patch |
59 | Patch7: kernel-6.5-handle-get_user_pages-vmas-argument-remova.patch | |
9c1ff707 | 60 | Patch8: kernel-6.5-handle-get_user_pages-vmas-argument-removal-x8664.patch |
2d10cd45 | 61 | Patch9: kernel-6.6-backport-drm_gem_prime_handle_to_fd-changes-from-470.patch |
848eb94d | 62 | URL: https://www.nvidia.com/en-us/drivers/unix/ |
ae05c3a3 | 63 | BuildRequires: rpm-build >= 4.6 |
f3d72109 | 64 | BuildRequires: rpmbuild(macros) >= 1.752 |
fb27eb94 | 65 | %{?with_kernel:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2}} |
039c7221 | 66 | BuildRequires: sed >= 4.0 |
0ed6aeef | 67 | BuildConflicts: XFree86-nvidia |
0703c7e8 | 68 | Requires: %{pname}-libs = %{epoch}:%{version}-%{rel} |
8343d24d | 69 | Requires: xorg-xserver-server |
9c257daf | 70 | Requires: xorg-xserver-server(videodrv-abi) <= 25.2 |
754fc4fe | 71 | Requires: xorg-xserver-server(videodrv-abi) >= 2.0 |
857c0a69 JP |
72 | Provides: ocl-icd(nvidia) |
73 | Provides: ocl-icd-driver | |
82c24b90 | 74 | Provides: vulkan(icd) = 1.0.65 |
f3bf0f30 | 75 | Provides: xorg-driver-video |
4e3e8de1 | 76 | Provides: xorg-xserver-module(glx) |
f3965bea JB |
77 | Obsoletes: XFree86-driver-nvidia < 1.0.5336-4 |
78 | Obsoletes: XFree86-nvidia < 1.0 | |
28142503 | 79 | Conflicts: XFree86-OpenGL-devel <= 4.2.0-3 |
82c24b90 | 80 | ExclusiveArch: %{ix86} %{x8664} |
b67880c3 | 81 | BuildRoot: %{tmpdir}/%{pname}-%{version}-root-%(id -u -n) |
28142503 | 82 | |
04ec5f0a JR |
83 | # libnvidia-encode.so.*.* links with libnvcuvid.so instead of libnvcuvid.so.1 |
84 | %define _noautoreq libnvcuvid.so | |
28142503 PS |
85 | |
86 | %description | |
974295b8 JB |
87 | This driver set adds improved 2D functionality to the Xorg X server as |
88 | well as high performance OpenGL acceleration, AGP support, support for | |
8ee831de JB |
89 | most flat panels, and 2D multiple monitor support. |
90 | ||
91 | Supported hardware: | |
92 | - GeForce 400/400M series (excluding 405) | |
93 | - GeForce 500/500M series | |
94 | - GeForce 600/600M series | |
95 | - GeForce 700/700M series | |
96 | - GeForce 800M series | |
97 | - GeForce 900/900M series | |
98 | - GeForce 10 series (excluding GT 1010) | |
99 | - GeForce 10 mobile series | |
100 | - GeForce MX100 series | |
101 | - GeForce TITAN series (GTX TITAN Z/GTX TITAN Black/GTX TITAN/ | |
102 | GTX TITAN X) | |
103 | - NVIDIA TITAN series (X/Xp/V) | |
104 | - NVS series (NVS 310/NVS 315/NVS 510/NVS 810) | |
105 | - NVS mobile series (NVS 4200M/NVS 5200M/NVS 5400M) | |
106 | - Quadro SDI | |
107 | - Quadro Sync series (G-Sync II/Sync/Sync II) | |
108 | - Quadro NVS series (NVS 310/NVS 315/NVS 510/NVS 810) | |
109 | - Quadro NVS mobile series (NVS 4200M/NVS 5200M/NVS 5400M) | |
110 | - Quadro Blade/Embedded series | |
111 | - Quadro series (excluding P2200 and 400) | |
112 | - Quadro mobile series (excluding T*/P520) | |
28142503 | 113 | |
754fc4fe ZU |
114 | %description -l hu.UTF-8 |
115 | Ez a meghajtó kibővíti az Xorg X szerver 2D működését OpenGL | |
116 | gyorsítással, AGP támogatással és támogatja a több monitort. | |
754fc4fe | 117 | |
8ee831de JB |
118 | Támogatott hardverek: |
119 | - GeForce 400/400M series (- 405) | |
120 | - GeForce 500/500M series | |
121 | - GeForce 600/600M series | |
122 | - GeForce 700/700M series | |
123 | - GeForce 800M series | |
124 | - GeForce 900/900M series | |
125 | - GeForce 10 series (- GT 1010) | |
126 | - GeForce 10 mobile series | |
127 | - GeForce MX100 series | |
128 | - GeForce TITAN series (GTX TITAN Z/GTX TITAN Black/GTX TITAN/ | |
129 | GTX TITAN X) | |
130 | - NVIDIA TITAN series (X/Xp/V) | |
131 | - NVS series (NVS 310/NVS 315/NVS 510/NVS 810) | |
132 | - NVS mobile series (NVS 4200M/NVS 5200M/NVS 5400M) | |
133 | - Quadro SDI | |
134 | - Quadro Sync series (G-Sync II/Sync/Sync II) | |
135 | - Quadro NVS series (NVS 310/NVS 315/NVS 510/NVS 810) | |
136 | - Quadro NVS mobile series (NVS 4200M/NVS 5200M/NVS 5400M) | |
137 | - Quadro Blade/Embedded series | |
138 | - Quadro series (- P2200 and 400) | |
139 | - Quadro mobile series (- T*/P520) | |
754fc4fe | 140 | |
c311612f | 141 | %description -l pl.UTF-8 |
974295b8 JB |
142 | Usprawnione sterowniki dla kart graficznych nVidia do serwera Xorg, |
143 | dające wysokowydajną akcelerację OpenGL, obsługę AGP i wielu monitorów | |
8ee831de JB |
144 | 2D. |
145 | ||
146 | Obsługują karty: | |
147 | - GeForce serii 400/400M (oprócz 405) | |
148 | - GeForce serii 500/500M | |
149 | - GeForce serii 600/600M | |
150 | - GeForce serii 700/700M | |
151 | - GeForce serii 800M | |
152 | - GeForce serii 900/900M | |
153 | - GeForce serii 10 (oprócz GT 1010) | |
154 | - GeForce serii 10 mobile | |
155 | - GeForce serii MX100 | |
156 | - GeForce serii TITAN (GTX TITAN Z/GTX TITAN Black/GTX TITAN/ | |
157 | GTX TITAN X) | |
158 | - NVIDIA serii TITAN (X/Xp/V) | |
159 | - serii NVS (NVS 310/NVS 315/NVS 510/NVS 810) | |
160 | - serii NVS mobile (NVS 4200M/NVS 5200M/NVS 5400M) | |
161 | - Quadro SDI | |
162 | - Quadro serii Sync (G-Sync II/Sync/Sync II) | |
163 | - Quadro serii NVS (NVS 310/NVS 315/NVS 510/NVS 810) | |
164 | - Quadro serii NVS mobile (NVS 4200M/NVS 5200M/NVS 5400M) | |
165 | - Quadro serii Blade/Embedded | |
166 | - Quadro (oprócz P2200 and 400) | |
167 | - Quadro mobile (oprócz T*/P520) | |
28142503 | 168 | |
17fdb673 JR |
169 | %package libs |
170 | Summary: OpenGL (GL and GLX) Nvidia libraries | |
171 | Summary(pl.UTF-8): Biblioteki OpenGL (GL i GLX) Nvidia | |
172 | Group: X11/Development/Libraries | |
f3b8319b | 173 | Requires(post,postun): /sbin/ldconfig |
75de51d2 | 174 | %if %{with glvnd} && %{with system_libglvnd} |
99902135 JP |
175 | Requires: libglvnd >= 1.3.4-2 |
176 | Requires: libglvnd-libGL >= 1.3.4-2 | |
177 | Requires: libglvnd-libGLES >= 1.3.4-2 | |
538b2e0c | 178 | %endif |
76db0ca8 | 179 | Requires: libvdpau >= 0.3 |
54d5527a | 180 | Provides: OpenGL = 4.3 |
17fdb673 | 181 | Provides: OpenGL-GLX = 1.4 |
2b551e3c JP |
182 | %if %{with glvnd} && %{with system_libglvnd} |
183 | Provides: glvnd(EGL)%{?_isa} | |
184 | Provides: glvnd(GL)%{?_isa} | |
185 | Provides: glvnd(GLES)%{?_isa} | |
186 | %endif | |
17fdb673 JR |
187 | Obsoletes: X11-OpenGL-core < 1:7.0.0 |
188 | Obsoletes: X11-OpenGL-libGL < 1:7.0.0 | |
189 | Obsoletes: XFree86-OpenGL-core < 1:7.0.0 | |
190 | Obsoletes: XFree86-OpenGL-libGL < 1:7.0.0 | |
1a2ce312 JB |
191 | %if %{with glvnd} && %{with system_libglvnd} |
192 | Obsoletes: xorg-driver-video-nvidia-legacy-390xx-devel < 390.143-2 | |
193 | %endif | |
17fdb673 | 194 | |
4c842b35 | 195 | %description libs |
17fdb673 JR |
196 | NVIDIA OpenGL (GL and GLX only) implementation libraries. |
197 | ||
4c842b35 | 198 | %description libs -l pl.UTF-8 |
17fdb673 JR |
199 | Implementacja OpenGL (tylko GL i GLX) firmy NVIDIA. |
200 | ||
28142503 | 201 | %package devel |
63c6d4b1 | 202 | Summary: OpenGL (GL and GLX) header files |
754fc4fe | 203 | Summary(hu.UTF-8): OpenGL (GL és GLX) fejléc fájlok |
63c6d4b1 | 204 | Summary(pl.UTF-8): Pliki nagłówkowe OpenGL (GL i GLX) |
28142503 | 205 | Group: X11/Development/Libraries |
0703c7e8 | 206 | Requires: %{pname}-libs = %{epoch}:%{version}-%{rel} |
63c6d4b1 | 207 | Provides: OpenGL-GLX-devel = 1.4 |
54d5527a | 208 | Provides: OpenGL-devel = 3.0 |
f3965bea JB |
209 | Obsoletes: X11-OpenGL-devel-base < 1:7.0.0 |
210 | Obsoletes: XFree86-OpenGL-devel-base < 1:7.0.0 | |
211 | Obsoletes: XFree86-driver-nvidia-devel < 1.0.5336-4 | |
28142503 PS |
212 | Conflicts: XFree86-OpenGL-devel < 4.3.99.902-0.3 |
213 | ||
214 | %description devel | |
63c6d4b1 JB |
215 | OpenGL header files (GL and GLX only) for NVIDIA OpenGL |
216 | implementation. | |
28142503 | 217 | |
754fc4fe ZU |
218 | %description devel -l hu.UTF-8 |
219 | OpenGL fejléc fájlok (csak GL és GLX) NVIDIA OpenGL implementációhoz. | |
220 | ||
c311612f | 221 | %description devel -l pl.UTF-8 |
63c6d4b1 JB |
222 | Pliki nagłówkowe OpenGL (tylko GL i GLX) dla implementacji OpenGL |
223 | firmy NVIDIA. | |
224 | ||
a9160796 ER |
225 | %package doc |
226 | Summary: Documentation for NVIDIA Graphics Driver | |
ae05c3a3 | 227 | Summary(pl.UTF-8): Dokumentacja do sterownika graficznego NVIDIA |
a9160796 | 228 | Group: Documentation |
ebc81271 | 229 | BuildArch: noarch |
a9160796 ER |
230 | |
231 | %description doc | |
232 | NVIDIA Accelerated Linux Graphics Driver README and Installation | |
233 | Guide. | |
234 | ||
ae05c3a3 JB |
235 | %description doc -l pl.UTF-8 |
236 | Plik README oraz przewodnik instalacji do akcelerowanego sterownika | |
237 | graficznego NVIDIA dla Linuksa. | |
238 | ||
28142503 PS |
239 | %package progs |
240 | Summary: Tools for advanced control of nVidia graphic cards | |
754fc4fe | 241 | Summary(hu.UTF-8): Eszközök az nVidia grafikus kártyák beállításához |
b37addd9 | 242 | Summary(pl.UTF-8): Narzędzia do zarządzania kartami graficznymi nVidia |
f12e8b24 | 243 | Group: Applications/System |
0056ee0e | 244 | Requires: %{pname} = %{epoch}:%{version} |
c29343e3 | 245 | Suggests: pkgconfig |
f3965bea | 246 | Obsoletes: XFree86-driver-nvidia-progs < 1.0.5336-4 |
28142503 PS |
247 | |
248 | %description progs | |
249 | Tools for advanced control of nVidia graphic cards. | |
250 | ||
754fc4fe ZU |
251 | %description progs -l hu.UTF-8 |
252 | Eszközök az nVidia grafikus kártyák beállításához. | |
253 | ||
c311612f JR |
254 | %description progs -l pl.UTF-8 |
255 | Narzędzia do zarządzania kartami graficznymi nVidia. | |
28142503 | 256 | |
e4947020 | 257 | %define kernel_pkg()\ |
f8c3aed0 | 258 | %package -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx\ |
e4947020 JR |
259 | Summary: nVidia kernel module for nVidia Architecture support\ |
260 | Summary(de.UTF-8): Das nVidia-Kern-Modul für die nVidia-Architektur-Unterstützung\ | |
261 | Summary(hu.UTF-8): nVidia Architektúra támogatás Linux kernelhez.\ | |
262 | Summary(pl.UTF-8): Moduł jądra dla obsługi kart graficznych nVidia\ | |
263 | Release: %{rel}@%{_kernel_ver_str}\ | |
264 | Group: Base/Kernel\ | |
265 | Requires(post,postun): /sbin/depmod\ | |
266 | Requires: dev >= 2.7.7-10\ | |
e4947020 JR |
267 | %requires_releq_kernel\ |
268 | %if %{_kernel_version_code} >= %{_kernel_version_magic 3 10 0}\ | |
269 | Requires: %{releq_kernel -n drm}\ | |
270 | %endif\ | |
271 | Requires(postun): %releq_kernel\ | |
e4947020 JR |
272 | Requires: %{pname} = %{epoch}:%{version}\ |
273 | Provides: X11-driver-nvidia(kernel)\ | |
f3965bea | 274 | Obsoletes: XFree86-nvidia-kernel < 1.0.5336-4\ |
e4947020 | 275 | \ |
f8c3aed0 | 276 | %description -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx\ |
e4947020 JR |
277 | nVidia Architecture support for Linux kernel.\ |
278 | \ | |
f8c3aed0 | 279 | %description -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx -l de.UTF-8\ |
e4947020 JR |
280 | Die nVidia-Architektur-Unterstützung für den Linux-Kern.\ |
281 | \ | |
f8c3aed0 | 282 | %description -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx -l hu.UTF-8\ |
e4947020 JR |
283 | nVidia Architektúra támogatás Linux kernelhez.\ |
284 | \ | |
f8c3aed0 | 285 | %description -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx -l pl.UTF-8\ |
e4947020 JR |
286 | Obsługa architektury nVidia dla jądra Linuksa. Pakiet wymagany przez\ |
287 | sterownik nVidii dla Xorg/XFree86.\ | |
288 | \ | |
289 | %if %{with kernel}\ | |
f8c3aed0 | 290 | %files -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx\ |
e4947020 JR |
291 | %defattr(644,root,root,755)\ |
292 | /lib/modules/%{_kernel_ver}/misc/*.ko*\ | |
293 | %endif\ | |
294 | \ | |
f8c3aed0 | 295 | %post -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx\ |
e4947020 JR |
296 | %depmod %{_kernel_ver}\ |
297 | \ | |
f8c3aed0 | 298 | %postun -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx\ |
e4947020 JR |
299 | %depmod %{_kernel_ver}\ |
300 | %{nil} | |
301 | ||
302 | %define build_kernel_pkg()\ | |
e4947020 | 303 | cd kernel\ |
e4947020 | 304 | %{__make} SYSSRC=%{_kernelsrcdir} clean\ |
ef40d8b8 | 305 | %{__make} SYSSRC=%{_kernelsrcdir} IGNORE_CC_MISMATCH=1 NV_VERBOSE=1 CC=%{__cc} module\ |
e4947020 | 306 | cd ..\ |
10e941a4 | 307 | %install_kernel_modules -D installed -m kernel/nvidia,kernel/nvidia-drm,kernel/nvidia-modeset -d misc\ |
82c24b90 | 308 | %ifarch %{x8664}\ |
cad4d6b5 | 309 | %install_kernel_modules -D installed -m kernel/nvidia-uvm -d misc\ |
82c24b90 | 310 | %endif\ |
e4947020 JR |
311 | %{nil} |
312 | ||
fb27eb94 | 313 | %{?with_kernel:%{expand:%create_kernel_packages}} |
28142503 | 314 | |
28142503 PS |
315 | %prep |
316 | cd %{_builddir} | |
82c24b90 JP |
317 | rm -rf NVIDIA-Linux-x86*-%{version}* |
318 | %ifarch %{ix86} | |
28142503 | 319 | /bin/sh %{SOURCE0} --extract-only |
82c24b90 JP |
320 | %setup -qDT -n NVIDIA-Linux-x86-%{version} |
321 | %else | |
322 | /bin/sh %{SOURCE1} --extract-only | |
323 | %setup -qDT -n NVIDIA-Linux-x86_64-%{version}-no-compat32 | |
324 | %endif | |
bcf69910 | 325 | %patch0 -p1 |
0029e8cc | 326 | %patch1 -p1 |
28c17232 | 327 | %patch2 -p1 |
b9d30c02 | 328 | %patch3 -p1 |
85d476e6 JP |
329 | %ifarch %{x8664} |
330 | %patch4 -p1 | |
331 | %endif | |
5d0c8dda | 332 | %patch5 -p1 |
1d545142 JR |
333 | %patch6 -p1 |
334 | %patch7 -p1 | |
9c1ff707 JR |
335 | %ifarch %{x8664} |
336 | %patch8 -p1 | |
337 | %endif | |
2d10cd45 | 338 | %patch9 -p1 |
8481604b | 339 | echo 'EXTRA_CFLAGS += -Wno-pointer-arith -Wno-sign-compare -Wno-unused' >> kernel/Makefile.kbuild |
28142503 PS |
340 | |
341 | %build | |
fb27eb94 | 342 | %{?with_kernel:%{expand:%build_kernel_packages}} |
28142503 PS |
343 | |
344 | %install | |
345 | rm -rf $RPM_BUILD_ROOT | |
1820d34b ER |
346 | |
347 | %if %{with userspace} | |
cd436d42 | 348 | install -d $RPM_BUILD_ROOT%{_libdir}/{nvidia,xorg/modules/{drivers,extensions/nvidia}} \ |
56656271 | 349 | $RPM_BUILD_ROOT{%{_includedir}/GL,%{_libdir}/vdpau,%{_bindir},%{_mandir}/man1} \ |
054fcee3 | 350 | $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir},/etc/X11/xinit/xinitrc.d} \ |
6c7b79fe | 351 | $RPM_BUILD_ROOT%{_sysconfdir}/{OpenCL/vendors,ld.so.conf.d,X11/xorg.conf.d} \ |
96251f94 | 352 | $RPM_BUILD_ROOT%{_datadir}/{glvnd/egl_vendor.d,nvidia,vulkan/icd.d} |
28142503 | 353 | |
5da85237 ER |
354 | %if %{with settings} |
355 | install -p nvidia-settings $RPM_BUILD_ROOT%{_bindir} | |
356 | cp -p nvidia-settings.1* $RPM_BUILD_ROOT%{_mandir}/man1 | |
f3bf0f30 ER |
357 | cp -p nvidia-settings.desktop $RPM_BUILD_ROOT%{_desktopdir} |
358 | cp -p nvidia-settings.png $RPM_BUILD_ROOT%{_pixmapsdir} | |
f3b8319b | 359 | install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d/nvidia-settings.sh |
5da85237 ER |
360 | %endif |
361 | ||
362 | install -p nvidia-{smi,xconfig,bug-report.sh} $RPM_BUILD_ROOT%{_bindir} | |
df1704ce KK |
363 | install -p nvidia-cuda-mps-{control,server} $RPM_BUILD_ROOT%{_bindir} |
364 | cp -p nvidia-{smi,xconfig,cuda-mps-control}.1* $RPM_BUILD_ROOT%{_mandir}/man1 | |
f3bf0f30 | 365 | install -p nvidia.icd $RPM_BUILD_ROOT%{_sysconfdir}/OpenCL/vendors |
eb6ba6c9 | 366 | |
cd436d42 JR |
367 | install %{SOURCE4} $RPM_BUILD_ROOT/etc/X11/xorg.conf.d |
368 | install %{SOURCE5} $RPM_BUILD_ROOT/etc/X11/xorg.conf.d | |
369 | sed -i -e 's|@@LIBDIR@@|%{_libdir}|g' $RPM_BUILD_ROOT/etc/X11/xorg.conf.d/10-nvidia-modules.conf | |
c6948e82 | 370 | install -p nvidia-drm-outputclass.conf $RPM_BUILD_ROOT/etc/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf |
da05371c | 371 | |
28bd8abb JP |
372 | install -p nvidia-application-profiles-%{version}-key-documentation $RPM_BUILD_ROOT%{_datadir}/nvidia |
373 | install -p nvidia-application-profiles-%{version}-rc $RPM_BUILD_ROOT%{_datadir}/nvidia | |
374 | ||
eb6ba6c9 | 375 | for f in \ |
538b2e0c | 376 | %if %{with glvnd} |
75de51d2 | 377 | %if %{without system_libglvnd} |
82c24b90 JP |
378 | libGL.so.1.7.0 \ |
379 | libGLX.so.0 \ | |
380 | libOpenGL.so.0 \ | |
381 | libGLdispatch.so.0 \ | |
382 | libGLESv1_CM.so.1.2.0 \ | |
383 | libGLESv2.so.2.1.0 \ | |
384 | libEGL.so.1.1.0 \ | |
385 | %endif | |
386 | libGLX_nvidia.so.%{version} \ | |
387 | libEGL_nvidia.so.%{version} \ | |
388 | libGLESv1_CM_nvidia.so.%{version} \ | |
389 | libGLESv2_nvidia.so.%{version} \ | |
390 | libnvidia-egl-wayland.so.1.0.2 \ | |
391 | libnvidia-eglcore.so.%{version} \ | |
538b2e0c | 392 | %else |
82c24b90 JP |
393 | libGL.so.%{version} \ |
394 | %endif | |
395 | libcuda.so.%{version} \ | |
396 | libnvcuvid.so.%{version} \ | |
397 | libnvidia-cfg.so.%{version} \ | |
398 | libnvidia-compiler.so.%{version} \ | |
399 | libnvidia-encode.so.%{version} \ | |
400 | libnvidia-fatbinaryloader.so.%{version} \ | |
401 | libnvidia-fbc.so.%{version} \ | |
402 | libnvidia-glcore.so.%{version} \ | |
403 | libnvidia-glsi.so.%{version} \ | |
404 | libnvidia-ifr.so.%{version} \ | |
405 | libnvidia-ml.so.%{version} \ | |
406 | libnvidia-opencl.so.%{version} \ | |
407 | libnvidia-ptxjitcompiler.so.%{version} \ | |
408 | tls/libnvidia-tls.so.%{version} \ | |
eb6ba6c9 | 409 | ; do |
cd436d42 | 410 | install -p $f $RPM_BUILD_ROOT%{_libdir}/nvidia |
ffec07c8 | 411 | done |
76db0ca8 | 412 | |
82c24b90 | 413 | install -p libvdpau_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/vdpau |
eb6ba6c9 | 414 | |
cd436d42 JR |
415 | install -p libglx.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia |
416 | ln -s libglx.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia/libglx.so | |
7400930f ER |
417 | install -p nvidia_drv.so $RPM_BUILD_ROOT%{_libdir}/xorg/modules/drivers/nvidia_drv.so.%{version} |
418 | ln -s nvidia_drv.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/drivers/nvidia_drv.so | |
cd436d42 | 419 | install -p libnvidia-wfb.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia |
2f2dbb1c | 420 | ln -s libnvidia-wfb.so.1 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so |
cd436d42 JR |
421 | |
422 | /sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}/nvidia | |
423 | /sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia | |
28142503 | 424 | |
02b832fe | 425 | cp -p gl*.h $RPM_BUILD_ROOT%{_includedir}/GL |
28142503 | 426 | |
76db0ca8 | 427 | ln -sf libvdpau_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/vdpau/libvdpau_nvidia.so.1 |
28142503 | 428 | |
d626b139 | 429 | %ifarch %{x8664} |
a116bc07 JR |
430 | echo %{_libdir}/nvidia >$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia64.conf |
431 | echo %{_libdir}/vdpau >>$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia64.conf | |
d626b139 JR |
432 | %else |
433 | echo %{_libdir}/nvidia >$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia.conf | |
434 | echo %{_libdir}/vdpau >>$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia.conf | |
435 | %endif | |
ffec07c8 JR |
436 | |
437 | # OpenGL ABI for Linux compatibility | |
538b2e0c | 438 | %if %{with glvnd} |
75de51d2 | 439 | %if %{without system_libglvnd} |
94175128 | 440 | ln -sf libGL.so.1.7.0 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGL.so.1 |
75de51d2 JP |
441 | ln -sf libGL.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGL.so |
442 | ln -sf libGLX.so.0 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLX.so | |
443 | ln -sf libOpenGL.so.0 $RPM_BUILD_ROOT%{_libdir}/nvidia/libOpenGL.so | |
94175128 | 444 | ln -sf libGLESv1_CM.so.1.2.0 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLESv1_CM.so.1 |
75de51d2 | 445 | ln -sf libGLESv1_CM.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLESv1_CM.so |
94175128 | 446 | ln -sf libGLESv2.so.2.1.0 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLESv2.so.2 |
75de51d2 | 447 | ln -sf libGLESv2.so.2 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLESv2.so |
94175128 | 448 | ln -sf libEGL.so.1.1.0 $RPM_BUILD_ROOT%{_libdir}/nvidia/libEGL.so.1 |
c2ff5cb2 | 449 | ln -sf libEGL.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libEGL.so |
75de51d2 | 450 | %endif |
538b2e0c | 451 | ln -sf libGLX_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLX_nvidia.so.0 |
10e941a4 | 452 | ln -sf libGLX_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLX_indirect.so.0 |
538b2e0c JP |
453 | ln -sf libEGL_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libEGL_nvidia.so.0 |
454 | ln -sf libGLESv1_CM_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLESv1_CM_nvidia.so.1 | |
455 | ln -sf libGLESv2_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLESv2_nvidia.so.2 | |
3427c6f3 JP |
456 | |
457 | install -p 10_nvidia.json $RPM_BUILD_ROOT%{_datadir}/glvnd/egl_vendor.d | |
538b2e0c JP |
458 | %else |
459 | ln -sf libGL.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGL.so.1 | |
460 | ln -sf libGL.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGL.so | |
461 | %endif | |
cd436d42 JR |
462 | ln -sf libcuda.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libcuda.so |
463 | ln -sf libnvcuvid.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libnvcuvid.so | |
6c7b79fe | 464 | |
8d5d4797 | 465 | sed 's!__NV_VK_ICD__!%{vulkan_lib}!g' nvidia_icd.json.template > $RPM_BUILD_ROOT%{_datadir}/vulkan/icd.d/nvidia_icd.json |
ffec07c8 | 466 | %endif |
28142503 | 467 | |
1fdf7dcc | 468 | %if %{with kernel} |
e4947020 JR |
469 | install -d $RPM_BUILD_ROOT |
470 | cp -a installed/* $RPM_BUILD_ROOT | |
1fdf7dcc | 471 | %endif |
28142503 | 472 | |
236b5374 | 473 | install -d $RPM_BUILD_ROOT%{_pkgconfigdir} |
02b832fe ER |
474 | sed -e ' |
475 | s|@@prefix@@|%{_prefix}|g; | |
476 | s|@@libdir@@|%{_libdir}|g; | |
477 | s|@@includedir@@|%{_includedir}|g; | |
478 | s|@@version@@|%{version}|g' < %{SOURCE3} \ | |
236b5374 | 479 | > $RPM_BUILD_ROOT%{_pkgconfigdir}/gl.pc |
480 | ||
28142503 PS |
481 | %clean |
482 | rm -rf $RPM_BUILD_ROOT | |
483 | ||
a641155e | 484 | %post |
2b14e59b ER |
485 | cat << 'EOF' |
486 | NOTE: You must also install kernel module for this driver to work | |
f8c3aed0 | 487 | kernel%{_alt_kernel}-video-nvidia-legacy-390xx-%{version} |
2b14e59b | 488 | |
25b520ff | 489 | EOF |
f3b8319b | 490 | |
5ff69e47 | 491 | %post libs -p /sbin/ldconfig |
cd436d42 | 492 | %postun libs -p /sbin/ldconfig |
25b520ff | 493 | |
1820d34b | 494 | %if %{with userspace} |
28142503 PS |
495 | %files |
496 | %defattr(644,root,root,755) | |
8481604b | 497 | %doc LICENSE NVIDIA_Changelog README.txt |
007619d4 | 498 | %dir %{_libdir}/xorg/modules/extensions/nvidia |
cd436d42 | 499 | %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so.*.* |
4c0d0c97 JR |
500 | %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so.1 |
501 | %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so | |
cd436d42 | 502 | %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libglx.so.* |
4c0d0c97 | 503 | %attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libglx.so |
7400930f | 504 | %attr(755,root,root) %{_libdir}/xorg/modules/drivers/nvidia_drv.so.* |
cd436d42 | 505 | %attr(755,root,root) %{_libdir}/xorg/modules/drivers/nvidia_drv.so |
65e71729 | 506 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/X11/xorg.conf.d/10-nvidia.conf |
cd436d42 | 507 | %{_sysconfdir}/X11/xorg.conf.d/10-nvidia-modules.conf |
c6948e82 | 508 | %{_sysconfdir}/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf |
28bd8abb JP |
509 | %dir %{_datadir}/nvidia |
510 | %{_datadir}/nvidia/nvidia-application-profiles-%{version}-key-documentation | |
511 | %{_datadir}/nvidia/nvidia-application-profiles-%{version}-rc | |
17fdb673 JR |
512 | |
513 | %files libs | |
f3b8319b | 514 | %defattr(644,root,root,755) |
f3bf0f30 ER |
515 | %dir %{_sysconfdir}/OpenCL |
516 | %dir %{_sysconfdir}/OpenCL/vendors | |
517 | %{_sysconfdir}/OpenCL/vendors/nvidia.icd | |
a116bc07 | 518 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ld.so.conf.d/nvidia*.conf |
ffec07c8 | 519 | %dir %{_libdir}/nvidia |
538b2e0c | 520 | %if %{with glvnd} |
75de51d2 | 521 | %if %{without system_libglvnd} |
94175128 | 522 | %attr(755,root,root) %{_libdir}/nvidia/libGL.so.1.7.0 |
75de51d2 | 523 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libGL.so.1 |
1a2ce312 | 524 | %attr(755,root,root) %{_libdir}/nvidia/libGL.so |
75de51d2 JP |
525 | %attr(755,root,root) %{_libdir}/nvidia/libGLX.so.0 |
526 | %attr(755,root,root) %{_libdir}/nvidia/libOpenGL.so.0 | |
527 | %attr(755,root,root) %{_libdir}/nvidia/libGLdispatch.so.0 | |
94175128 JP |
528 | %attr(755,root,root) %{_libdir}/nvidia/libGLESv1_CM.so.1.2.0 |
529 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libGLESv1_CM.so.1 | |
530 | %attr(755,root,root) %{_libdir}/nvidia/libGLESv2.so.2.1.0 | |
531 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libGLESv2.so.2 | |
532 | %attr(755,root,root) %{_libdir}/nvidia/libEGL.so.1.1.0 | |
533 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libEGL.so.1 | |
c2ff5cb2 | 534 | %endif |
10e941a4 JP |
535 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libEGL_nvidia.so.0 |
536 | %attr(755,root,root) %{_libdir}/nvidia/libEGL_nvidia.so.*.* | |
10e941a4 JP |
537 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libGLESv1_CM_nvidia.so.1 |
538 | %attr(755,root,root) %{_libdir}/nvidia/libGLESv1_CM_nvidia.so.*.* | |
10e941a4 JP |
539 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libGLESv2_nvidia.so.2 |
540 | %attr(755,root,root) %{_libdir}/nvidia/libGLESv2_nvidia.so.*.* | |
10e941a4 JP |
541 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libGLX_indirect.so.0 |
542 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libGLX_nvidia.so.0 | |
543 | %attr(755,root,root) %{_libdir}/nvidia/libGLX_nvidia.so.*.* | |
538b2e0c | 544 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-egl-wayland.so.*.*.* |
b440dd78 | 545 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-egl-wayland.so.1 |
538b2e0c JP |
546 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-eglcore.so.*.* |
547 | %else | |
548 | %attr(755,root,root) %{_libdir}/nvidia/libGL.so.*.* | |
549 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libGL.so.1 | |
1a2ce312 | 550 | %attr(755,root,root) %{_libdir}/nvidia/libGL.so |
538b2e0c | 551 | %endif |
cd436d42 JR |
552 | %attr(755,root,root) %{_libdir}/nvidia/libcuda.so.*.* |
553 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libcuda.so.1 | |
554 | %attr(755,root,root) %{_libdir}/nvidia/libcuda.so | |
555 | %attr(755,root,root) %{_libdir}/nvidia/libnvcuvid.so.*.* | |
556 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvcuvid.so.1 | |
557 | %attr(755,root,root) %{_libdir}/nvidia/libnvcuvid.so | |
558 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-cfg.so.*.* | |
559 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-cfg.so.1 | |
560 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-compiler.so.*.* | |
5ee8f0c8 JR |
561 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-encode.so.*.* |
562 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-encode.so.1 | |
10e941a4 JP |
563 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-fatbinaryloader.so.*.* |
564 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-fbc.so.1 | |
565 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-fbc.so.*.* | |
cd436d42 | 566 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-glcore.so.*.* |
10e941a4 JP |
567 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-glsi.so.*.* |
568 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-ifr.so.1 | |
569 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-ifr.so.*.* | |
8d5d4797 | 570 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-ptxjitcompiler.so.1 |
cd436d42 JR |
571 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-ml.so.*.* |
572 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-ml.so.1 | |
5ee8f0c8 JR |
573 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-opencl.so.*.* |
574 | %attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-opencl.so.1 | |
10e941a4 | 575 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-ptxjitcompiler.so.*.* |
cd436d42 | 576 | %attr(755,root,root) %{_libdir}/nvidia/libnvidia-tls.so.*.* |
76db0ca8 | 577 | %attr(755,root,root) %{_libdir}/vdpau/libvdpau_nvidia.so.*.* |
f3b8319b | 578 | %attr(755,root,root) %ghost %{_libdir}/vdpau/libvdpau_nvidia.so.1 |
96251f94 JP |
579 | %if %{with glvnd} |
580 | %{_datadir}/glvnd/egl_vendor.d/10_nvidia.json | |
581 | %endif | |
7c831f98 | 582 | %{_datadir}/vulkan/icd.d/nvidia_icd.json |
28142503 | 583 | |
1a2ce312 | 584 | %if %{without glvnd} || %{without system_libglvnd} |
28142503 PS |
585 | %files devel |
586 | %defattr(644,root,root,755) | |
538b2e0c | 587 | %if %{with glvnd} |
75de51d2 JP |
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 | |
10e941a4 | 592 | %attr(755,root,root) %{_libdir}/nvidia/libEGL.so |
c2ff5cb2 | 593 | %endif |
1a2ce312 JB |
594 | %dir %{_includedir}/GL |
595 | %{_includedir}/GL/gl.h | |
596 | %{_includedir}/GL/glext.h | |
597 | %{_includedir}/GL/glx.h | |
598 | %{_includedir}/GL/glxext.h | |
236b5374 | 599 | %{_pkgconfigdir}/gl.pc |
1a2ce312 | 600 | %endif |
63c6d4b1 | 601 | |
a9160796 ER |
602 | %files doc |
603 | %defattr(644,root,root,755) | |
8481604b | 604 | %doc html/* |
a9160796 | 605 | |
d4a34ce2 | 606 | %files progs |
01766b04 | 607 | %defattr(644,root,root,755) |
8481604b | 608 | %attr(755,root,root) %{_bindir}/nvidia-bug-report.sh |
df1704ce KK |
609 | %attr(755,root,root) %{_bindir}/nvidia-cuda-mps-control |
610 | %attr(755,root,root) %{_bindir}/nvidia-cuda-mps-server | |
8481604b | 611 | %attr(755,root,root) %{_bindir}/nvidia-smi |
225cc701 | 612 | %attr(755,root,root) %{_bindir}/nvidia-xconfig |
df1704ce | 613 | %{_mandir}/man1/nvidia-cuda-mps-control.1* |
5da85237 ER |
614 | %{_mandir}/man1/nvidia-smi.1* |
615 | %{_mandir}/man1/nvidia-xconfig.1* | |
616 | %if %{with settings} | |
2a45f872 | 617 | %attr(755,root,root) /etc/X11/xinit/xinitrc.d/*.sh |
5da85237 ER |
618 | %attr(755,root,root) %{_bindir}/nvidia-settings |
619 | %{_mandir}/man1/nvidia-settings.1* | |
225cc701 | 620 | %{_desktopdir}/nvidia-settings.desktop |
225cc701 | 621 | %{_pixmapsdir}/nvidia-settings.png |
1820d34b | 622 | %endif |
d626b139 | 623 | %endif |