3 %bcond_without dist_kernel # allow non-distribution kernel
4 %bcond_without kernel # don't build kernel modules
5 %bcond_without smp # don't build SMP module
6 %bcond_without userspace # don't build userspace module
7 %bcond_with verbose # verbose build (V=1)
13 Summary: Broadcom BCM43xx series driver for Linux
14 Summary(pl): Sterownik do kart Broadcom BCM43xx
17 %define _snap 20060124
19 Release: 0.%{_snap}.%{_rel}
22 Source0: http://ftp.berlios.de/pub/bcm43xx/snapshots/bcm43xx/%{name}-%{_snap}.tar.bz2
23 # Source0-md5: 35440bb5b3ebcb08dc45aefd6b0ac18b
24 Source1: http://ftp.berlios.de/pub/bcm43xx/snapshots/fwcutter/%{name}-fwcutter-%{_snap}.tar.bz2
25 # Source1-md5: 31590bf53caaa8e2407eb01a42129af5
26 Patch0: %{name}-local_headers.patch
27 URL: http://bcm43xx.berlios.de/
29 %{?with_dist_kernel:BuildRequires: kernel-module-build >= 2.6.7}
30 BuildRequires: rpmbuild(macros) >= 1.217
31 BuildRequires: softmac-devel
33 Requires(post,postun): /sbin/depmod
34 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
37 This package contains the Linux driver for the Broadcom BCM43xx
38 Ethernet network adapter.
41 Pakiet zawiera sterownik dla Linuksa do kart sieciowych Broadcom
44 %package -n kernel-net-bcm43xx
45 Summary: Broadcom BCM43xx driver for Linux
46 Summary(pl): Sterownik do karty Broadcom BCM43xx dla Linuksa
47 Release: %{_rel}@%{_kernel_ver_str}
49 Requires(post,postun): /sbin/depmod
50 %if %{with dist_kernel}
51 %requires_releq_kernel_up
52 Requires(postun): %releq_kernel_up
55 %description -n kernel-net-bcm43xx
56 This package contains the Linux driver for the Broadcom BCM43xx
57 Ethernet network adapter.
59 %description -n kernel-net-bcm43xx -l pl
60 Pakiet zawiera sterownik dla Linuksa do kart sieciowych Broadcom
63 %package -n kernel-smp-net-bcm43xx
64 Summary: Broadcom BCM43xx driver for Linux SMP
65 Summary(pl): Sterownik do karty Broadcom BCM43xx dla Linuksa SMP
66 Release: %{_rel}@%{_kernel_ver_str}
68 Requires(post,postun): /sbin/depmod
69 %if %{with dist_kernel}
70 %requires_releq_kernel_smp
71 Requires(postun): %releq_kernel_smp
74 %description -n kernel-smp-net-bcm43xx
75 This package contains the Linux SMP driver for the Broadcom BCM43xx
76 series Ethernet Network Adapter.
78 %description -n kernel-smp-net-bcm43xx -l pl
79 Pakiet zawiera sterownik dla Linuksa SMP do kart sieciowych Broadcom
83 %setup -q -n %{name}-%{_snap} -a1 -a2
85 ln -s %{_includedir}/linux/softmac/net .
86 mv %{name}-fwcutter-%{_snap}/README README.fwcutter
91 %{__make} -C %{name}-fwcutter-%{_snap} \
92 CFLAGS="%{rpmcflags} -std=c99 -Wall -pedantic -D_BSD_SOURCE" \
97 for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
98 if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
102 install -d include/{linux,config}
103 ln -sf %{_kernelsrcdir}/config-$cfg .config
104 ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h
106 install -d include/asm
107 [ ! -d %{_kernelsrcdir}/include/asm-powerpc ] || ln -sf %{_kernelsrcdir}/include/asm-powerpc/* include/asm
108 [ ! -d %{_kernelsrcdir}/include/asm-%{_target_base_arch} ] || ln -snf %{_kernelsrcdir}/include/asm-%{_target_base_arch}/* include/asm
110 ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
112 ln -sf %{_kernelsrcdir}/Module.symvers-$cfg Module.symvers
113 touch include/config/MARKER
115 %{__make} -C %{_kernelsrcdir} clean \
116 RCS_FIND_IGNORE="-name '*.ko' -o" \
119 %{__make} -C %{_kernelsrcdir} modules \
120 CC="%{__cc}" CPP="%{__cpp}" \
124 mv bcm43xx{,-$cfg}.ko
129 rm -rf $RPM_BUILD_ROOT
131 %if %{with userspace}
132 install -d $RPM_BUILD_ROOT%{_bindir}
133 install %{name}-fwcutter-%{_snap}/fwcutter $RPM_BUILD_ROOT%{_bindir}
137 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/kernel/drivers/net
138 install bcm43xx-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
139 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/kernel/drivers/net/bcm43xx.ko
140 %if %{with smp} && %{with dist_kernel}
141 install bcm43xx-smp.ko \
142 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/net/bcm43xx.ko
147 rm -rf $RPM_BUILD_ROOT
149 %post -n kernel-net-bcm43xx
150 %depmod %{_kernel_ver}
152 %postun -n kernel-net-bcm43xx
153 %depmod %{_kernel_ver}
155 %post -n kernel-smp-net-bcm43xx
156 %depmod %{_kernel_ver}smp
158 %postun -n kernel-smp-net-bcm43xx
159 %depmod %{_kernel_ver}smp
161 %if %{with userspace}
163 %defattr(644,root,root,755)
164 %doc README README.fwcutter
165 %attr(755,root,root) %{_bindir}/fwcutter
169 %files -n kernel-net-bcm43xx
170 %defattr(644,root,root,755)
171 /lib/modules/%{_kernel_ver}/kernel/drivers/net/bcm43xx.ko*
173 %if %{with smp} && %{with dist_kernel}
174 %files -n kernel-smp-net-bcm43xx
175 %defattr(644,root,root,755)
176 /lib/modules/%{_kernel_ver}smp/kernel/drivers/net/bcm43xx.ko*