]> git.pld-linux.org Git - packages/xorg-driver-video-nvidia-legacy-390xx.git/blobdiff - xorg-driver-video-nvidia-legacy-390xx.spec
fix build with kernel 5.7
[packages/xorg-driver-video-nvidia-legacy-390xx.git] / xorg-driver-video-nvidia-legacy-390xx.spec
index b3476ff713a42dbc4b181fa92ecedfa0b61d4625..37521619afbcf4f599eb1f8fe13f9484819ad3b9 100644 (file)
@@ -33,26 +33,32 @@ exit 1
 
 %define                no_install_post_check_so 1
 
-%define                rel     1
+%define                rel     6
 %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.132
 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: 2677480ee20cd4918b1de9289b2d0af8
+Source1:       http://us.download.nvidia.com/XFree86/Linux-x86_64/%{version}/NVIDIA-Linux-x86_64-%{version}-no-compat32.run
+# Source1-md5: dcc8f272fef30c43a68d21b3379d99aa
 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-5.5.patch
+Patch3:                kernel-5.6.patch
+Patch4:                kernel-5.6-x8664.patch
+Patch5:                kernel-5.7.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}}
@@ -60,17 +66,17 @@ BuildRequires:      sed >= 4.0
 BuildConflicts:        XFree86-nvidia
 Requires:      %{pname}-libs = %{epoch}:%{version}-%{rel}
 Requires:      xorg-xserver-server
-Requires:      xorg-xserver-server(videodrv-abi) <= 24.0
+Requires:      xorg-xserver-server(videodrv-abi) <= 24.1
 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
@@ -189,9 +195,8 @@ Eszközök az nVidia grafikus kártyák beállításához.
 %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.\
@@ -209,64 +214,67 @@ Requires: %{pname} = %{epoch}:%{version}\
 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}
 
 %define build_kernel_pkg()\
 cd kernel\
-#cat >> Makefile <<'EOF'\
-#\
-#$(obj)/nv-kernel.o: $(src)/nv-kernel.o.bin\
-#      cp $< $@\
-#EOF\
-#mv nv-kernel.o{,.bin}\
-#build_kernel_modules -m nvidia\
 %{__make} SYSSRC=%{_kernelsrcdir} clean\
 %{__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
+%patch3 -p1
+%ifarch %{x8664}
+%patch4 -p1
+%endif
+%patch5 -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
@@ -278,7 +286,6 @@ install -d $RPM_BUILD_ROOT%{_libdir}/{nvidia,xorg/modules/{drivers,extensions/nv
        $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
@@ -299,67 +306,53 @@ install -p nvidia-drm-outputclass.conf $RPM_BUILD_ROOT/etc/X11/xorg.conf.d/10-nv
 
 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
@@ -396,9 +389,7 @@ ln -sf libEGL_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libEGL_nvidi
 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
@@ -406,17 +397,13 @@ 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 '
@@ -432,7 +419,7 @@ rm -rf $RPM_BUILD_ROOT
 %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
 
@@ -440,7 +427,6 @@ EOF
 %postun        libs -p /sbin/ldconfig
 
 %if %{with userspace}
-%ifarch %{x8664}
 %files
 %defattr(644,root,root,755)
 %doc LICENSE NVIDIA_Changelog README.txt
@@ -458,15 +444,12 @@ EOF
 %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}
@@ -492,11 +475,9 @@ EOF
 %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
@@ -507,10 +488,8 @@ EOF
 %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
@@ -519,7 +498,6 @@ EOF
 %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
@@ -531,12 +509,10 @@ EOF
 %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)
@@ -563,7 +539,6 @@ EOF
 %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
@@ -582,4 +557,3 @@ EOF
 %{_pixmapsdir}/nvidia-settings.png
 %endif
 %endif
-%endif
This page took 0.039687 seconds and 4 git commands to generate.