]> git.pld-linux.org Git - packages/acx.git/blobdiff - acx.spec
- if there is no asm-powerpc link asm-ppc !
[packages/acx.git] / acx.spec
index c2a2f9a267144d9f46730adb18123a64c90ea1d1..7965be4e3cac55354ac0be99cacb6541802eae1d 100644 (file)
--- a/acx.spec
+++ b/acx.spec
 #
 # Conditional build:
-# _without_dist_kernel          without distribution kernel
+%bcond_without dist_kernel     # without distribution kernel
+%bcond_without smp             # don't build SMP module
 #
 # TODO:
-# - UP/SMP scheme, pass CC and CFLAGS
-%define                _orig_name      acx100_pci
-
+# - add firmware download?
+#
 Summary:       Linux driver for WLAN card base on ACX100
 Summary(pl):   Sterownik dla Linuksa do kart bezprzewodowych na uk³adzie ACX100
-Name:          kernel-net-acx100
-Version:       0.2.0pre2
-%define        _rel    0.4
-Release:       %{_rel}@%{_kernel_ver_str}
-License:       GPL
+Name:          acx100
+Version:       0.2.0pre8_plus_fixes_57
+%define        _rel    1
+Release:       %{_rel}
+License:       MPL or GPL
 Group:         Base/Kernel
-Source0:       http://rhlx01.fht-esslingen.de/~andi/acx100/acx100-0.2.0pre2.tar.bz2
-# Source0-md5: c1699a9e9536697df681ee1900172417
-URL:           http://acx100.sourcefroge.net/index.html
-%{!?_without_dist_kernel:BuildRequires:        kernel-headers >= 2.4.0}}
+Source0:       http://rhlx01.fht-esslingen.de/~andi/acx100/%{name}-%{version}.tar.bz2
+# Source0-md5: f48eb1113764f150666644baf52656af
+URL:           http://acx100.sourceforge.net/
+%{?with_dist_kernel:BuildRequires:     kernel-module-build >= 2.6.3}
+BuildRequires: %{kgcc_package}
 BuildRequires: rpmbuild(macros) >= 1.118
-%{!?_without_dist_kernel:%requires_releq_kernel_up}
-Requires(post,postun): /sbin/depmod
-Obsoletes:     kernel-net-acx100
+%ifarch sparc
+BuildRequires: crosssparc64-gcc
+%endif
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%ifarch sparc
+%define                _target_base_arch       sparc64
+%define                _target_base_cpu        sparc64
+%endif
+
 %description
 This is driver for WLAN card based on ACX100 for Linux.
 
 %description -l pl
 Sterownik dla Linuksa do kart WLAN opartych o uk³ad ACX100.
 
+%package -n kernel-net-acx100
+Summary:       Linux driver for WLAN card base on ACX100
+Summary(pl):   Sterownik dla Linuksa do kart bezprzewodowych na uk³adzie ACX100
+Release:       %{_rel}@%{_kernel_ver_str}
+Group:         Base/Kernel
+%{?with_dist_kernel:%requires_releq_kernel_up}
+Requires(post,postun): /sbin/depmod
+
+%description -n kernel-net-acx100
+This is driver for WLAN card based on ACX100 for Linux.
+
+%description -n kernel-net-acx100 -l pl
+Sterownik dla Linuksa do kart WLAN opartych o uk³ad ACX100.
+
+%package -n kernel-smp-net-acx100
+Summary:       Linux SMP driver for WLAN card base on ACX100
+Summary(pl):   Sterownik dla Linuksa SMP do kart bezprzewodowych na uk³adzie ACX100
+Release:       %{_rel}@%{_kernel_ver_str}
+Group:         Base/Kernel
+%{?with_dist_kernel:%requires_releq_kernel_smp}
+Requires(post,postun): /sbin/depmod
+
+%description -n kernel-smp-net-acx100
+Linux SMP driver for WLAN card base on ACX100.
+
+%description -n kernel-smp-net-acx100 -l pl
+Sterownik dla Linuksa SMP do kart bezprzewodowych na uk³adzie ACX100.
+
 %prep
-%setup -q -c
+%setup -q
+
+%define buildconfigs %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}
 
 %build
-%{__make} -C acx100-0.2.0pre2
+mv src/Makefile2.6 src/Makefile
+for cfg in %{buildconfigs}; do
+       mkdir -p modules/$cfg
+       if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
+               exit 1
+       fi
+       rm -f include/asm
+       chmod 000 modules
+       install -d include/{linux,config}
+       %{__make} -C %{_kernelsrcdir} clean \
+               SUBDIRS=$PWD/src \
+               O=$PWD \
+               %{?with_verbose:V=1}
+       install -d include/config
+       chmod 700 modules
+       ln -sf %{_kernelsrcdir}/config-$cfg .config
+       ln -sf %{_kernelsrcdir}/include/linux/autoconf-${cfg}.h include/linux/autoconf.h
+%ifarch ppc
+       if [ -d "%{_kernelsrcdir}/include/asm-powerpc" ]; then
+               install -d include/asm
+               cp -a %{_kernelsrcdir}/include/asm-%{_target_base_arch}/* include/asm
+               cp -a %{_kernelsrcdir}/include/asm-powerpc/* include/asm
+       else
+               ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
+       fi
+%else
+       ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
+%endif
+       ln -sf %{_kernelsrcdir}/Module.symvers-$cfg Module.symvers
+       touch include/config/MARKER
+       %{__make} -C %{_kernelsrcdir} modules \
+%if "%{_target_base_arch}" != "%{_arch}"
+                ARCH=%{_target_base_arch} \
+                CROSS_COMPILE=%{_target_base_cpu}-pld-linux- \
+%endif
+                HOSTCC="%{__cc}" \
+               SUBDIRS=$PWD/src \
+               O=$PWD \
+               %{?with_verbose:V=1}
+       mv src/*.ko modules/$cfg/
+done
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc
-install acx100-0.2.0pre2/src/%{_orig_name}.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/%{_orig_name}.o
+
+#Add directory to store firmware
+install -d $RPM_BUILD_ROOT%{_datadir}/acx
+
+install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc
+
+for cfg in %{buildconfigs}; do
+       cfgdest=''
+       if [ "$cfg" = "smp" ]; then
+               install modules/$cfg/*.ko \
+                       $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}$cfg/misc
+       else
+               install modules/$cfg/*.ko \
+                       $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc
+       fi
+done
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%post
+%post  -n kernel-net-acx100
 %depmod %{_kernel_ver}
 
-%postun
+%postun        -n kernel-net-acx100
 %depmod %{_kernel_ver}
 
-%files
+%post  -n kernel-smp-net-acx100
+%depmod %{_kernel_ver}smp
+
+%postun        -n kernel-smp-net-acx100
+%depmod %{_kernel_ver}smp
+
+%files -n kernel-net-acx100
+%defattr(644,root,root,755)
+%doc ChangeLog README TODO doc/*
+%dir %{_datadir}/acx
+/lib/modules/%{_kernel_ver}/misc/*.ko*
+
+%if %{with smp}
+%files -n kernel-smp-net-acx100
 %defattr(644,root,root,755)
-#%doc readme
-/lib/modules/%{_kernel_ver}/misc/*
+%doc ChangeLog README TODO doc/*
+%dir %{_datadir}/acx
+/lib/modules/%{_kernel_ver}smp/misc/*.ko*
+%endif
This page took 0.095459 seconds and 4 git commands to generate.