X-Git-Url: https://git.pld-linux.org/gitweb.cgi?a=blobdiff_plain;f=aufs.spec;h=ba1f2a46b78c19b024c5a1e0fefde691cea97962;hb=HEAD;hp=153369864de71cffab71a5c968ef6714f67af59e;hpb=e9863e61e60f570f80fa674cd1691b297bf755e1;p=packages%2Faufs.git diff --git a/aufs.spec b/aufs.spec index 1533698..ba1f2a4 100644 --- a/aufs.spec +++ b/aufs.spec @@ -1,4 +1,7 @@ # +# TODO: +# - define CONFIG_ option directly +# # Conditional build: %bcond_without dist_kernel # allow non-distribution kernel %bcond_without kernel # don't build kernel modules @@ -9,20 +12,31 @@ %undefine with_dist_kernel %endif -%define subver 20080517 +%if "%{_alt_kernel}" != "%{nil}" +%undefine with_userspace +%endif + +%define subver 20090315 %define prel 0.%{subver}.%{rel} -%define rel 1 +%define pname aufs +%define rel 8 Summary: aufs - Another Unionfs Summary(pl.UTF-8): aufs (Another Unionfs) - inny unionfs -Name: aufs +Name: %{pname}%{_alt_kernel} Version: 0 Release: %{prel} License: GPL v2 Group: Base/Kernel -Source0: %{name}-%{subver}.tar.bz2 -# Source0-md5: 61a932836cdb0f34e9aed6a6a6697547 -Patch0: %{name}-vserver.patch +Source0: %{pname}-%{subver}.tar.bz2 +# Source0-md5: f2cb8c2dcf40ed076b1fcdcb1e91412e +Patch0: %{pname}-vserver.patch +#Patch1: %{pname}-disable-security_inode_permission.patch +Patch2: %{pname}-fixes.patch +#Patch3: %{pname}-spin_lock.patch +Patch4: %{pname}-apparmor.patch +Patch5: %{pname}-br-xfs-fix.patch +Patch6: %{pname}-vfsub.c.patch URL: http://aufs.sourceforge.net/ %if %{with kernel} %{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.25.2} @@ -71,33 +85,55 @@ Sterownik dla Linuksa do aufs. Ten pakiet zawiera moduł jądra Linuksa. %prep -%setup -qn %{name} +%setup -qn %{pname} %patch0 -p1 +#%patch1 -p1 +%patch2 -p1 +#%patch3 -p1 +%if "%{_kernel_ver}" < "2.6.30" +if [ -d %{_kernelsrcdir}/security/apparmor ]; then +%patch4 -p1 +fi +%endif +%patch5 -p1 +if [ -d %{_kernelsrcdir}/fs/unionfs ]; then +%patch6 -p0 +%if "%{_kernel_ver}" >= "2.6.30" +else +%patch6 -p0 +%endif +fi -sed ' - s/$(CONFIG_AUFS)/m/; - %{!?debug:s/$(CONFIG_AUFS_DEBUG.*)/n/}; - s/$(CONFIG_AUFS_HINOTIFY)/n/; - s/$(CONFIG_AUFS_EXPORT)/y/; - s/$(CONFIG_AUFS_SYSAUFS)/n/ -' -i fs/aufs/Makefile -cp -a include/linux fs/aufs +cp -a include/linux fs/aufs25 %build %if %{with kernel} -if [ -f %{_kernelsrcdir}/include/linux/vs_base.h ]; then +if [ -f %{_kernelsrcdir}/include/linux/vs_base.h && + ! -d %{_kernelsrcdir}/security/apparmor ]; then isvserver="-DVSERVER" fi -%build_kernel_modules -C fs/aufs -m aufs \ - EXTRA_CFLAGS=" \ +%ifarch %{x8664} ia64 ppc64 sparc64 + ino_t64="-DCONFIG_AUFS_INO_T_64" +%endif + +export CONFIG_AUFS=m +export CONFIG_AUFS_BR_XFS=y +%build_kernel_modules -C fs/aufs25 -m aufs \ + EXTRA_CFLAGS+=" \ -DCONFIG_AUFS_BRANCH_MAX_127 \ -DCONFIG_AUFS_BRANCH_MAX_CHAR \ -DCONFIG_AUFS_FAKE_DM \ -DCONFIG_AUFS_MODULE \ -UCONFIG_AUFS_KSIZE_PATCH \ -UCONFIG_AUFS_DLGT \ +%if "%{_alt_kernel}" != "vanilla" + -DCONFIG_AUFS_UNIONFS23_PATCH \ + -DCONFIG_AUFS_UNIONFS22_PATCH \ + -DCONFIG_AUFS_SPLICE_PATCH \ +%endif %{?debug:-DCONFIG_AUFS_DEBUG} \ - $isvserver" + $isvserver \ + $ino_t64" %endif %if %{with userspace} @@ -116,7 +152,7 @@ install util/aufs.5 $RPM_BUILD_ROOT%{_mandir}/man5/ %endif %if %{with kernel} -%install_kernel_modules -m fs/aufs/aufs -d kernel/fs/aufs +%install_kernel_modules -m fs/aufs25/aufs -d kernel/fs/aufs %endif %clean @@ -138,7 +174,7 @@ rm -rf $RPM_BUILD_ROOT %if %{with userspace} %files %defattr(644,root,root,755) -%doc README History +%doc README.aufs1 README.aufs2 History %attr(755,root,root) %{_sbindir}/* %{_mandir}/man5/* %endif