]> git.pld-linux.org Git - packages/e1000.git/blob - e1000.spec
- next try to fix build on sparc (thx arekm)
[packages/e1000.git] / e1000.spec
1 #
2 # Conditional build:
3 %bcond_without  dist_kernel     # allow non-distribution kernel
4 %bcond_without  smp             # don't build SMP module
5 %bcond_with     verbose         # verbose build (V=1)
6 #
7 Summary:        Intel(R) PRO/1000 driver for Linux
8 Summary(pl):    Sterownik do karty Intel(R) PRO/1000
9 Name:           kernel-net-e1000
10 Version:        6.2.15
11 %define         _rel    1
12 Release:        %{_rel}@%{_kernel_ver_str}
13 License:        GPL v2
14 Vendor:         Intel Corporation
15 Group:          Base/Kernel
16 Source0:        ftp://aiedownload.intel.com/df-support/9180/eng/e1000-%{version}.tar.gz
17 # Source0-md5:  83f16b6b3f255730e0649f23cfc01509
18 URL:            http://support.intel.com/support/network/adapter/index.htm#PRO/1000
19 %{?with_dist_kernel:BuildRequires:      kernel-module-build >= 2.6.7}
20 BuildRequires:  rpmbuild(macros) >= 1.211
21 %ifarch sparc
22 BuildRequires:  crosssparc64-gcc
23 %endif
24 Requires(post,postun):  /sbin/depmod
25 %if %{with dist_kernel}
26 %requires_releq_kernel_up
27 Requires(postun):       %releq_kernel_up
28 %endif
29 Provides:       kernel(e1000)
30 Obsoletes:      e1000
31 Obsoletes:      linux-net-e1000
32 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
33
34 %ifarch sparc
35 %define         _target_base_arch       sparc64
36 %define         _target_cpu             sparc64
37 %endif
38
39 %description
40 This package contains the Linux driver for the Intel(R) PRO/1000
41 family of 10/100/1000 Ethernet network adapters.
42
43 %description -l pl
44 Ten pakiet zawiera sterownik dla Linuksa do kart sieciowych
45 10/100/1000Mbit z rodziny Intel(R) PRO/1000.
46
47 %package -n kernel-smp-net-e1000
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
52 Requires(post,postun):  /sbin/depmod
53 %if %{with dist_kernel}
54 %requires_releq_kernel_smp
55 Requires(postun):       %releq_kernel_smp
56 %endif
57 Provides:       kernel(e1000)
58 Obsoletes:      e1000
59 Obsoletes:      linux-net-e1000
60
61 %description -n kernel-smp-net-e1000
62 This package contains the Linux SMP driver for the Intel(R) PRO/1000
63 family of 10/100/1000 Ethernet network adapters.
64
65 %description -n kernel-smp-net-e1000 -l pl
66 Ten pakiet zawiera sterownik dla Linuksa SMP do kart sieciowych
67 10/100/1000Mbit z rodziny Intel(R) PRO/1000.
68
69 %prep
70 %setup -q -n e1000-%{version}
71
72 %build
73 cd src
74 for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
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
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
91         ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
92 %endif
93         ln -sf %{_kernelsrcdir}/Module.symvers-$cfg Module.symvers
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 \
106 %if "%{_target_base_arch}" != "%{_arch}"
107                 ARCH=%{_target_base_arch} \
108                 CROSS_COMPILE=%{_target_cpu}-pld-linux- \
109 %endif
110                 HOSTCC="%{__cc}" \
111                 EXTRA_CFLAGS='-DE1000_NAPI' \
112                 M=$PWD O=$PWD \
113                 %{?with_verbose:V=1}
114
115         mv e1000i{,-$cfg}.ko
116 done
117
118 %install
119 rm -rf $RPM_BUILD_ROOT
120
121 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/kernel/drivers/net
122 cd src
123 install e1000i-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
124         $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/kernel/drivers/net/e1000i.ko
125 %if %{with smp} && %{with dist_kernel}
126 install e1000i-smp.ko \
127         $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/drivers/net/e1000i.ko
128 %endif
129 cd ..
130
131 %clean
132 rm -rf $RPM_BUILD_ROOT
133
134 %post
135 %depmod %{_kernel_ver}
136
137 %postun
138 %depmod %{_kernel_ver}
139
140 %post   -n kernel-smp-net-e1000
141 %depmod %{_kernel_ver}smp
142
143 %postun -n kernel-smp-net-e1000
144 %depmod %{_kernel_ver}smp
145
146 %files
147 %defattr(644,root,root,755)
148 %doc e1000.7 README ldistrib.txt
149 /lib/modules/%{_kernel_ver}/kernel/drivers/net/*
150
151 %if %{with smp} && %{with dist_kernel}
152 %files -n kernel-smp-net-e1000
153 %defattr(644,root,root,755)
154 %doc e1000.7 README ldistrib.txt
155 /lib/modules/%{_kernel_ver}smp/kernel/drivers/net/*
156 %endif
This page took 0.032423 seconds and 3 git commands to generate.