summaryrefslogtreecommitdiff
blob: 85ab6fdb3b6094be63d728250a13a0868461ac46 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

inherit autotools

DESCRIPTION="User-mode filesystem implementation"
HOMEPAGE="https://sourceforge.net/projects/lufs/"
SRC_URI="https://downloads.sourceforge.net/lufs/${P}.tar.gz"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ppc x86"
IUSE="debug"

RDEPEND="sys-fs/lufis"
DEPEND="${RDEPEND}"

PATCHES=(
	"${FILESDIR}"/${P}-fPIC.patch
	"${FILESDIR}"/${PN}-automount-port.diff
	"${FILESDIR}"/${P}-enable-gnome-2.patch
	"${FILESDIR}"/${PN}-no-kernel.patch
	"${FILESDIR}"/${P}-gcc43.patch
)

pkg_setup() {
	filesystems="ftpfs localfs"
	use amd64 || filesystems+=" sshfs"
}

src_prepare() {
	default
	eautoreconf
}

src_configure() {
	unset ARCH
	econf $(use_enable debug)
}

src_compile() {
	einfo "Compiling for ${filesystems}"

	cd filesystems || die
	local i
	for i in ${filesystems} ; do
		pushd ${i} &>/dev/null || die
		emake
		popd &>/dev/null || die
	done
}

src_install() {
	cd filesystems || die
	local i
	for i in ${filesystems} ; do
		pushd ${i} &>/dev/null || die
		emake DESTDIR="${D}" install
		popd &>/dev/null || die
	done
}

pkg_postinst() {
	ewarn "Lufs Kernel support and lufsd,lufsmnt have been disabled in favour"
	ewarn "of lufis, please use lufis to mount lufs-filesystems, eg:"
	if use amd64; then
		elog "# lufis fs=ftpfs,host=ftp.kernel.org /mnt/lufis/ -s"
	else
		elog "# lufis fs=sshfs,host=dev.gentoo.org,username=genstef /mnt/lufis/ -s"
	fi
	ewarn "If something does not work for you with this setup please"
	ewarn "complain to bugs.gentoo.org"
	einfo "Note: There is also the native sshfs implementation now"
	use amd64 && ewarn "lufs-sshfs does not work on amd64 and is disabled there."
}