ee9e41e70506c6dd94692f38002c3c80b688c2b7
[openafs.git] / src / des / NTMakefile
1 #
2 # Copyright 1987 by the Massachusetts Institute of Technology.
3 #
4 # For copying and distribution information,
5 # please see the file <mit-cpyright.h>.
6 #
7 # Makefile for BSD DES library
8 #
9 # First define machine type, compiler, and object file suffix
10 # Could be for VAX or PC-DOS
11 #
12 # Some of these files are cross compiled on the vax for the pc8086,
13 # using the MIT LCS cross-compilation environment
14 # Others are always executed on the vax(host).
15 #
16 # A machine, e.g. Vax, pc8086, IBM experimental workstation, is 
17 # described in terms of defines for its word length
18 # (BITS32 or BITS16), byte ordering (LSBFIRST or MSBFIRST) and 
19 # operating system (BSDUNIX or CROSSMSDOS).
20 #
21 # Make sure these are properly defined for any new machine types.
22 # target machine for run-time code (may cross-compile),
23 # override as needed 
24 #
25
26
27 !INCLUDE ..\config\NTMakefile.$(SYS_NAME)
28 !INCLUDE ..\config\NTMakefile.version
29
30
31 INCFILEDIR = $(DESTDIR)\include
32
33 INCFILES =\
34         $(INCFILEDIR)\des.h \
35         $(INCFILEDIR)\des_conf.h \
36         $(INCFILEDIR)\mit-cpyright.h \
37         $(INCFILEDIR)\des_odd.h \
38         $(INCFILEDIR)\crypt.h
39
40 $(INCFILEDIR)\des_odd.h: odd.h
41         $(COPY) odd.h $@
42
43
44 # Library component lists.
45
46 LIBOBJS = \
47         des.obj \
48         cbc_encrypt.obj \
49         pcbc_encrypt.obj \
50         cksum.obj \
51         new_rnd_key.obj \
52         key_sched.obj \
53         debug_decl.obj \
54         quad_cksum.obj \
55         key_parity.obj \
56         weak_key.obj \
57         read_pssword.obj \
58         strng_to_key.obj \
59         misco.obj \
60         util.obj \
61         crypt.obj
62
63 LIBFILE = $(DESTDIR)\lib\afsdes.lib
64
65 $(LIBFILE): $(LIBOBJS)
66         $(LIBARCH)
67
68 # Special case, since misc.c includes a "main" for the table generators.
69 misco.obj: misc.c
70         $(C2OBJ) misc.c /Fomisco.obj -DDONT_INCL_MAIN
71
72 #####################
73 # Generator Files ###
74 #####################
75
76 GENERATED_FILES = \
77         key_perm.h \
78         p_table.h \
79         s_table.h \
80         odd.h \
81         p.c \
82         s.c \
83         fp.c \
84         ip.c
85
86 # Make generated files.
87 MAKETARG = $** $@
88
89 key_perm.h: make_keyperm.exe
90         $(MAKETARG)
91
92 p_table.h: make_p_table.exe
93         $(MAKETARG)
94
95 s_table.h: make_s_table.exe
96         $(MAKETARG)
97
98 odd.h: make_odd.exe
99         $(MAKETARG)
100
101 p.c: make_p.exe
102         $(MAKETARG)
103
104 s.c: make_s.exe
105         $(MAKETARG)
106
107 fp.c: make_fp.exe
108         $(MAKETARG)
109
110 ip.c: make_ip.exe
111         $(MAKETARG)
112
113 # Make generators.
114 misc.obj: AFS_component_version_number.c
115
116 make_keyperm.exe: make_keyperm.obj misc.obj
117         $(EXECONLINK)
118
119 make_p_table.exe: make_p_table.obj misc.obj
120         $(EXECONLINK)
121
122 make_s_table.exe: make_s_table.obj misc.obj
123         $(EXECONLINK)
124
125 make_odd.exe: make_odd.obj misc.obj
126         $(EXECONLINK)
127
128 make_p.exe: make_p.obj misc.obj
129         $(EXECONLINK)
130
131 make_s.exe: make_s.obj misc.obj
132         $(EXECONLINK)
133
134 make_fp.exe: make_fp.obj misc.obj
135         $(EXECONLINK)
136
137 make_ip.exe: make_ip.obj misc.obj
138         $(EXECONLINK)
139
140 install: $(GENERATED_FILES) $(LIBFILE) $(INCFILES)
141
142 install9x: install
143
144 clean::
145         $(DEL) $(LIBFILE)