]>
Commit | Line | Data |
---|---|---|
37454a90 | 1 | # |
2 | # Conditional build: | |
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) | |
8 | # | |
9 | %ifarch sparc | |
10 | %undefine with_smp | |
11 | %endif | |
12 | # | |
13 | Summary: Broadcom BCM43xx series driver for Linux | |
14 | Summary(pl): Sterownik do kart Broadcom BCM43xx | |
15 | Name: bcm43xx | |
16 | Version: 0.0.1 | |
17 | %define _snap 20060120 | |
18 | %define _rel 0.1 | |
19 | Release: %{_rel} | |
20 | License: GPL v2 | |
21 | Group: Base/Kernel | |
22 | Source0: http://ftp.berlios.de/pub/bcm43xx/snapshots/bcm43xx/%{name}-%{_snap}.tar.bz2 | |
23 | # Source0-md5: 4294c8a1f8c9c0f3ea71c8262d016cad | |
131f6b58 | 24 | Source1: http://ftp.berlios.de/pub/bcm43xx/snapshots/fwcutter/%{name}-fwcutter-%{_snap}.tar.bz2 |
25 | # Source1-md5: bcf4c2cb4a53c3d2b9b2f3a737fd80fc | |
3cf44061 | 26 | Patch0: %{name}-local_headers.patch |
37454a90 | 27 | URL: http://bcm43xx.berlios.de/ |
28 | %if %{with kernel} | |
3cf44061 | 29 | %{?with_dist_kernel:BuildRequires: kernel-module-build >= 2.6.7} |
37454a90 | 30 | BuildRequires: rpmbuild(macros) >= 1.217 |
31 | BuildRequires: softmac-devel | |
32 | %endif | |
33 | Requires(post,postun): /sbin/depmod | |
34 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
35 | ||
36 | %description | |
37 | This package contains the Linux driver for the Broadcom BCM43xx | |
38 | Ethernet network adapter. | |
39 | ||
40 | %description -l pl | |
41 | Pakiet zawiera sterownik dla Linuksa do kart sieciowych Broadcom | |
42 | BCM43xx. | |
43 | ||
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} | |
48 | Group: Base/Kernel | |
49 | Requires(post,postun): /sbin/depmod | |
50 | %if %{with dist_kernel} | |
51 | %requires_releq_kernel_up | |
52 | Requires(postun): %releq_kernel_up | |
53 | %endif | |
54 | ||
55 | %description -n kernel-net-bcm43xx | |
56 | This package contains the Linux driver for the Broadcom BCM43xx | |
57 | Ethernet network adapter. | |
58 | ||
59 | %description -n kernel-net-bcm43xx -l pl | |
60 | Pakiet zawiera sterownik dla Linuksa do kart sieciowych Broadcom | |
61 | BCM43xx. | |
62 | ||
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} | |
67 | Group: Base/Kernel | |
68 | Requires(post,postun): /sbin/depmod | |
69 | %if %{with dist_kernel} | |
70 | %requires_releq_kernel_smp | |
71 | Requires(postun): %releq_kernel_smp | |
72 | %endif | |
73 | ||
74 | %description -n kernel-smp-net-bcm43xx | |
75 | This package contains the Linux SMP driver for the Broadcom BCM43xx | |
76 | series Ethernet Network Adapter. | |
77 | ||
78 | %description -n kernel-smp-net-bcm43xx -l pl | |
79 | Pakiet zawiera sterownik dla Linuksa SMP do kart sieciowych Broadcom | |
80 | BCM43xx. | |
81 | ||
82 | %prep | |
131f6b58 | 83 | %setup -q -n %{name}-%{_snap} -a1 |
3cf44061 | 84 | %patch0 -p1 |
37454a90 | 85 | cp -rf %{_usr}/src/softmac-include/net . |
131f6b58 | 86 | mv %{name}-fwcutter-%{_snap}/README README.fwcutter |
37454a90 | 87 | |
88 | %build | |
89 | ||
131f6b58 | 90 | %if %{with userspace} |
91 | %{__make} -C %{name}-fwcutter-%{_snap} \ | |
92 | CFLAGS="%{rpmcflags} -std=c99 -Wall -pedantic -D_BSD_SOURCE" \ | |
93 | CC="%{__cc}" | |
94 | %endif | |
95 | ||
37454a90 | 96 | %if %{with kernel} |
97 | for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do | |
98 | if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then | |
99 | exit 1 | |
100 | fi | |
101 | rm -rf include | |
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 | |
105 | %ifarch ppc ppc64 | |
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 | |
109 | %else | |
110 | ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm | |
111 | %endif | |
112 | ||
d6514c5e | 113 | cp %{_kernelsrcdir}/Module.symvers-$cfg Module.symvers |
114 | cat %{_usr}/src/softmac-include/symvers.add >> Module.symvers | |
37454a90 | 115 | touch include/config/MARKER |
116 | ||
117 | %{__make} -C %{_kernelsrcdir} clean \ | |
118 | RCS_FIND_IGNORE="-name '*.ko' -o" \ | |
119 | M=$PWD O=$PWD \ | |
120 | %{?with_verbose:V=1} | |
121 | %{__make} -C %{_kernelsrcdir} modules \ | |
122 | CC="%{__cc}" CPP="%{__cpp}" \ | |
123 | M=$PWD O=$PWD \ | |
124 | %{?with_verbose:V=1} | |
125 | ||
126 | mv bcm43xx{,-$cfg}.ko | |
127 | done | |
128 | %endif | |
129 | ||
130 | %install | |
131 | rm -rf $RPM_BUILD_ROOT | |
132 | ||
131f6b58 | 133 | %if %{with userspace} |
134 | install -d $RPM_BUILD_ROOT%{_bindir} | |
135 | install %{name}-fwcutter-%{_snap}/fwcutter $RPM_BUILD_ROOT%{_bindir} | |
136 | %endif | |
137 | ||
37454a90 | 138 | %if %{with kernel} |
139 | install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/kernel/drivers/net | |
140 | install bcm43xx-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \ | |
141 | $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/kernel/drivers/net/bcm43xx.ko | |
142 | %if %{with smp} && %{with dist_kernel} | |
143 | install bcm43xx-smp.ko \ | |
144 | $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/net/bcm43xx.ko | |
145 | %endif | |
146 | %endif | |
147 | ||
148 | %clean | |
149 | rm -rf $RPM_BUILD_ROOT | |
150 | ||
151 | %post -n kernel-net-bcm43xx | |
152 | %depmod %{_kernel_ver} | |
153 | ||
154 | %postun -n kernel-net-bcm43xx | |
155 | %depmod %{_kernel_ver} | |
156 | ||
157 | %post -n kernel-smp-net-bcm43xx | |
158 | %depmod %{_kernel_ver}smp | |
159 | ||
160 | %postun -n kernel-smp-net-bcm43xx | |
161 | %depmod %{_kernel_ver}smp | |
162 | ||
163 | %if %{with userspace} | |
164 | %files | |
165 | %defattr(644,root,root,755) | |
131f6b58 | 166 | %doc README README.fwcutter |
167 | %{_bindir}/fwcutter | |
37454a90 | 168 | %endif |
169 | ||
170 | %if %{with kernel} | |
171 | %files -n kernel-net-bcm43xx | |
172 | %defattr(644,root,root,755) | |
173 | /lib/modules/%{_kernel_ver}/kernel/drivers/net/bcm43xx.ko* | |
174 | ||
175 | %if %{with smp} && %{with dist_kernel} | |
176 | %files -n kernel-smp-net-bcm43xx | |
177 | %defattr(644,root,root,755) | |
178 | /lib/modules/%{_kernel_ver}smp/kernel/drivers/net/bcm43xx.ko* | |
179 | %endif | |
180 | %endif |