# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=hylafaxplus
pkgver=7.0.10
pkgrel=0
pkgdesc="Making the Premier Open-Source Fax Management System Even Better"
url="https://hylafax.sourceforge.net/"
arch="all"
license="MIT"
# check/test not supported from upstream
options="!check"
depends="ghostscript bash tiff-tools findutils"
makedepends="zlib-dev tiff-dev gettext-dev openldap-dev lcms2-dev
	libffi-dev jbig2dec-dev sed readline-dev openssl-dev"
subpackages="$pkgname-dbg $pkgname-doc $pkgname-lang $pkgname-openrc"
source="https://downloads.sourceforge.net/hylafax/hylafax-$pkgver.tar.gz
	$pkgname.initd
	$pkgname.confd
	common-functions-busybox-awk.patch
	no-locale.patch
	utf8-dictionary.patch
	dont-ship-xferfaxlog-file.patch
	config-files-default-extension.patch
	"
builddir="$srcdir"/hylafax-$pkgver

# secfixes:
#   7.0.2-r2:
#     - CVE-2020-15396
#     - CVE-2020-15397

prepare() {
	default_prepare
	update_config_guess
}

build() {
	# the configure script does not handle ccache or distcc
	export CC=gcc
	export CXX=g++
	./configure \
		--nointeractive \
		--disable-pam \
		--with-DIR_BIN=/usr/bin \
		--with-DIR_SBIN=/usr/sbin \
		--with-DIR_LIB=/usr/lib \
		--with-DIR_LIBEXEC=/usr/sbin \
		--with-DIR_LIBDATA=/usr/lib/$pkgname \
		--with-DIR_LOCALE=/usr/share/locale/"$pkgname" \
		--with-DIR_LOCKS=/var/lock \
		--with-DIR_MAN=/usr/share/man \
		--with-DIR_SPOOL=/var/spool/"$pkgname" \
		--with-DIR_HTML=/usr/share/doc/"$pkgname"/html \
		--with-PATH_IMPRIP="" \
		--with-SYSVINIT=no \
		--with-REGEX=yes \
		--with-LIBTIFF="-ltiff -lz" \
		--with-LIBINTL="-lintl" \
		--with-DSO=auto \
		--with-PATH_EGETTY=/bin/false \
		--with-PATH_VGETTY=/bin/false \
		--with-SYSUID=root \
		--with-SYSGID=root

	# parallel build breaks libfaxutil dso building
	make -j1
}

package() {
	# this makefile has issues installing, it doesn't use the standard
	#   install - but the following seems to work
	mkdir -p "$pkgdir"/usr/bin "$pkgdir"/usr/sbin
	mkdir -p "$pkgdir"/usr/lib/$pkgname "$pkgdir"/usr/share/man
	mkdir -p "$pkgdir"/usr/share/locale/$pkgname
	touch "$pkgdir"/usr/lib/$pkgname/pagesizes
	chown uucp:uucp "$pkgdir"/usr/lib/$pkgname
	chmod 0600 "$pkgdir"/usr/lib/$pkgname

	make \
		BIN="$pkgdir/usr/bin" \
		SBIN="$pkgdir/usr/sbin" \
		LIBDIR="$pkgdir/usr/lib" \
		LIB="$pkgdir/usr/lib" \
		LIBEXEC="$pkgdir/usr/sbin" \
		LIBDATA="$pkgdir/usr/lib/$pkgname" \
		MAN="$pkgdir/usr/share/man" \
		LOCALEDIR="$pkgdir/usr/share/locale/$pkgname" \
		SPOOL="$pkgdir/var/spool/$pkgname" \
		HTMLDIR="$pkgdir/usr/share/doc/$pkgname/html" \
	install

	install -m644 -D "$builddir/COPYRIGHT" \
		"$pkgdir"/usr/share/licenses/$pkgname/COPYRIGHT
	install -m644 -D "$builddir/README" \
		"$pkgdir"/usr/share/doc/$pkgname/README

	install -D -m755 "$srcdir"/$pkgname.initd \
		"$pkgdir"/etc/init.d/$pkgname
	install -D -m644 "$srcdir"/$pkgname.confd \
		"$pkgdir"/etc/conf.d/$pkgname
}

sha512sums="
e87758307ab870b6d2d3a517b3e1448375edb0c4725df96b827fcd12c8323059134bf328196f1155781b5f1021700ae916f32c6343543cb1378dd6eaa965900b  hylafax-7.0.10.tar.gz
ae9de1dbf53ef64acd8b03515c5cd840c12596921edb8c45a333eb7a69e911ec3a449a9f0201c5c73d54d9f01c4696f1accacf1e83137737341a5913f0725b16  hylafaxplus.initd
a2117eddc8f0ff70a23a90f2001dcb88c5bddee46ffa021d6d1701cc5cfc3bcb0362ead2b1b1ce2b288992728053c5947466d08916649f45e7dfb1876576e50f  hylafaxplus.confd
41ae2055a7781d83fc275aafe18ced0fe75ba79d3ad7d5096eabaeae3a514b564723185dd33820268577174f6c53bfcfddb30922ba50754b15c5c3b0abbec837  common-functions-busybox-awk.patch
4a1243daff9904e6395c3e28aa4a78a74de99f5aa9dbf5055a3781acfcd9b1b3db42b1569409b27e3ef9b0e55272dc99122436a79a08c9a1c140c2547c5a2c15  no-locale.patch
f5f1e33897a91b8297311c033d50e7ea2f9088568264a5b9224285066a504da8cc4296f973dd0a70e09abca538cef26964c6181f4f67f76400783d0697f05e61  utf8-dictionary.patch
56a747d0592a4f7caa90b4bbf2f7f01a8000e80bea0f33a4d15af87315789cc3ca0b6031312db6d7a93ac4f4d16abe540331ef841c4911b291f0af30e41c8e8f  dont-ship-xferfaxlog-file.patch
49bd5e1f590c59de1a96cafa96f3ce5ba0afbacbf08f026682f5be56e4405f95a06df6acef5429a158652b967a446c7c976274729342608527ccbc035979f0b1  config-files-default-extension.patch
"
