tests: Use here-doc kadmin in Java test
[heimdal.git] / kdc / Makefile.am
blobca5835930dd0d13fd713cb8638357304ac81f0ad
1 # $Id$
3 include $(top_srcdir)/Makefile.am.common
5 WFLAGS += $(WFLAGS_ENUM_CONV)
7 AM_CPPFLAGS += $(INCLUDE_libintl) $(INCLUDE_openssl_crypto) -I$(srcdir)/../lib/krb5
9 lib_LTLIBRARIES = ipc_csr_authorizer.la \
10                   negotiate_token_validator.la \
11                   libkdc.la
13 if HAVE_CJWT
14 lib_LTLIBRARIES += cjwt_token_validator.la
15 endif
16 if OPENLDAP
17 lib_LTLIBRARIES += altsecid_gss_preauth_authorizer.la
18 endif
21 bin_PROGRAMS = string2key
23 sbin_PROGRAMS = kstash
25 libexec_PROGRAMS = hprop hpropd kdc digest-service \
26                    test_token_validator test_csr_authorizer test_kdc_ca
28 noinst_PROGRAMS = kdc-replay kdc-tester
30 man_MANS = bx509d.8 httpkadmind.8 kdc.8 kstash.8 hprop.8 hpropd.8 string2key.8
32 hprop_SOURCES = hprop.c mit_dump.c hprop.h
33 hpropd_SOURCES = hpropd.c hprop.h
35 kstash_SOURCES = kstash.c headers.h
37 string2key_SOURCES = string2key.c headers.h
39 if HAVE_MICROHTTPD
40 bx509d_SOURCES = bx509d.c
41 bx509d_AM_CPPFLAGS = $(AM_CPPFLAGS) $(MICROHTTPD_CFLAGS)
42 bx509d_LDADD =  -ldl \
43                  $(top_builddir)/lib/hdb/libhdb.la \
44                  libkdc.la \
45                  $(MICROHTTPD_LIBS) \
46                  $(LIB_roken) \
47                  $(LIB_heimbase) \
48                  $(LIB_hcrypto) \
49                  $(top_builddir)/lib/sl/libsl.la \
50                  $(top_builddir)/lib/asn1/libasn1.la \
51                  $(top_builddir)/lib/krb5/libkrb5.la \
52                  $(top_builddir)/lib/hx509/libhx509.la \
53                  $(top_builddir)/lib/gssapi/libgssapi.la
54 libexec_PROGRAMS += bx509d
56 httpkadmind_SOURCES = httpkadmind.c
57 httpkadmind_AM_CPPFLAGS = $(AM_CPPFLAGS) $(MICROHTTPD_CFLAGS)
58 httpkadmind_LDADD =     -ldl \
59                  $(top_builddir)/lib/hdb/libhdb.la \
60                  $(top_builddir)/lib/kadm5/libkadm5clnt.la \
61                  $(top_builddir)/lib/kadm5/libkadm5srv.la \
62                  libkdc.la \
63                  $(MICROHTTPD_LIBS) \
64                  $(LIB_roken) \
65                  $(LIB_heimbase) \
66                  $(LIB_hcrypto) \
67                  $(top_builddir)/lib/sl/libsl.la \
68                  $(top_builddir)/lib/asn1/libasn1.la \
69                  $(top_builddir)/lib/krb5/libkrb5.la \
70                  $(top_builddir)/lib/hx509/libhx509.la \
71                  $(top_builddir)/lib/gssapi/libgssapi.la
72 libexec_PROGRAMS += httpkadmind
73 endif
75 digest_service_SOURCES = \
76         digest-service.c
78 kdc_SOURCES = connect.c \
79         config.c        \
80         announce.c      \
81         main.c
83 kdc_tester_SOURCES = \
84         config.c        \
85         kdc-tester.c
87 test_token_validator_SOURCES = test_token_validator.c
88 test_csr_authorizer_SOURCES = test_csr_authorizer.c
89 test_kdc_ca_SOURCES = test_kdc_ca.c
91 # Token plugins (for bx509d)
92 if HAVE_CJWT
93 cjwt_token_validator_la_SOURCES = cjwt_token_validator.c
94 cjwt_token_validator_la_CFLAGS = $(CJSON_CFLAGS) $(CJWT_CFLAGS)
95 cjwt_token_validator_la_LDFLAGS = -module $(CJSON_LIBS) $(CJWT_LIBS)
96 endif
98 negotiate_token_validator_la_SOURCES = negotiate_token_validator.c
99 negotiate_token_validator_la_LDFLAGS = -module $(LIB_gssapi)
100 # CSR Authorizer plugins (for kdc/kx509 and bx509d)
101 ipc_csr_authorizer_la_SOURCES = ipc_csr_authorizer.c
102 ipc_csr_authorizer_la_LDFLAGS = -module \
103                                 $(top_builddir)/lib/krb5/libkrb5.la \
104                                 $(top_builddir)/lib/hx509/libhx509.la \
105                                 $(top_builddir)/lib/ipc/libheim-ipcc.la \
106                                 $(top_builddir)/lib/roken/libroken.la
108 # GSS-API authorization plugins
109 if OPENLDAP
110 altsecid_gss_preauth_authorizer_la_SOURCES = altsecid_gss_preauth_authorizer.c
111 altsecid_gss_preauth_authorizer_la_LDFLAGS = -module \
112                                              $(top_builddir)/lib/gssapi/libgssapi.la \
113                                              $(top_builddir)/lib/krb5/libkrb5.la \
114                                              $(LIB_openldap)
115 endif
117 libkdc_la_CPPFLAGS = -DBUILD_KDC_LIB $(AM_CPPFLAGS)
119 libkdc_la_SOURCES =             \
120         default_config.c        \
121         ca.c                    \
122         set_dbinfo.c            \
123         digest.c                \
124         fast.c                  \
125         kdc_locl.h              \
126         kerberos5.c             \
127         krb5tgs.c               \
128         pkinit.c                \
129         pkinit-ec.c             \
130         mssfu.c                 \
131         log.c                   \
132         misc.c                  \
133         kx509.c                 \
134         token_validator.c       \
135         csr_authorizer.c        \
136         process.c               \
137         kdc-plugin.c            \
138         gss_preauth.c
140 KDC_PROTOS = $(srcdir)/kdc-protos.h $(srcdir)/kdc-private.h
142 ALL_OBJECTS  = $(kdc_OBJECTS)
143 ALL_OBJECTS += $(kdc_replay_OBJECTS)
144 ALL_OBJECTS += $(kdc_tester_OBJECTS)
145 ALL_OBJECTS += $(test_token_validator_OBJECTS)
146 ALL_OBJECTS += $(test_csr_authorizer_OBJECTS)
147 ALL_OBJECTS += $(test_kdc_ca_OBJECTS)
148 ALL_OBJECTS += $(libkdc_la_OBJECTS)
149 ALL_OBJECTS += $(string2key_OBJECTS)
150 ALL_OBJECTS += $(kstash_OBJECTS)
151 ALL_OBJECTS += $(hprop_OBJECTS)
152 ALL_OBJECTS += $(hpropd_OBJECTS)
153 ALL_OBJECTS += $(digest_service_OBJECTS)
154 ALL_OBJECTS += $(bx509d_OBJECTS)
155 ALL_OBJECTS += $(httpkadmind_OBJECTS)
156 ALL_OBJECTS += $(cjwt_token_validator_la_OBJECTS)
157 ALL_OBJECTS += $(test_token_validator_OBJECTS)
158 ALL_OBJECTS += $(test_csr_authorizer_OBJECTS)
159 ALL_OBJECTS += $(test_kdc_ca_OBJECTS)
160 ALL_OBJECTS += $(ipc_csr_authorizer_la_OBJECTS)
161 ALL_OBJECTS += $(negotiate_token_validator_la_OBJECTS)
163 $(ALL_OBJECTS): $(KDC_PROTOS)
165 libkdc_la_LDFLAGS = -version-info 2:0:0
167 if versionscript
168 libkdc_la_LDFLAGS += $(LDFLAGS_VERSION_SCRIPT)$(srcdir)/version-script.map
169 endif
171 $(libkdc_la_OBJECTS): $(srcdir)/version-script.map
173 $(srcdir)/kdc-protos.h: $(libkdc_la_SOURCES)
174         cd $(srcdir) && perl ../cf/make-proto.pl -E KDC_LIB -q -P comment -o kdc-protos.h $(libkdc_la_SOURCES) || rm -f kdc-protos.h
176 $(srcdir)/kdc-private.h: $(libkdc_la_SOURCES)
177         cd $(srcdir) && perl ../cf/make-proto.pl -q -P comment -p kdc-private.h $(libkdc_la_SOURCES) || rm -f kdc-private.h
180 hprop_LDADD = \
181         $(top_builddir)/lib/hdb/libhdb.la \
182         $(top_builddir)/lib/krb5/libkrb5.la \
183         $(LIB_kdb)  \
184         $(LIB_hcrypto) \
185         $(top_builddir)/lib/asn1/libasn1.la \
186         $(LIB_roken) \
187         $(DB3LIB) $(DB1LIB) $(LMDBLIB) $(NDBMLIB)
189 hpropd_LDADD = \
190         $(top_builddir)/lib/hdb/libhdb.la \
191         $(top_builddir)/lib/krb5/libkrb5.la \
192         $(LIB_kdb)  \
193         $(LIB_hcrypto) \
194         $(top_builddir)/lib/asn1/libasn1.la \
195         $(LIB_roken) \
196         $(DB3LIB) $(DB1LIB) $(LMDBLIB) $(NDBMLIB)
198 if PKINIT
199 LIB_pkinit = $(top_builddir)/lib/hx509/libhx509.la
200 endif
202 libkdc_la_LIBADD = \
203         $(LIB_pkinit) \
204         $(top_builddir)/lib/hdb/libhdb.la \
205         $(top_builddir)/lib/krb5/libkrb5.la \
206         $(top_builddir)/lib/gssapi/libgssapi.la \
207         $(top_builddir)/lib/gss_preauth/libgss_preauth.la \
208         $(LIB_kdb)  \
209         $(top_builddir)/lib/ntlm/libheimntlm.la \
210         $(LIB_hcrypto) \
211         $(LIB_openssl_crypto) \
212         $(top_builddir)/lib/asn1/libasn1.la \
213         $(LIB_roken) \
214         $(DB3LIB) $(DB1LIB) $(LMDBLIB) $(NDBMLIB)
216 LDADD = $(top_builddir)/lib/hdb/libhdb.la \
217         $(top_builddir)/lib/krb5/libkrb5.la \
218         $(LIB_hcrypto) \
219         $(top_builddir)/lib/asn1/libasn1.la \
220         $(LIB_roken) \
221         $(DB3LIB) $(DB1LIB) $(LMDBLIB) $(NDBMLIB)
223 kdc_LDADD = libkdc.la $(LDADD) $(LIB_pidfile) $(CAPNG_LIBS)
225 if FRAMEWORK_SECURITY
226 kdc_LDFLAGS = -framework SystemConfiguration -framework CoreFoundation
227 endif
228 kdc_CFLAGS = $(CAPNG_CFLAGS)
230 digest_service_LDADD = \
231         libkdc.la \
232         $(top_builddir)/lib/ntlm/libheimntlm.la \
233         $(top_builddir)/lib/ipc/libheim-ipcs.la \
234         $(LDADD) $(LIB_pidfile)
235 kdc_replay_LDADD = libkdc.la $(LDADD) $(LIB_pidfile)
236 kdc_tester_LDADD = libkdc.la $(LDADD) $(LIB_pidfile) $(LIB_heimbase)
237 test_token_validator_LDADD = libkdc.la $(LDADD) $(LIB_pidfile) $(LIB_heimbase) $(LIB_gssapi)
238 test_csr_authorizer_LDADD = libkdc.la \
239                             $(top_builddir)/lib/hx509/libhx509.la \
240                             $(LDADD) \
241                             $(LIB_pidfile) \
242                             $(LIB_heimbase) \
243                             $(top_builddir)/lib/ipc/libheim-ipcs.la
244 test_kdc_ca_LDADD = libkdc.la $(top_builddir)/lib/hx509/libhx509.la $(LDADD) $(LIB_pidfile) $(LIB_heimbase)
246 include_HEADERS = kdc.h $(srcdir)/kdc-protos.h
248 noinst_HEADERS = $(srcdir)/kdc-private.h
250 krb5dir = $(includedir)/krb5
251 krb5_HEADERS = kdc-audit.h kdc-plugin.h kdc-accessors.h token_validator_plugin.h csr_authorizer_plugin.h gss_preauth_authorizer_plugin.h
253 build_HEADERZ = $(krb5_HEADERS) # XXX
255 EXTRA_DIST = \
256         hprop-version.rc \
257         hpropd-version.rc \
258         kdc-version.rc \
259         kstash-version.rc \
260         libkdc-version.rc \
261         string2key-version.rc \
262         libkdc-exports.def \
263         NTMakefile $(man_MANS) version-script.map