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