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)
9 %undefine with_dist_kernel
12 %define subver 20080313
13 %define prel 0.%{subver}.%{rel}
16 Summary: aufs - Another Unionfs
17 Summary(pl.UTF-8): aufs (Another Unionfs) - inny unionfs
23 Source0: %{name}-%{subver}.tar.bz2
24 # Source0-md5: 044ba36a61ca6a0ebe72108aaa77b816
25 Patch0: %{name}-vserver.patch
26 Patch1: %{name}-disable-security_inode_permission.patch
27 URL: http://aufs.sourceforge.net/
29 %{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.20.2}
30 BuildRequires: rpmbuild(macros) >= 1.379
32 BuildRequires: sed >= 4.0
33 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
36 In the early days, aufs was entirely re-designed and re-implemented
37 Unionfs. After many original ideas, approaches, improvements and
38 implementations, it becomes totally different from Unionfs while
39 keeping the basic features. Unionfs is being developed by Professor
40 Erez Zadok at Stony Brook University and his team. If you don't know
41 Unionfs, I recommend you to try and know it before using aufs. Some
42 terminology in aufs follows Unionfs's.
44 %description -l pl.UTF-8
45 Początkowo aufs był całkowicie przeprojektowanym i od nowa
46 zaimplementowanym unionfs-em. Po wielu oryginalnych pomysłach,
47 podejściach, poprawkach i implementacjach stał sie całkowicie innym
48 niż unionfs zachowując podstawowe możliwości. unionfs jest rozwijany
49 przez profesora Ereza Zadoka w Stony Brook University i jego zespół.
50 Nie znający unionfs-a powinni spróbować go i poznać przed używaniem
51 aufs-a. Część terminologii wywodzi się z unionfs-a.
53 %package -n kernel%{_alt_kernel}-fs-aufs
54 Summary: Linux driver for aufs
55 Summary(pl.UTF-8): Sterownik dla Linuksa do aufs
56 Release: %{prel}@%{_kernel_ver_str}
58 Requires(post,postun): /sbin/depmod
59 %if %{with dist_kernel}
60 %requires_releq_kernel
61 Requires(postun): %releq_kernel
64 %description -n kernel%{_alt_kernel}-fs-aufs
65 This is driver for aufs for Linux.
67 This package contains Linux module.
69 %description -n kernel%{_alt_kernel}-fs-aufs -l pl.UTF-8
70 Sterownik dla Linuksa do aufs.
72 Ten pakiet zawiera moduł jądra Linuksa.
81 %{!?debug:s/$(CONFIG_AUFS_DEBUG.*)/n/};
82 s/$(CONFIG_AUFS_HINOTIFY)/n/;
83 s/$(CONFIG_AUFS_EXPORT)/y/;
84 s/$(CONFIG_AUFS_SYSAUFS)/n/
86 cp -a include/linux fs/aufs
90 if [ -f %{_kernelsrcdir}/include/linux/vs_base.h ]; then
93 %build_kernel_modules -C fs/aufs -m aufs \
95 -DCONFIG_AUFS_BRANCH_MAX_127 \
96 -DCONFIG_AUFS_BRANCH_MAX_CHAR \
97 -DCONFIG_AUFS_FAKE_DM \
98 -DCONFIG_AUFS_MODULE \
99 -UCONFIG_AUFS_KSIZE_PATCH \
101 %{?debug:-DCONFIG_AUFS_DEBUG} \
105 %if %{with userspace}
108 CFLAGS="%{rpmcflags} -DCONFIG_AUFS_BRANCH_MAX_127"
112 rm -rf $RPM_BUILD_ROOT
114 %if %{with userspace}
115 install -d $RPM_BUILD_ROOT{%{_mandir}/man5,%{_sbindir}}
116 install util/{mount.aufs,umount.aufs,auplink,aulchown} $RPM_BUILD_ROOT%{_sbindir}
117 install util/aufs.5 $RPM_BUILD_ROOT%{_mandir}/man5/
121 %install_kernel_modules -m fs/aufs/aufs -d kernel/fs/aufs
125 rm -rf $RPM_BUILD_ROOT
127 %post -n kernel%{_alt_kernel}-fs-aufs
128 %depmod %{_kernel_ver}
130 %postun -n kernel%{_alt_kernel}-fs-aufs
131 %depmod %{_kernel_ver}
134 %files -n kernel%{_alt_kernel}-fs-aufs
135 %defattr(644,root,root,755)
136 %dir /lib/modules/%{_kernel_ver}/kernel/fs/aufs
137 /lib/modules/%{_kernel_ver}/kernel/fs/aufs/*.ko*
140 %if %{with userspace}
142 %defattr(644,root,root,755)
144 %attr(755,root,root) %{_sbindir}/*