1 ########################################################################
3 # Copyright (c) 2010, 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.
32 RELDIR=packages\windows\assembly
34 !include ../../../windows/NTMakefile.w32
36 # CODESIGN_PKT should be set to the public key token of the code
37 # signing certificate in use. You can use :
39 # pktextract <path to certificate>
41 # ..to derive the public key token.
44 ! error CODESIGN_PKT should be set to the public key token for codesigning certificate
49 # ----------------------------------------------------------------------
50 # Heimdal.Kerberos Assembly
52 ASMKRBDIR=$(ASMDIR)\Heimdal.Kerberos
53 ASMKRBVER=$(VER_PRODUCT_MAJOR).$(VER_PRODUCT_MINOR).$(VER_PRODUCT_AUX).$(VER_PRODUCT_PATCH)
54 ASMKRBVER_OLD_BEGIN=$(VER_OLD_BEGIN_MAJOR).$(VER_OLD_BEGIN_MINOR).$(VER_OLD_BEGIN_AUX).$(VER_OLD_BEGIN_PATCH)
55 ASMKRBVER_OLD_END=$(VER_OLD_END_MAJOR).$(VER_OLD_END_MINOR).$(VER_OLD_END_AUX).$(VER_OLD_END_PATCH)
56 ASMKRBMAN=$(ASMKRBNAME).manifest
59 $(ASMKRBDIR)\heimdal.dll \
60 $(ASMKRBDIR)\com_err.dll \
61 $(ASMKRBDIR)\heimntlm.dll \
62 $(ASMKRBDIR)\gssapi.dll \
63 $(ASMKRBDIR)\heimdal.pdb \
64 $(ASMKRBDIR)\com_err.pdb \
65 $(ASMKRBDIR)\heimntlm.pdb \
66 $(ASMKRBDIR)\gssapi.pdb
68 $(ASMKRBDIR)\$(ASMKRBMAN).nohash: Heimdal.Kerberos.manifest.in
69 $(SED) -e "s,[@]name[@],$(ASMKRBNAME),g" \
70 -e "s,[@]cpu[@],$(MCPU),g" \
71 -e "s,[@]version[@],$(ASMKRBVER),g" \
72 -e "s,[@]pkt[@],$(CODESIGN_PKT),g" < $** > $@
74 $(ASMKRBDIR)\$(ASMKRBMAN) $(ASMKRBDIR)\$(ASMKRBMAN).cdf: \
75 $(ASMKRBDIR)\$(ASMKRBMAN).nohash $(ASMKRBBINS)
76 -$(RM) $(ASMKRBDIR)\$(ASMKRBMAN)
77 -$(RM) $(ASMKRBDIR)\$(ASMKRBMAN).cdf
78 $(MT) -manifest $(ASMKRBDIR)\$(ASMKRBMAN).nohash -out:$(ASMKRBDIR)\$(ASMKRBMAN) -hashupdate -makecdfs
80 $(ASMKRBDIR)\$(ASMKRBNAME).cat: $(ASMKRBDIR)\$(ASMKRBMAN).cdf
84 # $(RM) $(ASMKRBMAN).cdf
85 # $(RM) $(ASMKRBMAN).nohash
91 $(ASMKRBDIR)\$(ASMKRBMAN) \
92 $(ASMKRBDIR)\$(ASMKRBNAME).cat \
97 -$(RM) $(ASMKRBDIR)\*.*
100 $(MT) -manifest $(ASMKRBDIR)\$(ASMKRBMAN) -validate_manifest
102 {$(BINDIR)}.dll{$(ASMKRBDIR)}.dll:
106 {$(BINDIR)}.pdb{$(ASMKRBDIR)}.pdb:
109 # ----------------------------------------------------------------------
110 # Application manifests
115 -$(RM) $(APPMANIFEST)
117 $(APPMANIFEST): Heimdal.Application.manifest.in
118 $(SED) -e "s,[@]krbname[@],$(ASMKRBNAME),g" \
119 -e "s,[@]krbversion[@],$(ASMKRBVER),g" \
120 -e "s,[@]cpu[@],$(MCPU),g" \
121 -e "s,[@]pkt[@],$(CODESIGN_PKT),g" < $** > $@
124 $(MT) -manifest $(APPMANIFEST) -validate_manifest
126 # ----------------------------------------------------------------------
127 # Publisher configuration files
129 POLKRB=policy.$(VER_PRODUCT_MAJOR).$(VER_PRODUCT_MINOR).Heimdal.Kerberos
130 POLKRBDIR=$(ASMDIR)\$(POLKRB)
131 POLKRBFILE=$(POLKRBDIR)\$(ASMKRBVER).pol
132 POLKRBCAT=$(POLKRBDIR)\$(ASMKRBVER).cat
134 $(POLKRBFILE): policy.Heimdal.Kerberos.in
135 $(SED) -e "s,[@]krbname[@],$(ASMKRBNAME),g" \
136 -e "s,[@]krbversion[@],$(ASMKRBVER),g" \
137 -e "s,[@]krbverfrom_begin[@],$(ASMKRBVER_OLD_BEGIN),g" \
138 -e "s,[@]krbverfrom_end[@],$(ASMKRBVER_OLD_END),g" \
139 -e "s,[@]krbpolname[@],$(POLKRB),g" \
140 -e "s,[@]cpu[@],$(MCPU),g" \
141 -e "s,[@]pkt[@],$(CODESIGN_PKT),g" < $** > $@
143 $(POLKRBFILE).cdf: $(POLKRBFILE)
144 $(MT) -manifest $(POLKRBFILE) -makecdfs
146 $(POLKRBCAT): $(POLKRBFILE).cdf
152 all:: $(POLKRBFILE) $(POLKRBCAT)
155 -$(RM) $(POLKRBDIR)\*.*
157 # ----------------------------------------------------------------------
162 ! if !exist($(ASMKRBDIR))
163 $(MKDIR) $(ASMKRBDIR)
165 ! if !exist($(POLKRBDIR))
166 $(MKDIR) $(POLKRBDIR)