]> git.pld-linux.org Git - packages/eagle-usb.git/blob - eagle-usb.spec
- release 4
[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_without  cmvs
11 %bcond_with     verbose         # verbose build (V=1)
12 %bcond_with     grsec_kernel    # build for kernel-grsecurity
13 #
14 %if %{with kernel} && %{with dist_kernel} && %{with grsec_kernel}
15 %define alt_kernel      grsecurity
16 %endif
17 #
18 %ifarch sparc
19 # no USB in sparc(32) kernel; just build userspace to use with sparc64 kernel
20 %undefine       with_kernel
21 %endif
22 %define         _rel    4
23 Summary:        Linux driver for the Eagle 8051 Analog (sagem f@st 800/840/908/...) modems
24 Summary(pl):    Sterownik dla Linuksa do modemów Eagle 8051 Analog (sagem f@st 800/840/908/...)
25 Name:           eagle-usb
26 Version:        2.3.3
27 Release:        %{_rel}
28 License:        GPL v2
29 Group:          Base/Kernel
30 Source0:        http://download.gna.org/eagleusb/eagle-usb-2.3.0/%{name}-%{version}.tar.bz2
31 # Source0-md5:  6c961a5022274aff870e49e2f0f922fc
32 Patch1:         %{name}-eu_types.patch
33 Patch2:         %{name}-vpivci-info.patch
34 Patch3:         %{name}-opt.patch
35 Patch4:         %{name}-signal.patch
36 Patch5:         %{name}-usb_kill_urb.patch
37 Patch6:         %{name}-kernel_sources_checking_hack.patch
38 # Workaround for obsolete kernel API. To be removed...
39 Patch7:         %{name}-spin_lock_unlocked.patch
40 Patch8:         %{name}-kill_owner.patch
41 Patch9:         %{name}-module_param.patch
42 URL:            http://gna.org/projects/eagleusb/
43 BuildRequires:  autoconf
44 BuildRequires:  automake
45 %if %{with kernel}
46 %{?with_dist_kernel:BuildRequires:      kernel%{_alt_kernel}-module-build >= 3:2.6.7}
47 BuildRequires:  rpmbuild(macros) >= 1.330
48 %endif
49 BuildRequires:  SysVinit
50 BuildRequires:  net-tools
51 Requires:       ppp >= 2.4.1
52 Obsoletes:      eagle-utils
53 Conflicts:      eagle-usb24
54 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
55
56 %description
57 Linux driver for the Eagle 8051 Analog (sagem f@st 800/840/908/...)
58 modems.
59
60 %description -l pl
61 Sterownik dla Linuksa do modemów Eagle 8051 Analog (sagem f@st
62 800/840/908/...).
63
64 %package -n kernel%{_alt_kernel}-usb-eagle
65 Summary:        Linux driver for the Eagle 8051 Analog (sagem f@st 800/840/908/...) modems
66 Summary(pl):    Sterownik dla Linuksa do modemów Eagle 8051 Analog (sagem f@st 800/840/908/...)
67 Release:        %{_rel}@%{_kernel_ver_str}
68 Group:          Base/Kernel
69 %{?with_dist_kernel:%requires_releq_kernel_up}
70 Requires(post,postun):  /sbin/depmod
71 Provides:       kernel-usb(eagle) = %{version}-%{_rel}
72 %if "%{_alt_kernel}" == "%{_nil}"
73 Obsoletes:      kernel-usb-fast800
74 %endif
75
76 %description -n kernel%{_alt_kernel}-usb-eagle
77 Linux driver for the Eagle 8051 Analog (sagem f@st 800/840/908/...)
78 modems.
79
80 %description -n kernel%{_alt_kernel}-usb-eagle -l pl
81 Sterownik dla Linuksa do modemów Eagle 8051 Analog (sagem f@st
82 800/840/908/...).
83
84 %package -n kernel%{_alt_kernel}-smp-usb-eagle
85 Summary:        Linux SMP driver for the Eagle 8051 Analog (sagem f@st 800/840/908/...) modems
86 Summary(pl):    Sterownik dla Linuksa SMP do modemów Eagle 8051 Analog (sagem f@st 800/840/908/...)
87 Release:        %{_rel}@%{_kernel_ver_str}
88 Group:          Base/Kernel
89 %{?with_dist_kernel:%requires_releq_kernel_smp}
90 Requires(post,postun):  /sbin/depmod
91 Provides:       kernel-usb(eagle) = %{version}-%{_rel}
92 %if "%{_alt_kernel}" == "%{_nil}"
93 Obsoletes:      kernel-smp-usb-fast800
94 %endif
95
96 %description -n kernel%{_alt_kernel}-smp-usb-eagle
97 Linux SMP driver for the Eagle 8051 Analog (sagem f@st
98 800/840/908/...) modems.
99
100 %description -n kernel%{_alt_kernel}-smp-usb-eagle -l pl
101 Sterownik dla Linuksa SMP do modemów Eagle 8051 Analog (sagem f@st
102 800/840/908/...).
103
104 %prep
105 %setup -q
106 %patch1 -p1
107 %patch2 -p1
108 %patch3 -p1
109 %patch4 -p1
110 %patch5 -p1
111 %patch6 -p1
112 %patch7 -p1
113 %patch8 -p1
114 %patch9 -p1
115
116 %ifnarch %{ix86}
117 # invalid not only for ppc
118 sed -i 's/-mpreferred-stack-boundary=2//' driver/Makefile
119 %endif
120
121 %build
122 %if %{with kernel}
123 %build_kernel_modules -C driver -m eagle-usb \
124         USE_CMVS=%{?with_cmvs:1}%{!?with_cmvs:0}
125 %endif
126
127 %if %{with userspace}
128 %{__aclocal} -I .
129 %{__autoconf}
130 %configure \
131         %{!?with_cmvs:--disable-cmvs} \
132         --with-dsp-dir=%{_datadir}/misc
133
134 %{__make} -C driver/firmware \
135         CC="%{__cc}" \
136         OPT="%{rpmcflags}"
137 %{__make} -C driver/user \
138         CC="%{__cc}" \
139         OPT="%{rpmcflags}"
140 %{__make} -C pppoa \
141         CC="%{__cc}" \
142         OPT="%{rpmcflags}"
143 %endif
144
145 %install
146 rm -rf $RPM_BUILD_ROOT
147
148 %if %{with kernel}
149 %install_kernel_modules -m driver/eagle-usb -d kernel/drivers/usb/net
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%{_alt_kernel}-usb-eagle
170 %depmod %{_kernel_ver}
171
172 %postun -n kernel%{_alt_kernel}-usb-eagle
173 %depmod %{_kernel_ver}
174
175 %post -n kernel%{_alt_kernel}-smp-usb-eagle
176 %depmod %{_kernel_ver}smp
177
178 %postun -n kernel%{_alt_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%{_alt_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%{_alt_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.035224 seconds and 3 git commands to generate.