summaryrefslogtreecommitdiff
path: root/slmodem.spec
blob: 6e8ce214316cca320713ce4465310e6a2c3574f4 (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
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
# NOTE: no SMP drivers for now - I don't know if these binaries would work?
# TODO: test it on SMP and add SMP modules or update above comment
#
# Conditional build:
%bcond_without	dist_kernel	# without kernel from distribution
%bcond_without	kernel		# don't build kernel modules
%bcond_without	smp		# don't build SMP module
%bcond_without	userspace	# don't build userspace module
%bcond_with	verbose		# verbose build (V=1)

%if !%{with dist_kernel}
%undefine with_smp
%endif

%define _snap	20061021

#
%define	rel	0.%{_snap}.1
Summary:	Smart Link soft modem drivers
Summary(de):	Smart Link Software Modem Treiber
Summary(pl):	Sterowniki do modemów programowych Smart Link
Name:		slmodem
Version:	2.9.11
Release:	%{rel}
License:	BSD almost without source
Group:		Base/Kernel
Source0:	http://linmodems.technion.ac.il/packages/smartlink/%{name}-%{version}-%{_snap}.tar.gz
# Source0-md5:	8e1858b0a6d16fce73966759732986ab
Source1:	%{name}.init
Source2:	%{name}.sysconfig
URL:		http://www.smlink.com/
BuildRequires:	%{kgcc_package}
%{?with_dist_kernel:BuildRequires:	kernel-module-build}
BuildRequires:	rpmbuild(macros) >= 1.330
Requires(post,preun):	/sbin/chkconfig
Requires:	rc-scripts
ExclusiveArch:	%{ix86}
BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)

%description
Smart Link soft modem drivers.

%description -l de
Smart Link Software Modem Treiber.

%description -l pl
Sterowniki do modemów programowych Smart Link.

%package -n kernel-char-slmodem-amr
Summary:	Linux kernel driver for Smart Link soft modem AMR/PCI component
Summary(de):	Linux Kernel Treiber für Smart Link AMR/PCI Software Modems
Summary(pl):	Sterownik j±dra Linuksa dla elementu AMR/PCI modemów programowych Smart Link
Release:	%{rel}@%{_kernel_ver_str}
Group:		Base/Kernel
%{?with_dist_kernel:%requires_releq_kernel_up}
Requires(post,postun):	/sbin/depmod

%description -n kernel-char-slmodem-amr
Linux kernel drivers for Smart Link soft modem. This package contains
driver for HAMR5600 based AMR/CNR/MDC/ACR modem cards and SmartPCI56,
SmartPCI561 based PCI modem cards.

%description -n kernel-char-slmodem-amr -l de
Linux Kernel Treiber für Smart Link Software Modems. Dieses Packet
enthält Treiber für HAMR5600 AMR/CNR/MDC/ACR basierende Modems und
für SmartPCI56, SmartPCI561 PCI basierende Modems.

%description -n kernel-char-slmodem-amr -l pl
Sterowniki j±dra Linuksa dla modemów programowych Smart Link. Ten
pakiet zawiera sterownik do opartych na HAMR5600 kart modemowych
AMR/CNR/MDC/ACR oraz kart PCI SmartPCI56 i SmartPCI561.

%package -n kernel-char-slmodem-usb
Summary:	Linux kernel driver for Smart Link soft modem USB component
Summary(de):	Linux Kernel Trebier für Smart Link USB Software Modems
Summary(pl):	Sterownik j±dra Linuksa dla elementu USB modemów programowych Smart Link
Release:	%{rel}@%{_kernel_ver_str}
Group:		Base/Kernel
%{?with_dist_kernel:%requires_releq_kernel_up}
Requires(post,postun):	/sbin/depmod

%description -n kernel-char-slmodem-usb
Linux kernel drivers for Smart Link soft modem. This package contains
driver for SmartUSB56 based USB modem.

%description -n kernel-char-slmodem-usb -l de
Linux Kernel Treiber für Smart Link Software Modems. Dieses Packet
enthält Treiber für SmartUSB56 basierende Modems.

%description -n kernel-char-slmodem-usb -l pl
Sterowniki j±dra Linuksa dla modemów programowych Smart Link. Ten
pakiet zawiera sterownik dla modemów USB opartych na SmartUSB56.

%package -n kernel-smp-char-slmodem-amr
Summary:	Linux kernel driver for Smart Link soft modem AMR/PCI component (SMP)
Summary(de):	Linux Kernel Treiber für Smart Link AMR/PCI Software Modems (SMP)
Summary(pl):	Sterownik j±dra Linuksa dla elementu AMR/PCI modemów programowych Smart Link (SMP)
Release:	%{rel}@%{_kernel_ver_str}
Group:		Base/Kernel
%{?with_dist_kernel:%requires_releq_kernel_smp}
Requires(post,postun):	/sbin/depmod

