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 20080517
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: 61a932836cdb0f34e9aed6a6a6697547
25 Patch0: %{name}-vserver.patch
26 URL: http://aufs.sourceforge.net/
28 %{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.25.2}
29 BuildRequires: rpmbuild(macros) >= 1.379
31 BuildRequires: sed >= 4.0
32 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
35 In the early days, aufs was entirely re-designed and re-implemented
36 Unionfs. After many original ideas, approaches, improvements and
37 implementations, it becomes totally different from Unionfs while
38 keeping the basic features. Unionfs is being developed by Professor
39 Erez Zadok at Stony Brook University and his team. If you don't know
40 Unionfs, I recommend you to try and know it before using aufs. Some
41 terminology in aufs follows Unionfs's.
43 %description -l pl.UTF-8
44 Początkowo aufs był całkowicie przeprojektowanym i od nowa
45 zaimplementowanym unionfs-em. Po wielu oryginalnych pomysłach,
46 podejściach, poprawkach i implementacjach stał sie całkowicie innym
47 niż unionfs zachowując podstawowe możliwości. unionfs jest rozwijany
48 przez profesora Ereza Zadoka w Stony Brook University i jego zespół.
49 Nie znający unionfs-a powinni spróbować go i poznać przed używaniem
50 aufs-a. Część terminologii wywodzi się z unionfs-a.
52 %package -n kernel%{_alt_kernel}-fs-aufs
53 Summary: Linux driver for aufs
54 Summary(pl.UTF-8): Sterownik dla Linuksa do aufs
55 Release: %{prel}@%{_kernel_ver_str}
57 Requires(post,postun): /sbin/depmod
58 %if %{with dist_kernel}
59 %requires_releq_kernel
60 Requires(postun): %releq_kernel
63 %description -n kernel%{_alt_kernel}-fs-aufs
64 This is driver for aufs for Linux.
66 This package contains Linux module.
68 %description -n kernel%{_alt_kernel}-fs-aufs -l pl.UTF-8
69 Sterownik dla Linuksa do aufs.
71 Ten pakiet zawiera moduł jądra Linuksa.
79 %{!?debug:s/$(CONFIG_AUFS_DEBUG.*)/n/};
80 s/$(CONFIG_AUFS_HINOTIFY)/n/;
81 s/$(CONFIG_AUFS_EXPORT)/y/;
82 s/$(CONFIG_AUFS_SYSAUFS)/n/
84 cp -a include/linux fs/aufs
88 if [ -f %{_kernelsrcdir}/include/linux/vs_base.h ]; then
91 %build_kernel_modules -C fs/aufs -m aufs \
93 -DCONFIG_AUFS_BRANCH_MAX_127 \
94 -DCONFIG_AUFS_BRANCH_MAX_CHAR \
95 -DCONFIG_AUFS_FAKE_DM \
96 -DCONFIG_AUFS_MODULE \
97 -UCONFIG_AUFS_KSIZE_PATCH \
99 %{?debug:-DCONFIG_AUFS_DEBUG} \
103 %if %{with userspace}
106 CFLAGS="%{rpmcflags} -DCONFIG_AUFS_BRANCH_MAX_127"
110 rm -rf $RPM_BUILD_ROOT
112 %if %{with userspace}
113 install -d $RPM_BUILD_ROOT{%{_mandir}/man5,%{_sbindir}}
114 install util/{mount.aufs,umount.aufs,auplink,aulchown} $RPM_BUILD_ROOT%{_sbindir}
115 install util/aufs.5 $RPM_BUILD_ROOT%{_mandir}/man5/
119 %install_kernel_modules -m fs/aufs/aufs -d kernel/fs/aufs
123 rm -rf $RPM_BUILD_ROOT
125 %post -n kernel%{_alt_kernel}-fs-aufs
126 %depmod %{_kernel_ver}
128 %postun -n kernel%{_alt_kernel}-fs-aufs
129 %depmod %{_kernel_ver}
132 %files -n kernel%{_alt_kernel}-fs-aufs
133 %defattr(644,root,root,755)
134 %dir /lib/modules/%{_kernel_ver}/kernel/fs/aufs
135 /lib/modules/%{_kernel_ver}/kernel/fs/aufs/*.ko*
138 %if %{with userspace}
140 %defattr(644,root,root,755)
142 %attr(755,root,root) %{_sbindir}/*