X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=nvidia-settings.spec;h=705f91228d1fed396651e0b63b919db99ed0b785;hb=f8970ae0abf2546375b5a38122fbf65019be525d;hp=77513ac7a29e5b027ba02cba672dc0ada30fea1a;hpb=8798252ca7fc56d1bb304557ad3b7731e09336ee;p=packages%2Fnvidia-settings.git diff --git a/nvidia-settings.spec b/nvidia-settings.spec index 77513ac..705f912 100644 --- a/nvidia-settings.spec +++ b/nvidia-settings.spec @@ -1,34 +1,42 @@ +# TODO: +# - use system jansson >= 2.6 library # # Conditional build: %bcond_without nvidia_settings # build the main package -%bcond_without libXNVCtrl # build libXNVCtrl for http://websvn.kde.org/trunk/kdenonbeta/nvidia/ -# -%define _buildid 20061219 -%define _rel 2 +%bcond_without utils # build utils from samples dir +%bcond_without libXNVCtrl # build libXNVCtrl for external packages + Summary: Tool for configuring the NVIDIA driver -Summary(pl.UTF-8): Narzędzie do konfigurowania sterownika NVIDIA +Summary(pl.UTF-8): Narzędzie do konfigurowania sterownika NVIDIA Name: nvidia-settings -Version: 1.0 -Release: 0.%{_buildid}.%{_rel} -License: GPL -Group: X11 -Source0: ftp://download.nvidia.com/XFree86/nvidia-settings/%{name}-%{version}.tar.gz -# Source0-md5: 414a838f01093ceb0ae8535c35e21eac -Patch0: libXNVCtrl-shared.patch -Patch1: %{name}-xlibs.patch +# keep the version in sync with xorg-driver-video-nvidia.spec +Version: 340.32 +Release: 1 +License: GPL v2 (with MIT parts) +Group: X11/Applications +Source0: ftp://download.nvidia.com/XFree86/nvidia-settings/%{name}-%{version}.tar.bz2 +# Source0-md5: 420c47af4ec52ca6b458859bf9312afe +Source1: %{name}.desktop +Source2: %{name}.png +Source3: %{name}-autostart.desktop URL: ftp://download.nvidia.com/XFree86/nvidia-settings/ -BuildRequires: XFree86-devel +BuildRequires: OpenGL-devel +BuildRequires: libvdpau-devel +BuildRequires: xorg-lib-libX11-devel +BuildRequires: xorg-lib-libXext-devel +BuildRequires: xorg-lib-libXv-devel +BuildRequires: xorg-lib-libXxf86vm-devel %if %{with nvidia_settings} -BuildRequires: gtk+2-devel +BuildRequires: gtk+2-devel >= 2.0 +BuildRequires: jansson-devel >= 2.2 BuildRequires: m4 BuildRequires: pkgconfig %endif -Requires: libXNVCtrl = %{version}-%{release} BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description -The `nvidia-settings` utility is a tool for configuring the NVIDIA -Linux graphics driver. It operates by communicating with the NVIDIA X +The nvidia-settings utility is a tool for configuring the NVIDIA Linux +graphics driver. It operates by communicating with the NVIDIA X driver, querying and updating state as appropriate. This communication is done with the NV-CONTROL X extension. @@ -58,109 +66,136 @@ wyświetla graficzny interfejs użytkownika (GUI) do konfiguracji ustawień. Przy wyłączniu nvidia-settings odczytuje bieżące ustawienia z serwera X i zapisuje je do pliku konfiguracyjnego. -%package -n libXNVCtrl -Summary: libXNVCtrl library -Summary(pl.UTF-8): Biblioteka libXNVCtrl -Group: Libraries - -%description -n libXNVCtrl -Library for accessing NV-CONTROL extension in NVIDIA's latest drivers. - -%description -n libXNVCtrl -l pl.UTF-8 -Biblioteka do obsługi rozszerzenia NV-CONTROL z najnowszych -sterowników NVIDIA. - %package -n libXNVCtrl-devel -Summary: libXNVCtrl development headers -Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libXNVCtrl +Summary: libXNVCtrl development files +Summary(pl.UTF-8): Pliki programistyczne biblioteki libXNVCtrl +License: MIT Group: Development/Libraries -Requires: XFree86-devel -Requires: libXNVCtrl = %{version}-%{release} +Requires: xorg-lib-libX11-devel +Requires: xorg-lib-libXext-devel +Requires: xorg-lib-libXxf86vm-devel +Obsoletes: libXNVCtrl-static %description -n libXNVCtrl-devel -Development headers for libXNVCtrl. +Library for accessing NV-CONTROL extension in NVIDIA's latest drivers. %description -n libXNVCtrl-devel -l pl.UTF-8 -Pliki nagłówkowe biblioteki libXNVCtrl. - -%package -n libXNVCtrl-static -Summary: libXNVCtrl static library -Summary(pl.UTF-8): Biblioteka statyczna libXNVCtrl -Group: Development/Libraries -Requires: libXNVCtrl-devel = %{version}-%{release} - -%description -n libXNVCtrl-static -Static library for libXNVCtrl. - -%description -n libXNVCtrl-static -l pl.UTF-8 -Biblioteka statyczna libXNVCtrl. +Biblioteka do obsługi rozszerzenia NV-CONTROL z najnowszych +sterowników NVIDIA. %prep %setup -q -%patch0 -p1 -%patch1 -p1 %build %if %{with libXNVCtrl} -cd src/libXNVCtrl -xmkmf -%{__make} clean -%{__make} \ +%{__make} -C src/libXNVCtrl \ + NV_VERBOSE=1 \ CC="%{__cc}" \ - CFLAGS="%{rpmcflags}" -cd ../.. + CFLAGS="%{rpmcppflags} %{rpmcflags} -fPIC" +%endif + +%if %{with utils} +%{__make} -C samples \ + NV_VERBOSE=1 \ + CC="%{__cc}" \ + OUTPUTDIR=$(pwd)/_out/utils \ + X_CFLAGS="%{rpmcppflags} %{rpmcflags} -fPIC" %endif %if %{with nvidia_settings} -%{__make} \ +%{__make} -C src \ + NV_USE_BUNDLED_LIBJANSSON=0 \ + NV_VERBOSE=1 \ + STRIP_CMD=: \ CC="%{__cc}" \ - CFLAGS="%{rpmcflags}" \ - LDFLAGS="%{rpmldflags}" + X_CFLAGS="%{rpmcppflags} %{rpmcflags}" \ + X_LDFLAGS="%{rpmldflags}" + +%{__make} -C doc \ + NV_VERBOSE=1 %endif %install rm -rf $RPM_BUILD_ROOT %if %{with nvidia_settings} -install -d $RPM_BUILD_ROOT{%{_bindir},%{_mandir}/man1} -install nvidia-settings $RPM_BUILD_ROOT%{_bindir} -install doc/nvidia-settings.1 $RPM_BUILD_ROOT%{_mandir}/man1/nvidia-settings.1 +install -d $RPM_BUILD_ROOT{%{_bindir},%{_mandir}/man1,%{_desktopdir},%{_pixmapsdir},/etc/xdg/autostart} +%{__make} install \ + NV_USE_BUNDLED_LIBJANSSON=0 \ + NV_VERBOSE=1 \ + INSTALL="install -p" \ + PREFIX=%{_prefix} \ + DESTDIR=$RPM_BUILD_ROOT +cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir} +cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir} +cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/xdg/autostart/%{name}.desktop %endif %if %{with libXNVCtrl} -install -d $RPM_BUILD_ROOT%{_examplesdir}/libXNVCtrl-%{version} +install -d $RPM_BUILD_ROOT%{_examplesdir}/libXNVCtrl-%{version} \ + $RPM_BUILD_ROOT{%{_libdir},%{_includedir}/NVCtrl} cp -a samples/* $RPM_BUILD_ROOT%{_examplesdir}/libXNVCtrl-%{version} -%{__make} install \ - -C src/libXNVCtrl \ - DESTDIR=$RPM_BUILD_ROOT +cp -p src/libXNVCtrl/nv_control.h $RPM_BUILD_ROOT%{_includedir}/NVCtrl +cp -p src/libXNVCtrl/NVCtrl.h $RPM_BUILD_ROOT%{_includedir}/NVCtrl +cp -p src/libXNVCtrl/NVCtrlLib.h $RPM_BUILD_ROOT%{_includedir}/NVCtrl +cp -p src/libXNVCtrl/libXNVCtrl.a $RPM_BUILD_ROOT%{_libdir} + +install -d $RPM_BUILD_ROOT%{_pkgconfigdir} +cat <<'EOF' > $RPM_BUILD_ROOT%{_pkgconfigdir}/libXNVCtrl.pc +prefix=%{_prefix} +libdir=%{_libdir} +includedir=${prefix}/include/NVCtrl + +Name: libXNVCtrl +Description: Library for accessing NV-CONTROL extension in NVIDIA's latest drivers. +Version: %{version} +Libs: -L${libdir} -lXNVCtrl +Cflags: -I${includedir} +EOF +#' +%endif + +%if %{with utils} +install -d $RPM_BUILD_ROOT%{_bindir} +for prog in _out/utils/nv-control-*; do + case "$prog" in + *.*) + continue + ;; + esac + install -p $prog $RPM_BUILD_ROOT%{_bindir} +done %endif %clean rm -rf $RPM_BUILD_ROOT -%post -n libXNVCtrl -p /sbin/ldconfig -%postun -n libXNVCtrl -p /sbin/ldconfig - %if %{with nvidia_settings} %files %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/%{name} -%{_mandir}/man1/* +%attr(755,root,root) %{_bindir}/nvidia-settings +%if %{with utils} +%attr(755,root,root) %{_bindir}/nv-control-3dvisionpro +%attr(755,root,root) %{_bindir}/nv-control-dpy +%attr(755,root,root) %{_bindir}/nv-control-dvc +%attr(755,root,root) %{_bindir}/nv-control-events +%attr(755,root,root) %{_bindir}/nv-control-framelock +%attr(755,root,root) %{_bindir}/nv-control-gvi +%attr(755,root,root) %{_bindir}/nv-control-info +%attr(755,root,root) %{_bindir}/nv-control-targets +%attr(755,root,root) %{_bindir}/nv-control-warpblend +%endif +%{_mandir}/man1/nvidia-settings.1* +%{_desktopdir}/nvidia-settings.desktop +%{_pixmapsdir}/nvidia-settings.png +/etc/xdg/autostart/%{name}.desktop %endif %if %{with libXNVCtrl} -%files -n libXNVCtrl -%defattr(644,root,root,755) -%attr(755,root,root) /usr/X11R6/%{_lib}/libXNVCtrl.so.*.*.* - %files -n libXNVCtrl-devel %defattr(644,root,root,755) %doc doc/{FRAMELOCK,NV-CONTROL-API}.txt -/usr/X11R6/include/X11/extensions/NVCtrl.h -/usr/X11R6/include/X11/extensions/NVCtrlLib.h -/usr/X11R6/%{_lib}/libXNVCtrl.so +%{_libdir}/libXNVCtrl.a +%{_includedir}/NVCtrl +%{_pkgconfigdir}/libXNVCtrl.pc %{_examplesdir}/libXNVCtrl-%{version} - -%files -n libXNVCtrl-static -%defattr(644,root,root,755) -/usr/X11R6/%{_lib}/libXNVCtrl.a %endif