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)
9 Summary: Linux driver for the Broadcom's NetXtreme BCM57xx Network Interface Cards
10 Summary(pl): Sterownik dla Linuksa do kart sieciowych Broadcom NetXtreme BCM57xx
17 # extracted from http://www.broadcom.com/docs/driver_download/570x/linux-7.3.5.zip
18 Source0: %{name}-%{version}.tar.gz
19 # Source0-md5: 28678cb977e24b27e40fdf27a5237a4d
20 Source1: %{name}-Makefile
21 URL: http://www.broadcom.com/drivers/downloaddrivers.php
23 %{?with_dist_kernel:BuildRequires: kernel-headers > 2.6.7}
24 BuildRequires: rpmbuild(macros) >= 1.153
26 Requires(post,postun): /sbin/depmod
27 Requires: kernel-net(bcm5700)
28 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
31 This package contains the Linux driver for the Broadcom's NetXtreme BCM57xx Network Interface Cards.
34 Pakiet zawiera sterownik dla Linuksa do kart sieciowych Broadcom BCM57xx.
36 %package -n kernel-net-bcm5700
37 Summary: Linux SMP driver for the Broadcom's NetXtreme BCM57xx Network Interface Cards
38 Summary(pl): Sterownik dla Linuksa SMP do kart sieciowych Broadcom BCM57xx
39 Release: %{_rel}@%{_kernel_ver_str}
41 %{?with_dist_kernel:%requires_releq_kernel_up}
42 Requires(post,postun): /sbin/depmod
43 %{?with_dist_kernel:Requires(postun): kernel}
44 Provides: kernel-net(bcm5700)
46 %description -n kernel-net-bcm5700
47 Linux driver for the Broadcom's NetXtreme BCM57xx Network Interface Cards.
49 %description -n kernel-net-bcm5700 -l pl
50 Sterownik dla Linuksa do kart sieciowych Broadcom BCM57xx.
52 %package -n kernel-smp-net-bcm5700
53 Summary: Linux SMP driver for the Broadcom's NetXtreme BCM57xx Network Interface Cards
54 Summary(pl): Sterownik dla Linuksa SMP do kart sieciowych Broadcom BCM57xx
55 Release: %{_rel}@%{_kernel_ver_str}
57 %{?with_dist_kernel:%requires_releq_kernel_smp}
58 Requires(post,postun): /sbin/depmod
59 %{?with_dist_kernel:Requires(postun): kernel-smp}
60 Provides: kernel-net(bcm5700)
62 %description -n kernel-smp-net-bcm5700
63 Linux SMP driver for the Broadcom's NetXtreme BCM57xx Network Interface Cards.
65 %description -n kernel-smp-net-bcm5700 -l pl
66 Sterownik dla Linuksa SMP do kart sieciowych Broadcom BCM57xx.
75 for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
76 if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
80 install -d include/{linux,config}
81 ln -sf %{_kernelsrcdir}/config-$cfg .config
82 ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h
83 ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
84 touch include/config/MARKER
86 install %{SOURCE1} Makefile
88 %{__make} -C %{_kernelsrcdir} clean \
89 RCS_FIND_IGNORE="-name '*.ko' -o" \
92 %{__make} -C %{_kernelsrcdir} modules \
93 CC="%{__cc}" CPP="%{__cpp}" \
96 EXTRA_CFLAGS="-msoft-float" \
100 mv bcm5700{,-$cfg}.ko
105 rm -rf $RPM_BUILD_ROOT
108 %if %{with userspace}
109 install -d $RPM_BUILD_ROOT%{_mandir}/man4
110 install bcm5700.4 $RPM_BUILD_ROOT%{_mandir}/man4
114 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/kernel/drivers/net
116 install bcm5700-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
117 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/kernel/drivers/net/bcm5700.ko
118 %if %{with smp} && %{with dist_kernel}
119 install bcm5700-smp.ko \
120 $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/net/bcm5700.ko
125 rm -rf $RPM_BUILD_ROOT
127 %post -n kernel-net-bcm5700
128 %depmod %{_kernel_ver}
130 %postun -n kernel-net-bcm5700
131 %depmod %{_kernel_ver}
133 %post -n kernel-smp-net-bcm5700
134 %depmod %{_kernel_ver}smp
136 %postun -n kernel-smp-net-bcm5700
137 %depmod %{_kernel_ver}smp
139 %if %{with userspace}
141 %defattr(644,root,root,755)
142 %doc README.TXT RELEASE.TXT
143 %{_mandir}/man4/bcm5700.*
147 %files -n kernel-net-bcm5700
148 %defattr(644,root,root,755)
149 /lib/modules/%{_kernel_ver}/kernel/drivers/net/bcm5700.ko*
151 %if %{with smp} && %{with dist_kernel}
152 %files -n kernel-smp-net-bcm5700
153 %defattr(644,root,root,755)
154 /lib/modules/%{_kernel_ver}smp/kernel/drivers/net/bcm5700.ko*