105 lines
2.7 KiB
RPMSpec
105 lines
2.7 KiB
RPMSpec
|
# The following block is used to allow the source RPM to be rebuilt
|
||
|
# against arbitrary kernels. It ensure the release name is correct
|
||
|
# and the proper build/install requires are set.
|
||
|
%if 0%{?require_kver:1}
|
||
|
%define kver %{require_kver}
|
||
|
%else
|
||
|
%define _kdir %((echo X; ls -1d /usr/src/kernels/* /usr/src/linux-* 2>/dev/null)|sed -e 's/linux-//' | tail -1)
|
||
|
%define kver %(basename %{_kdir})
|
||
|
%endif
|
||
|
|
||
|
# Each distro has its own kernel package naming convention.
|
||
|
%if 0%{?ch4}
|
||
|
%define kstr chaos-kernel
|
||
|
%define kdev chaos-kernel-devel
|
||
|
%define kdir /usr/src/kernels/%{kver}
|
||
|
%else
|
||
|
%define kstr kernel
|
||
|
%define kdev kernel-devel
|
||
|
%define kdir /usr/src/kernels/%{kver}
|
||
|
%endif
|
||
|
|
||
|
%define debug_package %{nil}
|
||
|
|
||
|
# The kernel version should only be appended to a binary RPM.
|
||
|
# When building a source RPM it must be kernel version agnostic.
|
||
|
%define name @PACKAGE@
|
||
|
%define version @VERSION@
|
||
|
|
||
|
%if %{?build_src_rpm:1}0
|
||
|
%define release @SPL_META_RELEASE@
|
||
|
%else
|
||
|
%define release @SPL_META_RELEASE@_%(echo %{kver} | sed -e 's/-/_/g')
|
||
|
%endif
|
||
|
|
||
|
%if 0%{?require_kver:1}
|
||
|
%define buildrequires %{kdev}=%{kver}
|
||
|
%else
|
||
|
%define buildrequires %{kdev}
|
||
|
%endif
|
||
|
|
||
|
Summary: Solaris Porting Layer
|
||
|
Group: Utilities/System
|
||
|
Name: %{name}
|
||
|
Version: %{version}
|
||
|
Release: %{release}
|
||
|
License: GPL
|
||
|
URL: git://eris.llnl.gov/spl.git
|
||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-%(%{__id_u} -n)
|
||
|
Source: %{name}-%{version}.tar.gz
|
||
|
Requires: %{kstr} = %{kver}
|
||
|
BuildRequires: %{buildrequires}
|
||
|
|
||
|
%description
|
||
|
The %{name} package contains kernel modules and support utilities for
|
||
|
emulating Solaris style primatives in the linux kernel. These include,
|
||
|
but are not limited too, atomic, condvar, debug, error, memory, kobject,
|
||
|
kstat, mutex, rwlock, taskq, thread, time, and vnode APIs.
|
||
|
|
||
|
%package devel
|
||
|
Summary: Solaris Porting Layer Headers and Symbols
|
||
|
Group: Development/Libraries
|
||
|
Requires: %{kstr} = %{kver}
|
||
|
BuildRequires: %{buildrequires}
|
||
|
|
||
|
%description devel
|
||
|
The %{name}-devel package contains the header files and Module.symvers
|
||
|
symbols needed for building additional modules which use %{name}.
|
||
|
|
||
|
%prep
|
||
|
%setup
|
||
|
%build
|
||
|
%configure --includedir=%{kdir}/include/spl --with-linux=%{kdir}
|
||
|
make
|
||
|
|
||
|
%install
|
||
|
rm -rf $RPM_BUILD_ROOT
|
||
|
make DESTDIR=$RPM_BUILD_ROOT install
|
||
|
|
||
|
%clean
|
||
|
rm -rf $RPM_BUILD_ROOT
|
||
|
|
||
|
%files
|
||
|
%defattr(-, root, root)
|
||
|
%doc AUTHORS ChangeLog COPYING DISCLAIMER INSTALL
|
||
|
%{_sbindir}/*
|
||
|
/lib/modules/*
|
||
|
|
||
|
%files devel
|
||
|
%defattr(-,root,root)
|
||
|
%{kdir}/include/spl/*
|
||
|
|
||
|
%post
|
||
|
if [ -f /boot/System.map-%{kver} ]; then
|
||
|
depmod -ae -F /boot/System.map-%{kver} %{kver} || exit 0
|
||
|
else
|
||
|
depmod -ae %{kver} || exit 0
|
||
|
fi
|
||
|
|
||
|
%postun
|
||
|
if [ -f /boot/System.map-%{kver} ]; then
|
||
|
depmod -ae -F /boot/System.map-%{kver} %{kver} || exit 0
|
||
|
else
|
||
|
depmod -ae %{kver} || exit 0
|
||
|
fi
|