%define no_install_post_check_so 1
-%define rel 1
+%define rel 2
%define pname xorg-driver-video-nvidia-legacy-390xx
Summary: Linux Drivers for nVidia GeForce/Quadro Chips
Summary(hu.UTF-8): Linux meghajtók nVidia GeForce/Quadro chipekhez
Summary(pl.UTF-8): Sterowniki do kart graficznych nVidia GeForce/Quadro
Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel}
# when updating version here, keep nvidia-settings.spec in sync as well
-Version: 396.24
+Version: 390.87
Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}}
Epoch: 1
License: nVidia Binary
Group: X11
-Source0: http://us.download.nvidia.com/XFree86/Linux-x86_64/%{version}/NVIDIA-Linux-x86_64-%{version}.run
-# Source0-md5: 7b5c4735a5b7ad3a9d166ca85cc88e17
+Source0: http://us.download.nvidia.com/XFree86/Linux-x86/%{version}/NVIDIA-Linux-x86-%{version}.run
+# Source0-md5: c21fd1e9048d3cf12552a9e9035df3cf
+Source1: http://us.download.nvidia.com/XFree86/Linux-x86_64/%{version}/NVIDIA-Linux-x86_64-%{version}-no-compat32.run
+# Source1-md5: b787bc161651e5f87620fd1bfa349d4d
Source2: %{pname}-xinitrc.sh
Source3: gl.pc.in
Source4: 10-nvidia.conf
Source5: 10-nvidia-modules.conf
Patch0: X11-driver-nvidia-GL.patch
Patch1: X11-driver-nvidia-desktop.patch
+Patch2: kernel-4.19.patch
URL: http://www.nvidia.com/object/unix.html
BuildRequires: rpmbuild(macros) >= 1.701
%{?with_kernel:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2}}
Requires: xorg-xserver-server(videodrv-abi) >= 2.0
Provides: ocl-icd(nvidia)
Provides: ocl-icd-driver
-Provides: vulkan(icd) = 1.1.70
+Provides: vulkan(icd) = 1.0.65
Provides: xorg-driver-video
Provides: xorg-xserver-module(glx)
Obsoletes: XFree86-driver-nvidia
Obsoletes: XFree86-nvidia
Conflicts: XFree86-OpenGL-devel <= 4.2.0-3
-ExclusiveArch: %{?with_userspace:%{ix86}} %{x8664}
+ExclusiveArch: %{ix86} %{x8664}
BuildRoot: %{tmpdir}/%{pname}-%{version}-root-%(id -u -n)
%define _noautoreqdep libGL.so.1 libnvcuvid.so
%description progs -l pl.UTF-8
Narzędzia do zarządzania kartami graficznymi nVidia.
-%ifarch %{x8664}
%define kernel_pkg()\
-%package -n kernel%{_alt_kernel}-video-nvidia\
+%package -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx\
Summary: nVidia kernel module for nVidia Architecture support\
Summary(de.UTF-8): Das nVidia-Kern-Modul für die nVidia-Architektur-Unterstützung\
Summary(hu.UTF-8): nVidia Architektúra támogatás Linux kernelhez.\
Provides: X11-driver-nvidia(kernel)\
Obsoletes: XFree86-nvidia-kernel\
\
-%description -n kernel%{_alt_kernel}-video-nvidia\
+%description -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx\
nVidia Architecture support for Linux kernel.\
\
-%description -n kernel%{_alt_kernel}-video-nvidia -l de.UTF-8\
+%description -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx -l de.UTF-8\
Die nVidia-Architektur-Unterstützung für den Linux-Kern.\
\
-%description -n kernel%{_alt_kernel}-video-nvidia -l hu.UTF-8\
+%description -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx -l hu.UTF-8\
nVidia Architektúra támogatás Linux kernelhez.\
\
-%description -n kernel%{_alt_kernel}-video-nvidia -l pl.UTF-8\
+%description -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx -l pl.UTF-8\
Obsługa architektury nVidia dla jądra Linuksa. Pakiet wymagany przez\
sterownik nVidii dla Xorg/XFree86.\
\
%if %{with kernel}\
-%files -n kernel%{_alt_kernel}-video-nvidia\
+%files -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx\
%defattr(644,root,root,755)\
/lib/modules/%{_kernel_ver}/misc/*.ko*\
%endif\
\
-%post -n kernel%{_alt_kernel}-video-nvidia\
+%post -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx\
%depmod %{_kernel_ver}\
\
-%postun -n kernel%{_alt_kernel}-video-nvidia\
+%postun -n kernel%{_alt_kernel}-video-nvidia-legacy-390xx\
%depmod %{_kernel_ver}\
%{nil}
%{__make} SYSSRC=%{_kernelsrcdir} IGNORE_CC_MISMATCH=1 NV_VERBOSE=1 CC=%{__cc} module\
cd ..\
%install_kernel_modules -D installed -m kernel/nvidia,kernel/nvidia-drm,kernel/nvidia-modeset -d misc\
+%ifarch %{x8664}\
%install_kernel_modules -D installed -m kernel/nvidia-uvm -d misc\
+%endif\
%{nil}
%{?with_kernel:%{expand:%create_kernel_packages}}
-%endif
%prep
cd %{_builddir}
-rm -rf NVIDIA-Linux-x86_64-%{version}
+rm -rf NVIDIA-Linux-x86*-%{version}*
+%ifarch %{ix86}
/bin/sh %{SOURCE0} --extract-only
-%setup -qDT -n NVIDIA-Linux-x86_64-%{version}
+%setup -qDT -n NVIDIA-Linux-x86-%{version}
+%else
+/bin/sh %{SOURCE1} --extract-only
+%setup -qDT -n NVIDIA-Linux-x86_64-%{version}-no-compat32
+%endif
%patch0 -p1
%patch1 -p1
+%patch2 -p1
echo 'EXTRA_CFLAGS += -Wno-pointer-arith -Wno-sign-compare -Wno-unused' >> kernel/Makefile.kbuild
%build
-%ifarch %{x8664}
%{?with_kernel:%{expand:%build_kernel_packages}}
-%endif
%install
rm -rf $RPM_BUILD_ROOT
$RPM_BUILD_ROOT%{_sysconfdir}/{OpenCL/vendors,ld.so.conf.d,X11/xorg.conf.d} \
$RPM_BUILD_ROOT%{_datadir}/{glvnd/egl_vendor.d,nvidia,vulkan/icd.d}
-%ifarch %{x8664}
%if %{with settings}
install -p nvidia-settings $RPM_BUILD_ROOT%{_bindir}
cp -p nvidia-settings.1* $RPM_BUILD_ROOT%{_mandir}/man1
install -p nvidia-application-profiles-%{version}-key-documentation $RPM_BUILD_ROOT%{_datadir}/nvidia
install -p nvidia-application-profiles-%{version}-rc $RPM_BUILD_ROOT%{_datadir}/nvidia
-%endif
-
-%ifarch %{ix86}
-%define srcdir 32
-%else
-%define srcdir .
-%endif
for f in \
%if %{with glvnd}
%if %{without system_libglvnd}
- %{srcdir}/libGL.so.1.7.0 \
- %{srcdir}/libGLX.so.0 \
- %{srcdir}/libOpenGL.so.0 \
- %{srcdir}/libGLdispatch.so.0 \
- %{srcdir}/libGLESv1_CM.so.1.2.0 \
- %{srcdir}/libGLESv2.so.2.1.0 \
- %{srcdir}/libEGL.so.1.1.0 \
-%endif
- %{srcdir}/libGLX_nvidia.so.%{version} \
- %{srcdir}/libEGL_nvidia.so.%{version} \
- %{srcdir}/libGLESv1_CM_nvidia.so.%{version} \
- %{srcdir}/libGLESv2_nvidia.so.%{version} \
-%ifarch %{x8664}
- %{srcdir}/libnvidia-egl-wayland.so.1.0.3 \
- %{srcdir}/libnvidia-eglcore.so.%{version} \
-%endif
+ libGL.so.1.7.0 \
+ libGLX.so.0 \
+ libOpenGL.so.0 \
+ libGLdispatch.so.0 \
+ libGLESv1_CM.so.1.2.0 \
+ libGLESv2.so.2.1.0 \
+ libEGL.so.1.1.0 \
+%endif
+ libGLX_nvidia.so.%{version} \
+ libEGL_nvidia.so.%{version} \
+ libGLESv1_CM_nvidia.so.%{version} \
+ libGLESv2_nvidia.so.%{version} \
+ libnvidia-egl-wayland.so.1.0.2 \
+ libnvidia-eglcore.so.%{version} \
%else
- %{srcdir}/libGL.so.%{version} \
-%endif
- %{srcdir}/libcuda.so.%{version} \
- %{srcdir}/libnvcuvid.so.%{version} \
-%ifarch %{x8664}
- %{srcdir}/libnvidia-cfg.so.%{version} \
-%endif
- %{srcdir}/libnvidia-compiler.so.%{version} \
- %{srcdir}/libnvidia-encode.so.%{version} \
- %{srcdir}/libnvidia-fatbinaryloader.so.%{version} \
- %{srcdir}/libnvidia-fbc.so.%{version} \
- %{srcdir}/libnvidia-glcore.so.%{version} \
- %{srcdir}/libnvidia-glsi.so.%{version} \
- %{srcdir}/libnvidia-glvkspirv.so.%{version} \
- %{srcdir}/libnvidia-ifr.so.%{version} \
- %{srcdir}/libnvidia-ml.so.%{version} \
- %{srcdir}/libnvidia-opencl.so.%{version} \
- %{srcdir}/libnvidia-ptxjitcompiler.so.%{version} \
- %{srcdir}/tls/libnvidia-tls.so.%{version} \
+ libGL.so.%{version} \
+%endif
+ libcuda.so.%{version} \
+ libnvcuvid.so.%{version} \
+ libnvidia-cfg.so.%{version} \
+ libnvidia-compiler.so.%{version} \
+ libnvidia-encode.so.%{version} \
+ libnvidia-fatbinaryloader.so.%{version} \
+ libnvidia-fbc.so.%{version} \
+ libnvidia-glcore.so.%{version} \
+ libnvidia-glsi.so.%{version} \
+ libnvidia-ifr.so.%{version} \
+ libnvidia-ml.so.%{version} \
+ libnvidia-opencl.so.%{version} \
+ libnvidia-ptxjitcompiler.so.%{version} \
+ tls/libnvidia-tls.so.%{version} \
; do
install -p $f $RPM_BUILD_ROOT%{_libdir}/nvidia
done
-install -p %{srcdir}/libvdpau_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/vdpau
+install -p libvdpau_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/vdpau
-%ifarch %{x8664}
install -p libglx.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia
ln -s libglx.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia/libglx.so
install -p nvidia_drv.so $RPM_BUILD_ROOT%{_libdir}/xorg/modules/drivers/nvidia_drv.so.%{version}
ln -s nvidia_drv.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/drivers/nvidia_drv.so
install -p libnvidia-wfb.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia
ln -s libnvidia-wfb.so.1 $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so
-%endif
/sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}/nvidia
/sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia
ln -sf libGLESv1_CM_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLESv1_CM_nvidia.so.1
ln -sf libGLESv2_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGLESv2_nvidia.so.2
-%ifarch %{x8664}
install -p 10_nvidia.json $RPM_BUILD_ROOT%{_datadir}/glvnd/egl_vendor.d
-%endif
%else
ln -sf libGL.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGL.so.1
ln -sf libGL.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGL.so
ln -sf libcuda.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libcuda.so
ln -sf libnvcuvid.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libnvcuvid.so
-%ifarch %{x8664}
sed 's!__NV_VK_ICD__!%{vulkan_lib}!g' nvidia_icd.json.template > $RPM_BUILD_ROOT%{_datadir}/vulkan/icd.d/nvidia_icd.json
%endif
-%endif
-%ifarch %{x8664}
%if %{with kernel}
install -d $RPM_BUILD_ROOT
cp -a installed/* $RPM_BUILD_ROOT
%endif
-%endif
install -d $RPM_BUILD_ROOT%{_pkgconfigdir}
sed -e '
%post
cat << 'EOF'
NOTE: You must also install kernel module for this driver to work
- kernel%{_alt_kernel}-video-nvidia-%{version}
+ kernel%{_alt_kernel}-video-nvidia-legacy-390xx-%{version}
EOF
%postun libs -p /sbin/ldconfig
%if %{with userspace}
-%ifarch %{x8664}
%files
%defattr(644,root,root,755)
%doc LICENSE NVIDIA_Changelog README.txt
%dir %{_datadir}/nvidia
%{_datadir}/nvidia/nvidia-application-profiles-%{version}-key-documentation
%{_datadir}/nvidia/nvidia-application-profiles-%{version}-rc
-%endif
%files libs
%defattr(644,root,root,755)
-%ifarch %{x8664}
%dir %{_sysconfdir}/OpenCL
%dir %{_sysconfdir}/OpenCL/vendors
%{_sysconfdir}/OpenCL/vendors/nvidia.icd
-%endif}
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ld.so.conf.d/nvidia*.conf
%dir %{_libdir}/nvidia
%if %{with glvnd}
%attr(755,root,root) %ghost %{_libdir}/nvidia/libGLX_indirect.so.0
%attr(755,root,root) %ghost %{_libdir}/nvidia/libGLX_nvidia.so.0
%attr(755,root,root) %{_libdir}/nvidia/libGLX_nvidia.so.*.*
-%ifarch %{x8664}
%attr(755,root,root) %{_libdir}/nvidia/libnvidia-egl-wayland.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-egl-wayland.so.1
%attr(755,root,root) %{_libdir}/nvidia/libnvidia-eglcore.so.*.*
-%endif
%else
%attr(755,root,root) %{_libdir}/nvidia/libGL.so.*.*
%attr(755,root,root) %ghost %{_libdir}/nvidia/libGL.so.1
%attr(755,root,root) %{_libdir}/nvidia/libnvcuvid.so.*.*
%attr(755,root,root) %ghost %{_libdir}/nvidia/libnvcuvid.so.1
%attr(755,root,root) %{_libdir}/nvidia/libnvcuvid.so
-%ifarch %{x8664}
%attr(755,root,root) %{_libdir}/nvidia/libnvidia-cfg.so.*.*
%attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-cfg.so.1
-%endif
%attr(755,root,root) %{_libdir}/nvidia/libnvidia-compiler.so.*.*
%attr(755,root,root) %{_libdir}/nvidia/libnvidia-encode.so.*.*
%attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-encode.so.1
%attr(755,root,root) %{_libdir}/nvidia/libnvidia-fbc.so.*.*
%attr(755,root,root) %{_libdir}/nvidia/libnvidia-glcore.so.*.*
%attr(755,root,root) %{_libdir}/nvidia/libnvidia-glsi.so.*.*
-%attr(755,root,root) %{_libdir}/nvidia/libnvidia-glvkspirv.so.*.*
%attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-ifr.so.1
%attr(755,root,root) %{_libdir}/nvidia/libnvidia-ifr.so.*.*
%attr(755,root,root) %{_libdir}/nvidia/libnvidia-ptxjitcompiler.so.1
%attr(755,root,root) %{_libdir}/nvidia/libnvidia-tls.so.*.*
%attr(755,root,root) %{_libdir}/vdpau/libvdpau_nvidia.so.*.*
%attr(755,root,root) %ghost %{_libdir}/vdpau/libvdpau_nvidia.so.1
-%ifarch %{x8664}
%if %{with glvnd}
%{_datadir}/glvnd/egl_vendor.d/10_nvidia.json
%endif
%{_datadir}/vulkan/icd.d/nvidia_icd.json
-%endif
%files devel
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%doc html/*
-%ifarch %{x8664}
%files progs
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/nvidia-bug-report.sh
%{_pixmapsdir}/nvidia-settings.png
%endif
%endif
-%endif