]> git.proxmox.com Git - mirror_spl-debian.git/blame - spl.spec.in
Add spl.release to spl-devel to simply dependent package version check.
[mirror_spl-debian.git] / spl.spec.in
CommitLineData
c5f70460 1# The following block is used to allow the source RPM to be rebuilt
31b2e0b0
BB
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.
5
6%{?require_kver: %define kver %{require_kver}}
7%{?require_kdir: %define kdir %{require_kdir}}
8%{?require_kobj: %define kobj %{require_kobj}}
9
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
16
17# SLES*:
18%if %{defined sles_version}
19 %if %{undefined kver}
e28bc916 20 %define klnk %{_usrsrc}/linux-obj/%{_target_cpu}/%{_target_cpu}
155189d4 21 %define kver %((echo X; %{__cat} %{klnk}/.kernelrelease
af971a85
BB
22 2>/dev/null) | tail -1)
23 %endif
31b2e0b0
BB
24 %define kpkg kernel-%{_target_cpu}
25 %define kdevpkg kernel-source kernel-syms
26 %define kverpkg %(echo %{kver} | cut -d'-' -f1-2)
af971a85
BB
27 %if %{undefined kdir}
28 %define kdir %{_usrsrc}/linux-%{kverpkg}
29 %endif
30 %if %{undefined kobj}
31 %define kobj %{kdir}-obj/%{_target_cpu}/%{_target_cpu}
32 %endif
31b2e0b0
BB
33
34# CHAOS4:
39a3d2a4 35%else
31b2e0b0
BB
36%if %{defined ch4}
37 %if %{undefined kver}
e28bc916 38 %define klnk %{_usrsrc}/kernels/*/include/config
155189d4 39 %define kver %((echo X; %{__cat} %{klnk}/kernel.release
af971a85
BB
40 2>/dev/null) | tail -1)
41 %endif
31b2e0b0
BB
42 %define kpkg chaos-kernel
43 %define kdevpkg chaos-kernel-devel
44 %define kverpkg %{kver}
af971a85
BB
45 %if %{undefined kdir}
46 %define kdir %{_usrsrc}/kernels/%{kver}
47 %endif
48 %if %{undefined kobj}
49 %define kobj %{kdir}
50 %endif
31b2e0b0
BB
51
52# RHEL*/Fedora:
39a3d2a4 53%else
31b2e0b0
BB
54%if %{defined fedora} || %{defined rhel}
55 %if %{undefined kver}
e28bc916 56 %define klnk %{_usrsrc}/kernels/*/include/config
155189d4 57 %define kver %((echo X; %{__cat} %{klnk}/kernel.release
af971a85 58 2>/dev/null) | tail -1)
31b2e0b0
BB
59 %endif
60 %define kpkg kernel
61 %define kdevpkg kernel-devel
62 %define kverpkg %(echo %{kver} | cut -d'.' -f1-7)
af971a85
BB
63 %if %{undefined kdir}
64 %define kdir %{_usrsrc}/kernels/%{kver}
65 %endif
66 %if %{undefined kobj}
67 %define kobj %{kdir}
68 %endif
39a3d2a4 69
c5f70460 70%else
c5f70460 71
31b2e0b0 72# Unsupported distro:
af971a85 73 %if %{undefined kver}
155189d4 74 %define kver X
af971a85
BB
75 %endif
76 %define kpkg kernel
77 %define kdevpkg kernel-devel
78 %define kverpkg %{kver}
79 %if %{undefined kdir}
80 %define kdir %{_usrsrc}/kernels/%{kver}
81 %endif
82 %if %{undefined kobj}
83 %define kobj %{kdir}
84 %endif
31b2e0b0
BB
85
86%endif
87%endif
c5f70460
BB
88%endif
89
31b2e0b0 90# Distro agnostic:
ac12b262
BB
91%define name @PACKAGE@
92%define version @VERSION@
93%define debug_package %{nil}
c5f70460 94
155189d4 95
ac12b262
BB
96# The kernel version should only be appended to a binary RPM. When
97# building a source RPM it must be kernel version agnostic. This means
98# the source RPM must never specify a required kernel version, but the
99# final RPM should be keyed to the kernel version it was built against.
07114bde 100%if %{defined build_src_rpm}
ac12b262
BB
101%define release @SPL_META_RELEASE@
102%define requires %{kpkg}
c5f70460 103%else
155189d4
BB
104%define relext %(echo %{kverpkg} | %{__sed} -e 's/-/_/g')
105%define release @SPL_META_RELEASE@_%{relext}
ac12b262 106%define requires %{kpkg} = %{kverpkg}
c5f70460
BB
107%endif
108
109Summary: Solaris Porting Layer
110Group: Utilities/System
111Name: %{name}
112Version: %{version}
113Release: %{release}
114License: GPL
115URL: git://eris.llnl.gov/spl.git
116BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-%(%{__id_u} -n)
117Source: %{name}-%{version}.tar.gz
e28bc916 118Requires: %{requires}
155189d4 119BuildRequires: %{kdevpkg}
c5f70460
BB
120
121%description
122The %{name} package contains kernel modules and support utilities for
123emulating Solaris style primatives in the linux kernel. These include,
124but are not limited too, atomic, condvar, debug, error, memory, kobject,
125kstat, mutex, rwlock, taskq, thread, time, and vnode APIs.
126
127%package devel
128Summary: Solaris Porting Layer Headers and Symbols
129Group: Development/Libraries
e28bc916 130Requires: %{requires}
155189d4 131BuildRequires: %{kdevpkg}
c5f70460
BB
132
133%description devel
2e0e7e69 134The %{name}-devel package contains the header files and Module{s}.symvers
c5f70460
BB
135symbols needed for building additional modules which use %{name}.
136
137%prep
138%setup
139%build
39a3d2a4 140%configure --with-linux=%{kdir} --with-linux-obj=%{kobj}
c5f70460
BB
141make
142
143%install
144rm -rf $RPM_BUILD_ROOT
145make DESTDIR=$RPM_BUILD_ROOT install
146
147%clean
148rm -rf $RPM_BUILD_ROOT
149
150%files
151%defattr(-, root, root)
152%doc AUTHORS ChangeLog COPYING DISCLAIMER INSTALL
153%{_sbindir}/*
154/lib/modules/*
155
156%files devel
157%defattr(-,root,root)
39a3d2a4 158%{_prefix}/src/*
c5f70460
BB
159
160%post
161if [ -f /boot/System.map-%{kver} ]; then
162 depmod -ae -F /boot/System.map-%{kver} %{kver} || exit 0
163else
164 depmod -ae %{kver} || exit 0
165fi
166
167%postun
168if [ -f /boot/System.map-%{kver} ]; then
169 depmod -ae -F /boot/System.map-%{kver} %{kver} || exit 0
170else
171 depmod -ae %{kver} || exit 0
172fi