]> git.proxmox.com Git - mirror_spl-debian.git/blob - spl.spec.in
Build System Default Kernel
[mirror_spl-debian.git] / spl.spec.in
1 # The following block is used to allow the source RPM to be rebuilt
2 # against arbitrary kernels. It ensure the release name is correct
3 # and the proper build/install requires are set.
4 %if 0%{?require_kver:1}
5 %define kver %{require_kver}
6 %else
7 %define _kdir %((echo X; ls -1d /usr/src/kernels/* /usr/src/linux-* 2>/dev/null)|sed -e 's/linux-//' | tail -1)
8 %define kver %(basename %{_kdir})
9 %endif
10
11 # Each distro has its own kernel package naming convention.
12 %if 0%{?ch4}
13 %define kstr chaos-kernel
14 %define kdev chaos-kernel-devel
15 %define kdir /usr/src/kernels/%{kver}
16 %else
17 %define kstr kernel
18 %define kdev kernel-devel
19 %define kdir /usr/src/kernels/%{kver}
20 %endif
21
22 %define debug_package %{nil}
23
24 # The kernel version should only be appended to a binary RPM.
25 # When building a source RPM it must be kernel version agnostic.
26 %define name @PACKAGE@
27 %define version @VERSION@
28
29 %if %{?build_src_rpm:1}0
30 %define release @SPL_META_RELEASE@
31 %else
32 %define release @SPL_META_RELEASE@_%(echo %{kver} | sed -e 's/-/_/g')
33 %endif
34
35 %if 0%{?require_kver:1}
36 %define buildrequires %{kdev}=%{kver}
37 %else
38 %define buildrequires %{kdev}
39 %endif
40
41 Summary: Solaris Porting Layer
42 Group: Utilities/System
43 Name: %{name}
44 Version: %{version}
45 Release: %{release}
46 License: GPL
47 URL: git://eris.llnl.gov/spl.git
48 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-%(%{__id_u} -n)
49 Source: %{name}-%{version}.tar.gz
50 Requires: %{kstr} = %{kver}
51 BuildRequires: %{buildrequires}
52
53 %description
54 The %{name} package contains kernel modules and support utilities for
55 emulating Solaris style primatives in the linux kernel. These include,
56 but are not limited too, atomic, condvar, debug, error, memory, kobject,
57 kstat, mutex, rwlock, taskq, thread, time, and vnode APIs.
58
59 %package devel
60 Summary: Solaris Porting Layer Headers and Symbols
61 Group: Development/Libraries
62 Requires: %{kstr} = %{kver}
63 BuildRequires: %{buildrequires}
64
65 %description devel
66 The %{name}-devel package contains the header files and Module.symvers
67 symbols needed for building additional modules which use %{name}.
68
69 %prep
70 %setup
71 %build
72 %configure --includedir=%{kdir}/include/spl --with-linux=%{kdir}
73 make
74
75 %install
76 rm -rf $RPM_BUILD_ROOT
77 make DESTDIR=$RPM_BUILD_ROOT install
78
79 %clean
80 rm -rf $RPM_BUILD_ROOT
81
82 %files
83 %defattr(-, root, root)
84 %doc AUTHORS ChangeLog COPYING DISCLAIMER INSTALL
85 %{_sbindir}/*
86 /lib/modules/*
87
88 %files devel
89 %defattr(-,root,root)
90 %{kdir}/include/spl/*
91
92 %post
93 if [ -f /boot/System.map-%{kver} ]; then
94 depmod -ae -F /boot/System.map-%{kver} %{kver} || exit 0
95 else
96 depmod -ae %{kver} || exit 0
97 fi
98
99 %postun
100 if [ -f /boot/System.map-%{kver} ]; then
101 depmod -ae -F /boot/System.map-%{kver} %{kver} || exit 0
102 else
103 depmod -ae %{kver} || exit 0
104 fi