diff options
author | Stefan Schweizer <genstef@gentoo.org> | 2006-01-20 20:20:27 +0000 |
---|---|---|
committer | Stefan Schweizer <genstef@gentoo.org> | 2006-01-20 20:20:27 +0000 |
commit | 6e74f21003112365c3356b54236a12ce955eb270 (patch) | |
tree | 53a97980174b6cbfcc88ad41dea3758d49e788a1 /sys-fs/fuse | |
parent | Stable on sparc wrt #119634 (diff) | |
download | gentoo-2-6e74f21003112365c3356b54236a12ce955eb270.tar.gz gentoo-2-6e74f21003112365c3356b54236a12ce955eb270.tar.bz2 gentoo-2-6e74f21003112365c3356b54236a12ce955eb270.zip |
Fix compiling on 2.6.16 thanks to Patrizio Bassi <hetfield666@gmail.com> in bug 119532
(Portage version: 2.1_pre3-r1)
Diffstat (limited to 'sys-fs/fuse')
-rw-r--r-- | sys-fs/fuse/ChangeLog | 9 | ||||
-rw-r--r-- | sys-fs/fuse/Manifest | 5 | ||||
-rw-r--r-- | sys-fs/fuse/files/digest-fuse-2.5.0-r1 | 1 | ||||
-rw-r--r-- | sys-fs/fuse/files/fuse-2.6.16.patch | 42 | ||||
-rw-r--r-- | sys-fs/fuse/fuse-2.5.0-r1.ebuild | 52 |
5 files changed, 107 insertions, 2 deletions
diff --git a/sys-fs/fuse/ChangeLog b/sys-fs/fuse/ChangeLog index 92effd5cb161..21fe996c199e 100644 --- a/sys-fs/fuse/ChangeLog +++ b/sys-fs/fuse/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for sys-fs/fuse # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/fuse/ChangeLog,v 1.38 2006/01/20 14:42:11 dsd Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-fs/fuse/ChangeLog,v 1.39 2006/01/20 20:20:26 genstef Exp $ + +*fuse-2.5.0-r1 (20 Jan 2006) + + 20 Jan 2006; Stefan Schweizer <genstef@gentoo.org> + +files/fuse-2.6.16.patch, +fuse-2.5.0-r1.ebuild: + Fix compiling on 2.6.16 thanks to Patrizio Bassi <hetfield666@gmail.com> in + bug 119532 20 Jan 2006; Daniel Drake <dsd@gentoo.org> fuse-2.4.2.ebuild, fuse-2.5.0.ebuild: diff --git a/sys-fs/fuse/Manifest b/sys-fs/fuse/Manifest index ed9944053913..2fc656a096fe 100644 --- a/sys-fs/fuse/Manifest +++ b/sys-fs/fuse/Manifest @@ -1,11 +1,14 @@ -MD5 2193a5f9881f6466f064b6dd5d849aae ChangeLog 5687 +MD5 423898f16145a61e841835bf084bcc78 ChangeLog 5913 MD5 ad233d63810d8501e80affb6e4b8f40f files/digest-fuse-2.4.1-r1 62 MD5 939e1bcac7a96bb8eaef27299f400422 files/digest-fuse-2.4.2 62 MD5 27f3a473a3318158e742b8c4d53b63f0 files/digest-fuse-2.5.0 62 +MD5 27f3a473a3318158e742b8c4d53b63f0 files/digest-fuse-2.5.0-r1 62 +MD5 cd6d8213487f9be260e992e612bd23c4 files/fuse-2.6.16.patch 1328 MD5 c1ef6366ba5892111ddef08887328663 files/fuse-fix-lazy-binding.patch 398 MD5 da9f962a4e5f50406efd2cbda5ce3381 files/fuse-fix-memleak.patch 587 MD5 341eb75e58827ef58b4c5b445c721362 files/fusermount.patch 1300 MD5 f552be18e87f9c498393e7c02013b5ea fuse-2.4.1-r1.ebuild 1355 MD5 19c327c7dcc5f50a5c63a1c2764d4d67 fuse-2.4.2.ebuild 1490 +MD5 ea71ac433ea172beb118622db6df4737 fuse-2.5.0-r1.ebuild 1485 MD5 e2d07e2f65d33d734598f83f57645897 fuse-2.5.0.ebuild 1447 MD5 6e89ba8198764bfd079a0cfa18dca593 metadata.xml 264 diff --git a/sys-fs/fuse/files/digest-fuse-2.5.0-r1 b/sys-fs/fuse/files/digest-fuse-2.5.0-r1 new file mode 100644 index 000000000000..22af0b7d26a5 --- /dev/null +++ b/sys-fs/fuse/files/digest-fuse-2.5.0-r1 @@ -0,0 +1 @@ +MD5 9d20ae16211475d81c7c5235867e085f fuse-2.5.0.tar.gz 408472 diff --git a/sys-fs/fuse/files/fuse-2.6.16.patch b/sys-fs/fuse/files/fuse-2.6.16.patch new file mode 100644 index 000000000000..0ae6c3253aa6 --- /dev/null +++ b/sys-fs/fuse/files/fuse-2.6.16.patch @@ -0,0 +1,42 @@ +Index: kernel/file.c +=================================================================== +RCS file: /cvsroot/fuse/fuse/kernel/file.c,v +retrieving revision 1.94 +retrieving revision 1.94.2.1 +diff -u -r1.94 -r1.94.2.1 +--- kernel/file.c 6 Jan 2006 18:29:39 -0000 1.94 ++++ kernel/file.c 18 Jan 2006 12:17:33 -0000 1.94.2.1 +@@ -675,9 +675,15 @@ + struct inode *inode = file->f_dentry->d_inode; + ssize_t res; + /* Don't allow parallel writes to the same file */ ++#ifdef KERNEL_2_6_16_PLUS ++ mutex_lock(&inode->i_mutex); ++ res = fuse_direct_io(file, buf, count, ppos, 1); ++ mutex_unlock(&inode->i_mutex); ++#else + down(&inode->i_sem); + res = fuse_direct_io(file, buf, count, ppos, 1); + up(&inode->i_sem); ++#endif + return res; + } + +Index: kernel/fuse_i.h +=================================================================== +RCS file: /cvsroot/fuse/fuse/kernel/fuse_i.h,v +retrieving revision 1.99 +retrieving revision 1.99.2.1 +diff -u -r1.99 -r1.99.2.1 +--- kernel/fuse_i.h 14 Jan 2006 14:47:21 -0000 1.99 ++++ kernel/fuse_i.h 18 Jan 2006 12:17:33 -0000 1.99.2.1 +@@ -40,6 +40,9 @@ + # if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,13) + # define KERNEL_2_6_13_PLUS + # endif ++# if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) ++# define KERNEL_2_6_16_PLUS ++# endif + #endif + + #include "config.h" diff --git a/sys-fs/fuse/fuse-2.5.0-r1.ebuild b/sys-fs/fuse/fuse-2.5.0-r1.ebuild new file mode 100644 index 000000000000..5ca7b78ba913 --- /dev/null +++ b/sys-fs/fuse/fuse-2.5.0-r1.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-fs/fuse/fuse-2.5.0-r1.ebuild,v 1.1 2006/01/20 20:20:26 genstef Exp $ + +inherit linux-mod eutils + +MY_P=${P/_/-} +DESCRIPTION="An interface for filesystems implemented in userspace." +HOMEPAGE="http://fuse.sourceforge.net" +SRC_URI="mirror://sourceforge/fuse/${MY_P}.tar.gz" +LICENSE="GPL-2" +KEYWORDS="~amd64 ~ppc ~sparc ~x86" +IUSE="" +S=${WORKDIR}/${MY_P} + +MODULE_NAMES="fuse(fs:${S}/kernel)" +CONFIG_CHECK="@FUSE_FS:fuse" +BUILD_PARAMS="majver=${KV_MAJOR}.${KV_MINOR} + fusemoduledir=${ROOT}/lib/modules/${KV_FULL}/fs" +BUILD_TARGETS="all" +ECONF_PARAMS="--with-kernel=${KV_OUT_DIR}" +FUSE_FS_ERROR="We have detected FUSE already built into the kernel. +We will continue, but we wont build the module this time." + +src_unpack() { + unpack ${A} + cd ${S} + epatch ${FILESDIR}/fuse-fix-lazy-binding.patch + epatch ${FILESDIR}/fuse-2.6.16.patch +} + +src_compile() { + einfo "Preparing fuse userland" + econf --disable-kernel-module --disable-example || \ + die "econf failed for fuse userland" + emake || die "emake failed" + + sed -i 's/.*depmod.*//g' ${S}/kernel/Makefile.in + convert_to_m ${S}/kernel/Makefile.in + linux-mod_src_compile +} + +src_install() { + make DESTDIR="${D}" install || die "make install failed" + + dodoc AUTHORS ChangeLog Filesystems README README-2.4 \ + README.NFS NEWS doc/how-fuse-works + docinto example + dodoc example/* + + linux-mod_src_install +} |