# Contributor: Natanael Copa <ncopa@alpinelinux.org>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=gvfs
pkgver=1.34.1
pkgrel=0
pkgdesc="Backends for the gio framework in GLib"
url="http://ftp.gnome.org/pub/gnome/sources/gvfs/${pkgver%.*}/"
arch="all"
license="GPL"
depends=""
options="!check"  # no tests available
triggers="$pkgname.trigger=/usr/lib/gvfs"
makedepends="intltool fuse-dev libgudev-dev expat-dev samba-dev
	libsoup-dev avahi-dev libarchive-dev udisks2-dev libgphoto2-dev
	libcdio-paranoia-dev libgcrypt-dev libxslt-dev docbook-xsl
	libmtp-dev gcr-dev libcap-dev"
subpackages="$pkgname-dev $pkgname-doc $pkgname-lang
	$pkgname-afp
	$pkgname-archive
	$pkgname-avahi
	$pkgname-cdda
	$pkgname-dav
	$pkgname-fuse
	$pkgname-gphoto2
	$pkgname-smb
	$pkgname-mtp
	"
source="https://download.gnome.org/sources/gvfs/${pkgver%.*}/gvfs-$pkgver.tar.xz"

builddir="$srcdir/$pkgname-$pkgver"
build() {
	cd "$builddir"
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--sysconfdir=/etc \
		--libexecdir=/usr/lib/gvfs \
		--mandir=/usr/share/man \
		--infodir=/usr/share/info \
		--enable-gdu \
		--enable-http \
		--enable-libmtp \
		--enable-samba
	make
}

package() {
	cd "$builddir"
	make DESTDIR="$pkgdir" install
}

_mv_files() {
	local i
	for i in "$@"; do
		mkdir -p "$subpkgdir"/${i%/*}
		mv "$pkgdir"/$i "$subpkgdir"/$i
	done
}

fuse() {
	pkgdesc="FUSE support for gvfs"
	cd "$pkgdir"
	_mv_files usr/lib/gvfs/gvfsd-fuse
}

smb() {
	pkgdesc="Windows fileshare support for gvfs"
	cd "$pkgdir"
	_mv_files \
		usr/lib/gvfs/gvfsd-smb* \
		usr/share/gvfs/mounts/smb* \
		usr/share/glib-*/schemas/org.gnome.system.smb.gschema.xml \
		usr/share/GConf/gsettings/gvfs-smb.convert
}

mtp() {
	pkgdesc="MTP support for gvfs"
	cd "$pkgdir"
	_mv_files usr/lib/gvfs/gvfsd-mtp
}

archive() {
	pkgdesc="Archiving support for gvfs"
	cd "$pkgdir"
	_mv_files \
		usr/lib/gvfs/gvfsd-archive* \
		usr/share/gvfs/mounts/archive*
}

obexftp() {
	pkgdesc="ObexFTP support for gvfs"
	cd "$pkgdir"
	_mv_files \
		usr/lib/gvfs/gvfsd-obex* \
		usr/share/gvfs/mounts/obex*
}

gphoto2() {
	pkgdesc="gphoto2 support for gvfs"
	cd "$pkgdir"
	_mv_files \
		usr/lib/gvfs/gvfs*gphoto* \
		usr/share/gvfs/*/gphoto* \
		usr/share/dbus*/services/*GPhoto*
}

afp() {
	pkgdesc="AFP support for gvfs"
	cd "$pkgdir"
	_mv_files \
		usr/lib/gvfs/gvfs*afp* \
		usr/share/gvfs/*/afp*
}

avahi() {
	pkgdesc="DNS-SD support for gvfs"
	cd "$pkgdir"
	_mv_files \
		usr/lib/gvfs/gvfs*dns* \
		usr/share/gvfs/mounts/dns-sd.mount \
		usr/share/glib-*/schemas/org.gnome.system.dns_sd.gschema.xml \
		usr/share/GConf/gsettings/gvfs-dns-sd.convert
}

cdda() {
	pkgdesc="CDDA support for gvfs"
	cd "$pkgdir"
	_mv_files \
		usr/share/gvfs/mounts/cdda.mount \
		usr/lib/gvfs/gvfsd-cdda
}

dav() {
	pkgdesc="WebDAV support for gvfs"
	cd "$pkgdir"
	_mv_files \
		usr/share/gvfs/mounts/dav.mount \
		usr/share/gvfs/mounts/dav+sd.mount \
		usr/lib/gvfs/gvfsd-dav
}

#
#afc() {
#	pkgdesc="AFC support for gvfs"
#}

sha512sums="383f20c3dad1ff833f1d14466f215c7183459c0ed18d842fd09a68061e09814f2a4e33d574a0bf62bc9b6f5023721d03461eaaed86e840513f7e115662af91b6  gvfs-1.34.1.tar.xz"