%description -n kernel-smp-char-slmodem-amr
Linux kernel drivers for Smart Link soft modem. This package contains
driver for HAMR5600 based AMR/CNR/MDC/ACR modem cards and SmartPCI56,
SmartPCI561 based PCI modem cards. SMP kernels.

%description -n kernel-smp-char-slmodem-amr -l de
Linux Kernel Treiber für Smart Link Software Modems. Dieses Packet
enthält Treiber für HAMR5600 AMR/CNR/MDC/ACR basierende Modems und
für SmartPCI56, SmartPCI561 PCI basierende Modems. SMP Kernel Treiber.

%description -n kernel-smp-char-slmodem-amr -l pl
Sterowniki j±dra Linuksa dla modemów programowych Smart Link. Ten
pakiet zawiera sterownik do opartych na HAMR5600 kart modemowych
AMR/CNR/MDC/ACR oraz kart PCI SmartPCI56 i SmartPCI561. J±dra SMP.

%package -n kernel-smp-char-slmodem-usb
Summary:	Linux kernel driver for Smart Link soft modem USB component (SMP)
Summary(de):	Linux Kernel Trebier für Smart Link USB Software Modems (SMP)
Summary(pl):	Sterownik j±dra Linuksa dla elementu USB modemów programowych Smart Link (SMP)
Release:	%{rel}@%{_kernel_ver_str}
Group:		Base/Kernel
%{?with_dist_kernel:%requires_releq_kernel_smp}
Requires(post,postun):	/sbin/depmod

%description -n kernel-smp-char-slmodem-usb
Linux kernel drivers for Smart Link soft modem. This package contains
driver for SmartUSB56 based USB modem. SMP kernels.

%description -n kernel-smp-char-slmodem-usb -l de
Linux Kernel Treiber für Smart Link Software Modems. Dieses Packet
enthält Treiber für SmartUSB56 basierende Modems. SMP Kernel Treiber.

%description -n kernel-smp-char-slmodem-usb -l pl
Sterowniki j±dra Linuksa dla modemów programowych Smart Link. Ten
pakiet zawiera sterownik dla modemów USB opartych na SmartUSB56. J±dra
SMP.

%prep
%setup -q -n %{name}-%{version}-%{_snap}

%build
cd drivers
mv amrlibs.o ..
ln -s ../amrlibs.o amrlibs.o

%if %{with kernel}
%build_kernel_modules -m slamr,slusb
%endif

%if %{with userspace}
%{__make} -C ../modem \
	CC="%{__cc}"
%endif

%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig}
install -d $RPM_BUILD_ROOT{%{_sbindir},%{_var}/lib/%{name}}

%if %{with userspace}
install modem/slmodemd	 $RPM_BUILD_ROOT%{_sbindir}
install modem/modem_test $RPM_BUILD_ROOT%{_sbindir}/slmodem-test
install %{SOURCE1}	 $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
install %{SOURCE2}	 $RPM_BUILD_ROOT/etc/sysconfig/%{name}
%endif

%if %{with kernel}
%install_kernel_modules -m drivers/slamr,drivers/slusb -d misc
%endif

%clean
rm -rf $RPM_BUILD_ROOT

%post -n kernel-char-slmodem-amr
%depmod %{_kernel_ver}

%postun -n kernel-char-slmodem-amr
%depmod %{_kernel_ver}

%post -n kernel-char-slmodem-usb
%depmod %{_kernel_ver}

%postun -n kernel-char-slmodem-usb
%depmod %{_kernel_ver}

%post -n kernel-smp-char-slmodem-amr
%depmod %{_kernel_ver}smp

%postun -n kernel-smp-char-slmodem-amr
%depmod %{_kernel_ver}smp

%post -n kernel-smp-char-slmodem-usb
%depmod %{_kernel_ver}smp

%postun -n kernel-smp-char-slmodem-usb
%depmod %{_kernel_ver}smp

%post
/sbin/chkconfig --add %{name}
%service %{name} restart

%preun
if [ "$1" = "0" ]; then
	%service %{name} stop
	/sbin/chkconfig --del %{name}
fi

%if %{with userspace}
%files
%defattr(644,root,root,755)
%doc COPYING README* Changes
%attr(755,root,root) %{_sbindir}/*
%attr(754,root,root) /etc/rc.d/init.d/%{name}
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
%dir %{_var}/lib/%{name}
%endif

%if %{with kernel}
%files -n kernel-char-slmodem-amr
%defattr(644,root,root,755)
/lib/modules/%{_kernel_ver}/misc/slamr.*o*

%files -n kernel-char-slmodem-usb
%defattr(644,root,root,755)
/lib/modules/%{_kernel_ver}/misc/slusb.*o*

%if %{with smp}
%files -n kernel-smp-char-slmodem-amr
%defattr(644,root,root,755)
/lib/modules/%{_kernel_ver}smp/misc/slamr.*o*

%files -n kernel-smp-char-slmodem-usb
%defattr(644,root,root,755)
/lib/modules/%{_kernel_ver}smp/misc/slusb.*o*
%endif
%endif