1# Id
2
3include $(top_srcdir)/Makefile.am.common
4
5libkadm5srv_la_CPPFLAGS = -I$(srcdir)/../krb5
6libkadm5clnt_la_CPPFLAGS = -I$(srcdir)/../krb5
7
8lib_LTLIBRARIES = libkadm5srv.la libkadm5clnt.la
9libkadm5srv_la_LDFLAGS = -version-info 8:1:0
10libkadm5clnt_la_LDFLAGS = -version-info 7:1:0
11
12if versionscript
13libkadm5clnt_la_LDFLAGS += $(LDFLAGS_VERSION_SCRIPT)$(srcdir)/version-script-client.map
14libkadm5srv_la_LDFLAGS += $(LDFLAGS_VERSION_SCRIPT)$(srcdir)/version-script.map
15endif
16
17sbin_PROGRAMS = iprop-log
18check_PROGRAMS = default_keys
19noinst_PROGRAMS = test_pw_quality
20
21noinst_LTLIBRARIES = sample_passwd_check.la
22
23sample_passwd_check_la_SOURCES = sample_passwd_check.c
24sample_passwd_check_la_LDFLAGS = -module
25
26libkadm5srv_la_LIBADD = \
27	$(LIB_com_err) ../krb5/libkrb5.la \
28	../hdb/libhdb.la $(LIBADD_roken)
29libkadm5clnt_la_LIBADD = \
30	$(LIB_com_err) ../krb5/libkrb5.la $(LIBADD_roken)
31
32libexec_PROGRAMS = ipropd-master ipropd-slave
33
34default_keys_SOURCES = default_keys.c
35default_keys_CPPFLAGS = -I$(srcdir)/../krb5
36
37kadm5includedir = $(includedir)/kadm5
38buildkadm5include = $(buildinclude)/kadm5
39
40dist_kadm5include_HEADERS = admin.h private.h kadm5-pwcheck.h
41dist_kadm5include_HEADERS += $(srcdir)/kadm5-protos.h $(srcdir)/kadm5-private.h
42
43nodist_kadm5include_HEADERS = kadm5_err.h
44
45install-build-headers:: $(dist_kadm5include_HEADERS) $(nodist_kadm5include_HEADERS)
46	@foo='$(dist_kadm5include_HEADERS) $(nodist_kadm5include_HEADERS)'; \
47	for f in $$foo; do \
48		f=`basename $$f`; \
49		if test -f "$(srcdir)/$$f"; then file="$(srcdir)/$$f"; \
50		else file="$$f"; fi; \
51		if cmp -s  $$file $(buildkadm5include)/$$f 2> /dev/null ; then \
52		: ; else \
53			echo "cp $$file $(buildkadm5include)/$$f";\
54			cp $$file $(buildkadm5include)/$$f; \
55		fi ; \
56	done
57
58dist_libkadm5clnt_la_SOURCES =			\
59	ad.c					\
60	chpass_c.c				\
61	client_glue.c				\
62	common_glue.c				\
63	create_c.c				\
64	delete_c.c				\
65	destroy_c.c				\
66	flush_c.c				\
67	free.c					\
68	get_c.c					\
69	get_princs_c.c				\
70	init_c.c				\
71	kadm5_locl.h				\
72	marshall.c				\
73	modify_c.c				\
74	private.h				\
75	privs_c.c				\
76	randkey_c.c				\
77	rename_c.c				\
78	send_recv.c				\
79	admin.h
80
81nodist_libkadm5clnt_la_SOURCES =		\
82	kadm5_err.c				\
83	kadm5_err.h
84
85dist_libkadm5srv_la_SOURCES =			\
86	acl.c					\
87	admin.h					\
88	bump_pw_expire.c			\
89	chpass_s.c				\
90	common_glue.c				\
91	context_s.c				\
92	create_s.c				\
93	delete_s.c				\
94	destroy_s.c				\
95	ent_setup.c				\
96	error.c					\
97	flush_s.c				\
98	free.c					\
99	get_princs_s.c				\
100	get_s.c					\
101	init_s.c				\
102	kadm5_locl.h				\
103	keys.c					\
104	log.c					\
105	marshall.c				\
106	modify_s.c				\
107	password_quality.c			\
108	private.h				\
109	privs_s.c				\
110	randkey_s.c				\
111	rename_s.c				\
112	server_glue.c				\
113	setkey3_s.c				\
114	set_keys.c				\
115	set_modifier.c				\
116	admin.h
117
118nodist_libkadm5srv_la_SOURCES = 		\
119	kadm5_err.c				\
120	kadm5_err.h
121
122libkadm5srv_la_DEPENDENCIES =			\
123	version-script.map
124
125dist_iprop_log_SOURCES = iprop-log.c
126nodist_iprop_log_SOURCES = iprop-commands.c
127
128ipropd_master_SOURCES = ipropd_master.c ipropd_common.c iprop.h kadm5_locl.h
129ipropd_master_CPPFLAGS = -I$(srcdir)/../krb5
130
131ipropd_slave_SOURCES = ipropd_slave.c ipropd_common.c iprop.h kadm5_locl.h
132ipropd_slave_CPPFLAGS = -I$(srcdir)/../krb5
133
134man_MANS = kadm5_pwcheck.3 iprop.8 iprop-log.8
135
136LDADD = \
137	libkadm5srv.la \
138	$(top_builddir)/lib/hdb/libhdb.la \
139	$(top_builddir)/lib/krb5/libkrb5.la \
140	$(top_builddir)/lib/asn1/libasn1.la \
141	$(LIB_hcrypto) \
142	$(LIB_roken) \
143	$(DB3LIB) $(DB1LIB) $(LMDBLIB) $(NDBMLIB) \
144	$(LIB_dlopen) \
145	$(LIB_pidfile)
146
147iprop_log_LDADD = \
148	libkadm5srv.la \
149	$(top_builddir)/lib/hdb/libhdb.la \
150	$(top_builddir)/lib/krb5/libkrb5.la \
151	$(top_builddir)/lib/asn1/libasn1.la \
152	$(LIB_hcrypto) \
153	$(top_builddir)/lib/sl/libsl.la \
154	$(LIB_readline) \
155	$(LIB_roken) \
156	$(DB3LIB) $(DB1LIB) $(LMDBLIB) $(NDBMLIB) \
157	$(LIB_dlopen) \
158	$(LIB_pidfile)
159
160iprop_log_CPPFLAGS = -I$(srcdir)/../krb5
161
162iprop-commands.c iprop-commands.h: iprop-commands.in
163	$(SLC) $(srcdir)/iprop-commands.in
164
165$(libkadm5srv_la_OBJECTS): kadm5_err.h
166$(libkadm5clnt_la_OBJECTS): kadm5_err.h
167$(iprop_log_OBJECTS): iprop-commands.h
168
169client_glue.lo server_glue.lo: $(srcdir)/common_glue.c
170
171CLEANFILES = kadm5_err.c kadm5_err.h iprop-commands.h iprop-commands.c
172
173# to help stupid solaris make
174
175kadm5_err.h: kadm5_err.et
176
177ALL_OBJECTS  = $(libkadm5clnt_la_OBJECTS)
178ALL_OBJECTS += $(libkadm5srv_la_OBJECTS)
179ALL_OBJECTS += $(ipropd_master_OBJECTS)
180ALL_OBJECTS += $(ipropd_slave_OBJECTS)
181ALL_OBJECTS += $(iprop_log_OBJECTS)
182ALL_OBJECTS += $(test_pw_quality_OBJECTS)
183ALL_OBJECTS += $(sample_passwd_check_la_OBJECTS)
184ALL_OBJECTS += $(default_keys_OBJECTS)
185
186$(ALL_OBJECTS): $(srcdir)/kadm5-protos.h $(srcdir)/kadm5-private.h
187$(ALL_OBJECTS): kadm5_err.h
188
189KADM5_PROTOS_SRCS  = $(dist_libkadm5clnt_la_SOURCES)
190KADM5_PROTOS_SRCS += $(dist_libkadm5srv_la_SOURCES)
191
192proto_opts = -q -R '^(_|kadm5_c_|kadm5_s_|kadm5_log)' -P comment
193$(srcdir)/kadm5-protos.h: $(KADM5_PROTOS_SRCS)
194	cd $(srcdir); perl ../../cf/make-proto.pl $(proto_opts) \
195		-o kadm5-protos.h \
196		$(dist_libkadm5clnt_la_SOURCES) \
197		$(dist_libkadm5srv_la_SOURCES) \
198		|| rm -f kadm5-protos.h
199
200$(srcdir)/kadm5-private.h: $(KADM5_PROTOS_SRCS)
201	cd $(srcdir); perl ../../cf/make-proto.pl $(proto_opts) \
202		-p kadm5-private.h \
203		$(dist_libkadm5clnt_la_SOURCES) \
204		$(dist_libkadm5srv_la_SOURCES) \
205		|| rm -f kadm5-private.h
206
207EXTRA_DIST = \
208	NTMakefile \
209	iprop-log-version.rc \
210	ipropd-master-version.rc \
211	ipropd-slave-version.rc \
212	libkadm5srv-version.rc \
213	libkadm5srv-exports.def \
214	kadm5_err.et \
215	iprop-commands.in \
216	$(man_MANS) \
217	check-cracklib.pl \
218	flush.c \
219	sample_passwd_check.c \
220	version-script.map \
221	version-script-client.map
222