summaryrefslogtreecommitdiff
path: root/package/krb5/Makefile
blob: 02681c76ec3ecd87a37cf6ffaadcee8194062d05 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# This file is part of the OpenADK project. OpenADK is copyrighted
# material, please see the LICENCE file in the top-level directory.

include $(ADK_TOPDIR)/rules.mk

PKG_NAME:=		krb5
PKG_VERSION:=		1.13.1
PKG_RELEASE:=		1
PKG_HASH:=		4df629fdf97f362cf81edbf38d613b32b492dd88c876cf3aa1c66562f296663e
PKG_DESCR:=		kerberos server
PKG_SECTION:=		app/crypto
PKG_DEPENDS:=		libkrb5 libncurses keyutils libpthread
PKG_BUILDDEP:=		ncurses gettext-tiny bison-host
PKG_URL:=		http://web.mit.edu/kerberos/
PKG_SITES:=		http://web.mit.edu/kerberos/dist/krb5/1.13/
PKG_LIBNAME:=		libkrb5
PKG_OPTS:=		dev noscripts
PKG_NOPARALLEL:=	1

PKG_SUBPKGS:=		KRB5_SERVER KRB5_CLIENT LIBKRB5
PKGSD_LIBKRB5:=		kerberos libraries
PKGSC_LIBKRB5:=		libs/crypto
PKGSD_KRB5_CLIENT:=	kerberos client tools
PKGSC_KRB5_CLIENT:=	app/crypto
PKGSS_KRB5_CLIENT:=	libkrb5 libncurses

DISTFILES:=		${PKG_NAME}-${PKG_VERSION}-signed.tar
WRKSRC=			${WRKDIST}/src

include $(ADK_TOPDIR)/mk/package.mk

$(eval $(call PKG_template,KRB5_SERVER,krb5-server,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
$(eval $(call PKG_template,KRB5_CLIENT,krb5-client,$(PKG_VERSION)-${PKG_RELEASE},${PKGSS_KRB5_CLIENT},${PKGSD_KRB5_CLIENT},${PKGSC_KRB5_CLIENT}))
$(eval $(call PKG_template,LIBKRB5,libkrb5,$(PKG_VERSION)-${PKG_RELEASE},,${PKGSD_LIBKRB5},${PKGSC_LIBKRB5},${PKG_OPTS}))

CONFIGURE_ARGS+=	--disable-static \
			--disable-profiled \
			--without-system-et \
			--without-system-ss \
			--without-system-verto \
			--without-tcl
CONFIGURE_ENV+=		krb5_cv_attr_constructor_destructor=yes,yes \
			ac_cv_func_regcomp=yes \
			ac_cv_printf_positional=yes \
			ac_cv_file__etc_environment=no \
			ac_cv_file__etc_TIMEZONE=no

post-extract:
	(cd ${WRKDIR}; tar xzf ${PKG_NAME}-${PKG_VERSION}.tar.gz)

pre-build:
	# fix nm call in script, we need the GNU version of nm
	$(SED) "s#@@NM@@#${NM}#" ${WRKSRC}/util/export-check.pl

krb5-server-install:
	${INSTALL_DIR} ${IDIR_KRB5_SERVER}/etc/krb5kdc
	${INSTALL_DIR} ${IDIR_KRB5_SERVER}/usr/sbin
	${INSTALL_DIR} ${IDIR_KRB5_SERVER}/usr/lib/krb5/plugins/kdb
	${INSTALL_DATA} ./files/kdc.conf ${IDIR_KRB5_SERVER}/etc/krb5kdc
	${INSTALL_DATA} ./files/kadm5.acl ${IDIR_KRB5_SERVER}/etc/krb5kdc
	${INSTALL_BIN} ${WRKINST}/usr/bin/kadmin \
		${IDIR_KRB5_SERVER}/usr/sbin
	${INSTALL_BIN} ${WRKINST}/usr/sbin/{kdb5_util,krb5kdc,kadmind,kadmin.local} \
		${IDIR_KRB5_SERVER}/usr/sbin
	${INSTALL_DATA} ${WRKINST}/usr/lib/krb5/plugins/kdb/db2.so \
		${IDIR_KRB5_SERVER}/usr/lib/krb5/plugins/kdb

krb5-client-install:
	${INSTALL_DIR} ${IDIR_KRB5_CLIENT}/usr/bin
	${INSTALL_BIN} ${WRKINST}/usr/bin/{kinit,kpasswd,klist,kdestroy,ktutil} \
		${IDIR_KRB5_CLIENT}/usr/bin

libkrb5-install:
	${INSTALL_DIR} ${IDIR_LIBKRB5}/etc
	${INSTALL_DIR} ${IDIR_LIBKRB5}/usr/lib
	${INSTALL_DATA} ./files/krb5.conf ${IDIR_LIBKRB5}/etc
	${CP} ${WRKINST}/usr/lib/lib{verto,gssrpc,kadm5clnt*,kadm5srv*,kdb5}.so* \
		${IDIR_LIBKRB5}/usr/lib
	${CP} ${WRKINST}/usr/lib/lib{gssapi_krb5,k5crypto,krb5,krb5support}.so* \
		${IDIR_LIBKRB5}/usr/lib
	echo '/usr/lib/libgssapi_krb5.so		mechglue_internal_krb5_init' \
		> ${IDIR_LIBKRB5}/etc/gssapi_mech.conf

include ${ADK_TOPDIR}/mk/pkg-bottom.mk