# Maintainer: Anatol Pomozov
# Contributor: Byron Clark <byron@theclarkfamily.name>

# This package contains only thrift compiler and C/C++ libraries
# for all the language binding one should use corresponding language-specific package manager:
# CPAN for perl, gem for ruby, pip for python etc... Or better to create arch packages that install
# the binding from the language specific managers python2-thrift, perl-thrift, ruby-thrift, ...

pkgname=thrift
pkgver=0.20.0
pkgrel=1
pkgdesc='Scalable cross-language services framework for IPC/RPC'
arch=(x86_64 aarch64)
url='https://thrift.apache.org'
license=(APACHE)
depends=(gcc-libs openssl)
makedepends=(qt5-base boost libevent emacs-nox)
optdepends=(
  'qt5-base: TQTcpServer (Qt5) support'
)
source=(https://archive.apache.org/dist/thrift/$pkgver/thrift-$pkgver.tar.gz)
sha256sums=('b5d8311a779470e1502c027f428a1db542f5c051c8e1280ccd2163fa935ff2d6')

build() {
  cd thrift-$pkgver

  ./bootstrap.sh
  ./configure --prefix=/usr \
	      --enable-plugin \
              --with-cpp \
              --with-c_glib \
              --with-qt5 \
              --with-libevent \
              --with-csharp \
              --without-haskell \
              --without-php \
              --without-ruby \
              --without-python \
              --without-erlang \
              --without-perl \
              --without-java \
              --without-c_sharp \
              --without-d \
              --without-php \
              --without-go \
              --without-lua \
              --without-nodejs
              
  make

  emacs -Q --batch -f batch-byte-compile contrib/thrift.el
}

check() {
  cd thrift-$pkgver
#  make check
}

package() {
  cd thrift-$pkgver
  make DESTDIR="$pkgdir" install

  install -m0644 -D contrib/thrift.vim "$pkgdir"/usr/share/vim/vimfiles/syntax/thrift.vim
  install -m0644 -D contrib/thrift.el "$pkgdir"/usr/share/emacs/site-lisp/thrift.el
  install -m0644 -D contrib/thrift.elc "$pkgdir"/usr/share/emacs/site-lisp/thrift.elc
}
