1 # The following block is used to allow the source RPM to be rebuilt
2 # against specific kernels. It is preferable that rpmbuild define the
3 # require_kver, require_kdir, require_obj constants for us, but if it does not
4 # not we attempt to determine the correct values based on your distro.
6 %{?require_kver: %define kver %{require_kver}}
7 %{?require_kdir: %define kdir %{require_kdir}}
8 %{?require_kobj: %define kobj %{require_kobj}}
10 # kdir: Full path to the kernel source headers
11 # kobj: Full path to the kernel build objects
12 # kver: Kernel version
13 # kpkg: Kernel package name
14 # kdevpkg: Kernel devel package name
15 # kverpkg: Kernel package version
18 %if %{defined sles_version}
20 %define klnk
%{_usrsrc}/linux-obj/%{_target_cpu}/%{_target_cpu}
21 %define kver %
((echo unknown
; %{__cat} %{klnk}/.kernelrelease
22 2>/dev
/null
) | tail
-1)
24 %define kpkg kernel
-%{_target_cpu}
25 %define kdevpkg kernel
-source kernel
-syms
26 %define kverpkg %
(echo %{kver} | cut
-d'
-'
-f1
-2)
28 %define kdir
%{_usrsrc}/linux-%{kverpkg}
31 %define kobj
%{kdir}-obj/%{_target_cpu}/%{_target_cpu}
38 %define klnk
%{_usrsrc}/kernels
/*/include
/config
39 %define kver %
((echo unknown
; %{__cat} %{klnk}/kernel.release
40 2>/dev
/null
) | tail
-1)
42 %define kpkg chaos
-kernel
43 %define kdevpkg chaos
-kernel
-devel
44 %define kverpkg
%{kver}
46 %define kdir
%{_usrsrc}/kernels/%{kver}
54 %if %{defined fedora} || %{defined rhel}
56 %define klnk
%{_usrsrc}/kernels
/*/include
/config
57 %define kver %
((echo unknown
; %{__cat} %{klnk}/kernel.release
58 2>/dev
/null
) | tail
-1)
61 %define kdevpkg kernel
-devel
62 %define kverpkg %
(echo %{kver} | cut
-d'.'
-f1
-7)
64 %define kdir
%{_usrsrc}/kernels/%{kver}
77 %define kdevpkg kernel
-devel
78 %define kverpkg
%{kver}
80 %define kdir
%{_usrsrc}/kernels/%{kver}
91 %define name @PACKAGE@
92 %define version @VERSION@
93 %define debug_package
%{nil}
95 # The kernel version should only be appended to a binary RPM. When
96 # building a source RPM it must be kernel version agnostic. This means
97 # the source RPM must never specify a required kernel version, but the
98 # final RPM should be keyed to the kernel version it was built against.
99 %if %{defined build_src_rpm}
100 %define release @SPL_META_RELEASE@
101 %define requires
%{kpkg}
102 %define buildrequires
%{kdevpkg}
104 %define release @SPL_META_RELEASE@_%
(echo %{kverpkg} |
105 %{__sed} -e 's
/-/_
/g'
)
106 %define requires
%{kpkg} = %{kverpkg}
107 %define buildrequires
%{kdevpkg} = %{kverpkg}
110 Summary: Solaris Porting Layer
111 Group: Utilities
/System
116 URL: git
://eris.llnl.gov
/spl.git
117 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-%(%{__id_u} -n
)
118 Source: %{name}-%{version}.tar.gz
119 Requires: %{requires}
120 BuildRequires
: %{buildrequires}
123 The
%{name} package contains kernel modules and support utilities
for
124 emulating Solaris style primatives
in the linux kernel. These include
,
125 but are not limited too
, atomic
, condvar
, debug
, error
, memory
, kobject
,
126 kstat
, mutex
, rwlock
, taskq
, thread
, time, and vnode APIs.
129 Summary: Solaris Porting Layer Headers and Symbols
130 Group: Development
/Libraries
131 Requires: %{requires}
132 BuildRequires
: %{buildrequires}
135 The
%{name}-devel package contains the header files and Module{s}.symvers
136 symbols needed
for building additional modules which use
%{name}.
141 %configure --with
-linux
=%{kdir} --with-linux-obj=%{kobj}
145 rm -rf $RPM_BUILD_ROOT
146 make DESTDIR
=$RPM_BUILD_ROOT
install
149 rm -rf $RPM_BUILD_ROOT
152 %defattr(-, root
, root
)
153 %doc AUTHORS ChangeLog COPYING DISCLAIMER INSTALL
158 %defattr(-,root
,root
)
162 if [ -f
/boot
/System.map
-%{kver} ]; then
163 depmod
-ae
-F
/boot
/System.map
-%{kver} %{kver} ||
exit 0
165 depmod
-ae
%{kver} ||
exit 0
169 if [ -f
/boot
/System.map
-%{kver} ]; then
170 depmod
-ae
-F
/boot
/System.map
-%{kver} %{kver} ||
exit 0
172 depmod
-ae
%{kver} ||
exit 0