NTMakefile revision 1.1.1.1.12.1 1 ########################################################################
2 #
3 # Copyright (c) 2009-2016, Secure Endpoints Inc.
4 # All rights reserved.
5 #
6 # Redistribution and use in source and binary forms, with or without
7 # modification, are permitted provided that the following conditions
8 # are met:
9 #
10 # - Redistributions of source code must retain the above copyright
11 # notice, this list of conditions and the following disclaimer.
12 #
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
16 # distribution.
17 #
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.
30 #
31
32 RELDIR=kdc
33
34 !include ../windows/NTMakefile.w32
35
36 BINPROGRAMS=$(BINDIR)\string2key.exe
37
38 SBINPROGRAMS=$(SBINDIR)\kstash.exe
39
40 LIBEXECPROGRAMS= \
41 $(LIBEXECDIR)\hprop.exe \
42 $(LIBEXECDIR)\hpropd.exe \
43 $(LIBEXECDIR)\kdc.exe \
44 # $(LIBEXECDIR)\digest-service.exe
45
46 NOINST_PROGRAMS=$(OBJ)\kdc-replay.exe
47
48 INCFILES=\
49 $(INCDIR)\kdc.h \
50 $(INCDIR)\kdc-protos.h \
51 $(INCDIR)\kdc-private.h \
52 $(INCDIR)\krb5\windc_plugin.h
53
54 all:: $(INCFILES) $(LIBKDC) $(BINPROGRAMS) $(SBINPROGRAMS) $(LIBEXECPROGRAMS)
55
56 clean::
57 -$(RM) $(LIBKDC)
58 -$(RM) $(BINPROGRAMS:.exe=.*) $(SBINPROGRAMS:.exe=.*) $(LIBEXECPROGRAMS:.exe=.*)
59
60 BIN_LIBS=\
61 $(LIBHDB) \
62 $(LIBHEIMDAL) \
63 $(LIBROKEN) \
64 $(LIBVERS)
65
66 $(LIBEXECDIR)\hprop.exe: $(OBJ)\hprop.obj $(OBJ)\mit_dump.obj $(BIN_LIBS) $(OBJ)\hprop-version.res
67 $(EXECONLINK)
68 $(EXEPREP)
69
70 $(LIBEXECDIR)\hpropd.exe: $(OBJ)\hpropd.obj $(BIN_LIBS) $(OBJ)\hpropd-version.res
71 $(EXECONLINK)
72 $(EXEPREP)
73
74 $(SBINDIR)\kstash.exe: $(OBJ)\kstash.obj $(BIN_LIBS) $(OBJ)\kstash-version.res
75 $(EXECONLINK)
76 $(EXEPREP)
77
78 $(BINDIR)\string2key.exe: $(OBJ)\string2key.obj $(BIN_LIBS) $(OBJ)\string2key-version.res
79 $(EXECONLINK)
80 $(EXEPREP)
81
82 $(BINDIR)\digest-service.exe: $(OBJ)\digest-service.obj $(BIN_LIBS)
83 $(EXECONLINK)
84 $(EXEPREP)
85
86 $(LIBEXECDIR)\kdc.exe: \
87 $(OBJ)\connect.obj $(OBJ)\config.obj $(OBJ)\announce.obj \
88 $(OBJ)\main.obj $(OBJ)\kdc-version.res \
89 $(LIBKDC) $(BIN_LIBS) $(LIB_openssl_crypto)
90 $(EXECONLINK)
91 $(EXEPREP)
92
93 LIBKDC_OBJS=\
94 $(OBJ)\default_config.obj \
95 $(OBJ)\set_dbinfo.obj \
96 $(OBJ)\digest.obj \
97 $(OBJ)\fast.obj \
98 $(OBJ)\kerberos5.obj \
99 $(OBJ)\krb5tgs.obj \
100 $(OBJ)\pkinit.obj \
101 $(OBJ)\pkinit-ec.obj \
102 $(OBJ)\log.obj \
103 $(OBJ)\misc.obj \
104 $(OBJ)\kx509.obj \
105 $(OBJ)\process.obj \
106 $(OBJ)\windc.obj
107
108 LIBKDC_LIBS=\
109 $(LIBHDB) \
110 $(LIBHEIMBASE) \
111 $(LIBHEIMDAL) \
112 $(LIBHEIMNTLM) \
113 $(LIB_openssl_crypto) \
114 $(LIBROKEN)
115
116 LIBKDCRES=$(OBJ)\libkdc-version.res
117
118 $(LIBEXECDIR)\libkdc.dll: $(LIBKDC_OBJS) $(LIBKDC_LIBS) $(LIBKDCRES)
119 $(DLLGUILINK) -implib:$(LIBKDC) -def:libkdc-exports.def
120 $(DLLPREP_NODIST)
121
122 $(LIBKDC): $(LIBEXECDIR)\libkdc.dll
123
124 clean::
125 -$(RM) $(LIBEXECDIR)\libkdc.*
126
127 libkdc_la_SOURCES = \
128 default_config.c \
129 set_dbinfo.c \
130 digest.c \
131 fast.c \
132 kdc_locl.h \
133 kerberos5.c \
134 krb5tgs.c \
135 pkinit.c \
136 pkinit-ec.c \
137 log.c \
138 misc.c \
139 kx509.c \
140 process.c \
141 windc.c \
142 rx.h
143
144 $(OBJ)\kdc-protos.h: $(libkdc_la_SOURCES)
145 $(PERL) ..\cf\make-proto.pl -q -P remove -o $@ $(libkdc_la_SOURCES) \
146 || $(RM) $@
147
148 $(OBJ)\kdc-private.h: $(libkdc_la_SOURCES)
149 $(PERL) ..\cf\make-proto.pl -q -P remove -p $@ $(libkdc_la_SOURCES) \
150 || $(RM) $@
151