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