winnt-more-makefile-fixes-for-cvs-head-20010906
[openafs.git] / src / des / Makefile.in
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 DESTDIR=@DESTDIR@
26 SRCDIR=@SRCDIR@
27 TOP_SRCDIR=@TOP_SRCDIR@
28 SYS_NAME=@AFS_SYSNAME@
29
30 SHELL = /bin/sh
31 include ../config/Makefile.${SYS_NAME}
32
33 UKERNELDIR=../libuafs/
34
35 LDFLAGS = ${XLDFLAGS}
36
37 OBJS = \
38         des.o \
39         cbc_encrypt.o \
40         pcbc_encrypt.o \
41         cksum.o \
42         new_rnd_key.o \
43         key_sched.o \
44         debug_decl.o \
45         quad_cksum.o \
46         key_parity.o \
47         weak_key.o \
48         read_pssword.o \
49         strng_to_key.o \
50         misc.o \
51         crypt.o \
52         util.o
53
54 all: install
55
56 #
57 # Build rules
58 #
59 .c.o:
60         ${CC} -c -I. -I${SRCDIR}/include -I${TOP_SRCDIR}/config ${XCFLAGS} $<
61
62 libdes.a: ${OBJS} AFS_component_version_number.o
63         $(RM) -f libdes.a
64         ar r libdes.a ${OBJS} AFS_component_version_number.o
65         $(RANLIB) libdes.a
66
67 make_ip: make_ip.o misc.o main.o
68         ${CC} make_ip.o misc.o main.o ${LDFLAGS} -o make_ip
69
70 make_fp: make_fp.o misc.o main.o
71         ${CC} make_fp.o misc.o main.o ${LDFLAGS} -o make_fp
72
73 make_odd: make_odd.o misc.o main.o
74         ${CC} make_odd.o misc.o main.o ${LDFLAGS} -o make_odd
75
76 make_s_table: make_s_table.o misc.o main.o 
77         ${CC} make_s_table.o misc.o main.o ${LDFLAGS} -o make_s_table
78
79 make_p_table: make_p_table.o misc.o main.o 
80         ${CC} make_p_table.o misc.o main.o ${LDFLAGS} -o make_p_table
81
82 make_keyperm: make_keyperm.o misc.o main.o 
83         ${CC} make_keyperm.o misc.o main.o ${LDFLAGS} -o make_keyperm
84
85 make_e: make_e.o misc.o main.o 
86         ${CC} make_e.o misc.o main.o ${LDFLAGS} -o make_e
87
88 make_p: make_p.o misc.o main.o 
89         ${CC} make_p.o misc.o main.o ${LDFLAGS} -o make_p
90
91 make_s: make_s.o misc.o main.o 
92         ${CC} make_s.o misc.o main.o ${LDFLAGS} -o make_s
93
94 #
95 # Table/code generation targets
96 #
97 odd.h: make_odd
98         ./make_odd odd.h
99
100 s_table.h: make_s_table
101         ./make_s_table s_table.h
102
103 p_table.h: make_p_table
104         ./make_p_table p_table.h
105
106 key_perm.h: make_keyperm
107         ./make_keyperm key_perm.h
108
109 ip.c: make_ip
110         ./make_ip ip.c
111
112 p.c: make_p
113         ./make_p p.c
114
115 s.c: make_s
116         ./make_s s.c
117
118 fp.c: make_fp
119         ./make_fp fp.c
120
121 #
122 # Dependency rules
123 #
124 INCLS=des.h mit-cpyright.h des_conf.h des_internal.h conf.h
125
126 make_keyperm.o: make_keyperm.c ${INCLS}
127 make_ip.o: make_ip.c tables.h ${INCLS}
128 make_fp.o: make_fp.c tables.h ${INCLS}
129 make_p.o: make_p.c tables.h ${INCLS}
130 make_s.o: make_s.c s_table.h ${INCLS}
131 make_s_table.o: make_s_table.c tables.h ${INCLS}
132 make_p_table.o: make_p_table.c tables.h ${INCLS}
133 make_odd.o: make_odd.c ${INCLS}
134 misc.o: misc.c AFS_component_version_number.c ${INCLS}
135 main.o: main.c AFS_component_version_number.c ${INCLS}
136 key_sched.o: key_sched.c key_perm.h odd.h ${INCLS}
137 key_test.o: key_test.c ${INCLS}
138 testit.o: testit.c ${INCLS}
139 des.o: s_table.h p_table.h ip.c p.c fp.c ${INCLS}
140 cbc_encrypt.o: cbc_encrypt.c ${INCLS}
141 verify.o: verify.c ${INCLS}
142 read_pssword.o: read_pssword.c ${INCLS}
143 pcbc_encrypt.o: pcbc_encrypt.c ${INCLS}
144 cksum.o: cksum.c ${INCLS}
145 quad_cksum.o: quad_cksum.c ${INCLS}
146 key_parity.o: key_parity.c odd.h ${INCLS}
147 weak_key.o: weak_key.c ${INCLS}
148 new_rnd_key.o: new_rnd_key.c ${INCLS}
149 util.o: util.c ${INCLS}
150 strng_to_key.o: strng_to_key.c ${INCLS}
151 debug_decl.o: debug_decl.c ${INCLS}
152 make_e.o: make_e.c ${INCLS}
153
154 #
155 # Install targets
156 #
157 install: ukinstall\
158         ${DESTDIR}/lib/libdes.a \
159         ${DESTDIR}/include/des.h \
160         ${DESTDIR}/include/des_conf.h \
161         ${DESTDIR}/include/mit-cpyright.h \
162         ${DESTDIR}/include/des_odd.h
163
164 ${DESTDIR}/lib/libdes.a: libdes.a
165         ${INSTALL} $? $@
166
167 ${DESTDIR}/include/des.h: des.h
168         ${INSTALL} $? $@
169
170 ${DESTDIR}/include/des_conf.h: des_conf.h
171         ${INSTALL} $? $@
172
173 ${DESTDIR}/include/mit-cpyright.h: mit-cpyright.h
174         ${INSTALL} $? $@
175
176 ${DESTDIR}/include/des_odd.h: odd.h
177         ${INSTALL} $? $@
178
179 ukinstall: \
180         ${UKERNELDIR}/des/libdes.a \
181         ${UKERNELDIR}/des/des.h \
182         ${UKERNELDIR}/des/mit-cpyright.h 
183         
184 ${UKERNELDIR}/des:
185         mkdir -p $?
186
187 ${UKERNELDIR}/des/libdes.a: libdes.a
188         ${INSTALL} $? $@
189
190 ${UKERNELDIR}/des/des.h: des.h
191         ${INSTALL} $? $@
192
193 ${UKERNELDIR}/des/mit-cpyright.h: mit-cpyright.h
194         ${INSTALL} $? $@
195
196 #
197 # Misc. targets
198 #
199 test: libdes.a
200         cd test; $(MAKE)
201
202 clean:
203         $(RM) -f *.a *.s *.o *.b core *~ *.com *.ld
204         $(RM) -f make_fp make_ip make_keyperm make_odd make_p \
205                 make_p_table make_s_table key_perm.h p_table.h \
206                 s_table.h odd.h p.c s.c fp.c ip.c AFS_component_version_number.c
207         cd test; $(MAKE) clean
208
209 include ../config/Makefile.version
210