1 ########################################################################
3 # Copyright (c) 2009, Secure Endpoints Inc.
6 # Redistribution and use in source and binary forms, with or without
7 # modification, are permitted provided that the following conditions
10 # - Redistributions of source code must retain the above copyright
11 # notice, this list of conditions and the following disclaimer.
13 # - Redistributions in binary form must reproduce the above copyright
14 # notice, this list of conditions and the following disclaimer in
15 # the documentation and/or other materials provided with the
18 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
21 # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
22 # COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
23 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
24 # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
26 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
28 # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29 # POSSIBILITY OF SUCH DAMAGE.
34 !include ../../windows/NTMakefile.w32
36 dist_libkadm5clnt_la_SOURCES = \
60 dist_libkadm5srv_la_SOURCES = \
96 $(OBJ)\client_glue.obj \
97 $(OBJ)\common_glue.obj \
100 $(OBJ)\destroy_c.obj \
104 $(OBJ)\get_princs_c.obj \
106 $(OBJ)\marshall.obj \
107 $(OBJ)\modify_c.obj \
109 $(OBJ)\randkey_c.obj \
110 $(OBJ)\rename_c.obj \
111 $(OBJ)\send_recv.obj \
116 $(OBJ)\bump_pw_expire.obj \
117 $(OBJ)\chpass_s.obj \
118 $(OBJ)\common_glue.obj \
119 $(OBJ)\context_s.obj \
120 $(OBJ)\create_s.obj \
121 $(OBJ)\delete_s.obj \
122 $(OBJ)\destroy_s.obj \
123 $(OBJ)\ent_setup.obj \
127 $(OBJ)\get_princs_s.obj \
132 $(OBJ)\marshall.obj \
133 $(OBJ)\modify_s.obj \
134 $(OBJ)\password_quality.obj \
136 $(OBJ)\randkey_s.obj \
137 $(OBJ)\rename_s.obj \
138 $(OBJ)\server_glue.obj \
139 $(OBJ)\set_keys.obj \
140 $(OBJ)\set_modifier.obj \
144 proto_opts = -q -R "^(_|kadm5_c_|kadm5_s_|kadm5_log)" -P remove
146 $(OBJ)\kadm5-protos.h: $(dist_libkadm5srv_la_SOURCES) $(dist_libkadm5clnt_la_SOURCES)
147 $(PERL) ..\..\cf\make-proto.pl $(proto_opts) \
149 $(dist_libkadm5srv_la_SOURCES) \
150 $(dist_libkadm5clnt_la_SOURCES) \
153 $(OBJ)\kadm5-private.h: $(dist_libkadm5srv_la_SOURCES) $(dist_libkadm5clnt_la_SOURCES)
154 $(PERL) ..\..\cf\make-proto.pl $(proto_opts) \
156 $(dist_libkadm5srv_la_SOURCES) \
157 $(dist_libkadm5clnt_la_SOURCES) \
160 $(OBJ)\iprop-commands.c $(OBJ)\iprop-commands.h: iprop-commands.in
162 $(CP) $(SRCDIR)\iprop-commands.in $(OBJ)
163 $(BINDIR)\slc.exe iprop-commands.in
166 $(OBJ)\kadm5_err.h $(OBJ)kadm5_err.c: kadm5_err.et
168 $(BINDIR)\compile_et.exe $(SRCDIR)\kadm5_err.et
171 $(KADM5INCDIR)\kadm5_err.h: $(OBJ)\kadm5_err.h
173 KADM5INCDIR=$(INCDIR)\kadm5
176 $(KADM5INCDIR)\kadm5_err.h \
177 $(KADM5INCDIR)\admin.h \
178 $(KADM5INCDIR)\private.h \
179 $(KADM5INCDIR)\kadm5-protos.h \
180 $(KADM5INCDIR)\kadm5-private.h \
181 $(OBJ)\iprop-commands.h
183 SBINPROGRAMS=$(SBINDIR)\iprop-log.exe
185 LIBEXECPROGRAMS=$(LIBEXECDIR)\ipropd-master.exe $(LIBEXECDIR)\ipropd-slave.exe
197 $(SBINDIR)\iprop-log.exe: $(OBJ)\iprop-log.obj $(OBJ)\iprop-commands.obj $(EXELIBDEPS) \
198 $(OBJ)\iprop-log-version.res
202 $(LIBEXECDIR)\ipropd-master.exe: $(OBJ)\ipropd_master.obj $(OBJ)\ipropd_common.obj \
203 $(EXELIBDEPS) $(OBJ)\ipropd-master-version.res
207 $(LIBEXECDIR)\ipropd-slave.exe: $(OBJ)\ipropd_slave.obj $(OBJ)\ipropd_common.obj \
208 $(EXELIBDEPS) $(OBJ)\ipropd-slave-version.res
212 $(LIBKADM5CLNT): $(LIBKADM5CLNT_OBJS)
215 LIBKADM5SRVRES=$(OBJ)\libkadm5srv-version.res
217 $(LIBKADM5SRV): $(BINDIR)\libkadm5srv.dll
219 $(BINDIR)\libkadm5srv.dll: $(LIBKADM5SRV_OBJS) $(LIBHEIMDAL) $(LIBROKEN) $(LIBHDB) $(LIBCOMERR) $(LIBSQLITE) $(LIBKADM5SRVRES)
220 $(DLLGUILINK) -implib:$(LIBKADM5SRV) -def:libkadm5srv-exports.def
223 all:: $(INCFILES) $(LIBKADM5SRV) $(LIBKADM5CLNT)
225 all-tools:: $(SBINPROGRAMS) $(LIBEXECPROGRAMS)
229 -$(RM) $(LIBKADM5CLNT)
230 -$(RM) $(LIBKADM5SRV)
231 -$(RM) $(BINDIR)\libkadm5srv.*
232 -$(RM) $(SBINPROGRAMS:.exe=.*)
233 -$(RM) $(LIBEXECPROGRAMS:.exe=.*)
235 test:: test-binaries test-run
238 $(OBJ)\default_keys.exe \
239 $(OBJ)\test_pw_quality.exe \
240 $(OBJ)\sample_passwd_check.dll
242 $(OBJ)\default_keys.exe: $(OBJ)\default_keys.obj $(LIBHEIMDAL) $(LIBROKEN) $(LIBHDB)
246 $(OBJ)\test_pw_quality.exe: $(OBJ)\test_pw_quality.obj \
247 $(LIBROKEN) $(LIBKADM5SRV) $(LIBVERS) $(LIBHEIMDAL)
251 $(OBJ)\sample_passwd_check.dll: $(OBJ)\sample_passwd_check.obj $(LIBHEIMDAL)
252 $(DLLGUILINK) /DEF:<<
261 {$(OBJ)}.h{$(KADM5INCDIR)}.h:
264 {}.h{$(KADM5INCDIR)}.h:
268 $(C2OBJ_P) -I$(OBJ) -I$(KADM5INCDIR)
271 $(PERL) ..\..\cf\w32-check-exported-symbols.pl --vs version-script.map --def libkadm5srv-exports.def