]> git.pld-linux.org Git - packages/wl.git/blob - wl.spec
- rel 4
[packages/wl.git] / wl.spec
1 # Conditional build:
2 %bcond_without  kernel          # don't build kernel modules
3 %bcond_with     verbose         # verbose build (V=1)
4 %bcond_with     dkms            # build dkms package
5
6 # nothing to be placed to debuginfo package
7 %define         _enable_debug_packages  0
8
9 %define         rel     4
10 %define         pname   wl
11 %define         file_ver        %(echo %{version} | tr . _)
12 Summary:        Broadcom 802.11 a/b/g/n hybrid Linux networking device driver
13 Name:           %{pname}%{_alt_kernel}
14 Version:        6.30.223.248
15 Release:        %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}}
16 License:        other
17 Group:          Base/Kernel
18 Source0:        http://www.broadcom.com/docs/linux_sta/hybrid-v35-nodebug-pcoem-%{file_ver}.tar.gz
19 # Source0-md5:  e048154b3f4c7ad6bee36cab5b37486d
20 Source1:        http://www.broadcom.com/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-%{file_ver}.tar.gz
21 # Source1-md5:  0237917f75d121589ec16a44eac5f5b0
22 Source2:        http://www.broadcom.com/docs/linux_sta/README.txt
23 # Source2-md5:  8a6e8708a5e00ab6d841cde51d70eb1b
24 Source3:        dkms.conf
25 Patch0:         linux-3.17.patch
26 Patch1:         gcc-4.9.patch
27 URL:            http://www.broadcom.com/support/802.11/linux_sta.php
28 BuildRequires:  rpmbuild(macros) >= 1.701
29 %{?with_kernel:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2}}
30 ExclusiveArch:  %{ix86} %{x8664}
31 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
32
33 %description
34 These packages contain Broadcom's IEEE 802.11a/b/g/n hybrid Linux
35 device driver for use with Broadcom's BCM4311-, BCM4312-, BCM4313-,
36 BCM4321-, BCM4322-, BCM43224-, and BCM43225-, BCM43227- and
37 BCM43228-based hardware.
38
39 This is an Official Release of Broadcom's hybrid Linux driver for use
40 with Broadcom based hardware.
41
42 %package -n dkms-%{pname}
43 Summary:        DKMS-ready driver for Broadcom WL driver
44 Group:          Base/Kernel
45 Release:        %{rel}
46 Requires(pre):  dkms
47 Requires(post): dkms
48 %if "%{_rpmversion}" >= "5"
49 BuildArch:      noarch
50 %endif
51
52 %description -n dkms-%{pname}
53 This package contains a DKMS-ready driver for Broadcom WL driver.
54
55 %define kernel_pkg()\
56 %package -n kernel%{_alt_kernel}-net-wl\
57 Summary:        Broadcom 802.11 a/b/g/n hybrid Linux networking device driver\
58 Release:        %{rel}@%{_kernel_ver_str}\
59 Group:          Base/Kernel\
60 Requires(post,postun):  /sbin/depmod\
61 %requires_releq_kernel\
62 Requires(postun):       %releq_kernel\
63 \
64 %description -n kernel%{_alt_kernel}-net-wl\
65 These packages contain Broadcom's IEEE 802.11a/b/g/n hybrid Linux\
66 device driver for use with Broadcom's BCM4311-, BCM4312-, BCM4313-,\
67 BCM4321-, BCM4322-, BCM43224-, and BCM43225-, BCM43227- and\
68 BCM43228-based hardware.\
69 \
70 This is an Official Release of Broadcom's hybrid Linux driver for use\
71 with Broadcom based hardware.\
72 \
73 %files -n kernel%{_alt_kernel}-net-wl\
74 %defattr(644,root,root,755)\
75 %doc lib/LICENSE.txt README.txt\
76 /lib/modules/%{_kernel_ver}/kernel/drivers/net/wireless/*.ko*\
77 \
78 %post -n kernel%{_alt_kernel}-net-wl\
79 %depmod %{_kernel_ver}\
80 \
81 %posttrans -n kernel%{_alt_kernel}-net-wl\
82 %banner -e kernel%{_alt_kernel}-net-wl <<EOF\
83 WARNING! This kernel module is not GPL licensed.\
84 Before using it be sure to accept license: %{_docdir}/kernel%{_alt_kernel}-net-wl-%{version}/LICENSE.txt*\
85 EOF\
86 \
87 %postun -n kernel%{_alt_kernel}-net-wl\
88 %depmod %{_kernel_ver}\
89 %{nil}
90
91 %define build_kernel_pkg()\
92 %build_kernel_modules -m wl\
93 %install_kernel_modules -D installed -m wl -d kernel/drivers/net/wireless\
94 %{nil}
95
96 %{?with_kernel:%{expand:%create_kernel_packages}}
97
98 %prep
99 %ifarch %{x8664}
100 %define src 1
101 %else
102 %define src 0
103 %endif
104 %setup -c -T -q -n %{pname}-%{version} -b%{src}
105 %patch0 -p1
106 %patch1 -p1
107
108 # cleanup backups after patching
109 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
110
111 cp -p %{SOURCE2} .
112
113 cat > Makefile << 'EOF'
114 obj-m   += wl.o
115
116 wl-objs         += src/wl/sys/wl_linux.o
117 wl-objs         += src/wl/sys/wl_iw.o
118 wl-objs         += src/shared/linux_osl.o
119
120 EXTRA_CFLAGS    += -I$(KBUILD_EXTMOD)/src/include
121 EXTRA_CFLAGS    += -I$(KBUILD_EXTMOD)/src/common/include
122 EXTRA_CFLAGS    += -I$(KBUILD_EXTMOD)/src/wl/sys
123 EXTRA_CFLAGS    += -I$(KBUILD_EXTMOD)/src/shared/bcmwifi/include
124
125 EXTRA_LDFLAGS   := $(KBUILD_EXTMOD)/lib/wlc_hybrid.o_shipped
126 EOF
127
128 %build
129 %{?with_kernel:%{expand:%build_kernel_packages}}
130
131 %install
132 rm -rf $RPM_BUILD_ROOT
133 %if %{with kernel}
134 install -d $RPM_BUILD_ROOT
135 cp -a installed/* $RPM_BUILD_ROOT
136 %endif
137
138 %if %{with dkms}
139 install -d $RPM_BUILD_ROOT%{_usrsrc}/%{pname}-%{version}-%{rel}
140 cp -a Makefile lib src $RPM_BUILD_ROOT%{_usrsrc}/%{pname}-%{version}-%{rel}
141 sed -e 's|@pname@|%{pname}|g' -e 's|@MODVERSION@|%{version}-%{rel}|g' \
142         %{SOURCE3} > $RPM_BUILD_ROOT%{_usrsrc}/%{pname}-%{version}-%{rel}/dkms.conf
143 %endif
144
145 %clean
146 rm -rf $RPM_BUILD_ROOT
147
148 %post -n dkms-%{pname}
149 %{_sbindir}/dkms add -m %{pname} -v %{version}-%{rel} --rpm_safe_upgrade && \
150 %{_sbindir}/dkms build -m %{pname} -v %{version}-%{rel} --rpm_safe_upgrade && \
151 %{_sbindir}/dkms install -m %{pname} -v %{version}-%{rel} --rpm_safe_upgrade || :
152
153 %preun -n dkms-%{pname}
154 %{_sbindir}/dkms remove -m %{pname} -v %{version}-%{rel} --rpm_safe_upgrade --all || :
155
156 %if %{with dkms}
157 %files -n dkms-%{pname}
158 %defattr(644,root,root,755)
159 %{_usrsrc}/%{pname}-%{version}-%{rel}
160 %endif
This page took 0.071671 seconds and 4 git commands to generate.