3 %bcond_without verbose # verbose build (V=1)
4 %bcond_without dkms # build dkms package
6 %if "%{_alt_kernel}" != "%{nil}"
7 %if 0%{?build_kernels:1}
8 %{error:alt_kernel and build_kernels are mutually exclusive}
11 %global _build_kernels %{alt_kernel}
13 %global _build_kernels %{?build_kernels:,%{?build_kernels}}
16 # nothing to be placed to debuginfo package
17 %define _enable_debug_packages 0
19 %define _duplicate_files_terminate_build 0
21 %define kbrs %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo "BuildRequires:kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2" ; done)
22 %define kpkg %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%kernel_pkg ; done)
23 %define bkpkg %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%build_kernel_pkg ; done)
26 %define pname nvidiabl
27 Summary: Linux driver for nVidia display back-lights
28 Summary(pl.UTF-8): Sterownik dla Linuksa do podświetlania wyświetlacza dla kart firmy nVidia
29 Name: %{pname}%{_alt_kernel}
31 Release: %{rel}%{?_pld_builder:@%{_kernel_ver_str}}
34 Source0: https://github.com/guillaumezin/nvidiabl/archive/v%{version}.tar.gz?/%{pname}-%{version}.tgz
35 Source1: modprobe.conf
36 Patch0: nvidiabl-dkmsconf.patch
37 # Source0-md5: e9418d3e500172d79680e44ad0f85743
38 URL: https://github.com/guillaumezin/nvidiabl
39 BuildRequires: rpmbuild(macros) >= 1.678
41 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
44 This driver drives the smartdimmer register found on modern mobile
45 nVidia graphics adapters such as NV40, NV41, NV43, NV44, NV46, NV47,
46 NV49, NV4B, C51, G84, G86, G92, G94, G96, GT200 architectures to
47 adjust the display backlight.
49 On Apple machines this driver allows more fine-grained brightness
50 adjustment than the (mbp_nvidia_bl) driver and is generally preferred.
52 %description -l pl.UTF-8
53 Ten sterownik steruje rejestrem "smartdimmer" obecnym we współczesnych
54 mobilnych kartach graficznych firmy nVidia (takich jak architektury
55 NV40, NV41, NV43, NV44, NV46, NV47, NV49, NV4B, C51, G84, G86, G92,
56 G94, G96, GT200), służącym do regulacji podświetlenia wyświetlacza.
58 Na komputerach firmy Apple ten sterownik pozwala na dokładniejsze
59 ustawianie jasności niż sterownik mbp_nvidia_bl i ogólnie jest
62 %package -n dkms-%{pname}
63 Summary: DKMS-ready driver for nVidia display back-lights
64 Summary(pl.UTF-8): Sterownik zgodny z DKMS do podświetlania wyświetlacza dla kart firmy nVidia
67 Requires(pre,post): dkms
68 %if "%{_rpmversion}" >= "5"
72 %description -n dkms-%{pname}
73 This package contains a DKMS-ready driver for nVidia laptop display
76 This driver drives the smartdimmer register found on modern mobile
77 Nvidia graphics adapters such as NV40, NV41, NV43, NV44, NV46, NV47,
78 NV49, NV4B, C51, G84, G86, G92, G94, G96, GT200 architectures to
79 adjust the display backlight.
81 On Apple machines this driver allows more fine-grained brightness
82 adjustment than the mbp-nvidia-bl-dkms (mbp_nvidia_bl) driver and is
85 %description -n dkms-%{pname} -l pl.UTF-8
86 Ten pakiet zawiera zgodny z DKMS sterownik do podświetlania
87 wyświetlacza laptopów z kartą graficzną firmy nVidia.
89 Ten sterownik steruje rejestrem "smartdimmer" obecnym we współczesnych
90 mobilnych kartach graficznych firmy nVidia (takich jak architektury
91 NV40, NV41, NV43, NV44, NV46, NV47, NV49, NV4B, C51, G84, G86, G92,
92 G94, G96, GT200), służącym do regulacji podświetlenia wyświetlacza.
94 Na komputerach firmy Apple ten sterownik pozwala na dokładniejsze
95 ustawianie jasności niż sterownik mbp_nvidia_bl i ogólnie jest
99 %package -n kernel%{_alt_kernel}-video-nvidiabl\
100 Summary: Linux driver for nVidia display back-lights\
101 Summary(pl.UTF-8): Sterownik dla Linuksa do podświetlania wyświetlacza dla kart firmy nVidia\
102 Release: %{rel}@%{_kernel_ver_str}\
104 Requires(post,postun): /sbin/depmod\
105 %requires_releq_kernel\
106 Requires(postun): %releq_kernel\
108 %description -n kernel%{_alt_kernel}-video-nvidiabl\
109 This driver drives the smartdimmer register found on modern mobile\
110 nVidia graphics adapters such as NV40, NV41, NV43, NV44, NV46, NV47,\
111 NV49, NV4B, C51, G84, G86, G92, G94, G96, GT200 architectures to\
112 adjust the display backlight.\
114 On Apple machines this driver allows more fine-grained brightness\
115 adjustment than the (mbp_nvidia_bl) driver and is generally preferred.\
117 %description -n kernel%{_alt_kernel}-video-nvidiabl -l pl.UTF-8\
118 Ten sterownik steruje rejestrem "smartdimmer" obecnym we współczesnych\
119 mobilnych kartach graficznych firmy nVidia (takich jak architektury\
120 NV40, NV41, NV43, NV44, NV46, NV47, NV49, NV4B, C51, G84, G86, G92,\
121 G94, G96, GT200), służącym do regulacji podświetlenia wyświetlacza.\
123 Na komputerach firmy Apple ten sterownik pozwala na dokładniejsze\
124 ustawianie jasności niż sterownik mbp_nvidia_bl i ogólnie jest\
127 %files -n kernel%{_alt_kernel}-video-nvidiabl\
128 %defattr(644,root,root,755)\
129 /lib/modules/%{_kernel_ver}/misc/*.ko*\
130 %config(noreplace) %verify(not md5 mtime size) /etc/modprobe.d/%{pname}.conf\
132 %post -n kernel%{_alt_kernel}-video-nvidiabl\
133 %depmod %{_kernel_ver}\
135 %postun -n kernel%{_alt_kernel}-video-nvidiabl\
136 %depmod %{_kernel_ver}\
139 %define build_kernel_pkg()\
140 %build_kernel_modules -m nvidiabl\
141 %install_kernel_modules -D installed -m nvidiabl -d misc\
147 %setup -qn %{pname}-%{version}
154 rm -rf $RPM_BUILD_ROOT
155 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
161 install -d $RPM_BUILD_ROOT%{_usrsrc}/%{pname}-%{version}-%{rel}
162 cp -p Makefile *.[ch] $RPM_BUILD_ROOT%{_usrsrc}/%{pname}-%{version}-%{rel}
163 sed -e 's|@pname@|%{pname}|g' -e 's|@MODVERSION@|%{version}-%{rel}|g' \
164 dkms.conf > $RPM_BUILD_ROOT%{_usrsrc}/%{pname}-%{version}-%{rel}/dkms.conf
168 rm -rf $RPM_BUILD_ROOT
170 %post -n dkms-%{pname}
171 %{_sbindir}/dkms add -m %{pname} -v %{version}-%{rel} --rpm_safe_upgrade && \
172 %{_sbindir}/dkms build -m %{pname} -v %{version}-%{rel} --rpm_safe_upgrade && \
173 %{_sbindir}/dkms install -m %{pname} -v %{version}-%{rel} --rpm_safe_upgrade || :
175 %preun -n dkms-%{pname}
176 %{_sbindir}/dkms remove -m %{pname} -v %{version}-%{rel} --rpm_safe_upgrade --all || :
179 %files -n dkms-%{pname}
180 %defattr(644,root,root,755)
181 %{_usrsrc}/%{pname}-%{version}-%{rel}