3 %bcond_without verbose # verbose build (V=1)
4 %bcond_without kernel # don't build kernel modules
5 %bcond_without userspace # don't build userspace programs
6 %bcond_without dkms # build dkms package
8 %if 0%{?_pld_builder:1} && %{with kernel} && %{with userspace}
9 %{error:kernel and userspace cannot be built at the same time on PLD builders}
13 %if %{without userspace}
17 # nothing to be placed to debuginfo package
18 %define _enable_debug_packages 0
20 %define _duplicate_files_terminate_build 0
23 %define pname nvidiabl
24 Summary: Linux driver for nVidia display back-lights
25 Summary(pl.UTF-8): Sterownik dla Linuksa do podświetlania wyświetlacza dla kart firmy nVidia
26 Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel}
28 Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}}
31 Source0: https://github.com/guillaumezin/nvidiabl/archive/v%{version}.tar.gz?/%{pname}-%{version}.tgz
32 Source1: modprobe.conf
33 Patch0: nvidiabl-dkmsconf.patch
34 Patch1: linux-4.0.patch
35 # Source0-md5: e9418d3e500172d79680e44ad0f85743
36 URL: https://github.com/guillaumezin/nvidiabl
37 BuildRequires: rpmbuild(macros) >= 1.701
38 %{?with_kernel:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2}}
39 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42 This driver drives the smartdimmer register found on modern mobile
43 nVidia graphics adapters such as NV40, NV41, NV43, NV44, NV46, NV47,
44 NV49, NV4B, C51, G84, G86, G92, G94, G96, GT200 architectures to
45 adjust the display backlight.
47 On Apple machines this driver allows more fine-grained brightness
48 adjustment than the (mbp_nvidia_bl) driver and is generally preferred.
50 %description -l pl.UTF-8
51 Ten sterownik steruje rejestrem "smartdimmer" obecnym we współczesnych
52 mobilnych kartach graficznych firmy nVidia (takich jak architektury
53 NV40, NV41, NV43, NV44, NV46, NV47, NV49, NV4B, C51, G84, G86, G92,
54 G94, G96, GT200), służącym do regulacji podświetlenia wyświetlacza.
56 Na komputerach firmy Apple ten sterownik pozwala na dokładniejsze
57 ustawianie jasności niż sterownik mbp_nvidia_bl i ogólnie jest
60 %package -n dkms-%{pname}
61 Summary: DKMS-ready driver for nVidia display back-lights
62 Summary(pl.UTF-8): Sterownik zgodny z DKMS do podświetlania wyświetlacza dla kart firmy nVidia
65 Requires(pre,post): dkms
68 %description -n dkms-%{pname}
69 This package contains a DKMS-ready driver for nVidia laptop display
72 This driver drives the smartdimmer register found on modern mobile
73 Nvidia graphics adapters such as NV40, NV41, NV43, NV44, NV46, NV47,
74 NV49, NV4B, C51, G84, G86, G92, G94, G96, GT200 architectures to
75 adjust the display backlight.
77 On Apple machines this driver allows more fine-grained brightness
78 adjustment than the mbp-nvidia-bl-dkms (mbp_nvidia_bl) driver and is
81 %description -n dkms-%{pname} -l pl.UTF-8
82 Ten pakiet zawiera zgodny z DKMS sterownik do podświetlania
83 wyświetlacza laptopów z kartą graficzną firmy nVidia.
85 Ten sterownik steruje rejestrem "smartdimmer" obecnym we współczesnych
86 mobilnych kartach graficznych firmy nVidia (takich jak architektury
87 NV40, NV41, NV43, NV44, NV46, NV47, NV49, NV4B, C51, G84, G86, G92,
88 G94, G96, GT200), służącym do regulacji podświetlenia wyświetlacza.
90 Na komputerach firmy Apple ten sterownik pozwala na dokładniejsze
91 ustawianie jasności niż sterownik mbp_nvidia_bl i ogólnie jest
95 %package -n kernel%{_alt_kernel}-video-nvidiabl\
96 Summary: Linux driver for nVidia display back-lights\
97 Summary(pl.UTF-8): Sterownik dla Linuksa do podświetlania wyświetlacza dla kart firmy nVidia\
98 Release: %{rel}@%{_kernel_ver_str}\
100 Requires(post,postun): /sbin/depmod\
101 %requires_releq_kernel\
102 Requires(postun): %releq_kernel\
104 %description -n kernel%{_alt_kernel}-video-nvidiabl\
105 This driver drives the smartdimmer register found on modern mobile\
106 nVidia graphics adapters such as NV40, NV41, NV43, NV44, NV46, NV47,\
107 NV49, NV4B, C51, G84, G86, G92, G94, G96, GT200 architectures to\
108 adjust the display backlight.\
110 On Apple machines this driver allows more fine-grained brightness\
111 adjustment than the (mbp_nvidia_bl) driver and is generally preferred.\
113 %description -n kernel%{_alt_kernel}-video-nvidiabl -l pl.UTF-8\
114 Ten sterownik steruje rejestrem "smartdimmer" obecnym we współczesnych\
115 mobilnych kartach graficznych firmy nVidia (takich jak architektury\
116 NV40, NV41, NV43, NV44, NV46, NV47, NV49, NV4B, C51, G84, G86, G92,\
117 G94, G96, GT200), służącym do regulacji podświetlenia wyświetlacza.\
119 Na komputerach firmy Apple ten sterownik pozwala na dokładniejsze\
120 ustawianie jasności niż sterownik mbp_nvidia_bl i ogólnie jest\
124 %files -n kernel%{_alt_kernel}-video-nvidiabl\
125 %defattr(644,root,root,755)\
126 /lib/modules/%{_kernel_ver}/misc/*.ko*\
127 %config(noreplace) %verify(not md5 mtime size) /etc/modprobe.d/%{pname}.conf\
130 %post -n kernel%{_alt_kernel}-video-nvidiabl\
131 %depmod %{_kernel_ver}\
133 %postun -n kernel%{_alt_kernel}-video-nvidiabl\
134 %depmod %{_kernel_ver}\
137 %define build_kernel_pkg()\
138 %build_kernel_modules -m nvidiabl\
139 %install_kernel_modules -D installed -m nvidiabl -d misc\
142 %{?with_kernel:%{expand:%create_kernel_packages}}
145 %setup -qn %{pname}-%{version}
150 %{?with_kernel:%{expand:%build_kernel_packages}}
153 rm -rf $RPM_BUILD_ROOT
154 install -d $RPM_BUILD_ROOT/etc/modprobe.d
157 cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/modprobe.d/%{pname}.conf
158 cp -a installed/* $RPM_BUILD_ROOT
162 install -d $RPM_BUILD_ROOT%{_usrsrc}/%{pname}-%{version}-%{rel}
163 cp -p Makefile *.[ch] $RPM_BUILD_ROOT%{_usrsrc}/%{pname}-%{version}-%{rel}
164 sed -e 's|@pname@|%{pname}|g' -e 's|@MODVERSION@|%{version}-%{rel}|g' \
165 dkms.conf > $RPM_BUILD_ROOT%{_usrsrc}/%{pname}-%{version}-%{rel}/dkms.conf
169 rm -rf $RPM_BUILD_ROOT
171 %post -n dkms-%{pname}
172 %{_sbindir}/dkms add -m %{pname} -v %{version}-%{rel} --rpm_safe_upgrade && \
173 %{_sbindir}/dkms build -m %{pname} -v %{version}-%{rel} --rpm_safe_upgrade && \
174 %{_sbindir}/dkms install -m %{pname} -v %{version}-%{rel} --rpm_safe_upgrade || :
176 %preun -n dkms-%{pname}
177 %{_sbindir}/dkms remove -m %{pname} -v %{version}-%{rel} --rpm_safe_upgrade --all || :
180 %files -n dkms-%{pname}
181 %defattr(644,root,root,755)
182 %{_usrsrc}/%{pname}-%{version}-%{rel}