X-Git-Url: http://git.pld-linux.org/?p=packages%2Fxorg-driver-video-nvidia.git;a=blobdiff_plain;f=xorg-driver-video-nvidia.spec;h=6f6138e01588ed716829b12d1f03775b1585ef69;hp=3ba3473ccdf32d4838eefcd95314669177fdc90e;hb=8740a965bd5e048dee52cd89b606ba6e81e9e17a;hpb=63f706821a5a3fafd0ccb5fa3ba852b291e3a6a4 diff --git a/xorg-driver-video-nvidia.spec b/xorg-driver-video-nvidia.spec index 3ba3473..6f6138e 100644 --- a/xorg-driver-video-nvidia.spec +++ b/xorg-driver-video-nvidia.spec @@ -1,15 +1,11 @@ # TODO # - should -libs Require main package? -# - solve this (shouldn't there be some obsoletes?): -# error: xorg-driver-video-nvidia-169.12-3.i686 (cnfl Mesa-libGL) conflicts with installed Mesa-libGL-7.0.3-2.i686 -# error: xorg-driver-video-nvidia-169.12-3.i686 (cnfl Mesa-libGL) conflicts with installed Mesa-libGL-7.0.3-2.i686 # # Conditional build: %bcond_without dist_kernel # without distribution kernel %bcond_without kernel # without kernel packages %bcond_without userspace # don't build userspace programs %bcond_with force_userspace # force userspace build (useful if alt_kernel is set) -%bcond_with multigl # package libGL and libglx.so in a way allowing concurrent install with nvidia/fglrx drivers %bcond_with verbose # verbose build (V=1) %if "%{_alt_kernel}" != "%{nil}" @@ -24,23 +20,25 @@ %endif %define no_install_post_check_so 1 -%define rel 12%{?with_multigl:.mgl} +%define rel 3 %define pname xorg-driver-video-nvidia 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} -Version: 285.05.09 +Version: 295.20 Release: %{rel} Epoch: 1 License: nVidia Binary Group: X11 Source0: http://download.nvidia.com/XFree86/Linux-x86/%{version}/NVIDIA-Linux-x86-%{version}.run -# Source0-md5: 2d469a90abef50320f548cfa8085e3a0 +# Source0-md5: a6f702271da49930a17e28b5928fe75a Source1: http://download.nvidia.com/XFree86/Linux-x86_64/%{version}/NVIDIA-Linux-x86_64-%{version}-no-compat32.run -# Source1-md5: 2f4a0e78f5560c07220b7ed6fc1e27aa +# Source1-md5: 79b05cffa482234833ae1c4bb40664c3 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 URL: http://www.nvidia.com/object/unix.html @@ -108,16 +106,10 @@ Requires(post,postun): /sbin/ldconfig Requires: libvdpau >= 0.3 Provides: OpenGL = 2.1 Provides: OpenGL-GLX = 1.4 -%if %{without multigl} -Obsoletes: Mesa -%endif Obsoletes: X11-OpenGL-core < 1:7.0.0 Obsoletes: X11-OpenGL-libGL < 1:7.0.0 Obsoletes: XFree86-OpenGL-core < 1:7.0.0 Obsoletes: XFree86-OpenGL-libGL < 1:7.0.0 -%if %{without multigl} -Conflicts: Mesa-libGL -%endif %description libs NVIDIA OpenGL (GL and GLX only) implementation libraries. @@ -249,14 +241,10 @@ mv nv-kernel.o{,.bin} rm -rf $RPM_BUILD_ROOT %if %{with userspace} -install -d $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,extensions} \ +install -d $RPM_BUILD_ROOT%{_libdir}/{nvidia,xorg/modules/{drivers,extensions/nvidia}} \ $RPM_BUILD_ROOT{%{_includedir}/GL,%{_libdir}/vdpau,%{_bindir},%{_mandir}/man1} \ $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir},/etc/X11/xinit/xinitrc.d} \ - $RPM_BUILD_ROOT%{_sysconfdir}/OpenCL/vendors - -%if %{with multigl} -install -d $RPM_BUILD_ROOT{%{_libdir}/nvidia,%{_sysconfdir}/ld.so.conf.d} -%endif + $RPM_BUILD_ROOT%{_sysconfdir}/{OpenCL/vendors,ld.so.conf.d,X11/xorg.conf.d} install -p nvidia-{settings,smi,xconfig,bug-report.sh} $RPM_BUILD_ROOT%{_bindir} cp -p nvidia-{settings,smi,xconfig}.* $RPM_BUILD_ROOT%{_mandir}/man1 @@ -265,13 +253,12 @@ cp -p nvidia-settings.png $RPM_BUILD_ROOT%{_pixmapsdir} install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d/nvidia-settings.sh install -p nvidia.icd $RPM_BUILD_ROOT%{_sysconfdir}/OpenCL/vendors -%if %{without multigl} -install -p libGL.so.%{version} $RPM_BUILD_ROOT%{_libdir} -%else -install -p libGL.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia -%endif +install %{SOURCE4} $RPM_BUILD_ROOT/etc/X11/xorg.conf.d +install %{SOURCE5} $RPM_BUILD_ROOT/etc/X11/xorg.conf.d +sed -i -e 's|@@LIBDIR@@|%{_libdir}|g' $RPM_BUILD_ROOT/etc/X11/xorg.conf.d/10-nvidia-modules.conf for f in \ + libGL.so.%{version} \ libOpenCL.so.1.0.0 \ libXvMCNVIDIA.so.%{version} \ libcuda.so.%{version} \ @@ -282,50 +269,40 @@ for f in \ libnvidia-ml.so.%{version} \ tls/libnvidia-tls.so.%{version} \ ; do - install -p $f $RPM_BUILD_ROOT%{_libdir} + install -p $f $RPM_BUILD_ROOT%{_libdir}/nvidia done -/sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir} - -cp -a libXvMCNVIDIA.a $RPM_BUILD_ROOT%{_libdir} +cp -a libXvMCNVIDIA.a $RPM_BUILD_ROOT%{_libdir}/nvidia install -p libvdpau_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/vdpau -install -p libglx.so.%{version} \ - $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions -install -p nvidia_drv.so \ - $RPM_BUILD_ROOT%{_libdir}/xorg/modules/drivers/nvidia_drv.so.%{version} -install -p libnvidia-wfb.so.%{version} \ - $RPM_BUILD_ROOT%{_libdir}/xorg/modules +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 +install -p libnvidia-wfb.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia +ln -s libnvidia-wfb.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so + +/sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}/nvidia +/sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/nvidia cp -p gl*.h $RPM_BUILD_ROOT%{_includedir}/GL -ln -sf libglx.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/extensions/libglx.so -ln -sf nvidia_drv.so.%{version} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/drivers/nvidia_drv.so ln -sf libvdpau_nvidia.so.%{version} $RPM_BUILD_ROOT%{_libdir}/vdpau/libvdpau_nvidia.so.1 -%if %{with multigl} +%ifarch %{x8664} +echo %{_libdir}/nvidia >$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia64.conf +echo %{_libdir}/vdpau >>$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia64.conf +%else echo %{_libdir}/nvidia >$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia.conf +echo %{_libdir}/vdpau >>$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/nvidia.conf +%endif # OpenGL ABI for Linux compatibility ln -sf libGL.so.%{version} $RPM_BUILD_ROOT%{_libdir}/nvidia/libGL.so.1 -ln -sf nvidia/libGL.so.1 $RPM_BUILD_ROOT%{_libdir}/libGL.so -%else -# OpenGL ABI for Linux compatibility -ln -sf libGL.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libGL.so.1 -ln -sf libGL.so.1 $RPM_BUILD_ROOT%{_libdir}/libGL.so -%endif - -ln -sf libOpenCL.so.1.0.0 $RPM_BUILD_ROOT%{_libdir}/libOpenCL.so.1 -ln -sf libOpenCL.so.1 $RPM_BUILD_ROOT%{_libdir}/libOpenCL.so - -ln -sf libXvMCNVIDIA.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libXvMCNVIDIA_dynamic.so.1 -ln -sf libXvMCNVIDIA_dynamic.so.1 $RPM_BUILD_ROOT%{_libdir}/libXvMCNVIDIA.so - -ln -sf libcuda.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libcuda.so.1 -ln -sf libcuda.so.1 $RPM_BUILD_ROOT%{_libdir}/libcuda.so - -ln -sf libnvcuvid.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libnvcuvid.so.1 -ln -sf libnvcuvid.so.1 $RPM_BUILD_ROOT%{_libdir}/libnvcuvid.so +ln -sf libGL.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libGL.so +ln -sf libOpenCL.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libOpenCL.so +ln -sf libXvMCNVIDIA_dynamic.so.1 $RPM_BUILD_ROOT%{_libdir}/nvidia/libXvMCNVIDIA.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 %endif %if %{with kernel} @@ -349,25 +326,9 @@ NOTE: You must also install kernel module for this driver to work kernel-video-nvidia-%{version} EOF -# until versioned SONAME is built for nvidia_drv.so, update symlink manually -ln -sf nvidia_drv.so.%{version} %{_libdir}/xorg/modules/drivers/nvidia_drv.so -%if %{with multigl} -if [ ! -e %{_libdir}/xorg/modules/extensions/libglx.so ]; then - /sbin/ldconfig -N %{_libdir}/xorg/modules/extensions - ln -sf libglx.so.%{version} %{_libdir}/xorg/modules/extensions/libglx.so -fi -%else -/sbin/ldconfig -N %{_libdir}/xorg/modules/extensions -ln -sf libglx.so.%{version} %{_libdir}/xorg/modules/extensions/libglx.so -%endif - -%post libs -/sbin/ldconfig -/sbin/ldconfig -N %{_libdir}/vdpau -%postun libs -/sbin/ldconfig -/sbin/ldconfig -N %{_libdir}/vdpau +%post libs -p /sbin/ldconfig +%postun libs -p /sbin/ldconfig %post -n kernel%{_alt_kernel}-video-nvidia %depmod %{_kernel_ver} @@ -379,48 +340,44 @@ ln -sf libglx.so.%{version} %{_libdir}/xorg/modules/extensions/libglx.so %files %defattr(644,root,root,755) %doc LICENSE NVIDIA_Changelog README.txt -%attr(755,root,root) %{_libdir}/xorg/modules/libnvidia-wfb.so.*.* -%attr(755,root,root) %{_libdir}/xorg/modules/extensions/libglx.so.* -%attr(755,root,root) %ghost %{_libdir}/xorg/modules/extensions/libglx.so -%attr(755,root,root) %{_libdir}/xorg/modules/drivers/nvidia_drv.so.*.* -%attr(755,root,root) %ghost %{_libdir}/xorg/modules/drivers/nvidia_drv.so +%dir %{_libdir}/xorg/modules/extensions/nvidia +%attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so.*.* +%attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so.1 +%attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libnvidia-wfb.so +%attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libglx.so.* +%attr(755,root,root) %{_libdir}/xorg/modules/extensions/nvidia/libglx.so +%attr(755,root,root) %{_libdir}/xorg/modules/drivers/nvidia_drv.so +%{_sysconfdir}/X11/xorg.conf.d/10-nvidia.conf +%{_sysconfdir}/X11/xorg.conf.d/10-nvidia-modules.conf %files libs %defattr(644,root,root,755) %dir %{_sysconfdir}/OpenCL %dir %{_sysconfdir}/OpenCL/vendors %{_sysconfdir}/OpenCL/vendors/nvidia.icd -%if %{with multigl} -%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ld.so.conf.d/nvidia.conf +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ld.so.conf.d/nvidia*.conf %dir %{_libdir}/nvidia %attr(755,root,root) %{_libdir}/nvidia/libGL.so.*.* %attr(755,root,root) %ghost %{_libdir}/nvidia/libGL.so.1 -%else -%attr(755,root,root) %{_libdir}/libGL.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libGL.so.1 -# symlink for binary apps which fail to conform Linux OpenGL ABI -# (and dlopen libGL.so instead of libGL.so.1) -%attr(755,root,root) %{_libdir}/libGL.so -%endif -%attr(755,root,root) %{_libdir}/libOpenCL.so -%attr(755,root,root) %{_libdir}/libOpenCL.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libOpenCL.so.1 -%attr(755,root,root) %{_libdir}/libXvMCNVIDIA.so -%attr(755,root,root) %{_libdir}/libXvMCNVIDIA.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libXvMCNVIDIA_dynamic.so.1 -%attr(755,root,root) %{_libdir}/libcuda.so -%attr(755,root,root) %ghost %{_libdir}/libcuda.so.1 -%attr(755,root,root) %{_libdir}/libcuda.so.*.* -%attr(755,root,root) %{_libdir}/libnvcuvid.so -%attr(755,root,root) %ghost %{_libdir}/libnvcuvid.so.1 -%attr(755,root,root) %{_libdir}/libnvcuvid.so.*.* -%attr(755,root,root) %{_libdir}/libnvidia-cfg.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libnvidia-cfg.so.1 -%attr(755,root,root) %{_libdir}/libnvidia-compiler.so.*.* -%attr(755,root,root) %{_libdir}/libnvidia-glcore.so.*.* -%attr(755,root,root) %{_libdir}/libnvidia-ml.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libnvidia-ml.so.1 -%attr(755,root,root) %{_libdir}/libnvidia-tls.so.*.* +%attr(755,root,root) %{_libdir}/nvidia/libOpenCL.so.*.* +%attr(755,root,root) %ghost %{_libdir}/nvidia/libOpenCL.so.1 +%attr(755,root,root) %{_libdir}/nvidia/libOpenCL.so +%attr(755,root,root) %{_libdir}/nvidia/libXvMCNVIDIA.so.*.* +%attr(755,root,root) %{_libdir}/nvidia/libXvMCNVIDIA.so +%attr(755,root,root) %ghost %{_libdir}/nvidia/libXvMCNVIDIA_dynamic.so.1 +%attr(755,root,root) %{_libdir}/nvidia/libcuda.so.*.* +%attr(755,root,root) %ghost %{_libdir}/nvidia/libcuda.so.1 +%attr(755,root,root) %{_libdir}/nvidia/libcuda.so +%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 +%attr(755,root,root) %{_libdir}/nvidia/libnvidia-cfg.so.*.* +%attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-cfg.so.1 +%attr(755,root,root) %{_libdir}/nvidia/libnvidia-compiler.so.*.* +%attr(755,root,root) %{_libdir}/nvidia/libnvidia-glcore.so.*.* +%attr(755,root,root) %{_libdir}/nvidia/libnvidia-ml.so.*.* +%attr(755,root,root) %ghost %{_libdir}/nvidia/libnvidia-ml.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 @@ -431,14 +388,12 @@ ln -sf libglx.so.%{version} %{_libdir}/xorg/modules/extensions/libglx.so %{_includedir}/GL/glext.h %{_includedir}/GL/glx.h %{_includedir}/GL/glxext.h -%if %{with multigl} -%attr(755,root,root) %{_libdir}/libGL.so -%endif +%attr(755,root,root) %{_libdir}/nvidia/libGL.so %{_pkgconfigdir}/gl.pc %files static %defattr(644,root,root,755) -%{_libdir}/libXvMCNVIDIA.a +%{_libdir}/nvidia/libXvMCNVIDIA.a %files doc %defattr(644,root,root,755)