%define oname	hybrid-portsrc
%define over	%(echo %{version} | tr . _)
%define kname	wl

Summary:	Proprietary driver for Broadcom wireless adapters
Summary(ja): 	Broadcom ワイヤレスドライバ用プロプライエタリドライバ
Name:		broadcom-wl
Version:	##VERSION##
Release: 	##RELEASE##
%ifarch %{ix86}
Source0:	http://www.broadcom.com/docs/linux_sta/%{oname}_x86_32-v%{over}.tar.gz
%endif
%ifarch x86_64
Source0:	http://www.broadcom.com/docs/linux_sta/%{oname}_x86_64-v%{over}.tar.gz
%endif
Source1:	blacklist-broadcom.conf
Source2:	5_100_82_38.patch

License:	Freeware and GPLv2 with exception
Group:		System Environment/Kernel
URL:		http://www.broadcom.com/support/802.11/linux_sta.php

BuildRoot:	%{_tmppath}/%{name}-%{version}-root

%description
This package contains the proprietary driver for Broadcom wireless adapters
provided by Broadcom. If installed, it will be used for these cards in
preference to the third-party open source driver that requires manual
installation of firmware, or ndiswrapper.

%description -l ja
このパッケージには、Broadcom ワイヤレスアダプタ用のプロプライエタリドライバが
収録されています。ファームウェアのインストールを手で行わなければいけない
オープンソースドライバや ndiswrapper とは異なり、この Broadcom 社製の
ハイブリッドドライバは単体で動作します。


%package -n dkms-%{name}
Summary:	 Hybrid kernel module f-r Broadcom wireless adapters
Summary(ja):	 Broadcom ワイヤレスドライバ用ハイブリッドカーネルモジュール
Group:		 System Environment/Kernel
Requires(post):	 dkms
Requires(preun): dkms

%description -n dkms-%{name}
This package contains the proprietary driver for Broadcom wireless adapters
provided by Broadcom. If installed, it will be used for these cards in
preference to the third-party open source driver that requires manual
installation of firmware, or ndiswrapper.

%description -n dkms-%{name} -l ja
このパッケージには、Broadcom ワイヤレスアダプタ用のプロプライエタリドライバが
収録されています。ファームウェアのインストールを手で行わなければいけない
オープンソースドライバや ndiswrapper とは異なり、この Broadcom 社製の
ハイブリッドドライバは単体で動作します。


%prep
%setup -q -T -c -a0 %{oname}


%install
%{__rm} -rf %{buildroot}

## DKMS ##
mkdir -p %{buildroot}%{_usr}/src/%{name}-%{version}-%{release}
cp -R * %{buildroot}%{_usr}/src/%{name}-%{version}-%{release}/
cat > %{buildroot}%{_usr}/src/%{name}-%{version}-%{release}/dkms.conf << EOF
PACKAGE_NAME=%{name}
PACKAGE_VERSION=%{version}-%{release}

BUILT_MODULE_NAME="%{kname}"
BUILT_MODULE_LOCATION="."
DEST_MODULE_LOCATION="/extra/broadcom"
PATCH[0]="5_100_82_38.patch"
#PATCH_MATCH[0]="^2.6.(3[5-9]|[4-9][0-9])"

MAKE="make -C \$kernel_source_dir M=\\\$(pwd)"
CLEAN="make -C \$kernel_source_dir M=\\\$(pwd) clean"

AUTOINSTALL="yes"
EOF

## BLACKLIST ##
mkdir -p %{buildroot}/etc/modprobe.d
install -m 644 %{SOURCE1} %{buildroot}/etc/modprobe.d/

mkdir -p %{buildroot}/usr/src/%{name}-%{version}-%{release}/patches/
install -m 644 %{SOURCE2} %{buildroot}/usr/src/%{name}-%{version}-%{release}/patches/


%clean
%{__rm} -rf %{buildroot}


%post -n dkms-%{name}
dkms add     -m %{name} -v %{version}-%{release} --rpm_safe_upgrade
dkms build   -m %{name} -v %{version}-%{release} --rpm_safe_upgrade
dkms install -m %{name} -v %{version}-%{release} --rpm_safe_upgrade
exit 0

%preun -n dkms-%{name}
dkms remove  -m %{name} -v %{version}-%{release} --rpm_safe_upgrade --all || :


%files -n dkms-%{name}
%defattr(-,root,root)
%doc lib/LICENSE.txt
%dir /usr/src/%{name}-%{version}-%{release}
/usr/src/%{name}-%{version}-%{release}/*
/etc/modprobe.d/blacklist-broadcom.conf


%changelog
* Tue May 05 2009 MATSUBAYASHI Kohji <shaolin@vinelinux.org> - ##VERSION##-##RELEASE##
- initial build for Vine Linux