]>
Commit | Line | Data |
---|---|---|
1 | # | |
2 | # Conditional build: | |
3 | %bcond_without dist_kernel # allow non-distribution kernel | |
4 | %bcond_with verbose # verbose build (V=1) | |
5 | ||
6 | %if %{without kernel} | |
7 | %undefine with_dist_kernel | |
8 | %endif | |
9 | ||
10 | %if "%{_alt_kernel}" != "%{nil}" | |
11 | %if 0%{?build_kernels:1} | |
12 | %{error:alt_kernel and build_kernels are mutually exclusive} | |
13 | exit 1 | |
14 | %endif | |
15 | %global _build_kernels %{alt_kernel} | |
16 | %else | |
17 | %global _build_kernels %{?build_kernels:,%{?build_kernels}} | |
18 | %endif | |
19 | ||
20 | %define kpkg %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%kernel_pkg ; done) | |
21 | %define bkpkg %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%build_kernel_pkg ; done) | |
22 | %define ikpkg %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%install_kernel_pkg ; done) | |
23 | ||
24 | %define rel 21 | |
25 | %define pname e1000e | |
26 | Summary: Intel(R) PRO/1000e driver for Linux | |
27 | Summary(pl.UTF-8): Sterownik do karty Intel® PRO/1000e | |
28 | Name: %{pname}%{_alt_kernel} | |
29 | Version: 3.1.0.2 | |
30 | Release: %{rel}@%{_kernel_ver_str} | |
31 | License: GPL v2 | |
32 | Group: Base/Kernel | |
33 | Source0: http://downloads.sourceforge.net/e1000/%{pname}-%{version}.tar.gz | |
34 | # Source0-md5: b8d770160691edd247a90070f45642ce | |
35 | URL: http://downloads.sourceforge.net/e1000/ | |
36 | BuildRequires: rpm-build-macros >= 1.678 | |
37 | %{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20.2} | |
38 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
39 | ||
40 | %description | |
41 | This package contains the Linux driver for the Intel(R) PRO/1000 | |
42 | family of 10/100/1000 Ethernet network adapters. This driver is | |
43 | designed to work with the Intel(R) 82571/2/3/4 PCI-E family of gigabit | |
44 | adapters and 82567 controllers. | |
45 | ||
46 | %description -l pl.UTF-8 | |
47 | Ten pakiet zawiera sterownik dla Linuksa do kart sieciowych | |
48 | 10/100/1000Mbit z rodziny Intel® PRO/1000. Ten sterownik jest | |
49 | stworzony aby pracować z kartami gigabitowymi rodziny Intel® | |
50 | 82571/2/3/4 PCI-E oraz kontrolerami 82567. | |
51 | ||
52 | %define kernel_pkg()\ | |
53 | %package -n kernel%{_alt_kernel}-net-%{pname}\ | |
54 | Summary: Intel(R) PRO/1000e driver for Linux\ | |
55 | Summary(pl.UTF-8): Sterownik do karty Intel® PRO/1000e\ | |
56 | Release: %{rel}@%{_kernel_ver_str}\ | |
57 | Group: Base/Kernel\ | |
58 | Requires(post,postun): /sbin/depmod\ | |
59 | %if %{with dist_kernel}\ | |
60 | %requires_releq_kernel\ | |
61 | Requires(postun): %releq_kernel\ | |
62 | %endif\ | |
63 | \ | |
64 | %description -n kernel%{_alt_kernel}-net-%{pname}\ | |
65 | This package contains the Linux driver for the Intel(R) PRO/1000\ | |
66 | family of 10/100/1000 Ethernet network adapters. This driver is\ | |
67 | designed to work with the Intel(R) 82571/2/3/4 PCI-E family of gigabit\ | |
68 | adapters and 82567 controllers.\ | |
69 | \ | |
70 | %description -n kernel%{_alt_kernel}-net-%{pname} -l pl.UTF-8\ | |
71 | Ten pakiet zawiera sterownik dla Linuksa do kart sieciowych\ | |
72 | 10/100/1000Mbit z rodziny Intel® PRO/1000. Ten sterownik jest\ | |
73 | stworzony aby pracować z kartami gigabitowymi rodziny Intel®\ | |
74 | 82571/2/3/4 PCI-E oraz kontrolerami 82567.\ | |
75 | \ | |
76 | %files -n kernel%{_alt_kernel}-net-%{pname}\ | |
77 | %defattr(755,root,root,755)\ | |
78 | %doc e1000e.7 README\ | |
79 | /etc/modprobe.d/%{_kernel_ver}/%{pname}.conf\ | |
80 | /lib/modules/%{_kernel_ver}/kernel/drivers/net/%{pname}*.ko*\ | |
81 | \ | |
82 | %post -n kernel%{_alt_kernel}-net-%{pname}\ | |
83 | %depmod %{_kernel_ver}\ | |
84 | \ | |
85 | %postun -n kernel%{_alt_kernel}-net-%{pname}\ | |
86 | %depmod %{_kernel_ver}\ | |
87 | %{nil} | |
88 | ||
89 | %define build_kernel_pkg()\ | |
90 | %build_kernel_modules -C src -m %{pname}\ | |
91 | %install_kernel_modules -D installed -m src/%{pname} -d kernel/drivers/net -n %{pname} -s current\ | |
92 | %{nil} | |
93 | ||
94 | %define install_kernel_pkg()\ | |
95 | install -d $RPM_BUILD_ROOT/etc/modprobe.d/%{_kernel_ver}\ | |
96 | # blacklist kernel module\ | |
97 | cat > $RPM_BUILD_ROOT/etc/modprobe.d/%{_kernel_ver}/%{pname}.conf <<'EOF'\ | |
98 | blacklist e1000e\ | |
99 | alias e1000e e1000e-current\ | |
100 | EOF\ | |
101 | %{nil} | |
102 | ||
103 | %{expand:%kpkg} | |
104 | ||
105 | %prep | |
106 | %setup -q -n %{pname}-%{version} | |
107 | ||
108 | cat > src/Makefile <<'EOF' | |
109 | obj-m := e1000e.o | |
110 | e1000e-objs := netdev.o ethtool.o param.o \ | |
111 | 82571.o ich8lan.o 80003es2lan.o \ | |
112 | mac.o nvm.o phy.o manage.o kcompat.o | |
113 | ||
114 | EXTRA_CFLAGS=-DDRIVER_E1000E -DCONFIG_E1000E_SEPARATE_TX_HANDLER | |
115 | EOF | |
116 | # add -DE1000E_NO_NAPI to disable NAPI | |
117 | ||
118 | %build | |
119 | %{expand:%bkpkg} | |
120 | ||
121 | %install | |
122 | rm -rf $RPM_BUILD_ROOT | |
123 | install -d $RPM_BUILD_ROOT | |
124 | ||
125 | %{expand:%ikpkg} | |
126 | cp -a installed/* $RPM_BUILD_ROOT | |
127 | ||
128 | %clean | |
129 | rm -rf $RPM_BUILD_ROOT |