]> git.pld-linux.org Git - packages/nvidiabl.git/commitdiff
add dkms-nvidiabl package, bcond off for now
authorElan Ruusamäe <glen@delfi.ee>
Tue, 19 Feb 2013 22:33:47 +0000 (00:33 +0200)
committerElan Ruusamäe <glen@delfi.ee>
Tue, 19 Feb 2013 22:33:47 +0000 (00:33 +0200)
nvidiabl kernel module can be installed via dkms

nvidiabl-dkmsconf.patch [new file with mode: 0644]
nvidiabl.spec

diff --git a/nvidiabl-dkmsconf.patch b/nvidiabl-dkmsconf.patch
new file mode 100644 (file)
index 0000000..60faa43
--- /dev/null
@@ -0,0 +1,20 @@
+--- a/dkms.conf.orig   2012-04-25 16:45:00.714343002 +0200
++++ a/dkms.conf        2012-04-25 16:46:55.833343001 +0200
+@@ -1,13 +1,13 @@
+ DEST_MODULE_LOCATION[0]="/kernel/drivers/video/backlight"
+-PACKAGE_NAME="nvidiabl"
+-PACKAGE_VERSION="0.81"
++PACKAGE_NAME="@MODNAME@"
++PACKAGE_VERSION="@MODVERSION@"
+ CLEAN="make -C ${kernel_source_dir} SUBDIRS=${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build clean"
+ BUILT_MODULE_NAME[0]="${PACKAGE_NAME}"
+-MODULES_CONF[0]="# Prevent conflicts with nvidiabl"
++MODULES_CONF[0]="# Prevent conflicts with @MODNAME@"
+ MODULES_CONF[1]="blacklist nvidia_bl"
+ MODULES_CONF[2]="blacklist nvbacklight"
+ MODULES_CONF[3]="blacklist mbp_nvidia_bl"
+-MODULES_CONF[4]="# End of entries added for nvidiabl"
++MODULES_CONF[4]="# End of entries added for @MODNAME@"
+ MAKE[0]="make -C ${kernel_source_dir} SUBDIRS=${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build modules"
+ REMAKE_INITRD="no"
+ AUTOINSTALL="yes"
index 7479e741e7fd3a87592ed539fcc0866666e4e2d4..fc41c1a828cd0a37e5963e3fb14d8eafc00ab9ca 100644 (file)
@@ -1,21 +1,24 @@
 #
 # Conditional build:
 %bcond_without dist_kernel     # allow non-distribution kernel
+%bcond_without kernel          # don't build kernel modules
 %bcond_with    verbose         # verbose build (V=1)
+%bcond_with    dkms    # build dkms package
 
 # nothing to be placed to debuginfo package
 %define                _enable_debug_packages  0
 
 %define                rel     2
-%define                pname   nvidiabl
+%define                modname nvidiabl
 Summary:       Linux driver for nVidia display back-lights
-Name:          %{pname}%{_alt_kernel}
+Name:          %{modname}%{_alt_kernel}
 Version:       0.81
 Release:       %{rel}
 License:       GPL v2+
 URL:           https://github.com/guillaumezin/nvidiabl
-Source0:       https://github.com/guillaumezin/nvidiabl/archive/v%{version}.tar.gz?/%{pname}-%{version}.tgz
+Source0:       https://github.com/guillaumezin/nvidiabl/archive/v%{version}.tar.gz?/%{modname}-%{version}.tgz
 # Source0-md5: f72d90c0fe34b36a0ff3b6d7034e99c4
+Patch0:                nvidiabl-dkmsconf.patch
 Group:         Base/Kernel
 %{?with_dist_kernel:BuildRequires:     kernel%{_alt_kernel}-module-build >= 3:2.6.20.2}
 BuildRequires: rpmbuild(macros) >= 1.379
@@ -30,6 +33,30 @@ adjust the display backlight.
 On Apple machines this driver allows more fine-grained brightness
 adjustment than the (mbp_nvidia_bl) driver and is generally preferred.
 
+%package -n dkms-%{modname}
+Summary:       DKMS-ready driver for nVidia display back-lights
+License:       GPL v2+
+Group:         Base/Kernel
+Requires(pre): dkms
+Requires(post):        dkms
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
+
+%description -n dkms-%{modname}
+This package contains a DKMS-ready driver for nvidia laptop display
+back-lights.
+
+This driver drives the smartdimmer register found on modern mobile
+Nvidia graphics adapters such as NV40, NV41, NV43, NV44, NV46, NV47,
+NV49, NV4B, C51, G84, G86, G92, G94, G96, GT200 architectures to
+adjust the display backlight.
+
+On Apple machines this driver allows more fine-grained brightness
+adjustment than the mbp-nvidia-bl-dkms (mbp_nvidia_bl) driver and is
+generally preferred.
+
+
 %package -n kernel%{_alt_kernel}-video-nvidiabl
 Summary:       Linux driver for nVidia display back-lights
 Summary(pl.UTF-8):     Sterownik dla Linuksa do nvidiabl
@@ -56,24 +83,52 @@ Sterownik dla Linuksa do nvidiabl.
 Ten pakiet zawiera moduł jądra Linuksa.
 
 %prep
-%setup -qn %{pname}-%{version}
+%setup -qn %{modname}-%{version}
+%patch0 -p1
 
 %build
+%if %{with kernel}
 %build_kernel_modules -m nvidiabl
+%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
+%if %{with kernel}
 %install_kernel_modules -m nvidiabl -d misc
+%endif
+
+%if %{with dkms}
+install -d $RPM_BUILD_ROOT%{_usrsrc}/%{modname}-%{version}-%{rel}
+cp -a Makefile *.[ch] $RPM_BUILD_ROOT%{_usrsrc}/%{modname}-%{version}-%{rel}
+sed -e 's|@MODNAME@|%{modname}|g' -e 's|@MODVERSION@|%{version}-%{rel}|g' \
+       dkms.conf > $RPM_BUILD_ROOT%{_usrsrc}/%{modname}-%{version}-%{rel}/dkms.conf
+%endif
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+%post -n dkms-%{modname}
+%{_sbindir}/dkms add -m %{modname} -v %{version}-%{rel} --rpm_safe_upgrade && \
+%{_sbindir}/dkms build -m %{modname} -v %{version}-%{rel} --rpm_safe_upgrade && \
+%{_sbindir}/dkms install -m %{modname} -v %{version}-%{rel} --rpm_safe_upgrade || :
+
+%preun -n dkms-%{modname}
+%{_sbindir}/dkms remove -m %{modname} -v %{version}-%{rel} --rpm_safe_upgrade --all || :
+
 %post  -n kernel%{_alt_kernel}-video-nvidiabl
 %depmod %{_kernel_ver}
 
 %postun        -n kernel%{_alt_kernel}-video-nvidiabl
 %depmod %{_kernel_ver}
 
+%if %{with dkms}
+%files -n dkms-%{modname}
+%defattr(644,root,root,755)
+%{_usrsrc}/%{modname}-%{version}-%{rel}
+%endif
+
+%if %{with kernel}
 %files -n kernel%{_alt_kernel}-video-nvidiabl
 %defattr(644,root,root,755)
 /lib/modules/%{_kernel_ver}/misc/*.ko*
+%endif
This page took 0.069102 seconds and 4 git commands to generate.