# Contributor: Nathan Johnson <nathan@nathanjohnson.info>
# Maintainer: Nathan Johnson <nathan@nathanjohnson.info>
pkgname=libcouchbase
pkgver=2.8.5
pkgrel=0
pkgdesc="C client library for Couchbase"
url="https://developer.couchbase.com/community"
arch="all"
license="Apache-2.0"
depends=
depends_dev="musl-dev libressl-dev snappy-dev"
makedepends="$depends_dev cmake perl libtool libev-dev libevent-dev libuv-dev"
subpackages="$pkgname-dev $pkgname-bin $pkgname-doc $pkgname-libevent $pkgname-libev $pkgname-libuv"
source="$pkgname-$pkgver.tar.gz::https://github.com/couchbase/libcouchbase/archive/$pkgver.tar.gz
	disable_git_version_check.patch
	fix_socktest.patch"
builddir="$srcdir/$pkgname-$pkgver"

build() {
	mkdir "$builddir"/build
	cd "$builddir"/build
	../cmake/configure \
		--prefix=/usr \
		--disable-couchbasemock
	make
}

check() {
	cd "$builddir"/build
	ctest
}

package() {
	make -C "$builddir"/build install DESTDIR="$pkgdir"
}

dev() {
	default_dev
	mv "$subpkgdir"/usr/bin/cbc-write-config \
		"$pkgdir"/usr/bin
	rmdir "$subpkgdir"/usr/bin
}

libevent() {
	pkgdesc="$pkgdesc (libevent backend)"
	depends="$pkgname libevent"

	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libcouchbase_libevent.so "$subpkgdir"/usr/lib
}

libev() {
	pkgdesc="$pkgdesc (libev backend)"
	depends="$pkgname libev"

	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libcouchbase_libev.so "$subpkgdir"/usr/lib
}

libuv() {
	pkgdesc="$pkgdesc (libuv backend)"
	depends="$pkgname libuv"

	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libcouchbase_libuv.so "$subpkgdir"/usr/lib
}

bin() {
	pkgdesc="$pkgdesc (command line utilities)"
	depends="$pkgname"

	mkdir -p "$subpkgdir"/usr/bin
	mv "$pkgdir"/usr/bin "$subpkgdir"/usr/
}

sha512sums="82f9c45ea1f79fc53b54badd7de2f9ca69e0a941d09664ce80547135b36d425197f2e37d88710cef2d92c31f91718ef752fa87223214e549075c4427ae2f7d24  libcouchbase-2.8.5.tar.gz
987b76b9c8a38a1f144bcada3c24192b30b352c993c433f4a2a1e381b765ae6bb845ebc6393c794da1b4efbb68fd1d34b027104fecf5c9bcc29b0f58c7f6a474  disable_git_version_check.patch
72319b86fdd91728723ccb091e72199788a84e2ec9ea12c0fcd1ed686eb155ec11e0addbff96735f83e7f31764a85650f0483b6e76d3a8bee16f71b2751fe4a9  fix_socktest.patch"
