X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=atmelwlandriver.spec;h=82d2b27ded4e82133141b9a6a7c83074bd55bf33;hb=dd720771e3854ce2e82038b3f9f372197c1a4fe3;hp=de4bb6dd9b197deab6621c0d2103b94f2dfbfea4;hpb=27c65a82db11cab9c0d13c3eabb4891c0ec3b2c0;p=packages%2Fatmelwlandriver.git diff --git a/atmelwlandriver.spec b/atmelwlandriver.spec index de4bb6d..82d2b27 100644 --- a/atmelwlandriver.spec +++ b/atmelwlandriver.spec @@ -1,42 +1,49 @@ -%define rel 0.1 -%define _kernel26 %(echo %{_kernel_ver} | grep -qv '2\.6\.' ; echo $?) # # Conditional build: -%bcond_without dist_kernel # Don't use a packaged kernel -%bcond_without smp # Don't build the SMP module +%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_without userspace # don't build userspace applications +%bcond_with verbose # verbose build (V=1) # -%bcond_without pci # Don't build pci drivers -%bcond_without pcmcia # Don't build pcmcia drivers -%bcond_without usb # Don't build usb drivers -%bcond_without apps # Don't build applications +# TODO: +# - src/apps/fw-upgrade/fucd # 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.5 -Release: %{rel}@%{_kernel_ver_str} +Version: 3.3.5.6 +%define _rel 0.5 +Release: %{_rel}@%{_kernel_ver_str} License: GPL v2 Group: Base/Kernel Source0: http://dl.sourceforge.net/sourceforge/atmelwlandriver/atmelwlandriver-%{version}.tar.bz2 -# Source0-md5: 4248ff3f0a0d7d3f83d02cb540bff6f9 -Source1: atmelwlandriver.config -# Patch0: atmelwlandriver-makefile.patch +# Source0-md5: dd9a11d175ba0fbb62cf7fec5426f5de +Source1: atmelwlandriver-vnetrc +Patch0: atmelwlandriver-makefile.patch Patch1: atmelwlandriver-etc.patch +Patch2: atmelwlandriver-fpmath.patch +Patch3: atmelwlandriver-delay.patch +Patch4: atmelwlandriver-usb_defctrl.patch +Patch5: atmelwlandriver-winter-makefile.patch URL: http://atmelwlandriver.sourceforge.net -BuildRequires: rpmbuild(macros) >= 1.118 +BuildRequires: rpmbuild(macros) >= 1.153 BuildRequires: %{kgcc_package} -%if %{with dist_kernel} -BuildRequires: kernel-headers -%requires_releq_kernel_up +%if %{with kernel} && %{with dist_kernel} +BuildRequires: kernel-module-build >= 2.6.7 +BuildRequires: kernel-source %endif -%if %{with apps} +%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: xforms-devel %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 @@ -50,11 +57,12 @@ ATMELA AT76C5XXx. %package -n kernel-smp-net-atmelwlandriver Summary: Linux driver for WLAN card based on AT76C5XXx Summary(pl): Sterownik dla Linuxa do kart WLAN na uk³adzie AT76C5XXx -Release: %{rel}@%{_kernel_ver_str} +Release: %{_rel}@%{_kernel_ver_str} Group: Base/Kernel %{?with_dist_kernel:%requires_releq_kernel_smp} Requires: wireless-tools Requires(post,postun): /sbin/depmod +Provides: kernel-net(atmelwlandriver) = %{version} %description -n kernel-smp-net-atmelwlandriver This is driver for WLAN card based on ATMEL AT76C5XXx devices for @@ -64,13 +72,12 @@ Linux. 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 -Release: %{rel} +Release: %{_rel} Group: Networking/Utilities -Requires: %{name} = %{version} +Requires: kernel-net(atmelwlandriver) = %{version} %description -n atmelwlandriver-tools Monitoring tools for the ATMEL Wireless Card adapters. When the pcmcia @@ -87,64 +94,102 @@ pracy. %prep %setup -q -n atmelwlandriver -#%%patch0 -p1 +%patch0 -p1 %patch1 -p1 - -cp %{SOURCE1} .config -%{?with_pci:echo "CONFIG_PCI=y" >> .config} -%{?with_pcmcia:echo "CONFIG_PCMCIA=y" >> .config} -%{?with_usb:echo "CONFIG_USB=y" >> .config} -echo "KERNEL_SRC=/lib/modules/%{_kernel_ver}/build" >> .config -echo "PCMCIA_SRC=/lib/modules/%{_kernel_ver}/build" >> .config - -%if %{_kernel26} -echo "NEW_KERNEL=y" >> .config -%endif +%patch2 -p1 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 %build -KCFLAGS="-D__KERNEL__ -DMODULE %{rpmcflags} -fomit-frame-pointer -pipe" -KCFLAGS="$KCFLAGS -Wall -I%{_kernelsrcdir}/include" - -# SMP build -%if %{with smp} -%{__make} all \ - KCFLAGS="$KCFLAGS -D__SMP__ -D__KERNEL_SMP=1" -mkdir objs-smp -mv -f objs/*.o objs-smp/ +ln -sf Makefile.kernelv2.6 Makefile + +%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 +done %endif -%{?with_apps:echo "CONFIG_APPS=y" >> .config} -%{__make} all \ - KCFLAGS="$KCFLAGS" \ - OPT="%{rpmcflags}" \ +%if %{with userspace} +%{__make} winter \ + OPT="%{rpmcflags}" -%install -rm -rf $RPM_BUILD_ROOT +%{__make} lvnet \ + OPT="%{rpmcflags} %{rpmldflags}" -install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/kernel/drivers/{net,usb,pcmcia} -install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/{net,usb,pcmcia} -install -d $RPM_BUILD_ROOT{%{_bindir},%{_sysconfdir}/pcmcia,%{_mandir}/man1} +%{__make} -C src/apps/fw-upgrade atmelup \ + CCC=%{__cc} \ + CCFLAGS="%{rpmcflags}" +%endif -mv -f scripts/.vnetrc $RPM_BUILD_ROOT%{_sysconfdir}/vnetrc +%install +rm -rf $RPM_BUILD_ROOT +install -d $RPM_BUILD_ROOT%{_sbindir} + +%if %{with kernel} +cd built +install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/kernel/drivers/{net/pcmcia,usb/net} +install %{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}/pcm* \ + $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/kernel/drivers/net/pcmcia +install %{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}/usb* \ + $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/kernel/drivers/usb/net +%if %{with smp} && %{with dist_kernel} +install smp/pcm* \ + $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/net/pcmcia +install smp/usb* \ + $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/usb/net +%endif +cd - +install -d $RPM_BUILD_ROOT%{_sysconfdir}/pcmcia cp scripts/atmel.conf $RPM_BUILD_ROOT%{_sysconfdir}/pcmcia +cp scripts/fastvnet.sh $RPM_BUILD_ROOT%{_sbindir} +%endif -%{__make} install \ - DESTDIR=$RPM_BUILD_ROOT%{_prefix} \ - MODDIR=$RPM_BUILD_ROOT/lib/modules/%{_kernel_ver} \ - MAN_PATH=$RPM_BUILD_ROOT%{_mandir}/man1 +%if %{with userspace} +install -d $RPM_BUILD_ROOT%{_mandir}/man1 +install %{SOURCE1} $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} +%endif %clean rm -rf $RPM_BUILD_ROOT %post -for i in /lib/modules/%{_kernel_ver}/kernel/drivers/usb/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 +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/modprobe.conf >/dev/null ); then + echo "NOP" >/dev/null; else + echo "#post-install $cuted_i /usr/sbin/fastvnet.sh">> /etc/modprobe.conf; fi + fi done %depmod %{_kernel_ver} @@ -152,41 +197,47 @@ done %depmod %{_kernel_ver} %post -n kernel-smp-net-atmelwlandriver -for i in /lib/modules/%{_kernel_ver}smp/kernel/drivers/usb/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 +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/modprobe.conf >/dev/null ); then + echo "NOP" >/dev/null; else + echo "#post-install $cuted_i /usr/sbin/fastvnet.sh">> /etc/modprobe.conf; fi + fi done %depmod %{_kernel_ver}smp %postun -n kernel-smp-net-atmelwlandriver %depmod %{_kernel_ver}smp +%if %{with kernel} %files %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/fastvnet.sh %doc CHANGES README -/lib/modules/%{_kernel_ver}/* -%{_sysconfdir}/pcmcia/atmel.conf +%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/pcmcia/atmel.conf %config(noreplace) %verify(not size mtime md5) %{_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* -%if %{with smp} +%if %{with smp} && %{with dist_kernel} %files -n kernel-smp-net-atmelwlandriver %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/fastvnet.sh %doc CHANGES README -/lib/modules/%{_kernel_ver}smp/* -%{_sysconfdir}/pcmcia/atmel.conf +%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/pcmcia/atmel.conf %config(noreplace) %verify(not size mtime md5) %{_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 %endif -%if %{with apps} +%if %{with userspace} %files -n atmelwlandriver-tools %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/* +%attr(755,root,root) %{_sbindir}/atmelup +%attr(755,root,root) %{_sbindir}/lvnet +%attr(755,root,root) %{_sbindir}/winter %{_mandir}/man1/* %endif