X-Git-Url: http://git.pld-linux.org/?p=packages%2Fe1000.git;a=blobdiff_plain;f=e1000.spec;h=509713396664c13468d232fea3d589047e564c35;hp=3075afdefc9fd3ef69a9b7da8323eea5247e343d;hb=461d646763241f85f98fd9add5b1719dda295b2f;hpb=cd494a2d6e1c114c7fcf8f5d92c87dff836cc5fc diff --git a/e1000.spec b/e1000.spec index 3075afd..5097133 100644 --- a/e1000.spec +++ b/e1000.spec @@ -1,92 +1,99 @@ -# conditional build -# _without_dist_kernel without distribution kernel - -%define _orig_name e1000 - +# +# Conditional build: +%bcond_without dist_kernel # allow non-distribution kernel +%bcond_without kernel # don't build kernel modules +%bcond_with verbose # verbose build (V=1) + +%ifarch sparc +%undefine with_smp +%endif + +%if %{without kernel} +%undefine with_dist_kernel +%endif +%if "%{_alt_kernel}" != "%{nil}" +%undefine with_userspace +%endif + +%define rel 1 +%define pname e1000 Summary: Intel(R) PRO/1000 driver for Linux -Summary(pl): Sterownik do karty Intel(R) PRO/1000 -Name: kernel-net-%{_orig_name} -Version: 4.3.15 -%define _rel 3 -Release: %{_rel}@%{_kernel_ver_str} -License: BSD -Vendor: Intel Corporation +Summary(pl.UTF-8): Sterownik do karty Intel(R) PRO/1000 +Name: %{pname}%{_alt_kernel} +Version: 8.0.1 +Release: %{rel} +License: GPL v2 Group: Base/Kernel -Source0: ftp://aiedownload.intel.com/df-support/2897/eng/%{_orig_name}-%{version}.tar.gz -%{!?_without_dist_kernel:BuildRequires: kernel-headers } -BuildRequires: %{kgcc_package} -URL: http://support.intel.com/support/network/adapter/pro100/ -Obsoletes: e1000 -Obsoletes: linux-net-e1000 -Provides: kernel(e1000) -Prereq: /sbin/depmod -%{!?_without_dist_kernel:%requires_releq_kernel_up} +Source0: http://dl.sourceforge.net/e1000/%{pname}-%{version}.tar.gz +# Source0-md5: c9464fc1ac8f2c44647262f3a06b0020 +URL: http://sourceforge.net/projects/e1000/ +%{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20.2} +BuildRequires: rpmbuild(macros) >= 1.379 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description This package contains the Linux driver for the Intel(R) PRO/1000 -family of 10/100/1000 Ethernet network adapters. +adapters with 8254x chipsets. -%description -l pl -Ten pakiet zawiera sterownik dla Linuksa do kart sieciowych -10/100/1000Mbit z rodziny Intel(R) PRO/1000. +%description -l pl.UTF-8 +Ten pakiet zawiera sterownik dla Linuksa do kart sieciowych z rodziny +Intel(R) PRO/1000 opartych o układy 8254x. -%package -n kernel-smp-net-%{_orig_name} -Summary: Intel(R) PRO/1000 driver for Linux SMP -Summary(pl): Sterownik do karty Intel(R) PRO/1000 -Release: %{_rel}@%{_kernel_ver_str} +%package -n kernel%{_alt_kernel}-net-e1000 +Summary: Intel(R) PRO/1000 driver for Linux +Summary(pl.UTF-8): Sterownik do karty Intel(R) PRO/1000 +Release: %{rel}@%{_kernel_ver_str} Group: Base/Kernel -Prereq: /sbin/depmod -%{!?_without_dist_kernel:%requires_releq_kernel_smp} +Requires(post,postun): /sbin/depmod +%if %{with dist_kernel} +%requires_releq_kernel +Requires(postun): %releq_kernel +%endif Obsoletes: e1000 Obsoletes: linux-net-e1000 -Provides: kernel(e1000) -%description -n kernel-smp-net-%{_orig_name} -This package contains the Linux SMP driver for the Intel(R) PRO/1000 -family of 10/100/1000 Ethernet network adapters. +%description -n kernel%{_alt_kernel}-net-e1000 +This package contains the Linux driver for the Intel(R) PRO/1000 +adapters with 8254x chipsets. -%description -n kernel-smp-net-%{_orig_name} -l pl -Ten pakiet zawiera sterownik dla Linuksa SMP do kart sieciowych -10/100/1000Mbit z rodziny Intel(R) PRO/1000. +%description -n kernel%{_alt_kernel}-net-e1000 -l pl.UTF-8 +Ten pakiet zawiera sterownik dla Linuksa do kart sieciowych z rodziny +Intel(R) PRO/1000 opartych o układy 8254x. %prep -%setup -q -n %{_orig_name}-%{version} +%setup -q -n %{pname}-%{version} +cat > src/Makefile <<'EOF' +obj-m := e1000.o +e1000-objs := e1000_main.o e1000_82540.o e1000_82542.o e1000_82541.o e1000_82543.o \ +e1000_mac.o e1000_nvm.o e1000_phy.o e1000_manage.o e1000_param.o e1000_ethtool.o \ +kcompat.o e1000_api.o + +EXTRA_CFLAGS=-DDRIVER_E1000 +EOF %build -%{__make} -C src SMP=1 CC="%{kgcc} -DCONFIG_X86_LOCAL_APIC -DSTB_WA" KSRC=%{_kernelsrcdir} -mv -f src/%{_orig_name}.o src/%{_orig_name}-smp.o -%{__make} -C src clean KSRC=%{_kernelsrcdir} -%{__make} -C src CC="%{kgcc} -DSTB_WA" KSRC=%{_kernelsrcdir} +%build_kernel_modules -C src -m %{pname} %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc -install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc -install src/%{_orig_name}-smp.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/misc/%{_orig_name}.o -install src/%{_orig_name}.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/%{_orig_name}.o +%install_kernel_modules -m src/%{pname} -d kernel/drivers/net -n %{pname} -s current +# blacklist kernel module +cat > $RPM_BUILD_ROOT/etc/modprobe.d/%{_kernel_ver}/%{pname}.conf <<'EOF' +blacklist e1000 +alias e1000 e1000-current +EOF %clean rm -rf $RPM_BUILD_ROOT -%post -/sbin/depmod -a - -%postun -/sbin/depmod -a - -%post -n kernel-smp-net-%{_orig_name} -/sbin/depmod -a +%post -n kernel%{_alt_kernel}-net-e1000 +%depmod %{_kernel_ver} -%postun -n kernel-smp-net-%{_orig_name} -/sbin/depmod -a - -%files -%defattr(644,root,root,755) -%doc %{_orig_name}.7 README ldistrib.txt -/lib/modules/%{_kernel_ver}/misc/* +%postun -n kernel%{_alt_kernel}-net-e1000 +%depmod %{_kernel_ver} -%files -n kernel-smp-net-%{_orig_name} +%files -n kernel%{_alt_kernel}-net-e1000 %defattr(644,root,root,755) -%doc %{_orig_name}.7 README ldistrib.txt -/lib/modules/%{_kernel_ver}smp/misc/* +%doc e1000.7 README +/etc/modprobe.d/%{_kernel_ver}/%{pname}.conf +/lib/modules/%{_kernel_ver}/kernel/drivers/net/%{pname}*.ko*