--- builds_bin/macros 2006/12/02 17:19:10 1.1 +++ builds_bin/macros 2006/12/29 01:56:32 1.6 @@ -1,6 +1,3 @@ -# Developer environment -# This gets symlinked into /etc/rpm/macros - ## Build directory %_topdir %(echo $HOME)/rpms @@ -17,24 +14,70 @@ %_smp_mflags -j5 %distversion %(rpm -qf --qf='%{VERSION}' /etc/redhat-release) -%distname %(grep -i fedora /etc/redhat-release >/dev/null && echo "Fedora Core" || echo "Red Hat Linux") -%disttag el%{distversion} -%dist .2.%disttag.sme -%smerelease() %{?1}%{?dist} +%dist .el%{distversion}.sme +%smerelease() %1%{dist}%{?2:.%2} #--------------------------------------------------------------------- %evr %{?epoch:%{epoch}:}%{version}-%{release} %_kversion %(ls /usr/src/kernels/ | sed -n 's|^\\([^-]\\+-[^-]\\+\\)-.*|\\1|p' | tail -1) + +%kmdl_kernelsrcdir() /usr/src/kernels/%{_kversion}%{?1:-%1}-%{_target_cpu} +%kmdl_moduledir() /lib/modules/%{_kversion}%{?1}/updates + +%_with_smp %(test -d %{kmdl_kernelsrcdir smp} && echo 1 || echo 0) +%_with_hugemem %(test -d %{kmdl_kernelsrcdir hugemem} && echo 1 || echo 0) +%_with_largesmp %(test -d %{kmdl_kernelsrcdir largesmp} && echo 1 || echo 0) +%_with_xen0 %(test -d %{kmdl_kernelsrcdir xen0} && echo 1 || echo 0) +%_with_xenU %(test -d %{kmdl_kernelsrcdir xenU} && echo 1 || echo 0) +%_with_xen %(test -d %{kmdl_kernelsrcdir xen} && echo 1 || echo 0) + +%kmdl(r:) \ +%{-r:%{expand:%%define _kmdlrelease %{-r*}}} \ +%kmdl_kernel \ +%kmdl_kernel smp \ +%kmdl_kernel hugemem \ +%kmdl_kernel largesmp \ +%kmdl_kernel xen0 \ +%kmdl_kernel xenU \ +%kmdl_kernel xen + +%kmdl_kernel() \ +%{?1:%{expand:%%if %%{_with_%1}}} \ +%package kmdl-%{_kversion}%{?1} \ +Summary: %{name} kernel%{?1:-%1} module(s) \ +%{?_kmdlrelease:Release: %{_kmdlrelease}} \ +Group: System Environment/Kernel \ +BuildRequires: gcc \ +BuildRequires: kernel%{?1:-%1}-devel = %{_kversion} \ +Requires: /sbin/depmod \ +Requires: /boot/vmlinuz-%{_kversion}%{?1} \ +Requires: kernel%{?1:-%1}-%{_target_cpu} = %{_kversion} \ +Obsoletes: kmod-%{name}%{?1:-%1} \ +Obsoletes: kernel%{?1:-%1}-module-%{name} \ +Provides: %{name}-kmdl-%{evr} \ +Provides: %{name}-kmdl-%{_kversion}%{?1} = %{evr} \ +%description kmdl-%{_kversion}%{?1} \ +This package provides the %{name} kernel modules built for the Linux \ +kernel %{_kversion}%{?1} for the %{_target_cpu} family of processors. \ +%post kmdl-%{_kversion}%{?1} \ +depmod -aeF /boot/System.map-%{_kversion}%%{?1} %{_kversion}%%{?1} > /dev/null 2>&1 || : \ +%postun kmdl-%{_kversion}%{?1} \ +depmod -aeF /boot/System.map-%{_kversion}%%{?1} %{_kversion}%%{?1} > /dev/null 2>&1 || : \ +%files kmdl-%{_kversion}%{?1} \ +%defattr(-, root, root, -) \ +%{expand:%%{kmdl_moduledir %{?1}}} \ +%{?1:%endif} \ +%{nil} + +#--------------------------------------------------------------------- + %_krelver %(echo "%{_kversion}" | sed -e 's|-|_|g') %kmod_kernelsrcdir() %(echo "/usr/src/kernels/%{_kversion}-%{?1}-%{_target_cpu}" | sed -e's|--|-|') %kmod_moduledir() /lib/modules/%{_kversion}%{?1}/updates -%_with_smp %(test -d %{kmod_kernelsrcdir smp} && echo 1 || echo 0) -%_with_hugemem %(test -d %{kmod_kernelsrcdir hugemem} && echo 1 || echo 0) - %kmod() \ %{expand:%%global _kmodname %1} \ %{expand:%%global _kmodversion %2} \ @@ -46,6 +89,18 @@ Packager: %{_packager} \ License: GPL \ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-%(id -u -n)-root +%kmod_kernel() \ +%{expand:%%if %%{_with_%1}}\ +%package %1 \ +%{expand:%%kmod_dependencies %1} \ +%{expand:%%kmod_desc %1} \ +%{expand:%%kmod_scripts %1} \ +%files %1 \ +%defattr(-, root, root, -) \ +%{expand:%%kmod_moduledir %1} \ +%endif \ +%{nil} + %kmod_dependencies() \ Summary: %{_kmodname} kernel module(s) \ Group: System Environment/Kernel \