# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
setvar pkgname = 'xapian-bindings'
setvar pkgver = '1.4.4'
setvar pkgrel = '0'
setvar pkgdesc = ""Binding libraries for xapian""
setvar url = ""http://www.xapian.org""
setvar arch = ""all""
setvar license = ""GPL2+""
# Disabled check for now since php7 smoketest fails
setvar options = ""!check""
setvar _py_makedepends = ""python-dev
	py-sphinx-autobuild py2-sphinx
	py2-requests py-setuptools py2-typing
    py-urllib3 py-chardet py-idna
    python3-dev py3-requests py3-certifi""
setvar _php_makedepends = ""php7-dev""
setvar _perl_makedepends = ""perl-dev""
setvar _lua_makedepends = ""lua5.3-dev""
setvar _ruby_makedepends = ""ruby-dev ruby ruby-rdoc ruby-irb""
setvar _tcl_makedepends = ""tcl-dev""

setvar makedepends = ""automake autoconf libtool bash xapian-core-dev sphinx
	$_py_makedepends
	$_php_makedepends
	$_perl_makedepends
	$_lua_makedepends
	$_ruby_makedepends
	$_tcl_makedepends""
setvar subpackages = ""$pkgname-perl $pkgname-lua $pkgname-doc
	$pkgname-python $pkgname-python3 $pkgname-ruby $pkgname-tcl
	$pkgname-php7""
setvar source = ""http://www.oligarchy.co.uk/xapian/$pkgver/$pkgname-$pkgver.tar.xz""

setvar builddir = ""$srcdir"/$pkgname-$pkgver"

proc prepare {
	default_prepare
	cd $builddir
	aclocal && autoconf
	libtoolize
	autoreconf -fvi
	# workaround for non-existing-dir while build docs for python
	mkdir -p python/docs/_static
	mkdir -p python3/docs/_static
}

proc build {
	cd $builddir
	export LUA=/usr/bin/lua5.3
	export LUA_INC=/usr/include/lua5.3
	export LUA_LIB=/usr/lib/lua/5.3
	export LUA_SO=.so
	export PERL=/usr/bin/perl
	export PERL_LIB=/usr/share/perl5/vendor_perl
	export PERL_ARCH=/usr/share/perl5/vendor_perl
	export PHP7=/usr/bin/php7
	export PHP_CONFIG7=/usr/bin/php-config7
	export PYTHON2=/usr/bin/python2
	export PYTHON3=/usr/bin/python3
	export RUBY=/usr/bin/ruby
	export RUBY_LIB=/usr/lib/ruby
	export RUBY_LIB_ARCH=/usr/lib/ruby
	export TCLSH=/usr/bin/tclsh8.6
	export TCL_LIB=/usr/lib/tcl8.6/$pkgname-$pkgver
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--with-perl \
		--with-lua \
		--with-php7 \
		--with-python \
		--with-python3 \
		--with-ruby \
		--with-tcl \
		XAPIAN_CONFIG=/usr/bin/xapian-config
	make
}

proc package {
	cd $builddir
	make DESTDIR=$pkgdir install
}

proc php7 {
	setvar pkgdesc = ""PHP7 bindings for the Xapian search engine library""

	install -d "$subpkgdir"/usr/share/php7 \
		"$subpkgdir"/usr/lib/php7/modules \
		"$subpkgdir"/etc/php7/conf.d
	echo ';extension=xapian.so' > "$subpkgdir/etc/php7/conf.d/xapian.ini"

	if test -d "$pkgdir"/usr/lib/php7/modules {
		mv "$pkgdir"/usr/lib/php7/modules/* "$subpkgdir"/usr/lib/php7/modules/
	} else {
		mv "$pkgdir"/usr/lib/php7/* "$subpkgdir"/usr/lib/php7/
	}
}

proc perl {
	setvar pkgdesc = ""Perl bindings for the Xapian search engine library""

	install -d "$subpkgdir"/usr/share/perl5
	mv "$pkgdir"/usr/share/perl5 "$subpkgdir"/usr/share/
}

proc lua {
	setvar pkgdesc = ""Lua 5.3 bindings for the Xapian search engine library""

	install -d "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/lua "$subpkgdir"/usr/lib
}

proc python {
	setvar pkgdesc = ""Python bindings for the Xapian search engine library""

	install -d "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/python2.7 "$subpkgdir"/usr/lib
}

proc python3 {
	setvar pkgdesc = ""Python3 bindings for the Xapian search engine library""

	install -d "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/python3* "$subpkgdir"/usr/lib
}

proc ruby {
	setvar pkgdesc = ""Ruby bindings for the Xapian search engine library""

	install -d "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/ruby "$subpkgdir"/usr/lib
}

proc tcl {
	setvar pkgdesc = ""Tcl bindings for the Xapian search engine library""

	install -d "$subpkgdir"/usr/lib/tcl8.6
	mv "$pkgdir"/usr/lib/tcl8.6/$pkgname-$pkgver "$subpkgdir"/usr/lib/tcl8.6
}

setvar sha512sums = ""006e771b3ea654130b4f76f1a1caee576fd5a3fa6317ca44f1e5483671e8c83073ecbde4f3fc7f84c75590eec53acb59701af4cf9bcd72355ed9d53924492b53  xapian-bindings-1.4.4.tar.xz""