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