/
dkms-bbswitch.spec
48 lines (40 loc) · 1.44 KB
/
dkms-bbswitch.spec
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
%define oname bbswitch
Name: dkms-bbswitch
Summary: bbswitch - Optimus GPU power switcher
Version: 0.8
Release: 7
Source0: %{oname}-%{version}.tar.gz
URL: https://github.com/Bumblebee-Project/bbswitch
Group: System/Kernel and hardware
License: GPLv3
Patch0: bbswitch-0.8-fix-uaccess-inclusion.patch
BuildArch: noarch
ExcludeArch: %{armx}
Requires(post,preun): dkms
%description
bbswitch is a kernel module which automatically detects
the required ACPI calls for two kinds of Optimus laptops.
It has been verified to work with "real" Optimus and
"legacy" Optimus laptops (at least, that is how I call them).
%prep
%setup -qn %{oname}-%{version}
%autopatch -p1
sed -i 's/#MODULE_VERSION#/%{version}-%{release}/g' dkms/dkms.conf
%install
rm -rf %{buildroot}
mkdir -p %{buildroot}%{_usrsrc}/%{oname}-%{version}-%{release}
cp *.c %{buildroot}%{_usrsrc}/%{oname}-%{version}-%{release}
cp Makefile %{buildroot}%{_usrsrc}/%{oname}-%{version}-%{release}
cp dkms/dkms.conf %{buildroot}%{_usrsrc}/%{oname}-%{version}-%{release}/dkms.conf
%post
dkms add -m %{oname} -v %{version}-%{release} --rpm_safe_upgrade &&
dkms build -m %{oname} -v %{version}-%{release} --rpm_safe_upgrade &&
dkms install -m %{oname} -v %{version}-%{release} --rpm_safe_upgrade --force
true
/sbin/modprobe %{oname} || true
%preun
dkms remove --binary -m %{oname} -v %{version}-%{release} --rpm_safe_upgrade --all
true
/sbin/rmmod %{oname} || true
%files
%{_usrsrc}/%{oname}-%{version}-%{release}/*