]> git.pld-linux.org Git - packages/eagle-usb.git/blob - eagle-usb.spec
- rel 2
[packages/eagle-usb.git] / eagle-usb.spec
1 #
2 # TODO:
3 #               - utils/scripts, eagleconfig
4 #
5 # Conditional build:
6 %bcond_without  dist_kernel     # without distribution kernel
7 %bcond_without  kernel          # don't build kernel modules
8 %bcond_without  smp             # don't build SMP module
9 %bcond_without  userspace       # don't build userspace tools
10 %bcond_with     verbose         # verbose build (V=1)
11 #
12 Summary:        Linux driver for the Eagle 8051 Analog (sagem f@st 800/840/908/...) modems
13 Summary(pl):    Sterownik dla Linuksa do modemów Eagle 8051 Analog (sagem f@st 800/840/908/...)
14 Name:           eagle-usb
15 Version:        2.2.0
16 %define         _rel    2
17 Release:        %{_rel}
18 License:        GPL v2
19 Group:          Base/Kernel
20 Source0:        http://download.gna.org/eagleusb/eagle-usb-2.2.0/%{name}-%{version}.tar.bz2
21 # Source0-md5:  ad3d985b324b97de736f1efb723deb5d
22 Patch1:         %{name}-eu_types.patch
23 Patch2:         %{name}-vpivci-info.patch
24 Patch3:         %{name}-opt.patch
25 Patch4:         %{name}-signal.patch
26 Patch5:         %{name}-usb_kill_urb.patch
27 URL:            http://gna.org/projects/eagleusb/
28 BuildRequires:  autoconf
29 BuildRequires:  automake
30 %if %{with kernel}
31 %{?with_dist_kernel:BuildRequires:      kernel-module-build >= 2.6.7}
32 BuildRequires:  rpmbuild(macros) >= 1.153
33 %endif
34 BuildRequires:  net-tools
35 BuildRequires:  SysVinit
36 Requires:       ppp >= 2.4.1
37 Requires:       kernel-usb-eagle = %{version}-%{_rel}@%{_kernel_ver_str}
38 Conflicts:      eagle-usb24
39 Obsoletes:      eagle-utils
40 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
41
42 %description
43 Linux driver for the Eagle 8051 Analog (sagem f@st 800/840/908/...)
44 modems.
45
46 %description -l pl
47 Sterownik dla Linuksa do modemów Eagle 8051 Analog (sagem f@st
48 800/840/908/...).
49
50 %package -n kernel-usb-eagle
51 Summary:        Linux driver for the Eagle 8051 Analog (sagem f@st 800/840/908/...) modems
52 Summary(pl):    Sterownik dla Linuksa do modemów Eagle 8051 Analog (sagem f@st 800/840/908/...)
53 Release:        %{_rel}@%{_kernel_ver_str}
54 Group:          Base/Kernel
55 %{?with_dist_kernel:%requires_releq_kernel_up}
56 Requires(post,postun):  /sbin/depmod
57 Obsoletes:      kernel-usb-fast800
58
59 %description -n kernel-usb-eagle
60 Linux driver for the Eagle 8051 Analog (sagem f@st 800/840/908/...)
61 modems.
62
63 %description -n kernel-usb-eagle -l pl
64 Sterownik dla Linuksa do modemów Eagle 8051 Analog (sagem f@st
65 800/840/908/...).
66
67 %package -n kernel-smp-usb-eagle
68 Summary:        Linux SMP driver for the Eagle 8051 Analog (sagem f@st 800/840/908/...) modems
69 Summary(pl):    Sterownik dla Linuksa SMP do modemów Eagle 8051 Analog (sagem f@st 800/840/908/...)
70 Release:        %{_rel}@%{_kernel_ver_str}
71 Group:          Base/Kernel
72 %{?with_dist_kernel:%requires_releq_kernel_smp}
73 Requires(post,postun):  /sbin/depmod
74 Provides:       kernel-usb-eagle = %{version}-%{_rel}@%{_kernel_ver_str}
75 Obsoletes:      kernel-smp-usb-fast800
76
77 %description -n kernel-smp-usb-eagle
78 Linux SMP driver for the Eagle 8051 Analog (sagem f@st
79 800/840/908/...) modems.
80
81 %description -n kernel-smp-usb-eagle -l pl
82 Sterownik dla Linuksa SMP do modemów Eagle 8051 Analog (sagem f@st
83 800/840/908/...).
84
85 %prep
86 %setup -q
87 %patch1 -p1
88 %patch2 -p1
89 %patch3 -p1
90 %patch4 -p1
91 %patch5 -p1
92
93 %ifnarch %{ix86}
94 # invalid not only for ppc
95 sed -i 's/-mpreferred-stack-boundary=2//' driver/Makefile
96 %endif
97
98 %build
99 %if %{with kernel}
100 cd driver
101 for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
102         if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
103                 exit 1
104         fi
105         rm -rf include
106         install -d include/{config,linux}
107         ln -sf %{_kernelsrcdir}/config-$cfg .config
108         ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h
109         ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
110         touch include/config/MARKER
111         %{__make} -C %{_kernelsrcdir} clean \
112                 RCS_FIND_IGNORE="-name '*.ko' -o" \
113                 M=$PWD O=$PWD \
114                 %{?with_verbose:V=1}
115         %{__make} -C %{_kernelsrcdir} modules \
116                 M=$PWD O=$PWD \
117                 %{?with_verbose:V=1}
118         mv eagle-usb{,-$cfg}.ko
119 done
120 cd -
121 %endif
122
123 %if %{with userspace}
124 %{__aclocal} -I .
125 %{__autoconf}
126 %configure \
127         --with-dsp-dir=%{_datadir}/misc \
128         --with-kernel-src=%{_kernelsrcdir}
129 %{__make} -C driver/firmware \
130         OPT="%{rpmcflags}"
131 %{__make} -C driver/user \
132         OPT="%{rpmcflags}"
133 %{__make} -C pppoa \
134         OPT="%{rpmcflags}"
135 %endif
136
137 %install
138 rm -rf $RPM_BUILD_ROOT
139
140 %if %{with kernel}
141 cd driver
142 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/kernel/drivers/usb/net
143 install eagle-usb-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
144         $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/kernel/drivers/usb/net/eagle-usb.ko
145 %if %{with smp} && %{with dist_kernel}
146 install eagle-usb-smp.ko \
147         $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/usb/net/eagle-usb.ko
148 %endif
149 cd -
150 %endif
151
152 %if %{with userspace}
153 install -d $RPM_BUILD_ROOT%{_sysconfdir}/{analog,hotplug,ppp} \
154         $RPM_BUILD_ROOT{%{_sbindir},%{_libdir}/hotplug/eagle}
155 %{__make} -C driver/firmware install \
156         EU_DSP_DIR=$RPM_BUILD_ROOT%{_datadir}/misc
157 %{__make} -C driver/user install \
158         EU_DIR=$RPM_BUILD_ROOT%{_sysconfdir}/eagle-usb \
159         EU_SCRIPT_DIR=$RPM_BUILD_ROOT%{_sysconfdir}/eagle-usb \
160         SBINDIR=$RPM_BUILD_ROOT%{_sbindir}
161 mv $RPM_BUILD_ROOT%{_sysconfdir}/eagle-usb/eagle-usb.conf{.template,}
162 %{__make} -C pppoa install \
163         SBINDIR=$RPM_BUILD_ROOT%{_sbindir}
164 %endif
165
166 %clean
167 rm -rf $RPM_BUILD_ROOT
168
169 %post -n kernel-usb-eagle
170 %depmod %{_kernel_ver}
171
172 %postun -n kernel-usb-eagle
173 %depmod %{_kernel_ver}
174
175 %post -n kernel-smp-usb-eagle
176 %depmod %{_kernel_ver}smp
177
178 %postun -n kernel-smp-usb-eagle
179 %depmod %{_kernel_ver}smp
180
181 %if %{with userspace}
182 %files
183 %defattr(644,root,root,755)
184 %doc README
185 %dir %{_sysconfdir}/eagle-usb
186 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/eagle-usb/eagle-usb.conf
187 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/eagle-usb/*.txt
188 %attr(755,root,root) %{_sbindir}/*
189 %{_datadir}/misc/*.bin
190 %endif
191
192 %if %{with kernel}
193 %files -n kernel-usb-eagle
194 %defattr(644,root,root,755)
195 /lib/modules/%{_kernel_ver}/kernel/drivers/usb/net/*.ko*
196
197 %if %{with smp} && %{with dist_kernel}
198 %files -n kernel-smp-usb-eagle
199 %defattr(644,root,root,755)
200 /lib/modules/%{_kernel_ver}smp/kernel/drivers/usb/net/*.ko*
201 %endif
202 %endif
This page took 0.050624 seconds and 3 git commands to generate.