1 # Copyright 2010, Your File System Inc
4 # This software has been released under the terms of the BSD License
5 # For details, see the LICENSE file in the top level source directory
8 !include ..\..\config\NTMakefile.$(SYS_NAME)
9 !include ..\..\config\NTMakefile.version
10 AFSDEV_AUXCDEFINES = $(AFSDEV_AUXCDEFINES) -I$(SRC)\external\heimdal\hcrypto -DHAVE_CONFIG_H=1
12 ROKEN = $(SRC)\external\heimdal\roken
14 HCRYPTO = $(SRC)\external\heimdal\hcrypto
16 INCFILEDIR = $(DESTDIR)\include\hcrypto
19 $(INCFILEDIR)\engine.h \
26 $(INCFILEDIR)\evp-hcrypto.h \
27 $(INCFILEDIR)\evp-cc.h \
28 $(INCFILEDIR)\hmac.h \
32 $(INCFILEDIR)\rand.h \
38 LIBFILE = $(DESTDIR)\lib\afshcrypto.dll
40 # Object files by category.
44 HCRYPTO_OBJS = $(OUT)\aes.obj \
46 $(OUT)\camellia-ntt.obj \
49 $(OUT)\evp-hcrypto.obj \
60 $(OUT)\rijndael-alg-fst.obj \
73 $(OUT)\getprogname.obj \
83 # This is a horrible hack that is required to get
84 # around the fact that the OpenAFS build system copies
85 # its own des.h into the top-level OpenAFS include
86 # directory. When the OpenAFS des implementation is
87 # removed, this hack can be removed as well
88 des.h: $(HCRYPTO)\des.h
91 $(ROKEN_OBJS):$(ROKEN)\$$(@B).c
92 $(C2OBJ) $** -I$(ROKEN)
94 $(HCRYPTO_OBJS):$(HCRYPTO)\$$(@B).c
95 $(C2OBJ) $** -I$(HCRYPTO)
97 $(HCRYPTO_INCFILES):$(HCRYPTO)\$$(@B).h
98 $(COPY) $** $(INCFILEDIR)
101 $(COPY) $** $(INCFILEDIR)
103 err.h: $(ROKEN)\err.hin
107 NTMAKE = nmake /nologo /f ntmakefile
111 # $(DESTDIR)\lib\afs\afsreg.lib
113 $(LIBFILE): $(LOCAL_OBJS) $(HCRYPTO_OBJS) $(ROKEN_OBJS) $(DLLLIBS)
114 $(DLLCONLINK) /DEF:afshcrypto.def shell32.lib
115 $(_VC_MANIFEST_EMBED_DLL)
119 $(MAKECYGLIB) --input-def afshcrypto.def
121 # Definitions for generating versioninfo resources
122 $(OUT)\afshcrypto.res: AFS_component_version_number.h
124 install_headers: $(INCFILES) $(HCRYPTO_INCFILES)
126 install: install_headers des.h $(LIBFILE)
131 $(DEL) $(LIBFILE) $(DESTDIR)\lib\afshcrypto.lib $(DESTDIR)\lib\afshcrypto.exp