# Template file for 'mit-krb5'
# if there is a bump in .so version,
# also update srcpkgs/libgssglue/files/gssapi_mech.conf
pkgname=mit-krb5
version=1.21.3
revision=1
_distver=$(echo $version | cut -d. -f-2)
build_style=gnu-configure
configure_args="--sbindir=/usr/bin --disable-rpath --with-system-et
 --without-system-verto --with-system-ss --enable-shared --with-system-db
 $(vopt_with ldap) $(vopt_with lmdb)"
hostmakedepends="e2fsprogs-devel flex perl pkg-config"
makedepends="e2fsprogs-devel db-devel $(vopt_if ldap libldap-devel)
 $(vopt_if lmdb lmdb-devel)"
short_desc="MIT Kerberos 5 implementation"
maintainer="Klara Modin <klarasmodin@gmail.com>"
license="MIT"
homepage="http://web.mit.edu/kerberos"
distfiles="http://kerberos.org/dist/krb5/${_distver}/krb5-${version}.tar.gz"
checksum=b7a4cd5ead67fb08b980b21abd150ff7217e85ea320c9ed0c6dadd304840ad35
build_options="ldap lmdb"
build_options_default="ldap"
desc_option_lmdb="Enable LMDB database backend"

post_patch() {
	# Fix db plugin.
	vsed -i -e "s|<db.h>|<db_185.h>|" \
		src/plugins/kdb/db2/{adb_openclose.c,db2_exp.c,kdb_db2.c,policy_db.h}
}

do_configure() {
	./src/configure ${configure_args} \
		ac_cv_func_pthread_once=yes ac_cv_func_pthread_rwlock_init=yes \
		acx_pthread_ok=yes ac_cv_func_regcomp=yes ac_cv_printf_positional=yes \
		krb5_cv_attr_constructor_destructor=yes,yes
}

post_install() {
	vsv krb5kdc
	vsv kadmind
	vlicense NOTICE

	# Install schema files for LDAP database backend
	if [ -n "$(vopt_if ldap present)" ]; then
		for schema in kerberos.{schema,ldif,openldap.ldif}; do
			vdoc src/plugins/kdb/ldap/libkdb_ldap/$schema
		done
	fi
}

mit-krb5-client_package() {
	short_desc+=" - client programs"
	pkg_install() {
		for f in uuclient ktutil kswitch gss-client kvno kinit kpasswd \
			kdestroy sclient kadmin k5srvutil sim_client klist ksu; do
			vmove usr/bin/${f}
			if [ -f ${DESTDIR}/usr/share/man/man1/${f}.1 ]; then
				vmove usr/share/man/man1/${f}.1
			fi
		done
	}
}

mit-krb5-devel_package() {
	depends="${makedepends} mit-krb5-libs>=${version}_${revision}"
	short_desc+=" - development files"
	pkg_install() {
		vmove usr/include
		vmove usr/bin/krb5-config
		vmove usr/lib/pkgconfig
		vmove "usr/lib/*.so"
	}
}

mit-krb5-libs_package() {
	short_desc+=" - runtime libraries"
	pkg_install() {
		vmove "usr/lib/*.so.*"
	}
}
