]> git.pld-linux.org Git - packages/e1000.git/blobdiff - e1000.spec
- alternative kernel support
[packages/e1000.git] / e1000.spec
index 9393def18db245b1f13926e234453d1e12ddf933..bc0f4929b6c3324864813bae97887542ae229b69 100644 (file)
@@ -4,20 +4,19 @@
 %bcond_without smp             # don't build SMP module
 %bcond_with    verbose         # verbose build (V=1)
 #
+%define                _rel    1
 Summary:       Intel(R) PRO/1000 driver for Linux
 Summary(pl):   Sterownik do karty Intel(R) PRO/1000
-Name:          kernel-net-e1000
-Version:       6.2.15
-%define                _rel    0.1
+Name:          kernel%{_alt_kernel}-net-e1000
+Version:       7.0.38
 Release:       %{_rel}@%{_kernel_ver_str}
 License:       GPL v2
-Vendor:                Intel Corporation
 Group:         Base/Kernel
 Source0:       ftp://aiedownload.intel.com/df-support/9180/eng/e1000-%{version}.tar.gz
-# Source0-md5: 83f16b6b3f255730e0649f23cfc01509
+# Source0-md5: 1c1c8b63e1530a68c5c73c4a39cb218b
 URL:           http://support.intel.com/support/network/adapter/index.htm#PRO/1000
-%{?with_dist_kernel:BuildRequires:     kernel-module-build >= 2.6.7}
-BuildRequires: rpmbuild(macros) >= 1.211
+%{?with_dist_kernel:BuildRequires:     kernel%{_alt_kernel}-module-build >= 3:2.6.7}
+BuildRequires: rpmbuild(macros) >= 1.308
 Requires(post,postun): /sbin/depmod
 %if %{with dist_kernel}
 %requires_releq_kernel_up
@@ -36,7 +35,7 @@ family of 10/100/1000 Ethernet network adapters.
 Ten pakiet zawiera sterownik dla Linuksa do kart sieciowych
 10/100/1000Mbit z rodziny Intel(R) PRO/1000.
 
-%package -n kernel-smp-net-e1000
+%package -n kernel%{_alt_kernel}-smp-net-e1000
 Summary:       Intel(R) PRO/1000 driver for Linux SMP
 Summary(pl):   Sterownik do karty Intel(R) PRO/1000
 Release:       %{_rel}@%{_kernel_ver_str}
@@ -50,11 +49,11 @@ Provides:   kernel(e1000)
 Obsoletes:     e1000
 Obsoletes:     linux-net-e1000
 
-%description -n kernel-smp-net-e1000
+%description -n kernel%{_alt_kernel}-smp-net-e1000
 This package contains the Linux SMP driver for the Intel(R) PRO/1000
 family of 10/100/1000 Ethernet network adapters.
 
-%description -n kernel-smp-net-e1000 -l pl
+%description -n kernel%{_alt_kernel}-smp-net-e1000 -l pl
 Ten pakiet zawiera sterownik dla Linuksa SMP do kart sieciowych
 10/100/1000Mbit z rodziny Intel(R) PRO/1000.
 
@@ -67,27 +66,45 @@ for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}
        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
+       rm -rf o
+       install -d o/include/{linux,config}
+       ln -sf %{_kernelsrcdir}/config-$cfg o/.config
+       ln -sf %{_kernelsrcdir}/Module.symvers-$cfg o/Module.symvers
+       ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h o/include/linux/autoconf.h
+%ifarch ppc
+       if [ -d "%{_kernelsrcdir}/include/asm-powerpc" ]; then
+               install -d o/include/asm
+               cp -a %{_kernelsrcdir}/include/asm-%{_target_base_arch}/* o/include/asm
+               cp -a %{_kernelsrcdir}/include/asm-powerpc/* o/include/asm
+       else
+               ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} o/include/asm
+       fi
+%else
+       ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} o/include/asm
+%endif
 
 cat >Makefile <<EOF
 obj-m := e1000i.o
 e1000i-objs := e1000_main.o e1000_hw.o e1000_param.o e1000_ethtool.o kcompat.o
 EOF
 
+       %{__make} -C %{_kernelsrcdir} O=$PWD/o prepare scripts
        %{__make} -C %{_kernelsrcdir} clean \
                RCS_FIND_IGNORE="-name '*.ko' -o" \
-               M=$PWD O=$PWD \
+               SYSSRC=%{_kernelsrcdir} \
+               SYSOUT=$PWD/o \
+               M=$PWD O=$PWD/o \
                %{?with_verbose:V=1}
        %{__make} -C %{_kernelsrcdir} modules \
+%if "%{_target_base_arch}" != "%{_arch}"
+               ARCH=%{_target_base_arch} \
+               CROSS_COMPILE=%{_target_cpu}-pld-linux- \
+%endif
+               HOSTCC="%{__cc}" \
                EXTRA_CFLAGS='-DE1000_NAPI' \
-               CC="%{__cc}" CPP="%{__cpp}" \
-               M=$PWD O=$PWD \
+               SYSSRC=%{_kernelsrcdir} \
+               SYSOUT=$PWD/o \
+               M=$PWD O=$PWD/o \
                %{?with_verbose:V=1}
 
        mv e1000i{,-$cfg}.ko
@@ -115,10 +132,10 @@ rm -rf $RPM_BUILD_ROOT
 %postun
 %depmod %{_kernel_ver}
 
-%post  -n kernel-smp-net-e1000
+%post  -n kernel%{_alt_kernel}-smp-net-e1000
 %depmod %{_kernel_ver}smp
 
-%postun -n kernel-smp-net-e1000
+%postun -n kernel%{_alt_kernel}-smp-net-e1000
 %depmod %{_kernel_ver}smp
 
 %files
@@ -127,7 +144,7 @@ rm -rf $RPM_BUILD_ROOT
 /lib/modules/%{_kernel_ver}/kernel/drivers/net/*
 
 %if %{with smp} && %{with dist_kernel}
-%files -n kernel-smp-net-e1000
+%files -n kernel%{_alt_kernel}-smp-net-e1000
 %defattr(644,root,root,755)
 %doc e1000.7 README ldistrib.txt
 /lib/modules/%{_kernel_ver}smp/kernel/drivers/net/*
This page took 0.026855 seconds and 4 git commands to generate.