# Contributor: Łukasz Jendrysik
# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
setvar pkgname = 'chrony'
setvar pkgver = '3.2'
setvar pkgrel = '0'
setvar _ver = ${pkgver/_/-}
setvar pkgdesc = ""NTP client and server programs""
setvar url = ""https://chrony.tuxfamily.org/""
setvar pkgusers = "$pkgname"
setvar pkggroups = "$pkgname"
setvar arch = ""all""
setvar license = ""GPL2""
setvar install = ""$pkgname.pre-install $pkgname.pre-upgrade""
setvar depends = """"
setvar makedepends = ""libcap-dev texinfo asciidoctor""
setvar subpackages = ""$pkgname-doc""
setvar source = ""https://download.tuxfamily.org/$pkgname/$pkgname-$_ver.tar.gz
	max_resolve_interval.patch
	chronyd.confd
	chronyd.initd
	chrony.logrotate
	chrony.conf
	timepps.h
	""

setvar builddir = ""$srcdir"/$pkgname-$_ver"
proc prepare {
	cd $builddir
	# We copy timepps.h to the local build directory instead of
	# creating a pps-tools-dev package for ppstime.h
	# (See https://github.com/ago/pps-tools)
	mkdir -p pps-tools/sys
	cp "$srcdir"/timepps.h "$builddir"/pps-tools/sys/

	# apply patches (if any)
	default_prepare || return 1
}

proc build {
	cd $builddir"
	CPPFLAGS="$CPPFLAGS -I./pps-tools/"" ./configure \
		--prefix=/usr \
		--infodir=/usr/share/info \
		--mandir=/usr/share/man \
		--sysconfdir=/etc/$pkgname \
		--disable-readline \
		--with-user=$pkgname \
		--with-sendmail=/usr/sbin/sendmail \
		|| return 1
	make all docs || return 1
}

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

	mkdir -p "$pkgdir"/etc/logrotate.d
	install -Dm644 "$srcdir"/chrony.logrotate "$pkgdir"/etc/logrotate.d/chrony || return 1

	mkdir -p "$pkgdir"/usr/share/doc/chrony
	install -m644 examples/*.example "$pkgdir"/usr/share/doc/chrony/
	install -Dm755 "$srcdir"/chronyd.initd "$pkgdir"/etc/init.d/chronyd
	install -Dm644 "$srcdir"/chronyd.confd "$pkgdir"/etc/conf.d/chronyd

	install -dm2750 -g wheel "$pkgdir"/var/log/chrony

	mkdir -p "$pkgdir"/var/lib/chrony \
		"$pkgdir"/etc/chrony

	# chrony.drift must be writable by chrony user
	chown $pkgusers:$pkggroups "$pkgdir"/etc/chrony
	install -m644 "$srcdir"/chrony.conf "$pkgdir"/etc/chrony/chrony.conf
	chown root:root "$pkgdir"/etc/chrony/*

	chown $pkgusers:$pkggroups "$pkgdir"/var/lib/chrony
	touch "$pkgdir"/var/lib/chrony/chrony.drift
}

setvar sha512sums = ""496af5bed91600f268c1a0fa577bb8c7785e485f78598b666829c674e94770c16548cec4289a2ae9d0a51191d2705eda00886cb6cccae3828aa201a49d4783a4  chrony-3.2.tar.gz
19faf017e4502947a9b549b8165bf31bf11b814f2bf7b013a1ac11460afa654287d58de341cfa1f10b6a34334ed7d1d34e58b350c3c68bf6336530712d4db13c  max_resolve_interval.patch
6919c7bddce2a8f81c0f2759c7c58506e97f89102bfeb7b5c19c6da5ed4cbd9070faddd4f3fb411bb4c653fffbdcc93a7f7dc810f38b199f038b1d4072f57640  chronyd.confd
9a18c9744d7b78d9b9be3f0ae0b43cb988b294c342764802e0d5df835d450e748584c0b345f7161f14d84e15c8bbd491514ee9dc45e4a65f1276c52124d2e312  chronyd.initd
ab38f06bf45888846778ad935e24abb30d13b6805e9a750bc694ff953695fa8c5b33aac560f5f7f96dc46031c1a38660e5c418b6fce6fb34a87908a9a3c99357  chrony.logrotate
2719b71251a110d3a9f697fad17f74a898bb0cf33cfbf60f4ec3e598ad8f09cadc6afbb069be06aff8da8f58e00ba622f4384b9dd88f25b279e6f3b6cb43ad3c  chrony.conf
eb11fc19243d1789016d88eb7645bfe67c46304547781489bf36eb1dd4c252d523681ff835a6488fa0ef62b6b9e2f781c672279f4439f5d5640a3f214a113048  timepps.h""