]> git.proxmox.com Git - mirror_zfs.git/blob - rpm/redhat/zfs-kmod.spec.in
fa0c1108e08977f6460574a352d676b62266c9e0
[mirror_zfs.git] / rpm / redhat / zfs-kmod.spec.in
1 %bcond_with debug
2 %bcond_with debug_dmu_tx
3
4 Name: @PACKAGE@-kmod
5 Version: @VERSION@
6 Release: @RELEASE@%{?dist}
7
8 Summary: Kernel module(s)
9 Group: System Environment/Kernel
10 License: @ZFS_META_LICENSE@
11 URL: http://zfsonlinux.org/
12 BuildRequires: %kernel_module_package_buildreqs
13 BuildRequires: kmod-spl-devel = %{version}
14 Source0: @PACKAGE@-%{version}.tar.gz
15 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
16
17 # Additional dependency information for the kmod sub-package must be specified
18 # by generating a preamble text file which kmodtool can append to the spec file.
19 %(/bin/echo -e "\
20 Requires: spl-kmod\n\
21 Requires: @PACKAGE@ = %{version}\n\
22 Conflicts: @PACKAGE@-dkms\n\n" > %{_sourcedir}/kmod-preamble)
23
24 %description
25 This package contains the ZFS kernel modules.
26
27 %define kmod_name @PACKAGE@
28
29 %kernel_module_package -n %{kmod_name} -p %{_sourcedir}/kmod-preamble
30
31 %define ksrc %{_usrsrc}/kernels/%{kverrel}
32 %define kobj %{ksrc}
33 %define splsrc %{_usrsrc}/spl-%{version}
34 %define splobj %{splsrc}/%{kverrel}
35
36 %package -n kmod-%{kmod_name}-devel
37 Summary: ZFS kernel module(s) devel common
38 Group: System Environment/Kernel
39 Requires: kmod-spl-devel = %{version}
40
41 %description -n kmod-%{kmod_name}-devel
42 This package provides the header files and objects to build kernel modules
43 which depend on the spl kernel module.
44
45 %prep
46 if ! [ -d "%{ksrc}" ]; then
47 echo "Kernel build directory isn't set properly, cannot continue"
48 exit 1
49 fi
50
51 %if %{with debug}
52 %define debug --enable-debug
53 %else
54 %define debug --disable-debug
55 %endif
56
57 %if %{with debug_dmu_tx}
58 %define debug_dmu_tx --enable-debug-dmu-tx
59 %else
60 %define debug_dmu_tx --disable-debug-dmu-tx
61 %endif
62
63 %setup -n %{kmod_name}-%{version}
64 %build
65 %configure \
66 --with-config=kernel \
67 --with-linux=%{ksrc} \
68 --with-linux-obj=%{kobj} \
69 --with-spl="%{splsrc}" \
70 --with-spl-obj="%{splobj}" \
71 %{debug} \
72 %{debug_dmu_tx}
73 make %{?_smp_mflags}
74
75 %install
76 make install \
77 DESTDIR=${RPM_BUILD_ROOT} \
78 INSTALL_MOD_DIR=extra/%{kmod_name}
79 %{__rm} -f %{buildroot}/lib/modules/%{kverrel}/modules.*
80
81 # find-debuginfo.sh only considers executables
82 %{__chmod} u+x %{buildroot}/lib/modules/%{kverrel}/extra/*/*/*
83
84 %clean
85 rm -rf $RPM_BUILD_ROOT
86
87 %files -n kmod-%{kmod_name}-devel
88 %{_usrsrc}/%{kmod_name}-%{version}