summaryrefslogtreecommitdiffstats
path: root/rules/krb5.make
blob: 10240a289598e44f4abc7df60e3703f66b3d84c3 (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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
# -*-makefile-*-
#
# Copyright (C) 2017 by Jan Luebbe <jlu@pengutronix.de>
#
# For further information about the PTXdist project and license conditions
# see the README file.
#

#
# We provide this package
#
PACKAGES-$(PTXCONF_KRB5) += krb5

#
# Paths and names
#
KRB5_VERSION	:= 1.19.1
KRB5_MD5	:= 81257292f8243f735654d4fd5d1fef6a
KRB5		:= krb5-$(KRB5_VERSION)
KRB5_SUFFIX	:= tar.gz
KRB5_URL	:= https://web.mit.edu/kerberos/dist/krb5/$(basename $(KRB5_VERSION))/$(KRB5).$(KRB5_SUFFIX)
KRB5_SOURCE	:= $(SRCDIR)/$(KRB5).$(KRB5_SUFFIX)
KRB5_DIR	:= $(BUILDDIR)/$(KRB5)
KRB5_LICENSE	:= MIT

KRB5_SUBDIR	:= src

# ----------------------------------------------------------------------------
# Prepare
# ----------------------------------------------------------------------------

# keyutils is only useful for the client case

KRB5_PATH	:= PATH=$(CROSS_PATH)
KRB5_CONF_ENV	:= \
	$(CROSS_ENV) \
	krb5_cv_attr_constructor_destructor=yes,yes \
	ac_cv_func_regcomp=yes \
	ac_cv_printf_positional=yes \
	ac_cv_file__etc_environment=yes \
	ac_cv_file__etc_TIMEZONE=no \
	ac_cv_header_keyutils_h=$(call ptx/yesno, PTXCONF_KRB5_CLIENT_TOOLS)

#
# autoconf
#
KRB5_CONF_TOOL	:= autoconf
KRB5_CONF_OPT	:= \
	$(CROSS_AUTOCONF_USR) \
	--disable-dns-for-realm \
	--enable-delayed-initialization \
	--enable-thread-support \
	--disable-rpath \
	--disable-athena \
	--disable-nls \
	--disable-audit-plugin \
	--$(call ptx/endis, PTXCONF_ARCH_X86_64)-aesni \
	--enable-kdc-lookaside-cache \
	--disable-asan \
	--enable-pkinit \
	--without-size-optimizations \
	--with-system-et \
	--$(call ptx/wwo,PTXCONF_KRB5_ADMIN_TOOLS)-system-ss \
	--without-system-db \
	--without-netlib \
	--without-hesiod \
	--without-ldap \
	--without-tcl \
	--without-vague-errors \
	--with-crypto-impl=openssl \
	--with-prng-alg=fortuna \
	--with-tls-impl=openssl \
	--$(call ptx/wwo,PTXCONF_KRB5_CLIENT_TOOLS)-keyutils \
	--with-spake-openssl \
	--without-lmdb \
	--without-libedit \
	--without-readline \
	--without-system-verto

# ----------------------------------------------------------------------------
# Target-Install
# ----------------------------------------------------------------------------

$(STATEDIR)/krb5.targetinstall:
	@$(call targetinfo)

	@$(call install_init, krb5)
	@$(call install_fixup, krb5,PRIORITY,optional)
	@$(call install_fixup, krb5,SECTION,base)
	@$(call install_fixup, krb5,AUTHOR,"Jan Luebbe <jlu@pengutronix.de>")
	@$(call install_fixup, krb5,DESCRIPTION,missing)

	@$(call install_lib, krb5, 0, 0, 0644, libgssapi_krb5)
	@$(call install_lib, krb5, 0, 0, 0644, libgssrpc)
	@$(call install_lib, krb5, 0, 0, 0644, libk5crypto)
	@$(call install_lib, krb5, 0, 0, 0644, libkdb5)
	@$(call install_lib, krb5, 0, 0, 0644, libkrb5)
	@$(call install_lib, krb5, 0, 0, 0644, libkrb5support)

ifdef PTXCONF_KRB5_ADMIN_LIBS
	@$(call install_lib, krb5, 0, 0, 0644, libkadm5clnt_mit)
	@$(call install_lib, krb5, 0, 0, 0644, libkadm5srv_mit)
endif

ifdef PTXCONF_KRB5_CLIENT_TOOLS
	@$(call install_copy, krb5, 0, 0, 0755, -, /usr/bin/kdestroy)
	@$(call install_copy, krb5, 0, 0, 0755, -, /usr/bin/klist)
	@$(call install_copy, krb5, 0, 0, 0755, -, /usr/bin/kpasswd)
	@$(call install_copy, krb5, 0, 0, 0755, -, /usr/bin/kswitch)
	@$(call install_copy, krb5, 0, 0, 0755, -, /usr/bin/ksu)
	@$(call install_copy, krb5, 0, 0, 0755, -, /usr/bin/ktutil)
	@$(call install_copy, krb5, 0, 0, 0755, -, /usr/bin/kvno)
endif

ifdef PTXCONF_KRB5_ADMIN_TOOLS
	@$(call install_copy, krb5, 0, 0, 0755, -, /usr/bin/kadmin)
	@$(call install_copy, krb5, 0, 0, 0755, -, /usr/bin/kinit)
endif

ifdef PTXCONF_KRB5_EXAMPLES
	@$(call install_copy, krb5, 0, 0, 0755, -, /usr/bin/gss-client)
	@$(call install_copy, krb5, 0, 0, 0755, -, /usr/bin/sclient)
	@$(call install_copy, krb5, 0, 0, 0755, -, /usr/sbin/gss-server)
	@$(call install_copy, krb5, 0, 0, 0755, -, /usr/sbin/sserver)
endif

	@$(call install_finish, krb5)

	@$(call touch)

# vim: syntax=make