%bcond_without dist_kernel # allow non-distribution kernel
%bcond_without kernel # don't build kernel modules
%bcond_without smp # don't build SMP modules
+%bcond_with unicode # use wx-gtk2-unicode-config instead of ansi
%bcond_without userspace # don't build userspace applications
%bcond_with verbose # verbose build (V=1)
-#
-# TODO:
-# - X11 tools (xvnet is only graphical version of ncursed lvnet. do we need it?).
-# - command line version of firmware upgrade tool.
-#
+
+%if %{without kernel}
+%undefine with_dist_kernel
+%endif
+
+%define _rel 0.9
Summary: Linux driver for WLAN card based on AT76C5XXx
-Summary(pl): Sterownik dla Linuxa do kart WLAN opartych na uk³adzie AT76C5XXx
-Name: kernel-net-atmelwlandriver
-Version: 3.3.5.6
-%define _rel 0.3
+Summary(pl): Sterownik dla Linuksa do kart WLAN opartych na uk³adach AT76C5XXx
+Name: atmelwlandriver
+Version: 3.4.1.1
Release: %{_rel}@%{_kernel_ver_str}
License: GPL v2
Group: Base/Kernel
-Source0: http://dl.sourceforge.net/sourceforge/atmelwlandriver/atmelwlandriver-%{version}.tar.bz2
-# Source0-md5: dd9a11d175ba0fbb62cf7fec5426f5de
-Source1: atmelwlandriver.config
-Patch0: atmelwlandriver-makefile.patch
-Patch1: atmelwlandriver-etc.patch
-Patch2: atmelwlandriver-fpmath.patch
-Patch3: atmelwlandriver-delay.patch
-Patch4: atmelwlandriver-usb_defctrl.patch
-URL: http://atmelwlandriver.sourceforge.net
-BuildRequires: rpmbuild(macros) >= 1.153
-BuildRequires: %{kgcc_package}
-%if %{with kernel} && %{with dist_kernel}
-BuildRequires: kernel-module-build >= 2.6.7
-BuildRequires: kernel-source
+Source0: http://dl.sourceforge.net/atmelwlandriver/%{name}-%{version}.tar.bz2
+# Source0-md5: 6cb3671091c7ccaa646222c50ee242c9
+Source1: %{name}-vnetrc
+Patch0: %{name}-makefile.patch
+Patch1: %{name}-etc.patch
+Patch2: %{name}-usb-api.patch
+Patch3: %{name}-gcc4.patch
+Patch4: %{name}-winter-makefile.patch
+Patch5: %{name}-fwupgrade.patch
+Patch6: %{name}-cmdline.patch
+#Patch2: %{name}-fpmath.patch
+#Patch3: %{name}-delay.patch
+#Patch4: %{name}-usb_defctrl.patch
+URL: http://atmelwlandriver.sourceforge.net/
+%if %{with kernel}
+%if %{with dist_kernel}
+BuildRequires: kernel-module-build >= 3:2.6.11
+BuildRequires: kernel-source >= 2.6.11
+%endif
+BuildRequires: rpmbuild(macros) >= 1.217
%endif
%if %{with userspace}
+BuildRequires: libusb-devel
BuildRequires: ncurses-devel
-#BuildRequires: wxWindows-devel >= 2.4.0
-#BuildRequires: wxGTK-devel >= 2.4.0
-#BuildRequires: xforms-devel
+BuildRequires: ncurses-ext-devel
+BuildRequires: wxGTK2-%{?with_unicode:unicode-}devel >= 2.6.0
%endif
-%{?with_dist_kernel:%requires_releq_kernel_up}
Requires: wireless-tools
-Requires(post,postun): /sbin/depmod
-Provides: kernel-net(atmelwlandriver) = %{version}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Sterownik dla Linuksa do kart sieci bezprzewodowych opartych o uk³ady
ATMELA AT76C5XXx.
-%package -n kernel-smp-net-atmelwlandriver
+%package -n kernel-net-atmelwlandriver
Summary: Linux driver for WLAN card based on AT76C5XXx
-Summary(pl): Sterownik dla Linuxa do kart WLAN na uk³adzie AT76C5XXx
+Summary(pl): Sterownik dla Linuksa do kart WLAN na uk³adach AT76C5XXx
Release: %{_rel}@%{_kernel_ver_str}
Group: Base/Kernel
-%{?with_dist_kernel:%requires_releq_kernel_smp}
-Requires: wireless-tools
Requires(post,postun): /sbin/depmod
+%if %{with dist_kernel}
+%requires_releq_kernel_up
+Requires(postun): %releq_kernel_up
+%endif
Provides: kernel-net(atmelwlandriver) = %{version}
-%description -n kernel-smp-net-atmelwlandriver
+%description -n kernel-net-atmelwlandriver
This is driver for WLAN card based on ATMEL AT76C5XXx devices for
Linux.
-%description -n kernel-smp-net-atmelwlandriver -l pl
+%description -n kernel-net-atmelwlandriver -l pl
Sterownik dla Linuksa do kart sieci bezprzewodowych opartych o uk³ady
ATMELA AT76C5XXx.
-%package -n atmelwlandriver-tools
-Summary: Tools for monitoring ATMEL Wireless Card
-Summary(pl): Narzêdzia do monitorowania bezprzewodowych kart ATMEL
+%package -n kernel-smp-net-atmelwlandriver
+Summary: Linux SMP driver for WLAN card based on AT76C5XXx
+Summary(pl): Sterownik dla Linuksa SMP do kart WLAN na uk³adach AT76C5XXx
+Release: %{_rel}@%{_kernel_ver_str}
+Group: Base/Kernel
+Requires(post,postun): /sbin/depmod
+%if %{with dist_kernel}
+%requires_releq_kernel_smp
+Requires(postun): %releq_kernel_smp
+%endif
+Provides: kernel-net(atmelwlandriver) = %{version}
+
+%description -n kernel-smp-net-atmelwlandriver
+This is driver for WLAN card based on ATMEL AT76C5XXx devices for
+Linux SMP.
+
+%description -n kernel-smp-net-atmelwlandriver -l pl
+Sterownik dla Linuksa SMP do kart sieci bezprzewodowych opartych o
+uk³ady ATMELA AT76C5XXx.
+
+%package tools
+Summary: Command line tools for managing ATMEL Wireless Card
+Summary(pl): Narzêdzia linii poleceñ do obs³ugi bezprzewodowych kart ATMEL
Release: %{_rel}
Group: Networking/Utilities
Requires: kernel-net(atmelwlandriver) = %{version}
-%description -n atmelwlandriver-tools
-Monitoring tools for the ATMEL Wireless Card adapters. When the pcmcia
-module pcmf502*, the pci module pcifvnet, or the usb module usbvnet*
-is loaded the lvnet, xvnet, winter application can monitor the
-device's statistics or change it's runtime parameters.
+%description tools
+Managing tools for the ATMEL Wireless Card adapters. When the PCMCIA
+module pcmf502*, the PCI module pcifvnet, or the USB module usbvnet*
+is loaded the lvnet application can monitor the device's statistics or
+change it's runtime parameters.
-%description -n atmelwlandriver-tools -l pl
-Narzêdzia monitourj±ce dla adapterów kart sieci bezprzewodowych ATMEL.
-Kiedy modu³ pcmcia pcmf502*, modu³ pci pcifvnet, albo modu³ usb
-usbvnet* jest za³adowany to aplikacja lvnet, xvnet, winter mo¿e
-monitorowaæ dane statystyczne urz±dzenia albo zmieniæ parametry jego
-pracy.
+%description tools -l pl
+Narzêdzia do obs³ugi dla adapterów kart sieci bezprzewodowych ATMEL.
+Kiedy modu³ PCMCIA pcmf502*, modu³ PCI pcifvnet, albo modu³ USB
+usbvnet* jest za³adowany to aplikacja lvnet mo¿e monitorowaæ dane
+statystyczne urz±dzenia albo zmieniæ parametry jego pracy.
+
+%package winter
+Summary: Graphical tool for monitoring ATMEL Wireless Cards
+Summary(pl): Graficzne narzêdzie do monitorowania bezprzewodowych kart ATMEL
+Release: %{_rel}
+Group: Networking/Utilities
+Requires: kernel-net(atmelwlandriver) = %{version}
+
+%description winter
+Winter is an X application, that provides a visual enviroment to
+configure and manage ATMEL cards. It's functionality is similar to
+that of lvnet, extended by very useful features such as profiles,
+localization and support for more than one devices alternatively.
+
+%description winter -l pl
+Winter jest aplikacj± dla X, która dostarcza wizualne ¶rodowisko
+pozwalaj±ce na konfiguracjê kart ATMELa. Jego funkcjonalno¶æ jest
+podobna do tej jak± ma lvnet, dodatkowo rozszerzon± o bardzo przydatne
+funkcje takie jak: profile, lokalizacje i wsparcie dla wiêcej ni¿
+jednego urz±dzenia.
+
+%package fucd
+Summary: Firmware upgrade tool for ATMEL Wireless Cards
+Summary(pl): Narzêdzie aktualizacji bezprzewodowych kart ATMEL
+Release: %{_rel}
+Group: Networking/Utilities
+Requires: kernel-net(atmelwlandriver) = %{version}
+
+%description fucd
+Graphical firmware upgrade tool for ATMEL Wireless Cards.
+
+%description fucd -l pl
+Narzêdzie do aktualizacji wewnêtrznego oprogramowania bezprzewodowych
+kart ATMELa.
%prep
-%setup -q -n atmelwlandriver
+%setup -q -n %{name}
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
+%patch5 -p1
+%patch6 -p1
-%build
ln -sf Makefile.kernelv2.6 Makefile
+%build
%if %{with kernel}
# kernel module(s)
rm -rf built
mkdir -p built/{nondist,smp,up}
for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
- if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
- exit 1
- fi
- rm -rf include
- install -d include/{linux,config}
- ln -sf %{_kernelsrcdir}/config-$cfg .config
- ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h
- ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
- touch include/config/MARKER
- %{__make} -C %{_kernelsrcdir} clean \
- RCS_FIND_IGNORE="-name '*.ko' -o" \
- M=$PWD O=$PWD \
- %{?with_verbose:V=1}
- %{__make} pcmcia buildonly=release \
- KERNEL_VERSION=%{__kernel_ver} \
- M=$PWD O=$PWD \
- %{?with_verbose:V=1}
- %{__make} usb buildonly=release \
- KERNEL_VERSION=%{__kernel_ver} \
- M=$PWD O=$PWD \
- %{?with_verbose:V=1}
- mv -f objs/*/release/*.ko built/$cfg
+ if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
+ exit 1
+ fi
+ rm -rf include
+ install -d include/{linux,config}
+ ln -sf %{_kernelsrcdir}/config-$cfg .config
+ ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h
+ ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
+ ln -sf %{_kernelsrcdir}/Module.symvers-$cfg Module.symvers
+ touch include/config/MARKER
+
+ %{__make} -C %{_kernelsrcdir} clean \
+ RCS_FIND_IGNORE="-name '*.ko' -o" \
+ M=$PWD O=$PWD \
+ %{?with_verbose:V=1}
+ %{__make} pcmcia buildonly=release \
+ KERNEL_VERSION=%{__kernel_ver} \
+ M=$PWD O=$PWD \
+ %{?with_verbose:V=1}
+ %{__make} usb buildonly=release \
+ KERNEL_VERSION=%{__kernel_ver} \
+ M=$PWD O=$PWD \
+ %{?with_verbose:V=1}
+
+ mv -f objs/*/release/*.ko built/$cfg
done
%endif
%if %{with userspace}
-# make lvnet - compile lvnet utility
-# make winter - compile winter utility - ( CAUTION : MUST have wxwindows installed )
+%{__make} winter \
+ OPT="%{rpmcflags}" \
+ WXCONFIG="wx-gtk2-%{?with_unicode:unicode}%{!?with_unicode:ansi}-config"
%{__make} lvnet \
- INC="%{_includedir}/ncurses -I../../includes" \
- OPT="%{rpmcflags} %{rpmldflags}"
+ OPT="%{rpmcflags} %{rpmldflags}" \
+ INCDIR=%{_includedir}
+
+%{__make} -C src/apps/fw-upgrade atmelup \
+ CCC="%{__cc}" \
+ CCFLAGS="%{rpmcflags}" \
+ WXCONFIG="wx-gtk2-%{?with_unicode:unicode}%{!?with_unicode:ansi}-config"
+
+%{__make} -C src/apps/fw-upgrade fucd \
+ OPT="%{rpmcflags}" \
+ WXCONFIG="wx-gtk2-%{?with_unicode:unicode}%{!?with_unicode:ansi}-config"
%endif
%install
install -d $RPM_BUILD_ROOT%{_sysconfdir}/pcmcia
cp scripts/atmel.conf $RPM_BUILD_ROOT%{_sysconfdir}/pcmcia
cp scripts/fastvnet.sh $RPM_BUILD_ROOT%{_sbindir}
+install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/vnetrc
%endif
%if %{with userspace}
install -d $RPM_BUILD_ROOT%{_mandir}/man1
-#mv -f scripts/.vnetrc $RPM_BUILD_ROOT%{_sysconfdir}/vnetrc
install man/lvnet.1 $RPM_BUILD_ROOT%{_mandir}/man1
+install src/apps/fw-upgrade/atmelup $RPM_BUILD_ROOT%{_sbindir}
install src/apps/cmd_line/lvnet $RPM_BUILD_ROOT%{_sbindir}
+install objs/winter $RPM_BUILD_ROOT%{_sbindir}
+install src/apps/fw-upgrade/fucd $RPM_BUILD_ROOT%{_sbindir}
%endif
%clean
rm -rf $RPM_BUILD_ROOT
-%post
-for i in /lib/modules/%{_kernel_ver}/kernel/drivers/usb/net/usbvnet* ; do
- cuted_i=$(basename $i|cut -d. -f1)
- if [ -f $i ]; then
- if ( grep $cuted_i /etc/modules.conf >/dev/null ); then
- echo "NOP" >/dev/null; else
- echo "#post-install $cuted_i /bin/fastvnet.sh">> /etc/modules.conf;
- fi
- fi
-done
+%post -n kernel-net-atmelwlandriver
%depmod %{_kernel_ver}
-%postun
+%postun -n kernel-net-atmelwlandriver
%depmod %{_kernel_ver}
%post -n kernel-smp-net-atmelwlandriver
-for i in /lib/modules/%{_kernel_ver}smp/kernel/drivers/usb/net/usbvnet* ; do
- cuted_i=$(basename $i|cut -d. -f1)
- if [ -f $i ]; then
- if ( grep $cuted_i /etc/modules.conf >/dev/null ); then
- echo "NOP" >/dev/null; else
- echo "#post-install $cuted_i /bin/fastvnet.sh">> /etc/modules.conf;
- fi
- fi
-done
%depmod %{_kernel_ver}smp
%postun -n kernel-smp-net-atmelwlandriver
%depmod %{_kernel_ver}smp
%if %{with kernel}
-%files
+%files -n kernel-net-atmelwlandriver
%defattr(644,root,root,755)
%doc CHANGES README
-%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/pcmcia/atmel.conf
-#%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/vnetrc
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pcmcia/atmel.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vnetrc
%attr(755,root,root) %{_sbindir}/fastvnet.sh
/lib/modules/%{_kernel_ver}/kernel/drivers/net/pcmcia/*.ko*
/lib/modules/%{_kernel_ver}/kernel/drivers/usb/net/*.ko*
%files -n kernel-smp-net-atmelwlandriver
%defattr(644,root,root,755)
%doc CHANGES README
-%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/pcmcia/atmel.conf
-#%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/vnetrc
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/pcmcia/atmel.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vnetrc
%attr(755,root,root) %{_sbindir}/fastvnet.sh
/lib/modules/%{_kernel_ver}smp/kernel/drivers/net/pcmcia/*.ko*
/lib/modules/%{_kernel_ver}smp/kernel/drivers/usb/net/*.ko*
%endif
%if %{with userspace}
-%files -n atmelwlandriver-tools
+%files tools
%defattr(644,root,root,755)
+%attr(755,root,root) %{_sbindir}/atmelup
%attr(755,root,root) %{_sbindir}/lvnet
%{_mandir}/man1/*
+
+%files winter
+%defattr(644,root,root,755)
+%doc src/apps/winter/README.linux
+%attr(755,root,root) %{_sbindir}/winter
+
+%files fucd
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_sbindir}/fucd
%endif