]>
Commit | Line | Data |
---|---|---|
5672dc74 JB |
1 | # |
2 | # Conditional build: | |
69dc5a49 | 3 | %bcond_without dist_kernel # allow non-distribution kernel |
c259e077 | 4 | %bcond_without smp # don't build SMP module |
69dc5a49 | 5 | %bcond_with verbose # verbose build (V=1) |
5672dc74 | 6 | # |
6b39b5a2 PG |
7 | Summary: Intel(R) PRO/1000 driver for Linux |
8 | Summary(pl): Sterownik do karty Intel(R) PRO/1000 | |
69dc5a49 | 9 | Name: kernel-net-e1000 |
48c0c2ff | 10 | Version: 6.2.15 |
01be4042 | 11 | %define _rel 1 |
24e60443 | 12 | Release: %{_rel}@%{_kernel_ver_str} |
69dc5a49 | 13 | License: GPL v2 |
6b39b5a2 PG |
14 | Vendor: Intel Corporation |
15 | Group: Base/Kernel | |
48c0c2ff SP |
16 | Source0: ftp://aiedownload.intel.com/df-support/9180/eng/e1000-%{version}.tar.gz |
17 | # Source0-md5: 83f16b6b3f255730e0649f23cfc01509 | |
3c4d4ad2 | 18 | URL: http://support.intel.com/support/network/adapter/index.htm#PRO/1000 |
69dc5a49 PS |
19 | %{?with_dist_kernel:BuildRequires: kernel-module-build >= 2.6.7} |
20 | BuildRequires: rpmbuild(macros) >= 1.211 | |
01be4042 SP |
21 | %ifarch sparc |
22 | BuildRequires: crosssparc64-gcc | |
23 | %endif | |
5672dc74 | 24 | Requires(post,postun): /sbin/depmod |
69dc5a49 PS |
25 | %if %{with dist_kernel} |
26 | %requires_releq_kernel_up | |
27 | Requires(postun): %releq_kernel_up | |
28 | %endif | |
5672dc74 | 29 | Provides: kernel(e1000) |
6b39b5a2 PG |
30 | Obsoletes: e1000 |
31 | Obsoletes: linux-net-e1000 | |
6b39b5a2 PG |
32 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
33 | ||
01be4042 SP |
34 | %ifarch sparc |
35 | %define _target_base_arch sparc64 | |
36 | %define _target_cpu sparc64 | |
37 | %endif | |
38 | ||
6b39b5a2 | 39 | %description |
fbba5257 PG |
40 | This package contains the Linux driver for the Intel(R) PRO/1000 |
41 | family of 10/100/1000 Ethernet network adapters. | |
6b39b5a2 PG |
42 | |
43 | %description -l pl | |
fbba5257 PG |
44 | Ten pakiet zawiera sterownik dla Linuksa do kart sieciowych |
45 | 10/100/1000Mbit z rodziny Intel(R) PRO/1000. | |
6b39b5a2 | 46 | |
69dc5a49 | 47 | %package -n kernel-smp-net-e1000 |
6b39b5a2 PG |
48 | Summary: Intel(R) PRO/1000 driver for Linux SMP |
49 | Summary(pl): Sterownik do karty Intel(R) PRO/1000 | |
50 | Release: %{_rel}@%{_kernel_ver_str} | |
51 | Group: Base/Kernel | |
5672dc74 | 52 | Requires(post,postun): /sbin/depmod |
69dc5a49 PS |
53 | %if %{with dist_kernel} |
54 | %requires_releq_kernel_smp | |
55 | Requires(postun): %releq_kernel_smp | |
56 | %endif | |
5672dc74 | 57 | Provides: kernel(e1000) |
6b39b5a2 PG |
58 | Obsoletes: e1000 |
59 | Obsoletes: linux-net-e1000 | |
6b39b5a2 | 60 | |
69dc5a49 | 61 | %description -n kernel-smp-net-e1000 |
6b39b5a2 PG |
62 | This package contains the Linux SMP driver for the Intel(R) PRO/1000 |
63 | family of 10/100/1000 Ethernet network adapters. | |
64 | ||
69dc5a49 | 65 | %description -n kernel-smp-net-e1000 -l pl |
6b39b5a2 PG |
66 | Ten pakiet zawiera sterownik dla Linuksa SMP do kart sieciowych |
67 | 10/100/1000Mbit z rodziny Intel(R) PRO/1000. | |
68 | ||
69 | %prep | |
69dc5a49 | 70 | %setup -q -n e1000-%{version} |
6b39b5a2 PG |
71 | |
72 | %build | |
76f1612f | 73 | cd src |
74 | for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do | |
69dc5a49 PS |
75 | if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then |
76 | exit 1 | |
77 | fi | |
78 | rm -rf include | |
79 | install -d include/{linux,config} | |
80 | ln -sf %{_kernelsrcdir}/config-$cfg .config | |
81 | ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h | |
01be4042 SP |
82 | %ifarch ppc |
83 | if [ -d "%{_kernelsrcdir}/include/asm-powerpc" ]; then | |
84 | install -d include/asm | |
85 | cp -a %{_kernelsrcdir}/include/asm-%{_target_base_arch}/* include/asm | |
86 | cp -a %{_kernelsrcdir}/include/asm-powerpc/* include/asm | |
87 | else | |
88 | ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm | |
89 | fi | |
90 | %else | |
69dc5a49 | 91 | ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm |
01be4042 | 92 | %endif |
5fa3076b | 93 | ln -sf %{_kernelsrcdir}/Module.symvers-$cfg Module.symvers |
69dc5a49 PS |
94 | touch include/config/MARKER |
95 | ||
96 | cat >Makefile <<EOF | |
97 | obj-m := e1000i.o | |
98 | e1000i-objs := e1000_main.o e1000_hw.o e1000_param.o e1000_ethtool.o kcompat.o | |
99 | EOF | |
100 | ||
101 | %{__make} -C %{_kernelsrcdir} clean \ | |
102 | RCS_FIND_IGNORE="-name '*.ko' -o" \ | |
103 | M=$PWD O=$PWD \ | |
104 | %{?with_verbose:V=1} | |
105 | %{__make} -C %{_kernelsrcdir} modules \ | |
01be4042 SP |
106 | %if "%{_target_base_arch}" != "%{_arch}" |
107 | ARCH=%{_target_base_arch} \ | |
108 | CROSS_COMPILE=%{_target_cpu}-pld-linux- \ | |
109 | %endif | |
110 | HOSTCC="%{__cc}" \ | |
69dc5a49 PS |
111 | EXTRA_CFLAGS='-DE1000_NAPI' \ |
112 | CC="%{__cc}" CPP="%{__cpp}" \ | |
113 | M=$PWD O=$PWD \ | |
114 | %{?with_verbose:V=1} | |
115 | ||
116 | mv e1000i{,-$cfg}.ko | |
76f1612f | 117 | done |
3d27cef4 | 118 | |
6b39b5a2 PG |
119 | %install |
120 | rm -rf $RPM_BUILD_ROOT | |
3d27cef4 | 121 | |
69dc5a49 PS |
122 | install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/kernel/drivers/net |
123 | cd src | |
124 | install e1000i-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \ | |
125 | $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/kernel/drivers/net/e1000i.ko | |
3d27cef4 | 126 | %if %{with smp} && %{with dist_kernel} |
69dc5a49 PS |
127 | install e1000i-smp.ko \ |
128 | $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/net/e1000i.ko | |
3d27cef4 | 129 | %endif |
69dc5a49 | 130 | cd .. |
6b39b5a2 | 131 | |
fbba5257 | 132 | %clean |
6b39b5a2 PG |
133 | rm -rf $RPM_BUILD_ROOT |
134 | ||
135 | %post | |
5f5a9fa5 | 136 | %depmod %{_kernel_ver} |
6b39b5a2 PG |
137 | |
138 | %postun | |
5f5a9fa5 | 139 | %depmod %{_kernel_ver} |
6b39b5a2 | 140 | |
69dc5a49 | 141 | %post -n kernel-smp-net-e1000 |
5f5a9fa5 | 142 | %depmod %{_kernel_ver}smp |
6b39b5a2 | 143 | |
69dc5a49 | 144 | %postun -n kernel-smp-net-e1000 |
5f5a9fa5 | 145 | %depmod %{_kernel_ver}smp |
6b39b5a2 PG |
146 | |
147 | %files | |
148 | %defattr(644,root,root,755) | |
69dc5a49 PS |
149 | %doc e1000.7 README ldistrib.txt |
150 | /lib/modules/%{_kernel_ver}/kernel/drivers/net/* | |
6b39b5a2 | 151 | |
3a91d8ce | 152 | %if %{with smp} && %{with dist_kernel} |
69dc5a49 | 153 | %files -n kernel-smp-net-e1000 |
6b39b5a2 | 154 | %defattr(644,root,root,755) |
69dc5a49 PS |
155 | %doc e1000.7 README ldistrib.txt |
156 | /lib/modules/%{_kernel_ver}smp/kernel/drivers/net/* | |
3a91d8ce | 157 | %endif |