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