blob: 44e1af9c88df09603cbe6f0aa9164fc7380e1bb7 (
plain)
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
|
# TODO:
# - make it build
# - wouldn't it be better to replace this spec with a kernel patch ?
##
# Conditional build:
%bcond_without dist_kernel # allow non-distribution kernel
%bcond_without smp # don't build SMP module
%bcond_with verbose # verbose build (V=1)
%if %{without kernel}
%undefine with_dist_kernel
%endif
#
# main package.
#
%define _rel 0.1
Summary: sysfs interface to access ThinkPad's SMAPI functionality
Summary(pl): Interfejs sysfs do funkcjonalności SMAPI ThinkPadów
Name: kernel-misc-tp_smapi
Version: 0.19
Release: %{_rel}
License: GPL
Group: Applications
Source0: http://dl.sourceforge.net/tpctl/tp_smapi-%{version}.tgz
# Source0-md5: fdb192b59e05bb826c4ca05a39b42649
URL: http://tpctl.sourceforge.net/
%{?with_dist_kernel:BuildRequires: kernel-module-build >= 3:2.6.14}
BuildRequires: rpmbuild(macros) >= 1.286
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
sysfs interface to access ThinkPad's SMAPI functionality.
This package contains Linux kernel module.
%description -l pl
Interfejs sysfs do funkcjonalności SMAPI ThinkPadów.
Ten pakiet zawiera moduł jądra Linuksa.
%package -n kernel-smp-misc-tp_smapi
Summary: Linux SMP driver for tp_smapi
Summary(pl): Sterownik dla Linuksa SMP do tp_smapi
Release: %{_rel}@%{_kernel_ver_str}
Group: Base/Kernel
Requires(post,postun): /sbin/depmod
%if %{with dist_kernel}
%requires_releq_kernel_smp
Requires(postun): %releq_kernel_smp
%endif
%description -n kernel-smp-misc-tp_smapi
sysfs interface to access ThinkPad's SMAPI functionality.
This package contains Linux SMP module.
%description -n kernel-smp-misc-tp_smapi -l pl
Interfejs sysfs do funkcjonalności SMAPI ThinkPadów.
Ten pakiet zawiera moduł jądra Linuksa SMP.
%prep
%setup -q -n tp_smapi-%{version}
%build
# kernel module(s)
for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
exit 1
fi
install -d o/include/linux
ln -sf %{_kernelsrcdir}/config-$cfg o/.config
ln -sf %{_kernelsrcdir}/Module.symvers-$cfg o/Module.symvers
ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h o/include/linux/autoconf.h
%if %{with dist_kernel}
%{__make} -C %{_kernelsrcdir} O=$PWD/o prepare scripts
%else
install -d o/include/config
touch o/include/config/MARKER
ln -sf %{_kernelsrcdir}/scripts o/scripts
%endif
#
# patching/creating makefile(s) (optional)
#
%{__make} -C %{_kernelsrcdir} \
TP_VER="%{version}" \
CFLAGS="%{rpmcflags} -Iinclude/" \
RCS_FIND_IGNORE="-name '*.ko' -o" \
SYSSRC=%{_kernelsrcdir} \
SYSOUT=$PWD/o \
M=$PWD O=$PWD/o \
%{?with_verbose:V=1}
%{__make} -C %{_kernelsrcdir} modules \
CFLAGS="%{rpmcflags} -Iinclude/" \
CC="%{__cc}" CPP="%{__cpp}" \
SYSSRC=%{_kernelsrcdir} \
SYSOUT=$PWD/o \
M=$PWD O=$PWD/o \
%{?with_verbose:V=1}
mv tp_smapi{,-$cfg}.ko
done
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc
install tp_smapi-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
$RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/tp_smapi.ko
%if %{with smp} && %{with dist_kernel}
install tp_smapi-smp.ko \
$RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/tp_smapi.ko
%endif
%clean
rm -rf $RPM_BUILD_ROOT
%post -n kernel-misc-tp_smapi
%depmod %{_kernel_ver}
%postun -n kernel-misc-tp_smapi
%depmod %{_kernel_ver}
%post -n kernel-smp-misc-tp_smapi
%depmod %{_kernel_ver}smp
%postun -n kernel-smp-misc-tp_smapi
%depmod %{_kernel_ver}smp
%files -n kernel-misc-tp_smapi
%defattr(644,root,root,755)
/lib/modules/%{_kernel_ver}/misc/*.ko*
%if %{with smp} && %{with dist_kernel}
%files -n kernel-smp-misc-tp_smapi
%defattr(644,root,root,755)
/lib/modules/%{_kernel_ver}smp/misc/*.ko*
%endif
|