]> git.pld-linux.org Git - packages/spl.git/blame - spl.spec
- fix building with linux 3.17
[packages/spl.git] / spl.spec
CommitLineData
465ece3e
JB
1#
2# Conditional build:
3%bcond_without dist_kernel # allow non-distribution kernel
4%bcond_without kernel # don't build kernel modules
5%bcond_without userspace # don't build userspace programs
6%bcond_with verbose # verbose build (V=1)
7#
8%if %{without kernel}
9%undefine with_dist_kernel
10%endif
8535b998 11
248e4e5f
JR
12# The goal here is to have main, userspace, package built once with
13# simple release number, and only rebuild kernel packages with kernel
14# version as part of release number, without the need to bump release
15# with every kernel change.
16%if 0%{?_pld_builder:1} && %{with kernel} && %{with userspace}
17%{error:kernel and userspace cannot be built at the same time on PLD builders}
18exit 1
19%endif
20
465ece3e 21%if "%{_alt_kernel}" != "%{nil}"
248e4e5f
JR
22%if 0%{?build_kernels:1}
23%{error:alt_kernel and build_kernels are mutually exclusive}
24exit 1
25%endif
465ece3e 26%undefine with_userspace
248e4e5f
JR
27%global _build_kernels %{alt_kernel}
28%else
29%global _build_kernels %{?build_kernels:,%{?build_kernels}}
465ece3e 30%endif
8535b998 31
465ece3e
JB
32%if %{without userspace}
33# nothing to be placed to debuginfo package
34%define _enable_debug_packages 0
35%endif
8535b998 36
248e4e5f
JR
37%define _duplicate_files_terminate_build 0
38
39%define kbrs %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo "BuildRequires:kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2" ; done)
40%define kpkg %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%kernel_pkg ; done)
41%define bkpkg %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%build_kernel_pkg ; done)
42
43%define pname spl
74742be2 44%define rel 2
465ece3e
JB
45Summary: Solaris Porting Layer
46Summary(pl.UTF-8): Solaris Porting Layer - warstwa do portowania kodu z Solarisa
248e4e5f 47Name: %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel}
3e137c69 48Version: 0.6.3
248e4e5f 49Release: %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}}
465ece3e
JB
50License: GPL v2+
51Group: Applications/System
191eb534 52Source0: http://archive.zfsonlinux.org/downloads/zfsonlinux/spl/%{pname}-%{version}.tar.gz
3e137c69 53# Source0-md5: 8df6ce3c8f1d9af6526b36f5079cba59
74742be2 54Patch0: linux-3.17.patch
465ece3e 55URL: http://zfsonlinux.org/
248e4e5f
JR
56BuildRequires: rpmbuild(macros) >= 1.678
57%{?with_dist_kernel:%{expand:%kbrs}}
465ece3e
JB
58BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
59
60%description
61Solaris Porting Layer.
62
63%description -l pl.UTF-8
64Solaris Porting Layer - warstwa do portowania kodu z Solarisa.
65
248e4e5f
JR
66%define kernel_pkg()\
67%package -n kernel%{_alt_kernel}-spl\
68Summary: Solaris Porting Layer - Linux kernel modules\
69Summary(pl.UTF-8): Solaris Porting Layer - moduły jądra Linuksa\
70Release: %{rel}@%{_kernel_ver_str}\
71Group: Base/Kernel\
72Requires(post,postun): /sbin/depmod\
73%if %{with dist_kernel}\
74%requires_releq_kernel\
75Requires(postun): %releq_kernel\
76%endif\
77\
78%description -n kernel%{_alt_kernel}-spl\
79Solaris Porting Layer - Linux kernel modules.\
80\
81%description -n kernel%{_alt_kernel}-spl -l pl.UTF-8\
82Solaris Porting Layer - moduły jądra Linuksa.\
83\
84%package -n kernel%{_alt_kernel}-spl-devel\
85Summary: Solaris Porting Layer - Linux kernel headers\
86Summary(pl.UTF-8): Solaris Porting Layer - pliki nagłówkowe jądra Linuksa\
87Release: %{rel}@%{_kernel_ver_str}\
88Group: Development/Building\
89%{?with_dist_kernel:Requires: kernel%{_alt_kernel}-headers}\
90\
91%description -n kernel%{_alt_kernel}-spl-devel\
92Solaris Porting Layer - Linux kernel headers configured for PLD\
93kernel%{_alt_kernel}, version %{_kernel_ver}.\
94\
95%description -n kernel%{_alt_kernel}-spl-devel -l pl.UTF-8\
96Solaris Porting Layer - pliki nagłówkowe jądra Linuksa skonfigurowane\
97dla jądra PLD z pakietu kernel%{_alt_kernel} w wersji %{_kernel_ver}.\
98\
99%files -n kernel%{_alt_kernel}-spl\
100%defattr(644,root,root,755)\
101%dir /lib/modules/%{_kernel_ver}/misc/spl\
102/lib/modules/%{_kernel_ver}/misc/spl/spl.ko*\
103%dir /lib/modules/%{_kernel_ver}/misc/splat\
104/lib/modules/%{_kernel_ver}/misc/splat/splat.ko*\
105\
106%files -n kernel%{_alt_kernel}-spl-devel\
107%defattr(644,root,root,755)\
108%dir /usr/src/spl-%{version}\
109/usr/src/spl-%{version}/spl*.in\
110/usr/src/spl-%{version}/include\
111/usr/src/spl-%{version}/%{_kernel_ver}\
112\
113%post -n kernel%{_alt_kernel}-spl\
114%depmod %{_kernel_ver}\
115\
116%postun -n kernel%{_alt_kernel}-spl\
117%depmod %{_kernel_ver}\
118%{nil}
119
120%define build_kernel_pkg()\
121%configure \\\
122 --disable-silent-rules \\\
123 --with-config="kernel" \\\
124 --with-linux=%{_kernelsrcdir}\
125\
126%{__make} clean\
127%{__make} %{?with_verbose:V=1}\
128p=`pwd`\
129%{__make} install DESTDIR=$p/installed INSTALL_MOD_DIR=misc\
130%{nil}
131
132%{?with_kernel:%{expand:%kpkg}}
465ece3e
JB
133
134%prep
c59747d1 135%setup -q -n %{pname}-%{version}
74742be2 136%patch0 -p1
465ece3e
JB
137
138%build
2a075b3b
JR
139%{__aclocal} -I config
140%{__autoconf}
6d0372a6 141%{__autoheader}
2a075b3b 142%{__automake}
248e4e5f
JR
143%{?with_kernel:%{expand:%bkpkg}}
144
145%if %{with userspace}
465ece3e
JB
146%configure \
147 --disable-silent-rules \
248e4e5f 148 --with-config="user"
465ece3e 149
ce3c5ca8
JB
150%{__make} \
151 %{?with_verbose:V=1}
248e4e5f 152%endif
465ece3e
JB
153
154%install
155rm -rf $RPM_BUILD_ROOT
156
248e4e5f
JR
157%if %{with kernel}
158install -d $RPM_BUILD_ROOT
159cp -a installed/* $RPM_BUILD_ROOT
160%endif
161
162%if %{with userspace}
465ece3e 163%{__make} install \
248e4e5f
JR
164 DESTDIR=$RPM_BUILD_ROOT
165%endif
465ece3e
JB
166
167%clean
168rm -rf $RPM_BUILD_ROOT
169
170%if %{with userspace}
171%files
172%defattr(644,root,root,755)
ce3c5ca8 173%doc AUTHORS DISCLAIMER
465ece3e
JB
174%attr(755,root,root) %{_sbindir}/splat
175%{_mandir}/man1/splat.1*
3e137c69 176%{_mandir}/man5/spl-module-parameters.5.gz
465ece3e 177%endif
This page took 0.055514 seconds and 4 git commands to generate.